The constraint pattern repository complements two other important libraries related to constraint problems and constraint programming, CSPlib and the global constraint catalog.
CSPlib is an extensive library of constraint problems, which was initially published with the purpose of providing a range of hard and realistic problems that can be used to benchmark algorithms. Some of the problems in the library include example implementations in different modelling languages, such as Essence and MiniZinc. The goal of CSPlib is thus very different to that of the constraint pattern repository, which aims to simplify the modelling process and make high-quality models more easily obtainable. We also take one step further and try to break down the problems by analysing the structure behind them. In doing so, the domainspecific constraint patterns can easily be reused in different application scenarios. Our goal for the constraint pattern library is to eventually cover all problems introduced in the CSPlib library and provide links from patterns to relevant
problems in CSPlib where applicable.
Link to CSPlib
Global Constraint Catalog
The global constraint catalog, on the other hand, is a collection of global constraints. A global constraint is a highlevel modelling abstraction which typically aids the propagation of the constraint solver as many solvers have special, efficient inference algorithms implemented for them. For each global constraint, the global constraint catalog contains its semantic and, when available, typical usage and filtering algorithms. Constraint patterns operate on a higher modelling level compared to global constraints.
Link to the global constraint catalog