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.


Column Generation Master Problem Domain Propagation Price Problem Restricted Master Problem 
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.
    Achterberg, T.: SCIP: Solving constraint integer programs. Math. Programming Computation 1, 1–41 (2009)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Achterberg, T., Koch, T., Martin, A.: Branching rules revisited. Operations Research Letters 33, 42–54 (2005)zbMATHCrossRefMathSciNetGoogle 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)zbMATHCrossRefMathSciNetGoogle 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)zbMATHCrossRefGoogle Scholar
  8. 8.
    Mittelmann, H.: Benchmarks for optimization software (2010),
  9. 9.
    Nemhauser, G., Savelsbergh, M., Sigismondi, G.: MINTO, a Mixed INTeger Optimizer. Oper. Res. Lett. 15, 47–58 (1994)zbMATHCrossRefMathSciNetGoogle 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)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Ralphs, T., Galati, M.: DIP – decomposition for integer programming (2009),
  13. 13.
    Ralphs, T., Ladányi, L.: COIN/BCP User’s Manual (2001),
  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,
  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)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Vanderbeck, F.: BaPCod – a generic branch-and-price code (2005),
  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)zbMATHCrossRefMathSciNetGoogle 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)zbMATHCrossRefMathSciNetGoogle 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