Thèse soutenue

Solveurs de contraintes autonomes

FR  |  
EN
Auteur / Autrice : Hugues Wattez
Direction : Christophe LecoutreFrédéric Koriche
Type : Thèse de doctorat
Discipline(s) : Informatique et applications
Date : Soutenance le 09/12/2021
Etablissement(s) : Artois
Ecole(s) doctorale(s) : École doctorale Sciences, technologie et santé (Amiens)
Partenaire(s) de recherche : Laboratoire : Centre de recherche en informatique (Lens, Pas-de-Calais ; 2008-....)
Jury : Président / Présidente : Marie-José Huguet
Examinateurs / Examinatrices : Christophe Lecoutre, Frédéric Koriche, Marie-José Huguet, Thomas Schiex, Cyril Terrioux, Anastasia Paparrizou, Rémi Bardenet
Rapporteurs / Rapporteuses : Thomas Schiex, Cyril Terrioux

Résumé

FR  |  
EN

La programmation par contraintes s'inscrit dans le paradigme de la programmation déclarative : l'utilisateur modélise le problème et les propriétés du résultat souhaité (sous forme de contraintes) sans se soucier de la partie résolution. La résolution est déléguée à un programme générique appelé solveur de contraintes.Les solveurs de contraintes sont composés de plusieurs mécanismes, issus notamment de l'intelligence artificielle, permettant de guider le solveur dans ses choix (heuristique) et réduire efficacement l'espace de recherche (inférence). Les solveurs de contraintes récents sont composés de plusieurs heuristiques dont le choix spécifique, permettant de résoudre efficacement une instance de problème donnée, est actuellement délégué à l'utilisateur.Cette thèse a pour but de rendre les solveurs de contraintes plus autonomes et, ainsi, soustraire toute charge cognitive à l'utilisateur concernant la résolution de son problème. Au cours de la résolution et tout en subtilisant les mécanismes redémarrant régulièrement la recherche, nous nous concentrons essentiellement sur la sélection automatique de l'heuristique guidant le plus efficacement la recherche.En réponse à ce problème de choix séquentiel, nous nous inspirons des politiques répondant à un problème semblable au nôtre : le problème du bandit multi-bras. Les techniques pour y répondre sont issues de l'apprentissage par renforcement et permettent d'explorer un ensemble d'actions tout en exploitant le plus souvent possible l'action la plus profitable.Équipé de cet outils d'apprentissage automatique, nous proposons plusieurs applications au sein des solveurs de contraintes modernes que nous souhaitons rendre plus autonomes. Dans un premier temps, nous appliquons les politiques proposées dans la bibliographie des bandits multi-bras afin d'apprendre la meilleure heuristique parmi un ensemble fourni par le système de résolution. Suite à ces premières applications, nous proposons une nouvelle politique entrant plus en cohérence avec la structure des solveurs actuels. Toujours par le biais des politiques de bandits, nous proposons une nouvelle technique permettant d'adapter la quantité d'aléa nécessaire afin de perturber une heuristique donnée et la rendre plus efficace. Enfin, nous étendons ces précédents travaux au domaine des solveurs de contraintes sous optimisation.