15.9 工程霸权的终结
丹尼·希利斯也得出了相同的结论。他很认真地表示,想让自己的“连接机”进化出商务软件。“我们想让这些系统解决一个我们只知如何陈述却不知如何解决的问题。”一个例子就是如何编写出数百万行驾驶飞机的程序。希利斯提议建立一个群系统,以进化出“驾驶技巧”更优秀的软件,系统中有一些微小的寄生虫程序会试图坠毁飞机。正如他的实验所展示的,寄生虫会促使系统更快地向无差错和抗干扰强的导航程序收敛。希利斯说:“我们宁肯花更多时间在编制更好的寄生虫上,也不愿花上无数个小时去做设计代码和查错这些事情。”
即使技术人员成功地设计出一款庞大的程序,譬如导航软件,要想对其进行彻底的测试也是不可能的。但进化出来的东西则不同。“这种软件的成长环境里充斥着成千上万专职的挑刺者,”希利斯说着,又想起了自己的寄生虫,“凡是在它们手下躲过一劫的,都经受住了严酷的考验。”除了能够创造我们制造不出来的东西以外,进化还有一点值得夸耀:它能造出来缺陷更少的东西。“我宁愿乘坐由进化出来的软件驾驶的飞机,也不愿乘坐由我自己编制的软件驾驶的飞机。”作为一名非凡的程序员,希利斯如是说道。
长途电话公司的呼叫路由程序总共有二百万行代码。而这二百万行代码中的三行错误代码就导致了1990年夏天全国电话系统的连锁崩溃。现在,二百万行已经不算多了。装载在海军海狼潜艇上的作战计算机包含了三百六十万行代码。1993年微软发布的新操作系统“NT”总共包含四百万行代码。一亿行的程序也离我们不远了。
当计算机程序膨胀到几十亿行代码时,仅仅是维护程序、保持正常运行本身就会成为一个主要负担。有太多的经济活动和人的生命会依赖于这种数十亿行的程序,因此不能让它们有哪怕片刻的失效。戴维·艾克利认为,可靠性和无故障运行时间将成为软件最首要的任务。“我敢说,对真正复杂的程序来说,仅仅是为了存活下来就要消耗更多的资源。”目前,一个大型程序中只有一小部分致力于维护、纠错和清理工作。“将来,”艾克利预言道,“99%的原始计算机周期都将用于让这个怪兽自我监视以维持其正常运转上。只有剩余的1%将用于执行用户任务——电话交换或其他什么。要知道,这个怪兽只有活下来,才能完成用户任务。”
随着软件越来越大,生存变得越重要,同时也越来越困难。要想在日复一日的使用中存活下来,就意味着必须能够适应和进化,而这需要做更多的工作。只有不断地分析自己的状况,修正自己的代码以适应新的需要,净化自己,不断地排除异常情况,并保持适应与进化,程序才能生存下来。计算必须有生命力和活力。艾克利称之为“软件生物学”或“活力计算”。程序员即使二十四小时都开着寻呼机,也不能确保数十亿行的代码能够不出故障。人工进化也许是唯一能使软件保持生命力和活力的方法。
人工进化是工程霸权的终结。进化能使我们超越自身的规划能力;进化能雕琢出我们做不出来的东西;进化能达到更完美的境界;进化能看护我们无法看护的世界。
但是,正如本书标题所点明的,进化的代价就是——失控。汤姆·雷说道:“进化系统的一个问题就是,我们放弃了某些控制。”
丹尼·希利斯所乘航班的驾驶程序是进化出来的,没有人能弄懂这个软件。它就像一团千丝万缕的乱麻,也许真正需要的只是其中的一小部分,但是它能够确保无故障地运行。
艾克利的电话系统是由进化出来的软件管理的,它是“活”的。当它出问题时,没有人能排除故障,因为程序以一种无法理解的方式埋藏在一个由小机器组成的未知网络中。不过,当它出问题时,它会自行修复。
没有人能把握住汤姆·雷的培养液的最终归宿。它们精于设计各种小技巧,却没人告诉它们下一步需要什么技巧。唯有进化能应付我们所创造的复杂性,但进化却不受我们的节制。
在施乐公司帕洛阿尔托研究中心,拉尔夫·默克勒〔34〕正在制造能够自我复制的极小分子。由于这些分子的尺度为纳米级别(比细菌还小),因此这种技术被称为纳米技术。在不久的将来,纳米技术的工程技能与生物技术的工程技能将趋于一致:它们都把分子看成是机器。对纯粹的生命来说,纳米技术可以看做是生物工程;对人工进化来说,纳米技术则等同于生物分子。默克尔告诉我:“我可不想让纳米技术进化。我希望把它限制在一定的框架内,并且受到国际公约的制约。对纳米技术来说,最危险的事情莫过于交配。是的,我想,应该有个国际公约来限制在纳米技术中使用交配。一旦交配,就有了进化;只要进化,就会有麻烦。”
进化并未完全超脱我们的控制;放弃某些控制只不过是为了更好地利用它。我们在工程中引以为傲的东西——精密性、可预测性、准确性以及正确性——都将为进化所淡化。
而这些东西必须被淡化,因为真实的世界是一个充满不测风云的世界,是一个千变万化的世界;生存在这个世界里,需要一点模糊、松弛、更多适应力和更少精确度的态度。生命是无法控制的;活系统是不可预测的;活的造物不是非此即彼的。谈起复杂程序时,艾克利表示:“‘正确’是水中月,是小系统的特性。在巨大的变化面前,‘正确’将被‘生存能力’所取代。”
当电话系统由适应性很强的进化软件来运行时,是没有一种所谓的正确方式的。艾克利继续道:“说一个系统是‘正确的’,听起来就像是官话、空话。人们评判一个系统,是根据其对意外情况的反应力以及应对措施的创造性。”与其正确,不如灵活,不如耐久;所谓“好死不如赖活着”。艾克利说:“小而专且正确的程序就像蚂蚁,对身处的世界茫然无知;而反应灵敏的程序往往是失控的庞然大物,仅把1%的精力花在你要解决的问题上。孰优孰劣,不言自喻。”
有一次,在斯图亚特·考夫曼的课上,一个学生问他,“对于你不想要的东西,你的进化是如何处理的?我知道你能让一个系统进化出你想要的东西,可是,你又怎么能肯定它不会制造出你不想要的东西?”问得好,孩子。我们能足够准确地定义我们想要的东西,从而将它培育出来。然而,我们往往不知道我们不想要什么。即使知道,这些不受欢迎者的名单也长得不切实际。我们怎样才能剔除那些不利的副作用呢?
“你做不到的。”考夫曼坦率地回答。
这就是进化的交易。我们舍控制而取力量。对我们这些执著于控制的家伙来说,这无异于魔鬼的交易。
放弃控制吧,我们将人工进化出一个崭新的世界和梦想不到的富裕。放手吧,它会开花结果的。
我们曾经抵制住过魔鬼的诱惑吗?
注释
〔1〕 汤姆·雷(Tom Ray,全名Thomas S. Ray):生态学家,编写出了名为“Tierra”(西班牙语“地球”之意)的计算机人工生命模型,引起学术界的轰动。目前他是奥克拉荷马大学的动物学教授兼计算机科学副教授。
〔2〕 艾德华·威尔森(Edward Osborne Wilson, 1929.06.10~ ):美国昆虫学家和生物学家,尤其以他对生态学、进化论和社会生物学的研究而著名。他的主要研究对象是蚂蚁,尤其是蚂蚁通过弗洛蒙进行通讯。他于1975年所写的《社会生物学:新的综合》(Sociobiology: The New Synthesis)引起了对社会生物学的争论。“生物多样性”这个词也是他引入的。威尔森的成就获得了许多奖励,其中包括美国国家科学奖章、克拉福特奖和两次普利策奖。
〔3〕 遗传算法(Genetic Algorithms,简写为GA):人工智能领域的一个重要算法,最早由约翰·霍兰德于二十世纪七十年代提出。
〔4〕 劳伦斯·福格尔(Lawrence Fogel, 1928.03.02~2007.02.18):进化计算和人为因素分析的先驱者,进化规划之父。(译自维基百科)
〔5〕 汉斯·布雷默曼(Hans Bremermann, 1926~1996):加州伯克利大学名誉教授,数学生物学先驱。(译自维基百科)
〔6〕 《自然与人工系统中的适应》:Adaptation in Natural and Artificial Systems 〔7〕 电子数值积分计算器(ENIAC-Electronic Numerical Integrator and Computer):1946年2月15日诞生于宾夕法尼亚大学,由美军在二战中投资研制。它曾被认为是世界上第一台电子计算机,但最近的一场旷日持久的官司改变了这个历史,阿塔纳索夫-贝瑞计算机(Atanasoff-Berry Computer,简称ABC)取而代之成为世界上第一台电子计算机。(摘自中文维基百科)
〔8〕 离散变量自动电子计算机(EDVAC-Electronic Discrete Variable Automatic Computer):是一台早期的电子计算机。它和电子数值积分计算器的建造者均为宾夕法尼亚大学的电气工程师约翰·莫奇利和普雷斯波·艾克特。冯·诺依曼以技术顾问的身份参与了研制。(摘自中文维基百科)
〔9〕 旋风计算机(Whirlwind):一款由麻省理工大学研制的早期电子计算机。引入了当时先进的实时处理理念,并最先采用显示器作为输出设备,拥有世界首款成熟的操作系统。其设计理念对二十世纪六十年代的商用计算机产生巨大影响。(摘自中文维基百科)
〔10〕 艾伦·纽厄尔(Alan Newall, 1927.03.19~1992.07.19):计算机科学和认知心理学领域的科学家,曾任职于兰德公司以及卡内基-梅隆大学的计算机学院、商学院和心理学系。1975年他和赫伯特·西蒙一起因人工智能方面的基础贡献而被授予图灵奖。(摘自中文维基百科)
〔11〕 R. A. 费希尔爵士(Sr. Ronald Aylmer Fisher, 1890.02.17~1962.07.29):英国皇家学会会员、统计学家、生物进化学家与遗传学家。他是现代统计学与现代进化论的奠基人之一。他被认为是“一位单枪匹马创立现代统计科学的天才”,“达尔文最伟大的继承者”。(摘自中文维基百科)
〔12〕 《自然选择的遗传理论》:Genetical Theory of Natural Selection
〔13〕 《能同时执行任意数量子程序的通用计算机》:A Universal Computer Capable of Executing an Arbitrary Number of Sub-Programs Simultaneously 〔14〕 史蒂文·列维(Steven Levy, 1951~ ):美国新闻工作者,写了不少有关电脑科技、密码系统、网络安全和隐私的书。
〔15〕 热点(hot spot):基因组上的某些小块区域。这些区域内发生基因重组的频率要高于周围区域上百倍乃至上千倍。热点的成因目前尚不清楚,但所有热点的特性都很相似。此外,最近的研究显示,人类基因组中有超过二万五千个热点,这也表明热点是基因组中普遍存在的现象。(译自维基百科)
〔16〕 互补构型(complementary shape):指能像手与手套、钥匙与锁一样合在一起的构型。(译自雅虎问答)
〔17〕 安德鲁·埃林顿:Andrew Ellington
〔18〕 核糖核酸(RNA):是一种重要的生物大分子,是细胞中遗传信息的中间载体。对一部分病毒而言,RNA是其唯一的遗传物质。(摘自中文维基百科)
〔19〕 定向分子进化(directed molecular evolution):根据所需要的属性进行分子进化的技术。
〔20〕 吉莱德(Gilead):1987年成立于硅谷的一家高科技生物制药公司,研发和生产的药品种类主要包括抗艾滋病毒药、抗肝炎药、严重心血管疾病和呼吸道疾病用药。公司2009年的收入超过70亿美金,在《商业周刊》评选的2009年50强公司中名列第一。
〔21〕 Ixsys:创立于1989年,是第一家从事定向分子进化研究的公司。后更名为“应用分子进化”(Applied Molecular Evolution,简写为AME)。现为纳斯达克上市公司。
〔22〕 Nexagen:位于俄亥俄州的健康保健品公司,主打产品为减肥药Jen Fe Next。
〔23〕 Osiris:纳斯达克上市公司,从事干细胞产品的研发和生产。
〔24〕 Selectide:1990年创立于亚利桑那州图森市,公司后经多次收购与转手,已名存实亡。
〔25〕 基因泰克(Genentech):美国历史最悠久的生物技术公司,创办于1976年。公司在上世纪末和本世纪初曾推出过几款癌症用药,风靡市场。瑞士制药业巨头罗氏集团目前为该公司的完全拥有者。
〔26〕 曼弗雷德·艾根(Manfred Eigen, 1927.05.09~ ):德国化学家及生物物理学家,诺贝尔化学奖得主,曾任马克斯·普朗克生物物理化学所主任。
〔27〕 选择压力(selection pressure):也称为进化压力,指在由变异引起的进化中,影响生物体进化方向的外加力量。
〔28〕 贝尔通信研究所(Bellcore–Bell Communication Research):1984年原贝尔实验室根据1982年联邦法院做出的裁决进行了拆分,各个地方的分支研究机构组成了一个联盟,成为贝尔通信研究所。1996年被美国科学应用国际公司(SAIC)收购,更名为泰尔科迪亚(Telcordia)。公司在电信、移动、安全等领域拥有一千八百多个专利。
〔29〕 迈克尔·利特曼(Michael Littman):哲学博士,罗格斯大学计算机科学系教授。
〔30〕 获得性遗传(Inheritance of Acquired Traits):与“用进废退”(User and Disuse)一起构成拉马克进化学说的核心观点,认为生物在出生后,为适应环境的变化可能产生变异,并且这种变异可以遗传给后代。
〔31〕 彼得·丹宁(Peter J. Denning, 1942~ ):美国计算机科学家,多产的作家。他最有名的发明是提出了工作集模型(Working-Set Model),该模型成为所有内存管理策略的参考标准。
〔32〕 《高度并行的计算》:Highly Parallel Computation
〔33〕 约翰·柯扎(John Koza):美国计算机科学家,斯坦福大学顾问教授,以利用遗传算法对复杂问题进行优化的开拓性工作而著称。他是科学游戏公司的创始人之一,该公司开发了美国博彩业的计算机系统。
〔34〕 拉尔夫·默克勒(Ralph Merkle):1979年获斯坦福大学电机工程博士学位。2003到2006年间任乔治亚理工大学计算教授。研究范围包括纳米技术、分子机械臂、自复制,等等。1998年获费曼奖;此外还曾因参与发明公钥密码系统获两个奖项。