算法设计与分析分支限界法第六章.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文档。上传文档
查看更多

计算机算法设计与分析评价函数影响搜索效率前面的搜索的效率不高,几乎要搜索全部的状态空间。其原因是评价函数性能不好以及上下界的估计太低。要提高搜索效率,就必须要提高评价函数的性能,并精确上界的估计值。为了设计求解TSP问题的更好的评价函数,先定义其代价矩阵的归约矩阵和约数。第30页,共45页,星期日,2025年,2月5日计算机算法设计与分析归约矩阵以及约数给定代价矩阵C,从C的任何行i(或列i)的各元素中减去此行(或此列)的最小元素的值r(i)(或r’(i)),称为对i行(或i列)的归约。将C的各行和各列都归约后的矩阵称为C的归约矩阵。数r=∑i≤nr(i)+∑i≤nr’(i),即各行最小元素的值之和加上各列最小元素之和,称为C的约数。第31页,共45页,星期日,2025年,2月5日计算机算法设计与分析例子中的归约矩阵和约数计算前面例子中的归约矩阵及其约数如下:∞254031275∞1730251915∞6195024∞6228710∞先做行归约:∞254031275∞1730251915∞6195024∞6228710∞r(1)=25∞01562r(2)=50∞122520r(3)=11814∞50r(4)=634421∞0r(5)=715103∞第32页,共45页,星期日,2025年,2月5日**计算机算法设计与分析算法设计与分析分支限界法第六章第1页,共45页,星期日,2025年,2月5日计算机算法设计与分析树搜索的一般形式SearchTree(SpaceT){ok=0;L=T.initial;while(!ok||L≠?){a=L.first;if(aisgoal)unfinish=falseelseControl-put-in(L,Sons(a));}三种搜索方法的不同就在于存放待考察的结点的表L的控制方式不同:DFS(回溯法)是栈;WFS是队列;BFS是队列中的元素排序。第2页,共45页,星期日,2025年,2月5日计算机算法设计与分析分支限界法基本思想分支限界法就是最佳优先(包括广度优先)的搜索法。其基本思想是:将要待考察的结点按其优劣排序,优先搜索好结点。于是便有了两个问题:(1)如何知道结点的优劣?(2)在回溯法中,表L中结点的层次分明,因而路径也分明。但是这里排序会打乱表L中结点的层次,那又如何找回解的路径呢?第3页,共45页,星期日,2025年,2月5日计算机算法设计与分析分支限界法基本思想分支限界法就是最佳优先(包括广度优先)的搜索法。其基本思想是:将要待考察的结点按其优劣排序,优先搜索好结点。于是便有了两个要点:(1)需要构造评价结点优劣的评价函数。(2)需要能够重新构造解的路径,也就是搜索的路径。第4页,共45页,星期日,2025年,2月5日计算机算法设计与分析评价函数的构造评价函数要能够提供一个评定候选扩展结点的方法,以便确定哪个结点最有可能在通往目标的最佳路径上。一个评价函数f(d)通常由两个部分构成:⑴从开始结点到d的已有耗损值g(d),和⑵再从d到达目标的期望耗损值h(d)。即:f(d)=g(d)+h(d)。通常g(d)的构造较易,h(d)的构造较难。第5页,共45页,星期日,2025年,2月5日计算机算法设计与分析搜索路径的构造在回溯法中,每次仅考察一条路径,因而只需要构造这一条路径即可:前进时记下相应结点,回溯时删去最末尾结点的记录。这比较容易实现。在分支限界法中,是同时考察若干条路径,那么又该如何构造搜索的路径呢?往前看,前程无数!往回看,来路一条。每个结点只要记住其前驱结点就行了!第6页,共45页,星期日,2025年,2月5日计算机算法设计与分析搜索路径的构造为此,只需要对每一个扩展的结点d,建立三个信息:(1)该结点的名称d;(2)它的评价函数值f(d);(3)指向其前驱的指针p;即表示为[d,f(d),p]。这样一旦找到目标,即可以很方便地逆向构造出该路径。第7页,共45页,星期日,2025年,2月5日计算机算法设计与分析Open表与Closed表搜索中,表L用来保存准备扩展的结点,即下一步的结点。把表L称为Op

文档评论(0)

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

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

1亿VIP精品文档

相关文档