Skip to main content

MiniZinc: Towards a Standard CP Modelling Language

  • Conference paper
Principles and Practice of Constraint Programming – CP 2007 (CP 2007)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 4741))

Abstract

There is no standard modelling language for constraint programming (CP) problems. Most solvers have their own modelling language. This makes it difficult for modellers to experiment with different solvers for a problem.

In this paper we present MiniZinc, a simple but expressive CP modelling language which is suitable for modelling problems for a range of solvers and provides a reasonable compromise between many design possibilities. Equally importantly, we also propose a low-level solver-input language called FlatZinc, and a straightforward translation from MiniZinc to FlatZinc that preserves all solver-supported global constraints. This lets a solver writer support MiniZinc with a minimum of effort—they only need to provide a simple FlatZinc front-end to their solver, and then combine it with an existing MiniZinc-to-FlatZinc translator. Such a front-end may then serve as a stepping stone towards a full MiniZinc implementation that is more tailored to the particular solver.

A standard language for modelling CP problems will encourage experimentation with and comparisons between different solvers. Although MiniZinc is not perfect—no standard modelling language will be—we believe its simplicity, expressiveness, and ease of implementation make it a practical choice for a standard language.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Schulte, C., Lagerkvist, M., Tack, G.: Gecode, http://www.gecode.org/

  2. Apt, K., Wallace, M.: Constraint Logic Programming using Eclipse. Cambridge University Press, Cambridge (2006)

    Google Scholar 

  3. ILOG: ILOG Solver, http://www.ilog.com/products/solver/

  4. Gent, I.P., Jefferson, C., Miguel, I.: Minion: A fast, scalable constraint solver. In: Proceedings of ECAI 2006, Riva del Garda, Italy (August 2006)

    Google Scholar 

  5. Laburthe, F.: CHOCO: implementing a CP kernel. In: Proceedings of TRICS 2000, Singapore, pp. 71–85 (2000)

    Google Scholar 

  6. Gent, I.P., Walsh, T.: CSPLIB: a benchmark library for constraints. In: Jaffar, J. (ed.) Principles and Practice of Constraint Programming – CP 1999. LNCS, vol. 1713, pp. 480–481. Springer, Heidelberg (1999)

    Google Scholar 

  7. Brand, S., Yap, R.H.: Towards “Propagation = Logic + Control”. In: Etalle, S., Truszczyński, M. (eds.) ICLP 2006. LNCS, vol. 4079, pp. 102–116. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  8. Duck, G., Stuckey, P., Brand, S.: ACD term rewriting. In: Etalle, S., Truszczyński, M. (eds.) ICLP 2006. LNCS, vol. 4079, pp. 117–131. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  9. de la Banda, G.M., Marriott, K., Rafeh, R., Wallace, M.: The modelling language Zinc. In: Benhamou, F. (ed.) CP 2006. LNCS, vol. 4204, pp. 700–705. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  10. Frisch, A.M., Grum, M., Jefferson, C., Hernandez, B.M., Miguel, I.: The design of ESSENCE: A constraint language for specifying combinatorial problems. In: Proceedings of IJCAI 2007, Hyderabad, India (January 2007)

    Google Scholar 

  11. Flener, P., Pearson, J., Ågren, M.: Introducing ESRA, a relational language for modelling combinatorial problems. In: Proceedings of LOPSTR 2003, Uppsala, Sweden, pp. 214–232 (August 2003)

    Google Scholar 

  12. Van Hentenryck, P.: The OPL Optimization Programming Language. MIT Press, Cambridge (1999)

    Google Scholar 

  13. Wallace, M.: Personal communication (January 2007)

    Google Scholar 

  14. van Dongen, M., et al.: Second international CSP solver competition, http://cpai.ucc.ie/06/Competition.html

Download references

Author information

Authors and Affiliations

Authors

Editor information

Christian Bessière

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Nethercote, N., Stuckey, P.J., Becket, R., Brand, S., Duck, G.J., Tack, G. (2007). MiniZinc: Towards a Standard CP Modelling Language. In: Bessière, C. (eds) Principles and Practice of Constraint Programming – CP 2007. CP 2007. Lecture Notes in Computer Science, vol 4741. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-74970-7_38

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-74970-7_38

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-74969-1

  • Online ISBN: 978-3-540-74970-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics