Compilation & Apprentissage dans les Réseaux de Contraintes Hervé Cros Directeurs :Frédéric Koriche Joël Quinqueton
Plan Motivations La Compilation de connaissances Le concept Les limites L’approximation Altération de la sémantique Altération de la structure L’apprentissage Le modèle Les expérimentations Conclusion et perspectives
Les réseaux de contraintes Un réseau est composé de : Variables Domaines Contraintes Instance complète, Instance partielle, Solution. X1 X2 X3 X4
Motivations Le problème est NP-Complet Résolutions répétitives Configurations d’ordinateurs de voitures d’appartements …
La compilation 2 phases Baisser la complexité Entité à compiler Question Base Compilée Réponse Phase off-linePhase on-line
Les questions à compiler R ? Existe-t-il une voiture que vous puissiez vendre ? X1 X2 X3 X4 d 1 ={rouge, vert, bleu} d 2 ={ radio, radio+CD, radio+k7, rien} Réseau R requête R’ R (x1=v1 x2=v2 ...) ? Avez-vous une voiture de couleur rouge, avec radio+CD ? R (x 1 d’ 1 x 2 d’ 2 ...) ? Avez-vous une voiture rouge ou verte, avec radio ou radio+CD ? R R’ ? Je voudrais une voiture rouge avec climatisation et un prix inférieur à € sinon une rouge avec toit ouvrant mais alors avec radio+CD.
Les questions à compiler R ? Trivialement compilable R (x 1 = v 1 x 2 = v 2 ...) ? CNQ : non compilable dans le cas général Théorème : CNQ CompP ( 2 = 2 ) R (x 1 d’ 1 x 2 d’ 2 ...) ? Théorème : DR-CNQ CompP ( 2 = 2 ) R R’ ? Théorème : Free-CNQ CompP ( 2 = 2 ) p p p p p p
Les questions à compiler Les instances partielles sont une frontière: Les questions plus simples ne sont pas utiles Les questions plus complexes ne sont pas compilables
L’approximation Une méthode issue de la compilation Borne Sup Borne Inf Base Compilée Réseau de contraintes Question Réponse Phase off-linePhase on-line
Principe de l’approximation Borne Sup Borne Inf Espace des solutions ? Non ? Oui ? ??
Approximation Approximation par la sémantique : Les ZOA Approximation par la structure : Les arbres
Approximation par la sémantique : la classe ZOA Zero One All Bornes Supérieures : une unique Least Upper Bound Bornes Inférieures : de l’ordre de (d!) n² Lower Bound X1X1 X2X2
Approximation par la structure : les arbres La classe des réseaux en arbre Borne Supérieure : Algorithme de construction d’une Least Upper Bound
L’apprentissage Une vision similaire à la compilation Réseau de contraintes Question Base Compilée Réponse Phase off-line Phase on-line Phase d’apprentissagePhase d’exécution Base de connaissances
L’Instance Based Learning Stockage des exemples et contre-exemples Méthode du plus proche voisin Basé sur une notion de distance ?- +?
Différences avec l’IBL 3,*,*,rouge,*,*,* + 5,1,3,rouge,2,5,6 3,1,3,rouge,2,5, ? p Question de type « existe-t-il …». Utilisation du réseau par l’intermédiaire d’oracles 2 systèmes possibles. Oracle Polynomial Oracle Non Polynomial
Expérimentations Paramètre des réseaux aléatoires : 100 variables avec un domaine de 5 valeurs densité du réseau : 0.3 dureté des contraintes : variable Données d’apprentissage : 800 exemples et 400 contre-exemples Test de 400 requêtes aléatoires Tout cela sur 5 réseaux de contraintes
Impact de la taille des instances partielles Forte décroissance. Décalage à gauche de la transition de phase. Collé au flanc gauche.
Temps de réponse des différentes méthodes __ Méthode de référence __ Méthode utilisant les deux oracles __ Méthode n’utilisant que l’oracle polynomial
Impact du biais sur le taux d’erreur Taux d’erreur de la méthode n’utilisant que l’oracle polynomial
Perspectives Etudier l’approximation avec d’autres classes de réseaux de contraintes. Tester l’apprentissage avec des données réelles. Intégrer la révision automatique de connaissances.