Conflict analysis in mixed integer programming

Abstract Conflict analysis for infeasible subproblems is one of the key ingredients in modern SAT solvers. In contrast, it is common practice for today’s mixed integer programming solvers to discard infeasible subproblems and the information they reveal. In this paper, we try to remedy this situation by generalizing SAT infeasibility analysis to mixed integer programming. We present heuristics for branch-and-cut solvers to generate valid inequalities from the current infeasible subproblem and the associated branching information. SAT techniques can then be used to strengthen the resulting constraints. Extensive computational experiments show the potential of our method. Conflict analysis greatly improves the performance on particular models, while it does not interfere with the solving process on the other instances. In total, the number of required branching nodes on general MIP instances was reduced by 18% in the geometric mean, and the solving time was reduced by 11%. On infeasible MIPs arising in the context of chip verification and on a model for a particular combinatorial game, the number of nodes was reduced by 80%, thereby reducing the solving time by 50%.

[1]  Wolfgang Kunz,et al.  SAT and ATPG: Boolean engines for formal hardware verification , 2002, ICCAD 2002.

[2]  Martin W. P. Savelsbergh,et al.  Conflict Graphs in Integer Programming , 1998 .

[3]  Robert L. Graves,et al.  Technical Note - Strengthened Dantzig Cuts for Integer Programming , 1972, Oper. Res..

[4]  Leslie E. Trotter,et al.  On the maximum feasible subsystem problem, IISs and IIS-hypergraphs , 2003, Math. Program..

[5]  Claude Le Pape,et al.  Exploring relaxation induced neighborhoods to improve MIP solutions , 2005, Math. Program..

[6]  Gerald J. Sussman,et al.  Forward Reasoning and Dependency-Directed Backtracking in a System for Computer-Aided Circuit Analysis , 1976, Artif. Intell..

[7]  George L. Nemhauser,et al.  A finiteness proof for modified dantzig cuts in integer programming , 1970 .

[8]  Eugene Goldberg,et al.  BerkMin: A Fast and Robust Sat-Solver , 2002 .

[9]  J. P. Marques,et al.  GRASP : A Search Algorithm for Propositional Satisfiability , 1999 .

[10]  Alexander Shapiro,et al.  On complexity of multistage stochastic programs , 2006, Oper. Res. Lett..

[11]  Martin W. P. Savelsbergh,et al.  Preprocessing and Probing Techniques for Mixed Integer Programming Problems , 1994, INFORMS J. Comput..

[12]  T. Sandholm,et al.  Nogood Learning for Mixed Integer Programming , 2006 .

[13]  Sharad Malik,et al.  Chaff: engineering an efficient SAT solver , 2001, Proceedings of the 38th Design Automation Conference (IEEE Cat. No.01CH37232).

[14]  Matthew L. Ginsberg,et al.  Dynamic Backtracking , 1993, J. Artif. Intell. Res..

[15]  Barry Richards,et al.  Nogood Backmarking with Min-Conflict Repair in Constraint Satisfaction and Optimization , 1994, PPCP.

[16]  Stephen A. Cook,et al.  The complexity of theorem-proving procedures , 1971, STOC.

[17]  Thorsten Koch,et al.  Branching rules revisited , 2005, Oper. Res. Lett..

[18]  David A. McAllester,et al.  A Rearrangement Search Strategy for Determining Propositional Satisfiability , 1988, AAAI.

[19]  Tobias Achterberg,et al.  SCIP - a framework to integrate Constraint and Mixed Integer Programming , 2004 .

[20]  Thorsten Koch,et al.  Konrad-zuse-zentrum F ¨ Ur Informationstechnik Berlin Miplib 2003 , 2022 .

[21]  Martin W. P. Savelsbergh,et al.  Conflict graphs in solving integer programming problems , 2000, Eur. J. Oper. Res..

[22]  Donald W. Loveland,et al.  A machine program for theorem-proving , 2011, CACM.

[23]  Marc E. Pfetsch,et al.  The maximum feasible subsystem problem and vertex-facet incidences of polyhedra , 2003 .

[24]  Sharad Malik,et al.  Efficient conflict driven learning in a Boolean satisfiability solver , 2001, IEEE/ACM International Conference on Computer Aided Design. ICCAD 2001. IEEE/ACM Digest of Technical Papers (Cat. No.01CH37281).

[25]  Roberto J. Bayardo,et al.  Using CSP Look-Back Techniques to Solve Real-World SAT Instances , 1997, AAAI/IAAI.

[26]  Hilary Putnam,et al.  A Computing Procedure for Quantification Theory , 1960, JACM.

[27]  Alexander Martin Integer Programs with Block Structure , 1999 .

[28]  Rolf Drechsler,et al.  RTL-datapath verification using integer linear programming , 2002, Proceedings of ASP-DAC/VLSI Design 2002. 7th Asia and South Pacific Design Automation Conference and 15h International Conference on VLSI Design.