人工智能讲课课件.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
预习 阅读5.4、5.5。 * * 人 工 智 能 徐长明 第五章 主 要 内 容 阅读教材5.1、 5.2、5.3、5.4、5.5。 爬山法和动态规划法 最佳优先搜索算法 可纳性、单调性以及信息性 博弈树搜索 计算复杂度 最佳优先搜索 g 搜索就是寻找问题的解的过程,即,寻找从初始状态s到目标状态g的路径。 假设单步的路径耗散值非负,即,cost (x, y) ≥ 0。 x y s 一般的图搜索 一般的图搜索算法描述 一般的启发式搜索算法 搜索算法的不同,归根结底在于,对OPEN表节点扩展顺序的策略不同。 OPEN表节点扩展策略一般受制于一下因素: 称为评价函数的f(n) 。其中,n可以是任意节点。一般地,f(n) 有实际意义,如表示代价或耗散时,值越小越好。 选择下一个节点时考虑OPEN表哪些节点。 一般地,评价函数定义为 f(n) = g(n) + h(n) 搜索算法或许已发现多条从初始节点s到节点n 的路径,它们的最小代价为g(n) 。 虽然从节点n到任一目标节点g的所有路径的最小代价尚不知道,但是可由领域知识对其作出估计,通过启发函数h(n)实现。 于是,f(n)表示从初始节点s经由节点n到达目标节点g的最优路径的代价估计值。 启发式搜索是OPEN表是优先队列的搜索。 启发式搜索算法举例 八数码 f(n) = g(n) + h(n)的选取 g(n) = “x所在的搜索深度”; h(n) = “x与sg相比,错位数字的数目”。 错位数h(n) = 5。显然, 5 ≤ “实际需要的最少步数”,满足h(n) ≤ h*(n)。 * 1 2 3 8 4 7 6 5 目标状态sg 当前状态x 贪婪搜索 启发式搜索也称最佳优先搜索。 贪婪搜索或贪婪最佳优先搜索: f(n) = h(n) 若n是目标节点,则h(n)=0。 启发函数h(n)基于领域知识,前瞻(或猜测)从当前节点抵达任意目标节点的最小代价。 h(n)越小,代表n越有希望好。 可纳性、单调性、信息度 A*搜索 若一个启发式搜索:对任意节点n,h(n) ? h*(n),且对所有目标节点g有h(g)=0,则称之为A*搜索。 可纳性。启发函数对任意节点n满足满足h(n) ? h*(n),则称该算法是可纳的,称h是可纳的启发函数。 根据A*定义,所有A*搜索都是可纳的。 可纳性 请证明:A*算法是最优的。 证:若问题有解,令最优解G的耗散为C* 。 假设一个非最优解G‘出现在边缘上。G‘是解,故h(G’)=0,f(G‘)=g(G’)+h(G‘)=g(G’) C* 。 对于任意一个处于最优解路径上的结点n,而f(n)不会高估经过n的最优解的路径耗散,总有f(n)≤f(G)=C*。 f(n) ≤C*f(G’)综上,故G’将不会得到扩展,算法最终将得到最优解。 单调性 单调性(一致性)。h(n)满足以下条件就是一致的:对于每个结点n,通过任何行动a生成的n的每个后继结点n‘,满足下列三角不等式:h(n) ≤ cost(n, a, n‘) + h(n‘)。该三角形是由n,n‘和离n最近的目标构成。 试证明: 如果h(n)是一致的,那么,它一定也是可纳的。 如果h(n)是一致的,那么,沿着任何路径的f(n)值是非递减的。 具有单调性的启发函数的A* 信息度 信息度。何时一个启发策略要比另一个启发策略好? 在两个A*启发策略的h1和h2中,如对搜索空间中的任一状态n都有h1(n) ? h2(n) ? h*(n) ,就称策略h2比h1具有更多的信息度(或h2比h1更占优) 须注意的是:更多的信息性需要更多的计算时间,从而有可能抵消减少搜索空间所带来的益处! h1(n) = “x与sg相比, 错位数字的曼哈顿距离之和”; h2(n) = “x与sg相比,错位数字的数目”。 h1 (n) = 6 ;h2 (n) = 5。 * 1 2 3 8 4 7 6 5 目标状态sg 当前状态x 思 考 题 寻找从城市A到城市G的最短路径 * 寻找从城市A到城市G的最短路径 * A*搜索搜索最短路径的过程 * g(A)=0 h(A)=300 f(A)=300 270+210 =480 A B C D A 245+150 =395 265+165 =430 (a) 初始状态 (b) 扩展A之后 考虑将A*搜索用于树搜索。即,下述过程没有考虑状态重复的问题。(a)~(e)描述了搜索的几个阶段。 * f(B)=480 A B C D 395+210 =605 (c) 扩展C之后 f(D)=430 B A E 490+300 =790 370+80 =450 * f(B)=480 A B C D (d) 扩展D之后 f(D)=430 B A E A G f(B)=605 f(A)=790 f(E)=45

文档评论(0)

勤能补拙 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档