2019年的3月14日当天有个很有意思的新闻,那个无限不循环的小数圆周率被计算到了小数点后31.4万亿位,种花家还特意计算了下存放的空间,大约28TB左右,相当于8个4T硬盘的存储容量,也就相当于一台家用NAS的存放空间,但这并不是问题的关键,我们不明白的是将这个无限不循环小数计算到那么精确,真的有必要吗?
圆周率大事记
最早关于圆周率的记载来自公元前2000年前的古巴比伦人,他们将圆的周长与直径之比取值3.125,而古埃及人则取值3.1605,不过无论哪个看起来都不是那么准确,但其实在要求并不是特别高的条件下,这个精度也足够使用了!
而中国古籍中一直都有一个关于圆周率的说法:“圆径一而周三”,差不多也就表示了这个意思,将圆周率取值为3,在当时算法很简单,暴力而又直接,测量圆周长再除以直径,理论上这是完美的,但事实上圆周长很难测量准确,而直径的精度也一样有限,因此导致的结果就是圆周率从3到3.16之间,但这也能凑合着用。
公元前三世纪古希腊数学家阿基米德用内接(外切)正多边形的周长代替圆的方式来计算圆周率,因为从理论上来看这个正多边形边越多,它的周长越接近圆,周长也会越接近,那么计算出来的圆周率则越逼近真实圆周率。阿基米德计算到了96边形,他计算的圆周率精度在3.140?845-3.142?857之间,这已经是一个相当精确的数字,因为我们平时就取值3.14计算的圆周长。
中国古代数学家刘徽也给出了相同的算法,将其称之为割圆术,这实在非常贴切,因为木工操作割圆就是用N变形来代替的,切割下来之后再修正成圆,而南北朝数学家祖冲之则用刘徽的割圆术将圆周率逼近到了3.1415926-3.1415927之间,这也是我们俗称的祖率!
十六世纪的数学家开始采用效率更高的无穷级数来计算圆周率,其代表则是计算圆周率的莱布尼茨公式。
到了十八世纪末期德国数学家约翰·海因里希·兰伯特终于证明了圆周率是一个无理数。是不是算不玩表示不用折腾了呢?其实完全不是,这反而激起了没事干的数学家极大兴趣!
1882年德国数学家林德曼证明了圆周率Π是一个超越数(超越数就是不能作为有理系数多项式根的实数)。
天才的数学家拉马努金则给出另一个计算圆周率的公式,不知道无所不能湿婆神是哪个晚上进入了梦想给他的灵感,反正他就拿出了这个公式!
1948年英国弗格森和美国的伦奇将圆周率计算到了小数点后808位,这是手工计算圆周率值的最高纪录。此后计算机的出现一骑绝尘。
1949年:2037位
1958年:10000位
1981年:200万位
1999年:687亿位
2019年:31.4万亿位
计算那么多位数圆周率有啥用?
圆周率日常使用取值2位即可,也就是3.14,登陆火星也不过十多位,放眼可观测宇宙,也只要40位即可计算将误差消除在一个氢原子的直径之内!算那么多位真是吃饱了撑着没事干,超级计算机也将浪费大量的电能,你看这些人就是那么无聊!
从应用层面来看,这个庞大的数值确实没有任何意义,但我们可以发现,圆周率从3开始到越来越接近我们现代数学计算的圆周率数值的过程,就是数学工具不断的进步,从早期的周长/直径到割圆术,再到无穷级数,再到拉马努金的计算公式,各位会发现圆周率计算的收敛速度越来越快,当然还有更快的迭代算法,这表示什么?我们发现这个世界的工具:数学一直在进步!当然到了1949年之后这个任务从手工转换到了计算机手中,圆桌率的存在为我们的计算机算法做出了不朽的贡献,促使着计算机技术不断进步!
2019年3月14日谷歌通过超级计算机将圆周率计算到了小数点后31.4万亿位,并不是说谷歌的超级计算机只能将其计算到31.4万位,而这一个宣传与纪念计划的结果:总共25台“谷歌云”虚拟计算机,耗费大约4个月才将圆周率增加了十万亿位左右,四个月的时间,也许数十万美元的资金,但这个新闻本身就自带流量,因为这表示了谷歌云计算强大的实力,这点资金做一次全球性宣传毫无疑问是非常划算的!
相信未来的超级计算机仍然会以此作为目标计算圆周率,而更多位数的圆周率也将会出现!也许我们可以设想一个场景,如果未来的量子计算机出现,那么圆周率计算很有可能作为磨刀石,如果第一次计算就将圆周率在数分钟之内计算到了数百万亿位,想必全球围观群众必定就明白了量子计算机的计算能力有多强大!