人工智能-第3章(确定性推理3-与或树搜索)教学文稿

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
人工智能
Artificial Intelligence (AI)
许建华 xujianhua@njnu.edu.cn 南京师范大学计算机科学与技术学院
2011年秋季
2020/2/15
第3章 确定性推理
3.1 图的搜索策略 3.2 盲目搜索 3.3 启发式搜索 3.4 与或树搜索(补充) 3.5 博弈树搜索(补充) 3.6 消解原理
2020/2/15
第三大循环(3、4、5步): 3、从OPEN表中取出节点3,并送到CLOSED表 4、扩展节点3,生成后继节点6、7,并送到OPEN
表的末端 5、无叶节点,转到3步
OPEN= { 4, 5, 6, 7 } CLOSED= { 1 , 2, 3 }
2020/2/15
第四大循环(3、4、5步): 3、从OPEN表中取出节点4,并送到CLOSED表 4、扩展节点4,生成后继节点8、9,并送到OPEN
索过程中没有产生过的节点,并且以后也不会 再生成它们。(每一个节点只允许生成一次)
2020/2/15
3.4.1 宽度优先搜索 两个基本符号:
OPEN表:存放待扩展的节点,此时是队列 CLOSED表:存放已扩展的节点
2020/2/15
与或树宽度优先搜索算法:
1、起始节点 S 送 OPEN 表 2、若 S 为叶节点,则成功结束,否则,继续 3、取出 OPEN 表的第一个节点(记作 n ),并送
2020/2/15
不可解节点的定义(递归地)是:
1、没有后裔的非终叶节点是不可解节点
2、如果某一个非终叶节点含有“或”后继节点, 那么,只要当所有的后继节点都不可解时,这一 个非终叶节点才是不可解的
3、如果某一个非终叶节点含有“与”后继节点, 那么,只要有一个后继节点是不可解的,这一个 非终叶节点就是不可解的
到CLOSED 表
2020/2/15
4、扩展节点 n ,生成其全部后继节点,送OPEN 表末端,并设置指向 n 的指针
说明:此时可能出现三种情况
➢节点 n 无后继节点
➢节点 n 有后继节点、并有叶节点
2020/2/15
➢节点 n 有后继节点、但无叶节点
5、若 n 无后继节点,标志 n 为不可解,并转9 (10、11);若后继节点中有叶节点,则标志 这些叶节点为可解节点,并继续(6、7、8); 否则转3
2020/2/15
2020/2/15

说明:先扩展出来的节点画在左边
2020/2/15
ห้องสมุดไป่ตู้
算法的运行过程
初始化: 节点 1 送OPEN表,且不为叶节点
OPEN= { 1 } CLOSED= { }
2020/2/15
第一大循环(算法的3、4、5步):
3、从OPEN表中取出节点1,并送到CLOSED表 4、扩展节点1,生成后继节点2、3,并送到
OPEN= { 8, 9, B, C, t1, 10, 11, 12 } CLOSED= { 1, 2, 3, 4, 5, 6, 7 }
2020/2/15
第八大循环(3、4、5步): 3、从OPEN表中取出节点8,并送到CLOSED表 4、扩展节点8,生成后继节点A,并送到OPEN表
表的末端 5、无叶节点,转到3步
OPEN= { 5, 6, 7, 8, 9 } CLOSED= { 1, 2, 3, 4 }
2020/2/15
第五大循环(3、4、5步): 3、从OPEN表中取出节点5,并送到CLOSED表 4、扩展节点5,生成后继节点B、C,并送到
OPEN表的末端 5、无叶节点,转到3步
2020/2/15
可解标志过程与不可解标志过程:
根据可解与不可解节点的递归定义,用递归的方 式作用于某一个与或图,以标出所有的可解节点 与不可解节点
2020/2/15
算法结束的条件: ➢ 若初始节点被标志为可解节点,算法成 功结束(有解) ➢ 若起始节点被标志为不可解节点,则搜 索失败结束(无解)
2020/2/15
可解节点的定义是(递归地):
1、终叶节点是可解的(因为它们与本原问题相关 联的)
2、如果某一个非终叶节点含有“或”后继节点, 那么,只要有一个后继节点是可解的,这一个非终 叶节点就是可解的
3、如果某一个非终叶节点含有“与”后继节点, 那么,只要所有后继节点是可解的,这一个非终叶 节点才是可解的
OPEN表的末端 5、无叶节点,转到3步
OPEN= { 2,3 } CLOSED= { 1 }
2020/2/15
第二大循环(3、4、5步): 3、从OPEN表中取出节点2,并送到CLOSED表 4、扩展节点2,生成后继节点4、5,并送到OPEN
表的末端 5、无叶节点,转到3步
OPEN= { 3, 4, 5 } CLOSED= { 1, 2 }
2020/2/15
6、实行可解标志过程 7、若起始节点S标志为可解,则找到解而结束,
否则继续 8、从OPEN表中删去含有可解先辈节点的节点,
并转3
2020/2/15
9、实行不可解标志过程 10、若起始节点S标志为不可解,则失败而结束,
否则继续 11、从OPEN表中删去含有不可解先辈节点的节点 12、转3
2020/2/15
与或图的解图: 由最少的可解节点所构成的子图,这些节 点能够使问题的起始节点是可解的
2020/2/15
与或树:除了起始节点,每一个节点只有一
个父节点
与或图:除了起始节点,每一个节点允许有
多个父节点
两者的关系:与或树是与或图的特例
2020/2/15
约定:当一个节点生成后继节点时,它们是搜
OPEN= { 6, 7, 8, 9, B, C } CLOSED= { 1 , 2, 3, 4, 5 }
2020/2/15
第六大循环(3、4、5、6、7、8步): 3、从OPEN表中取出节点6,并送到CLOSED表 4、扩展节点6,生成后继节点t1、10,并送到OPEN
表的末端 5、有叶节点 6、实现可解过程(无法判断节点6是否可解) 7、无法判断起始节点是否可解 8、OPEN表中无节点可以删除(转到3)
2020/2/15
OPEN= { 7, 8, 9, B, C, t1, 10 } CLOSED= { 1 , 2, 3, 4, 5, 6 }
2020/2/15
第七大循环(3、4、5步): 3、从OPEN表中取出节点7,并送到CLOSED表 4、扩展节点7,生成后继节点11、12,并送到
OPEN表的末端 5、无叶节点,转到3步
相关文档
最新文档