Members
Overall Objectives
Research Program
Application Domains
Software and Platforms
New Results
Bilateral Contracts and Grants with Industry
Partnerships and Cooperations
Dissemination
Bibliography
XML PDF e-pub
PDF e-Pub


Section: Overall Objectives

Objectives of the team

Origin and Current Situation

Constraint programming emerges in the eighties and develops at the intersection of Artificial Intelligence and Operations Research, of Computer Science and Mathematics. Multidisciplinary by nature it keeps on using knowledge from various topics such as discrete mathematics, theoretical computer science (graph theory, combinatorics, algorithmic, complexity), functional analysis and optimization, IT and software engineering. Constraint programming was identified in 1996 by the ACM as a strategic topic for Computer Science. The turn of the century has seen the development of optimization technology in the industry (with notably Ilog, IBM, Dash and more recently Microsoft, http://code.msdn.microsoft.com/solverfoundation , Google and Dynadec) and the corresponding scientific field, at the border of Constraint Programming, Mathematical Programming, Local Search and Numerical Analysis. Optimisation technology is now assisting public sector, companies and people to some extent for making decisions that use resources better and match specific requirements in an increasingly complex world. Indeed, computer aided decision and optimization is becoming one of the cornerstones for providing assistance to all kinds of human activities.

Today, with the preeminence of optimization technology in most industrial sectors, we argue that quick and ad hoc solutions, often used today, cannot support the long-term development of optimization technology and its broad diffusion. We also argue that there should be a much more direct link between mathematical results and their systematic reuse in the main fields of optimization technology.

General Challenges

In spite of its importance, computer aided decision and optimization suffers from a number of fundamental weaknesses that prevent from taking advantage of its full potential and hinder its progress and its capacity to deal with more and more complex situations. This can be mostly blamed on the diversity of actors, which are:

Thus, a first challenge encountered by constraint programming is the design of computer systems implementing in a transparent way effective solving techniques.

A second challenge resides in the speed of resolution especially in the context of large-scale data. One has to adapt techniques such as generic consistency algorithms, graph algorithms, mathematical programming, meta-heuristics and to integrate them within the framework of constraint programming. This integration generates new questions such as the design of incremental algorithms, the automatic decomposition or the automatic reformulation of problems.

Finally a third challenge deals with the use of constraint programming in the context of complex industrial problems, especially when both discrete and continuous aspects are present. Complexity has multiple causes such as: