第十七章 开放的宇宙

07-01Ctrl+D 收藏本站

关灯 直达底部

17.1 拓展生存的空间

一群蜜蜂从蜂巢里溜出来,然后聚成一团悬挂在一根树枝上。如果附近的养蜂人运气好的话,它们落脚的树枝很容易够着。此时,这些喝饱了蜂蜜又不需要看护幼蜂的蜜蜂就像瓢虫一样温顺。

我曾有过一两次将悬聚在我头部高度的蜂团移进自己的空蜂箱的经历。将上万只蜜蜂从树枝上移入蜂箱的过程可说是生活中的一场奇妙表演。

如果有邻居在看,你可以给他们露一手:在嗡嗡作响的蜂团下铺上一块白布或者一大块硬纸板。将布单一边盖在空蜂巢底部拉出的门板上,使布或硬纸板形成一个导向蜂巢入口的巨大坡道。此时,戏剧性地停一下,然后抓住树枝用力一抖。

蜂团整个儿从树上掉下来,落到布单上四下奔涌,像翻腾的黑色糖浆。成千上万只蜜蜂交叠在一起,乱哄哄地挤作一堆,嗡嗡作响。慢慢地,你会看出些眉目。蜜蜂们面向蜂巢的开口排成一行,鱼贯而入,就像是接受了同一个指令的小小机器人。它们确实收到了指令。如果你俯下身来靠近白布,将鼻子凑近蠕动的蜂群,会闻到玫瑰花似的香味。你会看见蜜蜂们一边行进,一边弓着背,猛烈地扇动着翅膀。它们正从自己的尾部喷出玫瑰香气,并把它扇到身后的队伍里。这种香气告诉后面的伙伴们:“蜂后在此,跟我来。”第二个跟着第一个,第三个跟着第二个,五分钟后,整个蜂群都钻进了蜂箱,布单上几乎空空如也。

地球上最初的生命是不可能上演这一幕的。这并非因为缺少足够的变种。早期的基因根本就没有施展这种本事的能力。用玫瑰的味道来协调上万只飞虫聚成一个目标明确的爬行怪物,这不是早期生命所能做到的。早期生命不仅还未能创造出大戏上演的舞台——工蜂、蜂后、花蜜、树、蜂巢、信息素,而且连搭建这个舞台的工具也还没有创造出来。

大自然之所以能产生令人震惊的多样性,是因为它在本质上是开放的。生命不会仅靠最早诞生的那几个基因去产生令人眼花潦乱的变化。相反,生命最早的发现之一是如何创造新的基因,更多的基因,可变的基因,以及一个更大的基因库。

博尔赫斯图书馆里的一本书含有相当于100万个基因的信息量;而一帧高分辨率好莱坞电影画面所含的信息相当于3000万个基因。由此构建的“书库”尽管堪称庞大,在由所有可能存在的书库组成的“元书库”中,它们不过是一粒尘埃。

生命的特征之一是它会不断地拓宽自身的生存空间。大自然是一个不断扩展的可能性之库,是一个开放的大千世界。生命一边从书架上抽出最不可思议的书来,一边为藏书增建厢房,为更不可思议的文本创造空间。

我们不知道生命如何突破了从固定基因空间到可变基因空间的分界线。也许某一个特殊的基因决定着染色体中基因的数量。只要使那一个基因产生变异,就可以使链中基因的总数增加或减少。也许基因组的大小是由多个基因间接决定的。或者更有可能的是,基因组的大小是由基因系统自身的结构决定的。

汤姆·雷的实验显示,在他的自我复制世界里,可变的基因长度瞬时就涌现出来了。他的创造物自行决定其基因组的长度(由此也决定了它们可能存在的基因库的规模),短至出乎他意料的22字节,长至23000字节。

开放的基因组带来开放的进化。一个预先设定了每个基因的工作或基因数量的系统只能在预先设定的范围内进化。道金斯、拉萨姆和西姆斯最初的那些系统以及俄罗斯程序员的电子鱼,都搁浅在这个局限性上。它们也许能生成所有可能的具有既定大小和深度的画面,但不能生成所有可能的艺术品。一个没有预先确定基因角色和数量的系统才能出奇制胜。这就是汤姆·雷的创造物造成轰动的原因。从理论上说,他的世界只要运行时间够长,在最终的形式库中就能进化出任意东西。

17.2 生成图像的基元组

形成开放基因组的方法不止一种。1990年,卡尔·西姆斯利用二代连接机(CM2)的超级计算能力设计了一个由长度可变基因组成的新型人工世界,比他设计的植物图像世界更为先进。西姆斯的妙招是创造一个由小方程而非长串数码组成的基因组。他原来的基因库中每个固定长度的基因各控制着植物的一个视觉参数;这个新基因库则拥有长度不定且可自由扩展的方程,籍此绘制各种曲线、色彩和形状。

西姆斯的方程——或着说基因,是一种计算机语言(LISP)[1]的小型自包含逻辑单元。每一个模块都是一个算数指令,诸如加、减、乘、余弦、正弦。西姆斯把这些单元统称为“基元组”——它们构成了一个逻辑的字母表。只要有一张恰当的逻辑字母表在手,就可以建立任何方程,就像用适当多样的语音元素表就能合成任何语音句子一样。加、乘、余弦等的相互组合能产生任何我们想得出的数学方程。既然任何形状都可以用方程来表达,这一基元字母表也就可以画出任何一种图像。增加方程的复杂性也就神奇地扩大了所生成图像的复杂性。

方程基因库还有个意外的好处。在西姆斯的原版世界(以及在汤姆·雷的“地球”和丹尼·希利斯的共同进化的寄生虫世界中),有机体是一串串每次随机转换一个数字的数码,就像博尔赫斯图书馆里的书那样,一次改变一个字母。而在西姆斯的改良版世界里,有机体成了一串串每次随机转换一个基元的逻辑基元组。仍以博尔赫斯图书馆为例的话,这次被调换的是词而不是字母。每本书里每个词的拼写都正确,每本书的每一页由此就更有实际意义。但是,对于以词为原料的博尔赫斯图书馆来说,要煮这锅汤[2]至少需要数以万计的词,而西姆斯仅用一打左右的数学基元就能列出所有可能的方程。

对逻辑单元而不是数字位元做进化,最根本的优势还在于它能马上将系统引上通往开放宇宙的大道。逻辑单元本身就是功能,而不像数字位元那样仅仅是功能的数值。在任意一个地方增加或交换一个逻辑基元,程序的整体功能就会产生转变或得到扩展,从而在系统中涌现出新功能和新事物。

而这就是西姆斯的发现。他的方程进化出全新的图像,并把它们显示到计算机屏幕上。这个新的空间是如此之丰富,使西姆斯大为震惊。由于基元组只包含逻辑部件,西姆斯的LISP字母表确保了大部分方程所绘出的图像都具有某种模式。屏幕上不会再充斥着模糊灰暗的图像,无论西姆斯“漫步”到哪里,都能看到令人惊艳的风景。“艺术”仿佛成了信手拈来之物。一开始,屏幕上布满了狂野的红色和蓝色之字形线条。下一刻,屏幕的上部点缀着黄色的斑斑点点。之后,斑点下出现一条朦胧的水平线,再接着,是重笔墨的波浪伴着蓝色的海天一线。再然后,斑点洇成毛莨花般嫩黄的圆晕。几乎每一轮画面都展现出惊人的创意。一小时内,上千张美轮美奂的图像被从其藏身之所唤起,第一次也是最后一次展现在我们面前。这好比站在世上最伟大的画家身后,观看他创作从不重复主题和风格的速描。

当西姆斯选中一幅图画,繁衍出其变种,再从中选取另一幅时,他所进化的不只是图像。撇开表象,西姆斯进化的是逻辑。一个相对较小的逻辑方程能绘制出一幅让人眼花缭乱的复杂图画。西姆斯的系统曾经进化出下面这段逻辑代码:

(cos (round (atan (log (invert y) (+ (bump (+ (round x y) y) #(0.46 0.82 0.65) 0.02 #(0.1 0.06 0.1) #(0.99 0.06 0.41) 1.47 8.7 3.7) (color-grad (round (+ y y) (log (invert x) (+ (invert y) (round (+ y x) (bump (warped-ifs (round y y) y 0.08 0.06 7.4 1.65 6.1 0.54 3.1 0.26 0.73 15.8 5.7 8.9 0.49 7.2 15.6 0.98) #(0.46 0.82 0.65) 0.02 #(0.1 0.06 0.1) #(0.99 0.06 0.41) 0.83 8.7 2.6))))) 3.1 6.8 #(0.95 0.7 0.59) 0.57))) #(0.17 0.08 0.75) 0.37) (vector y 0.09 (cos (round y y)))))

这个方程在西姆斯的彩色屏幕上绘出了一幅引人注目的图画:北极的落日余辉映照在两根冰柱上,冰柱晶莹剔透;远方的地平线淡然而宁静。这可堪比一个业余画家的大作哩。西姆斯告诉我说:“这个方程的进化从头到尾仅用了几分钟时间——如果是人类有意为之的话,可比这个费功夫多了。”

但是西姆斯却无从解释方程背后的逻辑以及它为何会绘出一幅冰的图画。在这个方程面前,西姆斯和我们一样茫然无知。方程所隐藏的逻辑已经无法用简单明了的数学来破解。

17.3 无心插柳柳成荫

真正开始将逻辑程序的进化从理论付诸实践的是约翰·柯扎。他是斯坦福大学计算机科学系的教授,约翰·霍兰德的学生。他和霍兰德的另外几个学生一起使20世纪60~70年代一度被冷落的霍兰德遗传算法重放光芒,进入到80年代末并行算法的复兴时期。

与“艺术家”西姆斯不同,柯扎并不满足于单纯地探索可能之方程的空间,他想进化出能够解决特定问题的最佳方程。举个牵强一点的例子,假设在所有可能的图像中有一幅图会吸引奶牛凝视它,并由此提高产奶量。柯扎的方法就可以进化出能绘制这一特定图像的方程。在这个例子中,柯扎会对那些所绘图像哪怕只是轻微增加产奶量的方程给予赏奖,直至牛奶产量无法再得到提高。当然,柯扎所选的问题要比这实际得多,譬如,找出一个能操纵机器人移动的方程。

但从某种意义上来说,他的搜索方式与西姆斯以及其他研究者的相似。他也在由可能存在的计算机程序组成的博尔赫斯图书馆内搜寻——只不过不是毫无目的地东瞧瞧西看看,而是去寻找解决特定实际问题的最佳方程。柯扎在《遗传编程》(Genetic Programming)一书中写道:“这些问题的求解过程可以重新表述为在可能存在的计算机程序中搜索最合适的单个计算机程序。”

柯扎通过繁衍“找到”方程的想法之所以被认为有悖常理,和计算机专家对雷的进化方案嗤之以鼻的理由是一样的。过去,人人都“知道”逻辑程序是脆弱的,不能容忍任何变动。计算机科学理论中,程序只有两种状态:(1)无故障运行;(2)修改后运行失败。第三种状态——随机修改后还能运行——是不可能的。程序轻度出轨被称为程序漏洞,这是人们耗费大量财力试图避免的。专家们过去认为,如果计算机方程渐进式改良(进化)真有可能的话,也肯定只会出现在少数罕见领域或专门类型的程序中。

然而,人工进化的研究成果出乎意料地表明,传统观点大错特错了。西姆斯、雷和柯扎都有绝妙的证据来证明,逻辑程序是可以通过渐进式改良进化的。

柯扎的方法基于一种直观判断,即如果两个数学方程在解决一个问题时多少有些效果,那么它们的某些部分就是有价值的。如果这两者有价值的部分能被重新整合成一个新程序,其结果可能比两个母程序中的任何一个都更有效。柯扎数千次地随机重组两个母程序的各个部分,希望从概率上讲,这些组合中能包含一个程序,对母程序中有价值的部分做了最优安排,因而能更好地解决问题。

柯扎的方法和西姆斯的有很多相似之处。柯扎的“数据培养液”也含有大约一打用LISP语言表达的数学基元,诸如加、乘、余弦。这些基元随机串在一起形成一棵棵逻辑“树”——一种形似计算机流程图的层次结构。柯扎的系统像繁殖人口一样创建了500到10000个不同的独立逻辑树。“数据培养液”通常在繁衍了大约50代之后收敛到某个合适的后代身上。

树与树之间交换分枝迫使它们产生变种。有时嫁接的是一根长树枝,有时仅仅是一根细枝或枝头的“叶子”。每根树枝都可以被看作是由更小的分枝构成的完整无缺的逻辑子程序。通过分枝交换,一小段方程(一根树枝),或一个有用的小程序,可以得到保存甚至传播。

通过方程进化能解决形形色色的古怪问题。柯扎用它来解决的一个经典难题是如何让一根扫把立在滑板上。滑板必须在马达的推动下来回移动,使倒立的扫帚在板中央保持直立。马达控制的计算量惊人,但在控制电路上与操纵机器人手臂的电路并无多大区别。柯扎发现,他可以进化出一个程序来实现这种控制。

被他用来测试方程进化的问题还有:走出迷宫的策略;二次方程的求解方法;优化连接众多城市最短路径的方法(又称为旅行商问题);在tictac-toe[3]一类简单游戏中胜出的策略。在每个例子中,柯扎的系统每次都会去寻找解决问题的一般公式,而不是寻找每一个测试实例的具体答案。一个公式经受不同实例的测试越多,这个公式就会进化得越完善。

尽管方程进化能得出有效的解决方案,可这些方案却往往要多难看有多难看。当柯扎拿起他那些高度进化的宝贝开始查看细节时,他和西姆斯以及雷一样感到震惊:解决方案简直是一团乱麻!进化要么绕上一个大弯,要么钻个曲里拐弯的逻辑漏洞抄近道。它塞满冗余,毫不雅致。出了错时,宁愿添加一节纠错程序,或者让主流程改道绕过出错的区域,也不愿销去错误的部分。最后的公式颇有几分神奇的鲁宾·戈德堡[4]连动装置的样子,依靠某些巧合才能运作。当然,它实际上就是架戈德堡神奇连动机。

拿柯扎曾经给他的进化机器玩过的一个问题为例。那是一个由两条互相缠绕的螺旋线构成的图形,大致类似于纸风车上的双重螺旋线。柯扎要求进化方程机器进化出一个最佳方程式,来判定约200个数据点各在互绕双螺旋的哪一条线上。

柯扎将10000个随机产生的计算机公式加载到他的数据培养液里。他放任它们进化,而他的机器则挑选出最有可能获得正确公式的方程。柯扎睡觉的时候,程序树交换分枝,偶尔产生一个运行更好的程序。在他度假期间,机器照常运行。待他度假归来,系统已经进化出能完美划分双螺旋线的答案了。

这就是软件编程的未来!定义一个问题,机器就能在程序员打高尔夫球的时候找到解决方案。但是,柯扎的机器找到的解决方案让我们得以一睹进化的手艺。这是它得出的公式:

(SIN (IFLTE (IFLTE (+ Y Y) (+ X Y) (- X Y) (+ Y Y)) (* X X) (SIN (IFLTE (% Y Y) (% (SIN (SIN (% Y 0.30400002))) X) (% Y 0.30400002) (IFLTE (IFLTE (% (SIN (% (% Y (+ X Y)) 0.30400002)) (+ X Y)) (% X 0.10399997) (- X Y) (* (+ -0.12499994 -0.15999997) (- X Y))) 0.30400002 (SIN (SIN (IFLTE (% (SIN (% (% Y 0.30400002) 0.30400002)) (+ X Y)) (% (SIN Y) Y) (SIN (SIN (SIN (% (SIN X) (+ -0.12499994 -0.15999997))))) (% (+ (+ X Y) (+ Y Y)) 0.30400002)))) (+ (+ X Y) (+ Y Y))))) (SIN (IFLTE (IFLTE Y (+ X Y) (- X Y) (+ Y Y)) (* X X) (SIN (IFLTE (% Y Y) (% (SIN (SIN (% Y 0.30400002))) X) (% Y 0.30400002) (SIN (SIN (IFLTE (IFLTE (SIN (% (SIN X) (+ -0.12499994 -0.15999997))) (% X -0.10399997) (- X Y) (+ X Y)) (SIN (% (SIN X) (+ -0.12499994 -0.15999997))) (SIN (SIN (% (SIN X) (+ -0.12499994 -0.15999997)))) (+ (+ X Y) (+ Y Y))))))) (% Y 0.30400002))))).

这公式不但样子难看,而且还令人费解。即使对一个数学家或一个计算机程序员来说,这个进化出来的公式也是一团乱麻。汤姆·雷说,进化写的代码只有喝醉酒的人类程序设计员才写得出来。依我看,说进化生成的是只有外星人才写得出来的代码恐怕才更确切些。这绝非人类所为。对这个方程追本溯源,柯扎终于找到了这个程序处理问题的方式。完全是凭着百折不挠和不择手段,它才打通了一条艰难曲折又令人费解的解决之道。但这确实管用。

进化得出的答案看起来很奇怪,因为几乎任何一个高中生都能在一行内写出一条非常简洁优雅的方程式来描述这两条螺旋线。

在柯扎的世界里没有要求方案简洁的进化压力。他的实验不可能找到那种精炼的方程式,因为它并不是为此构建的。柯扎试着在运行过程中添加点简约性因素,却发现在运行开始就加入简约性因素会降低解决方案的效率。得到的方案虽然简单却只有中下水平。他有证据表明,在进化过程末期加入简约性因素——也就是说,先让系统找到一个管用的解决方案,再开始对其进行简化,这是进化出简洁方程更好的方法。

但柯扎坚信简约的重要性被过分高估了。他说,简约不过是“人类的审美标准”。大自然本身并不特别简约。举个例子:时为斯坦福大学科学家的戴维·斯托克分析了小龙虾尾部肌肉中的神经回路。当小龙虾想逃走的时候,其神经网络会引发一个奇怪的后空翻动作。对人类来说,那种回路看起来如巴洛克建筑那般繁复,取消几个多余的循环指令马上就可以使它简化一些。但那堆乱七八糟的东西却很管用。大自然并不会只为了优雅而简化。

17.4 打破规则求生存

柯扎指出,人类之所以追求类似牛顿的F=ma那样简单的公式[5],是因为我们深信:宇宙是建立在简约秩序的基础之上。更重要的是,简约对人类来说是很方便的。F=ma这个公式比柯扎确定螺旋线的怪物使用起来容易得多,这使我们更加体会到公式中所蕴涵的美感。在计算机和计算器问世前,简单的方程更加实用,因为用它计算不易出错。复杂的公式既累人又不可靠。不过,在一定范畴内,无论是大自然还是并行计算机,都不会为繁复的逻辑发愁。那些我们觉得既难看又让人头晕的额外步骤,它们能以令人乏味的精确度运行无误。

尽管大脑像并行机器一般运作,人类意识却无法并行思考。这一讽刺性的事实让认知科学家们百思不得其解。人类的智慧有一个近乎神秘的盲点。我们不能凭直觉理解概率、横向因果关系及同步逻辑方面的各种概念。它们完全不符合我们的思维方式。我们的思维退而求其次地选择了串行叙述——线性描述。那正是最早的计算机使用冯·诺依曼串行设计方案的原因:因为人类就是这样进行思考的。

而这也正是为什么并行计算机必须被进化而不是被设计出来:因为在需要并行思考的时候我们都成了傻子。计算机和进化并行地思考;意识则串行思考。在《代达罗斯》[6]1992年冬季刊上一篇极具争议的文章里,思维机器公司的市场总监詹姆斯·贝利描述了并行计算机对人类思维的飞反效应[7]。文章题为《我们先改造电脑,然后电脑改造我们》,贝利在文中指出,并行计算机正在开启知识的新领域。计算机的新型逻辑反过来迫使我们提出新的问题和视角。贝利暗示道:“也许,世上还有一些截然不同的计算方式,一些只有用并行思考才能理解的方式。”像进化那样思考也许会开启宇宙中新的大门。

约翰·柯扎认为,进化处理定义不严格的并行问题的能力是它的另一个独特优势。教计算机学会解决问题的困难在于,时至今日,为了解决我们遇到的每一个新问题,我们最终还是要逐字逐句地为它重新编程。如何才能让计算机自行完成任务,而不必一步步告诉它该做什么和怎么做?

柯扎的答案是:进化。现实世界中,一个问题可能有一个或多个答案,而答案的范围、性质或值域可能完全模糊不清。进化就可以让计算机软件解决这种问题。譬如:香蕉挂在树上,请给出摘取程序。至今大多数计算机学习都不能解决这样的问题。除非我们明确地向程序提供一些明确的参数作为线索,诸如:附近有多少梯子?有没有长竿?

而一旦定义了答案的界限,也就等于回答了问题的一半。如果我们不告诉它附近有什么样的石头,我们知道是不会得到“向它扔石头”的答案的。而在进化中,则完全有这个可能。更可能出现的情况是,进化会给出完全意想不到的答案,譬如:使用高跷;学习跳高;请小鸟来帮忙;等暴风雨过后;生小孩然后让他们站在你的头上。进化并不一定要昆虫飞行或游泳,只要求它们能够快速移动来逃避捕食者或捕获猎物。开放的问题得出了诸如水蝇用脚尖在水上行走或蚱蜢猛然跳起这样各不相同却明确的答案。

每一个涉足人工进化的人都为进化能轻而易举地得出异想天开的结果而大为吃惊。汤姆·雷说:“进化可不管有没有意义;它关心的是管不管用。”

生命的天性就是以钻常规的漏洞为乐。它会打破它自己所有的规则。看看这些生物学上令人瞠目结舌的奇事吧:由寄居在体内的雄鱼来进行授精的雌鱼,越长越萎缩的生命体,永远不会死的植物。生命是一家奇物店,货架上永远不会缺货。自然界层出不穷的怪事几乎跟所有生命的数量一样多;每一种生物在某种意义上都在通过重新诠释规则来为自己找活路。

人类的发明物就没有那么丰富了。大部分机器被造来完成某个明确的任务。它们遵照我们旧式的定义,服从我们的规则。然而,如果让我们构想一架理想的、梦寐以求的机器的话,它应该可以改变自身来适应环境,更理想的是,它还能自我进化。

适应是对自身结构的扭曲,以使之能够钻过一个新漏洞。而进化是更深层的改变,它改变的是构建结构本身的架构——也即如何产生变化的方式,这个过程常常为其他人提供了新的漏洞。如果我们预先确定了一台机器的组织结构,也就预先确定了它能解决怎样的问题。理想的机器应该是一台通用问题解决机,一台只有想不到没有做不到的机器。这就意味着它必须拥有一种开放性的结构。柯扎写道:“(解决方案的)规模、形式以及结构复杂度都应是答案的一部分,而不是问题的一部分。”当我们认识到,是一个系统自身的结构决定了它所能得出的答案,那么我们最终想要的是如何制造出没有预先定义结构的机器。我们想要的是一种不断自我更新的机器。

那些致力于推动人工智能研究的人无疑会对此大唱赞歌。在没有任何提示和限定答案方向的前提下,能想出一个解决方案——人们称之为横向思维,几乎就等同于人类的智能了。

我们所知唯一一台能重塑自己内部连接的机器就是我们称为大脑的灰色活体组织(大脑灰质)。我们目前唯一可以设想付诸生产的重塑自身结构的机器,可能是一种能够自我改编的软件程序。西姆斯和柯扎的进化方程是通向自我改编程序的第一步。一个可以繁衍其他方程的方程正是这种生命种类的基土。繁衍其他方程的方程就是开放性宇宙。在那里任何方程都能产生,包括自我复制的方程和衔尾蛇式的无限循环公式。这种循作用于自身并重写自身规律的递归程序,蕴涵着世上最宏伟的力量:创造恒新。

“恒新”是约翰·霍兰德使用的词组。多年来,他一直在潜心研究人工进化方法。用他的话说,他真正在从事的,是一种恒新的新数学。那是能够创造永无止尽的新事物的工具。

卡尔·西姆斯告诉我:“进化是一个非常实用的工具。它是一种探索你不曾想过的新事物的方式。它是一种去芜存精的方式。它也是一种无需理解便能探索程序的方式。如果计算机运转速度够快,这些事它都能做到。”

探索超越我们理解力外的领域并提炼我们所收获的,这是定向式、监督式和最优化的进化带给我们的礼物。汤姆·雷说:“但是,进化不仅是优化。我们知道进化能超越优化并创造新事物来加以优化。”当一个系统可以创造新事物来加以优化时,我们就有了一个恒新的工具和开放的进化。

西姆斯的图像遴选和柯扎那通过逻辑繁衍进行的程序遴选都是生物学家称为育种或人工选择的例子。“合格”的标准——被选择的标准,是由培育员决定的,因而也是人工产物或人为的。为了达到恒新——找到我们不曾预料的东西,我们必须让系统自己为它的选择划定标准。这就是达尔文所说“自然选择”的含义所在。选择标准由系统的特性所确定;它自然而然地出现。开放的人工进化也需要自然选择,如果你愿意,也可以叫它人工自然选择。选择的特征应该从人工世界内部自然地产生。

汤姆·雷已经通过让他的世界自主选择适者的方式加载了人工自然选择工具。因此,他的世界从理论上说就具有了进化全新事物的能力。但是雷确实“做了点小手脚”以使系统进入运作。他等不及他的世界靠自己的力量进化出自我复制能力了。因此一开始他就引进了一个自我复制机制,一经引入,复制再也不会终止。用雷的比喻来说,他将生命在单细胞有机体状态下强力启动,然后观看了一场新生物体的“寒武纪大爆发”。但是他并不歉疚。“我只是尝试获得进化,并不真的在意获取它的方式。如果我需要将我的世界的物理和化学成分拉升到能支承花样繁多无限制进化的水平,我乐于这么做。我不得不操纵它们来达到这个水平,对此我并不感到内疚。如果我可以操控一个世界达到寒武纪大爆发的临界点,然后让它自己沸腾溢出边界,那才真是永生难忘呢。和系统所产生的结果相比,我不得不操控它达到临界点是一件不值一提的事。”

雷认为,启动开放的人工进化本身已经极具挑战性了,他不一定非得使系统自己进化到那种程度。他会控制他的系统直到它能靠自己的力量进化。正如卡尔·西姆斯所说,进化是一种工具。它可以与控制相结合。雷在控制数月之后转入了人工自然选择。与之相反的过程同样可行——也许有人会在进化数月之后再施以控制,以得到想要的结果。

17.5 掌握进化工具

进化作为一种工具,特别适用于以下三件事:

◎如何到达你想去而又找不到路的领域;

◎如何到达你无法想象的领域;

◎如何开辟全新领域;

第三种用途就是通向开放世界的门户。它是非监督式、非定向式的进化过程。它是霍兰德设想的不断扩张的恒新机器,是一个可以自己建设自己的事物。

像雷、西姆斯和道金斯这些伪上帝们在实验伊始都以为自己划定了系统空间,当他们看见进化如何扩大这一空间时,都大感惊诧。“那比我想象的要大得多”是他们常说的话。当我在卡尔·西姆斯进化展的图片之间穿行的时候,也有类似的无法抗拒的感觉。我找到的(或系统为我找到的)每一张新图片都色彩斑斓且意想不到的复杂,与我从前曾经见过的任何东西都大不相同。每个新图像似乎都扩大了可能存在的图片的空间。我意识到我从前对图片的概念是由人类,或者说由生物本性,来定义的。但在西姆斯的世界里,有相当多数量的激动人心的景致有待展现。它们既非人造也非生物制造,却同样丰富多彩。

进化在拓展着我对可能性的认识。生命的机制与此非常相似。DNA的字节都是功能单位,是拓展可能性空间的逻辑进化者。DNA与西姆斯和柯扎的逻辑单位的运行方式是等同的。(也许我们该说他们的逻辑单位与DNA相等同?)屈指可数的几个逻辑单位就可以通过混合和配对形成天文数字般的蛋白质编码。细胞组织、疾病、药品、味道、遗传信息以及生命的基础结构等所需的蛋白质,均来自与这张小小的功能字母表。

生物进化是一种开放的进化,它以旧的DNA单元繁育新的DNA单元,它是一个不断扩张、永无止境的库。

分子育种学家杰拉德·乔伊斯很高兴他所从事的分子进化工作“既是为了兴趣,也能有利可图”。但他的真正梦想是孵化出另一种开放进化机制。他告诉我:“我想试试看,能否在我们的控制之下启动自组织过程。”乔伊斯和同事们正在做一个试验,让一种简单的核酶[8]进化出复制自己的能力——那正是汤姆·雷跳过的一个至关紧要的步骤。“我们的明确目标是启动一个进化系统。我们要让分子自己学会如何复制自身。之后,自发进化就将取代定向进化。”

目前,自发且能自我维持的进化对生物化学家们来说还只是一个梦想。至今还没有人能够驱使一个系统迈出“进化的一步”——发展出之前未曾有过的化学进程。到目前为止,生物化学家只能针对那些他们已经知道该如何解决的问题来进化出新的分子。“真正的进化是要闯出一片未知的新天地,而不是仅仅是在感兴趣的变异中打转转。”乔伊斯如是说。

一个有效的、自发的、进化的分子系统将会是一个超级强大的工具。它将是一个可以创造出任何生物的开放系统。“它将是生物学的巨大成就。”乔伊斯宣称。他相信,其冲击力相当于“在宇宙中找到了另一种乐于与我们分享这个世界的生命形式”。

但是,乔伊斯是一个科学家,他不会被热情冲昏了头:“我们并非要制造生命,然后让它发展自身的文明。那无异于痴人说梦。我们只是要制造一种与现有的化学存在略有不同的人工生命形式。这可不是什么天方夜谭,而是可以触摸得到的。”

17.6 从滑翔意外到生命游戏

但是,克里斯·朗顿并不觉得能创造自己文明的人工生命是一个天方夜谭。作为开创了人工生命中一个时髦领域的特立独行之人,朗顿承受了许多压力。他的故事很值得向大家陈述一下,因为他自身的经历再现了人造的、开放的进化体系的觉醒。

几年前,我和朗顿参加了在图森召开的为期一周的科学会议,为了清醒一下头脑,我们逃了一下午的会。我应邀去参观尚未完成的生物圈二号项目,路程大约要一个小时。当我们在南亚利桑那州盆地那蜿蜒的黑色缎带般的沥青路上平稳行使时,朗顿向我讲述了他的生命故事。

当时,朗顿以计算机科学家的身份在洛斯阿拉莫斯国家实验室[9]工作。整个小镇和洛斯阿拉莫斯实验室最初都是为研制终极武器而建的。因此,朗顿在故事一开始说他是越南战争时期拒服兵役的人,我感到很吃惊。

作为拒服兵役的人,朗顿得到一个替代兵役的机会——在波士顿的马萨诸塞州综合医院做护理工。他被分配去做一件没人乐意做的苦差事:把尸体从医院地下室搬运到太平间地下室。上班第一个星期,朗顿和他的搭档把一具尸体放到一架轮床上,推着它穿过连接两幢楼的阴冷潮湿的地下走廊。他们必须在地道中唯一的灯光下推着轮床通过一段狭窄的水泥桥。当轮床撞到隆起物时,尸体打了个嗝,坐了起来,并开始从轮床上滑下来!朗顿下意识地转身想抓住他的搭档,却只看见远处的门在他夺路而逃的同事身后来回晃荡。死了的东西可以表现得像活的一样!生命就是一种行为,这是朗顿最初的体会。

朗顿对老板说他无法再做那种工作了,能不能做点别的?“你会编写计算机程序吗?”老板问他。“当然会。”

于是,他得到了一份为早期计算机编写程序的工作。有时,他会在晚上让一个无聊的游戏在闲着的计算机上运行。这个游戏被称为“生命”,由约翰·康威设计,然后再由名为比尔·高斯帕的早期黑客改写成主机程序。该游戏是一组能产生多种多样形式的非常简单的代码,其模式令人想到生物细胞在琼脂盘上的成长、复制和繁衍。朗顿回忆起那一天,他独自工作到深夜,突然感到屋里有人,有某种活着的东西在盯着他看。他抬起头,在“生命”的屏幕上,他看到令人惊异的自我复制的细胞模式。几分钟之后,他再次感到那种存在。他再次抬起头来,却看到那个模式已经死去。他突然意识到那个模式曾经活过——活着,而且像琼脂盘上的细胞一样真切地活过——不过是在计算机屏幕上。也许计算机程序能够获得生命——朗顿心里萌生了这个大胆的想法。

他开始摆弄这个游戏,研究它,思考着是否能够设计一种开放的、类似“生命”那样的游戏,以使事物能够开始自行进化。他苦练编程技术。期间,朗顿接到一个任务:将一个程序从一台过时的大型计算机中移植到一台构造完全不同的新计算机中去。完成此任务的窍门是抽象出旧计算机上的硬件运行方式,在新计算机上以软件的方式模拟出来,即提取硬件的行为,再将之转换成无形的符号。这样,旧的程序就可以在新计算机上由软件仿真出来的一个虚拟旧计算机系统中运行。朗顿说:“这是将过程从一个媒介转到另一个媒介上的直接体验。硬件是什么并不重要,因为你可以在任何硬件中运行程序。重要的是要抓住过程的本质。”这让他开始遐想,生命是否也能从碳结构中提取出来,转化成硅结构。

替代兵役工作结束之后,朗顿在滑翔运动上消磨了一个夏天。他和一位朋友得到一份日薪25美元的工作——在北卡罗来纳州老爷山上空滑翔,以招徕游客。他们每次都要在风速为每小时40英里的高空中逗留数小时。一天,一阵狂风袭击了朗顿,导致他从空中坠落。他以胎儿的姿势摔在地上,折断了35根骨头,其中包括头部除颅骨以外的所有骨头。尽管他的膝盖撞碎了脸,但他还活着。接下来他卧床6个月,处于半昏迷状态。

在严重脑震荡恢复过程中,朗顿感觉他正看着自己的大脑在“重启”,仿佛计算机重启时必须重新载入操作系统一样。他大脑深层的功能一个接一个地重现。朗顿记得那灵光一现的刹那,他的本体感受——那种在一具躯体之中的感知——复原了。他为一种“强烈的发自内心深处的直觉”所震撼,感知的本我融入肉体,好像他这架机器完成了重启,正等待着被投入使用。“关于心智形成是什么感觉,我有亲身的体验,”他告诉我。正如他曾经在计算机上看到生命一样,现在,他对他自己那处于机器中的生命有了发自内心的认识。生命是否可以独立于母体而存在?他体内的生命和计算机中的生命难道不能是一样的吗?

他想,要是能在计算机中通过进化使某种东西成活,那岂不是很棒!他觉得应该从人类文化入手。对人类文化进行模拟似乎比模拟细胞和DNA容易得多。作为亚利桑那州立大学的大四学生,朗顿写了一篇题为《文化的进化》(e Evolution of Culturee)的论文。他希望他的人类学、物理学和计算机科学教授们能认同他制造一台可运行人工进化程序的计算机的想法,并以此获得学位,但是教授们不鼓励他这么做。他自己掏钱买来了一台苹果II型电脑,并编写了他的第一个人工世界。他没能实现自我复制或自然选择,但是他找到了元胞自动机[10]的大量文献——文献表明,“生命游戏”仅仅是元胞自动机模型的一个例子。

这时,他偶然读到约翰·冯·诺依曼在20世纪40年代对人工自我复制的论证。冯·诺依曼提出了一个会自我复制的里程碑式公式。不过实现这个公式的程序冗长而令人费解。在接下来的几个月里,朗顿每夜都在他的苹果II型电脑上编写代码(这是冯·诺依曼不具备的有利条件;他是用铅笔在纸上完成他的编码的)。终于,靠着他那要在硅片中创造生命的梦想的引导,朗顿设计出了当时人们所知的最小的自我复制器。在计算机屏幕上,这个自我复制器看上去就像一个蓝色的小Q。在这个仅有94个字符的循环中,朗顿不仅塞进了完整的循环语句,还有如何进行复制的指令以及甩出复制好的另一个自我的方法。他太兴奋了。如果他能设计出如此简单的复制器,那么他还能模仿出多少生命的关键过程呢?再者,生命还有哪些过程是不可或缺的呢?

对现有文献资料的仔细搜索显示,关于这个简单问题的著述非常有限,而那有限的论述,又分散在数百篇论文中。洛斯阿拉莫斯实验室的新研究职位给朗顿壮了胆。1987年,他以破釜沉舟的决心召集了“活系统合成与模拟跨学科研讨会”[11]上——这是首届讨论(如今朗顿称为)人工生命问题的会议。为了寻找能显现出活系统行为的任何一种系统,朗顿举办了这个面向化学家、生物学家、计算机科学家、数学家、材料科学家、哲学家、机器人专家和电脑动画师的专题研讨会。我是与会为数不多的记者之一。

17.7 生命的动词

在专题研讨会上,朗顿开始探求生命的定义。现有的生命定义似乎不够充分。首届研讨会结束后多年里,更多的学者对此进行了研究。在此基础上,物理学家多恩·法默提出了界定生命的一个特征列表。他说,生命具有:

◎时间和空间上的模式

◎自我复制的能力

◎自我表征(基因)的信息库

◎使特征持久的新陈代谢功能

◎功能交互——它并非无所事事

◎彼此相互依赖,或能够死亡

◎在扰动中保持稳定的能力

◎进化的能力

这个清单引起了争议。因为,尽管我们不认为计算机病毒是活的,它却符合上述大多数条件。它们是一种能够复制的模式;它们包含一份自我表征的副本;它们截获计算机新陈代谢(CPU)的周期;它们能死亡;而且它们也能进化。我们可以说计算机病毒是首例涌现出来的人工生命。

另一方面,有些东西毫无疑问是生物,但是却并不符合此清单的所有条件。骡子不能自我复制,疱疹病毒也没有新陈代谢。朗顿在创造能自我复制的个体上的成功也令他怀疑,人们是否能达成对生命定义的共识:“每当我们成功地使人工生命达到生命所定义的标准时,生命的定义都会被扩充或被改变。譬如,杰拉尔德·乔伊斯认为生命是能够经历达尔文式进化的自立化学系统,我相信,到2000年时,世界上某个实验室就会造出一个符合这个定义的系统。然后,生物学家就会忙着重新定义生命。”

朗顿对人工生命的定义则要更容易为人们所接受。他说,人工生命是“从不同的材料形式中提取生命逻辑的尝试”。他的论点是,生命是一个过程,是不受特殊材料表现形式限制的行为。对生命而言,重要的不是它的组成材料,而是它做了什么。生命是个动词,不是名词。法默对生命标准列出的清单描述的是行动和行为。计算机科学家们不难把这个生命特征的清单想象为变化多样的过程。朗顿的同事斯蒂恩·拉斯穆森也对人工生命感兴趣,他曾经把铅笔扔在办公桌上叹息道:“在西方,我们认为铅笔要比铅笔的运动更真实。”

如果铅笔的运动是其本质,是真实的那部分,那么,“人工”就是一个误导词。在第一届人工生命会议上,当克雷格·雷诺兹展示出他是如何能够利用三个简单的规则就使无数的电脑动画鸟在计算机中自发地成群结队地飞行时,所有的人都能看到一个真实的群飞画面。这是人工鸟真正在群飞。朗顿总结这个经验说:“关于人工生命,要记住的最重要部分是,所谓人工,不是指生命,而是指材料。真实的事物出现了。我们观察真实的现象。这是人工媒介中的真实生命。”

生物学这门对生命普遍原理进行研究的学科正经历着剧变。朗顿说,生物学面临着“无法从单一实例中推论出普遍原理的根本障碍”。地球上的生命只有单一的集体实例,而它们又有着共同的起源,因此,想把它们的本质及普适特征与次要特征区分开来是徒劳无功的。比如,我们对生命的看法在多大程度上是取决于生命由碳链结构组成的事实?如果连一个建立在非碳链结构上的生命实例都没有,我们又怎能弄清这个问题?为了推导出生命的普遍原理和理论,即识别任何活系统和任何生命所共享的特征,朗顿主张“我们需要一整套实例来做出结论。既然在可见将来,外来生命形式都不太可能自己送上门来供我们研究,那么唯一的选择就是靠自己的努力制造出另一种生命形式”。这是朗顿的使命——制造出另一种甚至是几种不同形式的生命,以此作为真正的生物学的依据,推导出生命本原的可靠逻辑。由于这些另类生命是人工制品而非自然产物,我们称其为人工生命;不过,它们和我们一样真实。

这种雄心勃勃的挑战在一开始就将人工生命从生物学中分离出来。生物学设法通过剖析生物,将其分解为部分来了解生物体。而人工生命没什么可解剖。因此,它只能通过将生物聚合在一起、把部分组装成整体的方式取得进展,它是在合成生命,而不是分解生命。因此,朗顿解释说:“人工生命相当于是合成生物学的实践。”

17.8 在超生命的国度中安家落户

人工生命承认存在新的生命形式以及对生命的新定义。所谓“新”生命,其实也是旧瓶装新酒,是用旧的力量以新的方式来组织物质和能量。我们的祖先在看待什么是“活”的问题上很宽松。而在科学时代,我们对“活”的概念进行了细分。我们称动物和绿色植物是活的,但当我们把一个邮局那样的机构称为“有机体”时,我们的意思是说它与生物有类似之处,“仿佛是活的”。

我们(此处我首先是指科学家)开始认识到那些一度被比喻为活着的系统确实活着,不过,它们所拥有的是一种范围更大、定义更广的生命。我将之称为“超生命”。超生命是一种特殊形式的活系统,它完整、强健、富有凝聚力,是一种强有力的活系统。一片热带雨林和一枝长春花,一个电子网络和一个自动驾驶装置,模拟城市游戏和纽约城,都是某种意义上的超生命。“超生命”是我为包括艾滋病毒和米开朗基罗计算机病毒在内的生命类型而造的词汇。

生物学定义的生命不过是超生命中的一个物种罢了。电话网络则是另一个物种。牛蛙虽小,却充满了超生命。亚利桑那州的生物圈二号项目则到处都聚集着超生命,“地球”和终结者2号也一样。将来某一天,超生命将会在汽车、建筑物、电视和试管中发展壮大。

这并不是说有机生命和机器生命是完全相同的;他们不相同。水黾将永远保留某些碳基生命独一无二的特点。不过,有机的和人工的生命共享一套我们刚刚开始学会辨别的特性。当然,世上很可能还会出现其他我们暂时还无法描述的超生命形式。人们可以想象生命的各种可能性——由生物和人造合成物杂交而出的怪种,旧科幻小说中出现的半动物/半机器的电子生化人——也许会自然演化出在父母双方身上都找不到的超生命特性。

人类为创造生命而做的每一次尝试都是在探索可能存在的超生命空间。这个空间包含所有能够再造地球生命起源的要素。但我们所要承担的挑战远不止于此。创造人工生命的目的不仅仅是描述“如我们所知的生命”空间。激励朗顿进行探索的,是描绘出所有可能存在的生命空间的渴望,是把我们带入非常非常广阔的“如其可能存在的生命”领域的使命。超生命这座图书馆包含了所有的活物、所有的活系统、所有的生命薄片、所有抵制热力学第二定律的东西、过去和未来中能够无限进化的种种物质组合,以及某种我们还说不清楚的非凡之物。

探索这个未知领域的唯一方法是建立众多实例,然后看看它们是否适合于这个空间。朗顿在为第二届人工生命会议论文集所写的介绍中提出:“假设生物学家能够‘倒回进化的磁带’,然后在不同的初始条件下,或在不同的外部扰动下一遍遍重放,他们就有可能拥有完整的进化路径来得出结论。”不断地从零开始,稍微改变一下规则,然后建立起一个人工生命的实例。如此反复无数次。每个合成生命的实例都被添加到地球上有机生命的实例中,以形成一个完满的超生命体。

由于生命是一种形式,而非物质,我们能植入“活”行为的材料越多,能够积累的“如其可能存在的生命”的实例就越多。因此,在所有通往复杂性的途径中,人工生命的领域是广阔而多样的。典型的人工生命研究者聚会往往包括生物化学家、计算机奇才、游戏设计师、动画师、物理学家、数学呆子和机器人爱好者。聚会背后的议题是要突破生命的定义。

一天晚上,在首届人工生命大会的一次午夜演讲之后,我们中一些人正眺望着沙漠夜空中的繁星,数学家鲁迪·鲁克尔讲出了一番研究人工生命的动机——这是我听到过的最高远的动机:“目前,普通的计算机程序可能有一千行长,能运行几分钟。而制造人工生命的目的是要找到一种计算机代码,它只有几行长,却能运行一千年。”

这番话似乎是对的。我们在制造机器人时也怀着同样的想法:用几年的时间设计,之后能让它们运行几个世纪,甚至还能制造出它们的替代品。正如橡子一般,几行的编码却能长出一颗180年的大树。

与会者认为,对人工生命来说,重要的不仅是要重新界定生物学和生命,而且要重新定义人工和真实的概念。这在根本上扩大着生命和真实的领域。与以往学术界“不能发表就是垃圾”的模式不同,多数从事人工生命研究的实验者,甚至是数学家们,都支持新的学术信条:“演示或死亡。”要想在人工生命和超生命上取得任何一点进展,唯一的办法就是运行一个有效的实例。前苹果公司雇员肯·卡拉科提西乌斯在解释自己是如何开始从事人工生命的研究时回忆道:“每遇到一种计算机,我都试着在其中编写生命游戏的程序。”最终在苹果机上实现了名为“模拟生命”的人工生命程序。在“模拟生命”中,你能创建一个超生命的世界,并将一些小生物放入其中,使其共同进化成为一个越来越复杂的人工生态系统。现在,肯正试图编写出最大最好的生命游戏,一个终极的“活”程序:“要知道,宇宙是唯一足够大能运行终极生命游戏的地方。然而,将宇宙作为平台的唯一难题是,眼下它正在运行别人的程序。”

目前在苹果公司任职的拉里·雅格曾经给过我一张他的名片。名片上是这样写的:“拉里·雅格,微观宇宙之神。”雅格创造了多边形世界——一个包括了多种多边形有机物的尖端计算机世界。数以百计的多边形物飞来飞去,交配、繁殖、消耗资源、学习(雅格神给予它们的能力)、适应并进化。雅格正在探索可能的生命的空间。会出现什么呢?“一开始,”雅格说,“我的设定是繁殖并不消耗能量。它们可以随心所欲地繁殖后代。但我不断地得到这么一类家伙,游手好闲的食人族:他们喜欢在其父母和子女附近的角落里闲逛,什么也不做,就待在那儿。它们所做的只是相互交配,相互争斗,相互吞食。既然能靠吃孩子过日子还干什么活呢!”这意味着,某种超生命形态出现了。

“研究人工生命的核心动机是为了扩大生物学的领域,使之能囊括比地球上现有生命形式种类更多的物种。”多恩·法默轻描淡写地描述了人工生命之神所拥有的无穷乐趣。

法默对某些事情已经心中有数了。人工生命之所以在人类所做的尝试中是独一无二的,还有另外一个原因。像雅格那样的神灵正在扩展生命的种类,因为“如其可能存在的生命”是一个我们只能通过先创建实例再进行研究的领域。我们必须制造出超生命,然后才能对其进行探索;要探索超生命,就必须制造出超生命。

当我们忙于创造一个个超生命的新形式时,我们的脑海中悄然出现了一个令人不安的想法。生命在利用我们。有机的碳基生命只不过是超生命进化为物质形式的第一步而已。生命征服了碳。而如今,在池塘杂草和翠鸟的伪装下,生命骚动着想侵入水晶、电线、生化凝胶、以及神经和硅的组合物。看看生命向何处发展,我们就会同意发育生物学家刘易斯·海尔德说的话:“胚细胞只不过是经过伪装的机器人。”在第二届人工生命会议上,汤姆·雷在其为大会论文集所写的报告中写道:“虚拟生命就在那里,等着我们为其建立进化的环境。”在《人工生命》(Articial Life: e Coming Evolution)一文中有这样一段叙述,朗顿告诉史蒂文·列维:“其他形式的生命——人造生命——正试图来到这个世界。它们在利用我来繁衍和实现它们。”

生命,特别是超生命,想要探索所有可能的生物学和所有可能的进化方式。而它利用我们创造它们,因为这是唯一探索它们的途径。而人类的地位——所谓仁者见仁,智者见智——既可能仅仅是超生命匆匆路过的驿站,也可能是通往开放宇宙的必经之门。

“随着人工生命的出现,我们也许是第一个创造自己接班人的物种。”多恩·法默在其宣言式的著作《人工生命:即将到来的进化》中写道:“这些接班人会是什么样?如果我们这些创造者的任务失败了,那他们确实会变得冷酷而恶毒。不过,如果我们成功了,那他们就会是在聪明才智上远远超过我们的、令人骄傲的开明生物。”对于我们这些“低等”的生命形式来说,他们的智力是我们所不能企及的。我们一直渴望成为神灵。如果借助我们的努力,超生命能找到某种合适的途径,进化出使我们愉悦或对我们有益的生物,那我们会感到骄傲。但是,如果我们的努力将缔造出超越我们、高高在上的接班人,那我们则会心存恐惧。

克里斯·朗顿办公室的斜对面是洛斯阿拉莫斯原子博物馆——它警示着人类所具有的破坏力。那种力量使朗顿不安。“20世纪中期,人类已经获得了毁灭生命的力量,”他在自己的一篇学术论文中写道,“而到20世纪末期,人类将能够拥有创造生命的力量。压在我们肩头的这两付重担中,很难说哪一付更沉重。”

我们到处为其他生命种类的出现创造空间:少年黑客放出了威力巨大的计算机病毒;日本工业家组装了灵敏的绘画机器人;好莱坞导演创造了虚拟的恐龙;生物化学家把自行进化的分子塞进微小的塑料试管。终有一天,我们会打造出一个能够持续运行并能够创造恒新的开放世界。我们也将籍此在生命的空间中另辟蹊径。

丹尼·希利斯说他想制造一台以他为荣的计算机,这可不是玩笑话。还有什么能比赋予生命更具人性?我想我知道答案:赋予生命和自由。赋予开放的生命;对它说,这是你的生命,这是汽车钥匙;然后,让它做我们正在做的事情——在前进的路上,一切由它自主。汤姆·雷曾经对我说:“我不要把生命下载到计算机中。我要将计算机上传到生命中。”

[1] LISP语言:LISP是List Processing的缩写,即表处理语言,诞生于20世纪60年代左右。表(list)是LISP语言中求值和运算的基本单位。由于LISP语言建立在递归逻辑的基础上,形式化程度很高,适合于符号运算和问题求解,至今仍是人工智能最常用的语言之一。

[2] 汤(Soup):在英语中有alphabet soup的用法,用于指一种用字母状面团作汤料的汤。可查的说法有二:一是说此汤是父母为鼓励儿童学字而做,喝汤的儿童可以把汤内的字母随意组合,从而能学到词汇;二是指在网上遇到的需要处理的一大堆杂乱字母戏称为“字母汤”。此外,在生命起源的问题上经常将产生生命的初始状态(科学家推测,生命起源于呈混合溶液状态的物质“汤”)称为汤。

[3] tic-tac-toe:一个很有名的益智游戏。弈者在井字形的9个方格上轮流落子,三点连成一条直线(横、竖、斜均可)的一方获胜。只要弈法得当,双方一定会以和局结束。

[4] 鲁宾·戈德堡(Rube Goldberg):美国漫画家,画了许多用极其复杂的方法完成简单小事的漫画。比如把鸡蛋放进小碟子这种事,在戈德堡笔下可能是这样的:一个人从厨房桌子上拿起晨报,于是牵动了一条打开鸟笼的线,鸟被放出来,顺着鸟食走向一个平台。鸟从平台摔到一灌水上,水灌翻倒,拉动扳机,使手枪开火。猴子被枪声吓得把头撞在系有剃刀的杯子上,剃刀切入鸡蛋,打开鸡壳,使鸡蛋落入小碟子中。

[5] F=ma:这个公式描述的是牛顿力学第二定律,即加速度定律,F为外力,m为质量,a为加速度。

[6] 代达罗斯(Daedalus):希腊神话中技艺高超的匠人,他发明了刨子、吊线与胶水。

[7] 飞反效应(boomerang effect):指产生与原目标相反的效果,在经济、广告等行业有许多例子。

[8] 核酶(ribozyme):是一种化学本质上为核糖核酸(RNA)却具有酶的催化功能的物质。核酶的发现,打破了酶都是蛋白质这一传统认识,并使得分子层面上的进化成为可能。发现核酶的两位美国科学家因此而获得1989年的诺贝尔化学奖。

[9] 洛斯阿拉莫斯国家实验室(Los Alamos National Laboratory):位于新墨西哥州洛斯阿拉莫斯,是隶属于美国能源部的国家实验室。该实验室曾研制首枚原子弹,是曼哈顿计划所在地。20世纪90年代兴起的复杂科学和人工生命,也与该实验室有密切关系。此外,被美国政府错误地以间谍罪名起诉的华人科学家李文和也是在此实验室工作。

[10] 元胞自动机(cellular automata):也称为细胞自动机、格状自动机,是一种离散模型,具有并行计算的特征。

[11] 活系统合成与仿真跨学科研讨会(Interdisciplinary Workshop on the Synthesis and Simulation of Living Systems):这个会议后来更名为“人工生命”(Artificial Life)大会。