Decomposition Techniques for Hybrid MILP/CP Models applied to Scheduling and Routing Problems

  • Pedro M. Castro
  • Ignacio E. Grossmann
  • Louis-Martin Rousseau
Part of the Springer Optimization and Its Applications book series (SOIA, volume 45)


This chapter provides a review of decomposition algorithms for models that are formulated as hybrid mixed-integer linear/constraint programming problems, such as logic Bender Decomposition and Constraint Programming-Based Column Generation. We first focus the decomposition techniques on single stage scheduling problems with parallel machines where the hybrid model provides a natural representation as the decisions decompose into assignment and sequencing decisions. We describe a general decomposition algorithm for the hybrid MILP/CP model in terms of a Benders decomposition scheme, as well as in terms of a branch and cut framework. We then consider Vehicle Routing and Crew Rostering applications to illustrate how Hybrid Branch-and-Price method can be applied, and we discuss the different models that have been proposed in the literature.


Schedule Problem Column Generation Constraint Programming Master Problem Linear Programming Relaxation 
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.


  1. 1.
    Artigues C, Gendreau M, Rousseau L-M, Vergnaud A (2009) Solving an integrated employee timetabling and jobshop scheduling problem via hybrid branch-and-bound. Comput Oper Res 36(8):2330–2340MATHCrossRefGoogle Scholar
  2. 2.
    Adams J, Balas E, Zawack D (1988) The shifting bottleneck procedure for job shop scheduling. Manage Sci 34(3):391–401MATHCrossRefMathSciNetGoogle Scholar
  3. 3.
    Applegate D, Cook B (1991) A computational study of the job shop scheduling problem. Oper Res Soc Am 3:149–156MATHGoogle Scholar
  4. 4.
    Balas E (1975) Facets of the knapsack polytope. Math Program 8(2), 146–164MATHCrossRefMathSciNetGoogle Scholar
  5. 5.
    Balas E, Vazacopoulos A (1998) Guided local search with shifting bottleneck for job shop scheduling. Manage Sci 44(2):262–275MATHCrossRefGoogle Scholar
  6. 6.
    Barnhart C, Johnson L, Nemhauser G, Savelsbergh M, Vance P (1998) Branch-and-Price: column generation for solving huge integer programs. Oper Res 46:316–329MATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Benders, J.F., 1962. Partitioning procedures for solving mixed-variables programming problems. Numer Math 4:238–252MATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Bockmayr A, Kasper T (1998) Branch-and-infer: a unifying framework for integer and finite domain constraint programming. INFORMS J Comput 287–300Google Scholar
  9. 9.
    Bockmayr A, Pisaruk N (2003) Detecting infeasibility and generating cuts for mixed integer programming using constraint programming. In: Proceedings CPAIOR’03. p24Google Scholar
  10. 10.
    Capone A, Carello G, Filippini I, Gualandi S, Malucelli F (2010) Solving a resource allocation problem in wireless mesh networks: a comparison between a CP-based and a classical column generation. NetworksGoogle Scholar
  11. 11.
    Carlier J, Pinson E (1989) An algorithm for solving the job-shop problem. Manage Sci 35:164–176MATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Carpaneto G, Martello S, Toth P (1994) Algorithm and codes for the assignment problems. Ann Oper Res 78:146–161Google Scholar
  13. 13.
    Caseau Y, Laburthe F (1994). Improving clp scheduling with task intervals. In: Hentenryck PV (ed) Logic programming: proceedings of the11th International Conference. MIT, Cambridge, pp 369–383Google Scholar
  14. 14.
    Caseau Y, Laburthe F (1996) Cumulative scheduling with task intervals. In: Maher M (ed) Logic programming: proceedings of the1996 Joint International Conference and Symposium. MIT, Cambridge, pp 363–377Google Scholar
  15. 15.
    Castro PA, Grossmann IE (2006) An efficient MILP model for the short-term scheduling of single stage batch plants. Comput Chem Eng 30(6–7):1003–1018CrossRefGoogle Scholar
  16. 16.
    Castro PM, Grossmann IE, Novais AQ (2006) Two new continuous-time models for the scheduling of multistage batch plants with sequence dependent changeovers. Ind Eng Chem Res 45(18):6210–6226CrossRefGoogle Scholar
  17. 17.
    Chabrier A (2000) Using constraint programming search goals to define column generation search procedures. In: Integration of AI and OR techniques in constraint programming for combinatorial optimisation problems, pp 19–27Google Scholar
  18. 18.
    Chandru V, Hooker J (1999) Optimization methods for logical inference. Wiley, New YorkGoogle Scholar
  19. 19.
    Chvátal V (1983) Linear programming. Freeman, New YorkMATHGoogle Scholar
  20. 20.
    Correa AI, Langevin A, Rousseau L-M (2007) Scheduling and routing of automated guided vehicles: a hybrid approach. Comput Oper Res 34(6):1688–1707MATHCrossRefGoogle Scholar
  21. 21.
    Dantzig GB, Wolfe P (1960) Decomposition principles for linear programs. Oper Res 8: 101–111MATHCrossRefGoogle Scholar
  22. 22.
    Darby-Dowman K, Little J (1998) Properties of some combinatorial optimization problems and their effect on the performance of integer programming and constraint logic programming. INFORMS J Comput 10:276–286MATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Darby-Dowman K, Little J, Mitra G, Zaffalon M (1997) Constraint logic programming and integer programming approaches and their collaboration in solving an assignment scheduling problem. Constraints 1:245–264MATHCrossRefMathSciNetGoogle Scholar
  24. 24.
    Dell’Amico M, Maffioli F, Varbrand P (1995) On prize-collecting tours and the asymmetric travelling salesman problem. Int Trans Oper Res 2(3):297–308MATHCrossRefGoogle Scholar
  25. 25.
    Demassey S, Pesant G, Rousseau L-M (2006) A cost-regular based hybrid column generation approach. Constraints 11(4): 315–333MATHCrossRefMathSciNetGoogle Scholar
  26. 26.
    Desrochers M, Desrosiers J, Solomon MM (1992) A new optimisation algorithm for the vehicle routing problem with time windows. Oper Res 40:342–354MATHCrossRefMathSciNetGoogle Scholar
  27. 27.
    Desrosiers J, Dumas Y, Solomon MM, Soumis F (1995) Time constrained routing and scheduling. In: Ball MO, Magnanti TL, Monma CL, Nemhauser GL (eds) Network Routing, vol8 of Handbooks in operations research and management science. North-Holland, Amsterdam, pp 35–139CrossRefGoogle Scholar
  28. 28.
    Desrosiers J, Solomon MM, Soumis F (1993) Time constrained routing and scheduling. Handbooks of operations research and management science, vol 8. North-Holland, Amsterdam, pp 35–139Google Scholar
  29. 29.
    Easton K, Nemhauser GL, Trick MA (2002) Solving the travelling tournament problem: a combined inte- ger programming and constraint programming approach. In: Proceedings of practice and theory of automated timetabling. Lecture notes in computer science, vol 2740. Springer, Berlin, pp 100–112Google Scholar
  30. 30.
    El Hachemi N, Gendreau M, Rousseau L-M A hybrid constraint programming approach to the log-truck scheduling problem, forthecoming in Ann Oper ResGoogle Scholar
  31. 31.
    Fahle T, Sellmann M (2002). Constraint programming based column generation with knapsack subproblems. Ann Oper Res 115:73–94MATHCrossRefMathSciNetGoogle Scholar
  32. 32.
    Fahle T, Junker U, Karisch SE, Kohl N, Sellmann M, Vaaben B (2002) Constraint programming based column generation for crew assignment. J Heuristics 8(1):59–81MATHCrossRefGoogle Scholar
  33. 33.
    Feillet D, Dejax P, Gendreau M, Gueguen C (2004) An exact algorithm for the elementary shortest path problem with resource constraints: application to some vehicle routing problems. Networks 44(3):216–229MATHCrossRefMathSciNetGoogle Scholar
  34. 34.
    Focacci F, Lodi A, Milano M (1999) Solving TSP through the Integration of OR and CP techniques. Electron Notes Discrete Math 1Google Scholar
  35. 35.
    Focacci F, Milano M (2001) Connections and integrations of dynamic programming and constraint programming. In: Proceedings of the third workshop on integration of AI and OR techniques in constraint programming for combinatorial optimization problems. Ashford, Kent, UK, pp 125–138Google Scholar
  36. 36.
    Gaudin E (1997) Contribution de la programmation par contraintes au transport: définition et résolution d’un modèle complexe de gestion de flotte. PhD thesis, Université Paris 7Google Scholar
  37. 37.
    Gualandi S (2008) Enhancing constraint programming-based column generation for integer programs. PhD thesis, Politecnico di MilanoGoogle Scholar
  38. 38.
    Gualandi S, Malucelli F (2009) Constraint programming-based column generation. 4OR A Q J Oper Res 7(2):113–137Google Scholar
  39. 39.
    Grönkvist M (2004) A constraint programming model for tail assignment. In: Proceedings of integration of AI and OR techniques in CP for combinatorial optimization. Lecture notes in computer science, vol 3011. Springer, Berlin, pp 142–156Google Scholar
  40. 40.
    Grönkvist M (2006) Accelerating column generation for aircraft scheduling using constraint propagation. Comput OR 33(10):2918–2934MATHCrossRefGoogle Scholar
  41. 41.
    Gabteni S, Grönkvist M (2006) A hybrid column generation and constraint programming optimizer for the tail assignment problem. In: Proceedings of integration of AI and OR techniques in CP for combinatorial optimization. Lecture notes in computer science, vol 3990. Springer, Berlin, pp 89–103Google Scholar
  42. 42.
    Gendron B, Lebbah H, Pesant G (2005) Improving the cooperation between the master problem and the subproblem in constraint programming based column generation. In: Proceedings of 2th International Conference on Integration of AI and OR techniques in Constraint Programming for Combinatorial Optimization Problems – CPAIOR’05. LNCS, vol 3524. Springer, Berlin, 217–227Google Scholar
  43. 43.
    Hansen J, Liden T (2005) Group construction for airline cabin crew: comparing constraint programming with branch and price In: Proceedings of integration of AI and OR techniques in CP for combinatorial optimization. Lecture notes in computer science, vol 3524. Springer, Berlin, pp 228–242Google Scholar
  44. 44.
    Harjunkoski I, Grossmann I (2002) Decomposition techniques for multistage scheduling problems using mixed-integer and constraint programming methods. Comput Chem Eng 26(11):1533–1552CrossRefGoogle Scholar
  45. 45.
    Heipcke S (1999). Comparing constraint programming and mathematical programming approaches to discrete optimisation – the change problem. J Oper Res Soc 50(6):581–595MATHGoogle Scholar
  46. 46.
    Heipcke S (1999) An example of integrating constraint programming and mathematical programming. In: Electron Notes Discrete Math 1Google Scholar
  47. 47.
    Hooker J, Ottosson G (2003) Logic-based Benders decomposition. Math Program 96(1):33–60MATHMathSciNetGoogle Scholar
  48. 48.
    Hooker JN (2000) Logic-based methods for optimization: combining optimization and constraint satisfaction. Wiley, New YorkMATHGoogle Scholar
  49. 49.
    Hooker JN (2002) Logic, optimization, and constraint programming. INFORMS J Comput 14(4):295–321CrossRefMathSciNetGoogle Scholar
  50. 50.
    Hooker JN (2007). Integrated methods for optimization. Springer, New YorkMATHGoogle Scholar
  51. 51.
    Hooker JN (2007). Planning and scheduling by logic-based benders decomposition. Oper Res 55(3):588–602MATHCrossRefMathSciNetGoogle Scholar
  52. 52.
    Hooker JN, Osorio MA (1999) Mixed logic/linear programming. Discrete Appl Math 96–97 (395–442)CrossRefMathSciNetGoogle Scholar
  53. 53.
    Hooker JN, Ottosson G, Thorsteinsson ES, Kim HJ (1999) On integrating constraint propagation and linear programming for combinatorial optimization. In: Proceedings of the sixteenth national conference on artificial intelligence (AAAI-99), AAAI. The AAAI/MIT, Cambridge, pp 136–141Google Scholar
  54. 54.
    Jain V, Grossmann IE (2001) Algorithms for hybrid MILPCP models for a class of optimization problems. INFORMS J Comp 13(4):258–276CrossRefMathSciNetGoogle Scholar
  55. 55.
    Junker U, Karisch SE, Kohl N, Vaaben B, Fahle T, Sellmann M (1999) A framework for constraint programming based column generation. In: Principles and practice of constraint programming, Lecture notes in computer science, pp 261–274Google Scholar
  56. 56.
    Kohl N, Madsen OBG (1997) An optimization algorithm for the vehicle routing problem with time windows based on lagrangian relaxation. Oper Res 45(3):395–407MATHCrossRefMathSciNetGoogle Scholar
  57. 57.
    LePape C (1994) Implementation of resource constraints in ILOG schedule: a library for the development of constraintbased scheduling systems. Intell Sys Eng 3:55–66CrossRefGoogle Scholar
  58. 58.
    Lübbecke ME (2005) Dual variable based fathoming in dynamic programs for column generation. Eur J Oper Res 162(1):122–125MATHCrossRefGoogle Scholar
  59. 59.
    Maravelias CT (2006) A decomposition framework for the scheduling of single- and multi-stage processes. Comput Chem Eng 30(3):407–420CrossRefGoogle Scholar
  60. 60.
    Maravelias CT, Grossmann IE (2004). A hybrid MILPCP decomposition approach for the continuous time scheduling of multipurpose batch plants. Comput Chem Eng 28(10):1921–1949CrossRefGoogle Scholar
  61. 61.
    Maravelias CT, Grossmann IE (2004). Using MILP and CP for the scheduling of batch chemical processes. In: Proceedings CPAIOR’04. pp 1–20Google Scholar
  62. 62.
    Marriott K, Stuckey PJ (1998). Programming with constraints. MIT, CambridgeMATHGoogle Scholar
  63. 63.
    Nemhauser GL, Wolsey LA (1988). Integer and combinatorial optimization. Wiley, New YorkMATHGoogle Scholar
  64. 64.
    OREAS GmbH (1999) ABACUS: a Branch-And-CUt system, Ver. 2.3. User’s Guide and Reference Manual.Google Scholar
  65. 65.
    Ottosson G, Thorsteinsson ES, Hooker J (2002) Mixed global constraints and inference in hybrid CLP-IP solvers. Ann Math Artif Intell 34(4):271–290MATHCrossRefMathSciNetGoogle Scholar
  66. 66.
    Pantelides CC (1994). Unified frameworks for the optimal process planning and scheduling. In: Second conference on foundations of computer aided operations. Cache Publications, NewYork, p 253Google Scholar
  67. 67.
    Pesant G, Gendreau M, Potvin J-Y, Rousseau J-M (1998) An exact constraint logic programming algorithm for the traveling salesman problem with time windows. Transp Sci 32:12–29MATHCrossRefGoogle Scholar
  68. 68.
    Pesant G, Gendreau M, Potvin J-Y, Rousseau J-M (1999) On the flexibility of constraint programming models: from single to multiple time windows for the traveling salesman problem. Eur J Oper Res 117:253–263MATHCrossRefGoogle Scholar
  69. 69.
    Pisinger D, Sigurd M (2007) Using decomposition techniques and constraint programming for solving the two-dimensional bin-packing problem. J Comput 19(1):36–51MathSciNetGoogle Scholar
  70. 70.
    Proll L, Smith B (1998) Integer linear programming and constraint logic programming approaches to a template design problem. INFORMS J Comput 10:265–275MATHCrossRefMathSciNetGoogle Scholar
  71. 71.
    Quesada I, Grossmann IE (1992) An LP/NLP based branch-andbound algorithm for convex MINLP optimization problems. Comput Chem Eng 16:937–947CrossRefGoogle Scholar
  72. 72.
    Raman R, Grossmann IE (1993) Symbolic integration of logic in MILP branch and bound techniques for the synthesisof process networks. Ann Oper Res 42:169–191MATHCrossRefGoogle Scholar
  73. 73.
    Raman R, Grossmann IE (1994) Modelling and computational techniques for logic based integer programming. Comput Chem Eng 18: 563–578CrossRefGoogle Scholar
  74. 74.
    Rasmussen RV, Trick MA (2007) A Benders approach for the constrained minimum break problem. Eur J Oper Res 177(1):198–213MATHCrossRefMathSciNetGoogle Scholar
  75. 75.
    Régin J-C (1994). A filtering algorithm for constraints of difference in CSPs. In: Proceedings of the twelfth national conference on artificial intelligence (AAAI-94), pp 362–367Google Scholar
  76. 76.
    Rodosek R, Wallace M, Hajian M (1999) A new approach to integrating mixed integer programming and constraint logic programming. Ann Oper Res 86:63–87MATHCrossRefMathSciNetGoogle Scholar
  77. 77.
    Rousseau L-M (2004) Stabilization issues for constraint programming based column generation. In: Proceedings of integration of AI and OR techniques in CP for combinatorial optimization. Lecture notes in computer science, vol 3011. Springer, Berlin, pp 402–408Google Scholar
  78. 78.
    Rousseau L-M, Gendreau M, Pesant G, Focacci F (2004) Solving VRPTWs with constraint programming based column generation. Ann Oper Res 130(1):199–216MATHCrossRefMathSciNetGoogle Scholar
  79. 79.
    Sadykov R (2008). A branch-and-check algorithm for minimizing the weighted number of late jobs on a single machine with release dates. Eur J Oper Res 189(3):1284–1304MATHCrossRefMathSciNetGoogle Scholar
  80. 80.
    Sadykov R, Wolsey L (2006) Integer programming and constraint programming in solving a multimachine assignment scheduling problem with deadlines and release dates. INFORMS J Comput 18(2):209–217CrossRefMathSciNetGoogle Scholar
  81. 81.
    Sellmann M, Zervoudakis K, Stamatopoulos P, Fahle T (2002) Crew assignment via constraint programming: integrating column generation and heuristic tree search. Ann Oper Res 115(1):207–225MATHCrossRefMathSciNetGoogle Scholar
  82. 82.
    Smith BM, Brailsford SC, Hubbard PM, Williams HP (1996) The progressive party problem: Integer linear programming and constraint programming compared. Constraints 1(1/2): 119–138CrossRefMathSciNetGoogle Scholar
  83. 83.
    Timpe C (2002) Solving planning and scheduling problems with combined integer and constraint programming. OR Spectr 24(4):431–448MATHCrossRefGoogle Scholar
  84. 84.
    van Hentenryck P (1999) The OPL optimization programming language. MIT, CambridgeGoogle Scholar
  85. 85.
    van Hentenryck P (2002). Constraint and integer programming in OPL. INFORMS J Comput 14(4):345–372CrossRefMathSciNetGoogle Scholar
  86. 86.
    Wolsey LA (1975) Faces for a linear inequality in 0-1 variables. Math Program 8(2):165–178MATHCrossRefMathSciNetGoogle Scholar
  87. 87.
    Yunes TH, Moura AV, de Souza CC (2009) Solving very large crew scheduling problems to optimality. In: Proceedings of ACM symposium on applied computing, vol 1. ACM, NewYork, pp 446–451Google Scholar
  88. 88.
    Yunes TH, Mour AV, de Souza CC (2005) Hybrid column generation approaches for urban transit crew management problems. Transp Sci 39(2):273–288CrossRefGoogle Scholar

Copyright information

© Springer Science+Business Media LLC 2011

Authors and Affiliations

  • Pedro M. Castro
    • 1
  • Ignacio E. Grossmann
  • Louis-Martin Rousseau
  1. 1.Laboratório Nacional de Energiae GeologiaUnidade de Modelação e Optimização de Sistemas EnergéticosLisboaPortugal

Personalised recommendations