Procedural code generation vs static expansion in modelling languages for constraint programming

Julien Martin, Thierry Martinez, François Fages

Research output: Chapter in Book/Report/Conference proceedingConference contributionpeer-review

Abstract

To make constraint programming easier to use by the non-programmers, a lot of work has been devoted to the design of front-end modelling languages using logical and algebraic notations instead of programming constructs. The transformation to an executable constraint program can be performed by fundamentally two compilation schemas: either by a static expansion of the model in a flat constraint satisfaction problem (e.g. Zinc, Rules2CP, Essence) or by generation of procedural code (e.g. OPL, Comet). In this paper, we compare both compilation schemas. For this, we consider the rule-based modelling language Rules2CP with its static exansion mechanism and describe with a formal system a new compilation schema which proceeds by generation of procedural code. We analyze the complexity of both compilation schemas, and present some performance figures of both the compilation process and the generated code on a benchmark of scheduling and bin packing problems.

Original languageEnglish
Title of host publicationRecent Advances in Constraints - 14th Annual ERCIM International Workshop on Constraint Solving and Constraint Logic Programming, CSCLP 2009, Revised Selected Papers
Pages38-58
Number of pages21
DOIs
Publication statusPublished - 28 Mar 2011
Event14th Annual ERCIM International Workshop on Constraint Solving and Constraint Logic Programming, CSCLP 2009 - Barcelona, Spain
Duration: 15 Jun 200917 Jun 2009

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume6384 LNAI
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Conference

Conference14th Annual ERCIM International Workshop on Constraint Solving and Constraint Logic Programming, CSCLP 2009
Country/TerritorySpain
CityBarcelona
Period15/06/0917/06/09

Fingerprint

Dive into the research topics of 'Procedural code generation vs static expansion in modelling languages for constraint programming'. Together they form a unique fingerprint.

Cite this