Experiments with a Generic Dantzig-Wolfe Decomposition for Integer Programs

  • Gerald Gamrath
  • Marco E. Lübbecke
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6049)


We report on experiments with turning the branch-price-and-cut framework SCIP into a generic branch-price-and-cut solver. That is, given a mixed integer program (MIP), our code performs a Dantzig-Wolfe decomposition according to the user’s specification, and solves the resulting re-formulation via branch-and-price. We take care of the column generation subproblems which are solved as MIPs themselves, branch and cut on the original variables (when this is appropriate), aggregate identical subproblems, etc. The charm of building on a well-maintained framework lies in avoiding to re-implement state-of-the-art MIP solving features like pseudo-cost branching, preprocessing, domain propagation, primal heuristics, cutting plane separation etc.


Expense Lution 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Achterberg, T.: SCIP: Solving constraint integer programs. Math. Programming Computation 1, 1–41 (2009)MATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Achterberg, T., Koch, T., Martin, A.: Branching rules revisited. Operations Research Letters 33, 42–54 (2005)MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Caprara, A., Furini, F., Malaguti, E.: Exact algorithms for the temporal knapsack problem. Technical report OR-10-7, DEIS, University of Bologna (2010)Google Scholar
  4. 4.
    Ceselli, A., Righini, G.: A branch-and-price algorithm for the capacitated p-median problem. Networks 45, 125–142 (2005)MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Desaulniers, G., Desrosiers, J., Spoorendonk, S.: Cutting planes for branch-and-price algorithms, Les Cahiers du GERAD G-2009-52, HEC Montréal (2009)Google Scholar
  6. 6.
    Gamrath, G.: Generic branch-cut-and-price. master’s thesis, Institut für Mathematik, Technische Universität Berlin (2010)Google Scholar
  7. 7.
    Jünger, M., Thienel, S.: The ABACUS system for branch-and-cut-and-price algorithms in integer programming and combinatorial optimization. Softw. Pract. Exper. 30, 1325–1352 (2000)MATHCrossRefGoogle Scholar
  8. 8.
    Mittelmann, H.: Benchmarks for optimization software (2010), http://plato.asu.edu/bench.html
  9. 9.
    Nemhauser, G., Savelsbergh, M., Sigismondi, G.: MINTO, a Mixed INTeger Optimizer. Oper. Res. Lett. 15, 47–58 (1994)MATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Puchinger, J., Stuckey, P., Wallace, M., Brand, S.: Dantzig-Wolfe decomposition and branch-and-price solving in G12. Constraints (to appear, 2010)Google Scholar
  11. 11.
    Ralphs, T., Galati, M.: Decomposition and dynamic cut generation in integer linear programming. Math. Programming 106, 261–285 (2006)MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Ralphs, T., Galati, M.: DIP – decomposition for integer programming (2009), https://projects.coin-or.org/Dip
  13. 13.
    Ralphs, T., Ladányi, L.: COIN/BCP User’s Manual (2001), http://www.coin-or.org/Presentations/bcp-man.pdf
  14. 14.
    Ryan, D., 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
  15. 15.
    Scholl, A., Klein, R.: Bin packing instances: Data set 1, http://www.wiwi.uni-jena.de/Entscheidung/binpp/
  16. 16.
    Vanderbeck, F.: On Dantzig-Wolfe decomposition in integer programming and ways to perform branching in a branch-and-price algorithm. Oper. Res. 48, 111–128 (2000)MATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Vanderbeck, F.: BaPCod – a generic branch-and-price code (2005), https://wiki.bordeaux.inria.fr/realopt/pmwiki.php/Project/BaPCod
  18. 18.
    Vanderbeck, F.: Implementing mixed integer column generation. In: Desaulniers, G., Desrosiers, J., Solomon, M. (eds.) Column Generation, pp. 331–358. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  19. 19.
    Vanderbeck, F.: A generic view of Dantzig-Wolfe decomposition in mixed integer programming. Oper. Res. Lett. 34, 296–306 (2006)MATHCrossRefMathSciNetGoogle Scholar
  20. 20.
    Vanderbeck, F.: Branching in branch-and-price: A generic scheme. Math. Programming (to appear, 2010) Google Scholar
  21. 21.
    Vanderbeck, F., Savelsbergh, M.: A generic view of Dantzig-Wolfe decomposition in mixed integer programming. Oper. Res. Lett. 34, 296–306 (2006)MATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Vanderbeck, F., Wolsey, L.: Reformulation and decomposition of integer programs. In: 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)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Gerald Gamrath
    • 1
  • Marco E. Lübbecke
    • 2
  1. 1.Zuse Institute BerlinBerlinGermany
  2. 2.Fachbereich MathematikTechnische Universität DarmstadtDarmstadtGermany

Personalised recommendations