人工智能第2章问题求解与搜索技术-astar解读.ppt

人工智能第2章问题求解与搜索技术-astar解读.ppt

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

* 《人工智能》 * 2.4 启发式搜索策略 盲目搜索的不足:效率低,耗费过多的计算空间与时间。 分析前面介绍的宽度优先、深度优先搜索,或代价搜索搜索算法,其主要的差别是OPEN表中待扩展节点的顺序问题。人们就试图找到一种方法用于排列待扩展节点的顺序,即选择最有希望的节点加以扩展,那么,搜索效率将会大为提高。 启发信息:进行搜索时可以利用某些有关具体问题领域的信息,把此种信息叫做启发信息。 利用启发信息的搜索方法称为启发式搜索方法。 * 《人工智能》 * 2.4 启发式搜索策略(2) * 《人工智能》 * 2.4 启发式搜索策略(3) 估价函数 用于估价节点重要性的函数称为估价函数。其一般形式为: f(x) = g(x)+h(x) 其中g(x)为从初始节点S0到节点x已经实际付出的代价;h(x)是从节点x到目标节点Sg的最优路径的代价的估计,它体现了问题的启发性信息,其形式要根据问题的特性确定。例如它可以是节点x到目标节点的距离,或者节点x处于最优路径上的概率等等。h(x)称为启发函数。 g(x) 有利于搜索的完备性,但影响搜索的效率。 * 《人工智能》 * 2.4 启发式搜索策略(4) 估价函数示例 设有如下结构的移动牌游戏: B B B W W W E 该游戏规则: 1、当一个牌移入相邻的空位置时,费用为一个单位。 2、一个牌至多可跳过两个牌进入空位置,其费用等于跳过的牌数加1。 要求把所有的B都移至W的右边,请设计估价函数中的h(x)。 解:根据要求可知,W左边的B越少越接近目标,因此可用W左边B的个数作为h(x),即 h(x)=3×(每个W左边B个数的总和) 这里乘以系数3是为了扩大h(x)在f(x)中的比重。 * 《人工智能》 * 2.4.1 局部择优搜索 基本思想:当一个节点被扩展以后,按f(x)对每一个子节点计算估价值,并选择最小者作为下一个要考察的节点。 搜索过程: 把初始节点S0放入OPEN表,计算f(S0)。 如果OPEN表为空,则问题无解,退出。 把OPEN表的第一个节点(记为节点n)取出放入CLOSE表。 考察节点n是否为目标节点。若是,则求得问题的解,退出。 若节点n不可扩展,则转第2步。 扩展节点n,用估价函数f(x)计算每个子节点的估价值,并按估价值从小到大的顺序放到OPEN表中的首部,并为每一个子节点都配置指向父节点的指针,然后转第2步。 深度优先搜索、代价树的深度优先搜索是局部择优搜索的特例。 该算法不完备。 * 《人工智能》 * 2.4.2 全局择优搜索 基本思想:全局择优搜索每次总是从OPEN表的全体节点中选择一个估价值最小的节点。 搜索过程: 把初始节点S0放入OPEN表,计算f(S0)。 如果OPEN表为空,则问题无解,退出。 把OPEN表的第一个节点(记为节点n)取出放入CLOSE表。 考察节点n是否为目标节点。若是,则求得了问题的解,退出。 若节点n不可扩展,则转第2步。 扩展节点n,用估价函数f(x)计算每个子节点的估价值,并为每一个子节点都配置指向父节点的指针。把这些子节点都送入OPEN表中,然后对OPEN表中的全部节点按估价值从小至大的顺序进行排序,然后转第2步。 广度优先搜索、代价树的广度优先搜索是全局择优搜索的特例。 该算法不完备。 * 《人工智能》 * 全局择优搜索举例 设估价函数为: f(x)=d(x)+h(x), 其中,d(x)表示节点x的深度,h(x)表示节点x的格局与目标节点格局不相同的牌数。 * 《人工智能》 * 2.4.3 A*算法 如果一般搜索过程满足如下限制,则它就称为A*算法: 1、把OPEN表中的节点按估价函数 f(x)=g(x)+h(x) 的值从小至大进行排序(一般搜索过程的第8步)。 2、g(x)为算法目前已经找到的从初始节点到达节点x的最小代价。g(x)是对g*(x)的估计,g(x)0。 3、h(x)是h*(x)的下界,即对所有的x均有: h(x)≤h*(x) 其中,g*(x)是从初始节点S0到节点x的最小代价;h*(x)是从节点x到目标节点的最小代价,若有多个目标节点,则为其中最小的一个。 * 《人工智能》 * 在A*算法中,g(x)实际上就是从初始节点S0到节点x的路径代价,恒有g(x)≥g*(x)。而且在算法执行过程中随着更多搜索信息的获得,g(x)的值呈下降的趋势。 例如: H(x)的确定依赖于具体问题领域的启发性信息,其中h(x)≤h*(x)的限制十分重要,它保证A*算法能找到最优解。 * 《人工智能》 * A*算法的性质 可纳性:对于可解状态空间图(即从初始节点到目标节点有路径存在)来说,如果一个搜索算法能

文档评论(0)

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

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

1亿VIP精品文档

相关文档