状态空间搜索策.ppt

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

3 搜索 3.1 搜索 3.2 盲目搜索 3.3 启发式搜索 3.1 搜索 1搜索基本概念 2搜索的一般过程 1. 搜索 从已知的事实出发(问题的初始状态) 寻找可用的知识(搜索) 一步一步推出最终结论(问题的目标状态) 问题求解?搜索 2 搜索的一般过程 Tower of Hanoi问题 搜索图与搜索树 Tower of Hanoi问题 有N个有孔的盘子,最初这些盘子都叠放在柱a上(如图1),要求将这N个盘子借助柱b从柱a移到柱c(如图2),移动时有以下限制,如何移动? 每次只能移动一个盘子; 大盘不能放在小盘上。 重排九宫问题 S0 2 8 3 1 4 7 6 5 3.2 盲目搜索 1 广度优先搜索 重排九宫问题 2 深度优先搜索 重排九宫问题 重排九宫问题 重排九宫问题 重排九宫问题 重排九宫问题 重排九宫问题 重排九宫问题 3 有界深度优先搜索 4 代价树广度优先搜索 边上标有代价(或费用)的树为代价树. 在代价树中,若有g(x)表示从初始节点S0到节点x的代价,用c(x1,x2)表示从父节点x1到子节点x2的代价,则有: g(x2)=g(x1)+c(x1,x2) 4 代价树广度优先搜索 5 代价树深度优先搜索 小结 3.3 启发式搜索 1 局部择优搜索     2 全局择优搜索  ●?全局择优搜索:每次都是从OPEN表的全体节点中选择一个估价值最小的节点进行扩展。  在全局择优搜索中,如果f(x)=g(x),则它就成为代价树的广度优先搜索;若令f(x)=d(x)(这里d(x)表示节点x的深度),则它就成为广度优先搜索。所以广度优先搜索和代价树的广度优先搜索可看作全局择优搜索的两个特例。 例 用全局择优搜索求解重排九宫问题,其初始状态和目标状态如图所示:   设估价函数为 f(x)=d(x)+h(x) 其中d(x)表示节点x的深度, h(x)表示节点x的格局与目标节点格局不相同的牌数. 3 启发式搜索算法A        利用评价函数f(n)=g(n)+h(n)来排列OPEN表节点顺序的图搜索算法称为A算法。    A算法每次按照f(n)值的大小对OPEN表中的元素进行排序,f值小的节点放在前面,而f值大的节点则被放在OPEN表的后面,这样每次扩展节点时,都是选择当前f值最小的节点来优先扩展。 4 最佳图搜索算法A﹡(Optimal Search) (2) A* 算法的最优性 (即信息量的比较) A* 算法的搜索效率在很大程度上取决于h(x),在满足h(x)≤h*(x)下,h(x)的值越大,表明携带启发性信息越多。 结论2:设有两个A* 算法A1* 和A2*: A1*:f1(x) = g1(x)+ h1(x) A2*:f2(x) = g2(x)+ h2(x) 对所有的非目标节点x均有: h2(x) ≥ h1(x) (A2*比A1*有更多的信息) 则A1* 扩展节点数不会比A2* 扩展节点少。 即A2* 的扩展节点集是A1* 扩展节点集的子集。 (通过搜索树深度应用数学归纳法证明)。 (3)A*算法的改进 ( h(x)的单调性限制 ) 单调性限制:① h(sg) = 0 ② 设xj是xi的任意子节点有: h(xi) ≤ h(xj) + c ( xi, xj) 结论3:当h满足单调性限制,则A* 算法扩展的每个节点x都满足: g(x) = g*(x) — 保证每次扩展的路径是最优路径。 且A*算法所扩展的节点序列的f值是非递减的。 例题 八数码问题:初始状态和目标状态 试用A*算法求解该问题. 取不同启发函数,应用A*算法求得最佳解时所扩展和生成的节点数 搜索过程: 1)把初始节点S0放入OPEN,置S0的深度d(S0)。 2)检查OPEN是否为空,是,无解,退出。 3)把OPEN第一个节点(并记该节点为n )取出放入CLOSED。 4)考察节点n是否为目标节点,是,得解,退出。 5)若节点n的深度d(节点n)=dm,转2)。 6)若节点n不可扩展,转2)。 7)扩展节点n ,将其子节点放入OPEN的首部,并为每一个子节点都配一个指

文档评论(0)

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

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

1亿VIP精品文档

相关文档