Invited Session Wed.2.H 3003A

Wednesday, 13:15 - 14:45 h, Room: H 3003A

Cluster 5: Constraint programming [...]

Constraint solvers and implementations


Chair: Narendra Jussien



Wednesday, 13:15 - 13:40 h, Room: H 3003A, Talk 1

Christian Schulte
Gecode: An open constraint solving library


Gecode is a widely used toolkit for developing constraint-based systems and applications. Gecode provides a constraint solver with state-of-the-art performance while being modular and extensible. Gecode is: open (documented interfaces support tasks from modeling to implementing new variables, constraints, search engines, … ), free (MIT license), portable (standard C++), accessible (extensive tutorial and reference documentation, efficient (excellent performance, it has won the 2008-2011 MiniZinc challenges in all categories), and parallel (using today's multi-core hardware).
The talk provides an overview of what Gecode is, what one can do with it, and what are the key ideas behind it. The talk will in particular focus on Gecode being radically open and accessible as a consequence of its principled design and the commitment to publish and document Gecode's many contributions to today's state-of-the-art in the design and implementation of constraint solvers.



Wednesday, 13:45 - 14:10 h, Room: H 3003A, Talk 2

Bruno De Backer
Constraint programming and optimization at Google


This talk will present examples of the use of constraint programming and combinatorial optimization at Google.
I will also mention the tools that are being developed and disseminated as open-source software.



Wednesday, 14:15 - 14:40 h, Room: H 3003A, Talk 3

Charles Prud'homme
A DSL for programming propagation engine

Coauthors: RĂ©mi Douence, Narendra Jussien, Xavier Lorca


Constraint propagation is at the heart of constraint solvers. Classically, a variation of the AC3 algorithm (including AC5, AC6, etc.) is implemented. Two main variations co-exist: variable-oriented propagation engines and constraint-oriented propagation engines. Those two approaches ensure the same consistency level (AC) but their efficiency (time computation) can be quite different according to the problem. There is no best approach in general. In this talk, we would like to go a step forward enabling the user to describe her own revision ordering/propagation engine. We first introduce an architecture that allows to naturally and efficiently compose state-of-the-art revision orderings. Next, we show that recent features like propagator groups can be extended in order to accurately configure the revision ordering within the propagation loop. Finally, we propose a domain specific language to allow users design their own propagation engine. We validate our proposal focusing on possible adaptations of a constraint solver to a wide range of problems.


  Most online loan lenders allow getting New Jersey Loans Online without visiting a bank, straight to your bank account. But at the same time, it acts only with sexual arousal. Viagra has a number of advantages in comparison with injections in the sexual organ or other procedures aimed at treatment of impotency.