1、1第 1 章 人工智能概述课后题答案1.1 什么是智能?智能包含哪几种能力?解:智能主要是指人类的自然智能。一般认为,智能是是一种认识客观事物和运用知识解决问题的综合能力。智能包含感知能力,记忆与思维能力,学习和自适应能力,行为能力1.2 人类有哪几种思维方式?各有什么特点?解:人类思维方式有形象思维、抽象思维和灵感思维形象思维也称直感思维,是一种基于形象概念,根据感性形象认识材料,对客观对象进行处理的一种思维方式。抽象思维也称逻辑思维,是一种基于抽象概念,根据逻辑规则对信息或知识进行处理的理性思维形式。灵感思维也称顿悟思维,是一种显意识与潜意识相互作用的思维方式。1.3 什么是人工智能?它的
2、研究目标是什么?解:从能力的角度讲,人工智能是指用人工的方法在机器(计算机)上实现智能;从学科的角度看,人工智能是一门研究如何构造智能机器或智能系统,使它能模拟、延伸和扩展人类智能的学科。研究目标:对智能行为有效解释的理论分析;解释人类智能;构造具有智能的人工产品;1.4 什么是图灵实验?图灵实验说明了什么?解:图灵实验可描述如下,该实验的参加者由一位测试主持人和两个被测试对象组成。其中,两个被测试对象中一个是人,另一个是机器。测试规则为:测试主持人和每个被测试对象分别位于彼此不能看见的房间中,相互之间只能通过计算机终端进行会话。测试开始后,由测试主持人向被测试对象提出各种具有智能性的问题,但
3、不能询问测试者的物理特征。被测试对象在回答问题时,都应尽量使测试者相信自己是“人”,而另一位是”机器”。在这个前提下,要求测试主持人区分这两个被测试对象中哪个是人,哪个是机器。如果无论如何更换测试主持人和被测试对象的人,测试主持人总能分辨出人和机器的概率都小于 50%,则认为该机器具有了智能。1.5 人工智能的发展经历了哪几个阶段?解:孕育期,形成期,知识应用期,从学派分立走向综合,智能科学技术学科的兴起21.6 人工智能研究的基本内容有哪些?解:与脑科学与认知科学的交叉研究智能模拟的方法和技术研究1.7 人工智能有哪几个主要学派?各自的特点是什么?解:符号主义:又称为逻辑主义、心理学派或计算
4、机学派,是基于物理符号系统假设和有限合理性原理的人工智能学派。符号主义认为人工智能起源于数理逻辑,人类认知(智能)的基本元素是符号,认知过程是符号表示上的一种运算。联结主义:又称为仿生学派或生理学派,是基于神经网络及网络间的联结机制与学习算法的人工智能学派。联结主义认为人工智能起源于仿生学,特别是人脑模型的研究。行为主义:又称进化主义或控制论学派,是基于控制论和“感知-动作”控制系统的人工智能学派。行为主义认为人工智能起源于控制论,提出智能取决于感知和行为,取决于对外界复杂环境的适应,而不是表示和推理。1.8 人工智能有哪些主要研究和应用领域?其中哪些是新的研究热点?解:机器思维:推理、搜索、
5、规划机器学习:符号学习、联结学习、知识发现和数据挖掘机器感知:机器视觉、模式识别、自然语言理解机器行为:智能控制、智能制造计算智能:神经计算、进化计算、模糊计算分布智能智能系统:专家系统、智能决策支持系统人工心理与人工情感研究热点:智能机器人、智能检索、智能游戏等。1.9 人工智能未来发展有哪些值得思考和关注的重要问题?解:多学科交叉研究分布智能与社会智能研究集成智能研究智能网络研究认知计算与情感计算研究智能系统与智能服务3第 2 章 确定性知识系统参考答案2.1 什么是知识?有哪几种主要的知识分类方法?解:知识是人们在改造客观世界的实践中积累起来的认识和经验;知识是对信息进行智能性加工中形成
6、的对客观世界规律性的认识。分类:按适用范围:常识性知识、领域性知识按作用效果:陈述性知识、过程性知识、控制性知识按确定性:确定性知识、不确定性知识2.2 什么是知识表示?知识表示有哪些要求?解:知识表示就是对知识的描述,即用一些约定的符号把知识编码成一组可以被计算机直接识别,并便于系统使用的数据结构一介谓词逻辑表示法非结构化方法 产生式陈述性知识表示 语义网络结构化方法框架结构知识表示方法过程性知识表示要求:表示能力,可利用性,可组织性与可维护性,可理解性和可实现性2.3 从心理学的角度看,推理有哪两种比较典型的观点?它们的含义是什么?解:结构观点:这种观点从结构的角度出发,认为推理由两个以上
7、判断所组成,每个判断所揭示的是概念之间的联系和关系,推理过程是一种对客观事物做出肯定或否点的思维活动。过程观点:这种观点从过程的角度出发,认为推理是在给定信息和已有知识的基础上所进行的一系列加工操作,其代表人物克茨提出了如下人类推理的公式:y=F(x,k) 式中,x 是推理时给出的信息,k 是推理时可用的领域知识和特殊事例,F 是可用的一系列操作,y是推理过程所得到的结论。2.4 什么是推理?它有哪些分类方法?解:推理是由具体事例归纳出一般规律,或者根据已有的知识推出新的结论的思维过程分为演绎法和归纳法42.5 推理中的控制策略包括哪几个方面的内容?主要解决哪些问题?解:包括推理策略和搜索策略
8、推理策略主要解决推理方向,求解策略,限制策略,冲突消解策略等搜索策略主要解决推理线路,推理效果,推理效率等问题2.6 什么是命题?什么是命题的真值?解:一个陈述句称为一个断言,凡有真假意义的断言称为命题。命题的意义通常称为真值,当命题的意义为真时,则称该命题的真值为真。2.7 什么是论域?什么是谓词解:论域是由所讨论对象之全体构成的非空集合。论域中的元素称为个体,论域也常称为个体域。在谓词逻辑中,命题是用谓词来表示的。一个谓词可分为谓词名和个体两部分。2.8 什么是自由变元?什么是约束变元?解:当一个谓词公式含有量词时,区分个体变元是否受量词的约束是很重要的。通常,把位于量词后面的单个谓词或者
9、用括弧括起来的合式公式称为该量词的辖域,辖域内与量词中受约束的变元称为约束变元,不受约束的变元称为自由变元。2.9 设有如下语句,请用相应的谓词公式分别把他们表示出来:(1) 有的人喜欢梅花,有的人喜欢菊花,有的人既喜欢梅花又喜欢菊花 。解:定义谓词P(x):x 是人L(x,y): x 喜欢 y其中,y 的个体域是梅花,菊花 。将知识用谓词表示为:( x )(P(x)L(x, 梅花)L(x, 菊花)(L(x, 梅花) L(x, 菊花)(2) 有人每天下午都去打篮球。解:定义谓词P(x):x 是人B(x):x 打篮球A(y):y 是下午将知识用谓词表示为:( x )( y) (A(y)B(x)P
10、(x)5(3) 新型计算机速度又快,存储容量又大。解:定义谓词NC(x): x 是新型计算机F(x):x 速度快B(x):x 容量大将知识用谓词表示为:( x) (NC(x)F(x)B(x)(4) 不是每个计算机系的学生都喜欢在计算机上编程序。解:定义谓词S(x):x 是计算机系学生L(x, pragramming):x 喜欢编程序U(x,computer):x 使用计算机将知识用谓词表示为: ( x) (S(x)L(x, pragramming)U(x,computer)(5) 凡是喜欢编程序的人都喜欢计算机。解:定义谓词P(x):x 是人L(x, y): x 喜欢 y将知识用谓词表示为:(
11、 x) (P(x)L(x,pragramming)L(x, computer)2.10 用谓词表示法求解机器人摞积木问题。设机器人有一只机械手,要处理的世界有一张桌子,桌上可堆放若干相同的方积木块。机械手有 4 个操作积木的典型动作:从桌上拣起一块积木;将手中的积木放到桌之上;在积木上再摞上一块积木;从积木上面拣起一块积木。积木世界的布局如下图所示。解:(1) 先定义描述状态的谓词CLEAR(x):积木 x 上面是空的。 ON(x, y):积木 x 在积木 y 的上面。ONTABLE(x):积木 x 在桌子上。图 2.10 机器人摞积木问题CA BABC6HOLDING(x):机械手抓住 x。
12、HANDEMPTY:机械手是空的。其中,x 和 y 的个体域都是A, B, C。问题的初始状态是:ONTABLE(A)ONTABLE(B)ON(C, A)CLEAR(B)CLEAR(C)HANDEMPTY问题的目标状态是:ONTABLE(C)ON(B, C)ON(A, B)CLEAR(A) HANDEMPTY(2) 再定义描述操作的谓词在本问题中,机械手的操作需要定义以下 4 个谓词: Pickup(x):从桌面上拣起一块积木 x。 Putdown(x):将手中的积木放到桌面上。Stack(x, y):在积木 x 上面再摞上一块积木 y。Upstack(x, y):从积木 x 上面拣起一块积木
13、 y。其中,每一个操作都可分为条件和动作两部分,具体描述如下: Pickup(x)条件:ONTABLE(x),HANDEMPTY ,CLEAR(x)动作:删除表:ONTABLE(x),HANDEMPTY添加表:HOLDING(x)Putdown(x)条件:HOLDING (x)动作:删除表:HOLDING(x)添加表:ONTABLE(x),CLEAR(x) ,HANDEMPTYStack(x, y)条件:HOLDING (x),CLEAR(y)动作:删除表:HOLDING(x),CLEAR(y)添加表:HANDEMPTY ,ON(x, y) ,CLEAR(x)Upstack(x, y)条件:H
14、ANDEMPTY, CLEAR(x) ,ON(x,y)动作:删除表:HANDEMPTY ,ON(x, y)添加表:HOLDING(x),CLEAR(x)7(3) 问题求解过程利用上述谓词和操作,其求解过程为:2.11 用谓词表示法求解农夫、狼、山羊、白菜问题。农夫、狼、山羊、白菜全部放在一条河的左岸,现在要把他们全部送到河的右岸去,农夫有一条船,过河时,除农夫外船上至多能载狼、山羊、白菜中的一种。狼要吃山羊,山羊要吃白菜,除非农夫在那里。似规划出一个确保全部安全过河的计划。请写出所用谓词的定义,并给出每个谓词的功能及变量的个体域。解:(1) 先定义描述状态的谓词要描述这个问题,需要能够说明农夫
15、、狼、羊、白菜和船在什么位置,为简化问题表示,取消船在河中行驶的状态,只描述左岸和右岸的状态。并且,由于左岸和右岸的状态互补,因此可仅对左岸或右岸的状态做直接描述。本题选择对左岸进行直接描述的方法,即定义谓词如下:AL(x): x 在左岸其中,x 的个体域是农夫,船,狼,羊,白菜 。对应地, AL(x)表示 x 在右岸。问题的初始状态:AL(农夫)AL(船)AL(狼)AL(羊)AL(白菜)问题的目标状态:AL(农夫)AL(船)ONTABLE(A) ONTABLE(B)ON(C, A)CLEAR(B)CLEAR(C) HANDEMPTYUpstack(C,A)ONTABLE(A)ONTABLE(
16、B) HOLDING(C)CLEAR(A)CLEAR(B)Putdown(C)ONTABLE(A)ONTABLE(B)ONTABLE(C)CLEAR(A)CLEAR(B)CLEAR(C)HANDEMPTYPickup(A)ONTABLE(A)ONTABLE(C)HOLDING(B)CLEAR(A)CLEAR(B)CLEAR(C)Stack(B,C)ONTABLE(A)ONTABLE(C)ON(B,C)CLEAR(A)CLEAR(B)HANDEMPTYONTABLE(C)ON(B,C)CLEAR(A)CLEAR(B)HOLDING(A)Stack(A,B)ONTABLE(C)ON(B,C)ON(
17、A,B)CLEAR(A)HANDEMPTPickup(B)8AL(狼)AL(羊)AL(白菜)(2) 再定义描述操作的谓词本题需要以下 4 个描述操作的谓词:L-R:农夫自己划船从左岸到右岸L-R(x):农夫带着 x 划船从左岸到右岸R-L:农夫自己划船从右岸到左岸R-L(x) :农夫带着 x 划船从右岸到左岸其中,x 的个体域是狼,羊,白菜 。对上述每个操作,都包括条件和动作两部分。它们对应的条件和动作如下:L-R:农夫划船从左岸到右岸条件:AL(船),AL(农夫),AL( 狼)AL(羊) ,AL(羊)AL( 白菜)动作:删除表:AL(船), AL(农夫)添加表:AL(船) ,AL(农夫)L-
18、R(狼):农夫带着狼划船从左岸到右岸条件:AL(船),AL(农夫),AL( 狼),AL(羊)动作:删除表:AL(船), AL(农夫),AL( 狼)添加表:AL(船) ,AL(农夫),AL( 狼)L-R(羊):农夫带着羊划船从左岸到右岸条件:AL(船),AL(农夫),AL( 羊), AL(狼) ,AL(白菜)或:AL(船),AL(农夫),AL( 羊),AL(狼) , AL(白菜)动作:删除表:AL(船), AL(农夫),AL( 羊)添加表:AL(船) ,AL(农夫),AL( 羊)L-R(白菜):农夫带着白菜划船从左岸到右岸条件:AL(船),AL(农夫),AL( 白菜),AL(狼) 动作:删除表:
19、AL(船), AL(农夫),AL( 白菜)添加表:AL(船) ,AL(农夫),AL( 白菜)R-L:农夫划船从右岸到左岸条件:AL(船),AL(农夫),AL( 狼)AL(羊) ,AL(羊)AL( 白菜)或:AL(船),AL(农夫) ,AL( 狼),AL(白菜) ,AL(羊)动作:删除表:AL(船) ,AL(农夫)添加表:AL(船), AL(农夫)R-L(羊) :农夫带着羊划船从右岸到左岸条件:AL(船),AL(农夫),AL( 羊) ,AL(狼) , AL(羊),AL( 白菜)动作:删除表:AL(船) ,AL(农夫),AL( 羊)添加表:AL(船), AL(农夫),AL( 羊)(3) 问题求解过
20、程AL(农夫)AL(船) L-R(羊)AL(狼)AL(白菜)AL(农夫)AL(船)AL(羊)AL(农夫)AL(船)AL(狼)AL(白菜)AL(羊)L-R(狼) R-L(羊) AL(白菜)AL(农夫)AL(船)AL(狼)AL(羊)R-L 9AL(狼)AL(羊)AL(白菜)2.12 用谓词表示法求解修道士和野人问题。在河的北岸有三个修道士、三个野人和一条船,修道士们想用这条船将所有的人都运过河去,但要受到以下条件限制:(1) 修道士和野人都会划船,但船一次只能装运两个人。(2) 在任何岸边,野人数不能超过修道士,否则修道士会被野人吃掉。假定野人愿意服从任何一种过河安排,请规划出一种确保修道士安全的
21、过河方案。要求写出所用谓词的定义、功能及变量的个体域。解:(1)定义谓词先定义修道士和野人人数关系的谓词:G(x,y,S): 在状态 S 下 x 大于 yGE(x,y,S):在状态 S 下 x 大于或等于 y其中,x,y 分别代表修道士人数和野人数,他们的个体域均为0,1,2,3 。再定义船所在岸的谓词和修道士不在该岸上的谓词:Boat(z,S):状态 S 下船在 z 岸EZ(x,S): 状态 S 下 x 等于 0,即修道士不在该岸上其中,z 的个体域是L,R ,L 表示左岸,R 表示右岸。再定义安全性谓词:Safety(z,x,y,S)(G(x,0,S)GE(x,y,S) (EZ(x,S)其
22、中,z,x,y 的含义同上。该谓词的含义是:状态 S 下,在 z 岸,保证修道士安全,当且仅当修道士不在该岸上,或者修道士在该岸上,但人数超过野人数。该谓词同时也描述了相应的状态。再定义描述过河方案的谓词:L-R(x, x1, y, y1,S):x1 个修道士和 y1 个野人渡船从河的左岸到河的右岸条件:Safety(L,x-x1,y-y1,S)Safety(R,3-x+x1,3-y+y1,S) Boat(L,S)动作:Safety(L,x-x1,y-y1,S)Safety(R,3-x+x1,3-y+y1,S) Boat(R,S)R-L (x, x1, y, y1,S):x2 个修道士和 y2
23、 个野人渡船从河的左岸到河的右岸条件:Safety(R,3-x-x2,3-y-y2,S)Safety(L,x+x2,y+y2,S) Boat(R,S)动作:Safety(R,3-x-x2,3-y-y2,S)Safety(L,x+x2,y+y2,S) Boat(L,S)R-L AL(农夫)AL(船)AL(羊)AL(白菜)AL(狼)L-R(白菜)AL(羊)AL(农夫)AL(船)AL(白菜)AL(狼)AL(农夫)AL(船)AL(羊)AL(白菜)AL(狼)L-R(羊) AL(农夫)AL(船)AL(羊)AL(白菜)AL(狼)10(2) 过河方案Safety(L,3,3,S0)Safety(R,0,0,S
24、0)Boat(L,S0)L-R(3, 1, 3, 1,S0) L-R(3, 0, 3, 2,S0)Safety(L,2,2,S1)Safety(R,1,1,S1)Boat(R,S1)Safety(L,3,1,S1)Safety(R,0,2,S1)Boat(R,S1)R-L (2, 1, 2, 0,S1) R-L (3,0, 1, 1,S1)Safety(L,3,2,S2)Safety(R,0,1,S2)Boat(L,S2)L-R(3, 0, 2, 2,S2)Safety(L,3,0,S3)Safety(R,0,3,S3)Boat(R,S3)R-L (3, 0, 0, 1,S3)Safety(L
25、,3,1,S4)Safety(R,0,2,S1)Boat(L,S4)L-R(3, 2, 1, 0,S4)Safety(L,1,1,S5)Safety(R,2,2,S5)Boat(R,S5)R-L (1, 1, 1, 1,S5)Safety(L,2,2,S6)Safety(R,1,1,S6)Boat(L,S6)L-R(2, 2, 2, 0,S6)Safety(L,0,2,S7)Safety(R,3,1,S7)Boat(R,S7)R-L (0, 0, 2, 1,S7)Safety(L,0,3,S8)Safety(R,3,0,S8)Boat(L,S8)L-R(0, 0, 3, 2,S8)Safety
26、(L,0,1,S9)Safety(R,3,2,S9)Boat(R,S9)R-L (0, 1, 1, 0,S9)Safety(L,1,1,S10)Safety(R,2,2,S10)Boat(L,S10)L-R(1, 1, 1, 1,S10)Safety(L,0,0,S11)Safety(R,3,3,S11)Boat(R,S11)2.13 什么是产生式?它的基本形式是什么?代表什么含义?解:“产生式”由美国数学家波斯特(E.POST)在 1934 年首先提出,它根据串代替规则提出了一种称为波斯特机的计算模型,模型中的每条规则称为产生式。产生式的基本形式 PQ 或者 IF P THEN Q。P 是产生式的前提,也称为前件,它给出了该产生式可否使用的先决条件,由事实的逻辑组合来构成;Q 是一组结论或操作,也称为产生式的后件,它指出当前题 P 满足时,应该推出的结论或应该执行的动作。产生式的含义如果前提 P 满足,则可推出结论 Q 或执行 Q 所规定的操作。2.14 产生式表示的特征是什么?解:优点:自然性、模块性、有效性