Exploitation de structures de graphe en programmation par contraintes

par Jean-Guillaume Fages

Thèse de doctorat en Informatique et applications

Sous la direction de Nicolas Beldiceanu.

Soutenue le 23-10-2014

à Nantes, Ecole des Mines , dans le cadre de Sciences et Technologies de l'Information et Mathématiques , en partenariat avec Laboratoire d'Informatique de Nantes Atlantique / LINA (laboratoire) , TASC / INRIA - LINA (laboratoire) , Laboratoire d'Informatique de Nantes Atlantique / LINA (laboratoire) et de TASC / INRIA - LINA (laboratoire) .

Le président du jury était Narendra Jussien.

Le jury était composé de Benoît Rottembourg, Christophe Lecoutre, Xavier Lorca.

Les rapporteurs étaient Christine Solnon, Jean-Charles Régin.


  • Résumé

    De nombreuses applications informatiques nécessitent de résoudre des problèmes de décision qui sont difficiles d’un point de vue mathématique. La programmation par contraintes permet de modéliser et résoudre certains de ces problèmes, parfois définis sur des graphes. Au delà des difficultés intrinsèques aux problèmes étudiés, la taille des instances à traiter contribue à la difficulté de la résolution. Cette thèse traite de l’utilisation des graphes en programmation par contraintes, dans le but d’en améliorer la capacité de passage à l’échelle. Une première partie porte sur l’utilisation de contraintes pour résoudre des problèmes de graphes impliquant la recherche d’arbres, de chemins et de cycles Hamiltoniens. Ce sont des problèmes importants que l’on retrouve dans de nombreuses applications industrielles. Nous étudions à la fois le filtrage et les stratégies d’exploration de l’espace de recherche. Nous chercherons ensuite à nous extraire progressivement des problèmes classiquement définis sur les graphes pour exploiter ce concept sur des problèmes définis sur les entiers, voire les réels. Une seconde partie porte ainsi sur l’utilisation des graphes pour le filtrage de contraintes globales très répandues. Nous proposerons entre autres d’utiliser des graphes comme support pour décomposer dynamiquement des algorithmes de filtrage, de manière générique. Le fil conducteur de ces travaux sera d’une part l’utilisation du concept de graphe à la base de chaque raisonnement et d’autre part, la volonté pratique d’augmenter la taille des problèmes pouvant être traités en programmation par contraintes.

  • Titre traduit

    On the use of graphs within constraint-programming


  • Résumé

    Many IT applications require to solve decision problems which are hard from a mathematical point of view. Constraint-programming enables to model and solve some of these problems. Among them, some are defined over graphs. Beyond the difficulty stemming from each of these problems, the size of the instance to solve increases the difficulty of the task. This PhD thesis is about the use of graphs within constraint programming, in order to improve its scalability. First, we study the use of constraint-programming to solve some graph problems involving the computation of trees and Hamiltonian paths and cycles. These problems are important and can be found in many industrial applications. Both filtering and search are investigated. Next, we move on problems which are no longer defined in terms of graph properties. We then study the use of graphs to propagate global constraints. In particular, we suggest a generic schema, relying ona graph structure, to dynamically decompose filtering algorithms. The central theme in this work is the use of graph concepts at the origin of every reasoning and the practical will to increase the size of problems that can be addressed in constraint-programming.


Il est disponible au sein de la bibliothèque de l'établissement de soutenance.

Consulter en bibliothèque

La version de soutenance existe

Où se trouve cette thèse ?

  • Bibliothèque : IMT Atlantique - Campus Nantes. Centre de documentation.
Voir dans le Sudoc, catalogue collectif des bibliothèques de l'enseignement supérieur et de la recherche.