POSL un Langage orienté parallèle pour construire des solveurs de contraintes
Auteur / Autrice : | Alejandro Reyes Amaro |
Direction : | Éric Monfroy, Florian Richoux |
Type : | Thèse de doctorat |
Discipline(s) : | Informatique et applications |
Date : | Soutenance le 23/01/2017 |
Etablissement(s) : | Nantes |
Ecole(s) doctorale(s) : | École doctorale Sciences et technologies de l'information et mathématiques (Nantes) |
Partenaire(s) de recherche : | COMUE : Université Bretagne Loire (2016-2019) |
Laboratoire : Laboratoire des Sciences du Numérique de Nantes | |
Jury : | Président / Présidente : Christophe Lecoutre |
Examinateurs / Examinatrices : Arnaud Lallouet, Frédéric Lardeux | |
Rapporteur / Rapporteuse : Salvador Abreu |
Mots clés
Mots clés contrôlés
Mots clés libres
Résumé
La technologie multi-coeur et les architectures massivement parallèles sont de plus en plus accessibles à tous, à travers des technologies comme le Xeon Phi ou les cartes GPU. Cette stratégie d’architecture a été communément adoptée par les constructeurs pour faire face à la loi de Moore. Or, ces nouvelles architectures impliquent d’autres manières de concevoir et d’implémenter les algorithmes, pour exploiter complètement leur potentiel, en particulier dans le cas des solveurs de contraintes traitant de problèmes d’optimisation combinatoire. De plus, le temps de développement nécessaire pour coder des solveurs en parallèle est souvent sous-estimée, et concevoir des algorithmes efficaces pour résoudre certains problèmes consomme trop de temps. Dans cette thèse nous présentons le langage orienté parallèle POSL, permettant de construire des solveurs de contraintes basés sur des méta-heuristiques qui résolvent des Problèmes de Satisfaction de Contraintes. Le but de ce travail est d’obtenir un système pour facilement construire des solveurs et réduire l’effort de leur développement en proposant un mécanisme de réutilisation de code entre les différents solveurs. Il fournit aussi un mécanisme pour coder des stratégies de communication indépendantes des solveurs. Dans cette thèse, nous présentons aussi une analyse détaillée des résultats obtenus en résolvant plusieurs instances des CSPs. L’idée n’est pas d’améliorer l’état de l’art en terme d’efficacité sur ces instances de CSPs, mais de démontrer qu’il est possible de rapidement écrire des prototypes avec POSL afin d’expérimenter facilement différentes stratégies de communication.