The SCIP Optimization Suite provides a collection of software packages for mathematical optimization centered around the constraint integer programming framework SCIP . The focus of this paper is on the role of the SCIP Optimization Suite in supporting research. SCIP ’s main design principles are discussed, followed by a presentation of the latest performance improvements and developments in version 8.0, which serve both as examples of SCIP ’s application as a research tool and as a platform for further developments. Further, the paper gives an overview of interfaces to other programming and modeling languages, new features that expand the possibilities for user interaction with the framework, and the latest developments in several extensions built upon SCIP .
The SCIP Optimization Suite provides a collection of software packages for mathematical optimization centered around the constraint integer programming framework SCIP. This paper discusses enhancements and extensions contained in version 8.0 of the SCIP Optimization Suite. Major updates in SCIP include improvements in symmetry handling and decomposition algorithms, new cutting planes, a new plugin type for cut selection, and a complete rework of the way nonlinear constraints are handled. Additionally, SCIP 8.0 now supports interfaces for Julia as well as Matlab. Further, UG now includes a unified framework to parallelize all solvers, a utility to analyze computational experiments has been added to GCG, dual solutions can be postsolved by PaPILO, new heuristics and presolving methods were added to SCIP-SDP, and additional problem classes and major performance improvements are available in SCIP-Jack. Keywords Constraint integer programming • linear programming • mixed-integer linear programming • mixed-integer nonlinear programming • optimization solver • branch-andcut • branch-and-price • column generation • parallelization • mixed-integer semidefinite programming Mathematics Subject Classification 90C05 • 90C10 • 90C11 • 90C30 • 90C90 • 65Y05 * Extended author information is available at the end of the paper.
The analysis of infeasible subproblems plays an import role in solving mixed integer programs (MIPs) and is implemented in most major MIP solvers. There are two fundamentally different concepts to generate valid global constraints from infeasible subproblems. The first is to analyze the sequence of implications obtained by domain propagation that led to infeasibility. The result of the analysis is one or more sets of contradicting variable bounds from which so-called conflict constraints can be generated. This concept has its origin in solving satisfiability problems and is similarly used in constraint programming. The second concept is to analyze infeasible linear programming (LP) relaxations. The dual LP solution provides a set of multipliers that can be used to generate a single new globally valid linear constraint. The main contribution of this short paper is an empirical evaluation of two ways to combine both approaches. Experiments are carried out on general MIP instances from standard public test sets such as Miplib2010; the presented algorithms have been implemented within the non-commercial MIP solver SCIP. Moreover, we present a pool-based approach to manage conflicts which addresses the way a MIP solver traverses the search tree better than aging strategies known from SAT solving.
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.
Conflict learning algorithms are an important component of modern MIP and CP solvers. But strong conflict information is typically gained by depth-first search. While this is the natural mode for CP solving, it is not for MIP solving. Rapid Learning is a hybrid CP/MIP approach where CP search is applied at the root to learn information to support the remaining MIP solve. This has been demonstrated to be beneficial for binary programs. In this paper, we extend the idea of Rapid Learning to integer programs, where not all variables are restricted to the domain {0, 1}, and rather than just running a rapid CP search at the root, we will apply it repeatedly at local search nodes within the MIP search tree. To do so efficiently, we present six heuristic criteria to predict the chance for local Rapid Learning to be successful. Our computational experiments indicate that our extended Rapid Learning algorithm significantly speeds up MIP search and is particularly beneficial on highly dual degenerate problems.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
hi@scite.ai
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.