Experiments with Conflict Analysis in Mixed Integer Programming

Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 10335)

Abstract

The analysis of infeasible subproblems plays an important 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.

Notes

Acknowledgments

The work for this article has been conducted within the Research Campus Modal funded by the German Federal Ministry of Education and Research (fund number 05M14ZAM). We thank the anonymous reviewers for their valuable suggestions and helpful comments.

References

  1. 1.
    Achterberg, T.: Conflict analysis in mixed integer programming. Discrete Optim. 4(1), 4–20 (2007)MathSciNetCrossRefMATHGoogle Scholar
  2. 2.
    Achterberg, T.: Constraint integer programming (2007)Google Scholar
  3. 3.
    Achterberg, T., Berthold, T.: Hybrid branching. In: Hoeve, W.-J., Hooker, J.N. (eds.) CPAIOR 2009. LNCS, vol. 5547, pp. 309–311. Springer, Heidelberg (2009). doi:10.1007/978-3-642-01929-6_23 CrossRefGoogle Scholar
  4. 4.
    Achterberg, T., Koch, T., Martin, A.: MIPLIB 2003. Oper. Res. Lett. 34(4), 361–372 (2006)MathSciNetCrossRefMATHGoogle Scholar
  5. 5.
    Bénichou, M., Gauthier, J.-M., Girodet, P., Hentges, G., Ribière, G., Vincent, O.: Experiments in mixed-integer linear programming. Math. Program. 1(1), 76–94 (1971)MathSciNetCrossRefMATHGoogle Scholar
  6. 6.
    Berthold, T., Gleixner, A.M.: Undercover: a primal MINLP heuristic exploring a largest sub-MIP. Math. Program. 144(1–2), 315–346 (2014)MathSciNetCrossRefMATHGoogle Scholar
  7. 7.
    Berthold, T., Hendel, G.: Shift-and-propagate. J. Heuristics 21(1), 73–106 (2015)CrossRefMATHGoogle Scholar
  8. 8.
    Bixby, R.E., Boyd, E.A., Indovina, R.R.: MIPLIB: a test set of mixed integer programming problems. SIAM News 25, 16 (1992)Google Scholar
  9. 9.
    Brearley, A., Mitra, G., Williams, H.: Analysis of mathematical programming problems prior to applying the simplex algorithm. Math. Program. 8, 54–83 (1975)MathSciNetCrossRefMATHGoogle Scholar
  10. 10.
    Cornuéjols, G., Dawande, M.: A class of hard small 0-1 programs. In: Bixby, R.E., Boyd, E.A., Ríos-Mercado, R.Z. (eds.) IPCO 1998. LNCS, vol. 1412, pp. 284–293. Springer, Heidelberg (1998). doi:10.1007/3-540-69346-7_22 CrossRefGoogle Scholar
  11. 11.
    Dakin, R.J.: A tree-search algorithm for mixed integer programming problems. Comput. J. 8(3), 250–255 (1965)MathSciNetCrossRefMATHGoogle Scholar
  12. 12.
    Davey, B., Boland, N., Stuckey, P.J.: Efficient intelligent backtracking using linear programming. INFORMS J. Comput. 14(4), 373–386 (2002)MathSciNetCrossRefMATHGoogle Scholar
  13. 13.
    Gamrath, G., Fischer, T., Gally, T., Gleixner, A.M., Hendel, G., Koch, T., Maher, S.J., Miltenberger, M., Müller, B., Pfetsch, M.E., Puchert, C., Rehfeldt, D., Schenker, S., Schwarz, R., Serrano, F., Shinano, Y., Vigerske, S., Weninger, D., Winkler, M., Witt, J.T., Witzig, J.: The SCIP optimization suite 3.2. Technical Report 15–60, ZIB, Takustr. 7, 14195 Berlin (2016)Google Scholar
  14. 14.
    Ginsberg, M.L.: Dynamic backtracking. J. Artif. Intell. Res. 1, 25–46 (1993)MATHGoogle Scholar
  15. 15.
    Jiang, Y., Richards, T., Richards, B.: No-good backmarking with min-conflict repair in constraint satisfaction and optimization. In: PPCP, vol. 94, pp. 2–4. Citeseer (1994)Google Scholar
  16. 16.
    Kılınç Karzan, F., Nemhauser, G.L., Savelsbergh, M.W.P.: Information-based branching schemes for binary linear mixed-integer programs. Math. Program. Comput. 1(4), 249–293 (2009)MathSciNetCrossRefMATHGoogle Scholar
  17. 17.
    Koch, T., Achterberg, T., Andersen, E., Bastert, O., Berthold, T., Bixby, R.E., Danna, E., Gamrath, G., Gleixner, A.M., Heinz, S., Lodi, A., Mittelmann, H., Ralphs, T., Salvagnin, D., Steffy, D.E., Wolter, K.: MIPLIB 2010. Math. Program. Comput. 3(2), 103–163 (2011)MathSciNetCrossRefGoogle Scholar
  18. 18.
    Land, A.H., Doig, A.G.: An automatic method of solving discrete programming problems. Econometrica 28(3), 497–520 (1960)MathSciNetCrossRefMATHGoogle Scholar
  19. 19.
    Linderoth, J.T., Ralphs, T.K.: Noncommercial software for mixed-integer linear programming. Integer Program.: Theor. Pract. 3, 253–303 (2005)MATHGoogle Scholar
  20. 20.
    Linderoth, J.T., Savelsbergh, M.W.: A computational study of search strategies for mixed integer programming. INFORMS J. Comput. 11(2), 173–187 (1999)MathSciNetCrossRefMATHGoogle Scholar
  21. 21.
    Marques-Silva, J.P., Sakallah, K.: Grasp: a search algorithm for propositional satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)MathSciNetCrossRefGoogle Scholar
  22. 22.
    Pólik, I.: (Re)using dual information in MILP. In: INFORMS Computing Society Conference, Richmond, VA (2015)Google Scholar
  23. 23.
    Pólik, I.: Some more ways to use dual information in MILP. In: International Symposium on Mathematical Programming, Pittsburgh, PA (2015)Google Scholar
  24. 24.
    Sandholm, T., Shields, R.: Nogood learning for mixed integer programming. In: Workshop on Hybrid Methods and Branching Rules in Combinatorial Optimization, Montréal (2006)Google Scholar
  25. 25.
    Stallman, R.M., Sussman, G.J.: Forward reasoning and dependency-directed backtracking in a system for computer-aided circuit analysis. Artif. Intell. 9(2), 135–196 (1977)CrossRefMATHGoogle Scholar
  26. 26.
    Witzig, J., Berthold, T., Heinz, S.: Experiments with conflict analysis in mixed integer programming. Technical report 16–63, ZIB, Takustr. 7, 14195 Berlin (2016)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  1. 1.Zuse Institute BerlinBerlinGermany
  2. 2.Fair Isaac Germany GmbHBerlinGermany

Personalised recommendations