您的位置:首页 > 其它

算法知识点整理——第6章 分支限界法

2017-02-15 16:06 267 查看
第 6 章 分支限界法

1.分支限界 VS 回溯
回溯:求出满足问题的所有解,深度优先
分支限界:求出满足问题的一个解(或者是找出问题中的一个最优解),广度优先

都要先定义解空间结构
 
两者对当前扩展节点所采取的扩展方式不同。

2.分支限界法常见方式
队列式分支限界法(FIFO)
优先队列式分支限界法(可以理解为OS中的优先级,一般是代价越低、或者是收益越多)

3.0-1背包
队列式FIFO分支限界法
就是数构中的广度优先算法
优先队列式分支限界法
用一个极大堆来存储结果(也就是价值越多且重量不超过的放在最上面,可以被优先扩展)

4.TSP问题
队列式FIFO分支限界法
依次拓展,当求出一个解后,其他分支中的当前结果都比这个大时,就忽略(其实复杂度是一样的)
优先队列分支限界法:
优先拓展当前费用最小的路径(用一个极小堆存储)

5.单源最短路径
求一个地点到另外一个地点的最短路径
优先队列式分支限界法
将可行解放入到一个极小堆中,优先拓展当前路径最小的节点(可以提前剪枝)

6.装载问题
两艘船装n个集装箱
方法:先一艘船装尽可能多的集装箱,然后判断剩下的集装箱第二艘船能否装下

子集树

队列式FIFO分支限界法
遍历所有的节点,然后求出最大的解
改进:提前剪枝,当前装载+剩余 与 当前最优解进行比较判断
优先队列式分治限界法
不懂?????!!!

7.布线问题
往距离缩短的方向拓展

8.八码难题
方法一:不在位最少优先扩展
方法二:优先拓展需要移动步数少的(差的绝对值最小)

9.分配问题
先分配,从未分配中的挑最好的作为优先函数
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  算法 分支限界法