您所在的位置:科技先驱

约翰·麦卡锡

人工智能之父兼LISP语言发明人
约翰·麦卡锡(John McCarthy)
1927年9月4日麦卡锡生于美国波士顿一个共产党家庭,父母的工作性质决定全家需不断搬迁,从波士顿迁到纽约,然后又到了洛杉矶。信仰爱尔兰天主教的父亲当过木匠,渔夫和工会组织者,母亲是立陶宛犹太人,在联合通讯社当记者,后来在一家共产党报社工作。麦卡锡从小把自己对科学的兴趣与家庭的政治倾向结合起来。1948年获得加州理工学院数学学士学位,1951年获得普林斯顿大学数学博士学位。作为备受尊敬的计算机科学家、认知科学家,麦卡锡在1955年的达特矛斯会议上提出了“人工智能”一词,并被誉为人工智能之父,并将数学逻辑应用到了人工智能的早期形成中。麦卡锡在1958年发明了LISP语言(该语言至今仍在人工智能领域广泛使用)并于1960年将其设计发表在《美国计算机学会通讯》上。他帮助推动了麻省理工学院的MAC项目。 然而,他在1962年了离开麻省理工学院,前往斯坦福大学并在那里协助建立了斯坦福人工智能实验室,成为MAC项目多年来的一个友好的竞争对手。他因在人工智能领域的贡献而在1971年获得计算机界的最高奖项图灵奖。
他分别短暂地为普林斯顿大学、斯坦福大学、达特茅斯学院和麻省理工学院供职后,麦卡锡于1962年-2000年底在斯坦福担任教授,退休后成为名誉教授。他在1991年获得了美国国家科学奖章(National Medal of Science Award),2003年获得富兰克林学院奖章。约翰·麦卡锡时常在网络论坛上对时事作出右翼倾向的评论。
麦卡锡生于美国波士顿一个共产党家庭,父母的工作性质决定全家需不断搬迁,从波士顿迁到纽约,然后又到了洛杉矶。信仰爱尔兰天主教的父亲当过木匠、渔夫和工会组织者,母亲是立陶宛,犹太人,在联合通讯社(TheFeder?atedPress)当记者,后来在一家共产党报社工作。麦卡锡从小把自己对科学的兴趣与家庭的政治倾向结合起来。麦卡锡在接受采访时说:“我们确信技术的进步对人类有利。我记得小时候读过《十万个为什么》,这是30年代苏联作家伊林(M.Ilin)撰写的通俗科技读物。在美国好像没有这样的书。10至15年前我很高兴得知中国有许多非常早熟的儿童,他们都读过《十万个为什么》。”麦卡锡说他的童年平平淡淡,实际上在读中学时,他就找到加州理工大学的一份课程清单,自学了大学一年和二年的数学课程。1944年他真的到了这所大学,免修头两年的数学课。1948年9月在读研究生时,他出席了该校主办的“行为的大脑机制西克森研讨会”(Hixon Symposiumon Cerebral Mechanism in Behavior at CalTech)。大数学家、计算机设计大师冯·诺伊曼在会上散发了关于自复制自动机的论文。尽管当时还没有人精确地将机器智能与人的智能联系起来,但诺伊曼的报告却激发了麦卡锡的好奇心。1949年在普林斯顿大学数学系作博士论文时,他决定尝试在机器上模拟人的智能。1955年他联合申农(信息论创立者)、明斯基(人工智能大师,《心智社会》的作者)、罗彻斯特(IBM计算机设计者之一),发起了达特茅斯项目(Dartmouth Project),第二年正式启动,洛克菲勒基金会提供了极有限的资助。现在看来,这个项目不但是人工智能发展史的一个重要事件,也是计算机科学的一个里程碑。正是在1956年,麦卡锡首次提出“人工智能”(artificial intelligence)这一概念。现在看来,那次讨论并没有实质上解决有关智能机的任何具体问题,但它确立了研究目标,使人工智能成为计算机科学中一门独立的经验科学。1957年巴库斯(John Barkus)及其IBM小组发布了Fortran语言,这是第一个成功的高级语言,使程序设计者从繁琐的汇编语言中解脱出来。卡内基梅龙大学的纽维尔(A.Newell)、司马赫(H.Simon)等提出信息处理语言IPL,麦卡锡则提出表处理语言Lisp。在Fortran中不允许有递归,麦卡锡希望改进它。1960年巴黎会议大家讨论了Algol语言,采纳了麦卡锡的建议,增加了递归和条件表达式。Algol最早接受了Lisp的观念,但不是最后一个。如今的Pascal、C、Ada等都接受了Lisp的创新。但至今,主流程序设计语言仍然没有吸收麦卡锡建议的“评价函数”(eval),认为它很危险。麦卡锡发明Lisp语言,只是把它作为工具,他的目标是制造具有人类智能的机器。Lisp自发明以后,像其他语言一样,发明人失去了对其的控制能力,马库斯和凯(A.Kay,“面向对象程序设计”的创始人)也一样。1959年麦卡锡发表《具有常识的程序》一文,标志着他向“常识逻辑推理”难题开始宣战。“与所有专门化的理论一样,所有科学也都体现于常识中。当你试图证明这些理论时,你就回到了常识推理,因为常识指导着你的实验。”设想一个旅行者从英国格拉斯哥经过伦敦去莫斯科,计算机程序可以分段处理:从格拉斯哥到伦敦,再从伦敦到莫斯科。但是如果假设此人不幸在伦敦丢失了机票怎么办?当然现实中此人一般不会因此取消原来去莫斯科的计划,他可能会再买一张票。但是预先设计好的模拟程序却不允许如此灵活。因此要发展一种具有常识推理能力的逻辑。麦卡锡发明了LISP并于1960年将其设计发表在《美国计算机学会通讯》(en:Communications of the ACM)上。他帮助推动了麻省理工学院的MAC项目(en:Project MAC)。然而,他在1962年了离开麻省理工学院,前往斯坦福大学并在那里协助建立了斯坦福人工智能实验室(en:Stanford Artificial Intelligence Laboratory),成为MAC项目多年来的一个友好的竞争对手。1964年麦卡锡已是斯坦福大学人工智能实验室的主任,他提出了一种称之为“情景演算”(situational calculus)的理论,其中“情景”表示世界的一种状态。当主体(agent)行动时,情景发生变化。主体下一步如何行动取决于他所知道的情景。情景演算的思想吸收了有穷自动机状态转移的概念。在情景演算中,推理不但取决于状态,而且取决于主体关于状态知道些什么。主体知道得越多,了解得越详细,他就会更好地作出决策。这种情景演算理论吸引了许多研究者,但它本身也引起一种问题。在多主体的世界中,与一个主体有关的情景的变化可能还取决于其他主体的行动。这样处理起来十分困难。在常识世界中,我们的决策可能不大受其他主体的影响,当然有时也受。很难说麦卡锡的努力最终是否成功了,但他向通常的“演绎推理”挑战,强调人类智能推理的非单调性(nonmonotonicity),发展状态描述法,在人工智能研究中具有重要意义。麦卡锡试图让机器能像人一样,在某种语境下,进行基本的猜测。但这很难做,即使是人,也常常误解语境。一个有趣的例子是:白宫发言人奥涅尔欢迎新当选的里根总统时说:“您成了Grover Cleveland”(他指的是美国的一个总统)。而里根却微笑着说:“我只在电影中扮演过一次Cleveland。”(里根指的是棒球手Grover Cleveland Alexander)不管人们对人工智能还有什么偏见,它现在已成为严肃的经验科学,而麦卡锡为这一领域培养了大量人才,他的学生遍及世界。关于人工智能,想了解更多的东西可以直接访问麦卡锡的网页,从“公众理解科学的角度”看,他的网页做得非常棒。他讨论了人工智能与哲学的关系,人工智能的分类及应用领域等。还详细回答了有关人类“可持续发展”的问题。他是技术乐观派,相信人类会有一个美好的未来(他提供了许多论据,可从网上看到)。
麦卡锡是一个天赋很高的人,还在上初中时,他就弄了一份加州理工大学的课程目录,按目录自学了大学低年级的高等数学教材,做了教材上的所有练习题。这使他1944年进入加州理工学院以后可以免修头两年的数学,并使他虽因战时环境(第二次世界大战当时正在进行之中,美国也在珍珠港事件后宣布参战)要在军队中充任一个小职员,占去了部分时间,仍得以·在1948年按时完成学业。然后到普林斯顿大学研究生院深造,于1951年取得数学博士学位。麦卡锡留校工作两年以后转至斯坦福大学,也只呆了两年就去达特茅斯学院任教(达特茅斯学院位于新罕布什尔州的汉诺威)。在那里,他发起了并成功举办了成为人工智能起点的有历史意义的“达特茅斯会议”。
1958年麦卡锡到MIT任职,与明斯基一起组建了世界上第一个人工智能实验室,并第一个提出了将计算机的批处理方式改造成为能同时允许数十甚至上百用户使用的分时方式的建议,并推动MIT成立组织开展研究。其结果就是实现了世界上最早的分时系统——基于IBM 7094的CTSS和其后的MULTICS。麦卡锡虽因与主持该课题的负责人产生矛盾而于1962年离开MIT重返斯坦福,未能将此项目坚持到底,但学术界仍公认他是分时概念的创始人。麦卡锡到斯坦福后参加了一个基于DECPDP—1的分时系统的开发,并在那里组建了第二个人工智能实验室。   麦卡锡对人工智能的兴趣始于他当研究生的时候。1948年9月,他参加了一个“脑行为机制”的专题讨论会,会上,冯·诺伊曼发表了一篇关于自复制自动机的论文,提出了可以复制自身的机器的设想,这激起了麦卡锡的极大兴趣和好奇心,自此就开始尝试在计算机上模拟人的智能。1949年他向冯·诺伊曼谈了自己的想法,后者极表赞成和支持,鼓励他搞下去。在达特茅斯会议前后,麦卡锡的主要研究方向是计算机下棋。下棋程序的关键之一是如何减少计算机需要考虑的棋步。麦卡锡经过艰苦探索,终于发明了著名的α-β搜索法,使搜索能有效进行。在。-p搜索法中,麦卡锡将结点的产生与求评价函数值(或称返上值或倒推值)两者巧妙地结合起来,从而使某些子树结点根本不必产生与搜索。之所以称为。—p搜索法,是因为将处于取最大值级的结点的返上值或候选返上值PBV称为该结点的α值,而将处于取最小值级的结点的候选返上值或返上值称为该结点的p值。这样,在求得某结点的。值时,就可与其先辈结点的p值相比较,若。≥p,则可终止该结点以下的搜索,即从该结点处加以修剪,这叫p修剪;而在求得某结点的p值时,就可与其先辈结点的α值相比较,若p≤。,则可终止该结点以下的搜索,即从该结点处加以修剪,这叫。修剪。为了说明。-p修剪,我们举一个最简单的例子。设在取火柴棍的游戏中,A、B两人轮流从N根火柴中取1根或2根,不得多取,也不能不取。取走最后一根火柴者胜。用A(n)、B(n)表示轮到A或B时有n根火柴的状态,当n:5时轮到A取,A有两种可能,一是取2根火柴进入B(3),另一是取1根火柴进入B(4)。显然,进入B(3)后,不管B取几根,A必胜,故A必走这一步,余下的分支不必再搜索了。。-p搜索法至今仍是解决人工智能问题中一种常用的高效方法。至于达特茅斯会议,当东道主的麦卡锡是主要发起人,另外3个发起人是当时在哈佛大学的明斯基(1969年图灵奖获得者),IBM公司的罗杰斯特,信息论的创始人香农。麦卡锡发起这个会议时的目标非常宏伟,是想通过10来个人2个月的共同努力设计出一台具有真正智能的机器。会议的经费是洛克菲勒基金会资助的,包括每个代表1 200美元加上外地代表的往返车票。会议的原始目标虽然由于不切实际而不可能实现,但由于麦卡锡在下棋程序尤其是α—β搜索法上所取得的成功,以及卡内基—梅隆大学的西蒙和纽厄尔这两人是1975年图灵奖获得者带来了已能证明数学名著《数学原理》一书第二章52个定理中的38个定理的启发式程序“逻辑理论家”LT,明斯基带来的名为Snarc的学习机的雏形(主要学习如何通过迷宫),这使会议参加者仍能充满信心地宣布“人工智能”这一崭新学科的诞生。
1959年,麦卡锡基于阿隆索·邱奇的l-演算和西蒙、纽厄尔首创的“表结构”,开发了著名的LISP语言,成为人工智能界第一个最广泛流行的语言。LISP是一种函数式的符号处理语言,其程序由一些函数子程序组成。在函数的构造上,和数学上递归函数的构造方法十分类似,即从几个基本函数出发,通过一定的手段构成新的函数。LISP语言还具有自编译能力。具体说来,LISP有以下几个主要特点:1. 计算用的是符号表达式而不是数;2.具有表处理能力,即用链表形式表示所有的数据;3.控制结构基于函数的复合,以形成更复杂的函数;4.用递归作为描述问题和过程的方法;5.用LISP语言书写的EVAL函数既可作为LISP语言的解释程序,又可以作为语言本身的形式定义;6.程序本身也同所有其他数据一样用表结构形式表示。已经证明,LISP的这些特点是解决人工智能核心问题的关键。此外,精巧的表机制也是进一步简化LISP程序设计的方便而有力的工具,因此,LISP自发明以来,已经被广泛用于数学中的符号微积分计算,定理证明,谓词演算,博奕论等领域。它和后来由英国伦敦大学的青年学生柯瓦提出、由法国马赛大学的考尔麦劳厄所领导的研究小组于1973年首先实现的逻辑式语言PROLOG并称为人工智能的两大语言,对人工智能的发展起了十分深远的影响。LISP所蕴含的丰富的思想和深刻的意义也吸引了负责设计Algol语言的国际委员会,麦卡锡因此而被吸收为该委员会的成员。Algol中后来采纳了LISP关于递归和条件表达式这些思想。

下一篇:张衡
  设为首页 | 关于我们  |   版权信息  |  隐私保护  |  免责声明  |  合作伙伴  |  联系我们
 中华自然科学网(SCICN.NET), All Rights Reserved
  冀ICP备17034147号   客服及报障邮箱:sci@scicn.net