网站大量收购独家精品文档,联系QQ:2885784924

chapter 8 分支界限法-new.ppt

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

* HeJing(2011) School of Software School of Software, YunNan University 任课教师:何婧 Email: hejing@ynu.edu.cn Chapter 8 Outline 分支限界法与回溯法的不同 分支限界法的基本思想 15迷问题(15-puzzle) 旅行商问题(货郎担问题) 8.1 分支限界法与回溯法的不同 回溯法只能淘汰不能达到解的分支,而不能选择最有利于达到解的分支。 而分支限界法一般要设计一种判定函数,精确的判定函数很难给出,所以通常是估值函数,对每个活结点,均可计算判定函数的值,比较这些值即可选择扩展结点,使之能更好地朝着状态空间树上有最佳解的分支推进,以便尽快找出一个最佳解。 8.1 分支限界法与回溯法的不同 分支限界法在搜索过程中可以采用FIFO(先进先出)或LIFO(后进先出),所以分支界限法的活结点表不一定是栈,而回溯法则采用了栈LIFO; 回溯法的扩展结点每次生成一个孩子结点;分支限界法扩展结点则是一次生成完所有的孩子(一旦生成了孩子结点,该结点就变为死结点,不再进入活结点表,只有其孩子结点才能进入活结点表)。 8.2 分支限界法的基本思想(1) 判定函数:可以根据从一个活节点出发,直到到达一个回答状态所需的计算量来给定。 在找到回答节点以前,以活节点X为根的子树上必须产生的节点总数做判定函数,“生成节点最少”问题 从活节点X到最近一个回答节点的路径的长度 估值函数:判定函数的估计值。 分支限界法的基本思想(2) 在分支限界法中,每一个活结点只有一次机会成为扩展结点。活结点一旦成为扩展结点,就一次性产生其所有儿子结点。在这些儿子结点中,导致不可行解或导致非最优解的儿子结点被舍弃,其余儿子结点被加入活结点表中。 此后,从活结点表中取下一结点成为当前扩展结点,并重复上述结点扩展过程。此过程一直持续到找到所需的解或活结点表为空时为止。 8.3 15迷问题(1) 问题描述:所谓15迷(15-puzzle)问题是在一个 4X4的方格棋盘上,将数字1,2,3,…,14,15以任意顺序置入棋盘的各个方格中,空出一格。问题是希望通过有限次的移动,把一个给定的初态(下页图a)变成目标状态(下页图b) 。移动规则是:每次只能在空格相临的数字中任选一个移入空格。 15迷问题(2) 1 2 3 4 5 15 12 7 6 11 14 8 9 10 13 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 15迷示例 图a 图b 图c 定义l(i)是棋盘上第i+1格到第16格中,比第i格中的棋子号码小 的棋子个数。 例如: 图a中 l(1)=0; l(6)=10; l(11)=3 图b中,一切l(i)=0 对于任何一个给定的初态,通过各种可能的移动,最多可产生16!种不同的状态 哪些初态可以变换成目标状态?? 15迷问题(3) 定理8.1 对一个给定的初态,如果空格位于(j,k),如果 是偶数,则这个初态可以变换成目标状态,否则,其它任何初态都不可能变换成目标状态。其中L(i)是棋盘上第i+1格到第16格中,较i格中的棋子号码小的棋子个数。 在初始状态下,如果空格在上页图c的阴影位置中的某一格处,则令x=1;否则令x=0,定理简化为判断 是否为偶数。 15迷问题(4) 给出一个便于计算成本估计值的函数c(x),使搜索沿着达到目标节点的道路前进。 方法一:c(x)当前状态下,没有达到目标状态下正确位置的数字个数。 方法二:c(x)= 15迷问题(5) 1 2 3 4 5 6 8 9 10 7 11 13 14 15 12 初态:x=1; 判定函数:c(x)=4 ① 1 2 4 5 6 3 8 9 10 7 11 13 14 15 12 1 2 3 4 5 6 8 9 10 7 11 13 14 15 12 1 2 3 4 5 6 7 8 9 10 11 13 14 15 12 1 2 3 4 5 6 8 9 10 7 11 13 14 15 12 上 右 下 左 判定函数c(x)=5 ② ③ ⑤ ④ c(x)=5 c(x)=3 c(x)=5 15迷问题(5) 1 2 3 4 5 6 7 8 9 10 11 13 14 15 12 初态:x=1; 判定函数:c(x)=4 ④ 1 2 3 4 5 6 8 9 10 7 11 13 14 15 12 1 2 3 4 5 6 7 8 9 10 11 13 14 15 12 1 2 3 4 5 6 7 8 9 10 15 11 13 14 12 1 2

文档评论(0)

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

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

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档