代价树如下图所示分别给出宽度优先及深度优先搜索策略-Read

第3章作业题参考答案

2.综述图搜索的方式和策略。

答:用计算机来实现图的搜索,有两种最基本的方式:树式搜索和线式搜索。

树式搜索就是在搜索过程中记录所经过的所有节点和边。

线式搜索就是在搜索过程中只记录那些当前认为是处在所找路径上的节点和边。线式搜索的基本方式又可分为不回溯和可回溯的的两种。

图搜索的策略可分为:盲目搜索和启发式搜索。

盲目搜索就是无向导的搜索。树式盲目搜索就是穷举式搜索。

而线式盲目搜索,对于不回溯的就是随机碰撞式搜索,对于回溯的则也是穷举式搜索。

启发式搜索则是利用“启发性信息”引导的搜索。启发式搜索又可分为许多不同的策略,如全局择优、局部择优、最佳图搜索等。

5.(供参考)解:引入一个三元组(q0,q1,q2)来描述总状态,开状态

为0,关状态为1,全部可能的状态为:

Q0=(0,0,0) ; Q1=(0,0,1); Q2=(0,1,0)

Q3=(0,1,1) ; Q4=(1,0,0); Q5=(1,0,1)

Q6=(1,1,0) ; Q7=(1,1,1)。

翻动琴键的操作抽象为改变上述状态的算子,即F ={a, b, c} a:把第一个琴键q0翻转一次 b:把第二个琴键q1翻转一次 c:把第三个琴键q2翻转一次

问题的状态空间为<{Q5},{Q0 Q7}, {a, b, c}>

问题的状态空间图如下页所示:从状态空间图,我们可以找到Q5到Q7为3的两条路径,而找不到Q5到Q0为3的路径,因此,初始状态“关、开、关”连按三次琴键后只会出现“关、关、关”的状态。

6.解:用四元组(f 、w 、s 、g)表示状态, f 代表农夫,w 代表狼,s

代表羊,g 代表菜,其中每个元素都可为0或1,用0表示在左

(0,0,

(1,0,(0,0,(0,1,(1,1,(1,0,(0,1,

(1,1,

a

c

a

b a

c a

b

c b

b c

岸,用1表示在右岸。

初始状态S0:(0,0,0,0) 目标状态:(1,1,1,1)

不合法的状态:(1,0,0,*),(1,*,0,0),(0,1,1,*),(0,*,1,1) 操作集F={P1,P2,P3,P4,Q1,Q2,Q3,Q4}

方案有两种:p2→q0 →p3→q2 →p2 →q0 →p2

p2→q0 →p1→q2 →p3→q0→p2

12 一棵解树由S0,A,D,t1,t2,t3组成;另一棵解树由S0,B,E,t4,t5

组成。

左边的解树:按和代价: g(D)=4,g(A)=7,g(S0)=12

按最大代价: g(D)=2,g(A)=5,g(S0)=10

右边的解树:按和代价:g(E)=2,g(B)=11,g(S0)=18

按最大代价: g(E)=2,g(B)=7,g(S0)=14

按和代价计算,左边的解树为最优解树;按最大代价计算,仍然是左边的解树为最优解树。

因此,左边的解树为最优解树。

此题需注意:代价最小的为最优解树。所以,不管是按和代价,还是按最大代价,都是左边的树是最优解树。

14.传教士与野人问题:传教士(M)与野人(C)数目均为五人,渡

船(B)最多可乘3人,请定义一个启发函数,并给出相应的搜索树。

解:定义启发函数h(n)=0; h(n)=M+C; h(n)=M+C-2B 只有h(n)=M+C-2B可满足h(n)≤h*(n),是满足A*条件

的。

分两种情况来讨论:

先考虑船在左岸的情况,如果不考虑限制条件,至少需要[(M+C-3)/2]*2+1次,其中分子上的“-3”表示剩下的3个留待最后一次运过去。除以2是因为一个来回可以运过去2人,需(M+C-3)

/2个来回,而来回数不能是小数,所以要取整。一个来回是两次,所以“*2”,而最后的“+1”,则表示将剩下的3个运过去需要一次摆渡。化简后为:

[(M+C-3)/2]*2+1=M+C-2

再考虑船在右岸的情况。同样不考虑限制条件。船在右岸,需要一个人将船运往左岸,因此,对于状态(M,C,0),需要的摆渡数,相当于船在左岸的(M+1,C,1)或(M,C+1,1),所以需要的最少摆渡数为M+C+1-2+1=M+C。

综合条件,需要的最少摆渡数为M+C-2B。

当加上限制条件时,最优的摆渡次数只能大于等于该摆渡数。所以该启发函数是满足A*条件的。

搜索图如下:

补充1:代价树如下图所示:分别给出宽度优先及深度优先搜索策略下的搜索过程和解。其中,F 、I 、 J 、L 是目标节点。

宽度优先搜索过程:A -﹥ C -﹥ B -﹥ G -﹥E

-﹥D -﹥ M -﹥ J ,G (J )=6, 解为:A -﹥ B -﹥ E -﹥ J 深度优先搜索过程为:A -﹥ C -﹥ G -﹥E

-﹥M -﹥P ,G (P )=7,

解为:A -﹥ C -﹥ G -﹥E -﹥M -﹥P

补充剪枝:最佳路径为N-〉A-〉B-〉C-〉D

N

以下题目仅供大家参考:

1.代价树如下图所示:分别给出宽度优先及深度优先搜索策略下的搜

索过程和解。其中,F、I、 J、L是目标节点。

解答、宽度优先搜索过程:(1)先将A放入OPEN表中,g(A)=0;(2)将A放入CLOSED表中,扩展A节点,得节点B、C,g(B)=1,g(C)=2,将B、C按代价从小到大放入OPEN中;

(3)将B放入CLOSED表中,扩展B节点得节点D、E,g(D)=5,g(E)=4,将C、D、E按代价从小到大排列放入OPEN表中;(4)将C放入CLOSED表中,扩展C得节点F、G,g(F)=6,g(G)=3,将D、E、F、G按代价从小到大排列放入OPEN表中;

(5)将G放入CLOSED表中,扩展G得L,M,g(L)=4,g(M)=5, 将D、E、F、L,M按代价从小到大排列放入OPEN表中;(6)将L放入CLOSED表中,L为目标节点,搜索成功。

解为A-﹥B-﹥C-﹥G-﹥L,g(L)=4

深度优先搜索过程:

(1)先将A放入OPEN表中,g(A)=0;

(2)将A 放入CLOSED 表中,扩展A 节点,得节点B 、C ,

g(B)=1,g(C)=2,将B 、C 按代价从小到大放入OPEN 表中; (3)将B 放入CLOSED 表中,扩展B 节点得节点D 、E ,g (D )

=5,g(E)=4,将D 、E 按 代价从小到大排列放入OPEN 表中; (4)将E 放入CLOSED 表中,扩展E 节点得节点J 、K ,g (J )=5,g(K)=6,

将J 、K 按 代价从小到大排列放入OPEN 表中; (5)将J 放入CLOSED 表中,J 为目标节点,搜索成功。 解为A -﹥ B -﹥ E -﹥ J ,g (J )=4

2设有三个大小不等的圆盘A ,B ,C 套在一根轴上,每个圆盘都标有数字1234,并且每个圆盘都可以独立地绕轴做逆时针转动,并且每次转动90度,其初始状态和目标状态如图所示,请分别画出广度优先搜索和深度优先搜索的搜索树,并求出从S0到Sg 的路径。

解:状态表示:用轴上方的3个数字作为标记,按A,B,C 逆时针顺序移动

初始状态S0

初始状态Sg

状态为(a,b,c)

初始状态为;(2,2,2),目标状态为(4,2,1)

操作每次转动其中的一个盘,逆时针90度,分别为

Pa:if a>=2then a=a-1

If a=1then a=4

Pb:if b>=2 then b=b-1

If b=1then b=4

Pc:if c>=2 then c=c-1

If c=1then c=4

则广度优先搜索树为

深度优先搜索树为:

3 余一棋博弈法如下:两棋手可以从五个钱币堆中轮流拿走一个、两个或三个钱币,捡起最后一个钱币者算输。试通过博弈证明,后走的选手必胜,并给一个简单的特征标记来表示取胜策略。

图练习与答案

一、应用题 1.首先将如下图所示的无向图给出其存储结构的邻接链表表示,然后写出对其分别进行深 度,广度优先遍历的结果。 1题图 答.深度优先遍历序列:125967384 宽度优先遍历序列:123456789 注:(1)邻接表不唯一,这里顶点的邻接点按升序排列 (2)在邻接表确定后,深度优先和宽度优先遍历序列唯一 (3)这里的遍历,均从顶点1开始 2.给出图G: (1).画出G的邻接表表示图; (2).根据你画出的邻接表,以顶点①为根,画出G的深度优先生成树和广度优先生成树。 (3)宽度优先生成树 3.在什么情况下,Prim算法与Kruskual算法生成不同的MST? 答.在有相同权值边时生成不同的MST,在这种情况下,用Prim或Kruskal也会生成不 同的MST

4.已知一个无向图如下图所示,要求分别用Prim 和Kruskal 算法生成最小树(假设以①为起点,试画出构造过程)。 答.Prim 算法构造最小生成树的步骤如24题所示,为节省篇幅,这里仅用Kruskal 算法,构造最小生成树过程如下:(下图也可选(2,4)代替(3,4),(5,6)代替(1,5)) 5.G=(V,E)是一个带有权的连通图,则: (1).请回答什么是G 的最小生成树; (2).G 为下图所示,请找出G 的所有最小生成树。 28题图 答.(1)最小生成树的定义见上面26题 (2)最小生成树有两棵。 (限于篇幅,下面的生成树只给出顶点集合和边集合,边以三元组(Vi,Vj,W )形式),其中W 代表权值。 V (G )={1,2,3,4,5} E1(G)={(4,5,2),(2,5,4),(2,3,5),(1,2,7)}; E2(G)={(4,5,2),(2,4,4),(2,3,5),(1,2,7)} 6.请看下边的无向加权图。 (1).写出它的邻接矩阵。(2).按Prim 算法求其最小生成树,并给出构造最小生成树过程中辅助数组的各分量值。辅助数组各分量值:

代价树如下图所示分别给出宽度优先及深度优先搜索策略-Read

第3章作业题参考答案 2.综述图搜索的方式和策略。 答:用计算机来实现图的搜索,有两种最基本的方式:树式搜索和线式搜索。 树式搜索就是在搜索过程中记录所经过的所有节点和边。 线式搜索就是在搜索过程中只记录那些当前认为是处在所找路径上的节点和边。线式搜索的基本方式又可分为不回溯和可回溯的的两种。 图搜索的策略可分为:盲目搜索和启发式搜索。 盲目搜索就是无向导的搜索。树式盲目搜索就是穷举式搜索。 而线式盲目搜索,对于不回溯的就是随机碰撞式搜索,对于回溯的则也是穷举式搜索。 启发式搜索则是利用“启发性信息”引导的搜索。启发式搜索又可分为许多不同的策略,如全局择优、局部择优、最佳图搜索等。 5.(供参考)解:引入一个三元组(q0,q1,q2)来描述总状态,开状态 为0,关状态为1,全部可能的状态为: Q0=(0,0,0) ; Q1=(0,0,1); Q2=(0,1,0) Q3=(0,1,1) ; Q4=(1,0,0); Q5=(1,0,1) Q6=(1,1,0) ; Q7=(1,1,1)。

翻动琴键的操作抽象为改变上述状态的算子,即F ={a, b, c} a:把第一个琴键q0翻转一次 b:把第二个琴键q1翻转一次 c:把第三个琴键q2翻转一次 问题的状态空间为<{Q5},{Q0 Q7}, {a, b, c}> 问题的状态空间图如下页所示:从状态空间图,我们可以找到Q5到Q7为3的两条路径,而找不到Q5到Q0为3的路径,因此,初始状态“关、开、关”连按三次琴键后只会出现“关、关、关”的状态。 6.解:用四元组(f 、w 、s 、g)表示状态, f 代表农夫,w 代表狼,s 代表羊,g 代表菜,其中每个元素都可为0或1,用0表示在左 (0,0, (1,0,(0,0,(0,1,(1,1,(1,0,(0,1, (1,1, a c a b a c a b c b b c

人工智能课程习题与部分解答

《人工智能》 课程习题与部分解答 第1章 绪论 什么是人工智能? 它的研究目标是什么? 什么是图灵测试?简述图灵测试的基本过程及其重要特征. 在人工智能的发展过程中,有哪些思想和思潮起了重要作用? 在人工智能的发展过程中,有哪些思想和思潮起了重要作用? 人工智能的主要研究和应用领域是什么?其中,哪些是新的研究热点? 第2章 知识表示方法 什么是知识?分类情况如何? 什么是知识表示?不同的知识表示方法各有什么优缺点? 人工智能对知识表示有什么要求? 用谓词公式表示下列规则性知识: 自然数都是大于零的整数。 任何人都会死的。 [解] 定义谓词如下: N(x): “x 是自然数”, I(x): “x 是整数”, L(x): “x 大于0”, D(x): “x 会死的”, M(x): “x 是人”,则上述知识可用谓词分别表示为: )]()()()[(x I x L x N x ∨→? )]()()[(x D x M x →? 用谓词公式表示下列事实性知识: 小明是计算机系的学生,但他不喜欢编程。 李晓新比他父亲长得高。

产生式系统由哪几个部分组成? 它们各自的作用是什么? 可以从哪些角度对产生式系统进行分类? 阐述各类产生式系统的特点。 简述产生式系统的优缺点。 简述框架表示的基本构成,并给出框架的一般结构 框架表示法有什么特点? 试构造一个描述你的卧室的框架系统。 试描述一个具体的大学教师的框架系统。 [解] 一个具体大学教师的框架系统为: 框架名:<教师-1> 类属:<大学教师> 姓名:张宇 性别:男 年龄:32 职业:<教师> 职称:副教授 部门:计算机系 研究方向:计算机软件与理论 工作:参加时间:2000年7月 工龄:当前年份-2000 工资:<工资单> 把下列命题用一个语义网络表示出来 (1)树和草都是植物; (2)树和草都是有根有叶的; (3)水草是草,且生长在水中; (4)果树是树,且会结果; (5)苹果树是果树的一种,它结苹果。

作业参考答案(2)

作业参考答案(2) 第1章 1.1何谓人工智能?人类智能主要包括那些能力? 1.2知识工程是在什么背景下提出的?知识工程对人工智能的发展有何重要作用? 1.4人工智能有哪几个主要学派?各学派的基本理论框架和研究方法有何不同? 1.6人工智能主要的研究应用领域有哪些? 第2章 2.4 请用相应的谓词公式表示下述语句: ⑴有的人喜欢足球,有的人喜欢排球,有的人既喜欢足球又喜欢排球。 MAN(x): x是人LIKE(x,y): x喜欢y (?x) (MAN(x)∧LIKE(x, Football)) ∨(?x) (MAN(x)∧LIKE(x, Volleytball)) ∨(?x) (MAN(x)∧LIKE(x, Football)∧LIKE(x, Volleytball)) ⑵不是每一个人都喜欢游泳。 MAN(x): x是人 LIKE(x,y): x喜欢y ?(?x) (MAN(x)→LIKE(x, Swimming) 或者 (?x) (MAN(x)∧?LIKE(x, Swimming)) ⑶如果没有利息,那么就没有人去储蓄钱。 S(x, y): x储蓄 y M(y): y是钱 I (x): x是利息 MAN(x): x是人 (?(?x) I (x))→(?x)(?y)(MAN(x)∧M(y)→?S(x, y)) ⑷对于所有的x和y,如果x是y的父亲,y是z的父亲,那么x是z的祖父。 FATHER(x,y): x是y的父亲 GRANDPA(x,y): x是y的祖父 (?x)(?y)( FATHER(x,y)∧(?z) FATHER(y,z))→GRANDPA(x,z))

《人工智能基础与应用》(樊重俊编著)课后题参考答案

第1章习题参考答案 1. 答:人工智能是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学,即用人工的方法在机器(计算机)上实现的智能;或者说是人类智能在机器上的模拟,因此又可称之为机器智能。是在计算机科学、控制论、信息论、神经心理学、哲学、语言学等多学科研究的基础上发展起来的综合性很强的交叉学科,是一门新思想、新观念、新理论、新技术不断出现的新兴学科,也是正在迅速发展的前沿学科。 2. 答:专注于实现AI指名功能的人工智能学派成为符号主义,即只要在符号计算上实现了相应的功能,那么在现实世界就实现了对应的功能,这是智能的充分必要条件。因此,符号主义认为,只要在机器上是正确的,现实世界就是正确的。专注于实现AI指心功能的人工智能学派称为连接主义,连接主义认为大脑是一切智能的基础,主要关注于大脑神经元及其连接机制,试图发现大脑的结构及其处理信息的机制、揭示人类智能的本质机理,进而在机器上实现相应的模拟。专注于实现AI指物功能的人工智能学派成为行为主义,行为主义假设智能取决于感知和行动,不需要知识、表示和推理,只需要将智能行为表现出来就好,即只要能实现指物功能就可以认为具有智能了。 3. 答:知识的基本单位是概念。精通掌握任何一门知识,必须从这门知识的基本概念开始学习。而知识自身也是一个概念。 第2章习题参考答案 1. 答:知识是人们在长期的生活及社会实践中、在科学研究及实验中积累起来的对客观世界的认识与经验。知识是符合文明方向的、人类对物质世界以及精神世界探索的结果总和。知识具有相对正确性、不确定性、可表示性与可利用性的特性。 2. 答:谓词逻辑是基于命题中谓词分析的一种逻辑。个体表示某个独立存在的事物或者某个抽象的概念。个体变量的取值范围称为个体域。个体域可以是有限的,也可以是无限的。谓词的真值是“真”或“假”,而函数的值是个体域中的某个个体,函数无真值可言,它只是在个体域中从一个个体到另一个个体的映射。 3.答:①定义谓词及个体,确定每个谓词及个体的确切定义;②根据要表达的事物或概念,为谓词中的变量赋予特定的值;③根据语义用适当的连接符号将各个谓词连接起来,形成谓词公式。 4. 解:(1)定义谓词如下:Man(x):x是人,Love(x ,y):x爱y,则语句可表达为:(?x)(Man(x)→Love(x ,labour)); (2)定义谓词如下:I(x):x是整数,E(x):x是偶数,O(x):x是奇数,则语句可表达为:(?x)(I(x)→E(x)∨O(x)); (3)定义谓词如下:Computer(x):x是计算机专业的学生,Like(x ,y):x喜欢y,则语句可表达为:Computer(Li)∧?Like(Li ,programming); (4)定义谓词如下:PlayFootball(x):x玩足球,Day(x):x是某一天,则语句可表达为:(?x)(D(x)→PlayFootball(Ta)); (5)定义谓词如下:Abroad(x):x出国留学,Pass(x):x通过外语考试,则语句可表

人工智能及其应用-王万良第五章答案.docx

5.1.什么是搜索?有哪两大类不同的搜索方法?二者的区别是什么? 根据实际情况,按照一定的策略或规则,从知识库中寻找可利用的知识,从而构造出一条使问题获得解决的推理路线的过程,就称为搜索搜索一般分为盲目搜索和启发式搜索。 盲目搜索又称为无信息搜索,即在搜索过程中,只按预先规定的搜索控制策略进行搜索,而没有任何中间信息来改变这些控制策略。由于这种搜索的控制策略都是预定的,不管什么问题都采用这样的控制策略,这就使得搜索带有盲目性,效率不高。只适用于解决较简单问题。 启发式搜索又称有信息搜索,它是指在求解过程中,根据问题本身的特性或搜索过程中产生的一些信息来不断地改变或调整搜索的方向,使搜索朝着最有希望的方向前进,加速问题的求解,并找到最优解。启发式搜索由于考虑到问题本身的特性并利用这些特性,从而使搜索求解的效率更高,更易于求解复杂问题 5.2什么是启发式搜索,什么是启发信息? 启发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。 为减小搜索范围而需要利用某些已知的,有关具体问题领域的特性信息。 5.3请阐述状态空间的一般搜索过程。OPEN表与CLOSED表的作用是什么?有何区别? 1) 把初始节点S0放入OPEN表,并建立只含S0的图,记为G 2) 检查OPEN表是否为空,若为空则问题无解,退出 3) 把OPEN表的第一个节点取出放入CLOSE表,记该节点为节点n 4) 观察节点n是否为目标节点,若是,则求得问题的解,退出 5) 扩展节点n,生成一组子节点。把其中不是节点n先辈的那些子节点记作集合M,并把这些节点作为节点n的子节点加入G中。 6)针对M中子节点的不同情况,分别进行如下处理 对于那些未曾在G中出现过的M成员设置一个指向父节点(n)的指针,并把它放入OPEN表 对于那些先前已在G中出现过的M成员,确定是否要修改指向父节点的指针 对于那些先前已在G中出现,并且已经扩展了的M成员,确定是否需要修改其后继结点指向父节点的指针 7) 按某种搜索策略对OPEN表中的节点进行排序 8) 转第2步 OPEN表:用于存放刚生成的节点 CLOSE表:用于存放将要扩展或已扩展的节点 区别:存放节点节点不同,open表存放未扩展的节点,closed表存放已经扩展的节点。5. 5.5什么是盲目搜索?主要有几种盲目搜索策略? 答:盲目搜索又称无信息搜索,即在搜索过程中,只按预先规定的搜索控制策略进行搜索,而没有任何中间信息来改变这些控制策略。 主要的盲目搜索策略有:宽度优先搜索、深度优先搜索、有界深度优先搜索、代价树的宽度优先搜索和代价树的深度优先搜索。 5.7宽度优先搜索与深度优先搜索有何不同?在何种情况下,宽度优先搜索优于深度优先搜索?在何种情况下,深度优先搜索优于宽度优先搜索? 宽度搜索又称为广度搜索。其基本思想是:从初始节点开始,逐层对节点进行依次扩展, 并考察它是否为目标节点,在对下层节点进行扩展(或搜索)之前,必须完成对当前层的所有节点的扩展(或搜索)。 深度搜索也是一种盲目搜索策略。其基本思想是:首先扩展最新产生的(即最深的)节点,即从初始节点S0开始,在其后继节点中选择一个节点,对其进行考察,若它不是目标节点,则对该节点进行扩展,并再从它的后继节点中选择一个节点进行考察。依此类推,一直搜索下去,当到达某个既非目标节点又无法继续扩展的节点时,才选择其兄弟节点进行考察。在目标节点距离初始节点较近时,宽度优先搜索优于深度优先搜索

第4章 搜索策略习题解答

习题4 4.1理解一般图搜索算法,Open 表和Close 表的作用是什么?举例说明对三类子节点处理方式的差异。 解:略。 4.2对比深度优先和宽度优先的搜索方法,为何说它们都是盲目搜索方法? 解:略。 4.3简述有界深度搜索的步骤,并说明有界深度搜索与深度搜索的区别。 解:略。 4.4启发式知识对搜索的指导作用体现在哪些方面?通过其使用的评价函数,理解启发式搜索算法A*。 解:略。 4.5说明启发式函数h(n)的强弱对搜索效率的影响;实用上,如何使图搜索更为有效? 解:略。 4.6什么是问题规约?为什么应用问题规约得到的状态空间可表示为与或图? 解:略。 4.7举例说明与或图搜索的基本概念:K-连接,根、叶、终节点,解图,解图代价,能解节点和不能解节点。 解:略。 4.8阐述与或图启发式搜索的算法AO *,AO *的可采纳性条件是什么?为什么扩展局部解图时,不必选择h (n )值最小的节点加以扩展? 解:略。 4.9比较搜索算法AO*和A *,并说明两者差异的理由。 解:略。 4.10有一农夫带一只狐狸、一只小羊和一蓝菜过河(从左岸到右岸)。假设船太小,农夫每次只能带一样东西过河;考虑到安全,无农夫看管时,狐狸和小羊不能在一起,小羊和那蓝菜也不能在一起。请为该问题的解决设计状态空间,并画出状态空间图。 解:过程略。状态空间图如下: (1,1,l,1) L(2) (0,1,0,1) (1,1,0,1) R(0) (0,0,0,1) L(1) (0,1,0,0) L(3) (1,0,1,1) R(2) (1,1,1,0) R(2) L(3) L(2)

(0,0,1,0) R(0) (1,0,1,0) L(2) (0,0,0,0) 4.11对八数码问题S0和Sg (如图4.30所示): 图4.30 八数码问题试按宽度优先搜索和深度优先搜索方法,画出状态空间搜索树。解:宽度优先搜索:

人工智能及其应用,王万良第五章答案

5.1 .什么是搜索?有哪两大类不同的搜索方法?二者的区别是什么?根据实际情况,按照一定的策略或规则,从知识库中寻找可利用的知识,从而构造出一条使问题获得解决的推理路线的过程,就称为搜索搜索一般分为盲目搜索和启发式搜索。 盲目搜索又称为无信息搜索,即在搜索过程中,只按预先规定的搜索控制策略进行搜索,而没有任何中间信息来改变这些控制策略。由于这种搜索的控制策略都是预定的,不管什么问题都采用这样的控制策略,这就使得搜索带有盲目性,效率不高。只适用于解决较简单问题。 启发式搜索又称有信息搜索,它是指在求解过程中,根据问题本身的特性或搜索过程中产生的一些信息来不断地改变或调整搜索的方向,使搜索朝着最有希望的方向前进,加速问题的求解,并找到最优解。启发式搜索由于考虑到问题本身的特性并利用这些特性,从而使搜索求解的效率更高,更易于求解复杂问题5.2 什么是启发式搜索,什么是启发信息? 启发式搜索就是在状态空间中的搜索对每一个搜索的位置进行评估,得到最好的位置,再从这个位置进行搜索直到目标。 为减小搜索范围而需要利用某些已知的,有关具体问题领域的特性信息。 5.3 请阐述状态空间的一般搜索过程。OPEN表与CLOSED表的作用是什么?有何区别? 1) 把初始节点S0 放入OPEN表,并建立只含S0的图,记为G 2) 检查OPEN表是否为空,若为空则问题无解,退出 3) 把OPEN表的第一个节点取出放入CLOSE表,记该节点为节点n 4) 观察节点n 是否为目标节点,若是,则求得问题的解,退出 5) 扩展节点n,生成一组子节点。把其中不是节点n 先辈的那些子节点记作集合M,并把这些节点作为节点n 的子节点加入G中。 6) 针对M中子节点的不同情况,分别进行如下处理 对于那些未曾在G 中出现过的M成员设置一个指向父节点( n)的指针,并把它放入OPEN 表 对于那些先前已在G中出现过的M成员,确定是否要修改指向父节点的指针对于那些先前已在G中出现,并且已经扩展了的M成员,确定是否需要修改其后继结点指向父节点的指针 7) 按某种搜索策略对OPEN表中的节点进行排序 8) 转第2 步 OPEN表:用于存放刚生成的节点 CLOSE表:用于存放将要扩展或已扩展的节点 区别:存放节点节点不同,open 表存放未扩展的节点,closed 表存放已经扩展的节点。5. 5.5 什么是盲目搜索?主要有几种盲目搜索策略? 答:盲目搜索又称无信息搜索,即在搜索过程中,只按预先规定的搜索控制策略进行搜索,而没有任何中间信息来改变这些控制策略。 主要的盲目搜索策略有:宽度优先搜索、深度优先搜索、有界深度优先搜索、代价树的宽度 优先搜索和代价树的深度优先搜索。

《人工智能》随堂小测验B(2014)

1、证明G是否是F1、F2的逻辑结论; F1:∀x(P(x) →(Q(x) ∧R(x)) F2:∃x(P(x) ∧S(x)) G:∃x(S(x) ∧R(x)) 2、用语义网络表示下列信息: (1)胡途是思源公司的经理,他35岁,住在飞天胡同68号 (2)清华大学与北京大学进行蓝球比赛,最后以89:102的比分结束。 3、用一个语义网络表示下列命题。 (1)我是一个人 (2)我有一台计算机 (3)我的计算机是PC/PIV1.8G (4)PC机是计算机 (5)PC/PIV1.8G是PC机 (6)PC/PIV1.8G包括硬盘、显示器、CPU、内存。 4、利用谓词逻辑表示下列知识(包括已知和结论),然后化成子句集: (1)凡是干净的东西就有人喜欢; (2)人们都不喜欢老鼠 求证:老鼠是不干净的。 5、设有下列语句,请用相应的谓词公式把它们表示出来: 1)有的人喜欢足球,有的人喜欢排球,有的人既喜欢足球又喜欢排球。 2)不是每一个人都喜欢游泳。 3)如果没有利息,那么就没有人去储蓄钱。 4)对于所有的x和y , 若x是y的孩子,那么y是x的父母。 5)登高望远。 6)响鼓不用重锤。 7)如果b>a>0 和c>d>0 ,则有 (b *(a+c) / d)>b 。 6、设有如下关系:(1)如果x是y的父亲,y又是z的父亲,则x是z的祖父;(2)老李是大李的父亲;(3)大李是小李的父亲;问上述人员中谁和谁是祖孙关系? 7、已知范真的老师是张先生,范真与李伟是同班同学。如果X与Y是同班同学,则X的老师也是Y的老师。请问李伟的老师是谁?

8、求下列公式的子句集: (1)(∀x) [P(x)→Q(x)] (2){~{(∀x)P(x)}}→(∃x)[~Q(x)] 9、用归结反演法证明下列公式的永真性 (1)(∃x)(∃y){[P(f(x))∧Q(f(B))]→[P(f(A))∧P(y)∧Q(y)]} (2)(∃x)(∀y)P(x,y)→(∀y)(∃x)P(x,y) 10、如下图所示,分别用代价树的广度优先搜索策略和代价树的深度优先搜索策略,求A到E的最短费用路径。 11、设有如图所示的博弈树,其中最下面的数字是假设的估值,请对该博弈树作如下工作: (1) 计算各节点的倒推值; (2)利用α-β剪枝技术剪去不必要的分枝。 12、某单位派遣出国人员,有赵、钱、孙三位候选人,经讨论后决定: (1)三人中至少派遣一人。 (2)如果赵去而钱不去,则一定派孙去。 (3)如果钱去,则一定派孙去。 求证:一定会派孙出国。设用P(x)表示派x出国,zhao、qian、sun分别表示三人,将已知条件与目标用谓词公式正确的表示出来,并用消解反演进行证明。

人工智能[第五章状态空间搜索策略]山东大学期末考试知识点复习

第五章状态空间搜索策略 搜索是人工智能的一个基本问题,是推理不可分割的一部分。搜索是求解问 题的一种方法,是根据问题的实际情况,按照一定的策略或规则,从知识库中寻找可利用的知识,从而构造出一条使问题获得解决的推理路线的过程。搜索包含两层含义:一层含义是要找到从初始事实到问题最终答案的一条推理路线;另一层含义是找到的这条路线是时间和空间复杂度最小的求解路线。搜索可分为盲目搜索和启发式搜索两种。 1.1 盲目搜索策略 1.状态空间图的搜索策略 为了利用搜索的方法求解问题,首先必须将被求解的问题用某种形式表示出来。一般情况下,不同的知识表示对应着不同的求解方法。状态空间表示法是一 种用“状态”和“算符”表示问题的方法。状态空间可由一个三元组表示(S ,F, S g )。 利用搜索方法求解问题的基本思想是:首先将问题的初始状态(即状态空间图中的初始节点)当作当前状态,选择一适当的算符作用于当前状态,生成一组后继状态(或称后继节点),然后检查这组后继状态中有没有目标状态。如果有,则说明搜索成功,从初始状态到目标状态的一系列算符即是问题的解;若没有,则按照某种控制策略从已生成的状态中再选一个状态作为当前状态,重复上述过程,直到目标状态出现或不再有可供操作的状态及算符时为止。 算法5.1 状态空间图的一般搜索算法 ①建立一个只含有初始节点S 0的搜索图G,把S 放入OPEN表中。 ②建立CLOSED表,且置为空表。 ③判断OPEN表是否为空表,若为空,则问题无解,退出。 ④选择OPEN表中的第一个节点,把它从OPEN表移出,并放入CLOSED表中,

将此节点记为节点n。 ⑤考察节点n是否为目标节点,若是,则问题有解,并成功退出。问题的解 的这条路径得到。 即可从图G中沿着指针从n到S ⑥扩展节点n生成一组不是n的祖先的后继节点,并将它们记作集合M,将M中的这些节点作为n的后继节点加入图G中。 ⑦对那些未曾在G中出现过的(即未曾在OPEN表上或CLOSED表上出现过的)M中的节点,设置一个指向父节点(即节点n)的指针,并把这些节点加入OPEN 表中;对于已在G中出现过的M中的那些节点,确定是否需要修改指向父节点(n 节点)的指针;对于那些先前已在G中出现并且已在COLSED表中的M中的节点,确定是否需要修改通向它们后继节点的指针。 ⑧按某一任意方式或按某种策略重排OPEN表中节点的顺序。 ⑨转第③步。 2.宽度优先搜索策略 宽度优先搜索是一种盲目搜索策略。其基本思想是,从初始节点开始,逐层对节点进行依次扩展,并考察它是否为目标节点,在对下层节点进行扩展(或搜索)之前,必须完成对当前层的所有节点的扩展(或搜索)。在搜索过程中,未扩展节点表OPEN中的节点排序准则是:先进入的节点排在前面,后进入的节点排在后面(即将扩展得到的后继节点放于OPEN表的末端)。 宽度优先搜索的盲目性较大,搜索效率低,这是它的缺点。但宽度优先搜索策略是完备的,即只要问题有解,用宽度优先搜索总可以找到它的解。 3.深度优先搜索 深度优先搜索也是一种盲目搜索策略,其基本思想是:首先扩展最新产生的 开始,在其后继节点中选择一个节点,对其进(即最深的)节点,即从初始节点S 行考察,若它不是目标节点,则对该节点进行扩展,并再从它的后继节点中选择

人工智能概念简介

1,哈什么是人工智能? 人工智能(ArtificialIntelligence)简称AI,主要研究如何用人工的方法和技术,使用各种自动化机器或智能机器(主要指计算机)模仿、延伸和扩展人的智能,实现某些机器思维或脑力劳动自动化。 人工智能是那些与人的思维相关的活动,诸如决策、问题求解和学习等的自动化(Bellman,1978);人工智能是一种计算机能够思维,使机器具有智力的激动人心的新尝试(Haugeland,1985);人工智能是研究如何让计算机做现阶段只有人才能做得好的事情(RichKnight,1991);人工智能是那些使知觉、推理和行为成为可能的计算的研究(Winston,1992);广义地讲,人工智能是关于人造物的智能行为,而智能行为包括知觉、推理、学习、交流和在复杂环境中的行为(Nilsson,1998) 2,人工智能有哪些研究途径?说明其研究特点。 1.心理模拟,符号推演:模拟人脑的逻辑思维,利用显式的知识和推理来解 决问题。擅长实现人脑的高级认知功能。2.生理模拟,神经计算:具有高度的并行分布型,很强的鲁棒性和容错性,擅长人脑的形象思维,便于实现人脑的低级感知功能。3.行为模拟,控制进化:具有自学习,自适应,自组织特性的智能控制系统和智能机器人。4.群体模拟,仿生计算:成果可以直接付诸应用,解决工程问题和实际问题。5.博采广鉴,自然计算:模仿和借鉴自然界的某种机理而设计技术模型。7.原理分析,数学建模:纯粹用人的智能去实现机器智能 3,给出人工智能的五个应用领域。 难题求解,自动规划、调度与配置,机器定理证明,自动程序设计,机器翻译,智能控制,智能管理,智能决策,智能通信,智能仿真,智能CAD,智能制

人工智能教程习题及答案第5章习题参考解答

第五章搜索策略习题参考解答 5.1 练习题 5.1 什么是搜索?有哪两大类不同的搜索方法?两者的区别是什么? 5.2 用状态空间法表示问题时,什么是问题的解?求解过程的本质是什么?什么是最优解?最优解唯一吗? 5.3 请写出状态空间图的一般搜索过程。在搜索过程中OPEN表和CLOSE表的作用分别是什么?有何区别? 5.4 什么是盲目搜索?主要有几种盲目搜索策略? 5.5 宽度优先搜索与深度优先搜索有何不同?在何种情况下,宽度优先搜索优于深度优先搜索?在何种情况下,深度优先搜索优于宽度优先搜索? 5.6 用深度优先搜索和宽度优先搜索分别求图5.10所示的迷宫出路。 图5.10 习题5.6的图 5.7 修道士和野人问题。设有3个修道士和3个野人来到河边,打算用一条船从河的左岸渡到河的右岸去。但该船每次只能装载两个人,在任何岸边野人的数目都不得超过修道士的人数,否则修道士就会被野人吃掉。假设野人服从任何一种过河安排,请使用状态空间搜索法,规划一使全部6人安全过河的方案。(提示:应用状态空间表示和搜索方法时,可用(N m,N c)来表示状态描述,其中N m和N c分别为传教士和野人的人数。初始状态为(3,3),而

可能的中间状态为(0,1),(0,2),(0,3), (1,1),(2,1),(2,2),(3,0),(3,1),(3,2)等。) 5.8 用状态空间搜索法求解农夫、狐狸、鸡、小米问题。农夫、狐狸、鸡、小米都在一条河的左岸,现在要把它们全部送到右岸去。农夫有一条船,过河时,除农夫外,船上至多能载狐狸、鸡和小米中的一样。狐狸要吃鸡,鸡要吃小米,除非农夫在那里。试规划出一个确保全部安全的过河计划。(提示:a.用四元组(农夫,狐狸,鸡,米)表示状态,其中每个元素都可为0或1,0表示在左岸,1表示在右岸;b.把每次过河的一种安排作为一个算符,每次过河都必须有农夫,因为只有他可以划船。) 5.9 设有三个大小不等的圆盘A 、B 、C 套在一根轴上,每个圆盘上都标有数字1、2、3、4,并且每个圆盘都可以独立地绕轴做逆时针转动,每次转动90°,初始状态S 0和目标状态S g 如图5.11所示,用宽度优先搜索法和深度优先搜索法求从S 0到S g 的路径。 图5.11 圆盘问题 5.10 用有界深度优先搜索方法求解图5.12所示八数码难题。初始状态为S 0,目标状态S g ,要求寻找从初始状态到目标状态的路径。 图 5.12 八数码难题 图5.13 推销员旅行交通费用图 2 8 1 2 3 1 6 3 8 4 7 5 4 7 6 5 S 0 S g

启发算法与盲目算法

启发算法与盲目算法 一、盲目搜索 对一个图进行搜索意味着按照某种特定的顺序依次访问其顶点。在所有搜索方式中,广度优先算法和深度优先搜索算法都十分重要,因为它们提供了一套系统地访问图数据结构的方法。我们着重讲解广度优先搜索算法。 1.深度优先搜索 深度优先搜索算法(简称DFS)是一种用于遍历或搜索树或图的算法。沿着树的深度遍历树的节点,尽可能深的搜索树的分支。当节点的所在边都己被探寻过,搜索将回溯到发现节点的那条边的起始节点。这一过程一直进行到已发现从源节点可达的所有节点为止。由于深度优先搜索不是接下来最短路径算法的基础,因此这里不做拓展。 2.广度优先搜索 广度优先搜索算法(简称BFS)又称为宽度优先搜索从起点开始,首先遍历起点周围邻近的点,然后再遍历已经遍历过的点邻近的点,逐步的向外扩散,直到找到终点。 在执行算法的过程中,每个点需要记录达到该点的前一个点的位置—父节点。这样做之后,一旦到达终点,便可以从终点开始,反过来顺着父节点的顺序找到起点,由此就构成了一条路径。 以上两种算法的不同搜索策略可以通过下面网页查看动图,这是两种相邻节点之间的移动代价相等时用到的算法,图中的边不设权值。 3.Dijkstra算法 Dijkstra算法是由计算机科学家Edsger W.Dijkstra在1956年提出的。 考虑这样一种场景,在一些情况下,图形中相邻节点之间的移动代价并不相等。例如,游戏中的一幅图,既有平地也有山脉,那么游戏中的角色在平地和山脉中移动的速度通常是不相等的。在Dijkstra算法中,需要计算每一个节点距离起点的总移动代价。同时,还需要一个优先队列结构。对于所有待遍历的节点,放入优先队列中会按照代价进行排序。在算法运行的过程中,每次都从优先队列中选出代价最小的作为下一个遍历的节点。直到到达终点为止。对比了不考虑节点移动代价差异的广度优先搜索与考虑移动代价的Dijkstra算法。 可以看出当图形为网格图,并且每个节点之间的移动代价是相等的,那么Dijkstra算法将和广度优先算法变得一样。以下网址链接可以自行设置绿色网格的位置。 Dijkstra算法(可自行设置障碍物) 二、启发式搜索算法 1.贪婪最佳优先 在Dijkstra算法中,我已经发现了其最终要的缺陷,搜索存在盲目性。在这里,我们只针对这个痛点,采用贪婪最佳优先搜索来解决。如何解决?我们只需稍微改变下观念即可,在Dijkstra算法中,优先队列采用的是,每个顶点到起始顶点的预估值来进行排序。在贪婪最佳优先搜索采用的是,每个顶点到目标顶点的预估值来进行排序。 两者的搜索过程对比如下动图所示: 明显看到右边的算法(贪婪最佳优先搜索)寻找速度要快于左侧,虽然它的路径不是最优和最短的,但障碍物最少的时候,他的速度却足够的快。这就是贪心算法的优势,基于目标去搜索,而不是完全搜索。 贪婪最佳优先搜索动态图(可自行设置障碍物)

数据结构_南京邮电大学中国大学mooc课后章节答案期末考试题库2023年

数据结构_南京邮电大学中国大学mooc课后章节答案期末考试题库2023年 1.向最大堆84,49,82,26,29,46依次插入元素94,99,89,80,94,最终得到的最大 堆是____________(提示:堆的元素插入操作需调用AdjustUp方法,请将答案表示成元素序列,并用半角逗号相隔,答案中不要有空格)。 参考答案: 99,94,84,89,94,46,82,26,49,29,80 2.设有5×8的数组A,其每个元素占2个字节,已知A[0][4]在内存中的地址 是120,按列优先顺序存储,A[2][6]的地址是_________ 。 参考答案: 144 3.以下选项_____是下图的深度优先遍历序列。【图片】 参考答案: K,D,A,B,E,C,F,G,J,H,I 4.对最大堆序列95,61,66,9,19,27执行1次删除操作(提示:对优先级队列执 行删除操作默认删除堆顶元素)后得到最大堆序列_____________(提示:堆元素删除操作需调用AdjustDown方法,请将答案表示成元素序列,并用半角逗号相隔,答案中不要有空格)。 参考答案: 66,61,27,9,19 5.求该方法的渐近时间复杂度为__________.(注意填写答案时不要有空格,用 x^y的方式表达x的y次方)void aFunc(int n) { for (int i = 0; i < n; i++) { for (int j = i; j < n; j++) { printf("Hello World\n"); } }}

O(n^2) 6.已知图的边集合:【图片】若采用邻接表存储,则顶点4对应的边结点链表 中共有_________个边结点。 参考答案: 2 7.用克鲁斯卡尔算法构造下图的最小代价生成树,第一条被加入生成树上的边 一定是(E,C)。【图片】 参考答案: 正确 8.假设一棵含有18个结点的完全二叉树中,按层次从上到下、每层结点从左 到右的顺序,从0开始编号,则编号为14的结点的左孩子编号为_______ (如果孩子不存在,则填写NULL)。 参考答案: NULL 9.对最小堆序列10,21,70,27,31,83执行2次删除操作(提示:对优先级队列 执行删除操作默认删除堆顶元素)后得到最小堆序列_____________(提示:堆元素删除操作需调用AdjustDown方法,请将答案表示成元素序列,并用半角逗号相隔,答案中不要有空格)。 参考答案: 27,31,70,83 10.以下选项_____不是下图的深度优先遍历序列。【图片】

大学人工智能期末考试题库

《人工智能与专家系统》试卷(1)参考答案与评分标准 问答题(每题5分,共50分) 1.人工智能是何时、何地、怎样诞生的?(5分) 答:人工智能于1956年夏季在美国达特茅斯(Dartmouth)大学诞生。(3分)1956年夏季,美国的一些从事数学、心理学、计算机科学、信息论和神经学研究的年轻学者,汇聚在Dartmouth大学,举办了一次长达两个月的学术讨论会,认真而热烈地讨论了用机器模拟人类智能的问题。在这次会议上,第一次使用了“人工智能”这一术语,以代表有关机器智能这一研究方向。这是人类历史上第一次人工智能研讨会,标志着人工智能学科的诞生,具有十分重要的意义。(2分) 2.行为主义是人工智能的主要学派之一,它的基本观点是什么?(5分) 答:行为主义,又称进化主义或控制论学派。这种观点认为智能取决于感知和行动(所以被称为行为主义),它不需要知识、不需要表示、不需要推理。其原理是控制论和感知——动作型控制系统。 3.什么是知识表示?在选择知识表示方法时,应该考虑哪几个因素?(5分)答:知识表示是研究用机器表示知识的可行性、有效性的般方法,是一种数据结构与控制结构的统一体,既考虑知识的存储又考虑知识的使用。知识表示实际上就是对人类知识的一种描述,以把人类知识表示成计算机能够处理的数据结构。对知识进行表示的过程就是把知识编码成某种数据结构的过程。(3分)在选择知识表示方法时,应该考虑以下几个因素:(1)能否充分表示相关的领域知识;(2)是否有利于对知识的利用;(3)是否便于知识的组织、维护和管理;(4)是否便于理解和实现。(2分) 4.框架表示法有什么特点?(5分) 答:框架表示法有如下特点:结构性、继承性、自然性。(5分) 5.何谓产生式系统?它由哪几部分组成?(5分) 答:把一组产生式放在一起,让它们相互配合,协同作用,一个产生式生成的结论可以供另一个产生式作为已知事实使用,以求得问题的解,这样的系统称为产生式系统。(2分) 产生式系统一般由三个基本部分组成:规则库、综合数据库和推理机。(3分) 6.产生式系统中,推理机的推理方式有哪几种?请分别解释说明。(5分)答:产生式系统推理机的推理方式有正向推理、反向推理和双向推理三种。 正向推理:正向推理是从己知事实出发,通过规则库求得结果。 反向推理:反向推理是从目标出发,反向使用规则,求证已知的事实。 双向推理:双向推理是既自顶向下又自底向上的推理。推理从两个方向进行, 直至在某个中间界面上两方向结果相符便成功结束;如两方衔接不上,则推理失败。

相关主题
相关文档
最新文档