近看到了一个有趣的事迹,说是有一个的物理学家叫做费米。他当年参与了曼哈顿计划,是原子弹的制造者之一。说是有一天他问了他的研究生一个问题,在芝加哥这座城市当中,存在着多少钢琴调音师?
他要求他的学生只能靠着自己估算,不能使用任何调查或者统计数据。他的学生一脸懵逼,我又不是神仙,怎么能知道芝加哥里有多少钢琴调音师?
费米微微一笑,说出了这个问题的答案。
1
首先我们要确定的是芝加哥这座城市有多少人口?由于不能使用统计数据,所以我们无法获得的数据,不过这没关系,至少有一点我们可以肯定,芝加哥的人口数量应该在百万级,所以我们就假设有一百万人口。
人口的问题解决了,那么这么多人口又有多少架钢琴呢?我们需要估算平均多少人中拥有一架钢琴,我们依旧不能确定值,同样可以使用估算方法。平均十人拥有一架钢琴多了一点,平均一千人拥有一架钢琴又少了一点,所以数量级应该在百这个单位 。那我们就假设平均一百人拥有一架钢琴,那么芝加哥这座城市当中应该有一百万除以一百,大约一万架钢琴。
知道了钢琴数量之后,我们怎么估算调音师的数量呢?
我们直接通过钢琴的数量估计调音师的数量好像不太容易,我们可以换一个思路。同样,我们可以估计出,平均每台钢琴每年需要调音一次。那么一万架钢琴,平均每年需要调音一万次。接着, 我们估计一个调音师一年能够调节的钢琴数量,这里,我们只估算数量级。按一年工作200天算,即使每天都有活,一年能调的钢琴数量也不会超过一千,也就是说数量级应该在“百”这个单位。那么我们按照一个人一年能调100台钢琴计算。如此一来,如果需要将全市所有的钢琴全部调节一次,应该需要一百个钢琴调音师。
那个年代互联网还没有兴起,费米的学生们去查了全市的电话簿,芝加哥总共的钢琴调音师有81人。这个数字和估算得到的100非常接近。
2
不知道大家有没有从刚才的推算过程中看出这种估算方式的精髓。当我们需要估算某一个很难的数值的时候,不妨估计它的数量级入手。通过估计它的数量级代替值,后估算出我们需要的结果的数量级,后来人们将这种估算方法称为费米方法。
其实在我们估算的过程当中,隐藏了一个非常重要的逻辑。那就是我们通过数量级的方法估算各种值的时候,一定有一些数量被我们高估了,也有一些数量被我们低估了。而在我们估算终结果的时候,这些高估的误差和低估的误差经过互相抵消,使得并没有像我们设想的那样越偏越远,反而意外得接近真实的结果。
除了调音师的例子之外,还有一个经典的例子。假如我们面前有一棵树,我们怎么估算这棵树上有多少片叶子?我们一片片数显然不现实,这个时候我们就可以用费米方法做一个估算。
我们都知道树长树叶就是为了获得阳光进行光合作用,那么一棵树一共能获得多少阳光呢?我们可以假设树冠是一个球形,理想情况下,树被阳光照射到的面积就是这个半球(因为只有一半能照射到阳光)的面积。我们再拔下一片树叶,计算一下一片树叶的面积。后将这两个数据一除,就能得到一棵树的树叶数量了。
3
这样计算得到的结果当然不够,但至少能保证数据量级是对的。而生活当中的许多问题,一个比较近似的答案就已经足够。甚至答案根本不存在,或者需要的成本极大。
比如北京市需要多少汽车加油站?楼下的奶茶店一天究竟卖出了多少杯奶茶?全中国有多少失独老人?这些问题的答案当然是存在的,可是我们很难获得的答案,需要的成本极大。
还有些问题,可能我们根本就无法获得答案。比如人的手上有多少细菌?宇宙中有多少环境类似地球的行星?曾经地球上生活过多少人类?
面临这些问题的时候,显然我们无法直接求解,这个时候使用费米方法来估算就是非常有必要甚至是的途径了。