Nature中的每一个代码都改变了科学。今天,《自然》杂志的一篇报道有点不同。没有提到最新的科研进展,也没有提到这个时代的科学家。相反,镜头聚焦在计算机上,更具体地说,聚焦在计算机代码上。在过去的一年里,《自然》杂志调查了数十名研究人员,以找出几十年来改变研究的关键代码。现在,评选结果新鲜出炉。粗略一看,Fortran这个半个世纪的“语言先驱”和“祖传法则”,是理工科的老朋友了。相信很多人都能理解那种感觉。还有arXiv.org,一个不知不觉已经“三十多岁”的论文工具,全球最大的免费预印本平台,每月吸引超过15,000次投稿和3000万次下载。...今天还有哪些其他代码改变了科学?为什么大自然选择这些代码?“语言先驱”Fortran(1957)说Fortran,相信很多大学生都已经被它的摧残“洗礼”了。知乎上有一个2015年的古问答:《与C++相比,Fortran编程的体验如何?》其中一个高赞回答讲述了自己被Fortran“洗礼”的经历,引起广泛共鸣,获得1331个赞。即便如此,仍然无法抹杀它在语言界的地位。最早的现代计算机不是用户友好的,尤其是科学家。其中,机器语言和编程语言需要科学家对计算机体系结构有深刻的理解。直到20世纪50年代,IBM团队开发出“公式翻译语言”Fortran时,情况才发生了变化。普林斯顿大学的气候科学家SyukuroManabe说,Fortran使非计算机科学家的研究人员也可以使用Fortran程序。他和他的同事使用该语言开发了世界上第一个气候模型,这是NOAA200年来的十大突破之一。如今,Fortran已经发展到第八个十年,它仍然广泛应用于气候建模、流体动力学、计算化学等涉及复杂计算的学科。古老的Fortran代码库仍然存在于世界各地的实验室和超级计算机中。第一年的arXiv.org(1991)一定没有想到,几乎所有研究者都在使用的论文福音——arXiv已经进入了三十个年头。目前已收录约180万份预印本,全部免费供大家交流。每月的提交和下载数量也只增不减。据《自然》统计,它现在每月将吸引超过15,000份投稿和约3000万次下载。它最初只是一个专注于高能物理学的电子邮件自动回复系统。在arXiv之前,科学家们大多将提交的手稿副本邮寄给同事进行评估。但发送的数量有限,只有少数人看过论文。看到这一点,在墨西哥州工作的高能物理学家Ginsparg决定编写一个电子邮件自动回复系统。订阅者会收到一份每日预印本清单,每份预印本都有一个文章标识符。然后,通过电子邮件,世界各地的用户可以从实验室的计算机系统提交或检索文章、获取新文章列表或按作者或标题进行搜索。起初,金斯帕格计划将论文保留三个月,将论文内容限制在高能物理界。但在同事的劝说下,他于1993年将该系统迁移到了互联网上。五年后,他给它起了今天的名字:arXiv.org。AlexNet(2012)directedbyHinton如果要说现在更接地气,就不得不提这个快速学习的AI-AlexNet。起初,有两种人工智能。一个使用编码规则,另一个使用计算机通过模拟大脑的神经结构来“学习”,几十年来,人工智能研究人员一直将这种方法斥为“胡说八道”。直到2012年,Hinton改变了这种格局。在最初的ImageNet全球挑战赛中,最佳算法的错误率为25%。Hinton的两个研究生提出的AlexNet,深度学习算法,直接将错误率降低到16%。Hinton说,我们基本上将错误率降低了一半,或几乎降低了一半。而这样的成果,开辟了深度学习在各个领域的应用。快速傅里叶变换(FastFourierTransform,1965)200年的“历史”相信很多数学和工程领域的学生都不陌生。)统称为FFT。值得一提的是,这里的基本思想早在1805年就已经推导出来,但直到1965年才得到普及。来自美国的两位数学家JamesCooley和JohnTukey提出利用该算法大大减少所需的乘法次数用于计算。特别地,变换的采样点数N越多,FFT算法计算量的节省越显着,计算速度也越快。会改善。比如1000个采样点,速度提升100倍左右;100万点,速度提升5万倍。因此,快速傅里叶变换开辟了数字信号处理、图像分析、结构生物学等领域的应用。曾被IEEEJournalofScientificandEngineeringComputing评为20世纪十大算法之一。软件驱动的生物数据库(1865)数据库已成为当今科学研究不可或缺的一部分,以至于很少有人注意到它们实际上是由软件驱动的。在过去的十年中,数据库以肉眼可见的速度影响着许多领域,但也许没有什么比生物学更是如此。无论是从蛋白质序列中发现致癌因子,还是合成生物学领域,都离不开庞大的基因组和蛋白质数据库的工作。20世纪60年代初期,当生物学家还在努力拆解蛋白质的氨基酸序列时,MargaretDayhoff(生物信息学先驱)开始默默地整理这些蛋白质信息,创建蛋白质和核酸数据库,以及查询数据库的工具。她的《蛋白质序列和结构图谱》于1965年首次发表,描述了当时已知的65种蛋白质的序列、结构和相似性。她还将其数据编码在穿孔卡片中,这使得扩展数据库和搜索数据库成为可能。更多的计算机化生物数据库接踵而至,蛋白质数据库于1971年上线,如今它详细介绍了170,000多个大分子的结构。天气预报员:大气环流模型(1969)“蚂蚁搬蛇过道,明日大雨。”以前的天气预报都是靠人们的经验和直觉,直到出现了这个模型——大气环流模型,根据物理学定律对气候进行建模工作,从而开启了计算机天气预报的时代。在20世纪40年代后期,现代计算之父约翰·冯·诺依曼成立了他的天气预报小组。1955年,第二个团队,即地球物理流体动力学实验室,也开始从事所谓的“无限预测”——气候建模。直到1969年,他们中的某个人才真正制作了一个天气预报模型,该模型将首次测试硅中二氧化碳含量升高的影响,创造了《自然》杂志在2006年所描述的科学计算的“里程碑”。今天的模型可以将地球表面划分为25×25公里的正方形,将大气层划分为数十层。相比之下,Manabe和Bryan的海洋-大气组合模型使用500公里的立方体和九层,仅覆盖了地球的六分之一。此外,还有用于数字处理的BLAS、用于显微镜的NIHImage、用于序列搜索的BLAST和用于数据浏览的IPythonNotebook。嗯,你选哪一个?如果您有其他喜欢的代码,请与我们分享。
