Invited Session Mon.3.H 3003A

Monday, 15:15 - 16:45 h, Room: H 3003A

Cluster 5: Constraint programming [...]

Constraint programming standard and industrial applications


Chair: Narendra Jussien



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

Roberto Castaneda Lozano
Robust code generation using constraint programming

Coauthors: Mats Carlsson, Frej Drejhammar, Christian Schulte


Code generation in a compiler transforms an intermediate program
representation into assembly code for a particular
architecture. It has tremendous impact on the resulting code:
optimal assembly code can be several times more efficient than
naive assembly code. However, optimization techniques are
typically not used for code generation as they are considered as
non-scalable. Instead, traditional optimizing compilers
compromise code quality by addressing code generation with
heuristic algorithms and phase decomposition.
Two central phases in code generation are instruction scheduling
and register allocation which are strongly interdependent. In
this presentation, we introduce combinatorial models that
naturally capture both phases. These models are easier to analyze
and reuse than traditional heuristic algorithms. Then, we present
an integrated model that captures the dependencies between phases
and hence enables the generation of possibly optimal
code. Finally, we illustrate why constraint programming with
features such as flexible search and global constraints is a good
candidate for robustly solving code generation problems.



Monday, 15:45 - 16:10 h, Room: H 3003A, Talk 2

Narendra Jussien
JSR331 - Standard for Java constraint programming API

Coauthor: Jacob Feldman


JSR331 is a standard for Java Constraint Programming API that was initiated in August-2009 and had been approved by the Java Community Process ( Executive Committee in February-2012. In this presentation we will describe the major concepts currently covered by the JSR331 and will provide examples of well-known constraint satisfaction and optimization problems implemented using the standard. We will demonstrate how a user may switch between different implementations of the JSR331 without any changes in the problem representation. We will share the JSR331 implementation experience and will discuss the future directions of the standardization process.



Monday, 16:15 - 16:40 h, Room: H 3003A, Talk 3

Abder Aggoun
Modelling and solving a class of combinatorial problems in supply chain using the Choco constraint programming system

Coauthors: Raphaƫl Martin, Ahmed Rhiat


KLS OPTIM is an SME specialist in Logistic Optimization offering a complete suite of solutions. The main problems addressed are packing,
pallet loading, optimization in distribution by minimizing the number of pallets, optimization of vehicle loading plans, optimization of assignment of containers in wagons, decision making applications. Most of the problems are known in the literature as bin packing problems. KLS OPTIM developed a set of dedicated business solvers.
OptimPallet is powered by a 3D solver which consists of packing boxes of various sizes into available pallets in a way which optimizes the total number of pallets.
OptimTruck proposes an optimal loading plan for each vehicle of the fleet company.
OptimTrain deals with the operational planning of trains. The objective is to minimize the number of wagons while placing the maximum number of containers.
The CP Engine Choco is a key component for modeling and solving packing problems.
Rules2CP is a rule-based language compiler developed at INRIA. It makes possible to model packing rules into a concise formalism which is automatically translated into Choco programs.


  There are three major facts that should be watched out for in all payday loans in the United States. Therefore, we can say that the active substances in its composition are more perfectly mixed. Vardenafil is not only present in the original Levitra, but also as part of its analogs.