Thèse soutenue

Passage à l'échelle pour les contraintes d'ordonnancement multi-ressources
FR  |  
EN
Accès à la thèse
Auteur / Autrice : Arnaud Letort
Direction : Nicolas Beldiceanu
Type : Thèse de doctorat
Discipline(s) : Informatique et applications
Date : Soutenance le 28/10/2013
Etablissement(s) : Nantes, Ecole des Mines
Ecole(s) doctorale(s) : Sciences et technologie de l'information et mathématiques
Partenaire(s) de recherche : Laboratoire : Ecole nationale supérieure des Mines de Nantes - INRIA - LINA - TASC - Laboratoire d'Informatique de Nantes Atlantique / LINA - INRIA - LINA - TASC
Jury : Président / Présidente : Claude Jard
Examinateurs / Examinatrices : Eric Pinson, Laurent Perron
Rapporteurs / Rapporteuses : Patrice Boizumault, Philippe Baptiste

Résumé

FR  |  
EN

La programmation par contraintes est une approche régulièrement utilisée pour résoudre des problèmes combinatoires d’origines diverses. Dans cette thèse nous nous focalisons sur les problèmes d’ordonnancement cumulatif. Un problème d’ordonnancement consiste à déterminer les dates de débuts et de fins d’un ensemble de tâches, tout en respectant certaines contraintes de capacité et de précédence. Les contraintes de capacité concernent aussi bien des contraintes cumulatives classiques où l’on restreint la somme des hauteurs des tâches intersectant un instant donné, que des contraintes cumulatives colorées où l’on restreint le nombre maximum de couleurs distinctes prises par les tâches. Un des objectifs récemment identifiés pour la programmation par contraintes est de traiter des problèmes de grandes tailles, habituellement résolus à l’aide d’algorithmes dédiés et de métaheuristiques. Par exemple, l’utilisation croissante de centres de données virtualisés laisse apparaitre des problèmes d’ordonnancement et de placement multi-dimensionnels de plusieurs milliers de tâches. Pour atteindre cet objectif, nous utilisons l’idée de balayage synchronisé considérant simultanément une conjonction de contraintes cumulative et des précédences, ce qui nous permet d’accélérer la convergence au point fixe. De plus, de ces algorithmes de filtrage nous dérivons des procédures gloutonnes qui peuvent être appelées à chaque nœud de l’arbre de recherche pour tenter de trouver plus rapidement une solution au problème. Cette approche permet de traiter des problèmes impliquant plus d’un million de tâches et 64 ressources cumulatives. Ces algorithmes ont été implémentés dans les solveurs de contraintes Choco et SICStus, et évalués sur divers problèmes déplacement et d’ordonnancement.