可能性的无限空间
可能性的无限空间
荷兰德喜欢玩游戏,喜欢玩所有的游戏。他在安·阿泊的近三十年中,每个月都去玩扑克牌。他最早的记忆之一就是在他祖父家看大人们玩纸牌,那时他恨不得长大到也能坐在桌子旁一块儿玩。上小学一年级时他就从他妈妈那里学会了下棋。他妈妈还是个桥牌高手。荷兰德全家都热衷于航海,荷兰德和他妈妈经常赛船。荷兰德的父亲是个第一流的体操运动员,同时热衷于户外活动。荷兰德上初中时练了好几年体操。全家总是不断变换游戏花样:桥牌、高尔夫、槌球、围棋、象棋、跳棋,凡能玩的,没有他们不玩的。
但不知为什么,对他来说,游戏早就不仅仅只是好玩而已了。他开始注意到,有一些游戏有一种特殊的吸引力,这股魔力超过了输赢的问题。比如说,当他还在读中学一年级的时候,大约是在1942年或1943年,他家住在俄亥俄州的凡·沃特时,他和他的几个好朋友经常久久逗留在华利·普特家的地下室里发明新的游戏。他们最得意的发明是一个占用了大半个地下室的战争游戏,那是他们从报纸的头条新闻中获得灵感而发明的。这个游戏中有坦克和大炮,还有发射表和射程表。他们甚至还发明了一些把游戏图的某些部分掩盖住,来模拟烟幕。荷兰德说:“这个游戏变得相当复杂。我记得我们还用我爸爸办公室的油印机来印制战争游戏的图纸。”(老荷兰德在经济萧条时期在俄亥俄州的大豆生产带创建了一系列的大豆加工厂,从而繁荣发展了起来。)
荷兰德说:“我们没有像你这样描述过下象棋,但我们实际上就是这样下象棋的,因为我们三个人都对下象棋感兴趣。国际象棋是个只有很少几条游戏规则的游戏,但令人无法置信的是,在国际象棋中永远不可能有相同的两局棋。棋路的可能性简直无穷无尽,所以我们就试图发明具有同样性质的游戏。”
他笑着说,自从那以后他一直在以这样或那样的方式发明各种游戏。“我喜欢在事情发生变化时说:‘嘿,那真是我们假设的结果吗?’因为如果结果证明我的假设是对的,如果事物主题进化的潜在规律确实是在某种控制之下,而不是由我说了算的,那我就会感到很惊奇。但如果结果并不令我感到惊奇,那我就不会感到愉快,因为我知道,得到这个结果是由于从一开始我就设置好了一切。”
当然现在我们把这类事称为“涌现”。但在荷兰德远还没有听到这个提法以前,他对涌现的迷恋就已经使他把毕生的热爱都贡献给了科学和数学。在科学和数学领域中他永远都无法满足。他说在他的整个中学时代,“我记得我去图书馆,将凡是与科学有关的书籍都涉猎遍了。我上中学二年级时就决心要当个物理学家。”科学之深深吸引他之处,并不是科学能使他将宇宙归纳成几个简单的规律,而是正好相反:科学可以告诉你,几条简单的规律是如何产生整个世界变幻无穷的行为表现的。 “这真的使我感到非常愉快。在某种意义上,科学和数学是简化的极至。但如果你反过来,观察宇宙规律所囊括的各个方面,出人意料的可能性简直可以是无穷无尽的。这就是为什么宇宙在一个极端上十分易于理解,在另一个极端上却又永无可能理解的道理。”
荷兰德1949年秋季入学麻省理工学院。入校没过多久他就发现,计算机也具有令他同样惊奇的特质。他说:“我真的不知道计算机的这种特质从何而来。但我很早就迷上了‘思考程序’,也就是你只消在计算机内设入很少数据,就可以让它做所有像整合这样的事情。这在我看来,似乎是只需要放入极少东西,就能得到无限丰富的结果。”
但不幸的是,起初荷兰德能够学到的计算机知识只有他在电机课上获取的零星的第二手资料。电子计算机当时还很新奇,大多数计算机知识还处于保密阶段。当然大学还没有开设计算机课程,即使在麻省理工学院也还没有开设。但有一天,当荷兰德又像往常一样在图书馆测览书刊时,他翻到一个由简单的论文封面套着的一系列活页演讲笔记。他在翻阅这些笔记时发现,这份笔记详细谈到1946年在宾夕法尼亚大学摩尔电机系举办的研讨会内容,其中记载,战时宾州大学为了计算大炮的射程表而发明了美国的第一台数控计算机ENIAC。“这些笔记很有名,这是我第一次接触到真正的关于数控计算机的详细资料,里面包括对从计算机建构到软件设计的详尽记录。这一系列演讲就是在这个基础上探讨信息和信息处理的全新概念,并诠释了一种全新的数学技艺:编程。荷兰德立刻就买下了这个演讲的复印稿,一页一页细读了许多遍。事实上,这份演讲稿他到现在还保留着。
1949 年秋季,当荷兰德开始了他在麻省理工学院的大四课程,四处寻找学士论文题目时,他发现了旋风计划(Whirlwind Project):麻省理工学院将建一个速度能达到跟踪空中交通的“实时”的计算机。由海军资助的旋风计划的年资助额为一万美元,这在当时是一个令人目眩的数额。麻省理工为此雇用了七十名工程技术人员,这无疑是当时最大的计算机项目,也是最具发明性的研究之一。旋风将是第一台采用磁心记忆和交互式显示屏的计算机,它将产生计算机网络和多程序(一次运作多个程序)。作为第一台实时计算机,它将为计算机应用于空中交通控制、工业流程控制、以及计算机应用于预售票和银行铺平道路。
但当荷兰德刚听说这个消息时,旋风还仅仅停留在实验阶段。“我知道麻省理工在研制旋风,它还尚未被研制成功,还在研制之中,但已经可以用了。”不知为什么,他一心想参与进去。他开始四处敲门,在机电系发现了一个名叫赛德奈克·考派尔(Zednek Kopal)的捷克天文学家,曾经教过他数值分析。“我说服他主持我的论文评议委员会,又让物理系同意让电机系的人来主持我的论文评议委员会,然后我又说服了参与旋风计划的人让我能够看到他们的操作手册。当时操作手册是保密的!”
“那也许是我在麻省理工最快活的一年。”他说。考派尔建议他论文的题目是为旋风编一个程序来解拉普拉斯(Laplace)方程式。拉普拉斯方程式描述的是多种物理现象,从围绕任何带电物的电场分布,到紧绷的鼓面震动。荷兰德立刻就着手这项研究。
这不是麻省理工学院最容易做的毕业论文。在那时,还没有人听说过像Pascal、C或FORTRAN语言。确实,把对计算机的命令转化为数字编码的计算机编程语言直到五十年代中期才被发明出来。那时就连一般的十进制的语言都还没有,还是十六进制的。他在毕业论文上所耗费的时间比他想象的要长,最后他不得不申请麻省理工学院宽限比通常完成学士毕业论文所允许的长两倍的时间。
但他非常热衷于这项研究。“我喜欢这个过程中的逻辑本质,”他回忆说,“编程与数学有同样的特点:你走了这一步,然后你就可以由此走下一步。”但更重要的是,为旋风编程序使他认识到,计算机并不只是实施快速计算。在一系列神秘的六位十进制数字中,他可以随意设计震动的鼓面,或旋绕的电场等任何东西。在循环的数位中,他可以创造想象中的宇宙。所需要做的只是把适当的规律编码进去,然后其他的一切就会自然展开。
荷兰德的毕业论文从一开始就只是个书面设计,他编制的程序从未真正在旋风上运作过,但在另一个方面,他的毕业论文却收获颇丰:他成了全美国少数几个懂得一些编程的人之一。结果1950年他刚毕业就被IBM公司录用了。
这个时机真是再好不过了。当时IBM在纽约普夫吉普斯(Poughkeepsie)的巨大工厂正在设计第一台商用计算机:国防计算机,后来被重新命名为 IBM701。当时设计生产这台计算机代表了一个前途未测的重大赌注。许多思想保守的行政管理人员都认为研制这种计算机是浪费钱财,还不如把钱投资于改良打孔机上。事实上,产品企划部在1950年花了整整一年的时间坚持说,全国的市场对这类计算机的需要永远不可能超过18台。IBM公司坚持研制国防计算机的主要原因,是因为它是一个叫作小托马斯的后起之秀的钟情项目。小托马斯是IBM公司年迈的总裁托马斯·B·华生(Thomas B.Watson)的儿子和当然继承人。
但荷兰德当时只有二十一岁,对此知之甚少。他只知道自己已被置入圣境。“我已经到了这里,一个这么年轻的人,在一个这么重要的岗位。我是少数几个知道 IBM701正发生什么的人之一。”IBM的项目负责人将荷兰德安排在由七个人组成的逻辑计划小组。这个小组负责设计这台新计算机的指令系统和一般性组织。这是荷兰德的又一个幸运,因为这是一个实践他的编程技术的理想的地方。“最初阶段完成之后,我们得到了最初的机器原型,还必须用各种方式来测试。所以工程师们经常通宵达旦地工作,白天把机器拆卸开,晚上又尽最大的努力把它拼装起来。然后我们少数几个人就会从晚上十一点钟开始,全夜运转我们的程序,看看是否能够正常运作。”
在某种程度上,我们编的程序确实能够运行。当然,用今天的标准来衡量,701机就像是石器时代的东西了。它有一个巨大的控制板,上面挤满了各种键盘和开关,但还没有屏幕显示器的雏形。这部机器通过标准的IBM打孔机执行输入和输出命令,号称足有四千个字节的记忆存储量(今天市面上出售的个人电脑的记忆存储量一般比这大一千倍)。它可以在三十微秒中算出两个数字相乘的结果。(现在所有的手持计算器的功能都比这个强。)荷兰德说:“这个机器也有许多缺陷。最好的情况下,平均每三十分钟左右就会出现一次失误,所以我们每次计算都要做两遍。”更糟糕的是,701计算机是通过在一个特殊的负极射线管的表面产生光点来存储资料的。所以荷兰德和他的同事们必须调整算法,以避免过于经常地在记忆存储的同一个点上写入数据,否则就会增加这一个点上负极射线管表面的电荷,而影响到周围的数据。“我们竟能使计算机运行了,这太令人惊喜了。”他笑道。但事实上他这是认为瑕不掩瑜。“对我们来说,701计算机就像是一个巨人。我们觉得能有时间在一台快速运转的机器上尝试我们编的程序,真是太好了。”
他们一点儿也不缺少可以用来做尝试的程序。那些最原始、最早期的计算机接纳了关于信息论、控制论和自动机等这些十年前尚不存在的新概念的狂潮。谁知道局限何在?几乎你尝试的任何东西都可能开创出一片新天地。更进一步的是,对于像荷兰德这样更富于哲学思想的开拓者来说,这些聚满了线路和真空管的庞大而笨拙的计算机为思考开拓了全新的方式。计算机也许不是报纸的星期天增刊耸人听闻地形容的那种“巨脑”。事实上,从它们的结构和运作的细节来看,它们和人脑毫无相同之处。但从更深刻、更重要的意义上来说,计算机很类似人脑。一个很诱人的推测是:计算机和人的大脑都是信息处理的装置。因为如果这个情况属实的话,那么,思维本身就可以被理解为是一种信息处理的形式。
当然,那时没人把这种事情称为“人工智能”或“认识科学”。但即使如此,计算机编程本身,作为一种全新的尝试,也正在迫使人们比以往要小心得多地去思考解决问题的真正含义是什么。计算机最终是个外星人:你不得不告诉它一切事情:什么是数据?它们是如何被转换过来的?怎样从这一步到达那一步?这些问题反过来又很快引向了令哲学家们苦恼了几个世纪的问题:什么是知识?知识是怎样通过感官印象获取的?知识是怎样反映在思维上的?是怎样通过吸取经验而完善的?又是怎样被运用于推理判断的?已做的决定是怎样被转化为行动的?
那时对这些问题的回答远还不清楚(事实上,对这些问题的回答到现在也仍不清楚)。但这些问题以一种前所未有的清晰和准确的方式被提出来了。IBM公司在普夫吉普斯的发展小组作为全美国最杰出的计算机天才的集中地之一,突然走在了计算机发展的前列。荷兰德喜欢回忆一群“经常的非常客”每隔两周左右就会找一个晚上聚在一起,讨论扑克牌游戏或围棋。其中有一个参与者是个名叫约翰·麦卡菲(John McCarthy)的暑期实习生,加州理工学院的一个年轻的研究生,后来成为人工智能的创始人之一。(事实上,是麦卡菲1956年为在达特茅斯学院的一个暑期人工智能研讨会做宣传时发明了“人工智能”这个词。)
另一个人是阿瑟·塞缪尔(Arthur Samuel),一个语调柔和、四十岁左右的电机工程师。他是IBM公司从伊利诺斯大学招聘来帮助公司制作性能可靠的真空管的,也是荷兰德整夜整夜进行程序运行马拉松的最经常的陪伴者。(他还有个女儿就在附近的凡沙,荷兰德与之还约会过几次。)塞缪尔显然对真空管失去了兴趣。五年来他一直在尝试编写可以跳棋的程序——不止是会下跳棋,而且要会随着不断吸取经验而越下越好。现在回想起来,塞缪尔的计算机跳棋被认为是人工智能研究方面的一个里程碑。1967 年,他完成了对这个下跳棋的程序的修改和完善后,这个计算机跳棋手已经能够达到国际大师的水平了。即使到701机器时期,他编的程序也显得相当好了。荷兰德记得对此印象极深,特别是它能针对对方的步骤调整自己的战术。大致地说,这是因为这个程序设计了一个简单的“对手”模型,然后用这个模型去预测最佳棋路。尽管当时荷兰德无法将之表述清楚,但他感到电脑跳棋的这个功能正好抓住了学习和适应的某种最本质的东西。
但因为荷兰德要仔细考虑其他事情,所以就把这些想法抛开了。当时他正为自己的研究项目忙得分身无术。他研究的是对大脑内部运作机制的模拟。他记得这项研究始于1952年春季,当时他正在听麻省理工学院心理学家利克莱德(J.C.R.Licklider)的演讲。利克莱德前来访问普夫吉普斯实验室,同意就当时该领域最热门的话题,蒙特利尔麦克吉尔大学的神经生理学家唐纳德·希伯(Donald O.Hebb)关于学习和记忆的新理论,做这个演讲。
利克莱德解释说,问题是,在显微镜下,大脑的大部分都呈现出一片混沌,每一个细胞都随意发出数千条纤维,与数千计其他神经细胞随意相连。然而,这些稠密相连的网络又显然不是随意组成的。一个健康的大脑能够前后连贯地形成感觉、思想和行动。更重要的是,大脑显然不是静止不变的。它可以通过吸取经验来改善和调整自己的行为。它可以学习。但问题是,它是怎样学习的?
在三年前的1949年,希伯在他出版的《行为组织》(The Organization of Behavior)一书中作出了他的回答。他的基本思想是,假设大脑经常在“突触”上做些微妙的变化。突触是神经冲动从这个细胞跳到那个细胞的连接点。这个假设对希伯来说是非常大胆的,因为当时他对此还没有任何证据。但希伯为这一假设阐述说,这些突触上的变化正是所有学习和记忆的基础。比如说,通过眼睛视觉的感官冲动会通过加强沿途所有突触的方式在它的神经网络上留下痕迹。差不多的情形同样会发生在由耳进入的听觉神经系统、或大脑内其它脑际活动。结果是,随意启动的网络会迅速将自己组织起来。通过某种正反馈,经验被积累了起来:强健的、经常被使用的突触会变得更强健,而弱小、不经常使用的突触会萎缩。被经常使用的突触最后强健到一定程度以后,记忆就被锁定了。这些记忆反过来又会布满整个大脑,每一个突触都与一个复杂的突触形态相对应,这些突触形态包含了成千上万个神经元。(希伯是最先描述这种分布记忆的人之一,这种描述后来被称为“关联论”(connectionist)。)
但希伯的思想还不止这些。利克莱德在演讲中还解释了希伯的第二个假设:有选择的突触强化会导致大脑自组成“细胞集合”——几千个神经元的子结合,其中循环神经冲动会自我强化,继续循环。希伯认为这些细胞集合就是大脑基本的信息建设砖块。每一个细胞集合都与一种声调、一束光线或某种思想的一闪念相对应。但这种细胞集合在生理上并没有特别之处。确实,它们相互重叠,任何一个神经元同属于好几个细胞集合。而且因为如此,一个细胞集合的行动势必带动其他细胞集合的动作,这样,这些基本的建设砖块就会迅速自组成为更大规模的概念和更复杂的行为。总之,细胞集合就是思想的基本量子。
荷兰德坐在听众席上听得呆若木鸡。这可不是当时哈佛的行为学家斯金纳(B.F.Skinner)推崇的枯燥无味的刺激/反应心理学。希伯谈论的是精神内部的活动情形。他的关联理论的丰富多采性和令人永恒惊奇的特点引起了荷兰德的强烈反响。这个理论的感觉是对的。荷兰德迫不及待地想运用这个理论做点什么。希伯的理论就像是一扇开启了思想本质的窗户。他想凭窗张望,想看到细胞集合在随意的混沌之中形成自组,不断成长,想观察它们如何相互作用,以及思维本身是如何涌现的。他想观察所有这些是如何在没有外界指导的情况下自然发生的。
利克莱德刚结束对希伯理论的讲演,荷兰德就对701计算机组的负责人纳撒尼尔·罗切斯特(NathanielRochester)说:“好吧,我们已经有了这么一台原型计算机,让我们来编写一个神经网络的模拟程序。”
而这正是他们所做的。“他编写了一个程序,我也编写了一个程序。这两个程序在形式上很不相同。我们把它们称为‘概念者’,这绝非自大之言!”
事实上,即使到了四十年之后,当神经网络模拟早就变成了人工智能的标准工具,IBM的“概念者”的成就也仍然引人瞩目,其基本思想在今天看来仍然非常熟悉。在他们的程序中,荷兰德和罗切斯特把他们模拟的人工神经元当作“节点”——也就是能够记住自己内部状态中某些事情的小计算机。他们将自己的人工突触模拟成各种节点之间的抽象结合点,每一个结合点都有一定的“重量”,与突触的强度相对应。他们还用通过网络吸取经验来调节强度的方式模拟希伯的学习规则。但荷兰德、罗切斯特和他们的同事们还采用了比今天的大多数神经网络模拟远为详尽的基本神经生理学知识,包括模拟神经元的反应有多快、如果神经元过于经常起反应,疲劳程度如何这样的因素。
毫不奇怪,他们的这些研究进展困难。不仅仅是因为他们所编写的程序是神经网络模拟方面最原初的研究,而且也因为这使计算机首次被用于模拟(与计算数字和分析数据的功能正好相反)。荷兰德对IBM公司的合作耐心给予了很高的评价。他和他的同事们在计算机上耗费了无数个小时来模拟神经网络,甚至还由IBM公司出资去了趟蒙特利尔,向希伯本人咨询。
但到最后他们的模拟终于成功了。“出现了许多涌现现象。”荷兰德至今谈起这些来仍然很激动。“你可以从统一的神经元基质开始,然后看到细胞集合的形成。”1956年,在这项研究工作的绝大部分结束几年之后,荷兰德、罗切斯特和他们的同事终于发表了该项研究成果。这是荷兰德发表的第一篇论文。
第一时间更新《复杂》最新章节。