Chapter

Principles and Practice of Constraint Programming

Volume 8124 of the series Lecture Notes in Computer Science pp 432-447

Globalizing Constraint Models

  • Kevin LeoAffiliated withLancaster UniversityFaculty of IT, Monash University
  • , Christopher MearsAffiliated withLancaster UniversityFaculty of IT, Monash University
  • , Guido TackAffiliated withLancaster UniversityFaculty of IT, Monash UniversityVictoria Laboratory, National ICT Australia (NICTA)
  • , Maria Garcia de la BandaAffiliated withLancaster UniversityFaculty of IT, Monash UniversityVictoria Laboratory, National ICT Australia (NICTA)

* Final gross prices may vary according to local VAT.

Get Access

Abstract

We present a method that, given a constraint model, suggests global constraints to replace parts of it. This helps non-expert users to write higher-level models that are easier to reason about and may result in better solving performance. Our method exploits the structure of the model by considering combinations of the constraints, collections of variables, parameters and loops already present in the model, as well as parameter data from several data files. We assign a score to a candidate global constraint by comparing a sample of its solution space with that of the part of the model it is intended to replace. The top-scoring global constraints are presented to the user through an interactive display, which shows how they could be incorporated into the model. The MiniZinc Globalizer, our implementation of the method for the MiniZinc modelling language, is available on the web.