《新科学家》杂志技术版2月14日刊登了一篇科普文章,介绍了伦敦大学的研究人员正在研发的一种据说永远也不会崩溃的新型计算机。文章内容如下:
结束了混乱,就迎来秩序。现在有一种全新的计算机,可以模仿大自然的随机性来修复被破坏的数据,从而瞬间从崩溃状态中恢复过来。
这种新型计算机被称作“体系性计算机”,具有自我修复功能。伦敦大学已经用这种计算机来运行业务关键系统。例如,它可以允许无人机对自己进行重新编程,修复战斗损伤;或帮助创建更加贴近现实的人脑模型。
人们日常使用的计算机并不适用于为神经元如何工作或蜜蜂如何聚集等自然过程建模,这是因为它们的运算过程是缓慢而连续的,一次只能执行一条指令。
伦敦大学计算机科学家彼得本特利(Peter Bentley)称:“大自然绝不是那样的。 大自然里的很多过程都是分布式的、分散性的和随机性的。而且大自然里的很多过程都具备容差,可以自行修复。 一台计算机应该也能做到那一点。”
如今的计算机可以通过一系列指令稳定地工作,从内存中读取一条指令并执行,然后将计算的结果反馈到内存之中。然后就是这个过程的不断重复,这样整个计算过程就完全被一个名为程序计数器的顺序定时器控制住了。
虽然这种计算方法在某些应用中很适用,但它并不适用于同步运算类应用。本特利说:“即便有时你感觉你的计算机正在同时运行你所有的软件,但它也只是假装在那么做,它只是飞快地在各个程序之间切换而已。”
他和伦敦大学的赫里斯托斯萨克拉里乌(Christos Sakellariou)联合研制出一种能够将数据与相关指令结合在一起的新型计算机。例如,它可以将温度与如果温度过高时应该采取哪些措施的指令结合在一起。 然后将结果分别注入不同的系统数据池中。
每一个系统都有一个包含了上下文敏感数据的内存,那意味着它只能对其他类似的系统构成影响。这种系统不用使用程序计数器,而是按照伪随机数产生器选择的随机时间点执行指令,这样做的目的是为了模仿大自然的随机性。 本特利称,这些系统可以随机执行它们的指令,不会出现其中某个系统的优先级高于另一个系统的情况。 他说:“这些系统之间的相互作用是同时性和随机性的,计算的结果会从那些相互影响中浮现出来。”
这种模式听起来并不能工作,但事实上它是能够工作的,而且工作的速度比预期得更快一些。今年4月将在新加坡召开一次关于可进化系统的会议,本特利将在会议上介绍这种计算机。
重要的是,体系性计算机包含了分布于许多系统中的多个指令副本,因此如果其中的一个系统遭到破坏,计算机可以立即访问另一个未被破坏的副本来修复其软件代码。传统操作系统在不能访问内存时就会崩溃,但是体系性计算机与之不同,它在类似状况下仍然能正常运行,因为每一个独立的系统都带有它自己的内存。
本特利和萨克拉里乌正在研究如何通过机器习得技术教会计算机在环境发生变化时重新编写自己的软件代码,以便对环境变化作出反应。
英国曼彻斯特大学的史蒂夫弗伯(Steve Furber)称:“这是一项有趣的工作。”弗伯正在开发一种类似于人脑的十亿神经元计算机,他将那种计算机称作Spinnaker。 实际上,他甚至可以帮助伦敦大学的研发团队解决一些问题。他说:“Spinnaker将会是一个优秀的可编程平台,非常适用于大规模体系性计算机系统的建模工作。”