人工智能原理第1章人工智能概述本章内容1.1关于人工智能的定义1.2人工智能的基础1.3人工智能简史1.4智能体与环境1.5智能体结构小结参考书目附录和人工智能相关的社会伦理问题第1章人工智能概述1.1关于人工智能的定义智能体对AI的4种不同定义类人行动/类人思考/理性思维/理性行动第1章人工智能概述4作为智能体的人类•智能体(Agent)•我们一直在思考:我们,作为一个智能体,为什么能够思考?大脑这么一小堆东西怎么能够感知、理解、预测和应对一个远比自身庞大和复杂的世界?•人工智能(AI)走得更远:它不仅试图理解智能体,而且想建造智能体第1章人工智能概述5•AI是新兴学科,也是激动人心的学科.Russell声称:不同于物理学,这里还有出现几个爱因斯坦的余地•为什么?研究主观世界的成果远少于研究客观世界的成果第1章人工智能概述处于探索初期的学科6对AI的4种不同定义第1章人工智能概述像人一样思考的系统理性地思考的系统要使计算机能思考……有头脑的机器(Haugeland,1985)[使之自动化]与人类的思维相关的活动,诸如决策、问题求解、学习等活动(Bellman,1978)通过对计算模型的使用来进行心智能力的研究(Charniak&McDemontt,1985)对使得知觉、推理和行动成为可能的计算的研究(Winston,1992)像人一样行动的系统理性地行动的系统创造机器来执行人需要智能才能完成的功能(Kurzweil,1990)研究如何让计算机能够做到那些目前人比计算机做得更好的事情(Rich&Knight,1991)计算智能是对设计智能化智能体的研究(Pooleetal.,1998)AI关心的是人工制品中的智能行为(Nilsson,1998)7对AI的4种不同定义第1章人工智能概述•像人一样行动的系统––类人行为•像人一样思考的系统––类人思考•理性地思考的系统•理性地行动的系统84种不同定义的方法(1)•类人行为:图灵测试(1950)•图灵建议:不是问“机器能否思考”,而是问“机器能否通过关于行为的智能测试”•测试过程:让一个程序与一个人进行5分钟对话/然后人猜测交谈对象是程序还是人?如果在30%测试中程序成功地欺骗了询问人,则通过了测试•图灵期待最迟2000年出现这样的程序,但是到目前为止,面对训练有素的鉴定人,没有一个程序接近30%的标准第1章人工智能概述94种不同定义的方法(2)•要想程序通过图灵测试,还需要做大量工作,这些技能包括:•自然语言处理,使机器可以用人类语言交流•知识表示,存储机器获得的各种信息•自动推理,运用知识来回答问题和提取新结论•机器学习,适应新环境并检测和推断新模式•以及(为了完全图灵测试)•计算机视觉,机器感知物体•机器人技术,操纵和移动物体第1章人工智能概述104种不同定义的方法(3)•AI研究者并未花费很多精力来尝试通过测试,因为研究智能的根本原则远比复制样本重要.•如同空气动力学与模拟鸟类飞行之对于飞机的产生第1章人工智能概述114种不同定义的方法(4)•类人思考:认知模型方法•如何得知人类是如何思考的?通过自省—捕捉人类思维过程和通过心理测试•这种方法不满足于让程序正确地解决问题,更加关心对程序的推理步骤轨迹与人类个体求解同样问题的步骤轨迹进行比较•认知科学:把来自AI的计算模型与来自心理学的实验技术相结合,试图创立一种精确而且可检验的人类思维工作方式的理论•通常,我们只关心程序实现了什么功能,而不会比较AI技术和人类认知之间的异同第1章人工智能概述124种不同定义的方法(4)•理性地思考:“思维法则”方法•19世纪,逻辑学家就发展出可以描述世界上一切事物及其彼此关系的精确的命题符号•1965年,原则上,已经有程序可以求解任何用逻辑符号描述的可解问题(消解法)•AI领域传统的逻辑主义希望通过编制上述程序来创造智能系统•难点:非形式化的知识难以用逻辑符号形式化/“原则上”可以解决问题和实际解决问题二者之间存在巨大差异第1章人工智能概述134种不同定义的方法(5)•理性地行动:理性智能体方法•计算机智能体应该有别于“简单的”程序:具有诸如自主控制操作、感知环境、适应变化等•理性智能体:要通过自己的行动获得最佳结果,或者在不确定的情况下,获得最佳期望结果•不仅要正确地推理,还要正确地行动/正确推论是理性智能体的部分功能,而不是理性的全部内容•图灵测试中需要的技能都是为了作出理性行为第1章人工智能概述144种不同定义的方法(6)•把AI研究视为理性智能体的设计过程•好处:•比“思维法则”法则方法(理性地思维)更通用/比建立在人类行为或者思维基础(类人方法)上的方法更经得起科学发展的检验,因为理性的标准有着清楚且普遍的定义•正确的结果在不同条件下可以定义清楚•完美理性—总能做正确的事情vs.有限理性—在没有足够计算时间的前提下采取正确的行动•完美理性在复杂环境下是不可行的第1章人工智能概述15概念理解是一个过程•上述定义见仁见智•重要的是学习AI方法、应用AI方法,在实践中逐步深入领会AI这个词的含义•目前,AI就是一种运行在我们自己机器中的程序,它的智能都是我们给的!第1章人工智能概述1.2人工智能的基础各学科的贡献:哲学/数学经济学/神经科学/心理学计算机工程控制论/语言学第1章人工智能概述17对人工智能有贡献的学科•哪些学科、哪些思想和哪些人物给予AI以贡献?•哲学(BC428~现在)•数学(800~现在)•经济学(1776~现在)•神经科学(1861~现在)•心理学(1879~现在)•计算机工程(1940~现在)•控制论(1948~现在)•语言学(1957~现在)第1章人工智能概述18哲学的贡献(1)•哲学(BC428~现在)贡献的思想:•问题1:形式化规则能用来抽取合理的结论吗?•问题2:精神的意识是如何从物质的大脑产生出来的?•问题3:知识是从哪里来的?•问题4:知识是如何导致行动的?第1章人工智能概述19哲学的贡献(1)•问题1:形式化规则能用来抽取合理的结论吗?(哲学家及其贡献)•亚里士多德(Aristotle,BC384~BC322),为形式逻辑奠定了基础/第一个把支配意识的理性部分法则形式化为精确的法则集合/著名的三段论•RamonLull/LeonardodaVinci(达·芬奇)/BlaisePascal(帕斯卡)/GottfriedWilhelmLeibnitz(莱布尼兹)等人均设计或制造了能计算的机器第1章人工智能概述20哲学的贡献(2)•17世纪,有人提出推理如同数字计算/帕斯卡写道:“算术机器产生的效果显然更接近于思维而不是动物的其他活动”•问题1结论:肯定的结论,即可以用一个规则集合描述意识的形式化、理性的部分第1章人工智能概述21哲学的贡献(3)•问题2:从物理系统的角度来考虑意识:意识与物质的大脑之间的关系如何?•RenéDescartes(笛卡尔)给出了第一个关于意识和物质之间的区别以及由此产生的问题的清晰讨论•笛卡尔是二元论的支持者:坚持意识(或称为灵魂/精神)的一部分是超脱于自然之外的,不受物理定律影响.而动物不拥有这种二元属性,它们可以被作为机器对待第1章人工智能概述22哲学的贡献(4)•唯物主义认为:大脑依照物理定律运转而构成了意识,自由意志也就简化为对出现在选择过程中可能选择的感受方式•问题2结论:存在两种选择—二元论和一元论第1章人工智能概述23哲学的贡献(5)•问题3:知识是从哪里来的?•关于知识的来源:FrancisBacon(培根)《新工具论》开始了经验主义运动•JohnLocke(洛克)指出:“无物非先感而后知”•DavidHume(休谟)提出归纳原理:一般规则是通过揭示形成规则的元素之间的重复关联而获得的第1章人工智能概述24哲学的贡献(6)•基于LudwigWittgenstein,BertrandRussell的工作,RudolfCarnap领导维也纳学派发展了实证逻辑主义,坚持认为所有的知识都可以用最终和传感器输入相对应的观察语句相联系的逻辑理论来描述•问题3结论:知识来自于实践第1章人工智能概述25哲学的贡献(7)•问题4:知识是如何导致行动的?•关于意识的哲学图景的最后元素是知识与行动之间的联系/智能既要求推理也要求行动•亚里士多德认为:行动是通过目标与关于行动结果的知识之间的逻辑来判定的第1章人工智能概述26哲学的贡献(8)•他的进一步阐述指出:要深思的不是结局而是手段/假设了结局并考虑如何以及通过什么手段得到该结局,结局是否容易是否最好/手段在分析顺序中是最后一个,在生成顺序中是第一个•这实际上就是回归规划系统,2300年后由Newell和Simon在其GPS程序中实现了•问题4结论:知识用于指导行动去达到目标第1章人工智能概述27数学的贡献(1)•数学(800~现在)贡献的思想:•什么是抽取合理结论的形式化规则?•什么可以被计算?•如何用不确定的知识进行推理?•AI成为一门规范科学要求在三个基础领域完成一定程度的数学形式化:•逻辑、计算、概率第1章人工智能概述28数学的贡献(2)•数学家及其贡献•问题1:如何抽取形式化规则?•GeorgeBoole(布尔,1815~1864),1847年完成了形式逻辑的数学化/命题逻辑或称布尔逻辑•GottlobFrege(弗雷格,1848~1925),1879年扩展了布尔逻辑,使其包含对象和关系,创建了一阶逻辑•AlfredTarski(塔斯基)引入了一种参考理论,可以把逻辑对象与现实世界对象联系起来第1章人工智能概述29数学的贡献(3)•问题1结论:形式化规则=命题逻辑和一阶谓词逻辑•问题2:什么可以计算?•可以被计算,就是要找到一个算法•算法本身的研究可回溯至9世纪波斯数学家al-Khowarazmi•19世纪晚期,把一般的数学推理形式化为逻辑演绎的努力已经展开第1章人工智能概述30数学的贡献(4)•1900年,DavidHilbert(希尔伯特,1862~1943)提出了包括23个问题的清单,其中最后一个问题是:是否存在一个算法可以判定涉及自然数的逻辑命题的真实性,即可判定性问题/他所要问的是:有效证明过程的能力是否有基础的局限性•这一问题被KurtGödel(哥德尔,1906~1978)在1931年证实:确实存在真实的局限第1章人工智能概述31数学的贡献(5)•1930年,哥德尔提出:存在一个有效过程可以证明罗素和弗雷格的一阶逻辑中的任何真值语句,但是一阶逻辑不能捕捉到刻画自然数所需要的数学归纳法原则•1931年,哥德尔证明了他的不完备性定理:在任何表达能力足以描述自然数的语言(如某种逻辑)中,在不能通过任何算法建立它们的真值的意义上,存在不可判定的真值语句•不完备性定理还可以表述为:整数的某些函数无法用算法表示,即不可计算的第1章人工智能概述32数学的贡献(6)•由此激发了AllenTuring(图灵,1912~1954)的热情,他试图精确地刻画哪些函数是能够被计算的/实际上计算或者有效过程的概念是无法给出形式化定义的/但是Church-Turing论题指出:图灵机可以计算任何可计算的函数/该结论作为一个充分的定义而被接受•图灵说明了一些函数没有对应的图灵机/没有通用的图灵机可以判定一个给定的程序对于给定的输入能否返回答案或者永远运行下去第1章人工智能概述33数学的贡献(7)•在不可计算性以外,不可操作性具有更重要的影响/如果解决一个问题需要的计算时间随着实例规模成指数级增长,则该问题被称为不可操作的(计算复杂性问题)•多项式级和指数级增长的区别在20世纪60年代得到重视•如何认识不可操作问题?以StevenCook(1971)和RichardCarp为代表的NP-完全理论的研究提供了一种方法第1章人工智能概述34数学的贡献(8)•Cook和Carp证明有大量各种类别的规范的组合搜索和推理问题属于NP-完全问题•任何NP-完全问题类可归约成的问题类很可能是不可操作的(目前尚未证明,但大家猜测是如此)•AI研究帮助解释了为什么NP-完全问题的一些实例很难,而