Improved Linearization of Constraint Programming Models

  • Gleb BelovEmail author
  • Peter J. Stuckey
  • Guido Tack
  • Mark Wallace
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9892)


Constraint Programming (CP) standardizes many specialized “global constraints” allowing high-level modelling of combinatorial optimization and feasibility problems. Current Mixed-Integer Linear Programming (MIP) technology lacks both a modelling language and a solving mechanism based on high-level constraints.

MiniZinc is a solver-independent CP modelling language. The solver interface works by translating a MiniZinc model into the simpler language FlatZinc. A specific solver can provide its own redefinition library of MiniZinc constraints.

This paper describes improvements to the redefinitions for MIP solvers and to the compiler front-end. We discuss known and new translation methods, in particular we introduce a coordinated decomposition for domain constraints. The redefinition library is tested on the benchmarks of the MiniZinc Challenges 2012–2015. Experiments show that the two solving paradigms have rather diverse sets of strengths and weaknesses. We believe this is an important step for modelling languages. It illustrates that the high-level approach of recognizing and naming combinatorial substructure and using this to define a model, common to CP modellers, is equally applicable to those wishing to use MIP solving technology. It also makes the goal of solver-independent modelling one step closer. At least for prototyping, the new front-end frees the modeller from considering the solving technology, extracting very good performance from MIP solvers for high-level CP-style MiniZinc models.


Combinatorial optimization High-level modelling Automatic reformulation Linear decomposition Context-aware reformulation 


  1. 1.
    A list of constraint languages (2016).
  2. 2.
    Andrei, N.: Introduction to GAMS Technology. Nonlinear Optimization Applications Using the GAMS Technology. Springer Optimization and Its Applications, vol. 81, pp. 9–23. Springer, New York (2013)CrossRefGoogle Scholar
  3. 3.
    Beldiceanu, N., Carlsson, M., Demassey, S., Petit, T.: Global constraint catalogue: past, present and future. Constraints 12(1), 21–62 (2007)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Björdal, G., Monette, J.-N., Flener, P., Pearson, J.: A constraint-based local search backend for MiniZinc. Constraints 20(3), 325–345 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  5. 5.
    Chu, G.: Improving combinatorial optimization - extended abstract. In: Proceedings of the 23rd International Joint Conference on Artificial Intelligence IJCAI 2013, Beijing, China, pp. 3116–3120 (2013)Google Scholar
  6. 6.
    Chu, G.: Constraint Programming solver Chuffed (2016). Accessed 16 Mar 2016
  7. 7.
    Cire, A.A., Hooker, J.N., Yunes, T.: Modeling with metaconstraints and semantic typing of variables. INFORMS JoC 28(1), 1–13 (2016)MathSciNetCrossRefzbMATHGoogle Scholar
  8. 8.
    Côté, M.-C., Gendron, B., Rousseau, L.-M.: Modeling the regular constraint with integer programming. In: Van Hentenryck, P., Wolsey, L.A. (eds.) CPAIOR 2007. LNCS, vol. 4510, pp. 29–43. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  9. 9.
    Desrochers, M., Laporte, G.: Improvements and extensions to the Miller-Tucker-Zemlin subtour elimination constraints. Oper. Res. Lett. 10(1), 27–36 (1991)MathSciNetCrossRefzbMATHGoogle Scholar
  10. 10.
    Fourer, R., Gay, D.M.: Extending an algebraic modeling language to support constraint programming. INFORMS J. Comput. 14(4), 322–344 (2002)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Gurobi Optimization, Inc. Gurobi Optimizer Reference Manual Version 6.5. Houston, Texas: Gurobi Optimization (2016)Google Scholar
  12. 12.
    Hardin, J.R., Nemhauser, G.L., Savelsbergh, M.W.P.: Strong valid inequalities for the resource-constrained scheduling problem with uniform resource requirements. Discrete Optim. 5(1), 19–35 (2008)MathSciNetCrossRefzbMATHGoogle Scholar
  13. 13.
    Hooker, J.N.: Integrated Methods for Optimization. International Series in Operations Research & Management Science, vol. 170. Springer, US (2012)zbMATHGoogle Scholar
  14. 14.
    IBM Software. IBM ILOG CPLEX optimizer. Data sheet, IBM Corporation (2014)Google Scholar
  15. 15.
    Koch, T.: Rapid mathematical prototyping. Ph.d. thesis, Technische Universität Berlin (2004)Google Scholar
  16. 16.
    Leo, K., Tack, G.: Multi-pass high-level presolving. In: International Joint Conference on Artificial Intelligence (IJCAI) (2015)Google Scholar
  17. 17.
    Linderoth, J., Ralphs, T.: Noncommercial software for mixed-integer linear programming. Technical report, Lehigh University (2004)Google Scholar
  18. 18.
    McCormick, G.P.: Computability of global solutions to factorable nonconvex programs: Part I - convex underestimating problems. Math. Program. 10(1), 147–175 (1976)MathSciNetCrossRefzbMATHGoogle Scholar
  19. 19.
    McKinnon, K., Williams, H.: Constructing integer programming models by the predicate calculus. Ann. Oper. Res. 21, 227–245 (1989)CrossRefzbMATHGoogle Scholar
  20. 20.
    Miller, C.E., Tucker, A.W., Zemlin, R.A.: Integer programming formulation of traveling salesman problems. J. ACM 7(4), 326–329 (1960)MathSciNetCrossRefzbMATHGoogle Scholar
  21. 21.
    Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G.R.: MiniZinc: towards a standard CP modelling language. In: Bessière, C. (ed.) CP 2007. LNCS, vol. 4741, pp. 529–543. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  22. 22.
    Opturion Pty Ltd. Opturion CPX user’s guide: version 1.0.2 (2013)Google Scholar
  23. 23.
    Refalo, P.: Linear formulation of constraint programming models and hybrid solvers. In: Dechter, R. (ed.) CP 2000. LNCS, vol. 1894, pp. 369–383. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  24. 24.
    Salvagnin, D.: Detecting semantic groups in MIP models. In: Quimper, C.-G., Cavallo, M. (eds.) CPAIOR 2016. LNCS, vol. 9676, pp. 329–341. Springer, Heidelberg (2016). doi: 10.1007/978-3-319-33954-2_24 CrossRefGoogle Scholar
  25. 25.
    Schutt, A., Feydy, T., Stuckey, P.J., Wallace, M.G.: Explaining the cumulative propagator. Constraints 16(3), 250–282 (2011)MathSciNetCrossRefzbMATHGoogle Scholar
  26. 26.
    Schutt, A., Stuckey, P.J., Verden, A.R.: Optimal carpet cutting. In: Lee, J. (ed.) CP 2011. LNCS, vol. 6876, pp. 69–84. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  27. 27.
    Stuckey, P.J., Becket, R., Fischer, J.: Philosophy of the MiniZinc challenge. Constraints 15(3), 307–316 (2010)CrossRefzbMATHGoogle Scholar
  28. 28.
    Stuckey, P.J., Tack, G.: MiniZinc with functions. In: Gomes, C., Sellmann, M. (eds.) CPAIOR 2013. LNCS, vol. 7874, pp. 268–283. Springer, Heidelberg (2013)CrossRefGoogle Scholar

Copyright information

© Springer International Publishing Switzerland 2016

Authors and Affiliations

  • Gleb Belov
    • 1
    Email author
  • Peter J. Stuckey
    • 2
  • Guido Tack
    • 1
  • Mark Wallace
    • 1
  1. 1.Monash UniversityCaulfield EastAustralia
  2. 2.Data61, CSIROUniversity of MelbourneParkvilleAustralia

Personalised recommendations