High-Level Modelling and Reformulation of Constraint Satisfaction Problems
The modelling process of constraint satisfaction problems as constraint programs requires sophisticated reasoning skills and involves crucial decisions on which variable representations to choose, on which constraint formulation to state, and on which solution methods to employ. Furthermore, the tight interaction between representation, constraint formulation, and solution methods adds another degree of complexity to the modelling task. For instance, the choice of the constraint formulation is strongly affected by the choice of the representation of variables and values, and by the choice of the solution methods. In addition, the performance of solution methods is sensitive to the problem instances. Thus, modelling combinatorial optimisation problems so as to solve them in more efficient ways is a major challenge for constraint programming.