人工智能 - BCMI

Download Report

Transcript 人工智能 - BCMI

人工智能的历史和启示:
人机对弈作为案例
赵海
[email protected]
人工智能
•
•
•
•
•
人工智能(Artificial Intelligence或简称AI)有时也称作机器智能,是指由人工制造出来的
系统所表现出来的智能。通常人工智能是指通过普通计算机实现的智能。该词同时也指
研究这样的智能系统是否能够实现,以及如何实现的科学领域。
美国斯坦福大学人工智能研究中心尼尔逊教授对人工智能下了这样一个定义:“人工智
能是关于知识的学科――怎样表示知识以及怎样获得知识并使用知识的科学。”
而另一个美国麻省理工学院的温斯顿教授认为:“人工智能就是研究如何使计算机去做
过去只有人才能做的智能工作。”
这些说法反映了人工智能学科的基本思想和基本内容。即人工智能是研究人类智能活动
的规律,构造具有一定智能的人工系统,研究如何让计算机去完成以往需要人的智力才
能胜任的工作,也就是研究如何应用计算机的软硬件来模拟人类某些智能行为的基本理
论、方法和技术。
涉及学科
–
–
–
–
–
–
–
* 哲学和认知科学
* 数学
* 心理学
* 计算机科学
* 控制论
* 决策论
* 不确定性原理
2
人工智能
• 研究范畴
– 自然语言处理(NLP; Natural Language
Processing)
– 知识表示 (Knowledge Representation)
– 知识获取
– 智能搜索 (Intelligent Search)
– 推理
– 规划 (Planning)
– 机器学习 (Machine Learning)
– 模式识别
• 增强式学习 (Reinforcement Learning)
– 数据挖掘 (Data Mining)
– 逻辑程序设计
– 软计算 (Soft Computing)
– 非单调和不确定推理
– 人工生命 (Artificial Life)
– 遗传算法
– 人工神经网络 (Artificial
Neural Network)
– 模糊控制
– 复杂系统
– 感知问题
3
人工智能
• 人工智慧
• Artificial intelligence
• 人工智能(artificial intelligence, AI)的历史源远流长. 在古
代的神话传说中, 技艺高超的工匠可以制作人造人, 并为其
赋予智能或意识. 正如Pamela McCorduck所说, AI的起源
是“古人成为造物神的愿望”.
• 现代意义上的AI始于古典哲学家用机械符号处理的观点解
释人类思考过程的尝试.
• 二十世纪四十年代基于抽象数学推理的可编程数字计算机
的发明标志着这一工作的高潮.
• 计算机的出现及其背后的原理使一批科学家开始严肃地探
讨构造一个电子大脑的可能性.
4
人工智能的三大流派
符号主义
• 西蒙和纽厄尔为代表的物理符号系统假说(physical
symbol system hypothesis)
• 由一组称为符号的实体组成系统,这些符号可作为组分
出现在另一符号实体中。任何时候系统内部均有一组符
号结构,以及作用在这些符号结构上生成其他符号结构
的一组过程。
• 任一物理符号系统如果是有智能的,则必能执行对符号
的输入、输出、存储、复制、条件转移和建立符号结构
这样6种操作。反之,能执行这6种操作的任何系统,也
就一定能够表现出智能。
6
符号主义
• 认知基元是符号,智能行为通过符号操作来实
现,以美国科学家Robinson提出的归结原理为
基础,以LISP和Prolog语言为代表
• 着重问题求解中的启发式搜索和推理过程,在
逻辑思维的模拟方面取得成功,如自动定理证
明和专家系统。
7
符号主义
• 1977年吴文俊(1919- )院士给出了一类
平面几何问题的机械化证明理论,在计
算机上证明了一大批平面几何定理。
• 1984年科学出版社出版了他的《几何定
理机器证明的基本原理》一书,被称为
吴方法。
8
联结主义方法
• J. J. Hopfield为代表的人工神经网络方法,思维的
基元是神经元,把智能理解为相互联结的神经元竞
争与协作的结果,其中以反向传播网络模型和
Hopfield网络模型更为突出。
• 着重结构模拟,研究神经元特征、神经元网络拓朴、
学习规则、网络的非线性动力学性质和自适应的协
同行为。
9
联结主义方法
• 1975年,John Holland提出遗传算法,模仿生物
染色体中基因的选择(selection)、交叉
(crossover)和变异(mutation)的自然进化过程,
通过个体结构重组,形成一代代新群体
(populations),最终收敛于近似优化解。
• 用于处理多变量、非线性、不确定、甚至混沌的
大搜索空间的有约束的优化问题;
10
行为主义方法
• 以R. A. Brooks为代表。反馈是控制论中的基石,
没有反馈就没有智能。强调智能系统与环境的交
互,从运行的环境中获取信息(感知),通过自
己的动作对环境施加影响;
• 控制论研究导致机器人和智能控制,机器人是
“感知--行为”模式,是没有知识的智能,强调
直觉和反馈的重要性;
• 智能行为体现在系统与环境的交互之中,功能、
结构和智能行为不可分割。
11
人工智能发展史
人工智能:历史概述
•
•
•
•
1956年, 在Dartmouth学院校园里举行的一次会议上正式确立了人工智能的研
究领域. 会议的参加者在接下来的数十年间是AI研究的领军人物. 他们中有许
多人预言, 经过一代人的努力, 与人类具有同等智能水平的机器将会出现. 同时,
上千万美元被投入到AI研究中, 以期实现这一目标.
最终研究人员发现自己大大低估了这一工程的难度. 由于James Lighthill爵士
的批评和国会方面的压力, 美国和英国政府于1973年停止向没有明确目标的
人工智能研究项目拨款. 七年之后受到日本政府研究规划的刺激, 美国政府和
企业再次在AI领域投入数十亿研究经费, 但这些投资者在八十年代末重新撤回
了投资. AI研究领域诸如此类的高潮和低谷不断交替出现; 至今仍有人对AI的
前景作出异常乐观的预测.
尽管在政府官僚和风投资本家那里经历了大起 大落, AI领域仍在取得进展. 某
些在二十世纪七十年代被认为不可能解决的问题今天已经获得了圆满解决并
已成功应用在商业产品上. 与第一代AI研究人员的乐观估计不同, 与人类具有
同等智能水平的机器至今仍未出现.
Alan Turing在1950年发表的一篇催生现代智能机器研究的著名论文中称, “我
们只能看到眼前的一小段距离… 但是, 我们可以看到仍有许多工作要做”.
13
先驱
•
•
•
McCorduck在其著作“会思考的机器(Machines Who Think)”(2004)中写道, “在西方文
明史中随处可见关于人工智能的设想. 这是人们迫切希望实现的一个梦想.” 先民对人工
智能的追求表现在诸多神话, 传说, 故事, 预言以及各种发条机器人之中.
1.1 神话, 幻想和预言中的AI
希腊神话中已经出现了机械人和人造人, 例如
–
–
•
中世纪出现了使用巫术或炼金术将意识赋予无生命物质的传说, 例如
–
–
–
•
Jābir ibn Hayyān的Takwin,
Paracelsus的侏儒
Rabbi Judah Loew的Golem.
十九世纪的幻想小说中出现了人造人和会思考的机器之类题材, 例如
–
–
–
–
•
Hephaestus的金色机器人
Pygmalion的Galatea.
Marry Shelley的“弗兰肯斯坦(Frankenstein)”,
Karel Čapek的“R.U.R(Rossum’s Universal Robots,
卢梭的通用机器人)”.
Samuel Butler的“机器中的达尔文(Darwin among the Machines)”一文(1863)探讨了机器通过
自然选择进化出智能的可能性.
至今人工智能仍然是科幻小说的重要元素.
14
自动机器人
• 许多文明中都有创造人形机器人的杰出工匠, 例如
–
–
–
–
偃师(中国西周),
Alexandria的Hero(希腊): 10-70,蒸汽机、风力鼓风机
Al-Jazari(阿拉伯):1136-1206,机器人乐队!
Wolfgang von Kempelen(匈牙利).:1734-1804,the Turk, 下棋机
• 已知最古老的“机器人”是古代埃及和希腊的圣像, 忠实的
信徒认为工匠为这些神像赋予了思想, 使它们具有智慧和激
情.
• Hermes Trismegistus写道, “自从发现神的本原, 人类就能使
之重现.”
15
自动机器人: 偃师
• 《列子汤问》:
• 周穆王西巡狩道,有献工人名偃
师。偃师所造倡者,趣步俯仰,
颔其颐则歌合律,捧其手则舞应
节,千变万化,惟意所适。王以
为实人也,与盛姬内御并观之。
伎将终,倡者瞬其目,而招王之
左右侍妾。王大怒,欲杀偃师。
偃师大慑,立剖散倡者以示王,
皆傅会革木胶漆白黑丹青之所为
16
形式推理
• 人工智能的基本假设是人类的思考过程可以机械化.
• 对于机械化推理(即所谓“形式推理(formal
reasoning)”)的研究已有很长历史.
• 中国, 印度和希腊哲学家均已在公元前的第一个千
年里提出了形式推理的结构化方法. 他们的想法为
后世的哲学家所继承和发展, 其中著名的有
– Aristotle(对三段论逻辑进行了形式分析),
– Euclid(其著作“几何原本”是形式推理的典范),
– al-Khwārizmī(代数学的先驱, “algorithm”一词由他的名
字演变而来)以及
– 欧洲经院哲学家Ockham的William, Duns Scotus等.
17
形式推理
• 马略卡(今西班牙)哲学家Ramon Llull(1232-1315)开发了一些逻辑
“机”, 试图通过逻辑方法获取知识. Llull的机器能够将基本的, 无可
否认的真理通过机械手段用简单的逻辑操作进行组合, 以求生成所有
可能的知识. Llull的工作对Gottfried Leibniz产生了很大影响, 后者进一
步发展了他的思想.
• 在十七世纪中, Leibniz, Thomas Hobbes和René Descartes尝试将理
性的思考系统化为代数学或几何学那样的体系.
• Hobbes在其著作“利维坦(Leviathan, 又译巨灵论)”中有一句名言: “推
理就是计算(reason is nothing but reckoning).”
• Leibniz设想了一种用于推理的普适语言(他的“通用表意文字
(characteristica universalis)”), 能将推理规约为计算, 从而使“哲学家
之间, 就像会计师之间一样, 不再需要争辩. 他们只需拿出铅笔放在石
板上, 然后向对方说(如果想要的话,可以请一位朋友作为证人), 我们开
始算吧.”
• 这些哲学家已经开始明确提出形式符号系统的假设, 而这一假设将成
为AI研究的指导思想.
18
形式推理
•
•
在二十世纪, 数理逻辑研究上的突破使得人工智能好像呼之欲出. 这方面的基础
著作包括Boole的“思维的定律(The Laws of Thought)”与Frege (Friedrich
Ludwig Gottlob Frege,1848 –1925)的“概念文字(Begriffsschrift)”.
基于Frege的系统, Russell(Bertrand Arthur William Russell, 1872-1970)和
Whitehead在他们于1913年出版的巨著“数学原理(Principia Mathematica)”中
对数学的基础给出了形式化描述。
– “理发师悖论”悖论
• 一位理发师说:“我只幫所有不自己刮脸的人刮脸。”那么理发师是否给自己刮脸呢?如
果他给的话,但按照他的话,他就不该给自己刮脸(因為他"只"幫 不自己刮脸的人刮脸);
如果他不给的话,但按照他的话,他就该给自己刮脸(因為是"所有"不自己刮脸的人,包含
了理发师本人),于是矛盾出现了。
– 罗素悖论
• 我们通常希望:任给一个性质,满足该性质的所有类可以组成一个类。但这样的企图将导
致悖论:设性质P(x)表示“x∉x”,现假设由性质P确定了一个类A——也就是说“A={x|x ∉
x}”。那么现在的问题是:A∈A是否成立?首先,若A∈A,则A是A的元素,那么A具有性质P,
由性质P知A∉A;其次,若A∉A,也就是说A具有性质 P,而A是由所有具有性质P的类组成
的,所以A∈A。
•
这一成就激励了David Hilbert, 后者向二十世纪二十和三十年代的数学家提出了
一个基础性的难题: “能否将所有的数学推理形式化?”
19
形式推理
• 这个问题的最终回答由Gödel的不完全性证明,
Turing机和Church (Alonzo Church, 19031995)的Lambda演算给出. 他们的答案令人震
惊:
– 首先, 他们证明了数理逻辑的局限性;
– 其次(这一点对AI更重要), 他们的工作隐含
了任何形式的数学推理都能在这些限制之
下机械化的可能性.
• Church-Turing论题暗示, 一台仅能处理0和1这
样简单二元符号的机械设备能够模拟任意数学
推理过程.
• 这里最关键的灵感是Turing机: 这一看似简单
的理论构造抓住了抽象符号处理的本质. 这一
创造激发科学家们探讨让机器思考的可能.
20
哥德尔不完备定理
• 哥德尔不完备定理是库尔特·哥德尔(Kurt
Gödel 1906—1978)于1931年证明并发
表的两条定理。
• 第一条定理:
• 任何一个相容的数学形式化理论中,只要它强
到足以蕴涵皮亚诺算术公理,就可以在其中构
造在体系中既不能证明也不能否证的命题。
• 第二条定理:
• 任何相容的形式体系不能用于证明它本
身的相容性。
21
歌德尔不完全定理对认知科学哲学的影响
• 罗杰·彭罗斯声称“可被机械地证明的”和“对人类来说看起来是真
的”的这一区别表明人类智能不同于自然的无意识过程。
• 这一观点未被普遍接受,因为正如Marvin Minsky 所指出的,人类智
能有犯错误和理解不相容和谬误句子的能力。
• 但Marvin Minsky透露说库尔特·哥德尔私下告诉他,他相信人类有一
种到达真理的直觉方法,但因为跟计算机式的方法不同,人类可以知
道为真的事情并不受他的定理限制。
• 不完备性的结论影响了数学哲学以及形式化主义(使用形式符号描述
原理)中的一些观点。
– 我们可以将第一定理解释为“我们永远不能发现一个万能的公理系统能
够证明一切数学真理,而不能证明任何谬误”
– 以下对第二定理的另一种说: 如果一个(强度足以证明基本算术公理
的)公理系统可以用来证明它自身的相容性,那么它是不相容的。
22
计算机科学
• 用于计算的机器古已有之;
• 历史上许多数学家(包括上面提到过的Gottfried Leibniz)对
其作出了改进.
• 十九世纪初, Charles Babbage设计了一台可编程计算机
(“分析机”), 但未能建造出来.
• Ada Lovelace预言, 这台机器“将创作出无限复杂, 无限宽
广的精妙的科学乐章”. (她常被认为是第一个程序员, 因
为她留下的一些笔记完整地描述了使用这一机器计算
Bernoulli数的方法.)
• 第一批现代计算机是二战期间建造的大型译码机(包括Z3,
ENIAC和Colossus等). 这些机器的理论基础是Alan Turing
和John Von Neumann提出和发展的学说.
23
人工智能的诞生
• 人工智能的诞生: 1943 – 1956
• 在二十世纪四十和五十年代, 来自不同领域
(数学, 心理学, 工程学, 经济学和政治学)的一
批科学家开始探讨制造人工大脑的可能性.
• 1956年, 人工智能被确立为一门学科.
24
控制论与早期神经网络
• 最初的人工智能研究是三十年代末到五十年代初的一系列科学进展交
汇的产物.
• 神经学研究发现大脑是由神经元组成的电子网络, 其激励电平只存在
“有”和“无”两种状态, 不存在中间状态.
• Norbert Weiner的控制论描述了电子网络的控制和稳定性.
• Claude Shannon提出的信息论则描述了数字信号(即高低电平代表的二
进制信号).
• Alan Turing的计算理论证明数字信号足以描述任何形式的计算. 这些密
切相关的想法暗示了构建电子大脑的可能性.
• 这一阶段的工作包括一些机器人的研发, 例如W. Grey Walter的“乌龟
(turtles)”, 还有“约翰霍普金斯兽”(Johns Hopkins Beast). 这些机器
并未使用计算机, 数字电路和符号推理; 控制它们的是纯粹的模拟电路.
25
控制论与早期神经网络
• Walter Pitts(1923-1969)和Warren
McCulloch(1898-1969)分析了理想化的人工神经
元网络, 并且指出了它们进行简单逻辑运算的机制.
他们是最早描述所谓“神经网络”的学者.
• Marvin Minsky是他们的学生, 当时是一名24岁的
研究生. 1951年他与Dean Edmonds一道建造了第
一台神经网络机, 称为SNARC. 在接下来的五十年
中, Minsky是AI领域最重要的领导者和创新者之一.
• Warren McCulloch and Walter Pitts, "A Logical
Calculus of Ideas Immanent in Nervous Activity",
1943, Bulletin of Mathematical Biophysics 5:115133.
• Jerome Lettvin, Humberto Maturana, Warren
McCulloch, and Walter Pitts, "What the Frog's
Eye Tells the Frog's Brain", 1959, Proceedings of
the Institute of Radic Engineers 47: 1940-1959
26
游戏AI
• 1951年, Christopher Strachey(1916–
1975)使用Manchester大学的Ferranti
Mark 1机器写出了一个西洋棋
(checkers)程序;
• Dietrich Prinz则写出了一个国际象棋程
序.
• Arthur Samuel(1901–1990)在五十年代
中期和六十年代初开发的西洋棋程序的
棋力已经可以挑战具有相当水平的业余
爱好者.
• 游戏AI一直被认为是评价AI进展的一种
标准.
27
Turing测试
• 1950年, Alan Turing发表了一篇划时代的论文, 文中
预言了创造出具有真正智能的机器的可能性.
• 由于注意到“智能”这一概念难以确切定义, 他提出
了著名的Turing测试:
– 如果一台机器能够与人类展开对话(通过电传设备)而不能
被辨别出其机器身份, 那么称这台机器具有智能.
• 这一简化使得Turing能够令人信服地说明“思考的机
器”是可能的. 论文中还回答了对这一假说的各种常
见质疑.
• Turing测试是人工智能哲学方面第一个严肃的提案.
– "Computing machinery and intelligence" (Mind, October
1950)
28
符号推理
与“逻辑理论家”程
序
• 五十年代中期, 随着数字计算机的兴起, 一些科学家直觉地感到可以进
行数字操作的机器也应当可以进行符号操作, 而符号操作可能是人类
思维的本质. 这是创造智能机器的一条新路.
• 1955 年, Allen Newell和(后来荣获Nobel奖的)Herbert Simon在J. C.
Shaw的协助下开发了“逻辑理论家(Logic Theorist)”. 这个程序能够证
明Russell和Whitehead所著“数学原理”前52个定理中的38个, 其中
某些证明比原著更加新颖和精巧.
• Simon认为他们已经“解决了神秘的心/身问题, 解释了物质构成的系
统如何获得心灵的性质.” (这一断言的哲学立场后来被John Searle称
为“强人工智能”, 即机器可以像人一样具有思想.)
29
AI的诞生
• 1956年Dartmouth会议的组织者是Marvin Minsky, John McCarthy
(1927.09.04- 2011.10.24)和另两位资深科学家Claude Shannon以及
Nathan Rochester, 后者来自IBM.
• 会议提出的断言之一是“学习或者智能的任何其他特性的每一个方面
都应能被精确地加以描述, 使得机器可以对其进行模拟.”
• 与会者包括Ray Solomonoff, Oliver Selfridge, Trenchard More, Arthur
Samuel, Allen Newell和Herbert Simon, 他们中的每一位都将在AI研
究的第一个十年中作出重要贡献.
• 会上Newell和Simon讨论了“逻辑理论家”(the Logic Theorist),
• 而McCarthy则说服与会者接受“人工智能”一词作为本领域的名称.
• 1956年Dartmouth会议上AI的名称和任务得以确定, 同时出现了最初
的成就和最早的一批研究者, 因此这一事件被广泛承认为AI诞生的标
志.
30
Dartmouth会议的AI宣言
• The proposal introduction states
– We propose that a 2 month, 10 man study of artificial intelligence be carried
out during the summer of 1956 at Dartmouth College in Hanover, New
Hampshire. The study is to proceed on the basis of the conjecture that every
aspect of learning or any other feature of intelligence can in principle be so
precisely described that a machine can be made to simulate it. An attempt will
be made to find how to make machines use language, form abstractions and
concepts, solve kinds of problems now reserved for humans, and improve
themselves. We think that a significant advance can be made in one or more of
these problems if a carefully selected group of scientists work on it together for
a summer.
• (McCarthy et al. 1955)
– McCarthy, John; Minsky, Marvin; Rochester, Nathan; Shannon, Claude
(1955), A Proposal for the Dartmouth Summer Research Project on
Artificial Intelligence
31
AI的黄金年代: 1956 – 1974
• Dartmouth会议之后的数年是大发现的时代.
• 对许多人而言, 这一阶段开发出的程序堪称神奇:
计算机可以解决代数应用题, 证明几何定理, 学习
和使用英语.
• 当时大多数人几乎无法相信机器能够如此“智
能”. 研究者们在私下的交流和公开发表的论文中
表达出相当乐观的情绪, 认为具有完全智能的机器
将在二十年内出现.
• ARPA (Advanced Research Projects Agency, 高
等研究计划局)等政府机构向这一新兴领域投入了
大笔资金.
32
黄金时代的研究工作
• 从五十年代后期到六十年代涌现了大批成
功的AI程序和新的研究方向.
• 下面列举其中最具影响的几个.
– 搜索式推理
– 自然语言
– 微世界
33
搜索式推理
• 许多AI程序使用相同的基本算法. 为实现一个目标(例如赢得游戏或证
明定理), 它们一步步地前进, 就像在迷宫中寻找出路一般; 如果遇到了
死胡同则进行回溯. 这就是“搜索式推理”.
• 这一思想遇到的主要困难是, 在很多问题中, “迷宫”里可能的线路总
数是一个天文数字(所谓“指数爆炸”).
• 研究者使用启发式算法去掉那些不太可能导出正确答案的支路, 从而
缩小搜索范围.
• Newell和Simon试图通过其“通用解题器(General Problem Solver)”
程序, 将这一算法推广到一般情形.
• 另一些基于搜索算法证明几何与代数问题的程序也给人们留下了深刻
印象, 例如Herbert Gelernter的几何定理证明机(1958)和Minsky的学生
James Slagle开发的SAINT(1961).
• 还有一些程序通过搜索目标和子目标作出决策, 如Stanford为控制机器
人Shakey而开发的STRIPS系统.
34
自然语言
•
•
•
•
•
AI研究的一个重要目标是使计算机能够通过自然语言(例如英语)
进行交流.
早期的一个成功范例是Daniel Bobrow的程序STUDENT, 它能
够解决高中程度的代数应用题.
如果用节点表示语义概念(例如“房子”, “门”), 用节点间的连
线表示语义关系(例如“有 — 一个”), 就可以构造出“语义网
(semantic net)”. 第一个使用语义网的AI程序由Ross Quillian开
发;
而最为成功(也是最有争议)的一个则是Roger Schank的“概念
依存(Conceptual Dependency)”.
Joseph Weizenbaum(1923-2008)的ELIZA是第一个聊天机器
人, 可能也是最有趣的会说英语的程序. 与ELIZA“聊天”的用户
有时会误以为自己是在和人类, 而不是和一个程序, 交谈. 但是
实际上ELIZA根本不知道自己在说什么. 它只是按固定套路作答,
或者用符合语法的方式将问题复述一遍.
35
自然语言
ELIZA: A Dialogue
User:
ELIZA:
Men are all alike.
They’re always bugging us about
something or other.
Well, my boyfriend made me come here.
He says I’m depressed much of the time.
It’s true, I am unhappy.
In what way?
I need some help; that much seems certain.
Perhaps I could learn to get along with my
mother.
My mother takes care of me.
My father.
You are like my father in some days.
Can you think of a specific example?
Your boyfriend made you come here.
I am sorry to hear you are depressed.
Do you think coming here will help you
not to be unhappy?
What would you mean to you if you got
some help?
Tell me more about your family.
Who else in your family takes care of you?
Your father.
What resemblance do you see?
36
微世界
• 六十年代后期, MIT AI实验室的Marvin Minsky和Seymour Papert建议
AI研究者们专注于被称为“微世界”的简单场景. 他们指出在成熟的
学科中往往使用简化模型帮助基本原则的理解, 例如物理学中的光滑
平面和完美刚体.
– 许多这类研究的场景是“积木世界”, 其中包括一个平面, 上面摆放着一
些不同形状, 尺寸和颜色的积木.
• 在 这一指导思想下, Gerald Sussman(研究组长), Adolfo Guzman,
David Waltz(“约束传播(constraint propagation)”的提出者), 特别是
Patrick Winston等人在机器视觉领域作出了创造性贡献.
• 同时, Minsky和Papert制作了一个会搭积木的机器臂, 从而将“积木世
界”变为现实.
• 微世界程序的最高成就是Terry Winograd(1946- )的SHRDLU, 它能用
普通的英语句子与人交流, 还能作出决策并执行操作.
37
SHRDLU
•
Here is an extract from a famous demonstration of SHRDLU (with
messages converted from their original upper case for ease of reading):
– Person: Pick up a big red block.
Computer: OK.
Person: Grasp the pyramid.
Computer: I don't understand which pyramid you mean.
Person (changing their mind): Find a block which is taller than the one you are
holding and put it into the box.
Computer: By "it", I assume you mean the block which is taller than the one I am
holding.
Computer: OK.
Person: What does the box contain?
Computer: The blue pyramid and the blue block.
Person: What is the pyramid supported by?
Computer: The box.
Person: How many blocks are not in the box?
Computer: Four of them.
Person: Is at least one of them narrower than the one which I told you to pick up?
Computer: Yes, the red cube.
etc.
38
乐观思潮
• 第一代AI研究者们曾作出了如下预言:
– 1958年, H. A. Simon, Allen Newell:
• “十年之内, 数字计算机将成为国际象棋世界冠军.”
• “十年之内, 数字计算机将发现并证明一个重要的数学定理.”
– 1965年, H. A. Simon:
• “二十年内, 机器将能完成人能做到的一切工作.”
– 1967年, Marvin Minsky:
• “一代之内… 创造`人工智能’的问题将获得实质上的解决.”
– 1970年, Marvin Minsky (在生命杂志(Life Magazin)上):
• “在三到八年的时间里我们将得到一台具有人类平均智能的机器.”
39
经费
• 1963年六月, MIT从新建立的ARPA(即后来的DARPA, 国防高等研究
计划局)获得了二百二十万美元经费, 用于资助MAC工程, 其中包括
Minsky和McCarthy五年前建立的AI研究组. 此后ARPA每年提供三百
万美元, 直到七十年代为止.
• ARPA还对Newell和Simon在CMU的工作组以及Stanford AI项目(由
John McCarthy于1963年创建)进行类似的资助.
• 另一个重要的AI实验室于1965年由Donald Michie在Edinbugh大学建
立. 在接下来的许多年间, 这四个研究机构一直是AI学术界的研究(和
经费)中心.
• 经费几乎是无条件地提供的: 时任ARPA主任的J. C. R. Licklider相信
他的组织应该“资助人, 而不是项目”, 并且允许研究者去做任何感兴
趣的方向.
• 这导致了MIT无约无束的研究氛围及其hacker文化的形成.
• 但是好景不长.
40
第一次AI低谷: 1974 – 1980
• 到了七十年代, AI开始遭遇批评, 随之而来的还有资金上的
困难.
• AI研究者们对其课题的难度未能作出正确判断: 此前的过
于乐观使人们期望过高, 当承诺无法兑现时, 对AI的资助就
缩减或取消了.
• 同时, 由于Marvin Minsky对感知器的激烈批评, 联结主义
(即神经网络)销声匿迹了十年.
• 七十年代后期, 尽管遭遇了公众的误解, AI在逻辑编程, 常
识推理等一些领域还是有所进展.
41
问题
• 七十年代初, AI遭遇了瓶颈. 即使是最杰出的AI程序也只能解决它们尝
试解决的问题中最简单的一部分, 也就是说所有的AI程序都只是“玩
具”. AI研究者们遭遇了无法克服的基础性障碍. 尽管某些局限后来被
成功突破, 但许多至今仍无法满意地解决.
• 计算机的运算能力. 当时的计算机有限的内存和处理速度不足以解决
任何实际的AI问题. 例如, Ross Quillian在自然语言方面的研究结果只
能用一个含二十个单词的词汇表进行演示, 因为内存只能容纳这么多.
• 1976年Hans Moravec指出, 计算机离智能的要求还差上百万倍. 他做
了个类比: 人工智能需要强大的计算能力, 就像飞机需要大功率动力一
样, 低于一个门限时是无法实现的; 但是随着能力的提升, 问题逐渐会
变得简单.
• 计算复杂性和指数爆炸. 1972年Richard Karp根据Stephen Cook于
1971年提出的定理证明, 许多问题只可能在指数时间内获解(即, 计算
时间与输入规模的幂成正比). 除了那些最简单的情况, 这些问题的解
决需要近乎无限长的时间. 这就意味着AI中的许多玩具程序恐怕永远
也不会发展为实用的系统.
42
问题
• 常识与推理. 许多重要的AI应用, 例如视觉和自然语言, 都需要大量对
世界的认识信息. 程序应该知道它在看什么, 或者在说些什么. 这要求
程序对这个世界具有儿童水平的认识.
• 研究者们很快发现这个要求太高了: 1970年没人能够做出如此巨大的
数据库, 也没人知道一个程序怎样才能学到如此丰富的信息.
• Moravec悖论. 证明定理和解决几何问题对计算机而言相对容易, 而一
些看似简单的任务, 如人脸识别或穿过屋子, 实现起来却极端困难. 这
也是七十年代中期视觉和机器人方面进展缓慢的原因.
• 框架和资格问题. 采取逻辑观点的AI研究者们(例如John McCarthy)发
现, 如果不对逻辑的结构进行调整, 他们就无法对常见的涉及自动规划
(planning or default reasoning)的推理进行表达. 为解决这一问题, 他
们发展了新逻辑学(如非单调逻辑(non-monotonic logics)和模态逻辑
(modal logics)).
43
典型的灾难: 机器翻译
• Warren Weaver (1894-1978)
• 1947年3月,Weaver写信给Norbert Wiener谈论机器翻译
的可行性。
• Andrew Booth和Richard Richens在1948年也做了一些尝
试性的实验。
• 备忘录
• Reproduced in: Locke, W.N. and Booth, A.D. (eds.)
Machine translation of languages: fourteen essays
(Cambridge, Mass.: Technology Press of the
Massachusetts Institute of Technology, 1955), pp. 15-23.
44
典型的灾难: 机器翻译
• 美国1962年8月号的Harper’s Magazine,这期发表了题为
《翻译的困扰》(The trouble with translation) 的文章,作
者 (John A. Kouwenhoven)
– 有几个电子工程师设计了一部自动翻译机,这部机器的词典包含
1500个基础英语词汇和相对应的俄语词汇。他们宣称这部机器可
以马上进行翻译,而且不会犯人工翻译的错误。
– 第一次试验时,观众要求翻译“Out of sight, out of mind”(眼
不见心不烦)这个句子,灯光一阵闪动之後,翻译出来的俄语句子
的意思竟然是“看不见的疯子”(Invisible idiot)。
– 他们觉得这样的谚语式的句子比较难于翻译,于是又给机器翻译
翻译另一个出自圣经的句子“The spirit is willing, but the
flesh is weak”(心有馀而力不足),机器翻译出来的俄语句子
的意思却是“酒保存得很好,但肉已经腐烂”(The liquor is
holding out all right, but the meat has spoiled)。
45
典型的灾难: 机器翻译
• 美国数理逻辑学家巴希勒 (Bar-Hillel) 在1959年就指出,“全自动高
质量的机器翻译”(Fully Automatic, High Quality, MT, 简称 FAHQMT)
是不可能的。
• Bar-Hillel 说明,FAHQMT 不仅在当时的技术水平下是不可能的,而
且,在理论原则上也是不可能的。他举出了如下简单的英语片段,说
明要在上下文中发现多义词 pen 的正确译文是非常困难的事情。
– John was looking for his toy box. Finally he found it. The box was in the
pen. John was very happy.
• 他的理由如下:
– 1. pen 在这里只能翻译为 play-pen(“游戏的围栏”),而绝对不能翻
译为书写工具“钢笔”。
– 2. 要确定 pen 的这个正确的译文是翻译好这段短文的关键所在。
– 3. 而要确定这样的正确译文依赖于计算机对于周围世界的一般知识。
– 4. 但是我们没有办法把这样的知识加到计算机中去。
46
停止拨款
•
由于缺乏进展, 对AI提供资助的机构(如英国政府, DARPA和NRC)对无方向的AI
研究逐渐停止了资助.
– 早在1966年ALPAC(Automatic Language Processing Advisory Committee, 自动语言
处理顾问委员会)的报告中就有批评机器翻译进展的意味, 预示了这一局面的来临.
NRC(National Research Council, 美国国家科学委员会)在拨款二千万美元后停止资助.
– 1973年Lighthill针对英国AI研究状况的报告批评了AI在实现其“宏伟目标”上的完全失
败, 并导致了英国AI研究的低潮(该报告特别提到了指数爆炸问题, 以此作为AI失败的一
个原因).
•
•
•
•
•
DARPA则对CMU的语音理解研究项目深感失望, 从而取消了每年三百万美元的
资助.
到了1974年已经很难再找到对AI项目的资助.
Hans Moravec将批评归咎于他的同行们不切实际的预言: “许多研究者落进了一
张日益浮夸的网中”.
还有一点, 自从1969年Mansfield修正案通过后, DARPA被迫只资助“具有明确任
务方向的研究, 而不是无方向的基础研究”.
六十年代那种对自由探索的资助一去不复返; 此后资金只提供给目标明确的特定
项目, 比如自动坦克, 或者战役管理系统.
47
References to
refuse AI
• ALPAC report
– John R. Pierce, John B. Carroll, et al., Language and
Machines — Computers in Translation and Linguistics.
ALPAC report, National Academy of Sciences,
National Research Council, Washington, DC, 1966.
• Lighthill report
– James Lighthill (1973): "Artificial Intelligence: A
General Survey" in Artificial Intelligence: a paper
symposium, Science Research Council
48
来自大学的批评
• 一些哲学家强烈反对AI研究者的主张.
– 其中最早的一个是John Lucas, 他认为Gödel的不
完全性定理已经证明形式系统(例如计算机程序)不
可能判断某些陈述的真理性, 但是人类可以.
– Hubert Dreyfus(1929- )讽刺六十年代AI界那些未
实现的预言, 并且批评AI的基础假设, 认为人类推
理实际上仅涉及少量“符号处理”, 而大多是具体
的, 直觉的, 下意识的“窍门(know how)”.
– John Searle(1932- )于1980年提出“中文屋子”
实验, 试图证明程序并不“理解”它所使用的符号,
即所谓的“意向性(intentionality)”问题.
– Searle认为, 如果符号对于机器而言没有意义, 那
么就不能认为机器是在“思考”.
49
“中文屋子”实验
•
•
•
•
•
哲学家将人工智能的观点分为两类,弱人工智能和强人工智能,分别
认为机器智能只是一种模拟智能和机器确实可以有真正的智能。
1980年,哲学家西尔勒提出了名为“中文屋子”的假想实验,模拟
图灵测试,用以反驳强人工智能观点。
主要说明某台计算机即使通过了图灵测试,能正确的回答问题,它对
问题仍然没有任何理解,因此不具备真正的智能。
假设:西尔勒博士(扮演计算机中的CPU)在一个封闭的房子里,
有输入和输出缝隙与外部相同。输入的是中文问题,而他对中文一窍
不通。房子内有一本英语的指令手册(相当于程序),从中可以找到
相应的规则。他按照规则办事,把作为答案的中文符号写在纸(相当
于存储器)上,并输出到屋子外面。这样,看起来他能处理输入的中
文问题,并给出正确答案(如同一台计算机通过了图灵测试)。但是,
他对那些 问题毫无理解,不理解其中的任何一个词!
The Chinese Room Argument, part 4 of the September 2, 1999
interview with Searle Philosophy and the Habits of Critical Thinking
in the Conversations With History series
50
来自大学的批评
• AI研究者们并不太把这些批评当回事, 因为它们似乎有些离题, 而计算
复杂性和“让程序具有常识”等问题则显得更加紧迫和严重. 对于实
际的计算机程序而言, “常识”和“意向性”的区别并不明显.
• Minsky提到Dreyfus和Searle时说, “他们误解了, 所以应该忽略”.
• 在MIT任教的Dreyfus遭到了AI阵营的冷遇: 他后来说, AI研究者们“生
怕被人看到在和我一起吃中饭”.
• ELIZA程序的作者Joseph Weizenbaum感到他的同事们对待Dreyfus
的态度不太专业, 而且有些孩子气. 虽然他直言不讳地反对Dreyfus的
论点, 但他“清楚地表明了他们待人的方式不对”.
• Weizenbaum后来开始思考AI相关的伦理问题, 起因是Kenneth Colby
开发了一个模仿医师的聊天机器人DOCTOR, 并用它当作真正的医疗
工具. 二人发生争执;
– 虽然Colby认为Weizenbaum对他的程序没有贡献, 但这于事无补.
– 1976年Weizenbaum出版著作“计算机的力量与人类的推理(Computer
Power and Human Reason)”, 书中表示人工智能的滥用可能损害人类生
命的价值.
51
感知器与联结主义遭到冷落
•
•
•
•
感知器是神经网络的一种形式, 由Frank Rosenblatt(1928-1971)于1958年提出.
Rosenbllatt和Marvin Minsky二人曾是Bronx科学高中的校友. 与多数AI研究者一样,
他对这一发明的潜力非常乐观, 预言说“感知器最终将能够学习, 作出决策和翻译语
言”.
整个六十年代里这一方向的研究工作都很活跃.
1969年Minsky和 Papert(Seymour Papert,1928- )出版了著作“感知器
(Perceptrons)”, 书中暗示感知器具有严重局限, 而Frank Rosenblatt的预言过于夸张.
– 这本书的影响是破坏性的: 联结主义的研究因此停滞了十年.
•
后来新一代研究者使这一领域获得重生, 并使其成为人工智能中的重要部分; 遗憾的
是Rosenblatt没能看到这些, 他在“感知器”一书问世后不久即因游船事故去世.
52
“简约派(the neats)”:
逻辑, Prolog语言和专家系统
• 1958年, John McCarthy发明了LISP语言。
• 1958年, John McCarthy提出了名为“纳谏者(Advice Taker)”
的一个程序构想, 将逻辑学引入了AI研究界.
– McCarthy, John, Programs with common sense, Symposium on
Mechanization of Thought Processes. National Physical Laboratory,
Teddington, England, 1958.
• 1963年, J. Alan Robinson发现了在计算机上实现推理的简
单方法: 归结(resolution)与合一(unification)算法.
• 然而, 根据六十年代末McCarthy和他的学生们的工作, 对这
一想法的直接实现具有极高的计算复杂度: 即使是证明很简
单的定理也需要天文数字的步骤.
53
“简约派(the neats)”:
逻辑, Prolog语言和专家系统
• 七十年代Robert Kowalsky在Edinburgh大学的工作则更具成效: 法国学
者Alain Colmerauer和Phillipe Roussel在他的合作下开发出成功的逻
辑编程语言Prolog.
• Prolog使用计算较为易控(tractable)的逻辑子集(Horn子句, 与“规则”
或“产生规则”密切相关).
• 规则的使用影响深远, 为Edward Feigenbaum的“专家系统”奠定了基
础.
• Alan Newell和Herbert Simon的后续工作导致了SOAR(一种认知结构)
和“统一认知理论(unified theories of cognition)”的出现.
• Dreyfus等人针对逻辑方法的批评观点认为, 人类在解决问题时并没有
使用逻辑运算. 心理学家Peter Wason, Eleanor Rosch, Amos Tversky,
Daniel Kahneman等人的实验证明了这一点. McCarthy则回应说, 人类
怎么思考是无关紧要的: 真正想要的是解题机器, 而不是模仿人类进行
思考的机器.
54
“芜杂派(the scruffies)”: 框架和脚本
• 对McCarthy的做法持批评意见的还有他在MIT的同行们.
• Marvin Minsky, Seymour Papert和Roger Schank等试图
让机器像人一样思考, 使之能够解决“理解故事”和“目
标识别”一类问题.
• 为了使用“椅子”, “饭店”之类最基本的概念, 他们需要
让机器像人一样作出一些非逻辑的假设. 不幸的是, 这些不
精确的概念难以用逻辑进行表达.
• Gerald Sussman注意到, “使用精确的语言描述本质上不
精确的概念, 并不能使它们变得精确起来”.
• Schank用“芜杂(scruffy)”一词描述他们这一“反逻辑”的
方法, 与McCarthy, Kowalski, Feigenbaum, Newell和
Simon等人的“简约(neat)”方案相对.
55
“芜杂派(the scruffies)”: 框架和脚本
• 在1975年的一篇开创性论 文中, Minsky注意到与他共事的
“芜杂派”研究者在使用同一类型的工具, 即用一个框架
囊括所有相关的常识性假设.
– 例如, 当我们使用“鸟”这一概念时, 脑中会立即浮现出一系列相
关事实, 如会飞, 吃虫子, 等等.
– 我们知道这些假设并不一定正确, 使用这些事实的推理也未必符合
逻辑, 但是这一系列假设组成的结构正是我们所想和所说的一部分.
他把这个结构称为“框架(frames)”.
• Schank使用了“框架”的一个变种, 他称之为“脚本
(scripts)”, 基于这一想法他使程序能够回答关于一篇英语
短文的提问.
• 多年之后的面向对象编程采纳了AI“框架”研究中的“继
承(inheritance)”概念.
56
繁荣: 1980 – 1987
• 在八十年代, 一类名为“专家系统”的
AI程序开始为全世界的公司所采纳, 而
“知识处理”成为了主流AI研究的焦
点.
• 日本政府在同一年代积极投资AI以促
进其第五代计算机工程.
• 八十年代早期另一个令人振奋的事件
是John Hopfield(1933- )和David
Rumelhart使联结主义重获新生.
• AI再一次获得了成功.
57
专家系统获得赏识
• 专家系统是一种程序, 能够依据一组从专门知识中推演出的逻辑规则
在某一特定领域回答或解决问题.
• 最早的示例由Edward Feigenbaum(1936- )和他的学生们开发.
• 1965年起设计的Dendral能够根据分光计读数分辨混合物.
• 1972年设计的MYCIN能够诊断血液传染病. 它们展示了这一方法的威
力.
• 专家系统仅限于一个很小的知识领域, 从而避免了常识问题; 其简单
的设计又使它能够较为容易地编程实现或修改.
• 总之, 实践证明了这类程序的实用性. 直到现在AI才开始变得实用起
来.
58
专家系统获得赏识
• 1980年CMU为DEC(Digital Equipment
Corporation, 数字设备公司)设计了一个名为
XCON的专家系统, 这是一个巨大的成功 — 在
1986年之前, 它每年为公司省下四千万美元.
• 全世界的公司都开始研发和应用专家系统, 到
1985年它们已在AI上投入十亿美元以上, 大部分
用于公司内设的AI部门.
• 为之提供支持的产业应运而生, 其中包括
Symbolics, Lisp Machines等硬件公司和
IntelliCorp, Aion等软件公司.
59
知识革命
• 专家系统的能力来自于它们存储的专业知识. 这是七十年
代以来AI研究的一个新方向.
• Pamela McCorduck在书中写道,
– “不情愿的AI研究者们开始怀疑, 因为它违背了科学研究中对最简
化的追求. 智能可能需要建立在对分门别类的大量知识的多种处理
方法之上.”
– “七十年代的教训是智能行为与知识处理关系非常密切. 有时还需
要在特定任务领域非常细致的知识.”
• 知识库系统和知识工程成为了八十年代AI研究的主要方向.
• 第一个试图解决常识问题的程序Cyc也在八十年代出现,
其方法是建立一个容纳一个普通人知道的所有常识的巨型
数据库. 发起和领导这一项目的Douglas Lenat认为别无捷
径, 让机器理解人类概念的唯一方法是一个一个地教会它
们. 这一工程几十年也没有完成.
60
重获拨款: 第五代工程
• 1981年, 日本经济产业省拨款八亿五千万美元支
持第五代计算机项目. 其目标是造出能够与人对话,
翻译语言, 解释图像, 并且像人一样推理的机器. 令
“芜杂派”不满的是, 他们选用Prolog作为该项目
的主要编程语言.
• 其他国家纷纷作出响应.
– 英国开始了耗资三亿五千万英镑的Alvey工程.
– 美国一个企业协会组织了MCC(Microelectronics and
Computer Technology Corporation, 微电子与计算机技
术集团), 向AI和信息技术的大规模项目提供资助.
– DARPA也行动起来, 组织了战略计算促进会(Strategic
Computing Initiative), 其1988年向AI的投资是1984年
的三倍.
61
联结主义的重生
• 1982年, 物理学家John Hopfield证明一种新型的神经网络
(现被称为“Hopfield网络”)能够用一种全新的方式学习和
处理信息.
• 大约在同时(早于Paul Werbos), David Rumelhart (1942- )
推广了“反向传播算法(back propagation)”, 一种神经网络
训练方法. 这些发现使1970年以来一直遭人遗弃的联结主义
重获新生.
• 1986年由Rumelhart和心理学家James McClelland主编的
两卷本论文集“分布式并行处理”问世, 这一新领域从此得
到了统一和促进.
• 九十年代神经网络获得了商业上的成功, 它们被应用于光学
字符识别和语音识别软件.
62
第二次AI低谷: 1987 – 1993
• 八十年代中商业机构对AI的追捧与冷落符合
经济泡沫的经典模式, 泡沫的破裂也在政府
机构和投资者对AI的观察之中.
• 尽管遇到各种批评, 这一领域仍在不断前进.
– 来自机器人学这一相关研究领域的Rodney
Brooks和Hans Moravec提出了一种全新的人
工智能方案.
63
AI之冬
• “AI之冬(AI winter)”一词由经历过1974年经费削减的研究
者们创造出来. 他们注意到了对专家系统的狂热追捧, 预计
不久后人们将转向失望. 事实被他们不幸言中: 从八十年代
末到九十年代初, AI遭遇了一系列财政问题.
• 变天的最早征兆是1987年AI硬件市场需求的突然下跌.
Apple和IBM生产的台式机性能不断提升, 到1987年时其性
能已经超过了Symbolics和其他厂家生产的昂贵的Lisp机.
老产品失去了存在的理由: 一夜之间这个价值五亿美元的
产业土崩瓦解.
• XCON 等最初大获成功的专家系统维护费用居高不下. 它
们难以升级, 难以使用, 脆弱(当输入异常时会出现莫名其
妙的错误), 成了以前已经暴露的各种各样的问题(例如资格
问题(qualification problem))的牺牲品. 专家系统的实用性
仅仅局限于某些特定情景.
64
AI之冬
• 到了八十年代晚期, 战略计算促进会大幅削减对AI的
资助.
– DARPA的新任领导认为AI并非“下一个浪潮”, 拨款将倾
向于那些看起来更容易出成果的项目.
• 1991年人们发现十年前日本人宏伟的“第五代工程”
并没有实现.
– 事实上其中一些目标, 比如“与人展开交谈”, 直到2010
年也没有实现.
• 与其他AI项目一样, 期望比真正可能实现的要高得多.
65
躯体的重要性:
Nouvelle AI与嵌入式推理
• 八十年代后期, 一些研究者根据机器人学的成就提出了一
种全新的人工智能方案. 他们相信, 为了获得真正的智能,
机器必须具有躯体 – 它需要感知, 移动, 生存, 与这个世界
交互. 他们认为这些感知运动技能对于常识推理等高层次
技能是至关重要的, 而抽象推理不过是人类最不重要, 也最
无趣的技能(参见Moravec悖论). 他们号召“自底向上”地
创造智能, 这一主张复兴了从六十年代就沉寂下来的控制
论.
• 另一位先驱是在理论神经科学上造诣深厚的David Marr,
他于七十年代来到MIT指导视觉研究组的工作. 他排斥所有
符号化方法(不论是McCarthy的逻辑学还是Minsky的框架),
认为实现AI需要自底向上地理解视觉的物理机制, 而符号
处理应在此之后进行. (1980年, 因为白血病, Marr的工作
减少了.)
66
躯体的重要性:
Nouvelle AI与嵌入式推理
• 在发表于1990年的论文“大象不玩象棋
(Elephants Don’t Play Chess)”中, 机器人研究者
Rodney Brooks提出了“物理符号系统假设”, 符
号是可有可无的, 因为
– “这个世界就是描述它自己最好的模型. 它总是最新的.
它总是包括了需要研究的所有细节. 诀窍在于正确地、
足够频繁地感知它.”
• 在八十和九十年代也有许多认知科学家反对基于
符号处理的智能模型, 认为躯体是推理的必要条件,
这一理论被称为“嵌入式认知(embodied
mind/reason/cognition)”论题.
67
AI: 1993 – 现在
• 现已年过半百的AI终于实现了它最初的一些目标. 它已被
成功地用在技术产业中, 不过有时是在幕后.
• 这些成就有的归功于计算机性能的提升, 有的则是在高尚
的科学责任感驱使下对特定的课题不断追求而获得的.
• 不过, 至少在商业领域里AI的声誉已经不如往昔了.
• “实现人类水平的智能”这一最初的梦想曾在六十年代令
全世界的想象力为之着迷, 其失败的原因至今仍众说纷纭.
• 各种因素的合力将AI拆分为各自为战的几个子领域, 有时
候它们甚至会用新名词来掩饰“人工智能”这块被玷污的
金字招牌.
• AI比以往的任何时候都更加谨慎, 却也更加成功.
68
里程碑和Moore定律
• 1997年五月十一日, 深蓝成为战胜国际象棋世界冠军
Garry Kasparov的第一个计算机系统.
• 2005年, Stanford开发的一台机器人在一条沙漠小径上成
功地自动行驶了131英里, 赢得了DARPA挑战大赛头奖.
• 2009年, 蓝脑项目(Blue Brain Project)声称已经成功地模
拟了部分鼠脑.
• 这些成就的取得并不是因为范式上的革命. 它们仍然是工
程技术的复杂应用, 但是计算机性能已经今非昔比了. 事实
上, 深蓝计算机比Christopher Strachey在1951年用来下棋
的Ferranti Mark 1快一千万倍.
• 这种剧烈增长可以用Moore定律描述: 计算速度和内存容
量每两年翻一番. 计算性能上的基础性障碍已被逐渐克服.
69
智能代理
• 九十年代, 被称为“智能代理(intelligent agents)”的新范式被广泛接受.
尽管早期研究者提出了模块化的分治策略, 但是直到Judea Pearl,
Alan Newell等人将一些概念从决策理论和经济学中引入AI之后现代智
能代理范式才逐渐形成. 当经济学中的“理性代理(rational agent)”与
计算机科学中的“对象”或“模块”相结合, “智能代理”范式就完善
了.
• 智能代理是一个系统, 它感知周围环境, 然后采取措施使成功的几率最
大化. 最简单的智能代理是解决特定问题的程序. 已知的最复杂的智能
代理是理性的, 会思考的人类.
• 智能代理范式将AI研究定义为“对智能代理的学习”. 这是对早期一
些定义的推广: 它超越了研究人类智能的范畴, 涵盖了对所有种类的智
能的研究.
• 这一范式让研究者们通过学习孤立的问题找到可证的并且有用的解答.
它为AI各领域乃至经济学, 控制论等使用抽象代理概念的领域提供了
描述问题和共享解答的一种通用语言.
• 人们希望能找到一种完整的代理架构(像Newell的SOAR那样), 允许研
究者们应用交互的智能代理建立起通用的智能系统.
70
“简约派”的胜利
• 越来越多的AI研究者们开始开发和使用复杂的数学工具.
• 人们广泛地认识到, 许多AI需要解决的问题已经成为数学,
经济学和运筹学领域的研究课题. 数学语言的共享不仅使
AI可以与其他学科展开更高层次的合作, 而且使研究结果
更易于评估和证明.
• AI已成为一门更严格的科学分支. Russell和Norvig(2003)
将这些变化视为一场“革命”和“简约派的胜利”.
• Judea Pearl发表于1988年的名著将概率论和决策理论引
入AI.
• 现已投入应用的新工具包括Bayesian网络, 隐Markov模型,
信息论, 随机模型和经典优化理论. 针对神经网络和进化算
法等“计算智能”范式的精确数学描述也被发展出来.
71
幕后的AI
• AI研究者们开发的算法开始变为较大的系统的一部分.
• AI曾经解决了大量的难题, 这些解决方案在产业界起到了重要作用.
• 应用了AI技术的有数据挖掘, 工业机器人, 物流, 语音识别, 银行业软件,
医疗诊断和Google搜索引擎等.
• AI 领域并未从这些成就之中获得多少益处. AI的许多伟大创新仅被看
作计算机科学工具箱中的一件工具.
• Nick Bostrom解释说, “很多AI的前沿成就已被应用在一般的程序中, 不
过通常没有被称为AI. 这是因为, 一旦变得足够有用和普遍, 它就不再
被称为AI了.”
• 今天的许多AI研究者故意用其他一些名字称呼他们的工作, 例如信息
学, 知识系统, 认知系统或计算智能. 部分原因是他们认为他们的领域
与AI存在根本的不同, 不过新名字也有利于获取经费.
• 至少在商业领域, 导致AI之冬的那些未能兑现的承诺仍然困扰着AI研
究, 正如New York Times在2005年的一篇报道所说: “计算机科学家和
软件工程师们避免使用人工智能一词, 因为怕被认为是在说梦话.”
72
HAL 9000在哪里?
• 1968年Arthur C. Clarke和Stanley Kubrick创作的“2001: 太空漫游”
中设想2001年将会出现达到或超过人类智能的机器. 他们创造的这一
名为HAL-9000的角色是以科学事实为依据的: 当时许多顶极AI研究者
相信到2001年这样的机器会出现.
• “那么问题是, 为什么在2001年我们并未拥有HAL呢?” Marvin Minsky
问道.
• Minsky认为, 问题的答案是绝大多数研究者醉心于钻研神经网络和遗
传算法之类商业应用, 而忽略了常识推理等核心问题.
• 另一方面, John McCarthy则归咎于资格问题(qualification problem).
• Ray Kurzweil相信问题在于计算机性能, 根据Moore定律, 他预测具有
人类智能水平的机器将在2029年出现.
• Jeff Hawkins认为神经网络研究忽略了人类大脑皮质的关键特性, 而简
单的模型只能用于解决简单的问题. 还有许多别的解释, 每一个都对应
着一个正在进行的研究计划.
73
人工智能的学术活动
杰出人物
20世纪40位图灵奖获得者中有6位人工智能学者:
Marvin Minsky(1969年)
John McCarthy(1971年)
Herbert Simon和Allen Newell(1975年)
Edward Feigenbaum和Raj Reddy (1994年)
可见人工智能学科在信息科学中的地位。
75
重要会议
1969年第一届国际人工智能联合会议
(International Joint Conference on AI)召
开, 此后每两年开一次,成为人工智能界最
高级别的学术盛会
1979年成立美国人工智能联合会(American
Association for Artificial Intelligence),
2010年是第24届会议
76
重要刊物
1970年起,IJCAI定期出版:
《International Journal of AI》
1979年起,AAAI定期出版:
《AI Magazine》,
77
国内重要会议
1981年成立中国人工智能学会(CAAI)
2010年8月召开第16届全国人工智能学术年
会(CAAI—16)。
1989年首次召开中国人工智能控制联合会
议(CJCAI),至今也已召开7次。
78
强人工智能和弱人工智能
• 人工智能的一个比较流行的定义,也是该领域较早的定义,
是由当时麻省理工学院的约翰·麦卡锡在1956年的达特矛
斯会议上提出的:
– 人工智能就是要让机器的行为看起来就像是人所表现出的智能行
为一样。
• 但是这个定义似乎忽略了强人 工智能的可能性。
• 另一个定义指人工智能是人造机器所表现出来的智能。总
体来讲,目前对人工智能的定义大多可划分为四类,即
–
–
–
–
机器“像人一样思考”、
“像人一样行动”、
“理性地思考”
“理性地行动”。这里“行动”应广义地理解为采取行动,或制
定行动的决策,而不是肢体动作。
79
强人工智能
• 强人工智能观点认为
– 有可能制造出真正能推理(Reasoning)和解决问题
(Problem solving)的智能机器,并且,这样的机器
能将被认为是有知觉的,有自我意识的。
• 强人工智能可以有两类:
– 类人的人工智能,即机器的思考和推理就像人的思维
一样。
– 非类人的人工智能,即机器产生了和人完全不一样的
知觉和意识,使用和人完全不一样的推理方式。
80
弱人工智能
• 弱人工智能观点认为
– 不可能制造出能真正地推理和解决问题的智能机器,
这些机器只不过看起来像是智能的,但是并不真正拥
有智能,也不会有自主意识。
• 强人工智能的研究目前处于停滞不前的状态下。
人工智能研究者不一定同意弱人工智能,也不一
定在乎或者了解强人工智能和弱人工智能的内容
与差别。
• 就现下的人工智能研究领域来看,研究者已大量
造出看起来像是智能的机器,取得相当丰硕的理
论上和实质上的成果。
81
对强人工智能的哲学争论
• “强人工智能”一词最初是John Rogers Searle针对计算机和其它信息
处理机器创造的,其定义为:
– “强人工智能观点认为计算机不仅是用来研究人的思维的一种工具;相
反,只要运行适当的程序,计算机本身就是有思维的。”
– (J Searle in Minds Brains and Programs. The Behavioral and Brain
Sciences, vol. 3, 1980)
• 关于强人工智能的争论,不同于更广义的一元论和二元论的争论。其
争论要点是:
– 如果一台机器的唯一工作原理就是转换编码数据,那么这台机器是不是
有思维的?
• Searle认为这是不可能的。他举了个中文房间的例子来说明,如果机
器仅仅是转换数据,而数据本身是对某些事情的一种编码表现,那么
在不理解这一编码和这实际事情之间的对应关系的前提下,机器不可
能对其处理的数据有任何理解。
• 基于这一论点,Searle认为即使有机器通过了图灵测试,也不一定说
明机器就真的像人一样有思维和意识。
82
对强人工智能的哲学争论
•
也有哲学家持不同的观点。
– Daniel C. Dennett 在其著作 Consciousness Explained 里认为,人也不过是一台
有灵魂的机器而已,为什么我们认为:“人可以有智能,而普通机器就不能”呢?
他认为像上述的数据转换机器是有可能有思维和意识的。
•
有的哲学家认为如果弱人工智能是可实现的,那么强人工智能也是可实现的。
– 比如Simon Blackburn在其哲学入门教材 Think 里说道,一个人的看起来是“智能”
的行动并不能真正说明这个人就真的是智能的。我永远不可能知道另一个人是否
真的像我一样是智能的,还是说她/他仅仅是看起来是智能的。
•
基于这个论点,既然弱人工智能认为可以令机器看起来像是智能的,那就不
能完全否定这机器是真的有智能的。
– Blackburn 认为这是一个主观认定的问题。
•
需要指出的是,弱人工智能并非和强人工智能完全对立,也就是说,即使强
人工智能是可能的,弱人工智能仍然是有意义的。至少,今日的计算机能做
的事,像算术运算等,在百多年前是被认为很需要智能的。
83
高速计算和知识等效
AI is Computation with Knowledge
• A Negative Example: inefficient fingerprint
identification
• Without any existing knowledge, fingerprint
identification has to be formulated as a complete
searching task
– Store so many patterns, 264, and search for a match
among them!
85
典型的例子:博弈
• 对于人工智能研究而言, 人机对弈相当于遗传学研究中的果
蝇的重要作用。
• 普遍认为下棋是一项智力活动,具有下列基本特征:
– 规则和胜负判定标准都简单明确,不包含任何偶然性。
– 问题的状态(即局面)数量在数学意义上是有限的(尽管庞大!)。
– 问题的解决不需要过多的知识(但是还是需要知识!)。
86
有效的计算的两个要素
• 知识
• 高速计算
87
博弈论:数学
博弈论
•
•
•
•
•
博弈论(Game Theory),有时也称为对策论,或者赛局理论,应用数学的
分支:处理竞争与合作问题的数学决策方法和理论。
表面上不同的相互作用可能表现出相似的激励结构(incentive structure),所
以它们是同一个游戏的特例。博弈论主要研究公式化了的激励结构(游戏或
者博弈(Game))间的相互作用。
博弈论考虑游戏中的个体的预测行为和实际行为,研究博弈行为中斗争各方
是否存在着最合理的行为方案,以及如何找到这个合理的行为方案的数学理
论和方法。
具有竞争或对抗性质的行为成为博弈行为。在这类行为中,参加斗争或竞争
的各方各自具有不同的目标或利益。为了达到各自的目标和利益,各方必须
考虑对手的各种可能的行动方案,并力图选取对自己最为有利或最为合理的
方案。比如日常生活中的下棋,打牌等。
目前在生物学、经济学、国际关系、计算机科学、政治学、军事战略和其他
很多学科都有广泛的应用。
– 生物学家使用博弈理论来理解和预测演化(论)的某些结果。如,John Maynard
Smith 和George R. Price 在1973年发表于《自然》杂志上的论文中提出的
“evolutionarily stable strategy”的这个概念就是使用了博弈理论。
89
数学
•
•
•
•
•
•
近代博弈论研究,始于策墨洛(Zermelo),波莱
尔(Borel)及冯·诺伊曼(von Neumann)。
1913年,数学家策墨洛(E.Zermelo)在第五届国
际数学会议上发表了《关于集合论在象棋博弈理论
中的应用》(On an Application of Set Theory
to Game of Chess)
1928年,冯·诺依曼证明了博弈论的基本原理,从
而宣告了博弈论的正式诞生。
1944年,冯·诺依曼和摩根斯坦共著《博弈论与经
济行为》将二人博弈推广到n人博弈结构并将博弈
论系统的应用于经济领域,从而奠定了这一学科的
基础和理论体系。
1950~1951年,约翰·福布斯·纳什(John Forbes
Nash Jr,1928-)利用不动点定理证明了均衡点的
存在,为博弈论的一般化奠定了坚实的基础。
– 纳什的开创性论文《n人博弈的均衡点》
(1950),《非合作博弈》(1951)等等,给
出了纳什均衡的概念和均衡存在定理。
此外,塞尔顿(R·Selten) 、哈桑尼的研究也对博
弈论发展起到推动作用。
90
分类
• 博弈的分类根据不同的基准有不同的分类。
• 博弈主要可以分为合作博弈和非合作博弈。
– 合作博弈和非合作博弈的区别在于相互发生作用的当事人之间有没有一个
具有约束力的协议,如果有,就是合作博弈,如果没有,就是非合作博弈。
• 从行为的时间序列性,博弈论进一步分为静态博弈、动态博弈两类:
– 静态博弈是指在博弈中,参与人同时选择或虽非同时选择但后行动者并不
知道先行动者采取了什么具体行动;
– 动态博弈是指在博弈中,参与人的行动有先后顺序,且后行动者能够观察
到先行动者所选择的行动。
– 通俗的理解:"囚徒困境"就是同时决策的,属于静态博弈;而棋牌类游戏等
决策或行动有先后次序的,属于动态博弈
• 按照参与人对其他参与人的了解程度分为完全信息博弈和不完全信息
博弈。
– 完全博弈是指在博弈过程中,每一位参与人对其他参与人的特征、策略空
间及收益函数有准确的信息。
– 不完全信息博弈是指如果参与人对其他参与人的特征、策略空间及收益函
数信息了解的不够准确、或者不是对所有参与人的特征、策略空间及收益
函数都有准确的信息。
91
分类
• 目前经济学家们现在所谈的博弈论一般是指非合作博弈,由于合作博
弈论比非合作博弈论复杂,在理论上的成熟度远不如非合作博弈论。
• 非合作博弈及相对应的均衡概念为:
– 完全信息静态博弈:纳什均衡(Nash equilibrium),
– 完全信息动态博弈:子博弈精炼纳什均衡(subgame perfect Nash
equilibrium),
– 不完全信息静态博弈:贝叶斯纳什均衡(Bayesian Nash equilibrium),
– 不完全信息动态博弈:精炼贝叶斯纳什均衡(perfect Bayesian Nash
equilibrium)。
• 博弈论还有其他分类,如:
– 以博弈进行的次数或者持续长短可以分为有限博弈和无限博弈;
– 以表现形式也可以分为一般型(战略型)或者展开型,等等。
92
要素
•
•
•
•
•
(1)局中人(players):在博弈中,每一个有决策权的参与者成为一个局中人。
只有两个局中人的博弈称为“两人博弈”,而多于两个局中人则称为 “多人博
弈”。
(2)策略(strategiges):一局博弈中,每个局中人都有选择实际可行的完整的行动
方案,即方案不是某阶段的行动方案,而是指导整个行动的一个方案,一个局中
人的一个可行的自始至终全局筹划的一个行动方案,称为这个局中人的一个策略。
如果在一个博弈中局中人都总共有有限个策略,则称为“有限博弈”,否则称为
“无限博弈”。
(3)得失(payoffs):一局博弈结局时的结果称为得失。每个局中人在一局博弈结束
时的得失,不仅与该局中人自身所选择的策略有关,而且与全局中人所取定的一
组策略有关。所以,一局博弈结束时每个局中人的“得失”是全体局中人所取定
的一组策略的函数,通常称为支付(payoff)函数。
(4)次序(orders):各博弈方的决策有先后之分,且一个博弈方要作不止一次的
决策选择,就出现了次序问题;其他要素相同次序不同,博弈就不同。
(5)博弈涉及到均衡:均衡是平衡的意思,在经济学中,均衡意即相关量处于稳
定值。在供求关系中,某一商品市场如果在某一价格下,想以此价格买此商品的
人均能买到,而想卖的人均能卖出,此时我们就说,该商品的供求达到了均衡。
所谓纳什均衡就是一个稳定的博弈结果。
93
囚徒困境
•
1950年,由就职于兰德公司的梅里尔·弗勒德(Merrill Flood)和梅尔文·德雷
希尔(Melvin Dresher)拟定出相关困境的理论,后来由顾问艾伯特·塔克
(Albert Tucker)以囚徒方式阐述,并命名为“囚徒困境”。
•
经典的囚徒困境如下:
– 警方逮捕甲、乙两名嫌疑犯,但没有足够证据指控二人有罪。于是警方分开囚禁嫌
疑犯,分别和二人见面,并向双方提供以下相同的选择:
• 若一人认罪并作证检控对方(相关术语称“背叛”对方),而对方保持沉默,此人将即时
获释,沉默者将判监10年。
• 若二人都保持沉默(相关术语称互相“合作”),则二人同样判监半年。
• 若二人都互相检举(互相“背叛”),则二人同样判监2年。
•
•
•
•
表格概述如下:
乙沉默(合作)
乙认罪(背叛)
甲沉默(合作)
甲认罪(背叛)
二人同服刑半年
甲即时获释;乙服刑10年
甲服刑10年;乙即时获释 二人同服刑2年
94
人机博弈
史前
•
1769年,匈牙利工程师Baron
Wolfgang von Kempelen为奥地利皇后
做了一台会下国际象棋的机器来消遣。
•
这是一个外形呆板的机械装置,不过它
的出色棋力来自一名巧妙地藏在机器里
的象棋高手。
•
所以这台会下棋的“机器”是个冒牌货。
• The turk
96
Turing
•
•
•
第一个棋弈程序写于电脑被真正发明之前,这是一个难以置信但有趣的事实。
Alan Turing对国际象棋也非常感兴趣,不过他尽管智力超群并且下了很大工夫
在学棋上,他还是一个蹩脚的棋手。
二战结束不久,他就写下了能够让机器下棋的算法。 最终由Alick Glennie实现
并验证。
•
图灵的“纸上机器” vs Alick Glennie (1925-2003)
– 曼彻斯特 1952
– 1.e4 e5 2.Nc3 Nf6 3.d4 Bb4 4.Nf3 d6 5.Bd2 Nc6 6.d5 Nd4 7.h4 Bg4 8.a4
Nxf3+ 9.gxf3 Bh5 10.Bb5+ c6 11.dxc6 0-0 12.cxb7 Rb8 13.Ba6 Qa5
14.Qe2 Nd7 15.Rg1 Nc5 16.Rg5 Bg6 17.Bb5 Nxb7 18.0-0-0 Nc5 19.Bc6
Rfc8 20.Bd5 Bxc3 21.Bxc3 Qxa4 22.Kd2? [22.h5 本可得象] 22...Ne6
23.Rg4 Nd4? [23...Rxb2! 24.Bxb2 Rxc2+] 24.Qd3 Nb5 25.Bb3 Qa6
26.Bc4 Bh5 27.Rg3 Qa4 28.Bxb5 Qxb5 29.Qxd6 Rd8 0-1.
•
Glennie是第一个编译器 autocode的作者。
97
Shannon
• 贝尔实验室的香龙(Claude Shannon)也在探索教
电脑下棋,发表第一篇人机对弈的论文
– "Programming a Computer for Playing Chess"
Philosophical Magazine, Series 7, Vol. 41 (No.
314, March 1950).
• 他认识到问题在于棋步数量大得可怕,因此把搜
索所有棋步的“A策略”和剔除某些变化路线的
“B策略”区分开来。
98
Neumann
• 1946年美籍匈牙利数学家约翰·冯·诺依曼(John
von Neumann)被指派设计一台强大的计算机器
以加快核武器设计工作的进度。
• 1950年,“MANIAC一号”的巨型机被交付使
用,它内装有数千个电子管和开关,每秒能执
行10,000条指令。它也可以编程。
• 1956年,Stan Ulam领导的小组编写了一个下
棋程序。在一个缩小的6x6棋盘上,没有象。但
程序搜索四层的深度就要12分钟,如果加上象,
就需要3个小时。
• 50年代中期,这台机器下了三局棋。第一局是
自己对自己,白胜。第二局是对一位让王后的
强棋手,这局棋进行了10个小时,结果人类大
师胜。第三局机器的对手是一位刚学棋一个星
期的的小姑娘,结果程序23回合得胜。这可能
是在智力博弈中人类首次负于电脑。
99
象棋和数学
• 程序下棋遇到的主要难题是所包含的棋步数量实在太多。
– 平均每个局面大约有40步符合规则的着法。如果你对每步着法都考虑应
着就会遇到40 x 40 = 1600个局面。这意味着两层(一层为半步棋)之后,
单一步棋就会出现1600个不同的局面,而两步之后是250万个,三步之后
是41亿个。平均一局棋大约走40步,于是所有可能局面就有10的128次
方个,这个数字远远多于已知宇宙世界的原子总数目(大约10的80次方)!
• 显然没有一台机器可以搜索全部可能的着法来下棋,但人类也不行!
• 使用纯粹的计算策略:
– 唯一的问题是机器要达到人类的策略水平,需要搜索多深的深度。
– 早期的电脑可以每秒产生和评价大约500个局面,或者在比赛中三分钟内
对每步计算90,000个可能。意思就是它们仅能搜索三层的深度(即一步半),
这是很低的水平了,相当于新手。
– 要搜索多一层需要每秒计算大约15,000个局面,也就是要快30倍。但即
使能搜索四层也很浅薄。
• 知识?
100
计算代价的比较
以10位指数的底
国际象棋
中国象棋
将棋
围棋
空间复杂度
时间复杂度
50
52
71
160
123
150
226
400
101
中国象棋和国际象棋
102
跳棋
• Arthur L. Samuel (1901 –1990)的跳棋程序运行
于IBM704—— 用电子管组装的大型通用电子计
算机。
• 该程序可以记住17500张棋谱,实战中能自动分
析猜测哪些棋步源于书上推荐的走法,准确率达
48%。塞缪尔让“跳棋机”首先与自己对奕,从
而积累经验。
• 1959年,“跳棋机”战胜了塞缪尔本人;
• 1962年,一举击败美国一个州保持8年不败记录
的跳棋冠军尼亚莱;
• 然而,后来它终于被世界跳棋冠军击败。
• 塞缪尔通过这项研究探讨机器模拟人的学习过程,
他发表了题为《利用跳棋进行机器学习的研究》
论文。
– Arthur, Samuel (1959-03-03). "Some Studies in
Machine Learning Using the Game of Checkers" .
IBM Journal 3 (3): 210–229.
103
Chinook: 不会输的跳棋程序
• 2007年,加拿大alberta大学教授号称解决了拥有1020复杂度的跳棋
问题。
• Jonathan Schaeffer, Neil Burch, Yngvi Bjornsson, Akihiro
Kishimoto, Martin Muller, Rob Lake, Paul Lu and Steve Sutphen.
"Checkers is Solved," Science, 2007.
• http://webdocs.cs.ualberta.ca/~chinook/
104
国际象棋的早年
• Simon在1957年预测:“计算机在10年内将成为世界的国际象棋冠军!”
• 1966年,MIT的Richard Greenblatt 用汇编语言写了MAC HACK VI (DEC
PDP-6) 参加了人类象棋公开赛。
• 1970 年 , 首 届 ACM 计 算 机 博 弈 竞 标 赛 举 办 。 运 行 于 CDC 6400 上 的
Chess 3.0 赢 得 冠 军 。 作 者 是 Slate, Atkin and Gorlen , 他 们 来 自
Northwestern University。
• Chess的后续版本将赢得以后9届的几乎所有ACM冠军,仅有两次失守。
• 1977年,Chess 4.6 明尼苏达州象棋公开赛中,以5:1的优异成绩正式
晋升为“国际象棋大师”
• 1974 KAISSA 赢得首届世界计算机国际象棋竞标赛冠,作者是Donskoy
and Arlazarov. 第二名是CHESS 4.0。
• 1980年,麻省理工学院教授Edward Fredkin设立10万美金的“弗雷德金
奖”,声明这笔巨款将奖给第一个战胜世界国际象棋冠军的电脑程序设计
者。
105
Alpha-beta剪枝
•
•
•
•
•
1958年,Carnegie-Mellon 大学的Allen Newell,
John Shaw and Herbert Simon提出Alphabeta剪枝算法:
– 可以从搜索树中剔除相当大的部分而不影
响最后结果。
重要的是,这是一个纯数学技巧,独立于任何
博弈知识。
很粗略地描述一下Alpha-beta算法:
– 比方说电脑已经完成评价一步棋,开始计
算第二步棋。一旦单个变化显示返回的值
低于第一步棋的值,就可以立即中止这个
搜索。我们不需要精确知道第二步棋究竟
有多差,程序会明确选择第一步棋。
Alpha-beta算法产生的结果和完全搜索是一样
的。早期的电脑突然间也能向前看五至六层了,
到了70年代最快的电脑可以搜索七层,棋力令
人瞩目了。
但即使使用Alpha-beta算法,要搜索深一层还
是需要提高5倍速度。数目的指数爆发性增长
再次赶上程序设计者。
106
Belle
• 肯·汤普森(Ken Thompson, 1943- )觉得不能等待快5-25倍的
百万美元级超级电脑来用于提高下棋能力。
• 1977年,他和贝尔实验室的同事Joseph Condon建造了一台专门
用途的下棋机,使用了价值约20,000美元的几百个芯片。
• 这台机器被称为“美人”(belle),它只会下国际象棋。它能够
每秒搜索大约18万个局面(而当时的超级电脑只能搜索5000
个)。“美人”在比赛中可以搜索八至九层那么深,因此可以
和大师同场竞技。
• 从1980年到1983年它赢得了世界电脑国际象棋和所有其它电
脑竞赛冠军,直到被价钱贵上千倍的克雷X-MPs巨型机(Cray
X-MPs)取代为止。
• Belle是第一台专门的博弈计算机,也是第一台达到大师级水
平的计算机。
107
残局数据库
•
•
肯·汤普森在80年代就开始生成和储存棋盘上剩四至五子的所有符合规则的残局。
一个典型的五子残局,比如王双象对王单马,包含总数121万个局面。加上一只
移动不连续的兵,这个数字增加到335万。
– 汤普森编写程序产生所有符合规则的局面并计算出每个残局可能的强制变化。他还以
一种方式把结果压缩,使得一张标准的CD-ROM能存放大约20个残局。
•
•
•
•
•
•
电脑使用这些残局数据库,可以把每个残局走得绝对完美,就象上帝一样。对于
棋盘出现子力及数目符合的任何局面,电脑可以立刻知道该胜、该和还是该负,
并且知道要多少步。它经常宣布15步棋之后取胜或将死,而执输棋那一种颜色的
则能够最优化地防守。
深蓝使用了汤普森的残局数据库,而象Fritz这样的个人电脑程序也把它们贯彻在
搜索树中。这些对棋力有什么影响还有待观察。
有些五子的残局极之困难甚至对于人类来说难以掌握,但这些五子残局对于汤普
森正在努力的六子残局来说只是小巫见大巫,在某些六子局面里,要取胜不得不
进行超过200步的计算
汤普森的六子残局,每个包含80到200亿个局面,刚好能够压缩进一张DVD。
普遍应用于个人电脑程序的Nalimov残局数据库,全部四子残局大约占30MB储
存,全部五子残局需要7GB
至于六子残局,目前可见的只是一些比较简单局面而且一只兵也没有的,因为国
际象棋的兵会升变,复杂性巨增
108
CRAY BLITZ
• Cray Blitz最开始起源于Robert Hyat在
1968年读大学的时候写的对弈程序blitz。
• 1980年,克雷研究院选择资助Hyatt的这个
程序,运行于克雷的超级计算机。
• 作者:Robert Hyatt, Harry Nelson, and
Albert Gower
• 1983,1986年, Cray Blitz赢得两次世界
计算机国际象棋冠军。
• 1984年,ACM计算机国际象棋冠军。
109
Deep Blue
• 20世纪80年代中期,卡耐基-梅隆大学的Hans Berliner教授接手肯·汤
普森的工作。
• Berliner曾经是世界国际象棋通讯赛冠军,他制造了一台硬件型的机
器叫“高技术”(HiTech),他和他的研究生一起研究可拔插芯片。装
有64个并行芯片的“高技术”差点赢得了1986年的世界电脑国际象
棋冠军(冠军是克雷)。
• 随后Berliner的几个学生包括许锋雄等自行研究叫“芯测chiptest”的机
器,后来则是“深思”(Deep Thought)。它只花5000美元但每秒搜索
50万个局面。
• 1987,1988年,CHIPTEST-M和深思分别赢得 ACM计算机国际象棋冠
军。
• 1989年,深思赢得世界冠军,同年许锋雄加入了IBM,和Murray
Campbell合作制造IBM的“深蓝”(Deep Blue)。
• 国际象棋世界冠军加里·卡斯帕罗夫在费城和纽约面对的这台电脑包
括一个装备大量专门用以进行高速运算芯片的IBMSP/2服务器,每个
芯片每秒能处理2-3百万个局面。使用超过200个这种芯片,整个程序
110
的速度达到了每秒处理2亿个局面。
“深蓝之父”——许峰雄
1959年出生于台湾
1980年毕业于台湾大学电
机系,获硕士学位
1989年获美国卡内基梅隆
大学计算机科学博士学位
111
“深蓝之父”——许峰雄
• 1985年,许峰雄开始了“人机博弈”的研究
• 1988年,研制出超级计算机 “深思”,首次战胜人类
国际象棋特级大师本特·拉尔森。
• 1989年世界计算机象棋冠军
• 同年加入IBM研究院开始“深蓝”项目的研究
• 1991年,成为首位荣获美国计算机协会 Grace Murray
Hopper奖的亚裔科学家
• 1991年 ACM国际计算机象棋大赛奖
• 1994年 ACM国际计算机象棋大赛奖
• 1996年 IBM优秀技术奖
112
“深蓝之父”——许峰雄
• 1997年5月11日,“深蓝”以3.5比
2.5的总比分击败国际象棋特级大师
卡斯帕罗夫;
• 获得IBM奖\Fredkin(弗雷德金)奖;
• 1999年,Funnov Inc. 公司总裁;
• 2000年,康柏研究院 (惠普研究院)
技术负责;
• 2003年4月17日宣布加入微软亚洲
研究院,任高级研究员。
113
击败
• 1987年,“深思”首次以每秒钟75万
步的速度露面,它的水平相当于拥有
国际等级分2450的棋手.
• 1988年,“深思”击败丹麦特级大师
拉尔森(Bent Larsen,19352010.9.9 ).
• 1989年,“深思”已经有6台信息处
理器,每秒思考速度达200万步,但
在与世界棋王卡斯帕罗夫进行的“人
机大战”中,以0比2败北.
• 1993年,“深思”二代击败了丹麦国
家队,并在与世界优秀女棋手小波尔
加(Judit Polgár,1976-)的对抗中
获胜.
114
击败
• 1995年,IBM“深蓝”更新程序,新的集成电路将其思考
速度提高到每秒300万步.
• 1996年,“深蓝”在向卡斯帕罗夫的挑战赛中,2比4败
北.
• 1997年,由1名国际特级大师,4名电脑专家组成的“深
蓝”小组研究开发出“更深的蓝”,它具有更加高级的
“大脑”,通过安装在RS/6000S大型计算机上的256个
专用处理芯片,可以在每秒钟计算2亿步,并且存储了百
年来世界顶尖棋手的10亿套棋谱
• 1997年5月11日,“超级深蓝”以3.5比2.5击败了卡斯
帕罗夫.
– 1997年6月,深蓝在世界超级电脑中排名第259位,计算能力为
11.38 gigaflops。
• IBM在比赛后宣布深蓝退役。卡斯帕罗夫要求重赛,但没
有得到回应.
115
卡斯帕罗夫
Garry Kasparov
•
•
•
•
1963年4月13日生于阿塞拜疆的
首都巴库。
17岁晋升国际特级大师
1985年获世界冠军,此后,二
度卫冕成功。
2005年3月11日宣布退役。
116
卡斯帕罗夫的人机对弈记录
1989 vs Deep Thought 2.0 : 0
1995 vs Junior
1.5 : 0.5
1995 vs Fritz 4
1.5 : 0.5
1996 vs Deep Blue
4.0 : 2.0
1997 vs Deep Blue
2.5 : 3.5
2003 vs Deep Junior 3.0 : 3.0
2003 vs X3D-Fritz
4.0 : 4.0
Deep Fritz比当年“深蓝”运算能力快56倍
(奔4、2.8兆赫、4G内存)
117
中国首次国际象棋“人机大战”
• 1995年, 谢军对阵深蓝
• 2004年6月8日和12日 两场比赛
– “紫光之星” (2600分) ?
– 中国的国际象棋特级大师诸宸(2493
分)
– 紫光2:0获胜
– 软件?
• 技术的进步还是拙劣的公关?
118
中国象棋人机大战
• 2006年8月9日,浪潮杯首届中国象棋人机
大战
• 最终浪潮天梭计算机以5.5:4.5(两回合10盘
棋共3胜5和2负)取得了最后胜利。
• 各位大师具体结果如下:
– 徐天红先和黑和 ,卜凤波先和黑负 ,柳大华
先负黑负 ,张强先胜黑和,汪洋先和黑胜。
• 8月15日,许银川加入,结果为和局。
119
评估棋力
• 棋弈机器每秒能处理2亿个
局面意味着什么?
– 肯·汤普森,“belle”之父(也
是Unix和C语言之父),在80
年代对搜索深度和棋力提高
之间的关系做了非常有意义
的试验。
– 他让“belle”自己跟自己下,
但只有一方的搜索深度不断
增加,平均每增加一个搜索
深度可大约换算成200个国际
象棋等级Elo分。于是,
• “belle”搜索四层其水平大约
是1230分,搜索到九层它的
水平达到了2328分。
• 延伸这条曲线,到了顶端会
变平缓,可以计算出搜索深
度达到十四层时,就达到了
世界冠军的程度即2800分。
横坐标是搜索层数,纵坐标是国际
等级分。
上部横线是卡斯帕罗夫的分数,
A线表示对电脑水平的乐观估计,
B线表示悲观估计,
C线表示现实估计
120
结论
• 一般认为:要与人类世界冠军争夺冠军,必须做一台每秒
运算10亿次的电脑(搜索到十四层的深度)。深蓝接近了,
但还达不到。
• 当然,程序的质量也扮演重要角色。今天的顶级个人电脑
程序象Fritz和Junior可以达到并超过每秒处理50万个局面。
它们事实上已经超过2600分的水平,可以对抗除世界前
100名棋手之外的任何人。在快棋战里人类只有大约前十
几位可以胜任,而在超快棋里大概只有两、三名人类棋手
能过关。
• 每升高等级而要求的运算速度的提高绝不是仅仅直线式的,
而是指数式的。所以每秒计算50万次就达到2600分的特
级大师水平,但要达到2800分,根据上面估算则需要每秒
计算10亿次之多。
121
“深蓝”没有人工智能
• 1997年9月23日IBM公司正式宣布:超级并行计算机“深蓝”,已经
圆满地完成了它的历史性任务,正式退出棋坛。
• 谭崇仁接受采访说,“深蓝”项目不包含“人工智能”。
– 当IBM决定开发与国际象棋世界冠军比赛的“深蓝”电脑时,他担任了研
制小组的经理。
• 他解释说,和今天所有计算机一样,“深蓝”不会学习,而只会推理。
会学习的所谓“第五代”计算机,至今没有被研究出来。如果说“深
蓝”有什么过人之处的话,那么就是它的不知疲倦的“蛮力”,研究
人员把可以收集到的将近100年来的60万盘高手的棋谱都储存在“深
蓝的”的“外脑”——大型快速阵列硬盘系统中。
• “深蓝”系统是由两个数据库组成的:一个是开局数据库,它最初几
步棋的下法都是到大约2兆字节的开局数据库中寻找的:设计“深蓝”
的难点集中在终局数据库的构建中。
• “深蓝”终局数据库的数据量达到了 5千兆字节,它集成了32个国际
象棋专用处理器协同工作,能在规定的每3分钟内从储存的棋谱中寻
找出自己应该走的妙着来。
122
深蓝之后
•
•
•
•
1997年深蓝在“回敬赛”中战胜棋王卡斯帕罗夫,但那次的场外不明朗因
素太多,结果说服力一直存疑,注意到两次比赛总成绩其实还是卡帕罗夫
以6.5-5.5战胜深蓝。
卡斯帕罗夫本人当初认为电脑真正稳定战胜人类世界冠军要到2010年,汤
普森则认为可能要到2018年。
有趣的是,包括Berliner、许锋雄等人在20世纪90年代初认为电脑在1994年
就可以达到这点。
2007年,Campbell 接受采访说,
– 我想目前在国际象棋界进行计算机与特级大师的对抗已经差不多走到了尽头。人
们对这类比赛的兴趣在逐渐降低。人类特级大师已经很难与计算机相抗衡了。人
们甚 至开始考虑给计算机设置一些障碍,以使比赛力量对比更加平均。我们已
经越过了人与计算机谁下得更好的阶段。人们现在正在寻找有趣的方式使人机对
抗更加平 衡。
•
2002年10月的克拉姆尼克对Deep Fritz人机大战,4比4战平。
123
弗拉基米尔·克拉姆尼克
Vladimir Kramnik
• 1975年6月25日出生于俄罗斯
的图阿普谢
• 16岁获得男子18岁组世界冠军。
• 2000年11月,在伦敦举行的职
业棋协世界冠军赛中击败卡斯
帕罗夫成为世界冠军
• 2006年4月世界棋王争霸赛冠
军
• 2007年9月被Viswanathan
Anand击败失去冠军头衔
124
Junior
• 作者是来自以色列的Amir Ban和Shay Bushinsky,顾问是
特级大师Boris Alterman
• 2003年1~2月“Deep Junior”与卡斯帕罗夫举行人机对抗,
双方3比3战平。
• 赢得多次世界计算机国际象棋冠军。
125
Fritz
• 80年代初,德国人Frans Morsch和Mathias Feist完成了
Fritz的早期版本。
• 2001年,“Deep Fritz” 击败了除了卡斯帕罗夫和阿南德,以及克拉姆
尼克之外的所有排名世界前十位的棋手。
• 2002年10月,“Deep Fritz”与克拉姆尼克在巴林进行“人机大战”,
思考速度为每秒600万步。双方战成4比4平。
• 2003年,X3D Fritz 和卡斯帕罗夫4-4战平。
•2006年5月, Deep Fritz 4:2在波恩击败克拉姆尼克
126
Rybka
• 国际大师Vasik Rajlich在2003年开始设计
• 目前为止的顶尖人机对弈引擎
• 主要项目成员是顶尖棋手,而不是计算机
科学家
127
更多挑战:中国象棋
• 国际象棋棋盘8行8列总计64格
• 中国象棋10行9列总计90个交点,中国象棋的运子空
间更大。
• 中国象棋某些着法更为特殊(蹩马脚、压象眼)。
• 随着计算机博弈在Othello、Checker和国际象棋三
种棋类上的成功,全世界的学者又把目光投到更为
复杂的中国象棋(Chinese Chess)、日本将棋
(Shogi)、围棋(Go)上面。
128
更多挑战:将棋专业选手
• 2010年10月12日
– The Mainichi Daily News
– (朝日新闻) reports that top
women's shogi player Ichiyo
Shimizu took part in a match
staged at the University of
Tokyo, playing against a
computer called Akara 2010.
– Akara is apparently a Buddhist
term meaning 10224, the
newspaper reports, and the
system beat Shimizu in six
hours, over the course of 86
moves.
129
终极挑战:围棋
• 围棋竞赛是一种超高智力水平的运动。虽然它的棋规十分
简洁,基本上只有一条:排除四面被对方围着而没有空隙
的状态,但是它的棋路却变化繁多。
• 围棋盘上有19×19=361个交叉点,每一点有黑子、白子
和空位三种可能性,因此,围棋的棋局就可能组合成3的
361次方。
• 电脑在下围棋方面的“才疏学浅”,反映了人工智能在问
题求解领域与人类智能的差距。
• 高速计算不能弥补知识的差距!
130
起源
• 最早的围棋程序是由Albert Zobrist作为他模式识别专业博
士论文的一部分提出的
– A. Zorbrist, Feature extractions and representation for pattern
recognition and the game of Go. PhD thesis, Graduate School of
the University of Wisconsin, 1970.
• 1991年世界电脑冠军Goliath在对5段棋手的受15子比赛中
三局全胜但在受14子对局中三局全败。
• 1994年世界电脑围棋冠军Go Intellect在对年青棋手的受
14子对局中连败三局,由于应氏规则允许让子由下手自行
摆放,这就意味着让15子即由黑方(电脑)先下16手,再
由白 走。
131
陈志行
•
•
•
•
•
1991年中山大学的陈志行教授(1931-2008)退休后从事电脑围棋研究。1993年
起,10次获得电脑围棋世界冠军
1995年“应氏杯”国际电脑围棋赛,陈志行教授的“手谈”程序5战全胜重夺
冠军。 “手谈”程序后来与三名韩国少年好手对阵2:1获胜,又破了让子12
手的记录。
1997年5月,陈志行教授撰文说:“我只敢说,围棋程序要达到人类的最高水
平,需要许多有献身精神的人,一代接一代地不懈努力,把研究成果继承和
发展下去。而我自己的十年奋斗目标,只是使程序被我这个业余5段水平的人
让9子能顶得住。就是这样的目标,靠我一个人的力量也难以达到。”
“深蓝之父”许峰雄在接受采访时也指出:“围棋高深莫测,要设计出能够
打败高段位围棋手的电脑绝非易事,人们可能还得等三四十年,甚至更长的
时间。”
1985年,设立“应氏杯”的台湾著名实业家应昌期先生(1916-1997),悬赏
一百万美金,找寻能够打败职业棋士的电脑程式而不可得。该项奖金在2000
年到期时无法兑现,电脑围棋程序设计师们一致要求把截止期推迟一两个世
纪。
132
MOGO
• 作者 Yizao Wang, Sylvain Gelly, David Silver, Remi Munos, Olivier
Teytaud, Pierre-Arnaud Coquelin.
• 2008年,“MOGO”第一次与职业棋手下棋,在美国围棋公开赛中,
在授九子的情况下战胜了韩国职业八段棋手。
• 2008年9月,“魔围棋MOGO计算机围棋程序”在台南大学参加全球
九路计算机围棋赛,赢得了甲组冠军。
•
• 不过,在没有任何附加条件的情况下与职业九段棋手对弈,对于
“MOGO”还是第一次。最终“MOGO”输掉了对阵周俊勋九段的全部
3场比赛。
• 在不让子的情况下,目前电脑下围棋的水平还是完全无法与人脑相提
并论。
• http://www.lri.fr/~gelly/MoGo.htm
133
计算机围棋:策略
• 最小最大树搜索
– 象棋
• 基于知识的方法
– 手谈
• Monte-Carlo方法
– mogo
• 机器学习
– 神经网络和遗传算法
134
中国机器博弈锦标赛
•
•
•
•
•
•
•
由中国人工智能学会主办的,面向全国开展的棋类博弈计算机软件竞赛,计划为每年
举办一届。
2006年举行首届比赛,名为中国象棋计算机博弈锦标赛,从2007年的第二届比赛起正
式命名为中国机器博弈锦标赛。它是棋类电脑软件及其开发人员的竞技平台,而非人
类棋手的赛场。
比赛项目:历届比赛开展过的棋类项目包括中国象棋、六子棋、围棋、九路围棋。具
体开展何种项目,依据赛前报名情况决定。
2006年8月2日至7日,首届中国象棋计算机博弈锦标赛。地点:北京,中国科技馆。承
办单位:东北大学、清华大学、北京理工大学。比赛项目:中国象棋。
2007年10月3日至8日,第二届中国机器博弈锦标赛。地点:重庆,重庆工学院。承办
单位:重庆工学院。比赛项目:中国象棋、六子棋、围棋、九路围棋。
2009年11月16日至19日,2009中国计算机博弈锦标赛。地点:深圳,深圳大学城。主
办单位:中国人工智能学会、中创科技发展战略研究中心、深圳大学城。承办单位:
北大深圳研究生院、清华深圳研究生院、哈工大深圳研究生院、深圳市航天意尚会展
策划有限公司。协办单位:深圳大学计算机与软件学院、中科院深圳先进技术研究院。
比赛项目:中国象棋、六子棋、围棋、九路围棋。
2010年11月10日,第四届中国机器博弈锦标赛在北京理工大学举行。共有来自北京理
工大学、北京邮电大学、东北大学、哈尔滨工程大学等13所高校和5家IT界单位的110
名选手设计的54个程序参加。
135
North American Computer Chess
Championship
Event #
Year
Location
Winner
1
1970
New York, NY
Chess 3.0
2
1971
Chicago
Chess 3.0
3
1972
Boston
Chess 3.0
4
1973
Atlanta
Chess 3.5
5
1974
San Diego
Ribbit
6
1975
Minneapolis
Chess 4.4
7
1976
Houston
Chess 4.5
8
1977
Seattle
Chess 4.6
9
1978
Washington, D.C.
Belle
10
1979
Detroit
Chess 4.9
11
1980
Nashville
Belle
12
1981
Los Angeles
Belle
Event #
Year
Location
Winner
13
1982
Dallas
Belle
14
1983
New York, NY
Cray Blitz
15
1984
San Francisco
Cray Blitz
16
1985
Denver
HiTech
17
1986
Dallas
Belle
18
1987
Dallas
ChipTest-M
19
1988
Orlando, Florida
Deep Thought
20
1989
Reno, Nevada
HiTech and Deep Thought
21
1990
22
1991
Albuquerque
Deep Thought II
23
1993
Indianapolis
Socrates II
24
1994
Cape May, New Jersey
Deep Thought II
Deep Thought
136
Computer Olympiad
•
•
•
•
1st Computer Olympiad - 1989, London, United Kingdom
2nd Computer Olympiad - 1990, London, United Kingdom
3rd Computer Olympiad - 1991, Maastricht, Netherlands
4th Computer Olympiad - 1992, London, United Kingdom
•
5th Computer Olympiad - 2000, London, United
Kingdom
•
•
•
•
•
•
•
•
•
•
6th Computer Olympiad - 2001, Maastricht, Netherlands
7th Computer Olympiad - 2002, Maastricht, Netherlands
8th Computer Olympiad - 2003, Graz, Austria
9th Computer Olympiad - 2004, Ramat Gan, Israel
10th Computer Olympiad - 2005, Taipei, Taiwan
11th Computer Olympiad - 2006, Turin, Italy
12th Computer Olympiad - 2007, Amsterdam, Netherlands
13th Computer Olympiad - 2008, Beijing, China.
14th Computer Olympiad - 2009, Pamplona, Spain
15th Computer Olympiad - 2010, Kanazawa, Japan
Amazons
Arimaa
Backgammon
Bridge
Chess
Computational Pool
Connect6
Chinese Chess
Dots and boxes
International
draughts
19×19 Go
9×9 Go
Hex
Havannah
Kriegspiel (chess)
Lines of Action
Shogi
Surakarta
137
World Computer Chess
Championship
Event #
Year
Location
Winner
1
1974
Stockholm
Kaissa
2
1977
Toronto
Chess 4.6
3
1980
Linz
Belle
4
1983
New York, NY
Cray Blitz
5
1986
Cologne
Cray Blitz
6
1989
Edmonton, Canada
Deep Thought
7
1992
Madrid, Spain
ChessMachine (Gideon)
8
1995
Hong Kong
Fritz
9
1999
Paderborn, Germany
Shredder
10
2002
Maastricht, Netherlands
Deep Junior
11
2003
Graz, Austria
Shredder
12
2004
Bar-Ilan University, Ramat Gan, Israel
Deep Junior
13
2005
Reykjavík, Iceland
Zappa
14
2006
Torino, Italy
Junior
15
2007
Amsterdam, Netherlands
Rybka
16
2008
Beijing, China
Rybka
17
2009
Pamplona, Spain
Rybka
18
2010
Kanazawa, Japan
Rybka
138
World Microcomputer Chess
Championship
Event #
Year
Location
Winner
1
1980
London
Fidelity Chess Challenger
2
1981
Travemünde
Fidelity X
3
1983
Budapest
Fidelity Elite A/S
4
1984
Glasgow
Fidelity Elite X, Mephisto, Princhess X, Psion
5
1985
Amsterdam
Mephisto / Nona
6
1986
Dallas
Mephisto
7
1987
Rome
Mephisto / Psion
8
1988
Almería
Mephisto
9
1989
Portorož
Mephisto
10
1990
Lyon
Mephisto
11
1991
Vancouver, Canada
ChessMachine (Gideon)
12
1993
Munich
HIARCS
13
1995
Paderborn, Germany
MChess Pro 5.0
14
1996
Jakarta
Shredder
15
1997
Paris
Junior
16
1999
Paderborn, Germany
Shredder
17
2000
London
Shredder
18
2001
Maastricht
Deep Junior
139