【算法基础】5.五大算法之分支界限法
参考资料
分支界限法及常见例子https://blog.csdn.net/m0_37741420/article/details/107594452
直观理解
在层序搜索中,先在当前层找到最优节点,然后在该节点向下继续搜索,使搜索朝着解空间上有最优解的分支推进
例子先行
二叉树的层序搜索,广度搜索算法
总结提炼
1基本概念
分支界限法作为一种常见的算法思想,其概念为:分支限界法常以广度优先或以最小耗费(最大效益)优先的方式搜索问题的解空间树。
2基本策略
在分支限界法中,每一个活结点只有一次机会成为扩展结点。活结点一旦成为扩展结点,就一次性产生其所有子结点。
在这些儿子结点中,导致不可行解或导致非最优解的子结点被舍弃,剩下的可行或最优解子结点被加入活结点表中。
3.使用步骤
(1)如果问题的目标为最小化,则设定最优解的值Z=∞
(2)根据分枝法则,从尚未被洞悉节点(局部解)中选择一个节点,并在此节点的下一阶层中分为几个新的节点。
(3)计算每一个新分枝出来的节点的下限值。
(4)对每一节点进行洞悉条件测试,若节点满足以下任意一个条件,则此节点可洞悉而不再被考虑:此节点的下限值大于等于Z值。已找到在此节点中,具最小下限值的可行解;若此条件成立,则需比较此可行解与Z值,若前者较小,则需更新Z值,以此为可行解的值。
(5)判断是否仍有尚未被洞悉的节点,如果有,则进行步骤二,如果已无尚未被洞悉的节点,则演算停止,并得到最优解
拓展方向
实现上较为复杂,暂时搁置
本文作者:啊原来是这样呀
本文链接:https://www.cnblogs.com/OhOfCourse/p/16898651.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步