The branch-and-bound algorithm based on decision diagrams introduced by Bergman et al. in 2016 is a framework for solving discrete optimization problems with a dynamic programming formulation. It works by compiling a series of bounded-width decision diagrams that can provide lower and upper bounds for any given subproblem. Eventually, every part of the search space will be either explored or pruned by the algorithm, thus proving optimality. This paper presents new ingredients to speed up the search by exploiting the structure of dynamic programming models. The key idea is to prevent the repeated expansion of nodes corresponding to the same dynamic programming states by querying expansion thresholds cached throughout the search. These thresholds are based on dominance relations between partial solutions previously found and on the pruning inequalities of the filtering techniques introduced by Gillard et al. in 2021. Computational experiments show that the pruning brought by this caching mechanism allows significantly reducing the number of nodes expanded by the algorithm. This results in more benchmark instances of difficult optimization problems being solved in less time while using narrower decision diagrams.
翻译:Bergman等人于2016年提出的基于决策图的分支定界算法,是一个通过动态规划公式求解离散优化问题的框架。该算法通过编译一系列有界宽度的决策图,为任意给定子问题提供上下界。最终,搜索空间的每一部分要么被算法探索,要么被剪枝,从而证明最优性。本文提出利用动态规划模型结构加速搜索的新方法。核心思想是通过查询搜索过程中缓存的扩展阈值,避免对相同动态规划状态对应的节点进行重复扩展。这些阈值基于先前发现的局部解之间的支配关系,以及Gillard等人2021年引入的过滤技术中的剪枝不等式。计算实验表明,该缓存机制带来的剪枝效果可显著减少算法扩展的节点数量。这使得更多困难优化问题的基准实例能在更短时间内、使用更窄的决策图得到求解。