友情提示:如果本网页打开太慢或显示不完整,请尝试鼠标右键“刷新”本网页!阅读过程发现任何错误请告诉我们,谢谢!! 报告错误
八万小说网 返回本书目录 我的书架 我的书签 TXT全本下载 进入书吧 加入书签

复杂-第24部分

按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!



律当然也表现在所有复杂的适应性系统之中。
  但为什么会是这样的呢?事物的这个等级分明的。建设砖块结构的特性就像空气一
样司空见惯。它因无所不在而被我们视而不见。但当你认真思考这个问题时,就会发现
它急需解释:为什么这个世界会形成这种结构呢?
  其实对此已有许多解释。计算机程序员们会把问题分解成许多于程序,因为较小、
较简单的问题比较大、较繁杂的问题易于解开。这就是分而治之的古老法则。鲸鱼和红
杉这样的庞然大物是由无数个微小的细胞组成的,因为总是先要有细胞,才可能形成庞
然大物。当五亿七千万年前巨大的动植物开始出现在地球上时,对自然选择法来说,较
之于从一片混乱无序中重新开始形成大团新的原生质,显然不如将现存的单一细胞形成
生物体要容易得多。通用汽车公司将自己分为无数个部门和子部门,是因为通用汽车公
司的主管不希望公司的五十万名雇员都直接来向他报告。他一天根本没这么多的时间。
事实上,在四十年代和五十年代,西蒙在他的商业组织的研究中就已经指出过,设计优
良的等级制度是在避免让任何一个人疲于应付会议和备忘录的前提下实施实际工作的最
佳方式。
  但当荷兰德思考这个问题时,他越来越觉得,更为重要的理由还基于更深的层次,
因为这个等级分明的建设砖块结构能够彻底改变系统的学习、进化和适应能力。想一下
我们的认知建设砖块,这包含了像红色、汽车和道路这类的概念。一旦这组类别的建设
砖块随着经验的积累而被扭转、精炼和调整,那么,这组概念就会被整个改编和重组成
许多新的慨念,比如像“路边的一辆红色Saab轿车”。当然,较之完全从头开始,这是
一个有效得多的创新的途径,而这反过来又在总体上意味着适应性的一个全新的机制。
适应性系统能够重组它的建设砖块,从而产生巨大的飞跃,而不需要总是要逐步逐步地
在可能性的无限空间中缓慢进展。
  在这个方面,荷兰德最喜欢举的例子是计算机出现之前警方根据目击者的描述来绘
出嫌疑犯的画像的办法,即,把嫌疑犯的面孔分为十个基本区域:发际线、前额、眼睛、
鼻子,一直到下颚。然后绘像师在许多纸片上对各个部位做不同形状的绘画,比如说,
十种鼻子、十种发际线、等等。这加起来就是一百张纸的给像。有了这些之后,绘像师
就可以通过目击者的描述,把合适的部分凑在一起,很快得出嫌疑犯的肖像图。当然,
绘像师无法用这种办法画出所有可能想象出来的面孔。但他或她总是能够得到近似的肖
像:绘像师通过重组这一百张纸片可以得出一百亿张不同的面孔,足够从广大的可能性
空间中找到相似的相貌。“所以如果我能够发现形成建设砖块的过程,这些组合就能为
我所用,而不会成为我的障碍。我就能够用相对少的建设砖块描述出许许多多的复杂事
物。”
  他认识到,这就是解开多基因之谜的关键之所在。“进化过程中的放弃和尝试并不
只是为形成一个优良的动物,而是在于发现优良的建设砖块,并将这些建设砖块结合在
一起,从而产生许多优良的动物。”他现在面临的挑战是要精确而严谨地表明这一切是
如何发生的。他决定,第一步是要做一个计算机模拟,一个既能够陈述过程、又能够帮
助他澄清脑子里的问题的“基因算法”。
  密西根大学计算机科学圈子里的人都看惯了荷兰德拿着折扇状的计算机打印结果跑
过来。
  “看看这个!”他会急煎煎地指着一张整页都是密密麻麻的十六进位的数据符号的
纸说。
  “哦,CCB1095E。太棒了,约翰。”
  “不!不!你知道这是什么意思吗!?”
  事实上,在六十年代初,有相当多的人并不知道,也想不出那些数据表示什么意思。
对荷兰德持怀疑态度的同事们对于荷兰德所从事的研究的怀疑,至少在一点是对的:荷
兰德最终推出的基因算法是个稀奇古怪的东西。除非从最为书面的意义而论。否则这根
本不能算是计算机程序。就它的内部机制而言,它更像是一个模拟生态系统,其中所有
的程序都可以相互竞争、相互交配、一代接一代地繁衍,一直朝着程序员设置的任何问
题的解答方向不断演化。
  说得轻一点,这不是程序的通常编写法。所以荷兰德发现,要向同事们解释为什么
这具有意义,最好用非常实际的语言来告诉他们他正在做什么。他通常会告诉他们,我
们把计算机编程当作一个由FORTRAN或LISP这样的特殊编程语言写成的一系列指令。确
实,编程的全部技艺就在于确保准确无误地按照正确的指示和顺序来编写程序。这显然
是编程的最有效的方法——如果你早就知道你想让计算机干什么的话。但假设你并不知
道你想让计算机干什么,比如假设你想找到某种复杂的数学功能的最大价值。功能可以
表示利润、或工厂的产量。或任何其它东西。这个世界到处都有希望价值被最大化的东
西。确实,计算机程序员已经为此设计出先进的计算机算法来了。但即使是其中最优秀
的算法都无法保证在任何情况下都能提供正确的最大化价值。在某种层次上,这些算法
总是不得不依赖传统的尝试/错误法,也就是猜测法。
  荷兰德对他的同事们说,如果情况真是这样的话,如果你反正总是要依赖尝试/错
误法的话,也许就值得试试利用大自然的尝试/错误法则,也就是自然选择法。与其编
一个程序来执行你自己都不知道该如何定义的任务,还不如让它们通过进化自然产生。
  基因算法便是这样的一个方法。荷兰德说,如果想看它怎样发生作用,那就忘记
FORTRAN编码,深入到计算机的内核里去。计算机程序在计算机上是以一列1或0的二进
制来表示的:11010011110001100100010100111011……在这种形式下,计算机程序看上
去像是一大片染色体。每一个二进制数字都是一个单独的“基因”。一旦你用生物学眼
光来思考二进制编码,你就可以用类似的生物方法使之进化。
  荷兰德说,首先,让计算机产生一群数量约为100个数字的染色体,其中包含大量
的随机变量。假设每一个染色体都相对应一群斑马中的一匹(这是为使事情简化之故。
因为荷兰德试图把握进化的最基本的本质,所以在基因算法中舍弃了诸如马蹄、胃和脑
这样的细节,而把个体当作单个的纯DNA来模拟。而且,为了使之更便于操作,他把二
进制的染色体限制在长度不超过几十个二进制数字之内,所以这些染色体实际上并不是
完整的程序,而只是程序的片断。事实上,在他最初的实验中,这些染色体只代表单一
的变量。但这并不能改编这个算法的基本原则)。
  第二,把现有的问题当作每一单个的染色体,把问题当作计算机程序来运作,用这
种方法来进行测试。然后,评价它的运行好坏,给它打个分。从生物学的角度来看,这
个分数将评判出个体的“强健”程度,也就是它繁殖成功的概率。个体的强健程度越高,
被基因算法选择出来,得以将自己的基因遗传给下一代的机会就越大。
  第三,将你所选择的个体当作具有足够繁殖能力的染色体,使它们相互交配,从而
繁衍新的一代。让剩余的染色体自行消亡。当然,在实际操作时,基因算法舍弃了两性
的差异、求偶礼仪、性爱动作、精子和卵子的结合,以及两性繁衍的所有复杂细节,而
只是通过赤裸裸的基因材料的交换繁衍下一代。如果用图解来表示的话,基因算法选择
了有ABCDEFG的染色体和有abcdefg染色体的一对个体,随意在中间切断它们的染色体序
列,然后将双方染色体相互交换,形成对它们的一对后代的染色体:ABCDefg和abCdEFG
(真正的染色体经常会发生这种交换,或交叉,荷兰德从中得到启发)。
  最后,通过这种基因交换繁衍出来的下一代之间又会继续相互竞争,同时在新一代
的循环中,与它们的父母也发生竞争。这无论是对基因算法来说,还是对达尔文的自然
选择法来说,都是最关键的一环。没有两性之间的基因交换,新的一代就会完全像他们
的父母一样,物种的发展就会进入停滞状态。低劣的物种会自然消亡,但优良的物种也
决不会发生任何改良。但有了两性之间的基因交换,新一代就会相似于它们的父母,但
又有所不同,有时会比它们的父母强些。当发生这种情形的时候,被改良的物种就会获
得普及的大好机会,从而显著地改良自己所属的整个物种群。自然选择法提供了一种向
上进取的机制。
  当然,在真正的生物体中,相当大一部分的变量是由于突变、遗传密码的排版错误
所致。事实上,基因算法确实也允许通过故意将1改变为0,或把0改为1而产生一些偶然
的突变。但对荷兰德来说,基因算法的核心是两性交换。不仅仅是因为两性的基因交换
给物种提供了变量,而且这同时也是一个极好的机制,通过这个机制可以寻索到能够相
互密切配合,产生高于一般水平的强健的基因群,也就是建设砖块。
  比如,你将基因算法用于解其中一个最佳化的问题。这是个为某种复杂功能寻找最
大价值的方式的问题。假设当基因算法的内在数群中的数字染色体达到二进制基因的某
种模型时,比如像11####11#10###10,或##1001###11101##,获得了
很高的分数(荷兰德用#来表示“没有关系”。数字处于这个位置可以是0,也可以是
1)。他说,这种模型就具有建设砖块的功能。也许它们凑巧表示的是变量的范围,在
这些范围中,其功能确实具有超常的高价值。但不管是什么原因,含有这种建设砖块的
染色体都会繁荣发展,并普及于整个物种,从而取代那些不含有这类建设砖块的染色体。
  另外,既然两性繁衍使数字染色体能够在每一代都重组它们的基因材料,那么物种
就会经常产生新的建设砖块和现有建设砖块的新组合,这样基因算法就会很快产生具有
双倍和三倍优势的建设砖块。而如果这些建设砖块的组合又产生出更大的优势,那么具
有这些优秀建设砖块的个体特色就会比以往更快地普及于整个物种。结果就是,这个基
因算法会很快指向现有问题的答案,即使事先并不知道从哪儿寻找答案。
  荷兰德记得当他在六十年代初刚发现这一点时感到非常激动。但他的听众却从未为
此而欢欣鼓舞。那时候,在尚属新兴的计算机科学领域里,大多数计算机科学家都感到,
在常规性编程方面尚有大量的基础研究要做。从纯粹实际的角度来说,演化一个程序的
概念显得不着边际。但荷兰德不在乎这些。这正是他自决心要发展费舍尔的独立基因假
设以来一直苦苦探索所获得的成果。繁殖和交叉为基因的建设砖块提供了涌现和共同演
化的机制,同时又是物种个体高效率地探索于可能性空间的机制。事实上,到六十年代
中期,荷兰德已经证明了基因算法的基本定理,他称其为图解定理:在繁衍、交叉和突
变之中,几乎所有具有超常强健性的紧密基因群都能够在物种中成指数比例地发展。
(荷兰德所说的“图解”,是指任何特定的基因模型。)
  他说:“当我最终将图示定理发展到令我满意的地步后,我才开始着手写书。”
  精神的涌现
  荷兰德原来以为能够在一两年内完成一本书,一本关于图解定理、基因算法、以及
他对适应性的总的思考的汇编。但事实上,这本书的出版耗费了他十年的时间。他的撰
写和研究一直是齐头并进,他不断有新的想法需要探索,或理论上有新的方面需要分析。
他指派他指导下的好几个研究生去做计算机实验,也就是证实基因算法是否真正有用、
是否是一个解决最优化问题的有效办法。荷兰德觉得他这是同时在提出和实践他的适应
性理论,他希望做得准确无误,既深入细致、又精确严谨。
  他无疑做到了这一点。1975年出版的《自然和人工系统中的适应性》一书罗列了大
量的方程式和分析。该书总结了荷兰德二十年来对学习、进化和创造性之间深刻的内在
关联的思考,对基因算法做了周密的陈述。
  荷兰德的研究成果并没有在密西根大学之外更广泛的计算机科学世界里引起任何反
响。对那些喜欢优雅、简明和被证明是正确的算法的人来说,荷兰德的基因算法太离奇
古怪了。人工智能圈子对荷兰德的基因算法研究反应较为热烈。在这个圈子里,他的书
的年销量可达一百至二百本。但即使如此,即使对他的书偶有评论,最多不过是“约翰
是个极聪明的人,但……”这类话。
  当然,荷兰德并没有力陈他的观点。他只发表了一些论文,相对而言他发表的论文
很少,只是在有人邀请他时才去作演讲,仅此而已。他并没有在重大的学术会议上大肆
渲染基因算法,没有将基因算法用于医学诊断这类能够争取到研究资金、吸引注意力的
热门应用领域,没有去争取巨额投资来创建基因算法“实验室”,也没有出版一本畅销
书来呼吁为对付日本的威胁,采用基因算法来调配联邦基金已迫在眉睫。
  总之,他根本就没有玩那套学术界自我推销的把戏,这似乎不是他喜欢玩的游戏。
更确切地说,他并不真的介意他是赢是输。打个比喻,他仍然情愿和他的小伙伴们一起
混在地下室里做游戏。荷兰德说:“这就好比是打棒球,只不过你参加了非主力队,而
没有参加主力队。但重要的是打棒球的乐趣,而不是参加哪个队。我所从事的科学对我
而言总是其乐无穷的。”
  “我觉得如果没人愿意听我说,会使我很烦恼。但我总是非常幸运,总是有既聪明、
又对我的研究课题兴致勃勃的研究生与我产生思想上的共鸣。”
  这确实从一个侧面反应了他和少年伙伴在地下室做游戏的态度:在密西根大学,荷
兰德将极大的精力放在了和他最直接的圈子里的伙伴共同工作之上了。尤其是在任何时
候他手下都有六七个研究生,远远超过通常导师指导研究生的数额。事实上,从六十年
代中期开始,他所指导的研究生每年都有不止一个人获得博士学位。
  “他们中有些人确实绝顶聪明,与他们相处给我带来了很大的乐趣。”他说。荷兰
德看到有太多教授累计了长长的论文名单,其实这些论文都是他们和他们所指导的研究
生共同研究的成果,甚至完全是由他们的学生写的。所以他故意用相当放手的方式对研
究生进行指导。“他们都按照自己的想法进行研究,做他们自己感兴趣的事。然后我们
所有的人每周一次围聚在桌旁,其中有一个人就会告诉大家他的论文已经进行到什么程
度了,我们大家就会就此展开批评和讨论。这对所有介入者来说都充满了乐趣。”
  七十年代中期,荷兰德和学部里一群志同道合的同事开始了每周一次的自由讨论,
讨论任何有关进化和适应性的问题。这群人里除了有勃克斯之外,还有政治科学家罗伯
特·爱克思罗德(Robert Axelrod)。罗伯特力图想理解人们为什么和什么时候会相互
合作,而不再相互在背后涌刀子。另外还有专攻人类组织的社会动力学的政治科学家米
歇尔·考亨(Michael Cohen)和威廉·汉密尔顿(WilliamHamilton)。威廉是一位进
化生物学家,和爱克思罗德一起研究共生、社会行为和其他形式的生物合作。
  “麦克·科恩(Mike Cohen)是个中介人。”荷兰德回忆说。在他的适应性一书刚
出版不久,科恩来旁听他的课。有一天课后他走过来对荷兰德介绍自己,并说:“你真
应该去和爱克思罗德谈谈。”荷兰德就照做了。通过爱克思罗德,他又结识了汉密尔顿。
很快,BACH小组的人,勃克斯、爱克思罗德、科恩、汉密尔顿就携手联合了。(BACH是
由他们四个人名字的头一个字母组成。他们几乎经常一起工作。在小组成立伊始,他们
就想把斯图尔特·考夫曼网罗进来,但考夫曼去了宾州大学。)“把我们联系在一起的
是我们都有很强的数学背景,都强烈地感觉到进化和适应性问题比任何一个单一的问题
都涉猎广泛。我们开始定期聚会:某个人会读到一篇文章,然后大家一起讨论,激发了
许多探索性思考。”荷兰德说。
  对荷兰德来说尤为如此。他已经完成了适应性一书,但他与BACH小组成员的讨论却
涉及到�
返回目录 上一页 下一页 回到顶部 赞(1) 踩(2)
未阅读完?加入书签已便下次继续阅读!
温馨提示: 温看小说的同时发表评论,说出自己的看法和其它小伙伴们分享也不错哦!发表书评还可以获得积分和经验奖励,认真写原创书评 被采纳为精评可以获得大量金币、积分和经验奖励哦!