Abstract
Branch and cut is the dominant paradigm for solving a wide range of mathematical programming problems—linear or nonlinear—combining efficient search (via branch and bound) and relaxation-tightening procedures (via cutting planes, or cuts). While there is a wealth of computational experience behind existing cutting strategies, there is simultaneously a relative lack of theoretical explanations for these choices, and for the tradeoffs involved therein. Recent papers have explored abstract models for branching and for comparing cuts with branch and bound. However, to model practice, it is crucial to understand the impact of jointly considering branching and cutting decisions. In this paper, we provide a framework for analyzing how cuts affect the size of branch-and-cut trees, as well as their impact on solution time. Our abstract model captures some of the key characteristics of real-world phenomena in branch-and-cut experiments, regarding whether to generate cuts only at the root or throughout the tree, how many rounds of cuts to add before starting to branch, and why cuts seem to exhibit nonmonotonic effects on the solution process.
Similar content being viewed by others
Notes
See references and notes in https://oeis.org/A002387 and https://oeis.org/A004080.
References
Achterberg, T., Wunderling, R.: Mixed integer programming: analyzing 12 years of progress. In: Facets of Combinatorial Optimization, pp. 449–481. Springer, Heidelberg (2013)
Al-Khayyal, F.A.: An implicit enumeration procedure for the general linear complementarity problem. In: Computation Mathematical Programming, pp. 1–20. Springer, Heidelberg (1987)
Anderson, D., Le Bodic, P., Morgan, K.: Further results on an abstract model for branching and its application to mixed integer programming. Math. Program. 190, 811–841 (2021)
Balas, E., Fischetti, M., Zanette, A.: On the enumerative nature of Gomory’s dual cutting plane method. Math. Program. 125(2), 325–351 (2010)
Basu, A., Conforti, M., Di Summa, M., Jiang, H.: Complexity of branch-and-bound and cutting planes in mixed-integer optimization—II. Combinatorica 42(1), 971–996 (2022)
Basu, A., Conforti, M., Di Summa, M., Jiang, H.: Complexity of branch-and-bound and cutting planes in mixed-integer optimization. Math. Progam. 198(1), 787–810 (2023)
Berthold, T., Francobaldi, M., Hendel, G.: Learning to use local cuts. arXiv:2206.11618 (2022)
Burer, S., Vandenbussche, D.: A finite branch-and-bound algorithm for nonconvex quadratic programming via semidefinite relaxations. Math. Program. 113(2), 259–282 (2008)
COIN-OR Cut Generation Library. https://github.com/coin-or/Cgl
COIN-OR Linear Programming 1.16. https://projects.coin-or.org/Clp/
Cornuéjols, G., Liberti, L., Nannicini, G.: Improved strategies for branching on general disjunctions. Math. Program. 130(2, Ser. A), 225–247 (2011)
Dey, S.S., Dubey, Y., Molinaro, M., Shah, P.: A theoretical and computational analysis of full strong-branching (2021)
Dey, S.S., Dubey, Y., Molinaro, M.: Branch-and-bound solves random binary packing IPs in polytime. In: Marx, D. (ed.) Proceedings of the 2021 ACM-SIAM Symposium on Discrete Algorithms, SODA 2021, Virtual Conference, January 10–13, 2021, pp. 579–591. SIAM (2021)
Dey, S.S., Kazachkov, A.M., Lodi, A., Munoz, G.: Cutting plane generation through sparse principal component analysis. SIAM J. Optim. 32(2), 1319–1343 (2022)
Dey, S.S., Dubey, Y., Molinaro, M.: Lower bounds on the size of general branch-and-bound trees. Math. Program. (2022)
Gasse, M., Chételat, D., Ferroni, N., Charlin, L., Lodi, A.: Exact combinatorial optimization with graph convolutional neural networks. In: Advances in Neural Information Processing Systems, pp. 15580–15592 (2019)
Gleixner, A., Hendel, G., Gamrath, G., Achterberg, T., Bastubbe, M., Berthold, T., Christophel, P.M., Jarck, K., Koch, T., Linderoth, J., M. Lübbecke, Mittelmann, H.D., Ozyurt, D., Ralphs, T.K., Salvagnin, D., Shinano, Y.: MIPLIB 2017: data-driven compilation of the 6th mixed-integer programming library. Math. Program. Comput. (2021)
Gomory, R.E.: Outline of an algorithm for integer solutions to linear programs. Bull. Am. Math. Soc. 64, 275–278 (1958)
Gomory, R.E.: An algorithm for the mixed integer problem. Technical Report RM-2597, RAND Corporation (1960)
Gomory, R.E.: An algorithm for integer solutions to linear programs. Recent Adv. Math. Program. 64, 260–302 (1963)
Gurobi Optimization, Inc.: Gurobi Optimizer Reference Manual. http://www.gurobi.com (2018). Version 8.0.1
Huang, Z., Wang, K., Liu, F., Zhen, H.-L., Zhang, W., Yuan, M., Hao, J., Yong, Yu., Wang, J.: Learning to select cuts for efficient mixed-integer programming. Pattern Recognit. 123, 108353 (2022)
Jünger, M., Liebling, T., Naddef, D., Nemhauser, G., Pulleyblank, W., Reinelt, G., Rinaldi, G., Wolsey L. (eds.): 50 Years of Integer Programming 1958–2008. Springer, Berlin (2010). From the early years to the state-of-the-art, papers from the 12th Combinatorial Optimization Workshop (Aussois 2008) held in Aussois, January 7–11, 2008
Karamanov, M., Cornuéjols, G.: Branching on general disjunctions. Math. Program. 128(1–2, Ser. A), 403–436 (2011)
Kazachkov, A.M., Le Bodic, P., Sankaranarayanan, S.: An abstract model for branch-and-cut. In: Integer Programming and Combinatorial Optimization: 23rd International Conference, IPCO 2022, Eindhoven, The Netherlands, June 27–29, 2022, Proceedings, Lecture Notes in Comput. Sci., pp. 333–346. Springer, Berlin (2022)
Khalil, E.B., Le Bodic, P., Song, L., Nemhauser, G., Dilkina, B.: Learning to branch in mixed integer programming. In: Thirtieth AAAI Conference on Artificial Intelligence (2016)
Khalil, E.B., Dai, H., Zhang, Y., Dilkina, B., Song, L.: Learning combinatorial optimization algorithms over graphs. In: Advances in Neural Information Processing Systems, pp. 6348–6358 (2017)
Land, A.H., Doig, A.G.: An automatic method of solving discrete programming problems. Econometrica 28, 497–520 (1960)
Le Bodic, P., Nemhauser, G.: An abstract model for branching and its application to mixed integer programming. Math. Program. 166(1–2), 369–405 (2017)
Mahajan, A.: On selecting disjunctions in mixed integer linear programming. PhD thesis, Lehigh University (2009)
OEIS Foundation Inc.: The On-Line Encyclopedia of Integer Sequences. Published electronically at https://oeis.org (2022)
Paulus, M.B., Zarpellon, G., Krause, A., Charlin, L., Maddison, C.: Learning to cut by looking ahead: Cutting plane selection via imitation learning. In: Chaudhuri, K., Jegelka, S., Song, L., Szepesvari, C., Niu, G., Sabato, S. (eds.) Proceedings of the 39th International Conference on Machine Learning, volume 162 of Proceedings of Machine Learning Research, pp. 17584–17600. PMLR (2022)
Tang, Y., Agrawal, S., Faenza, Y.: Reinforcement learning for integer programming: learning to cut. In: Proceedings of the 37th International Conference on Machine Learning (ICML 2020) (2020)
Turner, M., Koch, T., Serrano, F., Winkler, M.: Adaptive cut selection in mixed-integer linear programming (2022)
Yang, Yu., Boland, N., Savelsbergh, M.: Multivariable branching: a 0–1 knapsack problem case study. INFORMS J. Comput. 33(4), 1354–1367 (2021)
Acknowledgements
The authors thank Andrea Lodi, Canada Excellence Research Chair in Data Science for Real-Time Decision Making, for financial support and creating a collaborative environment that facilitated the interactions that led to this paper, as well as Monash University for supporting Pierre’s trip to Montréal.
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher's Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Extended version of workshop paper from The 23rd Conference on Integer Programming and Combinatorial Optimization [25].
Appendices
Computational results with selected MIPLIB instances
Figure 6 shows the linear relaxation bound, predicted bound (using the harmonically-worsening cuts model of Sect. 5.2), linear relaxation resolve time, and cumulative number of Gomory cuts added after up to 100 rounds of cuts have been applied to ten additional instances, using the same computational setup described in Sect. 5. The same general trends are observed as in the two plots in Fig. 2. For several instances, such as air05, binkar10, and swath3, the predicted bound—which is calculated based only on the improvement from the first round of cuts—is quite close to the actual bound changes after tens of rounds. The prediction tends to be inaccurate (a large overestimate) as more significant tailing in bound improvement occurs, but occasionally underestimates the bound improvement, such as for eil33-2.
Experiments with optimal proportion of cut rounds in SVBHC
Theorem 15 proves that, in the SVBHC model of Sect. 5, the number of cuts prescribed by Algorithm 1 is approximately optimal in the sense that the resulting tree is at most a multiplicative factor larger than the optimal tree size. Theorem 21 shows that using this approximately-optimal number of cuts proves a constant proportion of the overall bound, in the limit when the target bound goes to infinity. However, since the multiplicative factor in Theorem 15 may be quite large, it is not clear if the same type of limit exists for minimal-size trees. In Fig. 7, we address this question computationally, showing that the proportion of bound proved by cut nodes tends to the same limit in a minimal tree for four artificial instances of the SVBHC model. Experiments with more instances have shown the same behavior and therefore are omitted.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Kazachkov, A.M., Le Bodic, P. & Sankaranarayanan, S. An abstract model for branch and cut. Math. Program. 206, 175–202 (2024). https://doi.org/10.1007/s10107-023-01991-z
Received:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10107-023-01991-z