- 1、本文档共84页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
算法设计教程05.ppt
第5章 回溯法 引入问题 回溯是重要的算法之一 ?要求找到一组解,或要求找到一个满足某些限制的最优解。 -通过彻底的搜索方法来解决。 *彻底的搜索,需要进行大量的比较、舍弃、运算时间为代价。因此,用穷举法解某些实际问题是不现实的. *彻底搜索的运算量很大,有时大到计算机承受不了的程度。 -使用回溯法可以大大减少实际的搜索。例如,迷宫问题,八皇后问题,骑士周游世界问题。 引入问题 关键:找到回溯的条件。 算法思想: ????? 通过对问题的分析,找出一个解决问题的线索,然后沿着这个线索往前试探,若试探成功,就得到解,若试探失败,就逐步往回退,换别的路线再往前试探。 实际上是广度与深度搜索结合的搜索,深度搜索过程中碰到条件不满足,则退回上一层,在每一层上也进行全面的搜索。 5.1 回溯法的基本思想 回溯法是带优化的穷举法。 回溯法的基本思想:在一棵含有问题全部可能解的状态空间树上进行深度优先搜索,解为叶子结点。 在回溯法中,并不是先构造出整棵状态空间树,再进行搜索,而是在搜索过程中逐步构造出状态空间树,即边搜索,边构造。 回溯法在包含问题的所有解的解空间树中,按照深度优先的策略,从根结点出发搜索解空间树。 算法搜索至解空间树的任一结点时,总是先判断该结点是否肯定不包含问题的解。 (1)如果肯定不包含,则跳过对以该结点为根的子树的系统搜索,逐层向其祖先结点回溯。 (2)否则,进入该子树,继续按深度优先的策略进行搜索。 回溯法在用来求问题的所有解时,要回溯到根,且根结点的所有子树都已被搜索遍才结束。 回溯法在用来求问题的任一解时,只要搜索到问题的一个解就可以结束。 扩展结点:一个正在产生儿子的结点称为扩展结点 活结点:一个自身已生成但其儿子还没有全部生成的节点称做活结点 死结点:一个所有儿子已经产生的结点称做死结点 从开始结点(根结点)出发,以深度优先的方式搜索整个解空间。这个开始结点-活结点,同时也成为当前的扩展结点。 在当前的扩展结点处,搜索向纵深方向移至一个新结点。这个新结点就成为一个新的活结点,并成为当前扩展结点。 如果在当前的扩展结点处不能再向纵深方向移动,则当前扩展结点就成为死结点。此时,应往回移动(回溯)至最近的一个活结点处,并使这个活结点成为当前的扩展结点。 回溯法即以这种工作方式递归地在解空间中搜索,直至找到所要求的解或解空间中已没有活结点时为止。 回溯法为了避免生成那些不可能产生最佳解的问题状态,要不断地利用限界函数(bounding function)来处死那些实际上不可能产生所需解的活结点,以减少问题的计算量。 具有限界函数的深度优先生成法称为回溯法。 示例1 0-1背包问题n=3, C=30, w={16, 15, 15}, v={45, 25, 25} 示例1 0-1背包问题(学生自己看) 开始时,Cr=C=30,V=0,A为唯一活结点,也是当前扩展结点 扩展A,先到达B结点 Cr=Cr-w1=14,V=V+v1=45;此时A、B为活结点,B成为当前扩展结点;扩展B,先到达C Crw2,C导致一个不可行解,回溯到B 再扩展B到达D D可行,此时A、B、D是活结点,D成为新的扩展结点;扩展D,先到达E Crw3,E导致一个不可行解,回溯到D 再次扩展D到达F;由于F是叶结点,即得到一个可行解x=(1,0,0),V=45 F不可扩展,成为死结点,返回到D D没有可扩展结点,成为死结点,返回到B B没有可扩展结点,成为死结点,返回到A A再次成为扩展结点,扩展A到达G Cr=30,V=0,活结点为A、G,G为当前扩展结点 扩展G,先到达H Cr=Cr-w2=15,V=V+v2=25,此时活结点为A、G、H,H成为当前扩展结点 扩展H,先到达I Cr=Cr-w3=0,V=V+v3=50 I是叶结点,且5045,皆得到一个可行解x=(0,1,1),V=50 I不可扩展,成为死结点,返回到H 再扩展H到达J J是叶结点,且2550,不是最优解 J不可扩展,成为死结点,返回到H H没有可扩展结点,成为死结点,返回到G 再扩展G到达L Cr=30,V=0,活结点为A、G、L,L为当前扩展结点 扩展L,先到达M,M是叶结点,且2550,不是最优解,又M不可扩展,返回到L 再扩展L到达N,N是叶结点,且050,不是最优解,又N不可扩展,返回到L L没有可扩展结点,成为死结点,返回到G G没有可扩展结点,成为死结点,返回到A A没有可扩展结点,成为死结点,算法结束,最优解X=(0,1,1),最优值V=50 示例2 旅行售货员问题 问题描述:某售货员要到若干(n)城市去推销商品,已知各城市之间的路程,要选定一条从驻地出发,经过每个城市一遍,最后回到住地的路线,使总的路程最短
您可能关注的文档
- 第十一课时 基本功综合训练.doc
- 第十三章广播新闻评论 写作教程.ppt
- 第十二章 行政合同.ppt
- 第十八章沟通(新).ppt
- 第十章 数字系统设计.doc
- 第十章 LINGO软件使用简介及技巧.ppt
- 第十章 腹膜.pdf
- 第十章 输出与打印.ppt
- 第十节 引导线动画(一).doc
- 第十课 我们来跳舞教案.doc
- 2025年网络文学平台版权运营模式创新与版权保护体系构建.docx
- 数字藏品市场运营策略洞察:2025年市场风险与应对策略分析.docx
- 全球新能源汽车产业政策法规与市场前景白皮书.docx
- 工业互联网平台安全标准制定:安全防护与合规性监管策略.docx
- 剧本杀剧本创作审核标准2025年优化与行业自律.docx
- 2025年新能源电动巡逻车在城市安防中的应用对城市环境的影响分析.docx
- 全渠道零售案例精选:2025年行业创新实践报告.docx
- 2025年网约车司乘纠纷处理机制优化与行业可持续发展报告.docx
- 2025年宠物烘焙食品市场法规政策解读:合规经营与风险规避.docx
- 2025年宠物行业数据安全监管政策影响分析报告.docx
文档评论(0)