Skip to main content
Log in

Constraint Programming-based Column Generation

  • Published:
Annals of Operations Research Aims and scope Submit manuscript

Abstract

This paper surveys recent applications and advances of the Constraint Programming-based Column Generation framework, where the master subproblem is solved by traditional OR techniques, while the pricing subproblem is solved by Constraint Programming. This framework has been introduced to solve crew assignment problems, where complex regulations make the pricing subproblem demanding for traditional techniques, and then it has been applied to other contexts. The main benefits of using Constraint Programming are the expressiveness of its modeling language and the flexibility of its solvers. Recently, the Constraint Programming-based Column Generation framework has been applied to many other problems, ranging from classical combinatorial problems such as graph coloring and two dimensional bin packing, to application oriented problems, such as airline planning and resource allocation in wireless ad-hoc networks.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Program 1
Program 2

Similar content being viewed by others

References

  • Achterberg, T. (2007). Constraint integer programming. PhD thesis, TU Berlin.

  • Apt, K. R. (2003). Principles of constraint programming. Cambridge: Cambridge University Press.

    Book  Google Scholar 

  • Barnhart, C., Johnson, E. L., Nemhauser, G. L., Savelsbergh, M. W. P., & Vance, P. H. (1998). Branch-and-price: column generation for solving huge integer programs. Operations Research, 46(3), 316–329.

    Article  Google Scholar 

  • Beldiceanu, N., Carlsson, M., & Rampon, J. X. (2005). Global constraint catalogue. Technical Report SICS-T2005:08, Swedish Institute of Computer Science.

  • 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. Networks, 55(3), 221–233. doi:10.1002/net.20367.

    Google Scholar 

  • Chu, C., & Antonio, J. (1999). Approximation algorithms to solve real-life multicriteria cutting stock problems. Operations Research, 47(4), 495–508.

    Article  Google Scholar 

  • Ciriani, T. A., Colombani, Y., & Heipcke, S. (2003). Embedding optimisation algorithms with Mosel. 4OR, 1(2), 155–167.

    Article  Google Scholar 

  • Cortès, C., Gendreau, M., Rousseau, L.-M., Souyris, S., & Weintraub, A. (2012, to appear). Solving a technician dispatch problem using branch and price and constraint programming. European Journal of Operational Research.

  • Cotè, M.-C., Gendron, B., & Rousseau, L.-M. (2012). Grammar-based column generation for personalized multi-activity shift scheduling. INFORMS Journal on Computing. doi:10.1287/ijoc.1120.0514.

    Google Scholar 

  • Demassey, S., Pesant, G., & Rousseau, L. M. (2006). A cost-regular based hybrid column generation approach. Constraints, 11(4), 315–333.

    Article  Google Scholar 

  • Desrosiers, J., Dumas, Y., Solomon, M. M., & Soumis, F. (1995). Time constrained routing and scheduling. In M. O. Ball, T. L. Magnanti, C. L. Monma, & G. L. Nemhauser (Eds.), Handbooks in operations research and management science: Vol. 8. Network routing (pp. 35–139). Amsterdam: Elsevier, North-Holland.

    Chapter  Google Scholar 

  • DIMACS (2002). Graph coloring instances. http://mat.gsia.cmu.edu/COLOR.

  • Easton, K., Nemhauser, G. L., & Trick, M. A. (2002). Solving the travelling tournament problem: a combined integer programming and constraint programming approach. In LNCS: Vol. 2740. Proc. of practice and theory of automated timetabling (pp. 100–112). Berlin: Springer.

    Google Scholar 

  • Fahle, T., & Sellmann, M. (2002). Cost based filtering for the constrained knapsack problem. Annals of Operations Research, 115(1), 73–93.

    Article  Google Scholar 

  • Fahle, T., Junker, U., Karisch, S. E., Kohl, N., Sellmann, M., & Vaaben, B. (2002). Constraint programming based column generation for crew assignment. Journal of Heuristics, 8(1), 59–81.

    Article  Google Scholar 

  • Gabteni, S., & Grönkvist, M. (2006). A hybrid column generation and constraint programming optimizer for the tail assignment problem. In LNCS: Vol. 3990. Proc. integration of AI and OR techniques in CP for combinatorial optimization problems (pp. 89–103). Berlin: Springer.

    Chapter  Google Scholar 

  • Gecode Team (2006). Gecode: generic constraint development environment. http://www.gecode.org.

  • Gendron, B., Lebbah, H., & Pesant, G. (2005). Improving the cooperation between the master problem and the subproblem in constraint programming based column generation. In LNCS: Vol. 3524. Proc. integration of AI and OR techniques in CP for combinatorial optimization problems (pp. 217–227). Berlin: Springer.

    Chapter  Google Scholar 

  • Gilmore, P. C., & Gomory, R. E. (1961). A linear programming approach to the cutting-stock problem. Operations Research, 9(6), 849–859.

    Article  Google Scholar 

  • Grönkvist, M. (2004). A constraint programming model for tail assignment. In LNCS: Vol. 3011. Proc. integration of AI and OR techniques in CP for combinatorial optimization problems (pp. 142–156). Berlin: Springer.

    Chapter  Google Scholar 

  • Grönkvist, M. (2006). Accelerating column generation for aircraft scheduling using constraint propagation. Computers & Operations Research, 33(10), 2918–2934.

    Article  Google Scholar 

  • Gualandi, S. (2009). Enhancing constraint programming-based column generation for integer programs. 4OR, 7(3), 289–292.

    Article  Google Scholar 

  • Gualandi, S., & Malucelli, F. (2009). Constraint programming-based column generation: a survey. 4OR, 7(2), 113–137.

    Article  Google Scholar 

  • Gualandi, S., & Malucelli, F. (2012). Exact solution of graph coloring problems via constraint programming and column generation. INFORMS Journal on Computing, 24(1), 81–100.

    Article  Google Scholar 

  • Hansen, J., & Liden, T. (2005). Group construction for airline cabin crew: comparing constraint programming with branch and price. In LNCS: Vol. 3524. Proc. integration of AI and OR techniques in CP for combinatorial optimization problems (pp. 228–242). Berlin: Springer.

    Chapter  Google Scholar 

  • Harvey, W. D., & Ginsberg, M. L. (1995). Limited discrepancy search. In Proc. international joint conferences on artificial intelligence (pp. 607–615).

    Google Scholar 

  • Heisig, G., & Minner, S. (1999). ILOG OPL studio. OR Spektrum, 21(4), 419–427.

    Article  Google Scholar 

  • Junker, U., Karisch, S. E., Kohl, N., Vaaben, B., Fahle, T., & Sellmann, M. (1999). A framework for constraint programming based column generation. In LNCS: Vol. 1713. Proc. principles and practice of constraint programming (pp. 261–274). Berlin: Springer.

    Google Scholar 

  • Lübbecke, M. E., & Desrosiers, J. (2005). Selected topics in column generation. Operations Research, 53(6), 1007–1023.

    Article  Google Scholar 

  • Marriott, K., Nethercote, N., Rafeh, R., Stuckey, P. J., De la Garcia, B. M., & Wallace, M. (2008). The design of the zinc modelling language. Constraints, 13(3), 229–267.

    Article  Google Scholar 

  • Martello, S., & Toth, P. (1990). Knapsack problems: algorithms and computer implementations. New York: Wiley

    Google Scholar 

  • Mehrotra, A., & Trick, M. A. (1996). A column generation approach for graph coloring. INFORMS Journal on Computing, 8(4), 344–354.

    Article  Google Scholar 

  • Michel, L., & Van Hentenryck, P. (2003). Comet in context. In PCK50: proceedings of the Paris C. Kanellakis memorial workshop on principles of computing & knowledge (pp. 95–107). New York: ACM.

    Chapter  Google Scholar 

  • Milano, M., & Wallace, M. (2006). Integrating operations research in constraint programming. 4OR, 4(3), 1–45.

    Article  Google Scholar 

  • Pisinger, D., & Sigurd, M. (2007). Using decomposition techniques and constraint programming for solving the two-dimensional bin-packing problem. INFORMS Journal on Computing, 19(1), 36–51.

    Article  Google Scholar 

  • Puchinger, J., Stuckey, P. J., Wallace, M., & Brand, S. (2008). From high-level model to branch-and-price solution in G12. In LNCS: Vol. 5015. Proc. integration of AI and OR techniques in CP for combinatorial optimization problems (pp. 218–232). Berlin: Springer.

    Chapter  Google Scholar 

  • Ralphs, T. K., & Ladanyi, L. (2001). COIN/BCP user’s manual.

    Google Scholar 

  • Régin, J. C. (2002). Cost-based arc consistency for global cardinality constraints. Constraints, 7(3), 387–405.

    Article  Google Scholar 

  • Rossi, F., Van Beek, P., & Walsh, T. (2006). Handbook of constraint programming. Amsterdam: Elsevier.

    Google Scholar 

  • Rousseau, L. M. (2004). Stabilization issues for constraint programming based column generation. In LNCS: Vol. 3011. Proc. integration of AI and OR techniques in CP for combinatorial optimization problems (pp. 402–408). Berlin: Springer.

    Chapter  Google Scholar 

  • Rousseau, L. M., Gendreau, M., Pesant, G., & Focacci, F. (2004). Solving VRPTWs with constraint programming based column generation. Annals of Operations Research, 130(1), 199–216.

    Article  Google Scholar 

  • Rousseau, L. M., Gendreau, M., & Feillet, D. (2007). Interior point stabilization for column generation. Operations Research Letters, 35(5), 660–668.

    Article  Google Scholar 

  • Sadykov, R., & Wolsey, L. A. (2006). Integer programming and constraint programming in solving a multimachine assignment scheduling problem with deadlines and release dates. INFORMS Journal on Computing, 18(2), 209–217.

    Article  Google Scholar 

  • Sellmann, M., Zervoudakis, K., Stamatopoulos, P., & Fahle, T. (2002). Crew assignment via constraint programming: integrating column generation and heuristic tree search. Annals of Operations Research, 115(1), 207–225.

    Article  Google Scholar 

  • Wolsey, L. A. (1998). Integer programming. New York: Wiley.

    Google Scholar 

  • Yunes, T. H., Moura, A. V., & de Souza C. C. (2000). Solving very large crew scheduling problems to optimality. In Proc. ACM symposium on applied computing (Vol. 1, pp. 446–451). New York: ACM.

    Google Scholar 

  • Yunes, T. H., Moura, A. V., & de Souza C. C. (2005). Hybrid column generation approaches for urban transit crew management problems. Transportation Science, 39(2), 273–288.

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Stefano Gualandi.

Additional information

This is an updated version of the paper that appeared in 4OR, 7(2), 113–137 (2009).

Rights and permissions

Reprints and permissions

About this article

Cite this article

Gualandi, S., Malucelli, F. Constraint Programming-based Column Generation. Ann Oper Res 204, 11–32 (2013). https://doi.org/10.1007/s10479-012-1299-7

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10479-012-1299-7

Keywords

Navigation