据国外网站NewScientist报道,研究人员正开发和改进具有革命性的计算机,这种计算机当发现有错误时它可以自动进行程序重调。
这个被称为“systemic(系统性)”的计算机可以模拟自然界的随机性,可以通过修复损坏的数据即可立即从崩溃状态恢复正常。目前这个能自我修复的计算机运行于英国伦敦大学,正进行某些关键系统的工作。比如它可以让无人机自己进行程序重调修复战斗损伤,它也能帮助模拟和创造更为逼真的人类大脑。
日常的电脑是不适合模拟诸如神经元如何工作或蜜蜂如何聚群等自然过程,这是因为这些普通电脑只能按照顺序一次缓慢地执行一个指令,伦敦大学计算机科学家Peter Bentley对此表示,大自然绝不像这样,它很多过程是分布式的、分散的和概率性的,并且这个过程具有容错性能够自行修复,实际上电脑也应该这样。
今天的计算机通过一系列指令稳定工作:从内存中读取指令并执行,然后计算结果又会返回存放在内存中……这种操作不断重复,而这一切都在程序计数器控制之下。虽然这种一手交钱一手交货的方法非常适合数字运算,但它并不适合同步操作。Peter Bentley称,即使你感觉自己电脑确实能同时运行多个软件,但实际上这只是表象,它只是能快速在各个程序间切换而已。
于是Peter Bentley和伦敦大学的Christos Sakellariou创建了一个数据和指令自动结合的革命性电脑,例如它可以链接外部温度,如果当温度过高时就会自动划分结果到被称为“Systems(系统)”的数字池。
每个系统的内存都包含了上下文相关的数据,这意味着它只能与类似的系统起着交互作用。这种系统不使用程序计数器,它的设计主要模仿自然的随机性,使用伪随机数发生器来选择执行指令。Peter Bentley称,这个系统能同时执行他们的指令,没有哪个系统的优先级高于哪一个。他进一步解释称,并行中的系统池是相互影响的和随机的,最终的计算结果就会从这种相互作用中得出。
像这样的运行机理表面听起来似乎不能工作,但事实上可以。今年四月Peter Bentley将会在新加坡的可进化系统会议上进行演讲,届时大家就会清楚知道实际上它的工作速度远远超过预期。
最重要的是,systemic计算机在它许多系统中包含多个副本指令,所以如果一个系统崩溃电脑就可以访问另一个干净的副本来修复它自己的代码。另外传统的操作系统当无法访问内存时就会崩溃,而systemic计算机却可以继续运行,因为每个单独的系统都会有它自己的内存。
目前Peter Bentley和Christos Sakellariou两个人正致力于教会电脑更多东西,比如通过机器学习,计算机可以改写自己的代码以应对环境的变化。
英国曼彻斯特大学Steve Furber称“这是有趣的工作。”据悉Steve Furber目前也正在开发一个叫Spinnaker具有十亿神经元的仿人脑计算机,事实上他的研究可以帮到伦敦大学的研究团队。Steve Furber称,Spinnaker将会是一个很好的可编程平台,适合于systemic计算机系统的大规模建模工作。