Thèse soutenue

Parallélisme en programmation par contraintes

FR  |  
EN
Auteur / Autrice : Mohamed Rezgui
Direction : Jean-Charles Régin
Type : Thèse de doctorat
Discipline(s) : Informatique
Date : Soutenance le 08/07/2015
Etablissement(s) : Nice
Ecole(s) doctorale(s) : École doctorale Sciences et technologies de l'information et de la communication (Sophia Antipolis, Alpes-Maritimes)
Partenaire(s) de recherche : Laboratoire : Laboratoire Informatique, signaux et systèmes (Sophia Antipolis, Alpes-Maritimes) - Laboratoire d'Informatique, Signaux, et Systèmes de Sophia-Antipolis (I3S) / Equipe CEP
Jury : Président / Présidente : Michel Rueher
Examinateurs / Examinatrices : Jean-Charles Régin, Michel Rueher, Christophe Lecoutre, Laurent Perron, Xavier Lorca, Arnaud Malapert
Rapporteurs / Rapporteuses : Christophe Lecoutre, Laurent Perron, Xavier Lorca

Résumé

FR  |  
EN

Nous étudions la parallélisation de la procédure de recherche de solution d’un problème en Programmation Par Contraintes (PPC). Après une étude de l’état de l’art, nous présentons une nouvelle méthode, nommée Embarrassingly Parallel Search (EPS). Cette méthode est basée sur la décomposition d’un problème en un très grand nombre de sous-problèmes disjoints qui sont ensuite résolus en parallèle par des unités de calcul avec très peu, voire aucune communication. Le principe d’EPS est d’arriver statistiquement à un équilibrage des temps de résolution de chaque unité de calcul afin d’obtenir une bonne répartition de la charge de travail. EPS s’appuie sur la propriété suivante : la somme des temps de résolution de chacun des sous-problèmes est comparable au temps de résolution du problème en entier. Cette propriété est vérifiée en PPC, ce qui nous permet de disposer d’une méthode simple et efficace en pratique. Dans nos expérimentations, nous nous intéressons à la recherche de toutes les solutions d’un problème en PPC, à prouver qu’un problème n’a pas de solution et à la recherche d’une solution optimale d’un problème d’optimisation. Les résultats montrent que la décomposition doit générer au moins 30 sous-problèmes par unité de calcul pour obtenir des charges de travail par unité de calcul équivalentes. Nous évaluons notre approche sur différentes architectures (machine multi-coeurs, centre de calcul et cloud computing) et montrons qu’elle obtient un gain pratiquement linéaire en fonction du nombre d’unités de calcul. Une comparaison avec les méthodes actuelles telles que le work stealing ou le portfolio montre qu’EPS obtient de meilleurs résultats.