← 学习库 人工智能:一种现代的方法 本册目录

第1章 绪论

原书第 22 页

第1章 绪 论

本章我们试图解释为什么我们认为人工智能是一个最值得研究的学科,并试图准确地界定什么是人工智能。在开始学习之前回答这样的问题是一件好事。

我们自称 Homo sapiens——智慧的人——因为我们的智能(intelligence)对我们非常重要。数千年来,我们一直试图理解我们是如何思考的;即,仅仅少量的物质怎能感知、理解、预测和操纵一个远大于自身且比自身复杂得多的世界。人工智能(artificial intelligence)领域,简称 AI,走得更远:它不但试图理解智能实体,而且还试图建造智能实体。

人工智能是最新兴的科学与工程领域之一。正式的研究工作在第二次世界大战结束后迅速展开,1956年创造了“人工智能”这个名称本身。与分子生物学一起,AI经常被其他学科的科学家誉为“我最想参与的研究领域”。一方面物理专业的学生有理由认为所有好的研究思想已经被伽利略、牛顿、爱因斯坦以及其他物理学家想尽了。另一方面,AI对若干位专职的爱因斯坦们和爱迪生们仍有良机。

AI 目前包含大量各种各样的子领域,范围从通用领域,如学习和感知,到专门领域,如下棋、证明数学定理、写诗、在拥挤的街道上开车和诊断疾病。AI 与任何智力工作相关,它确实是一个普遍的研究领域。

1.1 什么是人工智能

我们已经声称人工智能是令人激动的,但是我们还没有说明它是什么。图1.1中我们看到沿着两个维度排列的AI的8种定义。顶部的定义关注思维过程与推理,而底部的定义却强调行为。左侧的定义根据与人类表现的逼真度来衡量成功与否,而右侧的定义依靠一

像人一样思考合理地思考
“使计算机思考的令人激动的新成就,……按完整的字面意思就是:有头脑的机器”(Haugeland, 1985)“与人类思维相关的活动,诸如决策、问题求解、学习等活动[的自动化]”(Bellman, 1978)“通过使用计算模型来研究智力”(Charniak 和 McDermott, 1985)“使感知、推理和行动成为可能的计算的研究”(Winston, 1992)
像人一样行动合理地行动
“创造能执行一些功能的机器的技艺,当由人来执行这些功能时需要智能”(Kurzweil, 1990)“研究如何使计算机能做那些目前人比计算机更擅长的事情”(Rich 和 Knight, 1991)“计算智能研究智能 Agent 的设计。”(Poole 等人, 1998)“AI……关心人工制品中的智能行为。”(Nilsson, 1998)
图 1.1 组织成四类的人工智能的若干定义
原书第 23 页

个称为合理性(rationality)的理想的表现量来衡量。一个系统若能基于已知条件“正确行事”则它是合理的。

历史上,对 AI 的所有 4 种途径都有人关注,不同的人用不同的方法来追寻不同的途径。以人为中心的途径在某种程度上必是一种经验科学,涉及到关于人类行为的观察与假设。理性论者 $ ^{1} $的途径涉及到数学与工程的结合。不同的研究小组既相互批评又相互帮助。让我们更详细地考察一下这四种途径。

1.1.1 像人一样行动:图灵测试的途径

由阿兰·图灵(Alan Turing)(1950)提出的图灵测试(Turing Test)的设计旨在为智能提供一个令人满意的可操作的定义。如果一位人类询问者在提出一些书面问题以后不能区分书面回答来自人还是来自计算机,那么这台计算机就通过测试。第26章将讨论图灵测试的细节以及一台通过测试的计算机是否真的具有智能。目前,我们要注意的是:为计算机编程使之通过严格采用的测试还有大量的工作要做。计算机尚需具有以下能力:

自然语言处理(natural language processing)使之能成功地用英文交流;

• 知识表示(knowledge representation)以存储它知道的或听到的信息:

自动推理(automated reasoning)以运用存储的信息来回答问题并推出新结论:

机器学习(machine learning)以适应新情况并检测和预测模式。

因为人的物理模拟对智能是不必要的,所以图灵测试有意避免询问者与计算机之间的直接物理交互。然而,所谓的完全图灵测试(total Turing Test)还包括视频信号以便讯问者既可测试对方的感知能力,又有机会“通过舱口”传递物理对象。要通过完全图灵测试,计算机还需具有:

计算机视觉(computer vision)以感知物体:

机器人学(robotics)以操纵和移动对象。

这 6 个领域构成了 AI 的大部分内容,并且图灵因设计了一个 60 年后仍合适的测试而值得称赞。然而 AI 研究者们并未致力于通过图灵测试,他们认为研究智能的基本原理比复制样本更重要。只有在莱特兄弟和其他人停止模仿鸟并开始使用风洞且开始了解空气动力学后,对 “人工飞行” 的追求才获得成功。航空工程的教材不会把其领域目标定义为制造 “能完全像鸽子一样飞行的机器,以致它们可以骗过其他真鸽子”。

1.1.2 像人一样思考:认知建模的途径

如果我们说某个程序能像人一样思考,那么我们必须具有某种办法来确定人是如何思考的。我们需要领会人脑的实际运用。有三种办法来完成这项任务:通过内省——试图捕获我们自身的思维过程;通过心理实验——观察工作中的一个人;以及通过脑成像——观察工作中的头脑。只有具备人脑的足够精确的理论,我们才能把这样的理论表示成计算机

原书第 24 页

程序。如果该程序的输入输出行为匹配相应的人类行为,这就是程序的某些机制可能也在人脑中运行的证据。例如,设计了GPS,即“通用问题求解器”(General Problem Solver)的艾伦·纽厄尔(Allen Newell)和赫伯特·西蒙(Herbert Simon)(Newell 和 Simon,1961)并不满足于仅让其程序正确地解决问题。他们更关心比较程序推理步骤的轨迹与求解相同问题的人类个体的思维轨迹。认知科学(cognitive science)这个交叉学科领域把来自AI的计算机模型与来自心理学的实验技术相结合,试图构建一种精确且可测试的人类思维理论。

认知科学本身就是一个迷人的领域,值得写几本教材和至少一部百科全书(Wilson 和 Keil,1999)。我们将偶尔评论 AI 技术与人类认知之间的异同。然而,真正的认知科学必然基于真实人或动物的实验调查与研究。我们把那方面的内容留给其他书籍,因为我们假定读者只有一台用于实验的计算机。

在 AI 的早期,不同途径之间经常出现混淆:某位作者可能主张一个算法很好地完成一项任务,所以它是人类表现的一个好模型,或者反之亦然。现代作者区分这两种主张;这种区分使得 AI 和认知科学都能更快地发展。这两个领域继续相互丰富,通过将神经生理学证据吸收到计算模型中,这种相互作用在计算机视觉中体现得最明显。

1.1.3 合理地思考:“思维法则”的途径

希腊哲学家亚里士多德是首先试图严格定义“正确思考”的人之一,他将其定义为不可反驳的推理过程。其三段论(syllogisms)为在给定正确前提时总产生正确结论的论证结构提供了模式——例如,“苏格拉底是人;所有人必有一死;所以,苏格拉底必有一死。”这些思维法则被认为应当支配着头脑的运行;他们的研究开创了称为逻辑学(logic)的领域。

19 世纪的逻辑学家为关于世上各种对象及对象之间关系的陈述制订了一种精确的表示法(将这种表示法与通常的算术表示法做对比,后者只为关于数的陈述提供表示法)。到了 1965 年,已有程序原则上可以求解用逻辑表示法描述的任何可解问题(虽然如果不存在解,那么程序可能无限循环)。人工智能中所谓的逻辑主义(logicist)流派希望依靠这样的程序来创建智能系统。

对这条途径存在两个主要的障碍。首先,获取非形式的知识并用逻辑表示法要求的形式术语来陈述之是不容易的,特别是在知识不是百分之百肯定时。其次,在“原则上”可解一个问题与实际上解决该问题之间存在巨大的差别。甚至求解只有几百条事实的问题就可耗尽任何计算机的计算资源,除非关于先试哪个推理步计算机具有某种指导。虽然这两个障碍对建造计算推理系统的任何尝试都适用,但是它们最先出现在逻辑主义流派中。

1.1.4 合理地行动:合理 Agent 的途径

Agent 就是能够行动的某种东西(英语的 agent 源于拉丁语的 agere,意为“去做”)。当然,所有计算机程序都做某些事情,但是期望计算机 Agent 做更多的事:自主的操作、感知环境、长期持续、适应变化并能创建与追求目标。合理 Agent(rational agent)是一个

原书第 25 页

为了实现最佳结果,或者,当存在不确定性时,为了实现最佳期望结果而行动的 Agent。

在对 AI 的 “思维法则” 的途径中,重点在正确的推理。做出正确的推理有时也是合理 Agent 的部分作用,因为合理行动的一种方法是逻辑地推理出给定行动将实现其目标的结论,然后遵照那个结论行动。另一方面,正确的推理并不是合理性的全部;在某些环境中,不要做可证正确的事情,但是仍然必须做某些事情。还有一些合理行动的方法不能被说成涉及推理。例如,从热火炉上退缩是一种反射行为,通常这种行为比仔细考虑后采取的较慢的行为更成功。

图灵测试需要的所有技能也允许一个 Agent 合理地行动。知识表示与推理使 Agent 能够达成好的决定。我们必须能够生成可理解的自然语言句子以便在一个复杂的社会中勉强过得去。我们必须学习,不只是为了博学,而是因为学习可提高我们生成有效行为的能力。

合理 Agent 的途径与其他途径相比有两个优点。首先,它比“思维法则”的途径更一般因为正确的推理只是实现合理性的几种可能的机制之一。其次,它比其他基于人类行为或人类思维的途径更经得起科学发展的检验。合理性的标准在数学上定义明确且完全通用,并可被“解开并取出”来生成可证实了合理性的 Agent 设计。另一方面,人类行为可以完全适应特定环境,并且可以很好地定义为人类做的所有事情的总和。所以本书将着重研究合理 Agent 的一般原则以及用于构造这样的 Agent 的部件。我们将看到尽管问题可被陈述得貌似简单,但是在试图求解问题时各种各样的难题就出现了。第2章将更详细地概述一些这样的难题。

要记住的一个重点是:不久以后我们将看到实现完美的合理性——即总做正确的事情——在复杂环境中不可行。其计算要求太高。然而,对本书的大部分内容,我们将采纳工作假设:完美的合理性对分析是一个好的出发点。这样既简化了问题又为该领域中的大多数基本素材提供了恰当的背景。第5章和第17章将明确论述有限合理性(limited rationality)的问题——即当没有足够的时间来完成所有你想要做的计算时仍能恰当地行动。

1.2 人工智能的基础

本节,我们将提供为 AI 贡献了思想、观点和技术的某些学科的一个简史。像任何历史一样,这段历史也集中于少数人物、事件和思想,而忽略了其他一些也很重要的东西。我们围绕一系列问题来组织这段历史。我们当然不希望造成以下印象:即这些问题是这些学科处理的所有问题或者这些学科一直都朝着作为其终极成果的 AI 前进。

1.2.1 哲学

形式规则可用于推出有效的结论吗?

思想如何从物理的大脑中产生?

知识来自何方?

知识如何导致行动?

原书第 26 页

亚里士多德(Aristotle,公元前384—公元前322)是第一位系统阐述支配头脑理性部分的一组精确规则的人。他为严密推理制订了一种非形式的三段论系统,给定初始前提后该系统原则上允许你机械地推导出结论。很久以后,Ramon Lull(卒于1315)认为有用的推理确实可以用机械人造物来实现。Thomas Hobbes(1588—1679)提出推理就像数值计算,“我们在无声的思维中加加减减”。计算本身的自动化已经在顺利进行中。在1500年左右,里昂纳多·达·芬奇(Leonardo da Vinci,1452—1519)设计了一台机械计算器,但没有建造出来;最近的重建表明该设计是起作用的。虽然由布雷西·帕斯卡(Blaise Pascal,1623—1662)在1642年建造的Pascaline更著名,但是第一台已知的计算机器是由德国科学家Wilhelm Schickard(1592—1635)在1623年左右建造的。帕斯卡写道:“算术机器产生了明显比所有动物行为更接近思维的效果。”高特弗雷德·威尔海姆·莱布尼兹(Gottfried Wilhelm Leibniz,1646—1716)建造了一个试图对概念而不是数字执行操作的机械装置,但是其范围非常有限。莱布尼兹确实超过了帕斯卡,因为前者建造的计算器能加、减、乘与求根,而Pascaline只能加与减。有人推测机器不仅能做计算而且还能思考并独立行动。在其1651年的著作《大海兽》中,Thomas Hobbes提出了“人工动物”的思想,并主张“心脏只为一跳;神经只为那么多连结;关节只为那么多转动”。

认为头脑至少部分地根据逻辑规则来运转并建造能模仿那些规则的一些物理系统是一件事情;而认为头脑本身就是这样的物理系统是另一件事情。雷内·笛卡尔(René Descartes,1596—1650)关于头脑与物质之间的区别以及由此引起的问题给出了第一个清晰的讨论。伴随着头脑的纯物理概念的一个问题是似乎为自由意志几乎没有留下空间:如果头脑完全由物理定律来支配,那么它比一块岩石“决定”朝地心落下没有更多的自由意志。笛卡尔强烈提倡在理解世界时推理的力量,这是一种现在称为理性主义(rationalism)的哲学,亚里士多德和莱布尼兹算作其成员。但是笛卡尔也是二元论(dualism)的支持者。他认为人类头脑存在一部分(称为灵魂或精神的)在自然之外的不受物理定律支配的东西。另一方面,动物没有这种二元性;它们可被当作机器来对待。对二元论的替换物是唯物主义(materialism),它认为脑髓根据物理定律的运转形成了头脑。自由意志只是对选择实体可用选择的感知出现的方式。

给定一个能处理知识的物理头脑,下一个问题是建立知识的来源。经验主义(empiricism)运动始于弗朗西斯·培根(Francis Bacon,1561—1626)的《新工具论》(Novum Organum) $ ^{1} $,被 John Locke(1632—1704)的格言:“无物非先感受而后理解”所刻画。大卫·休谟(David Hume,1711—1776)的《论人类天性》(A Treatise of Human Nature)(休谟,1739)提出了现在被称为归纳(induction)原理的东西:一般规则通过揭示规则中元素之间的重复关联来获得。以 Ludwig Wittgenstein(1889—1951)和伯特兰·罗素(Bertrand Russell,1872—1970)的工作为基础,由 Rudolf Carnap(1891—1970)领导的著名的维也纳学派发展了逻辑实证主义(logical positivism)学说。该学说认为所有知识都可用最终与对应于感知输入的观察语句(observation sentences)相联系的逻辑理论来刻画;因此逻辑

原书第 27 页

实证主义结合了理性主义和经验主义 $ ^{1} $。Carnap 和 Carl Hempel(1905—1997)的证实理论(confirmation theory)试图分析来自经验的知识获取。Carnap 的著作《世界的逻辑结构》(The Logical Structure of the World)(1928)为从基本的经验中提取知识定义了一个明确的计算过程。它也许是首个把头脑看成一个计算过程的理论。

头脑的哲学描述中的最后元素是知识与行动之间的联系。这个问题对人工智能是极其重要的,因为智能既要求推理又要求行动。进而,只有懂得如何证明行动是正当的我们才能懂得如何构造一个其行动是无可非议的(或合理的)Agent。在《论动物行为》(De Motu Animalium)中,亚里士多德主张通过目标与行动结果的知识之间的逻辑关系来证明行动是正当的:

但是,思维有时伴随着行动有时却没有,有时伴随着运动有时却没有,这是如何发生的呢?看起来好像与对不变的对象进行推理并推断结果的情形一样几乎相同的事情总会发生。但是在那种情况下结果是推测的命题……然而这里根据两个前提导出的结论是一个行动。……我需要遮盖物;斗篷是遮盖物。故我需要斗篷。我必须制作我所需要的东西;我需要斗篷。故我必须制作斗篷。结论“我必须制作斗篷”是一个行动。

在《尼各马科伦理学》(Nicomachean Ethics)(第三卷. 3,1112b)中,亚里士多德进一步详细阐述了这个论题,并提出了一个算法:

我们要深思的不是结果,而是手段。因为医生不会深思病人是否会治愈,演说家也不会深思他是否会说服听众,……他们假设了结果并考虑如何以及通过什么手段来获得该结果,他们还要考虑手段是否容易实现,从而产生最好的手段;当只有一种手段来达到结果时,他们会考虑如何根据这种手段来达到结果,以及通过什么手段来实现这种手段,直到他们得到第一原因,……在分析序列中最后出现的手段在实现序列中似乎是第一个手段。如果我们碰到了不可能实现的事情,例如,如果我们需要金钱而又得不到,那么我们就放弃搜索;但是如果一件事情看似可能,我们就尝试着去做。

2300年后亚里士多德的算法被纽厄尔和西蒙实现在他们的GPS程序中。我们现在称其为回归规划系统(参见第10章)。

基于目标的分析是有用的,但是没有说明当多个行动均可达到目标时或者当没有行动可完全达到目标时该做什么。Antoine Arnauld(1612—1694)正确地描述了用于决定在这种情况下该采取什么行动的一个定量公式(参见第16章)。John Stuart Mill(1806—1873)的著作《功利主义》(Utilitarianism)(Mill,1863)在人类活动的所有领域推广了理性决策准则的思想。更多的形式化决策理论将在后面的章节中讨论。

原书第 28 页
1.2.2 数学

什么是能导出有效结论的形式化规则?

什么可以被计算?

我们如何用不确定的信息来推理?

哲学家们标出了人工智能的一些基本思想,但是到正式科学的跳跃要求在三个基础领域(逻辑、计算和概率)具有一定水准的数学形式体系。

形式逻辑的思想可以追溯到古希腊的哲学家,但是其数学发展实际上始于乔治·布尔(George Boole,1815—1864)的工作,他详细设计出命题逻辑,又称布尔逻辑(Boole,1847)。1879年,高特洛布·弗雷格(Gottlob Frege,1848—1925)扩展了布尔逻辑,使其包含对象与关系,创建了现在使用的一阶逻辑 $ ^{1} $。阿尔弗雷德·塔斯基(Alfred Tarski,1902—1983)引入了一种关联理论,它指出如何把逻辑对象与现实世界的对象联系起来。

下一步是确定逻辑和计算能做的事情的极限。一般认为第一个不平凡的算法(algorithm)是计算最大公约数的欧几里得(Euclid)算法。algorithm 这个单词(以及研究算法的思想)源于 9 世纪的波斯数学家 al-Khowarazmi,其著作还把阿拉伯数字和代数引入欧洲。布尔和其他人探讨了用于逻辑演绎的算法,而到了 19 世纪晚期,把一般的数学推理形式化为逻辑演绎的努力已在进行中。1930 年,库特•哥德尔(Kurt Gödel,1906—1978)证明了存在一个有效的过程来证明弗雷格和罗素的一阶逻辑中的任何真语句,但是那个一阶逻辑不能处理刻画自然数所需要的数学归纳法的原则。1931 年,哥德尔证明了确实存在演绎的局限。他的不完备性定理(incompleteness theorem)证明了在与佩亚诺(Peano)算术(自然数的基本理论)一样强的任何形式理论中都存在不可判定的真语句,即在该理论中这些真语句没有证明。

这个基本的结果也可解释为证明了整数上的某些函数无法用算法表示——即,它们是不可计算的。这促使阿兰·图灵(Alan Turing,1912—1954)尝试着去精确刻画哪些函数是可计算的(computable)——能够被计算。实际上这个想法稍微有点问题,因为实际上不能给出计算或有效过程概念的形式化定义。然而,丘奇-图灵(Church-Turing)论题说明图灵机(Turing,1936)有能力计算任何可计算的函数,该论题被广泛认同为提供了一个充分的定义。图灵还证明了存在一些没有图灵机可以计算的函数。例如,没有图灵机可以一般地判断一个给定的程序对于给定的输入能否返回答案或者永远运行下去。

虽然可判定性和可计算性对于理解计算是重要的,但是易处理性(tractability)的概念具有更大的影响。粗略地说,如果解决一个问题的实例所需时间随实例的规模成指数级地增长,那么该问题称为不易处理的。复杂性的多项式级与指数级增长的区别最早在20世纪60年代中期得到重视(Cobham,1964;Edmonds,1965)。这是重要的因为指数级增长意味着即使适度大的实例都不能在合理的时间内得到解决。所以,应该努力把产生智能行为的整体问题分成易处理的子问题,而不是不易处理的子问题。

可如何确认不易处理的问题呢?由斯蒂文·库克(Steven Cook,1971)和理查德·卡

原书第 29 页

普(Richard Karp,1972)开创的 NP-完全(NP-completeness)理论提供了一种方法。库克和卡普证明了存在大量经典组合搜索与推理问题是 NP-完全的。NP-完全问题类可归约到的任何问题类可能就是不易处理的(虽然尚未证明 NP-完全问题必是不易处理的,但是大多数理论家相信这个结论)。这些结果与大众新闻迎接第一台计算机——“比爱因斯坦更快!”的“电子超级脑袋”——时的乐观形成对比。尽管计算机的速度在增加,资源的小心使用将成为智能系统的特征。粗糙地说,世界是一个非常大的问题实例!人工智能中的工作有助于解释为什么 NP-完全问题的某些实例是艰难的,而另一些是容易的(Cheeseman 等,1991)。

除逻辑和计算之外,数学对人工智能的第三大贡献是概率(probability)理论。意大利人Gerolamo Cardano(1501—1576)首先制定了概率的思想,按照赌博事件的可能结果来描述它。1654年,布雷西·帕斯卡(Blaise Pascal,1623—1662),在一封致彼埃尔·费尔马(Pierre Fermat,1601—1665)的信件中指出如何预测一场未完成的赌博游戏的未来并对赌徒指定平均的收益。概率很快成为所有定量科学的无价之宝,以帮助对付不确定的测量和不完备的理论。詹姆斯·贝努利(James Bernoulli,1654—1705)、彼埃尔·拉普拉斯(Pierre Laplace,1749—1827)和其他人推进了该理论并引入了新的统计方法。托马斯·贝叶斯(Thomas Bayes,1702—1761)提出了根据新证据更新概率的规则。贝叶斯的规则构成了人工智能系统中大多数用于不确定推理的现代方法的基础。

1.2.3 经济学

我们应该如何决策以便收益最大?

当其他人不合作时我们应该如何做到这样?

当收益遥遥无期时我们应该如何做到这样?

经济学作为科学始于1776年,那时苏格兰哲学家亚当·史密斯(Adam Smith,1723—1790)出版了《国民财富的性质和原因的研究》(An Inquiry into the Nature and Causes of the Wealth of Nations)。虽然古希腊人和其他人也对经济学思想做出了贡献,但是史密斯是第一个把它当作科学来对待的人,他认为经济组织由试图最大化他们自己的经济福利的若干个体 Agent 组成。虽然多数人以为经济是关于金钱的学问,但是经济学家会说他们实际上在研究人们如何做出能导致更喜欢的结果的选择。当麦当劳为一美元提供一个汉堡包时,它们在断言:它们更喜欢美元并希望顾客更喜欢汉堡包。对“更喜欢的结果”或效用(utility)的数学处理首先被 Léon Walras(发音为“Valrasse”)(1834—1910)形式化,并被弗兰克·拉姆齐(Frank Ramsey,1931)改进,再后来被约翰·冯·诺依曼(John von Neumann)和奥斯卡·摩根施特恩(Oskar Morgenstern)在他们的著作《博弈论与经济行为》(The Theory of Games and Economic Behavior)(1944)中进一步改进。

决策理论(Decision theory)把概率理论和效用理论结合起来,为在不确定情况下——即,在概率描述能适当捕获决策制定者的环境的情况下,做出(经济的或其他的)决策提供了一个形式化且完整的框架。这对“宏观”经济是合适的,其中每个 Agent 不必注意其他作为个体的 Agent 的行动。而对“微观”经济,情况更像博弈游戏:一位玩家的行动可能显著地(正面或负面)影响另一位玩家的效用。冯·诺依曼和 Morgenstern 对博弈论

原书第 30 页

(game theory)(参见 Luce 和 Raiffa,1957)的发展包括以下惊人的结果,即对某些博弈游戏,一个理性的 Agent 应该采用(至少看来好像是)随机化的政策。不像决策理论,博弈论并不为选择行动提供清晰的规定。

在很大程度上,经济学家不会处理上面列出的第三个问题,即,当行动的收益不是即刻的反而是由几个依次采取的行动来产生时如何做出理性的决策。该主题在运筹学(operations research)领域被研究,运筹学出现于第二次世界大战期间,源自英国为优化雷达设置所取得的成就,后来在复杂管理决策中又找到了非军事应用。理查德·贝尔曼(Richard Bellman,1957)的工作形式化了一类称为马尔可夫决策过程(Markov decision processes)的连续决策问题,在第17章和第21章我们将学习有关内容。

经济学和运筹学中的工作为我们的理性 Agent 概念贡献很多,然而多年来人工智能研究一直沿着完全分离的路线向前发展。一个原因是做出理性决策的显著复杂性。先驱的人工智能研究者赫伯特·西蒙(Herbert Simon,1916—2001)因其早期的工作在 1978 年获得经济学诺贝尔奖,其工作指出基于满意度(satisficing)的模型——做出“足够好”的决策,而不是费力地计算最优决策——给出了真实人类行为的一个更好的描述(Simon,1947)。自从 20 世纪 90 年代以来,一直存在对决策理论技术用于 Agent 系统的兴趣的复兴(Wellman,1995)。

1.2.4 神经科学

大脑如何处理信息?

神经科学(Neuroscience)研究的是神经系统,特别是大脑。虽然大脑使思考成为可能的精确方式仍是一个重大的科学之谜,但是它确实使思考成为可能的事实已被了解达数千年。因为有证据表明重击头部会导致精神缺陷。人类大脑以某种方式有所不同也已被知道很久了;大约公元前335年,亚里士多德写道:“在所有动物中,相对其身材来说人类具有最大的大脑。” $ ^{1} $然而,直到18世纪中叶大脑仍未被广泛地确认为意识的场所。在此之前,候选的位置包括心脏和脾脏。

1861 年,保罗·布鲁卡(Paul Broca,1824—1880)对大脑损伤病人中失语症(言语缺陷)的研究说明存在负责特定认知功能的局部化大脑区域。特别地,他指出言语生成被局部化到现在称为布鲁卡区 $ ^{2} $的大脑左半球的一部分。到那时,已经知道大脑由神经细胞或神经元(neurons)组成,然而直到 1873 年 Camillo Golgi(1843—1926)开发出一种染色技术使人们能够观察大脑中的单个神经元(参见图 1.2),人们才知道这个事实。该技术被 Santiago Ramon y Cajal(1852—1934)用在其对大脑神经元结构的开创性研究中。 $ ^{3} $Nicolas Rashevsky(1936,1938)率先用数学模型来研究神经系统。

我们现在有一些数据涉及大脑区域与身体器官之间的映射,这些大脑区域控制对应的器官或者从对应的器官接收感觉的输入。数周内这样的映射能被彻底改变,并且某些动物

原书第 31 页
Image

图1.2 神经细胞或神经元的组成部分。每个神经元由包含一个细胞核的一个细胞体组成。从细胞体分支扩展出许多称为树突的神经纤维和一根长的称为轴突的神经纤维。轴突伸出很长距离,远长于本图示意的规模。典型的轴突有1厘米长(是细胞体直径的100倍),但是更长的能够扩展到1米。一个神经元与10个到10万个其他神经元相连,其连接处称为突触。信号通过复杂的电化学反应从神经元传播到神经元。信号既能控制大脑的短期活动,又能使神经元的连接发生长期改变。这些机制被认为形成了大脑中学习的基础。大多数信息处理在大脑皮质即大脑的外层进行。基本的组织单元看来好像是一个直径约为0.5毫米的柱状组织,它包含大约2万个神经元并伸展到大脑皮质的全部深度,人类大脑皮质的深度约为4毫米

似乎具有多重映射。此外,我们尚未完全了解当一个区域受损时其他区域会如何接管其功能。几乎没有理论涉及如何存储单独的记忆。

1929 年,随着 Hans Berger 发明了脑波计(EEG),便开始测量无损伤的大脑活动。近来开发的功能性磁共振成像(fMRI)(Ogawa 等,1990;Cabeza 和 Nyberg,2001)正为神经科学家们提供大脑活动的空前细致的图像,这使按有趣的方式与正在进行的认知过程相对应的测量成为可能。这些测量由于在神经元活动的单细胞纪录方面的进步而得到加强。单独的神经元可用电学的、化学的、甚至光学的方式来刺激(Han 和 Boyden,2007),从而允许映射神经元的输入输出关系。尽管这些进步,我们仍然远离理解认知过程实际上是如何工作的。

真正惊奇的结论是简单细胞的聚集能够产生思想、行动和意识,或者按 John Searle(1992)简练的言语就是大脑产生精神。唯一实际存在的可供选择的理论是神秘主义:精神运转在某个神秘的领域,该领域超出了自然科学的范围。

人脑与数字计算机多少有些不同的性能。图1.3指出计算机具有比人脑快100万倍的周波时间。人脑用甚至比高端个人计算机更多的存储与相互连接弥补了这方面的不足。然而,最大的超级计算机具有类似于人脑的容量(可是,应该注意人脑似乎并不同时使用其所有神经元)。未来主义者充分利用这些数字,指出正接近一个奇异点(singularity),在该点计算机达到一个超人的性能级(Vinge,1993;Kurzweil,2005),但是原始比较并非特别有益的。即使使用一台具有几乎无限容量的计算机,我们仍然不知道如何实现人脑级的智能。

原书第 32 页
超级计算机个人计算机人脑
计算单元数$ 10^{4} $个CPU, $ 10^{12} $个晶体管4个CPU, $ 10^{9} $个晶体管$ 10^{11} $个神经元
存储单元数$ 10^{14} $比特RAM$ 10^{11} $比特RAM$ 10^{11} $个神经元
$ 10^{15} $比特磁盘$ 10^{13} $比特磁盘$ 10^{14} $个突触
周波时间$ 10^{-9} $秒$ 10^{-9} $秒$ 10^{-3} $秒
操作数/秒$ 10^{15} $$ 10^{10} $$ 10^{17} $
存储更新次数/秒$ 10^{14} $$ 10^{10} $$ 10^{14} $

图 1.3 对 IBM 蓝色基因超级计算机、2008 年典型的个人计算机和人脑的可用原始计算资源的一个粗略比较。人脑的数字基本固定,而超级计算机的数字一直在以大约每 5 年乘 10 倍的速度增加,使之达到与人脑近似相等的程度。个人计算机在除周波时间以外的所有数字上都要落后

1.2.5 心理学

人类和动物如何思考与行动?

科学的心理学的起源通常追溯到德国物理学家 Hermann von Helmholtz(1821—1894)和他的学生 Wilhelm Wundt(1832—1920)的工作。Helmholtz 应用科学方法来研究人类的视觉,他的《生理光学手册》(Handbook of Physiological Optics)甚至现在都被描述为“关于人类视觉的物理和生理的唯一最重要的论著”(Nalwa,1993,第15页)。1879年,Wundt 在莱比锡大学开放了第一个实验心理学实验室。Wundt 主张仔细控制的实验,其中他的研究者们在内省他们的思维过程时要执行知觉的或联想的任务。虽然仔细的控制使心理学朝成为一门科学走了一大段路,但是数据的主观性使实验者经常驳斥他或她自己的理论显得不大可能。另一方面,正如 H. S. Jennings(1906)在其有影响的著作《低等有机体的行为》(Behavior of the Lower Organisms)中所描述的,研究动物行为的生物学家们缺乏内省数据并培养出一种客观的方法学。对人类应用这种观点,John Watson(1878—1958)领导的行为主义(behaviorism)运动,以内省不能提供可靠证据为理由拒绝任何涉及精神过程的理论。行为主义者坚持只研究给予动物的感知(或刺激)及其导致的行动(或反应)的客观度量。行为主义发现了很多关于老鼠和鸽子的事实,但成功理解人类的情况较少。

认知心理学(Cognitive psychology)把大脑看作一个信息处理装置,至少可以追溯到威廉·詹姆斯(William James,1842—1910)的工作。Helmholtz也坚持感知涉及一种无意识逻辑推理形式。虽然在美国认知观点基本上被行为主义遮掩了,但在由Frederic Bartlett(1886—1969)领导的剑桥应用心理学小组,认知建模还能兴旺。由Bartlett的学生和后继者Kenneth Craik(1943)发表的《解释的本质》(The Nature of Explanation),有力地恢复了像信念和目标那样的“心理”术语的合法性,认为它们正如使用压力和温度来谈论气体一样科学,尽管气体由没有压力和温度的分子组成。Craik明确说明了基于知识的Agent的三个关键步骤:(1)刺激必须翻译成内部表示,(2)认知过程处理该表示以获得新的内部表示,并且(3)这些表示反过来重新翻译回行动。他清晰地解释了为什么这是Agent的一个好的设计:

如果生物体包含外部现实及其头脑中它自身可能行动的一个“小规模模型”,那么它就能试验各种可采用的方法,推断出哪个是其中最好的方法,在未来状况

原书第 33 页

出现前作出反应,在对付现在和未来时利用过去事件的知识,并在各方面对它面临的紧急情况按更完整的、更安全的、更充分的方式作出反应(Craik,1943)。

1945 年 Craik 死于自行车事故后,他的工作由 Donald Broadbent 继续推进。后者的著作《知觉与传播》(Perception and Communication)(1958)是把心理现象建模成信息处理的最早著作之一。同时,在美国,计算机建模的发展导致认知科学(cognitive science)领域的创建。该领域可以说始于 1956 年 9 月麻省理工学院(MIT)的一个研讨会(我们将看到这正好是 AI 本身“诞生”的那次会议之后的两个月)。在这次研讨会上,乔治·米勒(George Miller)介绍了“魔术数字 7”(The Magic Number Seven),诺姆·乔姆斯基(Noam Chomsky)介绍了“语言的三种模型”(Three Models of Language),而阿兰·纽厄尔(Allen Newell)和赫伯特·西蒙(Herbert Simon)介绍了“逻辑理论机”(The Logic Theory Machine)。这三篇有影响的论文指出计算机模型可以如何分别用于处理记忆、语言和逻辑思维的心理学。

目前心理学家中常见的(虽然远离普遍的)观点是“认知理论应该像计算机程序”(Anderson,1980);即,认知理论应该描述详细的信息处理机制,靠这个机制可以实现某种认知功能。

1.2.6 计算机工程

我们如何才能建造高效的计算机?

为了人工智能获得成功,我们需要两件东西:智能和人工制品。计算机已是精选的人工制品。现代数字电子计算机被第二次世界大战中参战的三个国家的科学家独立地和几乎同时地发明出来。第一台可运转的计算机是电动机械的Heath Robinson $ ^{1} $,它由阿兰·图灵的研究组建造于1940年,其唯一用途是解密德国人的消息。1943年,同一个研究组开发了Colossus,基于真空电子管的强大的通用机器 $ ^{2} $。第一台可运转的可编程计算机是Z-3,它由Konrad Zuse于1941年在德国发明。Zuse还发明了浮点数和第一种高级编程语言Plankalkül。第一台电子计算机,ABC,在1940年到1942年之间由John Atanasoff和他的学生Clifford Berry在爱荷华州立大学装配成功。Atanasoff的研究获得较少的支持或认可;正是在宾夕法尼亚大学作为一个秘密军事项目的一部分由一个包括John Mauchly和John Eckert的研究组开发的ENIAC被证实是现代计算机最有影响的先驱。

从那时起,每代计算机硬件都带来速度和容量的增加以及价格的减少。直到2005年左右,计算机的性能大约每18个月翻一番,那时候能量消散问题致使制造商们开始增加CPU核的数目而不是时钟速度。当前的预期是未来的能力增加将来自大规模并行——与人脑的性质不可思议的一致。

当然,在电子计算机之前还有一些计算装置。最早的自动机器追溯到17世纪,在1.2.1节讨论过。第一台可编程的机器是1805年Joseph Marie Jacquard(1752—1834)设计的一

原书第 34 页

台织布机,它使用穿孔卡片来存储适合于要编织图案的指令。在19世纪中叶,查尔斯·巴贝奇(Charles Babbage,1792-1871)设计了两台机器,但都没有做完。想用差分机来为工程与科学项目计算数学用表。该机器最终于1991年建成,并在伦敦科学博物馆显示出能工作(Swade,2000)。Babbage的分析机更加雄心勃勃:它包含可寻址的存储器,存储的程序以及条件跳转,并是第一台能够完成通用计算的人工制品。Babbage的同事Ada Lovelace,诗人拜伦(Byron)爵士的女儿,可能是世界上第一位程序员(编程语言Ada就是以她的名字命名的)。她为未做完的分析机编写了程序,甚至推测机器可以下国际象棋或创作乐曲。

人工智能还欠了计算机科学的软件方面一笔债,后者提供了操作系统、编程语言和为编写现代程序(以及关于程序的文档)所需的工具。但是这也是债务已归还的一个领域:人工智能中的工作开创的许多思想已想方设法反向进入主流计算机科学,包括分时、交互式解释器、使用窗口和鼠标的个人计算机、快速开发环境、链表数据类型、自动存储管理以及符号化、函数式、说明性和面向对象编程的关键概念。

1.2.7 控制论

人工制品可以如何在其自身的控制下运转?

亚历山大的凯西比奥(Ktesibios of Alexandria,大约公元前250年)建造了第一台自我控制的机器:具有一个维持恒定流速的调节器的水钟。这项发明改变了人工制品能做什么的定义。以前,只有活的东西能够作为对环境中变化的反应来修改其行为。自我调节反馈控制系统的其他实例包括詹姆斯·瓦特(James Watt,1736—1819)创造的蒸汽机调压器和Cornelis Drebbel(1572—1633)发明的恒温器,后者还发明了潜水艇。稳定反馈系统的数学理论在19世纪得到了发展。

创造现在称为控制论(control theory)的中心人物是诺伯特·维纳(Norbert Wiener,1894—1964)。维纳是一位卓越的数学家,在他对生物和机械控制系统及其与认知的关系产生兴趣之前,曾与伯特兰·罗素(Bertrand Russell)等人一起工作过。

像 Craik(他还用控制系统作为心理学模型)一样,维纳和他的同事 Arturo Rosenblueth 以及 Julian Bigelow 挑战了行为主义者的正统学说(Rosenblueth 等,1943)。他们认为有目的的行为是由试图最小化“误差”——当前状态与目标状态之间的差距——的调节机制引起的。20 世纪 40 年代晚期,维纳和 Warren McCulloch、Walter Pitts 以及约翰·冯·诺依曼(John von Neumann)一起,组织了一系列有影响的会议,探索了新的关于认知的数学与计算模型。维纳的著作《控制论》(Cybernetics)(1948)变成了一本畅销书,并使公众认识到人工制造智能机器的可能性。同时,在英国,W. Ross Ashby(Ashby,1940)开创了类似的思想。Ashby、Alan Turing、Grey Walter 和其他人一起为“那些在维纳的书发表以前就具有维纳的思想的人”形成了比俱乐部(Ratio Club)。Ashby 的《大脑设计》(Design for a Brain)(1948,1952)详述了他的思想:智能可通过使用包含恰当反馈回路以实现稳定适应行为的自动平衡(homeostatic)装置来创建。

现代控制论,特别是被称为随机优化控制的分支,其目标是设计能随时最大化目标函数(objective function)的系统。这与我们关于人工智能的观点大致一致:设计能最佳表现的系统。它们的始祖之间具有密切联系,但为什么人工智能与控制论是两个不同的领域呢?

原书第 35 页

答案存在于参与者熟悉的数学技术与包含在每个专业范围中的对应问题集之间的紧密耦合中。微积分与矩阵代数是控制论的工具,它们鼓励可由固定的连续变量集来描述的系统,然而创立人工智能的部分原因是当作逃避这些意识到了的局限的一种方法。逻辑推理与计算的工具允许人工智能研究者们考虑一些诸如语言、视觉和规划那样的问题,这些问题完全落在控制理论家的范围之外。

1.2.8 语言学

语言与思维如何关联?

1957 年,B. F. Skinner 出版了《言语行为》(Verbal Behavior)。由领域内最早的专家撰写的这本书为语言学习的行为主义方法给出了一个综合的、详细的解释。然而奇妙的是该书的一篇评论变得与该书本身一样著名,并且用于几乎消除了对行为主义的兴趣。这篇评论的作者就是语言学家诺姆·乔姆斯基(Noam Chomsky),那时他正好出版了一本关于他自己的理论的书,《句法结构》(Syntactic Structures)。乔姆斯基指出行为主义的理论没有处理语言中的创造性的概念——它没有解释儿童怎么能理解和构造他或她以前从未听过的句子。乔姆斯基的理论——基于可追溯到印度语言学家帕尼尼(Panini,大约公元前 350 年)的句法模型——能够解释这个现象,并且不像以前的理论,其理论足够形式化以致原则上可被编程实现。

现代语言学与人工智能在大约相同的时间“诞生”,并且一起长大,交叉于一个称为计算语言学(computational linguistics)或自然语言处理(natural language processing)的混合领域。很快证实了理解语言的问题要比1957年感觉的复杂得多。理解语言需要了解主题和语境,而不仅仅是了解句子的结构。这似乎是显然的,但是直到20世纪60年代它并未被广泛接受。知识表示(knowledge representation)(如何把知识翻译成计算机可用来推理的形式的研究)中的大量早期工作与语言联系在一起并从语言学的研究中获得信息,反过来语言学的研究又与数十年关于语言的哲学分析的工作联系在一起。

1.3 人工智能的历史

以现有的背景材料为基础,我们已准备好涉及人工智能本身的发展。

1.3.1 人工智能的孕育期(1943—1955年)

现在一般认定人工智能的最早工作是 Warren McCulloch 和 Walter Pitts(1943)完成的。他们利用了三种资源:基础生理学知识和脑神经元的功能;归功于罗素和怀特海德的对命题逻辑的形式分析;以及图灵的计算理论。他们提出了一种人工神经元模型,其中每个神经元被描述为是“开”或“关”状态,作为一个神经元对足够数量邻近神经元刺激的反应,其状态将出现到“开”的转变。神经元的状态被设想为“事实上等价于提出其足够刺激的一个命题”。例如,他们证明,任何可计算的函数都可以通过相连神经元的某个网络来计算,并且所有逻辑连接词(与、或、非等)都可用简单的网络结构来实现。McCulloch 和 Pitts

原书第 36 页

还建议适当定义的网络能够学习。唐纳德·赫布(Donald Hebb)(1949)展示了一条简单的用于修改神经元之间的连接强度的更新规则。他的规则现在称为赫布型学习(Hebbian learning),至今仍然是一种有影响的模型。

两名哈佛大学的本科生,马文·明斯基(Marvin Minsky)和 Dean Edmonds,在1950年建造了第一台神经网络计算机。称为SNARC的这台计算机,使用了3000个真空管和B-24轰炸机上一个多余的自动指示装置来模拟由40个神经元构成的一个网络。后来在普林斯顿大学,明斯基研究了神经网络中的一般计算。他的哲学博士委员会怀疑这种工作是否应该看作数学,不过据传冯·诺依曼说“如果它现在不是,那么总有一天会是”。明斯基晚年证明了若干有影响的定理,指出了神经网络研究的局限性。

虽然还有若干早期工作的实例可以被视为人工智能,但是阿兰·图灵的先见之明也许是最有影响的。早在1947年,他就在伦敦数学协会发表了该主题的演讲,并在其1950年的文章“计算机器与智能(Computing Machinery and Intelligence)”中清晰地表达了有说服力的应办之事。其中他提出了图灵测试、机器学习、遗传算法和强化学习。他提出了儿童程序(Child Programme)的思想,并解释为“代替试图制作程序来模拟成年人的头脑,为什么不愿尝试制作模拟儿童头脑的程序呢?”

1.3.2 人工智能的诞生(1956年)

普林斯顿大学曾是人工智能的另一位有影响的人物约翰·麦卡锡(John McCarthy)的阵地。1951年在那里获得哲学博士学位以后又作为教师工作了两年,接着麦卡锡搬到斯坦福大学,然后又到了达特茅斯大学,这里后来成为了公认的人工智能领域的诞生地。麦卡锡说服了明斯基、克劳德·香农(Claude Shannon)和内森尼尔·罗切斯特(Nathaniel Rochester)帮助他把美国对自动机理论、神经网络和智能研究感兴趣的研究者们召集在一起。1956年夏天他们在达特茅斯组织了一个为期两个月的研讨会。会议的提案申明:

我们提议 1956 年夏天在新罕布什尔州汉诺威市的达特茅斯大学开展一次由10个人为期两个月的人工智能研究。学习的每个方面或智能的任何其他特征原则上可被这样精确地描述以至于能够建造一台机器来模拟它。该研究将基于这个推断来进行,并尝试着发现如何使机器使用语言,形成抽象与概念,求解多种现在注定由人来求解的问题,进而改进机器。我们认为:如果仔细选择一组科学家对这些问题一起工作一个夏天,那么对其中的一个或多个问题就能够取得意义重大的进展。

总共有10位与会者,包括来自普林斯顿大学的Trenchard More、来自IBM公司的阿瑟·萨缪尔(Arthur Samuel),以及来自MIT的Ray Solomonoff和Oliver Selfridge。

两位来自卡耐基技术学院 $ ^{2} $的研究者,艾伦·纽厄尔和赫伯特·西蒙,相当引人注目。

原书第 37 页

虽然其他人也有想法且在某些情况下还有诸如西洋跳棋那样的特定应用的程序,但是纽厄尔和西蒙却已有一个推理程序:逻辑理论家(Logic Theorist,LT)。对此西蒙声称:“我们发明了一个能非数值地思考的计算机程序,因此解决了古老的心-身问题。” $ ^{1} $在这次研讨会之后不久,他们的程序就能证明罗素和怀特海德的《数学原理》(Principia Mathematica)的第2章中的大部分定理。据说当西蒙演示程序能为定理提供比数学原理中更短的证明时,罗素非常高兴。《符号逻辑杂志》(Journal of Symbolic Logic)的编辑们却并未留下深刻的印象;他们拒绝了由纽厄尔、西蒙和逻辑理论家合著的一篇论文。

达特茅斯研讨会并未导致任何新突破,但它确实互相介绍了所有主要的人物。对随后的20年,人工智能领域就被这些人以及他们在MIT、CMU、斯坦福和IBM的学生和同事们支配了。

考察一下达特茅斯研讨会的提案(McCarthy等,1955),我们可以看出为什么人工智能变成一个独立的领域是必要的。为什么人工智能中完成的所有工作不能以控制论或运筹学或决策理论的名义进行,毕竟他们与人工智能具有类似的目标?或者为什么人工智能不是数学的一个分支?第一个答案是人工智能从诞生以来就采纳了复制人的才能,如创造性、自我改进和语言应用的思想。其他领域中没有一个会处理这些问题。第二个答案是方法学不同。人工智能是这些领域中唯一的显然属于计算机科学的一个分支(虽然运筹学确实共享了对计算机模拟的重视),并且人工智能是唯一试图建造能在复杂的、变化的环境中自主运行的机器的领域。

1.3.3 早期的热情,巨大的期望(1952—1969年)

早年人工智能在有限的方面充满成功。考虑到当时简单的计算机与编程工具,以及就在几年前计算机被看成只能做算术运算这个事实,只要计算机做了任何稍微聪明的事都是令人惊讶的。总的来说,善于思考的当权人物宁愿认为“机器永远不能做X”(为获得图灵收集的这类X的一张长表参见第26章)。人工智能研究者通过论证一个接一个的X自然地做出了反应。约翰·麦卡锡把这段时期称作“瞧,妈,连手都没有!”的时代。

通用问题求解器或 GPS 继承并发扬了纽厄尔和西蒙的早期成就。与逻辑理论家不同,该程序一开始就被设计来模仿人类问题求解协议。结果证明在它能处理的有限难题类中,该程序考虑子目标与可能行动的顺序类似于人类处理相同问题的顺序。因此,GPS 或许是第一个体现“像人一样思考”的程序。GPS 与随后的程序作为认知模型的成功致使纽厄尔和西蒙(1976)构想出著名的物理符号系统(physical symbol system)假设,它指出“一个物理符号系统具有必要且充分的表示一般智能行动的手段”。他们的意思是展现智能的任何(人类或机器)系统一定通过处理由符号组成的数据结构来起作用。后面我们将看到,该假设已受到来自多个方向的挑战。

在 IBM 公司,内森尼尔·罗切斯特和他的同事们制作了一些最初的人工智能程序。Herbert Gelernter(1959)建造了几何定理证明器,它能够证明连许多学数学的学生都感到

原书第 38 页

相当棘手的定理。从1952年开始,阿瑟·萨缪尔编写了一系列西洋跳棋程序,该程序最终学到能以业余高手的水准来玩。在这个过程中,他驳斥了计算机只能做被告知的事的思想:他的程序迅速学到比其创造者玩得更好。1956年2月这个程序在电视上进行了演示,给人留下很深的印象。像图灵一样,萨缪尔也难于找到机时。他只好在夜晚工作,使用的机器是仍在IBM制造厂的测试层上的计算机。第5章将涉及博弈,第21章将解释萨缪尔用过的学习技术。

约翰·麦卡锡从达特茅斯搬到了MIT,并且在那里于历史性的1958年做出了三项至关重要的贡献。根据MIT人工智能实验室的1号备忘录,麦卡锡定义了高级语言Lisp,该语言在后来的30年中成为占统治地位的人工智能编程语言。有了Lisp,麦卡锡便具有他所需的工具,但访问稀少且昂贵的计算资源仍是一个严重的问题。作为回应,他和MIT的其他人一起发明了分时技术。在1958年,麦卡锡还发表了题为“有常识的程序”(Programs with Common Sense)的论文,文中他描述了意见接受者(Advice Taker),这个假想程序可被看成第一个完整的人工智能系统。像逻辑理论家和几何定理证明器一样,麦卡锡的程序也被设计成使用知识来搜索问题的解。但是与其他系统不同,它包含世界的一般知识。例如,他指出某些简单的公理如何使该程序能生成一个开车去机场的计划。该程序还被设计成能在正常的操作过程中接收新公理,从而允许它在未被重新编程的情况下获得新领域中的能力。因此意见接受者体现了知识表示与推理的核心原则:有益的是对世界及其运作具有某种形式的、明确的表示并且能够使用演绎过程来处理那种表示。引人注目的是1958年发表的那篇论文目前仍然非常重要。

1958 年也是马文·明斯基搬到 MIT 的年份。然而,他和麦卡锡最初的合作并未延续。麦卡锡强调形式逻辑的表示与推理,而明斯基对使程序有效工作更感兴趣并且最终产生了一种反逻辑的观点。1963 年,麦卡锡在斯坦福创办了人工智能实验室。1965 年,J. A. Robinson 归结方法(一个完整的一阶逻辑定理证明算法;参见第 9 章)的发现促进了麦卡锡使用逻辑来建造最终的意见接受者的计划。斯坦福的工作强调逻辑推理的通用方法。逻辑的应用包括 Cordell Green 的问题解答与规划系统(Green,1969b)和斯坦福研究院(SRI)的 Shakey 机器人项目。后者第一次展示了逻辑推理与物理行动的完整集成,将在第 25 章进一步讨论。

明斯基指导了一系列学生,他们选择研究求解时看来好像需要智能的有限问题。这些有限域称为微观世界(microworlds)。James Slagle 的 SAINT 程序(1963)能够求解一年级大学课程中典型的闭合式微积分问题。Tom Evans 的 ANALOGY 程序(1968)能够求解出现在智商测试中的几何类推问题。Daniel Bobrow 的 STUDENT 程序(1967)能够求解如下所述的代数故事问题:

如果汤姆招揽到的顾客数是他做的广告数的20%的平方的两倍,并且他做的广告数是45,那么汤姆招揽到的顾客数是多少呢?

最著名的微观世界是积木世界,如图1.4所示,它由放置在桌面(或者更经常地,一个模拟桌面)上的一组实心积木组成。这个世界中的典型任务是使用一只每次能拿起一块积木的机器手按某种方式调整这些积木。对于戴维·哈夫曼(David Huffman)的视觉项目(1971)、David Waltz的视觉与约束传播工作(1975)、Patrick Winston的学习理论(1970)、

原书第 39 页

Terry Winograd 的自然语言理解程序(1972)和 Scott Fahlman 的规划器(1974)来说,积木世界是它们的发源地。

Image
图 1.4 积木世界的一个场景。SHRDLU(Winograd,1972)刚完成命令“寻找一块高于你正拿着的那块的积木并把它放在盒子里”

基于 McCulloch 和 Pitts 的神经网络的早期工作也十分兴旺。Winograd 和 Cowan 的工作(1963)表明大量元素可以如何共同表示一个单独的概念,同时相应增加鲁棒性和并行性。Bernie Widrow(Widrow 和 Hoff,1960;Widrow,1962)加强了赫布的学习方法,并称他的网络为适应机(adalines)。而且 Frank Rosenblatt(1962)也用他的感知机(perceptrons)加强了赫布的学习方法。感知机收敛定理(perceptron convergence theorem)(Block 等,1962)表明如果存在这样的匹配,那么该学习算法便可调整感知机的连接强度以匹配任何输入数据。这些话题将在第 20 章中讨论。

1.3.4 现实的困难(1966—1973年)

自开始以来,人工智能研究者们并不羞于预言他们将来的成功。赫伯特·西蒙在1957年的以下说法经常被引用:

我的目的不是使你惊奇或者震惊——但是我能概括的最简单的方式是说现在世界上就有能思考、学习和创造的机器。而且,它们做这些事情的能力将快速增长直到——在可见的未来——它们能处理的问题范围将与人脑已经应用到的范围共同扩张。

虽然像“可见的未来”那样的措词可按不同的方式来解释,但是西蒙还做出了更具体的预言:10年内计算机将成为国际象棋冠军,并且机器将证明一个重要的数学定理。这些预言在40年而不是10年内实现(或者近似实现)了。西蒙的过于自信是因为早期人工智

原书第 40 页

能系统在简单实例上令人鼓舞的性能。然而,在几乎所有情况下,当这些早期系统试用于更宽的问题选择和更难的问题时,结果证明都非常失败。

第一种困难起源于大多数早期程序对其主题一无所知;它们依靠简单的句法处理获得成功。一个典型的故事发生在早期的机器翻译工作中。该工作由美国国家研究委员会慷慨资助,试图加速俄语科学论文的翻译,随着1957年人造地球卫星史普尼克(Sputnik)的发射而启动。最初认为,基于俄语和英语语法的简单句法变换以及根据一部电子词典的单词替换就足以保持句子的确切含义。事实是,准确的翻译需要背景知识来消除歧义并建立句子的内容。著名的从“the spirit is willing but the flesh is weak(心有余而力不足)”到“the vodka is good but the meat is rotten(伏特加酒是好的而肉是烂的)”的互相翻译(英译俄后再俄译英)说明了遇到的困难。1966年,咨询委员会的一份报告认为“尚不存在通用科学文本的机器翻译,近期也不会有”。随后取消了学术翻译项目的所有美国政府资助。现在,对技术、商业、政府和互联网文档,机器翻译仍是一个不完善但广泛使用的工具。

第二种困难是人工智能试图求解的许多问题的难解性。大多数早期的人工智能程序通过试验步骤的不同组合直到找到解来求解问题。这种策略最初是有效的,因为微观世界包含很少的对象,因此是很少的可能行动和很短的解序列。在产生计算复杂性理论之前,广泛认为“放大”到更大的问题只是更快的硬件和更大的存储器的事情。例如,乐观主义伴随着归结定理证明的发展,但是,当研究者们不能证明包含多于数十条事实的定理时,很快就受挫了。程序原则上能够找到解的事实并不意味着程序就包含实际上找到解所需的任何机制。

无限计算能力的错觉并不局限于问题求解程序。机器进化(machine evolution)(现在称为遗传算法(genetic algorithms)(Friedberg,1958;Friedberg等,1959)中的早期实验就是基于无疑正确的信念:通过对一段机器代码程序恰当地制造一系列小变化,便可为任意特定任务生成一个性能良好的程序。当时的想法是尝试随机的变化并用一个选择过程来保持似乎有用的变化。尽管花了数千小时的CPU时间,但几乎没有展示出任何进展。现代遗传算法使用更好的表示且已展示出更多的成就。

未能对付 “组合爆炸” 是包含在莱特希尔(Lighthill)报告(Lighthill,1973)中的对人工智能的主要批评之一,基于该报告英国政府决定终止对除两所大学外所有大学中人工智能研究的支持(口头传说描绘了一幅稍微有点不同且更多彩的画面,具有政治野心和个人憎恶,这样的描述是离题的)。

第三种困难起源于用来产生智能行为的基本结构的某些根本局限。例如,明斯基和Papert的著作《感知机》(Perceptrons)(1969)证明了:虽然可以证明感知机(神经网络的一种简单形式)能学会它们能表示的任何东西,但是它们能表示的东西很少。特别地,两输入的感知机(限制为比Rosenblatt原来研究的形式更简单的形式)不能被训练来认定何时其两个输入是不同的。虽然他们的结果没有应用于更复杂的多层网络,但是对神经网络研究的研究资助很快减少到几乎没有。具讽刺性的是,用于多层网络的新反传学习算法在20世纪80年代后期曾引起神经网络研究的巨大复兴,但实际上该算法是在1969年首次发现的(Bryson和Ho,1969)。

原书第 41 页
1.3.5 基于知识的系统:力量的秘诀(1969—1979年)

AI 研究的第一个十年呈现的问题求解的美景是一种通用的搜索机制,它试图串联基本的推理步骤来寻找完全解。这样的方法被称为弱方法(weak method),因为尽管通用,但它们不能扩展到大规模的或困难的问题实例。弱方法的替代方案是使用更强有力的、领域相关的知识,以允许更大量的推理步骤,且可以更容易地处理狭窄的专门领域里发生的典型情况。也许有人会说:要求解一个难题,你必须已经差不多知道答案。

DENDRAL 程序(Buchanan 等,1969)是这种方法的早期例子。它是在斯坦福开发的,在那里 Ed Feigenbaum(费根鲍姆)(曾是 Herbert Simon 的学生)、Bruce Buchanan(一个改行研究计算机科学的哲学家)以及 Joshua Lederberg(一个获得诺贝尔奖的基因学家)合作,以解决根据质谱仪提供的信息推断分子结构的问题。程序的输入由基本的分子式(例如, $ C_{6}H_{13}NO_{2} $)和质谱组成,质谱给出了被电子束轰击产生的各种分子碎片的质量。例如,质谱可能在 m = 15 的地方有一个尖峰,这对应于一个甲基( $ CH_{3} $)碎片的质量。

一个简单版本的程序先生成与分子式一致的全部可能结构,然后预测每个结构能观察到的质谱,再与真实质谱比较。正如人们预期的一样,对于中等大小的分子而言,这是不切实际的。DENDRAL研究者们咨询了分析化学家,发现他们是通过寻找质谱中已清楚了解的尖峰模式进行工作的,这些模式暗示了分子中的普通子结构。例如,下列规则是用来识别酮(C=O)结构(重量为28)的:

如果在 $ x_{1} $ 和 $ x_{2} $ 处有两个尖峰,满足

(a) $ x_{1} + x_{2} = M + 28 $ (M 是整个分子的质量);

(b)x_{1}-28 是一个高的尖峰;

(c)x_{2}-28 是一个高的尖峰;

(d) $ x_{1} $ 和 $ x_{2} $ 至少有一个峰值比较高。

那么存在一个酮结构

认识到分子包含特定子结构,这大大减少可能的候选数量。DENDRAL 功能强大是因为

所有解决这些问题的相关理论知识都被从其在[质谱预测成分](“基本原理”)中的一般形式映射到了效率高的特殊形式(“食谱配方”)。(Feigenbaum等,1971)

DENDRAL 的意义在于它是第一个成功的知识密集系统:它的专业知识来自大量的专用规则。后来的系统还吸收了麦卡锡的意见接收者(Advice Taker)方法的主旨——把知识(规则)和推理部件清楚地分离开。

有了这个经验,Feigenbaum和斯坦福的其他一些人启动了启发式程序设计项目(HPP),以研究新的专家系统(expert systems)方法论可用到其他人类专家知识领域的程度。接下来的一个主要奋斗领域是医疗诊断。Feigenbaum、Buchanan和Edward Shortliffe医生开发了MYCIN,用于诊断血液传染。MYCIN具有450条规则,能够表现得与某些专家一样好,并且表现得比初级医生好很多。MYCIN与DENDRAL有两点主要差异。首先,不像DENDRAL规则,不存在通用的理论模型可以从中演绎出MYCIN规则。他们不得不从专家会见大量病

原书第 42 页

人的过程中获取规则,而专家进而又从书本、其他专家以及案例的直接经验中获取规则。其次,规则必须反映与医疗知识关联的不确定性。MYCIN吸收了称为确定性因素(certainty factors)(第14章)的不确定性演算,似乎(在当时)很符合医生如何评估诊断证据的作用的情况。

领域知识的重要性在自然语言理解领域也很明显。尽管 Winograd 的理解自然语言的 SHRDLU 系统让人们非常兴奋,它对句法分析的依赖引起了在早期机器翻译工作中出现的同样的问题。它能够克服歧义性并能理解代词指代,但这主要是因为它是为一个特定领域——积木世界——设计的。一些研究者,包括 Eugene Charniak——他是 Winograd 在 MIT 带的一名研究生,提出鲁棒的语言理解将需要关于世界的一般知识和使用知识的一般方法。

在耶鲁,语言学家出身的 AI 研究者 Roger Schank 强调了这一点,宣称 “没有语法这样的东西”,这打击了很多语言学家,但又确实发动了一场有用的讨论。Schank 和他的学生们建立了一系列程序(Schank 和 Abelson,1977;Wilensky,1978;Schank 和 Riesbeck,1981;Dyer,1983),都有自然语言理解的任务。然而,重点不在语言本身上,而是更多地集中在利用语言理解所需的知识进行表示和推理的问题上。问题包括表示固定不变的环境(Cullingford,1981),描述人类记忆组织(Rieger,1976;Kolodner,1983),以及理解规划和目标(Wilensky,1983)。

对现实世界问题的应用的普遍增长同时引起了对可行知识表示方案的需求的增长。大量不同的表示和推理语言被开发出来。有些是基于逻辑的——例如,Prolog 语言开始在欧洲流行,PLANNER 家族在美国流行。其他人追随 Minsky 的框架(frame)(1975),采用了更加结构化的方法,集成了关于特定对象和事件类型的事实,并把这些类型安置在一个大的类似于生物分类学的分类层次中。

1.3.6 人工智能成为产业(1980年—现在)

第一个成功的商用专家系统 R1 开始在数据设备公司(DEC)(McDermott,1982)运转。该程序帮助为新计算机系统配置订单;到 1986 年为止,它每年为公司节省了估计 4000 万美元。到 1988 年为止,DEC 公司的 AI 研究小组已经部署了 40 个专家系统,还有一些正在研制中。杜邦(DuPont)公司有 100 个专家系统在使用中,另有 500 个在开发中,每年估计为公司节省 1000 万美元。几乎每个主要的美国公司都有自己的 AI 研究小组,并且正在使用或者研发专家系统。

1981 年,日本宣布了“第五代计算机”计划。这是一项为期 10 年的计划,以研制运行 Prolog 语言的智能计算机。作为回应,美国组建了微电子和计算机技术公司(MCC)作为保证国家竞争力的研究集团。两个案例中,AI 是研究计划的一部分,这些研究计划包括芯片设计和人机接口研究。在英国,艾尔维报告(Alvey report)恢复了因赖特希尔报告(Lighthill report)而停止的投资 $ ^{1} $。然而,在这三个国家中,这些项目从来都没有实现过它们野心勃勃的目标。

原书第 43 页

总的来说,AI产业从1980年的区区几百万美元暴涨到1988年的数十亿美元,包括几百家公司研发专家系统、视觉系统、机器人以及服务这些目标的专门软件和硬件。之后,一个被称为“人工智能的冬天”的时期很快来临,期间很多公司都因无法兑现它们所做出的过分承诺而垮掉。

1.3.7 神经网络的回归(1986年—现在)

在 20 世纪 80 年代中期,至少 4 个不同的研究组重新发明了由 Bryson 和 Ho 于 1969 年首次建立的反传(back-propagation)学习算法。该算法被用于很多计算机科学和心理学中的学习问题,而文集《并行分布式处理》(Parallel Distributed Processing)(Rumelhart 和 McClelland,1986)中的结果的广泛流传引起了人们极大的兴奋。

智能系统的这些所谓连接主义(connectionist)模型被有些人视为是对 Newell(纽厄尔)和 Simon(西蒙)倡导的符号模型以及 McCarthy(麦卡锡)和其他人(Smolensky,1988)主张的逻辑方法的直接竞争者。也许看来很明显,人类在某些层次上处理的是符号——事实上,Terrence Deacon 的著作《符号的物种》(The Symbolic Species)(1997)指出这是人类的定义特性,但是大多数激进的连接主义者质疑符号处理在认知的精细模型中是否有任何真正的解释作用。这个问题还没有答案,不过当前的观点认为连接主义方法和符号主义方法是互补的,不是竞争的。就像 AI 与认知科学的分离一样,现代神经网络研究分离成了两个领域,一个关心的是建立有效的网络结构和算法并理解它们的数学属性,另一个关心的是对实际神经元的实验特性和神经元的集成的建模。

1.3.8 人工智能采用科学方法(1987年—现在)

近些年来我们已经看到人工智能研究在内容和方法论方面发生的革命 $ ^{1} $。现在更普遍的是在现有理论的基础上进行研究而不是提出全新理论,把主张建立在严格的定理或者确凿的实验证据的基础上而不是靠直觉,揭示对现实世界的应用的相关性而不是对玩具样例的相关性。

AI 的建立,部分是出于对类似控制论和统计学等已有领域的局限性的叛逆,但是它现在开始接纳那些领域。正如 David McAllester(1998)指出的:

在 AI 的早期,符号计算的新形式是值得称道的,例如框架和语义网络,它们使得很多经典理论失效。这导致形成一种孤立主义,AI 与计算机科学的其他领域之间出现巨大鸿沟。这种孤立主义目前正被逐渐抛弃。人们现在认识到,机器学习不应该和信息论分离,不确定推理不应该和随机模型分离,搜索不应该和经典的优化与控制分离,自动推理不应该和形式化方法与静态分析分离。

在方法论方面,AI 最终成为坚实的科学方法。为了被接受,假设必须遵从严格的经验

原书第 44 页

实验,结果的重要性必须经过统计分析(Cohen,1995)。通过利用共享测试数据库及代码,现在重复实验是可能的。

语音识别领域阐明了这种模式。在20世纪70年代,人们尝试了大量的不同体系结构与方法。其中许多都相当特殊和脆弱,仅仅在几个特定样本上进行了演示。近些年,基于隐马尔可夫模型(hidden Markov models)(HMMs)的方法开始主导这个领域。HMM的两个方面是有关的。首先,它们是基于严格的数学理论基础的。这允许语音研究者们以其他领域中发展了数十年的数学成果为根据。其次,它们是通过在大量的真实语音数据上的训练过程生成的。这保证了性能是鲁棒的,而且在严格的盲测试中,HMM不断地提高着它们的得分。语音技术和与之有关联的手写字符识别已经开始转向广泛用于工业和个人应用。注意,没有科学断言说人类识别语音是用了HMM;HMM只是为理解这个问题提供了一个数学框架,并支持了“它们在实际中工作得很好”的工程断言。

机器翻译步语音识别的后尘。在20世纪50年代人们开始热衷于基于单词序列的方法,它具有根据信息论原理学习到的模型。20世纪60年代,这种方法开始被冷落,但到20世纪90年代末它又被重新捡起,目前主导着这个领域。

神经网络也符合这个趋势。很多神经网络方面的工作在20世纪80年代得以完成,人们试图弄清神经网络到底能做什么,并了解神经网络与“传统”技术之间到底有多大差别。通过改进的方法论和理论框架,这个领域达到一个新的理解程度——神经网络可以和统计学、模式识别、机器学习等领域的对应技术相提并论,并且其最有前途的技术可以用在每个应用上。作为这些发展的结果,所谓数据挖掘(data mining)技术促生了一个有活力的新工业。

随着研究兴趣的复苏——Peter Cheeseman(1985)在文章《保卫概率》(In Defense of Probability)中进行了概括,Judea Pearl(1988)的《智能系统中的概率推理》(Probabilistic Reasoning in Intelligent Systems)导致了AI对概率和决策理论的新一轮接纳。贝叶斯网络(Bayesian network)的形式化方法被发明出来,以对不确定知识进行有效表示和严格推理。这种方法极大地克服了20世纪60年代和70年代的概率推理系统的很多问题;它目前主导着不确定推理和专家系统中的AI研究。这种方法允许根据经验进行学习,并且结合了经典AI和神经网络的最好部分。Judea Pearl和Eric Horvitz以及David Heckerman的工作(Judea Pearl,1982a;Horvitz和Heckerman,1986;Horvitz等,1986)促进了规范专家系统的思想:它们根据决策理论的法则理性地行动,并不试图模仿人类专家的思考步骤。Windows操作系统包含了几个用于纠正错误的规范诊断专家系统。第13章到第16章将论及这个领域。

类似的温和革命也发生在机器人、计算机视觉和知识表示领域。对问题和它们的复杂特性的更好理解,加上日益增加的数学成分,导致了一些可行的研究计划和鲁棒的方法。尽管日益增长的形式化和专门化导致视觉和机器人这样的领域在20世纪90年代一定程度上从“主流”AI研究工作中分离出来,这种趋势在近些年已经逆转,特别是机器学习工具已经证明对于许多问题都是有效的。

1.3.9 智能 Agent 的出现(1995 年—现在)

也许受到解决人工智能中一些子问题的进展的鼓舞,研究者们开始再一次审视“完整Agent”问题。Allen Newell(艾伦·纽厄尔)、John Laird和Paul Rosenbloom在SOAR系统

原书第 45 页

上的工作(Newell,1990;Laird等,1987)是最有名的完整Agent结构的例子。智能Agent最重要的环境之一就是Internet(互联网)。AI系统在基于Web(万维网)的应用中变得如此普遍,以致“-bot(机器人)”后缀已经进入日常用语。此外,AI技术成为许多Internet工具的基础,例如搜索引擎、推荐系统以及网站构建系统。

试图建立完整 Agent 的一个结果是,人们认识到当需要把它们的结果综合起来时,以前被孤立的 AI 子领域需要被重新组织。特别是,人们普遍意识到传感器系统(视觉、声呐、语音识别等)不能完全可靠地传递环境信息。因此,推理和规划系统必须能够处理不确定性。Agent 观点的另一个主要结果是,AI 与其他领域已经被拉得更靠近了,例如控制论和经济学,这些领域也处理 Agent。机器人驾驶汽车的最新进展来源于许多方法的混合,包括更好的传感器,以及对传感、定位和绘制地图的控制理论的综合,还有一定程度的高层次规划。

尽管有这些成功,一些有影响的 AI 创建者,包括 John McCarthy(2007)、Marvin Minsky(2007)、Nils Nilsson(1995,2005)和 Patrick Winston(Beal 和 Winston,2009)都表达了对 AI 进展的不满。他们认为 AI 应该少把重点放在改进对特定任务表现很好的应用,例如驾驶汽车、下棋或者语言识别。转而,他们相信 AI 应该回到它的根:致力于用 Simon 的话就是“会思考、学习和创造的机器。”他们称这为人类级 AI(human-level AI,缩写为 HLAI);他们在 2004 年举行了首次讨论会(Minsky 等,2004)。这需要非常大的知识库;Hendler 等(1995)讨论了这些知识库可能源于何方。

一种相关的思想是人工通用智能(AGI,Artificial General Intelligence)(Goertzel 和 Pennachin,2007)子领域,在2008年举办了首次会议,并组建了期刊《Journal of Artificial General Intelligence》。AGI寻找通用的在任何环境中的学习和行动算法,它的根源可以追溯到Ray Solomonoff(1964)的工作,他是1956年Dartmouth会议的参与者之一。“确保我们所建立的是真正友好的AI(Friendly AI)”也是我们关心的问题(Yudkowski,2008;Omohundro,2008),在第26章我们将讨论这个问题。

1.3.10 极大数据集的可用性(2001年—现在)

纵观计算机科学的60年历史,作为学习的主要科目,AI的重点一直放在算法上。但AI最近的一些工作认为多关心数据而不必太挑剔所用的算法会更有意义。确实如此,因为我们拥有与日俱增的大规模数据源:例如,Web上有数万亿个单词和几十亿幅图像(Kilgarriff和Grefenstette,2006);基因序列有几十亿个碱基对(Collins等,2003)。

这方面有影响力的一篇论文是 Yarowsky(1995)在词语歧义消除方面的工作:在一个句子中给定单词“plant”,它是指 flora(植物)还是指 factory(工厂)呢?以前对这个问题的解法依赖于人类标注的样例,并结合机器学习算法。Yarowsky 证明这个任务根本不需要标注样例就可以完成,正确率可达到96%以上。给定大量的无注解的文本和两种含义的字典定义——“works, industrial plant”和“flora, plant life”——我们可以在这些文本里标注样例,并由这些样例自展(bootstrap)学习能帮助标注新样例的新模式。Banko 和 Brill(2001)证明了当文本从100万个单词增加到十亿个单词时,这种技术会表现得甚至更好,而且采用更多数据带来的性能提升超过选用算法带来的性能提升。一个普通算法使用一亿个单词的未标注训练数据,会好过最有名的算法使用100万个单词。

原书第 46 页

作为另一个例子,Hays 和 Efros(2007)讨论了在照片中补洞的问题。假设你通过 Photoshop 从一组照片中将一位曾经的朋友用马赛克模糊掉,但现在你需要用与背景匹配的某些东西来填补马赛克区域。Hays 和 Efros 定义了一个算法,从一组照片里搜索,以找出可以匹配的东西。他们发现,如果他们只用一万张照片,那么他们的算法的性能会很差,但如果照片增加到两百万张时,算法会一跃而表现出极好的性能。

这些工作表明,AI 中的“知识瓶颈”——如何表达系统所需的所有知识的问题——在许多应用中都可以得到解决,可以使用学习方法,而不是通过手工编码的知识工程,只要学习方法有足够的数据可用(Halevy 等,2009)。新闻记者已经注意到新应用的涌现,他们写到“人工智能的冬天”也许正释放出一个新的春天(Havenstein,2005)。就像 Kurzweil(2005)写到的一样,“今天,数千个 AI 应用已经深深地嵌到了日常生产的基础设施中。”

1.4 最新发展水平

今日的人工智能能做什么?确切地回答是很困难的,因为在如此多的子领域有如此多的活动。这里我们举几个应用实例;其他方面将通过整本书来呈现。

机器人汽车(Robotic vehicles):一辆名为 STANLEY 的无人驾驶机器人汽车以每小时 22 英里的速度通过 Mojave 沙漠的野外地形,首先完成了 132 英里的里程,赢得了 2005 年 DARPA 挑战大赛。STANLEY 是大众汽车途锐,外部装备有相机、雷达、激光测距仪来感应环境,并装有车载软件来指挥导航、制动和加速(Thrun,2006)。第二年 CMU 的 Boss 赢得了城市挑战赛,Boss 安全驾驶通过附近有空军基地的街道,遵守交通规则,并会避让行人和其他车辆。

语音识别(Speech recognition):一名旅行者给美国联合航空公司(United Airlines)打电话预订机票时,一个自治语音识别和对话管理系统可以引导整个交谈过程。

自主规划与调度(Autonomous planning and scheduling):在远离地球几百万公里的太空,NASA(美国航空航天局)的远程 Agent 程序成为第一个船载自主规划程序,用于控制航天器的操作调度(Jonsson 等,2000)。REMOTE AGENT 程序根据地面指定的高级目标生成规划,并监控规划的执行——检测、诊断、并在发生问题时进行恢复。后续的 MAPGEN 程序(A1-Chang 等,2004)为 NASA 的火星探索者进行日常规划,MEXAR2(Cesta 等,2007)为 ESA(European Space Agency)2008 年的火星快车任务进行任务规划——包括后勤和科学规划。

博弈(Game playing):IBM公司的DEEP BLUE(深蓝)成为第一个在象棋比赛中击败世界冠军的计算机程序。它在一次公开比赛中以3.5比2.5的分数战胜了Garry Kasparov(加里·卡斯帕罗夫)(Goodman和Keene,1997)。Kasparov说他从棋盘对面感到了“一种新智能”。《每周新闻》(Newsweek)杂志把这次比赛描述为“人脑最后的抵抗”。IBM的股票继而升值180亿美元。人类冠军研究了Kasparov的失败之后在后来的几年里可以和DEEP BLUE下成几次平局,但最近的人机比赛中计算机都令人心服口服地赢得了比赛。

垃圾信息过滤(Spam fighting):每天,学习算法将上十亿条信息分类为垃圾信息,为接收者节省了删除时间,如果不用算法分类,对于许多人而言,垃圾信息将占所有信息的

原书第 47 页

80%或90%。由于垃圾信息制造者不断地更新他们的策略,一个程序实现的静态的方法很难跟得上这种变化,而学习算法效果最好(Sahami等,1998;Goodman和Heckerman,2004)。

后勤规划(Logistics planning):在1991年的波斯湾危机中,美军配备了一个动态分析和重规划工具DART(Cross和Walker,1994),用于自动的后勤规划和运输调度。这项工作同时涉及到的车辆、货物和人的总数达到50000,而且必须考虑起点、目的地、路径,并解决所有参数之间的冲突。AI规划技术使得一个规划可以在几小时内产生,而用旧方法将需要花费几个星期。DARPA(美国国防高级研究项目局)称此单项应用就足以回报DARPA在AI方面30年的投资。

机器人技术(Robotics):iRobot公司已经售出了超过200万个家庭使用的Roomba机器人真空吸尘器。该公司也部署了更多的适合崎岖地面的PackBot机器人到伊拉克和阿富汗,用于运送危险物资、清除炸弹、识别狙击手的位置。

机器翻译(Machine Translation):一个计算机程序自动将阿拉伯文翻译成英语,让英语演讲者看到标题“Ardogan Confirms That Turkey Would Not Accept Any Pressure, Urging Them to Recognize Cyprus.”(Ardogan 证实土耳其不接收任何压力,强烈要求他们认可塞浦路斯。)这个程序使用了统计模型,这个模型来自阿拉伯语到英语的翻译实例和两万亿个单词的英语文本实例(Brants 等,2007)。这个研究团队计算机科学家没有人说阿拉伯语,但他们理解统计学和机器学习算法。

这些只不过是今天存在的人工智能系统的几个实例。它们既不是魔幻也不是科幻——而是科学、工程和数学,该书将对这些科学、工程和数学进行介绍。

1.5 本章小结

本章定义了 AI,并建立了 AI 得到发展的文化背景。下面是一些要点:

不同人会对 AI 有不同的思考。要问的两个重要问题是:你关心的是思考还是行为?你是想模拟人还是按照理想标准工作?

在本书中,我们采用的观点是智能主要与理性行为(rational action)相关。理想地,智能 Agent(intelligent agent)要采取一个环境中最好的可能行为。我们将研究如何建造在这个意义上具备智能的 Agent 的问题。

● 哲学家们(回溯到公元前400年)考虑的想法是思维在某些方面像机器一样,思维对用某种内部语言编码的知识进行操作,思想用于选择采取什么样的行动。

数学家们提供了处理确定的逻辑命题或者不确定的概率命题的工具。他们还建立了理解计算和对算法进行推理的基础。

经济学家们形式化了为决策制定者提供最大化期望结果的决策问题。

神经科学家发现了关于大脑如何进行工作的一些事实,以及它与计算机类似和不同的地方。

心理学家们采用了认为人与动物都是信息处理机的思想。语言学家们说明了语言的使用符合这个模型。

计算机工程师们提供了使得AI应用成为可能的强大机器。

原书第 48 页
  • 控制论处理的是如何设计以环境的反馈为基础的执行最优行动的设备。初始的时候,控制论的数学工具与 AI 相当不同,但是两个领域正越来越靠近。

AI 历史上有许多从成功到错误乐观、进而导致丧失热情和资金的循环。也有很多引入新的创新方法再系统地提炼出最佳思想的循环。

AI 在过去十年间取得了更快速的进步,因为在实验和方法比较中使用了更多的科学方法。

理解智能的理论基础的最新进展与实际系统的能力改进已经携手共进。AI 的子领域开始变得更集成化,另外 AI 还与其他学科找到了共同基础。

参考文献与历史注释

Herb Simon 在他的著作《The Sciences of the Artificial》(1981)中调查了人工智能方法论的状态,书中讨论了有关复杂人工制品的研究领域。它解释了 AI 怎么可以既视为科学又视为数学。Cohen(1995)评述了 AI 中的实验方法论。

Shieber(1994)以及 Ford 和 Hayes(1995)讨论了图灵测试。Shieber 在 Loebner 奖竞赛中尖锐地批判了图灵测试的示例的用处。Ford 和 Hayes 认为图灵测试本身对 AI 是没有帮助的。Bringsjord(2008)对图灵测试的仲裁提出了建议。Shieber(2004)和 Epstein 等(2008)搜集了图灵测试的许多评论。John Haugeland(1985)的著作《人工智能:真实的思想》(Artificial Intelligence: The Very Idea)给出了一份关于 AI 的哲学和实践问题的易读的报告。Webber 和 Nilsson(1981)以及 Luger(1995)选编了 AI 早期的重要论文。《人工智能百科全书》(Encyclopedia of AI)(Shapiro,1992)包含 AI 几乎每个主题的综述文章,像维基百科一样。这些文章为每个主题的研究文献通常提供了一个好的切入点。Nillson(2009)见解深刻地描述了 AI 的全面历史,Nillson 是 AI 领域的早期先驱之一。

最新的工作出现在 AI 的主要会议中:两年一度的人工智能联合会议(International Joint Conference on AI,IJCAI)、欧洲人工智能年会(European Conference on AI,ECAI)、美国人工智能会议(National Conference on AI,因为其发起组织是 AAAI,所以这个会议更多地被人们称为 AAAI 会议)。通用 AI 的主要刊物有:《Artificial Intelligence》、《Computational Intelligence》、《IEEE Transactions on Pattern Analysis and Machine Intelligence》、《IEEE Intelligent Systems》、《Journal of Artificial Intelligence Research》。也有很多会议和刊物致力于 AI 特定的领域,我们在合适的章节中会提到:AI 主要的专家学术团体有:美国人工智能学会(AAAI)、ACM 人工智能特别兴趣组(SIGART)、人工智能与行为仿真学会(AISB)。AAAI 的《AI Magazine》包含了许多话题性的和指导性的文章,其网站 aai.org 包含了新闻、指导手册和背景信息。

习题

这些习题的目的是激发讨论,有些可能可以作为学期项目。另外,现在就可以进行基础的尝试,可以在学习全书后对这些尝试进行评论。

原书第 49 页

1.1 用自己的语言定义:(a)智能,(b)人工智能,(c)Agent,(d)理性,(e)逻辑推理。

1.2 阅读图灵关于 AI 的原始论文(Turing,1950)。在该论文中,他讨论了一些对于他提出的事业以及他的智能测试的潜在的异议。哪些异议现在仍有分量?图灵的反驳是否合理?你能想到在他撰写该论文以后的发展引起的新异议吗?在该论文中,他预测到2000年以前,计算机将有30%的机会通过5分钟的图灵测试,测试由不熟练的询问者进行。你认为当今计算机能有多少可能性?再过50年呢?

1.3 反射行动(比如从热炉子上缩回你的手)是理性的吗?它们是智能的吗?

1.4 假设我们扩展 Evans 的 ANALOGY 程序,使它能够在普通的智商测验中得到 200 分。那么我们是否得到了一个比人更智能的程序?请解释你的观点。

1.5 海洋鼻涕虫 Aplysia 的神经结构已经被深入研究过(首次是诺贝尔奖获得者 Eric Kandel),因为它只有大约 20000 个神经元,多数神经元很大而且容易操作。假设一个 Aplysia 神经元的周期时间大致与人类神经元相同,就每秒的记忆更新来说,与图 1.3 描述的高端计算机相比,其计算能力如何?

1.6 内省——汇报自己的内心想法——怎么可能是不精确的?我会搞错我正想什么吗?请讨论。

1.7 以下的计算机系统在何种程度上是人工智能的实例:

超市条码扫描器。

网络搜索引擎。

语音激活的电话菜单。

对网络状态动态响应的网络路由算法。

1.8 人们提出的认知活动的许多计算模型涉及十分复杂的数学操作,例如图像进行高斯卷积或寻找熵函数的最小值。多数人类(以及所有动物)从未学习这种数学,几乎没人在进大学之前学过,也几乎没人能在脑海里计算函数的卷积。那么说“视觉系统”进行这种数学运算有什么意义呢,同时实际的人也不知道如何进行这种数学运算。

1.9 为什么进化会倾向于导致行为合理的系统?设计这样的系统想达到的目标是什么?

1.10 AI 是一门科学吗?是工程吗?两者都不是还是两者都是?请解释。

1.11 “计算机肯定不是智能的——它们只能做程序员告诉它们的。”后面的陈述正确吗?它蕴含着前面的陈述吗?

1.12 “动物肯定不是智能的——它们只能做基因告诉它们的。”后面的陈述正确吗?它蕴含着前面的陈述吗?

1.13 “动物、人类和计算机肯定不是智能的——它们只能做构成它们的原子被物理法则告知要做的事。”后面的陈述正确吗?它蕴含着前面的陈述吗?

1.14 检查 AI 的文献,去发现现在计算机是否能够解决下列任务:

a. 打正规的乒乓球比赛。

b. 在埃及开罗市中心开车。

c. 在加利福尼亚的 Victorville 开车。

d. 在市场购买可用一周的杂货。

e. 在 Web 上购买可用一周的杂货。

f. 参加正规的桥牌竞技比赛。

原书第 50 页

g. 发现并证明新的数学定理。

h. 写一则有内涵的有趣故事。

i. 在特定的法律领域提供合适的法律建议。

j. 从英语到瑞典语的口语实时翻译。

k. 完成复杂的外科手术。

对于现在不可实现的任务,试着找出困难所在,并预测如果可能的话这些困难什么时候能被克服。

1.15 AI 的不同子领域举行了比赛,这些比赛定义了一个标准任务并邀请研究者发挥最高水平。例如:DARPA 的机器人汽车陆地挑战赛、国际规划比赛、Robocup 机器人足球赛、TREC 信息检索比赛、机器翻译比赛、语音识别比赛。研究其中 5 个比赛,并描述过去 5 年取得的进展。这些比赛将 AI 的技术发展水平提高到了什么程度?由于比赛的注意力不在新思想上,这对 AI 领域有何种程度的危害?

← 目录第2章 智能 Agent →