节点文献
立体堆与分枝界限算法
Cubeheap and Branch and Bound Algorithms
【摘要】 分枝界限算法是解决组合优化问题的常用方法之一 .对于给定的问题和分枝策略 ,算法的运行时间取决于实现算法的数据结构 .该文讨论了立体堆及其上的插入、删除算法 ;通过将分枝界限算法的运作过程与排序过程建立对应关系 ,给出了一般分枝界限算法的复杂度下界Ω ( m+hlogh) ,其中 m为评估的结点数 ,h为扩展的结点数 ;得出了立体堆为实现一般分枝界限算法的几乎最优数据结构 ;并对具体的作业分派问题实现了一个使用立体堆的分枝界限算法 ;提出了改善立体堆平衡性的措施
【Abstract】 Branch and Bound (B&B) algorithm is one of the fundamental methods for combinatorial optimization problems. The running time is dominated by the data structure used to implement B&B algorithm for the given problem and the related branching strategy. In this paper, the data structure called Cubeheap and the related algorithms (INSERT and DELETE) are discussed. The lower bound Ω(m+h log h ) of the running time for general B&B algorithm is proposed by constructing the mapping between the B&B procedure and the sorting procedure, where m is the number of the evaluated nodes and h is the number of the expanded nodes. According to the lower bound, Cubeheap is the near optimal data structure to implement the general B&B algorithm. The experimental results for a concrete combinatorial optimization problem, Job assignment, are obtained by running the B&B algorithm with the Cubeheap. The method to improve the balance of the Cubeheap is also proposed.
【Key words】 Branch and Bound; combinatorial search; algorithm; computational complexity.;
- 【文献出处】 软件学报 ,JOURNAL OF SOFTWARE , 编辑部邮箱 ,2000年07期
- 【分类号】TP301
- 【被引频次】2
- 【下载频次】100