人工智能(artificial intelligence,AI)属于一门新的技术科学,主要研究、开发用于模拟、延伸和扩展人类智能的理论、方法、技术及应用的系统。人工智能是计算机科学的一个分支,自20世纪70年代以来被称为世界三大尖端技术之一。三大尖端技术分别为空间技术、能源技术和人工智能。随着大数据和计算机技术的发展,人工智能获得了迅速的发展,被成功地应用于很多学科领域,并取得了丰硕的成果。人工智能现在已成为一个独立的分支,在理论和实践上自成一个系统。
人工智能的诞生,很大程度上要归结于计算机的发展。美国科学家约翰·文森特·阿塔纳索夫设计了世界上第一台电子计算机阿塔纳索夫-贝瑞计算机(Atanasoff-Berry computer,ABC),并于1942年测试成功。这台计算机不可编程,仅能用于求解线性方程组。ABC是电子与电器的结合,电路系统中装有300个电子管执行数字计算与逻辑运算,机器使用电容器存储数值,通过打孔读卡方法输入数据,并且采用了二进制。ABC的诞生标志着人类存储和处理信息的方法开始发生革命性的变化,同时标志着人类的计算从模拟向数字挺进,为大型机和小型机的发展奠定了坚实的基础。
1946年,美国开发了世界上第一台可编程的电子计算机——电子数字积分计算机(electronic numerical integrator and computer,ENIAC)。ENIAC不仅能求解线性方程,还能求解非线性方程。它每秒能进行5000次加法运算(据测算,普通人最快每秒只能进行5次加法运算),400次乘法运算,比当时已有的计算机速度要快1000倍。同时,ENIAC还能按照事先编好的程序自动执行算术运算、逻辑运算和存储数据。ENIAC也有很多缺点,其体积庞大且耗电惊人,同时电子管很容易因机器运行产生的高热量而损坏。不过,ENIAC宣告了一个新时代的开始,从此科学计算的大门被打开。1949年发明了可以存储程序的计算机,使得编程变得相对简单。编程变得简单,使得计算机理论迅速发展,同时促使了人工智能理论的产生。人们也因此找到了可以存储信息和自动处理信息的方法。
虽然当时的计算机已经可以实现部分人类的智力,但直到20世纪50年代人们才把人类智力和计算机联系起来。美籍俄裔数学家、控制论的创始人诺伯特·维纳(Norbert Wiener)通过研究反馈理论,提出了一个论断,即所有人类智力的结果都是一种反馈的结果,通过不断地将结果反馈给机体而产生动作,进而产生了智能 [1] 。
1950年,一篇划时代的论文《计算机与智能》 [2] 发表,其作者为艾伦·麦席森·图灵(Alan Mathison Turing)。在这篇论文中,图灵讨论了创造一种“智能机器”的可能性。同时由于“智能”一词难以定义,图灵就提出了著名的图灵测试:“一个人在不接触对方的情况下,通过一种特殊的方式与对方进行一系列的问答,如果在规定的时间内,他无法根据这些回答判断对方是人还是计算机,那么就可以认为这个计算机是智能的。”图灵通过图灵测试打消了人们对“思考的机器”的质疑。1952年,图灵又提出了一个新的想法:让计算机冒充人,如果超过30%的裁判误以为在和自己说话的是人而非计算机,那就算作成功 [3] 。
1955年,美国计算机科学家艾伦·纽厄尔(Allen Newell)和赫伯特·亚历山大·西蒙(Herbert Alexander Simon)设计了一个计算机程序,取名为“逻辑理论家”。该程序被设计用于模仿人类解决问题的能力,被后人称为第一个人工智能的程序 [4] 。“逻辑理论家”证明了罗素和怀特海的《数学原理》前52个定理中的38个定理,并且对其中的一些定理采用了更新的方法进行证明。这个程序在人工智能的历史上占有重要地位,在学术界和社会上产生了巨大的影响。我们现在很多程序所采用的思想方法还是来源于这个20世纪50年代产生的程序。同样是在1955年,师从逻辑学家丘奇的克门尼(John G. Kemeny)在《科学美国人》杂志上发表了一篇名为《把人看作机器》的文章 [5] 。这篇文章介绍了图灵机和冯·诺伊曼的细胞自动机,并且提到“肌肉机器”和“大脑机器”,其中“大脑机器”就是后来人工智能的另一种说法。
虽然很多研究者都在研究与智能相关的东西,但都没有以人工智能命名。直到1956年夏天才真正确认“人工智能”这个词。LISP语言的发明人约翰·麦卡锡(John McCarthy)于1956年在美国达特茅斯学院发起了一次夏季活动,并给这次活动取名为“人工智能夏季研讨会”,也称“达特茅斯会议”。至此首次出现“人工智能”这个词,不过据说“人工智能”这个词并不是由麦卡锡想出来的,而是他从别的地方听到的。这次会议的另一位组织者为马文·李·明斯基(Marvin Lee Minsky),其博士论文《神经网络和脑模型问题》对人工神经网络研究产生了重要影响。麦卡锡和明斯基在建议书里罗列了他们计划在为期两个月的研讨会中研究的8个领域:自动计算机(“自动”指可编程)、编程语言、神经网络、计算规模的理论、自我改进、抽象、随机性和创见性 [6] 。达特茅斯会议成为人工智能这个学科诞生的标志性事件,也奠定了其在历史上的地位。虽然此次会议并没有取得巨大的成果,但给人工智能奠基人提供了相互交流的机会,并为未来人工智能的发展起了铺垫的作用。
达特茅斯会议在人工智能发展史上的地位毋庸置疑,不过当时人们对“人工智能”这个词还没有完全达成共识。很多人认为加上“人工”有点变味,认为不一定非得与人相似。纽厄尔和西蒙主张用“复杂信息处理”这个词而不是“人工智能”,他们发明的语言就叫信息处理语言(information processing language,IPL)。从某种意义上说他们是偏功能学派,也就是说找到智能的功能不一定非得依靠结构相同或相似,图灵机和递归函数等价,但结构完全不同,所以他们更强调“信息处理” [6] 。1958年,麦卡锡离开达特茅斯学院并与明斯基一起创建了世界上第一个人工智能实验室——美国麻省理工学院人工智能实验室。该实验室开创了图像引导手术和自然语言网络访问的新方法,产生了新一代的微型显示,使触觉界面成为现实,并开发了用于行星探测、军事侦察和消费设备的细菌机器人和基于行为的机器人。之后人工智能实验室与计算机科学实验室合并为计算机科学与人工智能实验室,成为麻省理工学院最大的实验室。同年,英国国家物理试验室召开了一次名为“思维过程机器化”的会议,邀请了麦卡锡、明斯基、塞弗里奇,还有致力于研究神经网络的麦卡洛克,以及英国的控制论代表人物艾什比。在该会议上,有人提出了“人工思维”,西蒙等人也开始逐渐接受了人工智能的说法。西蒙晚年写了《人工科学》 [7] 一书,把人工这个词更加放大了。1965年,“人工智能”这个词真正开始被认可,加利福尼亚大学伯克利分校的哲学家休伯特·德雷福斯(Hubert L. Dreyfus)发表的《炼金术与人工智能》 [8] 功不可没。
在达特茅斯会议以后,纽厄尔和西蒙于1957年又开发了一个新程序,称为“通用解题者”(general problem solver)程序。这是继“逻辑理论家”之后的又一个AI程序,该程序是对维纳的反馈理论的一个扩展,能够解决一些比较普遍的问题。麦卡锡创建了表处理语言LISP,直到现在许多人工智能程序还在使用这种语言,它几乎成了人工智能的代名词。1963年,麻省理工学院在美国政府和国防部的支持下进行人工智能的研究,推动了人工智能的发展。
1968年,维诺格拉德发明了一种早期的自然语言理解程序——SHRDLU程序。该程序作为一种语言解析器,允许用户使用英语术语进行互动。例如用户可以通过英语指示SHRDLU在“积木世界”中移动积木(块体)、锥体、球体等物体。SHRDLU被认为是人工智能一次极其成功的演示,极大地增强了人们对人工智能的信心。人们的重点开始转向建立实用的能够自行解决问题的系统,并且要求系统具有自主学习的能力。20世纪六七十年代产生了专家系统,这是人工智能发展史上的一个巨大进步。专家系统的出现使人们知道计算机可以代替人类的专家进行一些专业的工作。同时由于计算机硬件性能的提高,人工智能可以开始进行诸如统计分析数据、医疗诊断等工作。人工智能在专家系统出现之后参与到人类生活的很多领域中,并开始改变人类的生活。在这之后,人工智能又经历了三个跌宕起伏的时期,分别为20世纪80年代中期到90年代中期的低迷发展期、20世纪90年代中期到2010年的稳步发展期和2010年至今的蓬勃发展期。
虽然专家系统在20世纪70年代开始不断地应用于人类生活的很多领域,但它存在很多问题,如应用领域狭窄、缺乏常识性知识、知识获取困难、推理方法单一、缺乏分布式功能、难以与现有数据库兼容等。这些问题导致专家系统难以进一步发展,使人工智能直到20世纪90年代中期还一直处于低迷发展期。得益于互联网技术的发展,人工智能的创新研究加速,促使人工智能进一步迈向实用化。1997年,IBM公司创造的“深蓝”超级计算机战胜了国际象棋世界冠军卡斯帕罗夫,极大地增强了人们的信心,人工智能开始进入稳步发展期。互联网及移动互联网的不断普及,计算机硬件的快速发展,加上大数据、云计算、物联网等新一代信息技术的出现,推动了以深度神经网络为代表的人工智能技术飞速发展,人工智能进入蓬勃发展期。机器视觉、语音识别、知识问答、人机对弈、无人驾驶等人工智能技术实现了从“不能用、不好用”到“可以用”的技术突破,迎来爆发式增长的新高潮。
目前对人工智能并没有形成一个权威、统一的定义。麦卡锡是最早对人工智能做出定义的:人工智能就是要让机器的行为看起来就像是人所表现出的智能行为一样。这是他在1956年达特茅斯会议上提出的,该定义似乎忽略了强人工智能的可能性。明斯基则将人工智能定义为一门科学:让机器做本需要人的智能才能够做到的事情的一门科学 [9] 。人工智能符号派的代表人物赫伯特·亚历山大·西蒙认为,智能是对符号的操作,最原始的符号对应于物理客体 [10] 。尼尔斯·约翰·尼尔逊(Nills John Nilsson)认为人工智能是关于知识的学科,即怎样表示知识以及怎样获取并使用知识的科学。温斯顿(Patrick H. Winston)则将人工智能定义为研究如何使计算机去做过去只有人才能做的智能工作 [11] 。这些定义表明研究人工智能是在机器的基础上进行的,即人工智能需要载体。可以说人工智能是一门科学技术,是研究如何应用计算机的软硬件来模拟人类某些智能行为的基本理论、方法和技术。
图灵测试是促使人工智能从哲学探讨转到科学研究的一个重要因素,并由此衍生出很多研究方向。计算机必须具备理解语言、学习、记忆、推理、决策等能力才有可能通过图灵测试,并被认为是智能的。这样,人工智能就延伸出了很多不同的子领域,比如机器感知、学习、语言、记忆、决策等,所有这些研究领域都可以看成人工智能的研究范畴。随着理论和实践技术日益成熟,人工智能的应用领域也不断扩大。目前主要的应用领域有:问题求解、逻辑推理与定理证明、自然语言处理、专家系统等。
对于问题求解,最重要的研究成果就是下棋程序。将相关技术应用于下棋程序中,如决策、学习等技术,使其达到国际象棋的锦标赛水平。但是,目前还无法使下棋程序具有人类的一些能力,如洞察棋局的能力。不过到目前为止,人类开发的人工智能程序已经可以通过搜索解答空间,自动寻找较优答案来解决相关问题。
逻辑推理属于被研究最久的人工智能领域之一,通过相关的方法找到一些可信的证明,并在其出现新信息时修正这些证明。研究自动定理证明是人工智能的一个重要论题,因为医疗诊断和信息检索都能与定理证明一样形式化,研究自动定理证明有利于人工智能在这些领域的发展。
自然语言处理是将人工智能技术应用于实际生活的一个成功例子,同时自然语言处理也极大地推动了人工智能技术在其他领域的进一步落地。例如通过自然语言处理技术完成以前需要人类才能进行的翻译工作,以及语音识别技术的发展又进一步推动了智能机器人的发展。自然语言处理涉及一个极其复杂的编码和解码问题,相信随着研究的不断深入,未来自然语言处理技术将会提升到一个新的高度。
专家系统目前已成为人工智能中最有成效的一个研究领域,它被定义为一种具有特定领域内大量知识和相关经验的程序系统。人类通过不断学习相关的知识而成为某一个领域的专家,具备解决该领域内的问题的能力,并且在实践中不断地学习,进一步提升解决问题的能力。那么,如果计算机程序也能够学习不同领域的知识,是不是也能像人类专家一样解决该领域的问题呢?经过研究发现,计算机程序在不断地学习后在某些领域能够达到人类专家的水平。如在矿物勘测、化学分析、城市规划和医学疾病诊断方面,专家系统已经可以与人类专家媲美。美国人工智能专家爱德华·费根鲍姆与化学家莱德伯格合作,于1968年研制出了DENDRAL系统,该系统用来帮助化学家判断某待定物质的分子结构。这也是第一个人工智能的专家系统,其性能超过了一般专家的水平。1978年,美国斯坦福国际咨询研究所研发出了一个人工智能系统(或者称为专家系统)——矿藏勘探和评价专家系统,该系统发现一个钼矿。该钼矿价值超过1亿美元,在矿业界引起一阵狂热,使该系统闻名于世界。而医学方面的专家系统如MYCIN系统可以为医生提供血液传染病的诊断治疗方案的咨询意见。实践表明,专家系统在对细菌血液病、脑膜炎的诊断以及提供治疗方案的准确率上已超过了这方面的人类专家。
可以设想,未来人工智能系统可能可以对人的意识、思维等信息进行模拟,使机器能像人那样思考。
(吴梦林,严瀚,俞祝良)