53 research outputs found
Safe and Verified Gomory Mixed Integer Cuts in a Rational MIP Framework
This paper is concerned with the exact solution of mixed-integer programs
(MIPs) over the rational numbers, i.e., without any roundoff errors and error
tolerances. Here, one computational bottleneck that should be avoided whenever
possible is to employ large-scale symbolic computations. Instead it is often
possible to use safe directed rounding methods, e.g., to generate provably
correct dual bounds. In this work, we continue to leverage this paradigm and
extend an exact branch-and-bound framework by separation routines for safe
cutting planes, based on the approach first introduced by Cook, Dash, Fukasawa,
and Goycoolea in 2009. Constraints are aggregated safely using approximate dual
multipliers from an LP solve, followed by mixed-integer rounding to generate
provably valid, although slightly weaker inequalities. We generalize this
approach to problem data that is not representable in floating-point
arithmetic, add routines for controlling the encoding length of the resulting
cutting planes, and show how these cutting planes can be verified according to
the VIPR certificate standard. Furthermore, we analyze the performance impact
of these cutting planes in the context of an exact MIP framework, showing that
we can solve 21.5% more instances and reduce solving times by 26.8% on the
MIPLIB 2017 benchmark test set
An Algorithm-Independent Measure of Progress for Linear Constraint Propagation
Propagation of linear constraints has become a crucial sub-routine in modern Mixed-Integer Programming (MIP) solvers. In practice, iterative algorithms with tolerance-based stopping criteria are used to avoid problems with slow or infinite convergence. However, these heuristic stopping criteria can pose difficulties for fairly comparing the efficiency of different implementations of iterative propagation algorithms in a real-world setting. Most significantly, the presence of unbounded variable domains in the problem formulation makes it difficult to quantify the relative size of reductions performed on them. In this work, we develop a method to measure - independently of the algorithmic design - the progress that a given iterative propagation procedure has made at a given point in time during its execution. Our measure makes it possible to study and better compare the behavior of bounds propagation algorithms for linear constraints. We apply the new measure to answer two questions of practical relevance: (i) We investigate to what extent heuristic stopping criteria can lead to premature termination on real-world MIP instances. (ii) We compare a GPU-parallel propagation algorithm against a sequential state-of-the-art implementation and show that the parallel version is even more competitive in a real-world setting than originally reported
PaPILO: A Parallel Presolving Library for Integer and Linear Programming with Multiprecision Support
Presolving has become an essential component of modern MIP solvers both in
terms of computational performance and numerical robustness. In this paper, we
present PaPILO, a new C++ header-only library that provides a large set of
presolving routines for MIP and LP problems from the literature. The creation
of PaPILO was motivated by the current lack of (a) solver-independent
implementations that (b) exploit parallel hardware, and (c) support
multiprecision arithmetic. Traditionally, presolving is designed to be fast.
Whenever necessary, its low computational overhead is usually achieved by
strict working limits. PaPILO's parallelization framework aims at reducing the
computational overhead also when presolving is executed more aggressively or is
applied to large-scale problems. To rule out conflicts between parallel
presolve reductions, PaPILO uses a transaction-based design. This helps to
avoid both the memory-intensive allocation of multiple copies of the problem
and special synchronization between presolvers. Additionally, the use of
Intel's TBB library aids PaPILO to efficiently exploit recursive parallelism
within expensive presolving routines such as probing, dominated columns, or
constraint sparsification. We provide an overview of PaPILO's capabilities and
insights into important design choices
- …