后来,这个问题被洛斯阿拉莫斯国家实验室的数学家斯塔尼斯拉夫·乌拉姆(Stanislaw Ulam)破解了。乌拉姆的思路是,方程太复杂了老子不解了好伐,我直接模拟中子怎么动不就好了。这种“你动动我试试”的方法就是著名的统计学技术——蒙特卡罗方法。
蒙特卡洛方法其实不难理解。比如要看方形和圆形的面积比,我们可以在两个盒子上方随机倒珠子,倒了巨量珠子后,看一下两个盒子里的珠子数量比,这个比值就是它们的面积之比。图片来源:marble science
蒙特卡洛方法不需要求解中子输运方程,而是通过模拟大量中子的运动轨迹来对反应堆中中子的扩散过程进行预测。在洛斯阿拉莫斯国家实验室发明和推广了蒙特卡洛方法后,其他学科也纷纷觉得它好用。现在蒙特卡洛方法被广泛用于研究各种复杂系统的行为,比如金融市场、湍流啥的。
显然,蒙特卡洛方法依赖大量随机数,这样才能保证模拟结果无限接近真实。洛斯阿拉莫斯国家实验室发明的这个统计学工具让高质量的随机数变成了炙手可热的学术“商品”,百万这本书也是依托这种需求诞生的。
为了满足暴涨的需求,1947年,为美国军方服务的兰德公司(RAND Corporation)就开始制造这种“商品”。1955年,百万的第一版开始发行。
那么,这些高质量的随机数是怎么产生的呢?
首先,一个来自自然界的随机脉冲源发出随机脉冲。这个脉冲源和一个电子轮盘相连,轮盘把随机信号转化为0-9的十进制数。
图片来源:wikimedia
接着,这些十进制的数字又被转化为2万张能被计算机读取的卡片。这些卡片被插入一台IBM计算机里,这台计算机就产生了一百万个随机数。
当然了,随机数的质量取决于随机脉冲的质量。兰德公司并没有公布它的来源,一些人猜测随机脉冲来自对着铀矿的盖革计数器。
天然铀矿。图片来源:wikimedia
铀会衰变,在这个过程中释放出粒子,不过两次衰变之间的间隔是随机的,因此记录到粒子的盖革计数器的信号也是随机的。
出版后,这本书也成了兰德公司最畅销的书籍。兰德公司表示,这本书是“史上已出版的最大随机数表。”
高质量的随机数很难获得,因此这本书对于教师、学生、研究者等等一系列需要和统计数字打交道的职业来说就是必不可少的。而根据兰德公司的介绍,百万这本书已经成了工程学和计量经济学教材中的标准参考书。