- 1、本文档共73页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第五章讲 启发式搜索课件.ppt
5.3.2 宽度优先搜索策略 宽度优先搜索:以接近起始结点的程度为依据进行逐层扩展的搜索方法。(用队列的存储结构,类似于树的按层次遍历的过程。 特点:逐层搜索;高价搜索:若解存在,必能找到。 例2 通过搬动积木块,希望从初始状态达到一个目的状态,即三块积木堆叠在一起。 B C A A B C (a) 初始状态 (b) 目的状态 积木问题 5.3.2 宽度优先搜索策略 操作算子为MOVE(X,Y):把积木X搬到Y(积木或桌面)上面。 MOVE(A,Table):“搬动积木A到桌面上”。 操作算子可运用的先决条件: (1)被搬动积木的顶部必须为空。 (2)如果 Y 是积木,则积木 Y 的顶部也必须为空。 (3)同一状态下,运用操作算子的次数不得多于一次。 5.3.2 宽度优先搜索策略 A B A B A C C B A C C C B A B C A B A C B A A B C B C B C C A B A MOVE(A,TABLE) MOVE(C,A) MOVE(A,C) MOVE(B,A) MOVE(B,C) MOVE(C,A) MOVE(C,B) MOVE(C,B) MOVE(A,B) 0 S 1 S 2 S 3 S 4 S 5 S 6 S 7 S 8 S 9 S 10 S 没有后裔, 失败退出 积木问题的宽度优先搜索树 5.3.2 宽度优先搜索策略 5.3.2 宽度优先搜索策略 open表(NPS表):已经生成出来但其子状态未被搜索的状态。 closed表( PS表和NSS表的合并):记录了已被生成扩展过的状态。 重复 OPEN表 CLOSE表 0 S0 [ ] 1 2 3 4 。。 。。。 重复 OPEN表 CLOSE表 0 S0 [ ] 1 [S1,S2,S3] [S0] 2 3 4 。。 。。。 重复 OPEN表 CLOSE表 0 S0 [ ] 1 [S1,S2,S3] [S0] 2 [S2,S3,S4,S5,S6,S7] [S1,S0] 3 4 。。 。。。 重复 OPEN表 CLOSE表 0 S0 [ ] 1 [S1,S2,S3] [S0] 2 [S2,S3,S4,S5,S6,S7] [S1,S0] 3 [S3,S4,S5,S6,S7] [S2,S1,S0] 4 。。 。。。 重复 OPEN表 CLOSE表 0 S0 [ ] 1 [S1,S2,S3] [S0] 2 [S2,S3,S4,S5,S6,S7] [S1,S0] 3 [S3,S4,S5,S6,S7] [S2,S1,S0] 4 [S4,S5,S6,S7,S8] [S3,S2,S1,S0] 。。 。。。 5.3.3 深度优先搜索策略 0 S 1 2 3 4 5 6 7 8 9 10 11 12 13 K K 深度优先搜索法中状态的搜索次序 0 S 1 2 3 4 5 6 7 8 9 10 11 12 13 K K 深度优先搜索:首先扩展最新产生的节点,深度相等的节点可以任意排列的搜索方法。(用堆栈的数据结构) 特点:搜索沿着状态空间的某单一路径沿着起始点向下进行下去,仅当搜索到达一个没有后裔的状态时,才选择另一条替代路径。 5.3.3 深度优先搜索策略 深度优先搜索并不能保证第一次搜索到的某个状态时的路径是到这个状态的最短路径,为防止搜索过程沿着无益的路径扩展下去,给出一个节点扩展的最大深度—深度界限。 为了保证找到解,应选择合适的深度限制值,或采取不断加大深度限制值的办法,反复搜索,直到找到解。 与宽度优先搜索根本的不同点:将扩展的后继节点放在OPEN表的最前端。 例3 卒子穿阵问题,要求一卒子从顶部通过下图所示的阵列到达底部。卒子行进中不可进入到代表敌兵驻守的区域(标注1),并不准后退。假定深度限制值为5。 阵列图 5.3.3 深度优先搜索策略 0 S 1 S ) 1 , 1 ( 2 S ) 2 , 1 ( 3 S ) 2 , 2 ( 4 S ) 1 , 2 ( 5 S ) 1 , 3 ( 6 S ) 2 , 3 ( 7 S ) 3 , 2 ( 8 S ) 3 , 1 ( 9 S ) 2 , 1 ( 14 S ) 4 , 1 ( 10 S ) 2 , 2 ( 11 S ) 1 , 2 ( 12 S ) 1 , 3 ( 13 S ) 3 , 2 ( 15 S ) 4 , 2 ( 16 S ) 4 , 3 ( 17 S ) 4 , 4 ( 18 S ) 4 , 1 ( 死 死 解 0 S 1 S ) 1 , 1 ( 2 S ) 2 , 1 ( 3 S ) 2 , 2 ( 4 S ) 1 , 2 ( 5 S ) 1 , 3 ( 6 S ) 2 , 3 ( 7 S ) 3 ,
文档评论(0)