第2节 搜索技术.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第2章 搜索技术 状态空间搜索法 基本概念 状态:是描述问题求解过程中任一时刻状况的数据结构。 S=(s1,s2,…, sn) Sk=(s1k,s2k,…, snk) 算符:由一个状态变为另一个状态的操作。 状态空间:表示问题的全部可能状态及其相互关系的有向图。节点表示状态,弧表示由一个状态变为另一个状态的操作。 状态空间法: (S0, F, Sg) 状态空间搜索法 九宫问题 状态空间搜索法 九宫问题 状态空间搜索法 搜索的基本思路: 把问题的初始状态作为当前状态,选择适当的算符对其进行操作,生成一组子状态。然后,检查目标状态是否在其中,若出现,则搜索成功,找到解;若不出现,则按某种搜索策略从已生成的状态中再选出一个状态作为当前状态。重复上述过程,直到目标状态出现或不再有可供操作的状态为止。 建立两个数据结构表:Open和Closed, Open用于存放刚(新)生成的节点, Closed用于存放已扩展的节点。 所谓扩展是指用合适的算符对该节点进行操作,生成的一组子节点(要求未曾出现过的,即不能把先辈节点作为当前扩展节点的子节点) 状态空间搜索法 搜索的一般过程: 把初始节点S0放入Open表,建立一个只含起始节点的搜索图。 检查Open表是否为空,若空,则无解,退出。 把Open表中的第一个节点取出,记为节点n,并放入Closed表。 考察节点n 是否为目标节点,若是,则得到问题的解,退出。 若节点n不可扩展,则转到② 对节点n 进行扩展,生成一组子节点,把既不在Open表中,又不在Closed表中的子节点添加到Open表中。在这些子节点之间互称为兄弟节点,节点n 为父节点。 按某种搜索策略对Open表中的节点进行排序, 转到② 通过搜索得到的图称为搜索图 盲目搜索法 从当前的状态到目标状态需要走多远或者每条路径的花费未知,所能做的工作只是可以区分出 那个是目标状态。 按预定的搜索策略进行,没有考虑问题本身的特性 常用的盲目搜索有广度优先搜索和深度优先搜索两种 宽度优先搜索-以九宫问题为例 基本思想:P12 对同层上的节点全部考察并扩展后,才能对下层节点进行考察和扩展。既搜索是从上到下逐层搜索的。 宽度优先搜索-以九宫问题为例 节点进出Open表的规律是先进先出,具有队列性质。 缺点:盲目性较大,当目标节点远离初始节点时,会产生很多无用节点,效率低。 优点:只要有解,则总可以得到解,且路径是最短的/最优的,是完备搜索。 深度优先搜索-以九宫问题为例 基本思想:P13 存在搜索和回溯交替出现的现象。搜索一旦进入某个分支,就将一直沿该分支向下搜索,直到分支(节点)不能扩展,然后再回溯到可以扩展的其或最近祖先的兄弟节点。 深度优先搜索-以九宫问题为例 节点进出Open表的规律是后进先出,具有栈的性质。 缺点:若目标节点不在搜索的分支上,而该分支又是一个无穷分支,就不可能得到解,是不完备搜索。 优点:若目标节点恰好在搜索的分支上,则可较快地得到解。 迭代加深搜索 目的:克服深度优先搜索陷入无穷分支死循环的问题。 基本思想:预先设定搜索深度界限d,当搜索深度达到深度界限d而尚未出现目标节点时就换一个分支搜索。 d的设置:当问题有解,且解的路径长度小于等于d时,则搜索过程一定能找到解,但不能保证最优的,搜索过程是完备而非最优的。若d取的太小,解的路径大于d,则搜索过程找不到解,此时搜索过程是不完备的。 迭代加深搜索:先任意给定一个较小的d,如果找到,则结束;否则增大深度d,继续搜索。 启发式搜索 盲目搜索效率低。 既可以指导搜索过程又与具体问题求解有关的控制信息称为启发性信息。 在启发性信息引导下的搜索过程称为启发式搜索。 启发式搜索充分利用与问题求解有关的特性信息来估计节点的重要性,指导搜索朝最有希望的方向进行,既选择最有希望的节点加以扩展。 估计函数 f(x)=g(x)+h(x) 启发性信息主要体现在h(x)中,要根据实际问题的特性来确定; 重排九宫问题中可以定义为错放的纸牌张数。 启发式搜索-A算法 有序搜索算法(A算法) 把初始节点S0放入Open表。 检查Open表是否为空,若空,则无解,退出。 把Open表中的第一个节点取出,记为节点n,并放入Closed表。 考察节点n 是否为目标节点,若是,则得到问题的解,退出。 若节点n不可扩展,则转到② 对节点n 进行扩展,生成一组子节点,把既不在Open表中,又不在Closed表中的子节点添加到Open表中,并计算其估价函数值。 ,对Open表中的各节点按其估价函数值从小到大进行排序 转到② 启发式搜索-A算法求解九宫重排问题 定义估价函数:f(x)=g(x)+h(x) g(x)是节点深度,即移动次数; h(

文档评论(0)

kehan123 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档