Abstract
Conflict learning plays an important role in solving mixed integer programs (MIPs) and is implemented in most major MIP solvers. A major step for MIP conflict learning is to aggregate the LP relaxation of an infeasible subproblem to a single globally valid constraint, the dual proof, that proves infeasibility within the local bounds. Among others, one way of learning is to add these constraints to the problem formulation for the remainder of the search.
We suggest to not restrict this procedure to infeasible subproblems, but to also use global proof constraints from subproblems that are not (yet) infeasible, but can be expected to be pruned soon. As a special case, we also consider learning from integer feasible LP solutions. First experiments of this conflict-free learning strategy show promising results on the MIPLIB2017 benchmark set.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
References
Achterberg, T.: Conflict analysis in mixed integer programming. Discrete Optim. 4(1), 4–20 (2007)
Achterberg, T.: Constraint integer programming (2007)
Achterberg, T., Bixby, R.E., Gu, Z., Rothberg, E., Weninger, D.: Presolve reductions in mixed integer programming. INFORMS J. Comput. 32, 473–506 (2019)
Chu, G., Stuckey, P.J.: Nested constraint programs. In: O’Sullivan, B. (ed.) CP 2014. LNCS, vol. 8656, pp. 240–255. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-10428-7_19
Chu, G., Stuckey, P.J.: Goods and nogoods for nested constraint programming (2019)
Conforti, M., Cornuéjols, G., Zambelli, G.: Integer Programming. GTM, vol. 271. Springer, Cham (2014). https://doi.org/10.1007/978-3-319-11008-0
Dakin, R.J.: A tree-search algorithm for mixed integer programming problems. Comput. J. 8(3), 250–255 (1965)
Davey, B., Boland, N., Stuckey, P.J.: Efficient intelligent backtracking using linear programming. INFORMS J. Comput. 14(4), 373–386 (2002)
Farkas, J.: Theorie der einfachen Ungleichungen. J. für die reine und angewandte Mathematik 124, 1–27 (1902)
Ginsberg, M.L.: Dynamic backtracking. J. Artif. Intell. Res. 1, 25–46 (1993)
Giunchiglia, E., Narizzano, M., Tacchella, A.: Backjumping for quantified boolean logic satisfiability. Artif. Intell. 145(1), 99–120 (2003)
Gleixner, A., et al.: The SCIP optimization suite 5.0. Technical report, 17–61, ZIB, Takustr. 7, 14195 Berlin (2017)
Gleixner, A., et al.: MIPLIB 2017: data-driven compilation of the 6th mixed-integer programming library. Technical report, Technical report, Optimization Online (2019)
Jiang, Y., Richards, T., Richards, B.: Nogood backmarking with min-conflict repair in constraint satisfaction and optimization. In: Borning, A. (ed.) PPCP 1994. LNCS, vol. 874, pp. 21–39. Springer, Heidelberg (1994). https://doi.org/10.1007/3-540-58601-6_87
Koch, T., et al.: MIPLIB 2010. Math. Program. Comput. 3(2), 103–163 (2011)
Land, A.H., Doig, A.G.: An automatic method of solving discrete programming problems. Econometrica 28(3), 497–520 (1960)
Lodi, A., Tramontani, A.: Performance variability in mixed-integer programming. In: Theory Driven by Influential Applications, pp. 1–12. INFORMS (2013)
Lubin, M., Yamangil, E., Bent, R., Vielma, J.P.: Extended formulations in mixed-integer convex programming. In: Louveaux, Q., Skutella, M. (eds.) IPCO 2016. LNCS, vol. 9682, pp. 102–113. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-33461-5_9
Maher, S.J., et al.: The SCIP optimization suite 4.0. Technical report 17–12, ZIB, Takustr. 7, 14195 Berlin (2017)
Marques-Silva, J.P., Sakallah, K.: GRASP: a search algorithm for propositional satisfiability. IEEE Trans. Comput. 48(5), 506–521 (1999)
Pólik, I.: Some more ways to use dual information in MILP. In: International Symposium on Mathematical Programming, Pittsburgh, PA (2015)
Prosser, P.: Hybrid algorithms for the constraint satisfaction problem. Comput. Intell. 9(3), 268–299 (1993)
Sandholm, T., Shields, R.: Nogood learning for mixed integer programming. In: Workshop on Hybrid Methods and Branching Rules in Combinatorial Optimization, Montréal (2006)
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)
Witzig, J., Berthold, T., Heinz, S.: Experiments with conflict analysis in mixed integer programming. In: Salvagnin, D., Lombardi, M. (eds.) CPAIOR 2017. LNCS, vol. 10335, pp. 211–220. Springer, Cham (2017). https://doi.org/10.1007/978-3-319-59776-8_17
Witzig, J., Berthold, T., Heinz, S.: Computational aspects of infeasibility analysis in mixed integer programming. Technical report 19–54, ZIB, Takustr. 7, 14195 Berlin (2019)
Witzig, J., Berthold, T., Heinz, S.: A status report on conflict analysis in mixed integer nonlinear programming. In: Rousseau, L.-M., Stergiou, K. (eds.) CPAIOR 2019. LNCS, vol. 11494, pp. 84–94. Springer, Cham (2019). https://doi.org/10.1007/978-3-030-19212-9_6
Zhang, L., Madigan, C.F., Moskewicz, M.H., Malik, S.: Efficient conflict driven learning in a Boolean satisfiability solver. In: Proceedings of the 2001 IEEE/ACM International Conference on Computer-aided Design, pp. 279–285. IEEE Press (2001)
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).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Witzig, J., Berthold, T. (2020). Conflict-Free Learning for Mixed Integer Programming. In: Hebrard, E., Musliu, N. (eds) Integration of Constraint Programming, Artificial Intelligence, and Operations Research. CPAIOR 2020. Lecture Notes in Computer Science(), vol 12296. Springer, Cham. https://doi.org/10.1007/978-3-030-58942-4_34
Download citation
DOI: https://doi.org/10.1007/978-3-030-58942-4_34
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-58941-7
Online ISBN: 978-3-030-58942-4
eBook Packages: Computer ScienceComputer Science (R0)