Branching on Multi-aggregated Variables

  • Gerald GamrathEmail author
  • Anna Melchiori
  • Timo Berthold
  • Ambros M. Gleixner
  • Domenico Salvagnin
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9075)


In mixed-integer programming, the branching rule is a key component to a fast convergence of the branch-and-bound algorithm. The most common strategy is to branch on simple disjunctions that split the domain of a single integer variable into two disjoint intervals. Multi-aggregation is a presolving step that replaces variables by an affine linear sum of other variables, thereby reducing the problem size. While this simplification typically improves the performance of MIP solvers, it also restricts the degree of freedom in variable-based branching rules.

We present a novel branching scheme that tries to overcome the above drawback by considering general disjunctions defined by multi-aggregated variables in addition to the standard disjunctions based on single variables. This natural idea results in a hybrid between variable- and constraint-based branching rules. Our implementation within the constraint integer programming framework SCIP incorporates this into a full strong branching rule and reduces the number of branch-and-bound nodes on a general test set of publicly available benchmark instances. For a specific class of problems, we show that the solving time decreases significantly.


Linear Programming Relaxation Dual Bound Constraint Integer Operation Research Letter Linear Programming Solution 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Land, A.H., Doig, A.G.: An automatic method of solving discrete programming problems. Econometrica 28(3), 497–520 (1960)CrossRefzbMATHMathSciNetGoogle Scholar
  2. 2.
    Dakin, R.J.: A tree-search algorithm for mixed integer programming problems. The Computer Journal 8(3), 250–255 (1965)CrossRefzbMATHMathSciNetGoogle Scholar
  3. 3.
    Mitra, G.: Investigation of some branch and bound strategies for the solution of mixed integer linear programs. Mathematical Programming 4, 155–170 (1973)CrossRefzbMATHMathSciNetGoogle Scholar
  4. 4.
    Linderoth, J.T., Savelsbergh, M.W.P.: A computational study of search strategies in mixed-integer programming. INFORMS Journal on Computing 11(2), 173–187 (1999)CrossRefzbMATHMathSciNetGoogle Scholar
  5. 5.
    Achterberg, T., Koch, T., Martin, A.: Branching rules revisited. Operations Research Letters 33, 42–54 (2005)CrossRefzbMATHMathSciNetGoogle Scholar
  6. 6.
    Achterberg, T., Berthold, T., Koch, T., Wolter, K.: Constraint integer programming: a new approach to integrate CP and MIP. In: Perron, L., Trick, M.A. (eds.) CPAIOR 2008. LNCS, vol. 5015, pp. 6–20. Springer, Heidelberg (2008) CrossRefGoogle Scholar
  7. 7.
    Achterberg, T.: SCIP: Solving constraint integer programs. Mathematical Programming Computation 1(1), 1–41 (2009)CrossRefzbMATHMathSciNetGoogle Scholar
  8. 8.
    Applegate, D.L., Bixby, R.E., Chvátal, V., Cook, W.J.: On the solution of traveling salesman problems. Documenta Mathematica Journal der Deutschen Mathematiker-Vereinigung, Extra Volume ICM III, 645–656 (1998)Google Scholar
  9. 9.
    Gauthier, J.M., Ribière, G.: Experiments in mixed-integer linear programming using pseudo-costs. Mathematical Programming 12(1), 26–47 (1977)CrossRefzbMATHMathSciNetGoogle Scholar
  10. 10.
    Fischetti, M., Monaci, M.: Branching on nonchimerical fractionalities. OR Letters 40(3), 159–164 (2012)zbMATHMathSciNetGoogle Scholar
  11. 11.
    Berthold, T., Salvagnin, D.: Cloud branching. In: Gomes, C., Sellmann, M. (eds.) CPAIOR 2013. LNCS, vol. 7874, pp. 28–43. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  12. 12.
    Gamrath, G.: Improving strong branching by domain propagation. EURO Journal on Computational Optimization 2(3), 99–122 (2014)CrossRefzbMATHGoogle Scholar
  13. 13.
    Patel, J., Chinneck, J.: Active-constraint variable ordering for faster feasibility of mixed integer linear programs. Mathematical Programming 110, 445–474 (2007)CrossRefzbMATHMathSciNetGoogle Scholar
  14. 14.
    Kılınç Karzan, F., Nemhauser, G.L., Savelsbergh, M.W.: Information-based branching schemes for binary linear mixed integer problems. Mathematical Programming Computation 1, 249–293 (2009)CrossRefzbMATHMathSciNetGoogle Scholar
  15. 15.
    Achterberg, T., Berthold, T.: Hybrid branching. In: van Hoeve, W.-J., Hooker, J.N. (eds.) CPAIOR 2009. LNCS, vol. 5547, pp. 309–311. Springer, Heidelberg (2009) CrossRefGoogle Scholar
  16. 16.
    Fischetti, M., Monaci, M.: Backdoor branching. In: Günlük, O., Woeginger, G.J. (eds.) IPCO 2011. LNCS, vol. 6655, pp. 183–191. Springer, Heidelberg (2011) CrossRefGoogle Scholar
  17. 17.
    Gilpin, A., Sandholm, T.: Information-theoretic approaches to branching in search. Discrete Optimization 8(2), 147–159 (2011)CrossRefzbMATHMathSciNetGoogle Scholar
  18. 18.
    Pryor, J., Chinneck, J.W.: Faster integer-feasibility in mixed-integer linear programs by branching to force change. Computers & OR 38(8), 1143–1152 (2011)CrossRefzbMATHMathSciNetGoogle Scholar
  19. 19.
    Ryan, D.M., Foster, B.A.: An integer programming approach to scheduling. In: Wren, A. (ed.) Computer Scheduling of Public Transport Urban Passenger Vehicle and Crew Scheduling, pp. 269–280. North Holland, Amsterdam (1981)Google Scholar
  20. 20.
    Owen, J.H., Mehrotra, S.: Experimental results on using general disjunctions in branch-and-bound for general-integer linear programs. Computational Optimization and Applications 20, 159–170 (2001)CrossRefzbMATHMathSciNetGoogle Scholar
  21. 21.
    Mahajan, A., Ralphs, T.K.: Experiments with branching using general disjunctions. In: Chinneck, J.W., Kristjansson, B., Saltzman, M.J. (eds.) Operations Research and Cyber-Infrastructure. Operations Research/Computer Science Interfaces Series, vol. 47, pp. 101–118. Springer, US (2009)CrossRefGoogle Scholar
  22. 22.
    Karamanov, M., Cornuéjols, G.: Branching on general disjunctions. Mathematical Programming 128, 403–436 (2011)CrossRefzbMATHMathSciNetGoogle Scholar
  23. 23.
    Cornuéjols, G., Liberti, L., Nannicini, G.: Improved strategies for branching on general disjunctions. Mathematical Programming 130, 225–247 (2011)CrossRefzbMATHMathSciNetGoogle Scholar
  24. 24.
    Mahmoud, H., Chinneck, J.W.: Achieving milp feasibility quickly using general disjunctions. Computers & OR 40(8), 2094–2102 (2013)CrossRefGoogle Scholar
  25. 25.
    Gomory, R.E.: An algorithm for the mixed integer problem. Technical report, RAND Corporation (1960)Google Scholar
  26. 26.
    Mahajan, A., Ralphs, T.K.: On the complexity of selecting disjunctions in integer programming. SIAM Journal on Optimization 20(5), 2181–2198 (2010)CrossRefzbMATHMathSciNetGoogle Scholar
  27. 27.
    Fischetti, M., Lodi, A.: Local branching. Mathematical Programming 98(1–3), 23–47 (2003)CrossRefzbMATHMathSciNetGoogle Scholar
  28. 28.
    Savelsbergh, M.W.P.: Preprocessing and probing techniques for mixed integer programming problems. ORSA Journal on Computing 6, 445–454 (1994)CrossRefzbMATHMathSciNetGoogle Scholar
  29. 29.
    Brearley, A.L., Mitra, G., Williams, H.P.: Analysis of mathematical programming problems prior to applying the simplex algorithm. Mathematical Programming 8(1), 54–83 (1975)CrossRefzbMATHMathSciNetGoogle Scholar
  30. 30.
    Bixby, R.E., Wagner, D.K.: A note on detecting simple redundancies in linear systems. Operation Research Letters 6(1), 15–17 (1987)CrossRefzbMATHMathSciNetGoogle Scholar
  31. 31.
    Gamrath, G., Koch, T., Martin, A., Miltenberger, M., Weninger, D.: Progress in presolving for mixed integer programming. Technical Report 13–48, ZIB, Takustr. 7, 14195 Berlin (2013)Google Scholar
  32. 32.
    Bixby, R.E., Ceria, S., McZeal, C.M., Savelsbergh, M.W.P.: An updated mixed integer programming library: MIPLIB 3.0. Optima 58, 12–15 (1998)Google Scholar
  33. 33.
    Achterberg, T., Koch, T., Martin, A.: MIPLIB 2003. Operations Research Letters 34(4), 1–12 (2006)CrossRefMathSciNetGoogle Scholar
  34. 34.
    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. Mathematical Programming Computation 3(2), 103–163 (2011)CrossRefMathSciNetGoogle Scholar
  35. 35.
    Wunderling, R.: Paralleler und objektorientierter Simplex-Algorithmus. Ph.D. thesis, Technische Universität Berlin (1996)Google Scholar
  36. 36.
    Baker, K.: Introduction to Sequencing and Scheduling. Wiley (1974)Google Scholar
  37. 37.
    Baker, K.R., Trietsch, D.: Principles of Sequencing and Scheduling. Wiley (2009)Google Scholar
  38. 38.
    Heinz, S., Ku, W.-Y., Beck, J.C.: Recent improvements using constraint integer programming for resource allocation and scheduling. In: Gomes, C., Sellmann, M. (eds.) CPAIOR 2013. LNCS, vol. 7874, pp. 12–27. Springer, Heidelberg (2013) CrossRefGoogle Scholar
  39. 39.
  40. 40.
    Gamrath, G., Melchiori, A., Berthold, T., Gleixner, A.M., Salvagnin, D.: Branching on multi-aggregated variables. Technical Report 15–10, ZIB, Takustr. 7, 14195 Berlin (2015)Google Scholar
  41. 41.
    Achterberg, T.: Constraint Integer Programming. Ph.D. thesis, Technische Universität Berlin (2007)Google Scholar
  42. 42.
    Gleixner, A.M.: Factorization and update of a reduced basis matrix for the revised simplex method. ZIB-Report 12–36, Zuse Institute Berlin, October 2012Google Scholar
  43. 43.
    Wunderling, R.: The kernel simplex method. Talk at the 21st International Symposium on Mathematical Programming, Berlin, Germany, August 2012Google Scholar
  44. 44.
    Achterberg, T., Raack, C.: The MCF-separator: detecting and exploiting multi-commodity flow structures in MIPs. Mathematical Programming Computation 2(2), 125–165 (2010)CrossRefzbMATHMathSciNetGoogle Scholar
  45. 45.
    Salvagnin, D.: Detecting and exploiting permutation structures in MIPs. In: Simonis, H. (ed.) CPAIOR 2014. LNCS, vol. 8451, pp. 29–44. Springer, Heidelberg (2014) CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2015

Authors and Affiliations

  • Gerald Gamrath
    • 1
    Email author
  • Anna Melchiori
    • 2
  • Timo Berthold
    • 3
  • Ambros M. Gleixner
    • 1
  • Domenico Salvagnin
    • 4
  1. 1.Zuse Institute BerlinBerlinGermany
  2. 2.University of PaduaPaduaItaly
  3. 3.Fair Isaac Europe LtdBerlinGermany
  4. 4.DEIUniversity of PaduaPaduaItaly

Personalised recommendations