第三章 搜索推理技术(修改)
智能控制-第三章--搜索推理技术概要PPT课件
3.1 图搜索策略 3.2 盲目搜索 3.3 启发式搜索 3.4 消解原理 3.5 规则演绎系统
3.6 产生式系统 3.7 系统组织技术 3.8 小结
3.1 图搜索策略
❖ 图搜索控制策略 一种在图中寻找路径的方法。 图中每个节点对应一个状态,每条连线对应 一个操作符。这些节点和连线又分别由产生 式系统的数据库和规则来标记。求得把一个 数据库变换为另一数据库的规则序列问题就 等价于求得图中的一条路径问题。
5)若n为一目标节点,则有解并成功退出,此 解是追踪图G中沿着指针从n到S这条路径而 得到的(指针将在第7步中设置)。
.
3.1 图搜索策略
6)扩展节点n,同时生成不是n的祖先的那些后 继节点的集合M。把M的这些成员作为n的后 继节点添入图G中。
7)对那些未曾在G中出现过的M成员设置一个 通向n的指针。把M的这些成员加进OPEN表。 对已经在OPEN或CLOSED表上的每一个M成 员,确定是否需更改通到n的指针方向。对已 在CLOSED表上的每个M成员,确定是否需 要更改图G中通向它的每个后裔节点的指针方 向。
是否有后继节点 为目标节点?
否
是 成功
图3.2 宽度优先算法框图
.
❖ 例子
八数码难题(8-puzzle problem)
3.2 盲目搜索
28 3
1
4
76 5
(初始状态)
12 3
8
4
76 5
(目标状态)
规定:将棋子移入空格的顺序为:从空格左边开 始顺时针旋转。不许斜向移动,也不返回先辈节 点。从图可见,要扩展26个节点,共生成46个 节点之后才求得解(目标节点)。
.
深度优先搜索示意图
Chap3-1 搜索推理技术之搜索技术
13
苏 州 大 学 计 算 机 科 学 与 技 术 学 院
图搜索策略
苏 州 大 学 计 算 机 科 学 与 技 术 学 院
搜索推理技术
人工智能原理与技术
14
图搜索策略
• 已扩展节点和未扩展节点
– 用适合的算符对某个节点进行操作生成一组后 继节点, 继节点,扩展过程实际上就是求后继节点的过 程。 – 已扩展的节点 对状态空间图中,已求出了其 已扩展的节点: 对状态空间图中, 的后继节点的节点。 的后继节点的节点。 – 未扩展节点,尚未求出其的后继节点的节点 未扩展节点, 未扩展OPEN表 表 未扩展
F: {→1,←1,↑1,↓1, →2,←2,….,} 或 , , , , , , , {→空格,←空格,↑空格,↓空格 空格, 空格 空格, 空格 空格, 空格 空格} 空格 A: {←12,↑15, →4, ….,} , , , ,
搜索推理技术 人工智能原理与技术
18
119 3 5 24 Nhomakorabea15 12
– 路径耗散函数:给每条路径分配一个数值化的耗散值。 路径耗散函数:给每条路径分配一个数值化的耗散值。
• 问题的解: 问题的解:
– 引导智能体从初始状态到达目标状态的行动 操作序列 引导智能体从初始状态到达目标状态的行动/操作序列
搜索推理技术 人工智能原理与技术
6
例如:8数码难题
• • • •
状态?: 状态 : 操作/动作 动作? 操作 动作 目标测试? 目标测试 路径耗散? 路径耗散
苏 州 大 学 计 算 机 科 学 与 技 术 学 院
搜索推理技术
人工智能原理与技术
8
搜索技术的分类
09第三章(3) 搜索推理技术
子句集的求取
• (6)把母式化为合取范式 • 任何母式都可写成由一些谓词公式 和(或)谓词公式的否定的析取的有限集 组成的合取。这种母式叫做合取范式。 我们可以反复应用分配律。把任一母式 化成合取范式。例如,我们把 A∨{B∧C}化为{A∨B}∧{A∨C}
28
子句集的求取
• (7)消去全称量词 到了这一步,所有余下的量词均被全称量词量化 了。同时,全称量词的次序也不重要了。因此,我们 可以消去前缀,即消去明显出现的全称量词。 • (8)消去连词符号∧ • 用{(A∨B),(A∨C)}代替(A∨B)∧(A∨C),以消 去明显的符号∧。反复代替的结果,最后得到一个有 限集,其中每个公式是文字的析取。任一个只由文字 的析取构成的合式公式叫做一个子句。
对于g(n) g(n)来说,一个明显的选择就是搜索树中从S到n g(n) S n 这段路径的代价,这一代价可以由从n到S寻找指针时, n S 把所遇到的各段弧线的代价加起来给出(这条路径就 ( 是到目前为止用搜索算法找到的从S到n的最小代价路 S n 径)) ))。这个定义包含了g(n) g*(n) g(n)≥g*(n) )) g(n)
29
子句集的求取
• (9)更换变量名称 可以更换变量符号的名称,使一个变量符 号不出现在一个以上的子句中。例如,对于子 集{~ P(x)∨~ P(y)∨P[f(x,y)], • ~ P(x)∨Q[x,g(x)], ~ P(x)∨~ P[g(x)]},在 更改变量名后,可以得到子句集: • {~ P(x1)∨~ P(y)∨P[f(x1,y)], • ~ P(x2)∨Q[x2,g(x2)], ~ P(x3)∨~ P[g(x3)]
42
消解反演
• 例: • 前提:每个储蓄钱的人都获得利息。 结论:如果没有利息,那么就没有人去 储蓄钱。 证明:令S(x,y)表示"x储蓄y" • M(x)表示"x是钱" I(x)表示"x是利息" E(x,y)表示"x获得y"
第三章-推理技术PPT课件
.
34
举例如下:
目标表达式被化成与或形:
~P(f(y))∨{Q(f(y),y)∧[~P(f(y))∨~S(y)]}
式中,f(y)为一Skolem函数。
对目标的主要析取式中的变量分离标准化可得:
~P(f(z))∨{Q(f(y),y)∧[~P(f(y))∨~S(y)]}
应注意不能对析取的子表达式内的变量y改名
将下列谓词演算公式化为一个子句集
( x){P(x)→{( y)[P(y)→P(f(x,y))]∧~( y)[Q(x,y)→P(y)]}}
.
9
3.1.2 消解推理规则
1、消解式 已知两子句L1∨α和~L2∨β,如果L1和L2具有
最一般合一者σ,那么通过消解可以从这两个父辈 子句推导出一个新子句α∨β。这个新子句叫做消 解式。它是由取这两个子句的析取,然后消去互补
可见目标子句是文字的合取,而这些子句的析取 是目标公式的子句形。
2.与或图的B规则变换 B规则:即逆向推理规则。 B规则是建立在确定的蕴涵式基础上的,我们把B 规则限制为:
W→L
其中,W为任一与或形公式,L为文字,
把B规则限制为这种形式的蕴涵式还可以简化匹配,
可以把像W→ (L1∧L2)这样的蕴涵式化为两个规则
W→L1和W→L2。
.
37
3.作为终止条件的事实节点的一致解图 逆向系统中的事实表达式均限制为文字合取
形,它可以表示为一个文字集。当一个事实文字 和标在该图文字节点上的文字相匹配时,就可把 相应的后裔事实节点添加到该与或图中去。这个 事实节点通过标有mgu的匹配弧与匹配的子目标文 字节点连接起来。
而使每个析取式具有不同的变量。
.
35
与或形的目标公式也可以表示为与或图。不过,与 事实表达式的与或图不同的是,对于目标表达式, 与或图中的k线连接符用来分开合取关系的子表达 式。上例所用的目标公式的与或图如下所示:
人工智能习题参考答案
❖ 它们的本质都是对一具体事实知识表示,只是表示的方法不同。
❖ 2-2 设有3个传教士和3个野人来到河边,打算乘一只船从 右岸渡到左岸去。该船的负载能力为两人。在任何时候, 如果野人人数超过传教士人数,那么野人就会把传教士吃 掉。他们怎样才能用这条船安全地把所有人都渡过河去?
❖ 1-6人工智能的主要研究和应用领域是什么?其中, 哪些是新的研究热点?
❖ 研究和应用领域:问题求解 (下棋程序),逻辑推 理与定理证明 (四色定理证明),自然语言理解, 自动程序设计,专家系统,机器学习,神经网络, 机器人学 (星际探索机器人),模式识别 (手写识别, 汽车牌照识别,指纹识别),机器视觉 (机器装配, 卫星图像处理),智能控制,智能检索,智能调度 与指挥 (汽车运输高度,列车编组指挥),系统与 语言工具。
❖ 场景二 看电影
❖ 1放映员开始放映 2观众看电影
❖ 场景三 离开电影院
❖
1电影放映完 2离开
❖ 结果:
❖ 我花钱买票看了电影,知道了电影的情节。
❖ 电影院工作人员播放了电影,付出了劳动。
❖ 电影院获得了收入。
第三章 搜索推理技术
❖ 3-9比较宽度优先搜索、有界深度优先搜索及有序搜索的搜索效率,并以实例数据加以说明。 ❖ 宽度优先搜索是一种盲目搜索,时间和空间复杂度都比较高,当目标节点距离初始节点较远时会产生许
❖ 2-8 把下列语句表示成语义网络描述 ❖ (1) All man are mortal. ❖ (2) Every cloud has a silver lining. ❖ (3) All branch managers of DEC
人工智能习题参考答案
• 神经网络主要通过指导式(有师)学习算法和非指导式(无师)学习 算法。此外,还存在第三种学习算法,即强化学习算法;可把它看做 有师学习的一种特例。 • (1)有师学习 • 有师学习算法能够根据期望的和实际的网络输出(对应于给定输入) 间的差来调整神经元间连接的强度或权。因此,有师学习需要有个老 师或导师来提供期望或目标输出信号。有师学习算法的例子包括 Delta规则、广义Delta规则或反向传播算法以及LVQ算法等。 • (2)无师学习 • 无师学习算法不需要知道期望输出。在训练过程中,只要向神经网络 提供输入模式,神经网络就能够自动地适应连接权,以便按相似特征 把输入模式分组聚集。无师学习算法的例子包括Kohonen算法和 Carpenter-Grossberg自适应谐振理论(ART)等。 • (3)强化学习 • 强化(增强)学习是有师学习的特例。它不需要老师给出目标输出。 强化学习算法采用一个“评论员”来评价与给定输入相对应的神经网 络输出的优度(质量因数)。强化学习算法的一个例子是遗传算法 (GA)。
• • • • • • • • • •
• 6-2专家系统由哪些部分构成?各部分的作用为何? • 答: •
• 5-7遗传算法、进化策略和进化编程的关系如何?有何区别? • 遗传算法是一种基于空间搜索的算法,它通过自然选择、遗传、变异 等操作以及达尔文适者生存的理论,模拟自然进化过程来寻找所求问 题的解答。 • 进化策略(Evolution Strategies,ES)是一类模仿自然进化原理以求 解参数优化问题的算法。 • 进化编程根据正确预测的符号数来度量适应值。通过变异,为父代群 体中的每个机器状态产生一个子代。父代和子代中最好的部分被选择 生存下来。 • 进化计算的三种算法即遗传算法、进化策略和进化编程都是模拟生物 界自然进化过程而建立的鲁棒性计算机算法。在统一框架下对三种算 法进行比较,可以发现它们有许多相似之处,同时也存在较大的差别。 • 进化策略和进化编程都把变异作为主要搜索算子,而在标准的遗传算 法中,变异只处于次要位置。交叉在遗传算法中起着重要作用,而在 进化编程中却被完全省去,在进化策略中与自适应结合使用,起了很 重要的作用。 • 标准遗传算法和进化编程都强调随机选择机制的重要性,而从进化策 略的角度看,选择(复制)是完全确定的。进化策略和进化编程确定 地把某些个体排除在被选择(复制)之外,而标准遗传算法一般都对 每个个体指定一个非零的选择概率。
第3章(搜索推理技术1-图盲目搜索)
先在左
(6,0) 前 右
(4,0)
前 (2,0) 右
(6,45)
X
(4,45)
X
左
前
向前 2 向左 1 向右
(2,45) (4,90) 前 右 (0,0) (2,90)
右 出口
(6,90)
人
3
宽度优先搜索算法
(没有生成已有的状态)
先在左
(6,0) 前 右
(4,0)
前 (2,0) 前
(4,45)
右 (4,90) 右
(2,45) 前 (0,0)
X
向前 2 向左 1 向右
(6,90)
出口
人
3
宽度优先搜索算法
课堂作业存在主要问题:
1、搜索过程画成图的形式,将导致反向追踪路
径出现歧义
2、操作符使用混乱,搜索树不规范。
3、画出整棵搜索树
3.2.2 深度优先搜索
深度优先搜索策略是先扩展最新产生的
(即最深的)节点
节点的深度;
OPEN表 1 1 1 1 2 3
1
4
2
8
3
1
4
0
7
6
5
父 符
⑥ 后继节点中无目标节点,转到②
② OPEN表不为空,继续
③ 将第一个节点 n 从 OPEN 表中移出,并放到 CLOSED 表中
OPEN表
1 1 1 2 3 4 2 2 2 0 8 8 3 3 3 1 1 1 8 6 4 4 4 0 7 7 7 6 0 6 5 5 5
⑤ 把 n 的所有后继节点放到OPEN表的末端,
并提供从这些后继节点回到 n 的指针
⑥ 如果 n 的任一个后继节点是个目标节点,则 找到一个解(反向追踪得到从目标节点到起始 节点的路径),成功退出,否则转向第②步
搜索推理技术
Example: 8-puzzle problem
2 1 7 8 6 3 4 5 1 8 7 2 6 3 4 5
(initial state)
(goal state)
八数码难题的估计函数为:
f(n) = d(n)+W(n) d(n): 搜索树中节点n的深度; W(n): 对应于节点n的数据库中错放的棋子个数
8 3 2 1 4 7 6 5
2 8 3 7 1 4 6 5
2 3 1 8 4 7 6 5
2 3 1 8 4 7 6 5
2 8 3 1 6 4 7 5
2 8 3 1 6 4 7 5
2 8 1 4 3 7 6 5
14
8 3 2 1 4 7 6 5
15
2 8 3 7 1 4 6 5
16
1 2 3 8 4 7 6 5
Put descendant node of n into the end of OPEN, and provide arrow pointed to n
Is any descendant Node the goal node?
Yes
SUCCESS
No
宽度优先算法框图
Central South University Artificial Intelligence
特点:没有先验知识,不需重排OPEN表 种类:宽度优先、深度优先、等代价搜索等。
3.2.1 Breadth-first search(宽度优先搜索)
定义
以接近起始节点的程度逐层扩展节点的搜索方法。
特点
一种高代价搜索,但若有解存在,则必能找到它
算法
Central South University Artificial Intelligence
第三章 搜索推理技术
第三章搜索推理技术1. 什么是图搜索过程?其中,重排OPEN表意味着什么,重排的原则是什么?2. 试举例比较各种搜索方法的效率。
3. 化为子句形有哪些步骤?请结合例子说明之。
4. 如何通过消解反演求取问题的答案?5. 什么叫合适公式?合适公式有哪些等价关系?6. 用宽度优先搜索求下图所示迷宫的出路。
7. 用有界深度优先搜索方法求解下图所示八数码难题。
8. 应用最新的方法来表达传教士和野人问题,编写一个计算机程序,以求得安全渡过全部6个人的解答。
提示:在应用状态空间表示和搜索方法时,可用(Nm,Nc)来表示状态描述,其中Nm和Nc 分别为传教士和野人的人数。
初始状态为(3,3),而可能的中间状态为(0,1),(0,2),(0,3),(1,1),(2,1),(2,2),(3,0),(3,1)和(3,2)等。
9. 试比较宽度优先搜索、有界深度优先搜索及有序搜索的搜索效率,并以实例数据加以说明。
10. 一个机器人驾驶卡车,携带包裹(编号分别为#1、#2和#3)分别投递到林(LIN)、吴(WU)和胡(HU)3家住宅处。
规定了某些简单的操作符,如表示驾驶方位的drive(x,y)和表示卸下包裹的unload (z) ;对于每个操作符,都有一定的先决条件和结果。
试说明状态空间问题求解系统如何能够应用谓词演算求得一个操作符序列,该序列能够生成一个满足AT(#1,LIN)∧AT(#2,WU)∧AT(#3,HU)和目标状态。
11. 什么是估价函数?它在搜索算法中有何作用?12. 把下列句子变换成子句形式:(1)(2)(3)(4)13. 规则演绎系统和产生式系统有哪几种推理方式?各自的特点为何?14. 为什么需要采用系统组织技术?有哪几种系统组织技术?15. 什么是产生式系统?试述其组成部分的功用?16. 研究不确定性推理有何意义?有哪几种不确定性?17. 单调推理有何局限性?什么叫缺省推理?非单调推理系统如何证实一个节点的有效性?18. 在什么情况下需要采用不确定推理或非单调推理?19. 下列语句是一些几何定理,把这些语句表示为基于规则的几何证明系统的产生式规则:(1) 两个全等三角形的各对应角相等。
第3章 推理技术.ppt
P(Hi | E1E2 Em )
P(Hi ) P(E1 | Hi ) P(E2 | Hi )
n
P(Em | Hi )
P(H j ) P(E1 | H j ) P(E2 | H j ) P(Em | H j )
j1
, i 1, 2,..., n
2020/2/7
P(¬E|S)=1-P(E|S)
2020/2/7
《人工智能》
11
4、不确定性的传递算法
主观Bayes方法推理的任务就是根据证据E的概率P(E) 及LS、LN的值,把H的先验概率P(H)更新为后验概率 P(H|E)或P(H|¬E)。即
P(H
)
P(E) LS,LN
P(H
|
E)或者P(H
Bayes公式
若A1,A2,…,An是彼此独立的事件,且P(Ai)>0(i=1,2,…,n),P(B)>0, 那么Bayes公式可表示为
P( Ai | B)
P( Ai ) P(B | Ai )
n
, i 1, 2,..., n
P(Aj ) P(B | Aj )
j 1
其中,P(Ai)是事件Ai的先验概率;P(B|Ai)是在事件Ai发生条 件下事件B的条件概率。
2020/2/7
《人工智能》
6
如果用产生式规则
IF
E THEN
Hi
中的前提条件E代替Bayes公式中的B,用Hi代替公式 中的Ai ,就可得到:
P(Hi | E)
P(Hi ) P(E | Hi )
n
, i 1, 2,..., n
P(H j ) P(E | H j )
j 1
人工智能3(1)搜索推理技术
第3章确定性推理3.1 图搜索策略3.2 盲目搜索3.3 启发式搜索3.4 消解原理3.5 规则演绎系统3.6 产生式系统3.7 非单调推理概述(1)问题求解§AI中每个研究领域都有其各自的特点和规律,但就求解问题的过程看,都可抽象为一个问题求解过程。
§问题求解过程实际上是一个搜索,广义地说,它包含了全部计算机科学。
§任何问题求解技术都包括两个重要的方面:表示和搜索§表示是基本的,搜索必须要在表示的基础上进行。
表示关系到搜索的效率。
§本章讨论的表示主要包括:§状态空间表示§问题空间表示概述(2)q1974年,Nilsson归纳出的AI研究的基本问题知识的模型化和表示常识性推理、演绎和问题解决启发式搜索人工智能系统和语言q搜索是人工智能中的一个基本问题,是推理不可分割的一部分,直接关系到智能系统的性能和运行效率q AI为什么要研究search?问题没有直接的解法;需要探索地求解;搜索(3)什么是搜索§根据问题的实际情况不断寻找可利用的知识,构造出一条代价较少的推理路线,使问题得到圆满解决的过程称为搜索包括两个方面:---找到从初始事实到问题最终答案的一条推理路径---找到的这条路径在时间和空间上复杂度最小搜索(4)§盲目搜索:也称为无信息搜索,即只按预定的控制策略进行搜索,在搜索过程中获得的中间信息不用来改进控制策略§启发式搜索: 在搜索中加入了与问题有关的启发性信息,用于指导搜索朝着最有希望的方向进行,加速问题的求解过程并找到最优解要考虑的因素u完备性:当问题有解时,这个算法是否能保证找到一个解?u最优性:这个搜索策略是否能找到最优解?u时间复杂度:找到一个解需要花费多长时间?u空间复杂度:在执行搜索过程中需要有多少内存?无信息的搜索策略•广度优先搜索(Breadth-first search)•代价一致搜索(Uniform-cost search)•深度优先搜索(Depth-first search)•深度有限搜索(Depth-limited search)•双向搜索(Bidirectional search)•迭代深度优先搜索(Iterative deepening depth-first search)有信息的搜索策略贪婪最佳优先搜索(Greedy best-first search)A*搜索(A* search: Minimizing the total estimated solution cost)递归最佳优先搜索(Recursive best-first search)爬山法搜索(Hill-climbing search)模拟退火搜索(Simulated annealing search)局部剪枝搜索(Local beam search)遗传算法(Genetic algorithm)联机搜索(Online search)Heuristic search Beyond Classical Search状态空间表示法(1)q状态空间表示法:用来表示问题及其搜索过程的一种方法q状态:状态是描述问题求解过程中任一时刻状况的数据结构.23751486(2, 3,7 ,0 , 5, 1, 4, 8, 6)状态空间表示法(2)q状态空间:由问题的全部状态及一切可用算符所构成的集合称为问题的状态空间.一般表示为:(S, F, G)S:问题所有的初始状态集合;F:算符集合; G:目标状态集合q算符: 引起状态中某些分量发生变化, 从而使问题由一个状态变为另一个状态的操作称为算符.q状态空间表示法是用“状态”和“算符”表示问题的一种方法q状态空间图:状态空间的图式表示,称为状态空间图.其中节点表示状态,有向边(弧)表示算符.状态空间表示法(3)路径状态序列搜索寻找从初始状态到目标状态的路径;S0Sg状态空间表示法(4)例1:二阶梵塔问题§设有三个钢针,在一号钢针上穿有A,B两个金片,A小于B,A位于B的上面.要求把这两个金片全部移到另一个钢针上,而且规定每次只能移动一片,任何时刻都不能使B位于A的上面§设用Sk=(Sk0,Sk1)表示问题的状态,SK0表示金片A所在的钢针号,SK1表示金片B所在的钢针号,全部可能的状态为:S0=(1,1), S1=(1,2), S3=(1,3)S4=(2,1), S5=(2,2), S6=(2,3)S7=(3,1), S8=(3,2), S9=(3,3)§问题初始状态集合S={S0},§目标状态集合G={S4,S8}.§算符:A( i,j):表示把金片A从第i号针移到第j号针上B(i,j):表示把B从第i号针移到第j号针上§共12个算符:§A(1,2), A(1,3), A(2,1) ,A(2,3), A(3,1),A(3,2)§B(1,2), B(1,3), B(2,1), B(2,3), B(3,1), B(3,2)状态空间表示法(5)用状态空间表示,首先必须定义状态的描述形式,把问题的一切状态都表示出来,其次定义算符,完成状态的转换问题的求解过程就是一个把算符不断地作用于状态的过程.如果在使用某个算符后得到的状态就是目标状态,就得到了问题的解.这个解就是从初始状态到目标状态所用算符构成的序列.算符的一次使用,就使问题由一种状态转变为另一种状态.可能有多个算符序列都可使问题从初始状态变到目标状态,这就得到了多个解.对任何一个状态,可使用的算符可能不止一个,这样由一个状态所生成的后继状态可能有多个.如何选择下一步的操作,由搜索策略决定.搜索控制策略(1)q搜索控制策略不可撤回的控制策略;试探性控制策略回溯型图搜索搜索控制策略(2)不可撤回的控制策略例:八数码问题评价函数:f:(规定: 评价函数非增)2831647512384765与的差异为4搜索控制策略(3)不可撤回的控制策略2831647528314765231847651123847651238476523184765 f=4f=3f=3f=0f=1f=2搜索控制策略(4)不可撤回的控制策略28314765283147658321476583214765 28132476581324765 f=3f=3f=3f=3f=3f=313824765f=213824765f=1搜索控制策略(5)不可撤回的控制策略可能无解1251238476384765目标f=2回溯策略((1,1))((1,1))((1,1))((1,1))Q ((1,1))((1,1))((1,1))((1,1))((1,1))((1,1))Q ((1,1))Q ((1,1))3.1 图搜索策略¾一些基本概念节点深度:根节点深度=0其它节点深度=父节点深度+11233.1 图搜索策略¾一些基本概念路径设一节点序列为(n0, n1,…,n k),对于i=1,…,k,若节点n具有一个后继节点n,则该序列称为从n到n的i-1i0k路径。
第3章(搜索推理技术3-与或树搜索)
BHale Waihona Puke Ⅹ458
t
√
Ⅹ B
t
t
t
t
√
√
√
√
注:后生成的节点画在左边
课堂练习:用宽度和深度优先搜索算法找出解树
提示:对于宽度优先搜索,先生成的节点画在左;
对于深度优先搜索,后生成的节点画在左
其他搜索算法: 与或树的代价优先搜索(和代价最小,
最大代价最小)
与或图的启发搜索算法AO*
要掌握的算法:
与或树宽度优先搜索算法:
1、起始节点 S 送 OPEN 表
2、若 S 为叶节点,则成功结束,否则,继续 3、取出 OPEN 表的第一个节点(记作 n ),并送 到CLOSED 表
4、扩展节点 n ,生成其全部后继节点,送OPEN
表末端,并设置指向 n 的指针 说明:此时可能出现三种情况
节点 n 无后继节点
根据可解与不可解节点的递归定义,用递归的方 式作用于某一个与或图,以标出所有的可解节点
与不可解节点
算法结束的条件: 若初始节点被标志为可解节点,算法成 功结束(有解) 若起始节点被标志为不可解节点,则搜
索失败结束(无解)
与或图的解图:
由最少的可解节点所构成的子图,这些节 点能够使问题的起始节点是可解的
人
工
刘 静
智
能
Artificial Intelligence (AI)
liuj@
理工学院
2009年春季
第3章 搜索原理
3.1 图的搜索策略
3.2 盲目搜索 3.3 启发式搜索 3.4 与或树搜索(补充) 3.5 博弈树搜索(补充)
3.6 消解原理
3.4 与或树搜索(补充)
人工智能及其应用_搜索推理技术修改
为依据(属于启发式搜索)。
每当被选作扩展的节点为目标节点时,这一过程就宣告成功结束。 这时,能够重现从起始节点到目标节点的这条成功路径,其办法是从目
标节点按指针向S返回追溯。当搜索树不再剩有未被扩展的端节点时,
过程就以失败告终(某些节点最终可能没有后继节点,所以OPEN表可能 最后变成空表)。在失败终止的情况下,从起始节点出发,一定达不到 目标节点。
估价过的节点,并计算全条路径的长度或难度。每个不同的衡量标准只能考虑
该问题中这个节点的某些决定性特性,或者对给定节点与目标节点进行比较, 以决定相关特性。 我们用符号f来标记估价函数,用f(n)表示节点n的估价函数值。暂时令f为 任意函数,以后我们将会提出f是从起始节点约束地通过节点n而到达目标节点 的最小代价路径上的一个估算代价。
启发信息按其用途可分为下列3种: (1) 用于决定要扩展的下一个节点,以免像在宽度优先或深度优先搜索中那 样盲目地扩展。 (2) 在扩展一个节点的过程中,用于决定要生成哪一个或哪几个后继节点, 以免盲目地同时生成所有可能的节点。 (3) 用于决定某些应该从搜索树中抛弃或修剪的节点。 在本节中,我们只讨论利用上述第一种启发信息的状态空间搜索算法,即决定 哪个是下一步要扩展的节点。这种搜索总是选择“最有希望”的节点作为下一 个被扩展的节点。这种搜索叫做有序搜索(ordered search)。
宽度优先搜索方法能够保证在搜索树中找到一条通向目标节点的最 短途径;这棵搜索树提供了所有存在的路径(如果没有路径存在,那么 对有限图来说,我们就说该法失败退出;对于无限图来说,则永远不会
终止)。
3.2 盲目搜索
3.2.1宽度优先搜索
图 3.4 八数码难题的宽度优先搜索树
《人工智能及其应用》(蔡自兴)课后习题答案第章
第三章搜索推理技术3-1什么是图搜索过程?其中,重排OPEN表意味着什么,重排的原则是什么?图搜索的一般过程如下:(1) 建立一个搜索图G(初始只含有起始节点S),把S放到未扩展节点表中(OPEN表)中。
(2) 建立一个已扩展节点表(CLOSED表),其初始为空表。
(3) LOOP:若OPEN表是空表,则失败退出。
(4) 选择OPEN表上的第一个节点,把它从OPEN表移出并放进CLOSED表中。
称此节点为节点n,它是CLOSED表中节点的编号(5) 若n为一目标节点,则有解并成功退出。
此解是追踪图G中沿着指针从n到S这条路径而得到的(指针将在第7步中设置)(6) 扩展节点n,生成不是n的祖先的那些后继节点的集合M。
将M添入图G中。
(7) 对那些未曾在G中出现过的(既未曾在OPEN表上或CLOSED表上出现过的)M成员设置一个通向n的指针,并将它们加进OPEN表。
对已经在OPEN或CLOSED表上的每个M成员,确定是否需要更改通到n的指针方向。
对已在CLOSED表上的每个M成员,确定是否需要更改图G中通向它的每个后裔节点的指针方向。
(8) 按某一任意方式或按某个探试值,重排OPEN表。
(9) GO LOOP。
重排OPEN表意味着,在第(6)步中,将优先扩展哪个节点,不同的排序标准对应着不同的搜索策略。
重排的原则当视具体需求而定,不同的原则对应着不同的搜索策略,如果想尽快地找到一个解,则应当将最有可能达到目标节点的那些节点排在OPEN表的前面部分,如果想找到代价最小的解,则应当按代价从小到大的顺序重排OPEN表。
3-2 试举例比较各种搜索方法的效率。
宽度优先搜索(1) 把起始节点放到OPEN表中(如果该起始节点为一目标节点,则求得一个解答)。
(2) 如果OPEN是个空表,则没有解,失败退出;否则继续。
(3) 把第一个节点(节点n)从OPEN表移出,并把它放入CLOSED扩展节点表中。
(4) 扩展节点n。
人工智能搜索推理技术消解原理-精选
2、将前束范式转化为斯柯伦(Skolem)范式 ⑥ 得到斯科伦范式
3、将斯柯伦范式转化为子句集 ⑦ 消去前束(全称量词) ⑧ 消去合取连词 ⑨ 变量改名,得到子句集
2020/1/24
说明:
为了使斯科伦函数更简单一些,可以将合取关 系的各个谓词公式分别先分成前束范式、斯科 伦范式,再综合起来化成前束范式、前束合取 范式(后面的定理证明部分就采用了这一种化 法)
2020/1/24
3.6 消解原理 第2章中介绍: ➢ 谓词逻辑的基本知识 ➢ 合一算法(求最一般的一致置换或合一者
mgu) 本节: 消解原理(或者归结原理)
2020/1/24
3.6.1 子句集的求取 如何将谓词公式转化为子句集,作为合一算法 的输入(公式集) 3.6.1.1 若干基本概念 3.6.1.2 子句集的求取
量
2020/1/24
无量词公式
前束范式 = (前束) (母式)
全称量词串
2020/1/24
⑥ 将母式化成合取范式 利用分配律将前束范式化成前束合取范式: P∨(Q∧R) = (P∨Q)∧(P∨R) (析取 合取)
2020/1/24
⑦ 消去全称量词 谓词公式已经化成了前束合取范式,且只包含 全称量词,此时全称量词的次序也不重要了, 所以可以消去全部量词(即前束、前缀)
2020/1/24
求取子句集的步骤:
① 消去“蕴含”和“等价”连 结词 使用的公式:
AB = ~A∨B AB = (AB)∧(B A)
2020/1/24
② 减少“非”连结词的辖域 将“~”连结词直接作用到原子公式前,使得 每一个“非”联结词最多只能作用于一个原子 公式(谓词符号)
2020/1/24
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
14
从左到右表示盘从大到小,数字表示柱子号
中小盘 1到2
与
中小盘 2到3
大盘1到3
图2.8 梵塔问题的归约
小盘:13 中盘:12 小盘:21 中盘:23
小盘:32
小盘:13
15
2.2 问题规约法
4、与或图表示
或节 点 弧线 与节 点 N
父节 点
A M H
子节 点
B
终叶节 点
C D E F G
2.1状态空间法
重点掌握对某个问题的状态空间描述
学会组织状态空间图,用搜索图来求解
问题。
1
状态空间法 (State Space Representation)
问题求解技术主要是两个方面: 问题的表示 求解的方法 状态空间法 状态(state) 算符(operator) 状态空间方法
掌握谓词公式的性质及谓词演算,
学会谓词公式的置换与合一,运用谓词
推理来解决问题。
22
第三节 谓词逻辑法
数理逻辑(符号逻辑)常用的是命题逻辑和谓
词逻辑
23
2.3谓词逻辑法法 2.3.1谓词演算 2.3.2谓词公式 2.3.3 置换与合一
24
2、谓词逻辑
2.1 谓词演算
1、语法与语义
谓词逻辑的基本组成部分
谓词
变量
函数 常量 圆括号、方括号、花括号和逗号
25
例 “机器人(Robot)在第一个房间(r1)内”,可 以表示为: INROOM(ROBOT,r1) 其中 INROOM是谓词 ROBOT和r1是常量
26
2、连词和量词
联结词(连词)就是命题逻辑中的五个,它们的
含义也是一样的。
8
1、问题归约法的概念
问题归约法:
从已知问题的描述出发,通过一系列变换或分解 将问题最终变为一个子问题集合,这些子问题的 解可以直接得到,从而解决初始问题
9
2.2 问题规约法
问题归约的实质: 从目标(要解决的问题)出发逆向推理,建 立子问题以及子问题的子问题,直至最后 把初始问题归约为一个平凡的本原问题集合。
提问:指出此例题谓词公式中的量词、连词及蕴涵符号。 33
(2)、合适公式的性质 如果P 和Q 是合适公式,则由这两个合适公式 构成的合适公式的真值表与前面介绍的真值表 相同。 如果两个合适公式的真值表相同,则我们称这
两个合适公式是等价的,可以用“”来表示。
34
对于命题合适公式和谓词合适公式有下列等价关系: ①否定之否定:
(P∧Q)∧R 等价于 P∧(Q∧R) (P∨Q)∨R 等价于 P∨(Q∨R) ⑦逆否律 PQ 等价于 ~Q~P 说明:上述等价关系对命题合适公式、谓词合适 公式都成立。
37
对于谓词合适公式有下列等价关系:
⑧
~(x)P(x) 等价于 (x)[~P(x)] ~(x)P(x) 等价于 (x)[~P(x)] ⑨ (x)[P(x)∧Q(x)] 等价于 (x)P(x)∧(x)Q(x) (x)[P(x)∨Q(x)] 等价于 (x)P(x) ∨(x)Q(x)
x” 、“有一个x” 或者 “某些x”。
29
例1:“所有的机器人都是灰色的”,用谓词逻辑
可以表示成:
(x)[ROBOT(x) COLOR(x,gray)]
30
例2: “一号房间里有一个物体”,可以表示成
(x)INROOM(x, r1)
31
2.2 谓词公式
(1)、谓词公式的定义 利用连词和量词可以将原子(谓词)公式组成复
σk+1 =σk { tk / ak }
Fk+1 = Fk { tk / ak } k = k+1 然后转向②。否则,继续。 ⑤算法终止,F的 mgu 不存在。
48
合一算法的流程图
k=0, Fk=F,σk=ε |Fk|=1? 求得mgu、结束
求出不一致集合 有置换? 无解、结束
求出新置换;更新公式集合与旧置换,k++
说明:
(1)SET(x)和SET(y)分别表示集合x,集合y; (2)CARD(x, v)表示集合x的“模”为v,同样CARD(y, u)表示集合x 的“模”为u;
(3)G(u, v)表示u的值大于v的值。
41
“世上决没有无缘无故 的爱,也没有无缘无 故的恨。”
解题思路:把论断的表示形式“分细”,即知识的模块化问 题。在下列不同程度上予以细分: 步1. P——表示整个论断(即命题) 步2.分解为2个命题:没有无缘无故的爱 没有无缘无故的恨 步3.否定词分出来: 存在无缘无故的爱 存在无缘无故 的恨 步4.存在量词分出来: x[无缘无故的爱(x)] y[无缘无故 的恨(y)] 步5.把“爱”和“恨”的概念分出来:x[爱(x) 无缘故 (x)] y[爱(y) 无缘故 (y)] 步6.把“缘故”的否定词分出来: x[爱(x) 有缘故 (x)] y[爱(y) 有缘故 (y)] 步7.把“A是B的原因”这个概念中的A和B分解开来: x[爱(x) y 缘故 (x, y)] t[恨(t) s 缘故 (t, s)]
10
2、问题归约法的组成部分
问题归约法由三个部分组成:
一个初始问题描述 一套)
描述
11
3、示例:梵塔难题
例:梵塔问题(三个盘)
(a) 初始配置
(b) 目标配置
图2.6 梵塔难题
12
归约过程 (1)移动圆盘A和B至柱子2的双圆盘难 题; (2)移动圆盘C至柱子3的单圆盘难题; (3)移动圆盘A和B至柱子3的双圆盘难 题。 由上可以看出简化了难题每一个都比原始 难题容易,所以问题都会变成易解的本原 问题。
2
2.1 状态空间法 2.1.1 问题的状态描述 2.2.2 状态图示法 2.2.3 状态空间法表示举例
3
状态
节点
操作符
有向弧
4
问题:寻找从初始状态到目标 状态的某个操作符序列
转 化 为
问题:寻找图中初始节点(对应初
始状态)到目标节点(对应于目标
状态)的一条路径
5
第二节 问题归约法 学习要求
38
⑩ (x)P(x) 等价于 (y)P(y)
(x)P(x) 等价于 (y)P(y)
注释:这两个关系说明,在一个量化的表达式中 的约束变量是一类虚元,它们可以用任何不在表
达式中出现的其它变量来代替。
39
(3)谓词演算实例
例1. 试用谓词演算表示如下英文句子: “For every set x, there is a set y, such that the cardinality of y is greater than the cardinality of x.” 例2. 把论断“世上决没有无缘无故的爱, 也没有无缘无故的恨。”表示成谓词公 式的形式。
42
3 置换与合一
1、置换
假元推理,就是由合适公式W1和W1→W2产 生合适公式W2的运算。
全称化推理,是由合适公式(x)W(x)产生合适 公式W(A),其中A为任意常量符号。 一个表达式的置换就是在该表达式中用置换 项置换变量。
一般说来,置换是可结合的,但置换是不可 交换的。
43
例 :表达式(原子谓词公式)P[x,f(y),B]的四个置
49
说明:
1、合一算法是消解原理的基础。
2、合一算法中的公式集就是从谓词合适公式 化成的子句集。
步3. (x) {SET(x) (y) [SET(y) ((u) CARD(y, u) > (v) CARD(x, v))]} 步4. (x) {SET(x) (y) [SET(y) ((u) CARD(y, u) (v) CARD(x, v) G(u,v))]} 步5. (x) {SET(x) (y) (u) (v) [SET(y) CARD(y, u) CARD(x, v) G(u,v)]}
求出 mgu:
① 置 k=0 ,Fk = F ,σk=ε(空置换,即不含元素的 置换)。 ② 若 Fk 只有一个表达式,则算法终止,其中σk 就是要求的mgu。 ③ 找出 Fk 的分歧集 Dk 。
47
④若 Dk 中存在元素 ak 和 tk ,其中 ak 是变元,tk 是项,且 ak 不在 tk 中出现,则置:
45
例:
表达式集合{P[x , f(y) , B] , P[x , f(B) , B]}的合一
者为是 s = {A/x , B/y} P[x , f(y) , B]s = P[A , f(B) , B] P[x , f(B) , B]s = P[A , f(B) , B]
46
合一算法:
设F为非空有限表达式集合,则可以按下列步骤
通过梵塔难题重点掌握问题归约法的机
理和问题归约描述方法。 学会用与或图表示归约问题。
6
2.2问题归约法 2.2.1问题归约法描述及举例 2.2.2与或图表示
7
2.2 问题归约法 (Problem Reduction Representation)
子问题1
原始问题
子问题集
子问题n
本 原 问 题
13
4、归约描述
可以用状态空间表示的三元组合(S、F、G)来规定与
描述问题;对于梵塔问题,子问题[(111) →(122)],[(122)→(322)]以及[(322)→(333)]规 定了最后解答路径将要通过的脚踏石状态(122)和 (322)。 问题归约方法可以应用状态、算符和目标这些 表示法来描述问题,这并不意味着问题归约法和状 态空间法是一样的。
~(~P) 等价于 P
②
P∨Q 等价于 ~PQ
③狄.摩根定律
~(P∨Q)等价于 ~P∧~Q