人工智能搜索策略课件.ppt

  1. 1、本文档共160页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
与/或树的一般搜索过程 与/或树的一般搜索过程 解图的生成--自根节点开始选一外向连接,并从该连接指向的每个子节点出发,再选一外向连接,如此反复进行,直到所有外向连接都指向终节点为止。 解图是遵从问题归约策略而搜索到的,解图中不存在节点或节点组之间的“或”关系;换言之,解图纯粹是一种“与”图。另外,正因为与或图中存在“或”关系,所以往往会搜索到多个解图,本例中就有4个。 与/或树的一般搜索过程 初始节点S0对应原始问题的描述。 用可适用的分解或等价变换算符求得S0的后继节点集合。 从每个后裔设置指向父辈节点的指针(用于标示可解或不可解,并指出一个到终叶节点的解图),删去没有意义的节点。 继续扩展节点和设置指针的过程,直至S0被标示为可解或不可解为止。 与/或树的一般搜索过程 基本思想:把新生成的子节点放入OPEN表的尾部。 算法: 1)把初始节点S0放入OPEN表。 2)把OPEN表中首节点(记为n)取出放入CLOSE表。 3)如果节点n可扩展,则 i)扩展n,将其子节点配置指针,放入OPEN表尾部。 ii)这些子节点是否有终止节点,若是,应用可解标示过程。若S0被标示可解,则得到解树搜索成功;否则从OPEN表中删除具有可解先辈的节点。 iii)转2) 与/或树的广度优先搜索 算法: (续) 4)如果节点n不可扩展,则 i)应用不可解标示过程。若S0被标示为不可解,则搜索失败;否则从OPEN表中删除具有不可解先辈的节点。 ii)转2) 流程图: (略) 举例: 与/或树的广度优先搜索 基本思想:把新生成的子节点放入OPEN表的首部。 算法: (与广度优先类似) 流程图: (略) 举例: 与/或树的深度优先搜索 基本思想:考虑付出的代价,选择扩展节点时,先走几步,选择代价最小的节点进行扩展。 由于局部图中有多个叶结点,不能像一般图搜索那样通过对某一结点的评价来实现对整个局部图的评价,因此对于与或图搜索来说,就是通过对局部图的评价来选择待扩展的结点。 与或图的启发式搜索 启发式搜索 --- A*算法(最佳图搜索算法) ④ 评价函数:f(n)= g(n) + h(n) 其中: f, g, h分别是f*, g*, h*的估计值。通常约定: f(n) 按照升序排列。 将评价函数f与f *相比较,实际上,f(n)、g(n)和h(n)分别是f*(n)、g*(n)和h*(n)的近似值。 在理想的情况下,设计评价函数f时可以让 g(n) = g*(n), h(n) = h*(n),则应用该评价函数的算法A就能在搜索过程中,每次都正确地选择下一个从OPEN表中取出加以扩展的节点,从而不会扩展任何无关的节点,就可顺利地获取解答路径。 启发式搜索 --- A*算法(最佳图搜索算法) 然而g*(n)和h*(n)在最短解答路径找到前是未知的,故而几乎不可能设计出这种理想的评价函数;而且对于复杂的应用领域,即便是要设计接近于f*的f往往也是困难的。 一般来讲,g(n)的值容易从迄今已生成的搜索树中计算出来,不必专门定义计算公式。 例如就以节点深度d(n)作为g(n),并有g(n)≥g*(n)。 然而h(n)的设计依赖于启发式知识的应用,所以如何挖掘贴切的启发式知识是设计评价函数乃至算法A的关键。 前述八数码游戏例使用的启发式函数w(n)就不够贴切,从而在搜索过程中错误地选用了节点d加以扩展(见图) 。 启发式搜索 --- A*算法(最佳图搜索算法) 其实我们可以设计更接近于h*(n)的h(n),如p(n),其值是节点n与目标状态节点相比较,每个错位棋牌在假设不受阻拦的情况下,移动到目标状态相应位置所需走步(移动次数)的总和。显然p(n)比w(n)更接近于h*(n),因为p(n)不仅考虑了错位因素,还考虑了错位的距离(移动次数)。    启发式搜索 --- A*算法(最佳图搜索算法) OPEN CLOSE 0 s bac s eacdi sb lacdim sbe nacdim sbde qacdimo sbdel 成功结束 启发式搜索 --- A*算法(最佳图搜索算法) 评价函数:f(n)= g(n) + h(n) 其中: f, g, h分别是f*, g*, h*的估计值。 综述: (1) g(n)比较容易得到,由上述定义

文档评论(0)

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

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

1亿VIP精品文档

相关文档