Fortgeschrittenen Praktikum (FoPra)

Saarland University
Computer Science
Programming Systems



Title: Constraint Programming in Alice. A tutorial. by Dominik Brill

Advisor: Guido Tack

Responsible professor: Gert Smolka

Time frame: July - November 2005


Alice provides an interface to Gecode, a state-of-the-art constraint programming library. Using this interface, hard combinatorial problems can be modelled and solved. Gecode features a comprehensive set of propagators for finite domain and finite set constraints, as well as abstractions for programmable search.
Currently, the Alice documentation contains only an API reference of the propagators in the Gecode library. This project aims at a tutorial-style, step-by-step introduction to constraint programming in Alice.
The tutorial should cover finite domain and finite set constraints, including selection constraints. The Mozart/Oz system comes with extensive documentation on constraint programming:
These documents will serve as a basis for the Alice tutorials. However, an important goal is to give natural Alice formulations of the problems, rather than a literal translation of the Oz code. Further literature on modelling with constraints and advanced topics such as symmetry breaking and redundant constraints should be taken into account. The resulting document will be available in PDF as well as HTML format. In addition to the actual documentation, a document describing the weaknesses and strengths of the Alice/Gecode interface, compared to Mozart/Oz, will be provided.