scholarly journals Conflict-Driven Heuristics for Mixed Integer Programming

Author(s):  
Jakob Witzig ◽  
Ambros Gleixner

Two essential ingredients of modern mixed-integer programming solvers are diving heuristics, which simulate a partial depth-first search in a branch-and-bound tree, and conflict analysis, which learns valid constraints from infeasible subproblems. So far, these techniques have mostly been studied independently: primal heuristics for finding high-quality feasible solutions early during the solving process and conflict analysis for fathoming nodes of the search tree and improving the dual bound. In this paper, we pose the question of whether and how the orthogonal goals of proving infeasibility and generating improving solutions can be pursued in a combined manner such that a state-of-the-art solver can benefit. To do so, we integrate both concepts in two different ways. First, we develop a diving heuristic that simultaneously targets the generation of valid conflict constraints from the Farkas dual and the generation of improving solutions. We show that, in the primal, this is equivalent to the optimistic strategy of diving toward the best bound with respect to the objective function. Second, we use information derived from conflict analysis to enhance the search of a diving heuristic akin to classic coefficient diving. In a detailed computational study, both methods are evaluated on the basis of an implementation in the source-open-solver SCIP. The experimental results underline the potential of combining both diving heuristics and conflict analysis. Summary of Contribution. This original article concerns the advancement of exact general-purpose algorithms for solving one of the largest and most prominent problem classes in optimization, mixed-integer linear programs. It demonstrates how methods for conflict analysis that learn from infeasible subproblems can be combined successfully with diving heuristics that aim at finding primal solutions. For two newly designed diving heuristics, this paper features a thoroughly computational study regarding their impact on the overall performance of a state-of-the-art MIP solver.

Author(s):  
Timo Berthold ◽  
Jakob Witzig

The generalization of mixed integer program (MIP) techniques to deal with nonlinear, potentially nonconvex, constraints has been a fruitful direction of research for computational mixed integer nonlinear programs (MINLPs) in the last decade. In this paper, we follow that path in order to extend another essential subroutine of modern MIP solvers toward the case of nonlinear optimization: the analysis of infeasible subproblems for learning additional valid constraints. To this end, we derive two different strategies, geared toward two different solution approaches. These are using local dual proofs of infeasibility for LP-based branch-and-bound and the creation of nonlinear dual proofs for NLP-based branch-and-bound, respectively. We discuss implementation details of both approaches and present an extensive computational study, showing that both techniques can significantly enhance performance when solving MINLPs to global optimality. Summary of Contribution: This original article concerns the advancement of exact general-purpose algorithms for solving one of the largest and most prominent problem classes in optimization, mixed integer nonlinear programs (MINLPs). It demonstrates how methods for conflict analysis that learn from infeasible subproblems can be transferred to nonlinear optimization. Further, it develops theory for how nonlinear dual infeasibility proofs can be derived from a nonlinear relaxation. This paper features a thoroughly computational study regarding the impact of conflict analysis techniques on the overall performance of a state-of-the-art MINLP solver when solving MINLPs to global optimality.


Author(s):  
Elias B. Khalil ◽  
Bistra Dilkina ◽  
George L. Nemhauser ◽  
Shabbir Ahmed ◽  
Yufen Shao

``Primal heuristics'' are a key contributor to the improved performance of exact branch-and-bound solvers for combinatorial optimization and integer programming. Perhaps the most crucial question concerning primal heuristics is that of at which nodes they should run, to which the typical answer is via hard-coded rules or fixed solver parameters tuned, offline, by trial-and-error. Alternatively, a heuristic should be run when it is most likely to succeed, based on the problem instance's characteristics, the state of the search, etc. In this work, we study the problem of deciding at which node a heuristic should be run, such that the overall (primal) performance of the solver is optimized. To our knowledge, this is the first attempt at formalizing and systematically addressing this problem. Central to our approach is the use of Machine Learning (ML) for predicting whether a heuristic will succeed at a given node. We give a theoretical framework for analyzing this decision-making process in a simplified setting, propose a ML approach for modeling heuristic success likelihood, and design practical rules that leverage the ML models to dynamically decide whether to run a heuristic at each node of the search tree. Experimentally, our approach improves the primal performance of a state-of-the-art Mixed Integer Programming solver by up to 6% on a set of benchmark instances, and by up to 60% on a family of hard Independent Set instances.


2020 ◽  
Vol 32 (2) ◽  
pp. 473-506 ◽  
Author(s):  
Tobias Achterberg ◽  
Robert E. Bixby ◽  
Zonghao Gu ◽  
Edward Rothberg ◽  
Dieter Weninger

Mixed integer programming has become a very powerful tool for modeling and solving real-world planning and scheduling problems, with the breadth of applications appearing to be almost unlimited. A critical component in the solution of these mixed integer programs is a set of routines commonly referred to as presolve. Presolve can be viewed as a collection of preprocessing techniques that reduce the size of and, more importantly, improve the “strength” of the given model formulation, that is, the degree to which the constraints of the formulation accurately describe the underlying polyhedron of integer-feasible solutions. As our computational results will show, presolve is a key factor in the speed with which we can solve mixed integer programs and is often the difference between a model being intractable and solvable, in some cases easily solvable. In this paper we describe the presolve functionality in the Gurobi commercial mixed integer programming code. This includes an overview, or taxonomy of the different methods that are employed, as well as more-detailed descriptions of several of the techniques, with some of them appearing, to our knowledge, for the first time in the literature.


Author(s):  
Gleb Belov ◽  
Samuel Esler ◽  
Dylan Fernando ◽  
Pierre Le Bodic ◽  
George L. Nemhauser

We show how recently-defined abstract models of the Branch-and-Bound algorithm can be used to obtain information on how the nodes are distributed in B&B search trees. This can be directly exploited in the form of probabilities in a sampling algorithm given by Knuth that estimates the size of a search tree. This method reduces the offline estimation error by a factor of two on search trees from Mixed-Integer Programming instances.


2020 ◽  
Vol 8 (3-4) ◽  
pp. 241-261 ◽  
Author(s):  
Gerald Gamrath ◽  
Timo Berthold ◽  
Domenico Salvagnin

Abstract Dual degeneracy, i.e., the presence of multiple optimal bases to a linear programming (LP) problem, heavily affects the solution process of mixed integer programming (MIP) solvers. Different optimal bases lead to different cuts being generated, different branching decisions being taken and different solutions being found by primal heuristics. Nevertheless, only a few methods have been published that either avoid or exploit dual degeneracy. The aim of the present paper is to conduct a thorough computational study on the presence of dual degeneracy for the instances of well-known public MIP instance collections. How many instances are affected by dual degeneracy? How degenerate are the affected models? How does branching affect degeneracy: Does it increase or decrease by fixing variables? Can we identify different types of degenerate MIPs? As a tool to answer these questions, we introduce a new measure for dual degeneracy: the variable–constraint ratio of the optimal face. It provides an estimate for the likelihood that a basic variable can be pivoted out of the basis. Furthermore, we study how the so-called cloud intervals—the projections of the optimal face of the LP relaxations onto the individual variables—evolve during tree search and the implications for reducing the set of branching candidates.


2015 ◽  
Vol 25 (3) ◽  
pp. 343-360 ◽  
Author(s):  
Saïd Hanafi ◽  
Jasmina Lazic ◽  
Nenad Mladenovic ◽  
Christophe Wilbaut ◽  
Igor Crévits

In recent years many so-called matheuristics have been proposed for solving Mixed Integer Programming (MIP) problems. Though most of them are very efficient, they do not all theoretically converge to an optimal solution. In this paper we suggest two matheuristics, based on the variable neighbourhood decomposition search (VNDS), and we prove their convergence. Our approach is computationally competitive with the current state-of-the-art heuristics, and on a standard benchmark of 59 0-1 MIP instances, our best heuristic achieves similar solution quality to that of a recently published VNDS heuristic for 0-1 MIPs within a shorter execution time.


Sign in / Sign up

Export Citation Format

Share Document