Model-driven constraint programming

Constraint programming can definitely be seen as a model-driven paradigm. The users write programs for modeling problems. These programs are mapped to executable models to calculate the solutions. This paper focuses on efficient model management (definition and transformation). From this point of view, we propose to revisit the design of constraint-programming systems. A model-driven architecture is introduced to map solving-independent constraint models to solving-dependent decision models. Several important questions are examined, such as the need for a visual highlevel modeling language, and the quality of metamodeling techniques to implement the transformations. A main result is the s-COMMA platform that efficiently implements the chain from modeling to solving constraint problems

[1]  Frédéric Jouault,et al.  Transforming Models with ATL , 2005, MoDELS.

[2]  Jean Bézivin,et al.  Model-based DSL frameworks , 2006, OOPSLA '06.

[3]  Ricardo Soto,et al.  The Design of COMMA: An Extensible Framework for Mapping Constrained Objects to Native Solver Models , 2007, 19th IEEE International Conference on Tools with Artificial Intelligence(ICTAI 2007).

[4]  Jean Bézivin,et al.  KM3: A DSL for Metamodel Specification , 2006, FMOODS.

[5]  Martin Gogolla,et al.  Object Constraint Language , 2009, Encyclopedia of Database Systems.

[6]  Peter J. Stuckey,et al.  Flexible, Rule-Based Constraint Model Linearisation , 2008, PADL.

[7]  Paliath Narendran Book review: Term Rewriting and all that by Franz Baader and Tobias Nipkow (Cambridge Univ . Press, 313 pages) , 2000, SIGA.

[8]  Ian Miguel,et al.  The Rules of Constraint Modelling , 2005, IJCAI.

[9]  Jean Bézivin,et al.  TCS:: a DSL for the specification of textual concrete syntaxes in model engineering , 2006, GPCE '06.

[10]  Frédéric Benhamou,et al.  Algorithm 852: RealPaver: an interval solver using constraint satisfaction techniques , 2006, TOMS.

[11]  Philippe Codognet,et al.  The GNU Prolog system and its implementation , 2000, SAC '00.

[12]  Peter J. Stuckey,et al.  MiniZinc: Towards a Standard CP Modelling Language , 2007, CP.

[13]  Jean-francois Puget,et al.  A C++ implementation of CLP , 1997 .

[14]  Thom W. Frühwirth,et al.  Theory and Practice of Constraint Handling Rules , 1998, J. Log. Program..

[15]  Nicolas Beldiceanu,et al.  Constraint Logic Programming , 1997 .

[16]  Peter Fritzson,et al.  Modelica - A Unified Object-Oriented Language for System Modelling and Simulation , 1998, ECOOP.

[17]  Bharat Jayaraman,et al.  Modeling Engineering Structures with Constrained Objects , 2002, PADL.

[18]  Ian P. Gent,et al.  Minion: A Fast Scalable Constraint Solver , 2006, ECAI.

[19]  Kim Marriott,et al.  From Zinc to Design Model , 2007, PADL.

[20]  Alexander Brodsky,et al.  CoJava: Optimization Modeling by Nondeterministic Simulation , 2006, CP.

[21]  J. Meigs,et al.  WHO Technical Report , 1954, The Yale Journal of Biology and Medicine.

[22]  Alan Borning,et al.  The Programming Language Aspects of ThingLab, a Constraint-Oriented Simulation Laboratory , 1981, TOPL.

[23]  Massimo Paltrinieri A Visual Constraint-Programming Environment , 1995, CP.

[24]  Chang Liu,et al.  Term rewriting and all that , 2000, SOEN.

[25]  Axel Uhl,et al.  Model-Driven Architecture , 2002, OOIS Workshops.

[26]  Warwick Harvey,et al.  Essence: A constraint language for specifying combinatorial problems , 2007, Constraints.