人工智能技术 知识导论第4章图搜索技术 知识.ppt

人工智能技术 知识导论第4章图搜索技术 知识.ppt

  1. 1、本文档共147页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
人工智能技术 知识导论第4章图搜索技术 知识.ppt

第4章 图搜索技术 ;4.1 状态图搜索; 图4—1 迷宫图 ; 图4—2 迷宫的有向图表示 ?; 例4.2 在一个3×3的方格棋盘上放置着1,2,3,4,5,6,7,8八个数码,每个数码占一格,且有一个空格。这些数码可在棋盘上移动,其移动规则是:与空格相邻的数码方可移入空格。现在的问题是:对于指定的初始棋局和目标棋局(如图4—3所示),给出数码的移动序列。该问题称为八数码难题或重排九宫问题。 ; 4.1.2 状态图搜索 在状态图中寻找目标或路径的基本方法就是搜索。所谓搜索,顾名思义,就是从初始节点出发,沿着与之相连的边试探地前进,寻找目标节点的过程(也可以反向进行)。 1.搜索方式 用计算机来实现状态图的搜索,有两种最基本的方式:树式搜索和线式搜索。 所谓树式搜索,形象地讲就是以“画树”的方式进行搜索。 ; 2.搜索策略 由于搜索具有探索性,所以要提高搜索效率(尽快地找到目标节点),或要找最佳路径(最佳解)就必须注意搜索策略。对于状态图搜索,已经提出了许多策略,它们大体可分为盲目搜索和启发式(heuristic)搜索两大类。 ; 3. 搜索算法 由于搜索的目的是为了寻找初始节点到目标节点的路径,所以在搜索过程中就得随时记录搜索轨迹。为此,我们用一个称为CLOSED表的动态数据结构来专门记录考查过的节点。显然,对于树式搜索来说,CLOSED表中存储的正是一棵不断成长的搜索树;而对于线式搜索来说,CLOSED表中存储的是一条不断伸长的折线,它可能本身就是所求的路径(如果能找到目标节点的话)。 ; 另一方面,对于树式搜索来说,还得不断地把待考查的节点组织在一起,并做某种排列,以便控制搜索的方向和顺序。为此,我们采用一个称为OPEN表的动态数据结构,来专门登记当前待考查的节点。OPEN表和CLOSED表的结构如图4—4所示。 ;图4—4 OPEN表与CLOSED表示例 ; 4.1.3 穷举式搜索 为简单起见,下面我们先讨论树型结构的状态图搜索,并仅限于树式搜索。 按搜索树生成方式的不同,树式穷举搜索又分为广度优先和深度优先两种搜索方式。这两种方式也是??基本的树式搜索策略,其他搜索策略都是建立在它们之上的。下面先介绍广度优先搜索。 ; 1. 广度优先搜索 广度优先搜索就是始终先在同一级节点中考查,只有当同一级节点考查完之后,才考查下一级节点。或者说,是以初始节点为根节点,向下逐级扩展搜索树。所以,广度优先策略的搜索树是自顶向下一层一层逐渐生成的。 ; 例4.3 用广度优先搜索策略解八数码难题。 由于把一个与空格相邻的数码移入空格,等价于把空格向数码方向移动一位。所以,该题中给出的数码走步规则也可以简化为:对空格可施行左移、右移、上移和下移等四种操作。 设初始节点S0和目标节点Sg分别如图4—3的初始棋局和目标棋局所示,我们用广度优先搜索策略,则可得到如图4—5所示的搜索树。 ;图4—5 八数码问题的广度优先搜索 ; 2.深度优先搜索 深度优先搜索就是在搜索树的每一层始终先只扩展一个子节点,不断地向纵深前进,直到不能再前进(到达叶子节点或受到深度限制)时,才从当前节点返回到上一级节点,沿另一方向又继续前进。这种方法的搜索树是从树根开始一枝一枝逐渐形成的。 深度优先搜索算法: 步1 把初始节点S0放入OPEN表中; 步2 若OPEN表为空,则搜索失败,退出。 ; 步3 取OPEN表中前面第一个节点N放入CLOSED表中,并冠以顺序编号n; ? 步4 若目标节点Sg=N,则搜索成功,结束。 步5 若N不可扩展,则转步2; 步6 扩展N,将其所有子节点配上指向N的返回指针依次放入OPEN表的首部,转步2。 ; 例4.4 对于八数码问题,应用深度优先搜索策略,可得如图4—6所示的搜索树。 深度优先搜索亦称为纵向搜索。由于一个有解的问题树可能含有无穷分枝,深度优先搜索如果误入无穷分枝(即深度无限),则不可能找到目标节点。所以,深度优先搜索策略

文档评论(0)

yuzongxu123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档