本文主要是介绍三体中的冯诺依曼,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
你叫冯诺依曼,是一位科学家。你无法形容眼前的现态,你不知道下一次自己葬身火海会是多久,你也不知道会不会下一秒就会被冰封,你唯一知道的,就是自己那寥寥无几的科学知识,你可能会抱着他们终身,但是你更希望的是,在结束自己生命之前,能够亲手完善一位叫牛顿的年轻人创下的壮举。
牛顿是天才,这是毋庸置疑的。但是天才只有一个,被理解的天才一个也没有。冯诺依曼惊于牛顿创造的公式,一个跨时代的公式,冯诺依曼无法理解公式的奥秘,无法诉说公式的宏伟壮观,他只知道,这不是一个人能创造的公式,这是神,救世神,不被世人理解被世人唾弃而不愿合作的救世主。
“我们要去哪里?”
“中国。”在前行的火车上,冯诺依曼一次又一次检查着他的图纸,而一旁的牛顿却不知他葫芦里卖的是什么药。牛顿写下的,解决三体问题的公式,需要一位位数学家日夜不停解微积分,才可以窥见三颗恒星几个小时甚至几天前的运行轨迹,自然没有任何数学家愿意去当这个冤大头。可为何,此行要去还处于封建的中国?
“秦始皇好,我叫冯诺依曼,这位是我曾为你介绍过的天才物理学家,牛顿。”冯诺依曼微微鞠躬,他面前的是秦始皇,而脚下是千千万万秦始皇的精锐士兵。“我们已经可以得出恒纪元的规律,只需要您抽出一部分士兵,来替我们完成一些任务,我们可以保证从此精确地告诉您,什么时候应该脱水,什么时候应该苏醒。”
秦始皇饶有兴趣,但是并不太相信眼前的两位年轻人。已经有过太多的前人告诉过他,恒纪元的问题是无解的,而在他眼中,这两位也不过是江湖骗子罢了。
冯诺依曼当然知道秦始皇的怀疑,于是他缓缓拿出图纸,详细为秦始皇介绍:
1. 首先,我们分三个人为一组,
- 站在后面的有两个,为输入组
- 站在前面的有一个,为输出组
输出组去观察输入组的旗子,红旗为0,绿旗为1,当输入组都举绿旗或者都举红旗的时候,输出举红旗,否则举绿旗
这样,就快速构建了一种逻辑关系,叫做半加器。也就是在一位的情况下,
0+0=1+1=0
0+1=1+0=1
但是,这样会有大问题:1+1=0,和0+0=0有所不同,1+1=0会产生进位,可是,我们只输出了一个结果为0,却没有为进位提供有效的信息
2. 所以,我们要四个人为一组
输出由两个人来完成,第一个人就像三人组一样,输出当前位置的结果,而第二个人则额外去负责是否有进位,只有当输入全为1,即都举绿旗的时候,才会输出1举绿旗,告诉我们,我们进位了。
但是,进位信号也需要被处理。所以,输出组不仅要看输入组的举旗情况,还要看上一个四人组中,负责输出进位的人的举旗情况
于是,一个方阵就由大量四人小组构成:
一个八进制加法器就这样构成了,以上,便称之为运算器。
秦始皇开始有些赞赏眼前的年轻人了,但是他也不免疑惑:“按你所说,那会用掉我多少军队?这可不止你口中所说的一部分军队啊。”
冯诺依曼微微一笑,接着解释道:“那当然,人不可能一直举着旗。但是,在一次举旗完成之后,一次计算任务也就完成了,只需要把他记录下来便可以了。就如同你们记录历史一样,我们通过书写,把这些计算结果记录在本子上,为了方便保存和统一管理,我们把不同类型的记录本,由不同方阵的人去记录和计算。
就比如,计算一个式子的微分,我们由龙方阵来计算和记录;计算一个式子的积分,我们用虎方阵来计算和记录,而士兵自然是要睡觉的。等第二天起来继续完成任务的时候,只要翻一翻记录册,就知道昨天算到了哪一步,就能无缝衔接自动完成任务了。
但是,随着记录的数据越来越多,记录本也不可能全部堆在皇宫里。我为您出谋划策,不妨把记录员放在皇宫外,这样的利弊一共有三个:
- 可容纳的记录员变多了,可以记录的数据也变多了。
- 但是记录员无法直接看到结果了。
- 皇帝您也无法看到记录的数据了。”
秦始皇微微皱眉,“既然本王都看不到记录的数据,那计算出来,又有何用?”
“这点我当然也想过,所以,还请麻烦皇帝拿出一部分骑兵,来作为通风报信的职能军队。”
说着,冯诺依曼拿出了准备已久的图纸,对着秦始皇说道:
“这是原来的方阵结构图,记录员可以直接看到结果,然后皇帝也可以直接从记录员中看到和了解记录的结果。”
“这是新的结构图,负责传递的骑兵,就有了以下四个任务:
1. 观察计算方阵的运算结果,然后把运算结果告诉记录方阵
2. 把皇帝的指令广诏天下
3. 把记录方阵的已知结果告诉给皇帝
4. 把记录方阵中需要再被计算的结果告诉运算器
这样,皇帝您可以直接看到计算方阵里的结果,虽然只有一部分,但是是观察速度最快的。您也可以看看记录方阵里的完整结果,但是因为需要骑兵传输,所以速度会稍微慢一点。
或者,换句话说,因为整个布局里,只有骑兵是要长途跋涉的,所以一切需要骑兵参与的工作,都会被大大拖慢了速度。
记录方阵因为是靠手写,所以不管是记录,还是从记录本里找皇帝您想要的数据,要的时间都要比举旗计算慢很多。计算方阵的速度是最快的,而骑兵传递和记录方阵的读写,相比计算的任务来说,拖慢了整体的进程。
不过陛下不用担心,就算很慢,对于一个人的力量来说,也是跨时代级的进步了。有了这个军队方阵,我们就可以完美预测恒纪元的时间,也就可以大量减少您的子民的伤亡,大量解决您的资源!"
冯诺依曼慷慨激昂的演讲,使秦始皇热血沸腾,当即下令按照冯诺依曼所说的去布置军队。训练有素的军队一次次排演计算着,他们从几百年前的数据开始计算,不出几天就计算到了近代,再过几天就能超越今天,找到明天。可是,牛顿却忽略了一个难以察觉的因素,便是三体之间自身的相互引力,他们预测了恒纪元,一个假的恒纪元,一个有着三颗太阳的光明的明天。文明再次被覆灭,而他们,也得到了一个结果:
三体问题,无解。
这篇关于三体中的冯诺依曼的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!