16 research outputs found
Enumerative Branching with Less Repetition
We can compactly represent large sets of solutions for problems with discrete decision variables by using decision diagrams. With them, we can efficiently identify optimal solutions for different objective functions. In fact, a decision diagram naturally arises from the branch-and-bound tree that we could use to enumerate these solutions if we merge nodes from which the same solutions are obtained on the remaining variables. However, we would like to avoid the repetitive work of finding the same solutions from branching on different nodes at the same level of that tree. Instead, we would like to explore just one of these equivalent nodes and then infer that the same solutions would have been found if we explored other nodes. In this work, we show how to identify such equivalencesâand thus directly construct a reduced decision diagramâin integer programs where the left-hand sides of all constraints consist of additively separable functions. First, we extend an existing result regarding problems with a single linear constraint and integer coefficients. Second, we show necessary conditions with which we can isolate a single explored node as the only candidate to be equivalent to each unexplored node in problems with multiple constraints. Third, we present a sufficient condition that confirms if such a pair of nodes is indeed equivalent, and we demonstrate how to induce that condition through preprocessing. Finally, we report computational results on integer linear programming problems from the MIPLIB benchmark. Our approach often constructs smaller decision diagrams faster and with less branching
ADDMC: Weighted Model Counting with Algebraic Decision Diagrams
We present an algorithm to compute exact literal-weighted model counts of
Boolean formulas in Conjunctive Normal Form. Our algorithm employs dynamic
programming and uses Algebraic Decision Diagrams as the primary data structure.
We implement this technique in ADDMC, a new model counter. We empirically
evaluate various heuristics that can be used with ADDMC. We then compare ADDMC
to state-of-the-art exact weighted model counters (Cachet, c2d, d4, and
miniC2D) on 1914 standard model counting benchmarks and show that ADDMC
significantly improves the virtual best solver.Comment: Presented at AAAI 202
Technical Communications of ICLP
Abstract Dynamic programming (DP) on tree decompositions is a well studied approach for solving hard problems efficiently. State-of-the-art implementations usually rely on tables for storing information, and algorithms specify how the tuples are manipulated during traversal of the decomposition. However, a major bottleneck of such table-based algorithms is relatively high memory consumption. The goal of the doctoral thesis herein discussed is to mitigate performance and memory shortcomings of such algorithms. The idea is to replace tables with an efficient data structure that no longer requires to enumerate intermediate results explicitly during the computation. To this end, Binary Decision Diagrams (BDDs) and related concepts are studied with respect to their applicability in this setting. Besides native support for efficient storage, from a conceptual point of view BDDs give rise to an alternative approach of how DP algorithms are specified. Instead of tuple-based manipulation operations, the algorithms are specified on a logical level, where sets of models can be conjointly updated. The goal of the thesis is to provide a general tool-set for problems that can be solved efficiently via DP on tree decompositions
A Branch-and-Price Algorithm Enhanced by Decision Diagrams for the Kidney Exchange Problem
Kidney paired donation programs allow patients registered with an
incompatible donor to receive a suitable kidney from another donor, as long as
the latter's co-registered patient, if any, also receives a kidney from a
different donor. The kidney exchange problem (KEP) aims to find an optimal
collection of kidney exchanges taking the form of cycles and chains. Existing
exact solution methods for KEP either are designed for the case where only
cyclic exchanges are considered, or can handle long chains but are scalable as
long as cycles are short. We develop the first decomposition method that is
able to deal with long cycles and long chains for large realistic instances.
More specifically, we propose a branch-and-price framework, in which the
pricing problems are solved (for the first time in packing problems in a
digraph) through multi-valued decision diagrams. Also, we present a new upper
bound on the optimal value of KEP, stronger than the one proposed in the
literature, which is obtained via our master problem. Computational experiments
show superior performance of our method over the state of the art by optimally
solving almost all instances in the PrefLib library for multiple cycle and
chain lengths
Decision Diagram-Based Branch-and-Bound with Caching for Dominance and Suboptimality Detection
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.Comment: Accepted to INFORMS Journal on Computin
Arc flow formulations based on dynamic programming: Theoretical foundations and applications
Network flow formulations are among the most successful tools to solve optimization problems. Such formulations correspond to determining an optimal flow in a network. One particular class of network flow formulations is the arc flow, where variables represent flows on individual arcs of the network. For NP-hard problems, polynomial-sized arc flow models typically provide weak linear relaxations and may have too much symmetry to be efficient in practice. Instead, arc flow models with a pseudo-polynomial size usually provide strong relaxations and are efficient in practice. The interest in pseudo-polynomial arc flow formulations has grown considerably in the last twenty years, in which they have been used to solve many open instances of hard problems. A remarkable advantage of pseudo-polynomial arc flow models is the possibility to solve practical-sized instances directly by a Mixed Integer Linear Programming solver, avoiding the implementation of complex methods based on column generation. In this survey, we present theoretical foundations of pseudo-polynomial arc flow formulations, by showing a relation between their network and Dynamic Programming (DP). This relation allows a better understanding of the strength of these formulations, through a link with models obtained by Dantzig-Wolfe decomposition. The relation with DP also allows a new perspective to relate state-space relaxation methods for DP with arc flow models. We also present a dual point of view to contrast the linear relaxation of arc flow models with that of models based on paths and cycles. To conclude, we review the main solution methods and applications of arc flow models based on DP in several domains such as cutting, packing, scheduling, and routing
Improved Peel-and-Bound: Methods for Generating Dual Bounds with Multivalued Decision Diagrams
Decision diagrams are an increasingly important tool in cutting-edge solvers
for discrete optimization. However, the field of decision diagrams is
relatively new, and is still incorporating the library of techniques that
conventional solvers have had decades to build. We drew inspiration from the
warm-start technique used in conventional solvers to address one of the major
challenges faced by decision diagram based methods. Decision diagrams become
more useful the wider they are allowed to be, but also become more costly to
generate, especially with large numbers of variables. In the original version
of this paper, we presented a method of peeling off a sub-graph of previously
constructed diagrams and using it as the initial diagram for subsequent
iterations that we call peel-and-bound. We tested the method on the sequence
ordering problem, and our results indicate that our peel-and-bound scheme
generates stronger bounds than a branch-and-bound scheme using the same
propagators, and at significantly less computational cost. In this extended
version of the paper, we also propose new methods for using relaxed decision
diagrams to improve the solutions found using restricted decision diagrams,
discuss the heuristic decisions involved with the parallelization of
peel-and-bound, and discuss how peel-and-bound can be hyper-optimized for
sequencing problems. Furthermore, we test the new methods on the sequence
ordering problem and the traveling salesman problem with time-windows (TSPTW),
and include an updated and generalized implementation of the algorithm capable
of handling any discrete optimization problem. The new results show that
peel-and-bound outperforms ddo (a decision diagram based branch-and-bound
solver) on the TSPTW. We also close 15 open benchmark instances of the TSPTW.Comment: 50 pages, 31 figures, published by JAIR, supplementary materials at
https://github.com/IsaacRudich/ImprovedPnB. arXiv admin note: substantial
text overlap with arXiv:2205.0521