第三章1搜索推理技术.ppt
《第三章1搜索推理技术.ppt》由会员分享,可在线阅读,更多相关《第三章1搜索推理技术.ppt(46页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章第三章 搜索推理技术搜索推理技术3.6 产生式系统3.7 系统组织技术3.8 不确定性推理3.9 非单调推理3.10 小结3.1 图搜索策略3.2 盲目搜索3.3 启发式搜索3.4 消解原理3.5 规则演绎系统AI为什么要研究为什么要研究search问题没有直接的解法问题没有直接的解法;需要探索地求解需要探索地求解;什么是搜索什么是搜索?根据问题的实际情况不断寻找可利用的知识根据问题的实际情况不断寻找可利用的知识,构造出一条代构造出一条代价较少的推理路线价较少的推理路线,使问题得到圆满解决的过程使问题得到圆满解决的过程.包括两个方面:包括两个方面:-找到从初始事实到问题最终答案的一条推理
2、路径找到从初始事实到问题最终答案的一条推理路径 -找到的这条路径在时间和空间上复杂度最小找到的这条路径在时间和空间上复杂度最小2l在在图中寻找路径的方法图中寻找路径的方法l初始节点初始节点 初始数据库初始数据库l目标节点目标节点 满足终止条件的数据库满足终止条件的数据库求取把一个数据库求取把一个数据库变换为另一个数据变换为另一个数据库的规则序列库的规则序列求得图中一条路径求得图中一条路径3.1 图搜索策略图搜索策略 图搜索控制策略3l节点深度:根节点深度=0其它节点深度=父节点深度+101234l路径路径 设一节点序列为设一节点序列为(n0,n1,nk),对于对于i=1,k,若节点若节点ni-
3、1具有具有一个后继节点一个后继节点ni,则该序列称为从则该序列称为从n0到到nk的路径的路径l路径的耗散值(代价)路径的耗散值(代价)一条路径的耗散值等于连接这条路径各节点间所有耗散值的一条路径的耗散值等于连接这条路径各节点间所有耗散值的总和。用总和。用C(ni,nj)表示从表示从ni到到nj的路径的耗散值。的路径的耗散值。l扩展一个节点扩展一个节点生成出该节点的所有后继节点,并给出它们之间的耗散值。生成出该节点的所有后继节点,并给出它们之间的耗散值。这一过程称为这一过程称为“扩展一个节点扩展一个节点”。5 盲目搜索盲目搜索l图搜索策略图搜索策略 启发式搜索启发式搜索宽度优先搜索宽度优先搜索深
4、度优先搜索深度优先搜索6搜索过程的要点搜索过程的要点:起始节点起始节点:对应于初始状态描述对应于初始状态描述后继节点后继节点:把适用于某个节点状态描述的一些算符用来把适用于某个节点状态描述的一些算符用来推算该节点而得到的新节点推算该节点而得到的新节点,称为该节点的后继节称为该节点的后继节点点,检查各后继节点看是否为目标节点检查各后继节点看是否为目标节点.指针指针:从每个后继节点返回指向其父辈节点从每个后继节点返回指向其父辈节点7两个主要的数据结构:两个主要的数据结构:OPEN表表:存放刚生成的节点存放刚生成的节点,是还未扩展的节点是还未扩展的节点.一般一般是端节点是端节点.CLOSED表表:存
5、放将要扩展或已扩展的节点存放将要扩展或已扩展的节点.或者是已或者是已被扩展但还没有在搜索树中生成后继节点的端节点被扩展但还没有在搜索树中生成后继节点的端节点,或者是非端节点或者是非端节点8状状 态态 节节 点点父父 节节 点点编号编号状状 态态 节节 点点父父 节节 点点OPEN表表CLOSED表表9(1)把初始节点把初始节点S0放入放入OPEN表表,并建立目前只包含并建立目前只包含S0的图的图,记为记为G(2)检查检查OPEN表是否为空表是否为空,若为空则问题无解若为空则问题无解,退出退出(3)把把OPEN表的第一个节点取出放入表的第一个节点取出放入CLOSED表表,记该节点为记该节点为n(
6、4)考察考察n是否为目标节点是否为目标节点.如是如是,则问题得解则问题得解,退出退出(5)扩展节点扩展节点n,生成一组子节点生成一组子节点.把其中不是节点把其中不是节点n先辈的那些节先辈的那些节点记作集合点记作集合M,并把这些子节点作为节点并把这些子节点作为节点n的子节点加入的子节点加入G中中搜索的一般过程:搜索的一般过程:10(6)针对针对M中子节点的不同情况中子节点的不同情况,分别进行处理分别进行处理1.对于那些未曾在对于那些未曾在G中出现过的中出现过的M成员设置一个指成员设置一个指向父节点向父节点(即即n)的指针的指针,并把它们放入并把它们放入OPEN表表2.对于那些先前已在对于那些先前
7、已在G中出现过的中出现过的M成员成员,确定是确定是否需要修改它指向父节点的指针否需要修改它指向父节点的指针3.对于那些先前已在对于那些先前已在G中出现并且已经扩展了的中出现并且已经扩展了的M成员成员,确定是否需要修改其后继节点指向父节点确定是否需要修改其后继节点指向父节点的指针的指针(7)按某种搜索策略对按某种搜索策略对OPEN表中的节点进行排序表中的节点进行排序(8)转第转第(2)步步11开始开始把把S放入放入OPEN表表OPEN表为空表?表为空表?把第一个节点把第一个节点(n)从从OPEN表移至表移至CLOSED表表n为目标节点吗?为目标节点吗?把把n的后继节点放入的后继节点放入OPEN表
8、的表的末端,提供返回节点末端,提供返回节点n的指针的指针修改指针方向修改指针方向重排重排OPEN表表失败失败成功成功图图3.1 图搜索过程框图图搜索过程框图是是是是否否否否3.1 图搜索策略12l1,G=G0(G0=s),OPEN:=(s);l2,CLOSED:=();l3,LOOP:IF OPEN=()THEN EXIT(FAIL);l4,n:=FIRST(OPEN),REMOVE(n,OPEN),ADD(n,CLOSED);l5,IF GOAL(n)THEN EXIT(SUCCESS);l6,EXPAND(n)mi,G:=ADD(mi,G);l7,标记和修改指针:标记和修改指针:lADD(
9、mj,OPEN),并标记并标记mj到到n的指针;的指针;l计算是否要修改计算是否要修改mk、ml到到n的指针;的指针;l计算是否要修改计算是否要修改ml到其后继节点的指针;到其后继节点的指针;l8,对对OPEN中的节点按某种原则重新排序;中的节点按某种原则重新排序;l9,GO LOOP;13SOPENCLOSES 123 S 1,2,3 S 2,1,3 S 451,3 S,2 1,3,4,5 S,2 3,1,4,5 S,2 1,4,5 S,2,3 61,4,5,6 S,2,3 例子:G14l这是一个通用的搜索过程这是一个通用的搜索过程,后面讨论的状态空间各种搜索策略后面讨论的状态空间各种搜索策
10、略都是其特例都是其特例.各种搜索策略的主要区别就是对各种搜索策略的主要区别就是对OPEN表中节点表中节点排序准则不同排序准则不同。l算法结束后,将生成一个图算法结束后,将生成一个图G,称为搜索图。同时由于每个称为搜索图。同时由于每个节点都有一个指针指向父节点,这些指针指向的节点构成节点都有一个指针指向父节点,这些指针指向的节点构成G的一个支撑树,称为搜索树。的一个支撑树,称为搜索树。l从目标节点开始,将指针指向的状态回串起来,即找到一条从目标节点开始,将指针指向的状态回串起来,即找到一条解路径。解路径。l树树/不修改指针不修改指针;图图/修改指针。修改指针。l修改指针修改指针:找最优解。找最优
11、解。153.2 盲目搜索盲目搜索 l特点:不需重排OPEN表l种类:宽度优先、深度优先、等代价搜索等。3.2.1 宽度优先搜索v 定义 以接近起始节点的程度逐层扩展节点的搜索方法。v 特点:一种高代价搜索,但若有解存在,则必能找到它。v 算法从初始节点开始从初始节点开始,逐层对节点进行扩展并考察它是否为目标节点逐层对节点进行扩展并考察它是否为目标节点,在第在第n层层的节点没有全部扩展并考察之前,不对第的节点没有全部扩展并考察之前,不对第n+1层的节点进行扩展。层的节点进行扩展。16开始开始把把S放入放入OPEN表表OPEN表为空表?表为空表?把第一个节点把第一个节点(n)从从OPEN表移至表移
12、至CLOSED表表是否有后继节点是否有后继节点为目标节点?为目标节点?扩展扩展n,把,把n的后继节点放入的后继节点放入OPEN表的末端,提供返回节点表的末端,提供返回节点n的指针的指针失败失败成功成功图图3.2宽度优先算法框图宽度优先算法框图是是否否是是否否3.2 盲目搜索17宽(广)度优先搜索示意图宽(广)度优先搜索示意图18广度优先搜索方法分析:广度优先搜索方法分析:宽度优先搜索是图搜索一般过程的特殊情况,实际是将宽度优先搜索是图搜索一般过程的特殊情况,实际是将OPEN表作为表作为“先进先出先进先出”的队列进行操作。的队列进行操作。宽度优先搜索方法能够保证在搜索树中找到一条通向目标宽度优先
13、搜索方法能够保证在搜索树中找到一条通向目标节点的最短途径;这棵搜索树提供了所有存在的路径节点的最短途径;这棵搜索树提供了所有存在的路径(如如果没有路径存在,那么对有限图来说,我们就说该法失败果没有路径存在,那么对有限图来说,我们就说该法失败退出;对于无限图来说,则永远不会终止退出;对于无限图来说,则永远不会终止)。19l 例子八数码难题(8-puzzle problem)1238456712384567(目标状态)(初始状态)规定:将牌移入空格的顺序为:从空格左边开始顺时针旋转。不许斜向移动,也不返回先辈节点。从图可见,要扩展26个节点,共生成46个节点之后才求得解(目标节点)。3.2 盲目搜
14、索201238456712384123845674123856712 384123845671238456712384567678910111213123845675675671123845671238456712384567123845672345图3.4 八数码难题的宽度优先搜索树13456123845671238456712384567123845671 238456723242526271236782212384567123845671 238456712 3845671238456712384567123845671415161718192021123845673.2 盲目搜索21缺
15、点缺点:当目标节点距离初始节点较远时会产生许多当目标节点距离初始节点较远时会产生许多无用的节点无用的节点,搜索效率低搜索效率低。优点优点:只要问题有解只要问题有解,则总可以得到解则总可以得到解,而且是最短而且是最短路径的解。路径的解。223.2.2 深度优先搜索v 定义 首先扩展最新产生的(即最深的)节点。从初始节点开始从初始节点开始,在其子节点中选择一个节点进行考察,如果不是目标节点,在其子节点中选择一个节点进行考察,如果不是目标节点,则再在该子节点的子节点中选择一个节点进行考察,一直如此向下搜索。则再在该子节点的子节点中选择一个节点进行考察,一直如此向下搜索。当到达某个子节点,且该子节点既
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第三 搜索 推理 技术
限制150内