Des réseaux de contraintes valuées aux
problèmes de décision séquentielle
Thomas SchiexINRA – Toulouse
France
Cédric PraletONERA - ToulouseFrance
Javier LarrosaUPC - Barcelone
Juillet 2007 IA Fondamentale – GDR I3 2
Plan (partie 1)
1. Formalisme VCSP Générique, instances, usages
2. Algorithmes pour les VCSP Recherche complète et incomplète Inférence complète et incomplète
3. Complexité, classes polynomiales
Juillet 2007 IA Fondamentale – GDR I3 3
Réseaux de contraintes, SAT : Problèmes de décision (booléens) définis par un ensemble de relations locales (contraintes, clauses).
Réseaux valués : Ajout de préférences, incertitudes définies par des fonctions locales => optimisation...
Pourquoi les VCSP ?
Juillet 2007 IA Fondamentale – GDR I3 4
Exemple
Affectation de fréquences
Un réseau de télécommunication sans fil
Sous contraintes techniques …trouver pour chaque lien la
meilleure fréquence possible.
Meilleure peut être : Qui minimise la fréquence maximum (max) Qui minimise les interférences entre paires
de liens (somme)
Juillet 2007 IA Fondamentale – GDR I3 5
Exemple
Traitement de réseaux d’informations probabiliste (produit), possibiliste (max)…
Une distribution jointe définie par un GOSC (DAG) de plausibilités conditionnelles
Des observations (contraintes) …trouver l’explication la plus
plausible des observations (max-produit, min-max)
Génétique, image, signal (champs markoviens, graphes de facteurs)
Réseaux de contraintes…
Valuées PondéréesSemi-anneau Flou
Probabiliste
Juillet 2007 IA Fondamentale – GDR I3 7
Réseau de fonctions de coûts
(X,D,C) X={x1,..., xn} variables D={D1,..., Dn} domaines finis C={f,...} fonctions de coût locales
fS, fij, fi f∅ portée S,{xi,xj},{xi}, ∅ fS(t): E (ordonné par ≼, T≼ )
Fonction jointe: F(X)= fS (X[S]) Solution: F(t) T Requête: Minimiser la fonction jointe
neutre
• commutatif• associatif• monotone
absorbant
Juillet 2007 IA Fondamentale – GDR I3 8
Exemple CSP classique (3-coloriage)
x3
x2
x5
x1 x4
Pour chaque arête(contrainte)
xi xj f(xi,xj
)
b b T
b g
b r
g b
g g T
g r
r b
r g
r r T
Juillet 2007 IA Fondamentale – GDR I3 9
Réseau pondéré (WCSP, = +)
x3
x2
x5
x1 x4
F(X): nombre de sommets qui ne sont pas bleus
Pour chaque sommetxi f(xi
)
b 0
g 1
r 1
Juillet 2007 IA Fondamentale – GDR I3 10
Structures de coûts et formalismes
booléen{,T}
Totalementordonné
Semi-anneau
Valuésidempotent
multicritère
treillis
mul
tiple
Juillet 2007 IA Fondamentale – GDR I3 11
Idempotence
a a = a (pour tout a)
Si fS dominée par la fonction jointe de (X,D,C)
(X,D,C) ≡ (X,D,C{fS}) Contraintes: = et Possibilistes: = max …
Recherche systématique
Branch & bound(s)Séparation et évaluation
Juillet 2007 IA Fondamentale – GDR I3 13
I - Affectation (conditioning)
xi xj f(xi,xj
)
b b T
b g 0
b r 3
g b 0
g g T
g r 0
r b 0
r g 0
r r T
f[xi=b]
xj
b T
g 0
r 3g(xj)
g[xj=r]
0
3h
Juillet 2007 IA Fondamentale – GDR I3 14
Recherche systématique
(LB) Minorant
(UB) Majorant
Si alors couper
vari
ab
les
Sous estimation de la meilleure solution dans le
sous-arbre
= meilleure solution connue
Chaque nœud est un sous-problème VCSP
LBf
= f
= T
UBT
Recherche incomplète (locale)
Rien de vraiment spécifique
Inférence complète
Elimination de variable (bucket elimination)Programmation dynamique (non sérielle)
Juillet 2007 IA Fondamentale – GDR I3 17
II - Combinaison (avec , + ici)
xi xj f(xi,xj
)
b b 6
b g 0
g b 0
g g 6
xj xk g(xj,x
k)
b b 6
b g 0
g b 0
g g 6
xi xj xk h(xi,xj,xk
)
b b b 12
b b g 6
b g b 0
b g g 6
g b b 6
g b g 0
g g b 6
g g g 12
= 0 6
Juillet 2007 IA Fondamentale – GDR I3 18
III - Projection (élimination avec Min
ici)
xi xj f(xi,xj
)
b b 4
b g 6
b r 0
g b 2
g g 6
g r 3
r b 1
r g 0
r r 6
f[xi] xi g(xi)
b
g
r
0
0
2
g[]h
0
Min
Juillet 2007 IA Fondamentale – GDR I3 19
Propriétés
Remplacer deux fonctions par leur combinaison ne change pas le problème
Si fS est la seule fonction impliquant x, remplacer f par f[S-{x}] préserve l’optimum
Juillet 2007 IA Fondamentale – GDR I3 20
Elimination d’une variable
1. Choisir une variable2. Combiner les fonctions qui l’implique3. Eliminer la variable par projection
•Complexité Temps: (exp(deg+1))
Espace: (exp(deg))
Juillet 2007 IA Fondamentale – GDR I3 21
Elimination de variables (bucket elimination)
Eliminer les variables une par une. Quand toutes sont éliminées, le
problème est résolu Les solutions optimales peuvent être
retrouvées
• Complexité: exponentielle en la largeur d’arbre•(treewidth, k-tree number, induced width, dimension…)
•Dépend de l’ordre d’élimination
Juillet 2007 IA Fondamentale – GDR I3 22
SAT: résolution direct. (Davis & Putnam, 60) RO: Pr. dyn. non sérielle (Bertelé Brioschi,
72) SGBD: BD acyclique (Beeri et al 1983) Réseaux bayésiens: Belief propagation,
Join-tree (Pearl 88, Lauritzen et Spiegelhalter 88) CSP: cohérence adapt… (Dechter & Pearl 88) Algébrisée (Shenoy et Shafer 91, Bistarelli et al.
95, GDL 2000)
Histoire / terminologie
Inférence incomplète
Cohérence locale, filtrage, propagation
Juillet 2007 IA Fondamentale – GDR I3 24
le coût optimal
Inférence incomplète
Compromis espace/temps - complétude
Limiter l’inférence à la production de certaines classes de fonctions de coûts
En espace/temps polynomial
Cohérences locales: noeud, arc… Produire un problème équivalent Produire un minorant sur
la cohérence
Juillet 2007 IA Fondamentale – GDR I3 25
Cohérence d’arc classique
Un CSP est AC ssi xi, cij,
(cij ⋈ cj)[xi] n’apporte pas d’information sur xi
w
v v
w
i j
T
T
xi xj cij
v v v w w v T
w w T
xi c(xi)
v w T
cij ⋈ cj
(cij ⋈ cj)[xi]
Juillet 2007 IA Fondamentale – GDR I3 26
Extension « naïve » au cas valué
w
v v
w
0
0
0
0
i j
2
1
xi xj fij
v v 0
v w 0
w v 2
w w 1
Xi f(xi)
v 0
w 1
fij fj
1
Toujours équivalent ssi est idempotent
Pour tout xi et fij
f=(fij fj)[xi] n’apporte pas d’information sur xi
(fij fj)[xi]
SINONEQUIVALENCE PERDUE
Juillet 2007 IA Fondamentale – GDR I3 27
Combinaison+Projection+Soustraction: « Equivalence Preserving Transformation »
IV – Soustraction de fonctions de coûts
2
w
v v
w
0
0
0
i j1
01
1
Juillet 2007 IA Fondamentale – GDR I3 28
Production de minorants non naïfs
w
0
1
yx
v
w
0
0
v1
f = 0 1
1
1
1
Juillet 2007 IA Fondamentale – GDR I3 29
Confluence perdue
La recherche d’un point-fixe qui maximise f
est NP-difficile (2004).
Il est possible de faire mieux en temps polynomial (OSAC, 2007)
w
0
1
yx
v
w
0
0
v
f = 0 1
1
1
1
Juillet 2007 IA Fondamentale – GDR I3 30
Hierarchie
NC* O(nd)
AC* O(n 2d 3) DAC* O(ed 2)
FDAC* O(end 3)AC
NC
DAC
Cas CSP classique (Top=1)
EDAC* O(ed2 max{nd,T})
OSAC* (Prog. Linéaire)
Juillet 2007 IA Fondamentale – GDR I3 31
BT
MNC
MAC/MDAC
MFDAC
MEDAC
Juillet 2007 IA Fondamentale – GDR I3 32
Accélérer la recherche systématique par cohérence locale
Affectation de fréquence CELAR6-sub4 (22 var, 44 val, 477 cost func):
MNC*1 an estimé MFDAC* 1 heure
CELAR6 (100 var, 44 val, 1322 cost func):
MEDAC+ structure 3 heures (toolbar-BTD)
Complexité, classes polynomiales
Arbres, largeur d’arbre bornéeIdempotent ou non…
Juillet 2007 IA Fondamentale – GDR I3 34
Classes polynomialesRéseaux min-max (possibilistes/flous)
Les -coupes permettent de généraliser les classes pol. classiques Il suffit que la classe polynomiale soit
conservée par -coupe
CSP temporel simple (avec des 1-intervalles de temps) : xi-xj∊[aij,bij]
STCN flous: pol. si toute coupe des fonctions de coût est un 1-intervalle (semi-convexe)
Juillet 2007 IA Fondamentale – GDR I3 35
Cas additif(weighted/boolean)
MaxSat est MAXSNP complet (pas de PTAS) Langages pol. totalement caractérisés
pour MaxSAT (Creignou 2001)
MaxCSP: (x = y) ? 0 : 1 est NP-dur Fonctions sous-modulaires: polynomial
(OSAC)(u ≤ x, v ≤ y f(u,v)+f(x,y) ≤ f(u,y)+f(x,v)) (Cohen
et al.)
Juillet 2007 IA Fondamentale – GDR I3 36
Librairies Open sourceToolbar & Toulbar2
Accessible depuis le wiki Soft :
carlit.toulouse.inra.fr/cgi-bin/awki.cgi/SoftCSP Alg: BE-
VE,MNC,MAC,MDAC,MFDAC,MEDAC,MPIC,BTD Connexion ILOG solver, large
domaines/problèmes… Formats MaxCSP/SAT (pondérés) et ERGO (BN) Des milliers de benchmarks, format documenté Pointeurs vers d’autres outils (MaxSAT/CSP) Forge mulcyber.toulouse.inra.fr/projects/toolbar (toulbar2)
Pwd: bia31
Juillet 2007 IA Fondamentale – GDR I3 37
Plus sur le sujet…
Handbook of Constraint Programming
Elsevier978 pages, Août 2006
Juillet 2007 IA Fondamentale – GDR I3 38
Un point
Beaucoup reste à faire Techniques: symétries, apprentissage,
compilation… Algorithmes: meilleurs minorants, nouvelles
cohérences locales, dominance, fonctions de coûts globales, structure du problème.
Implémentation: intégration avec les outils classiques (Choco, Solver, Minion…)
Applications: modélisation, résolution, heuristiques (guider), résolution incomplète...
Extension: à d’autres problèmes que l’optimisation (compter, quantifier…)
Juillet 2007 IA Fondamentale – GDR I3 39
Changement
Min
CombinaisonProjection/Elimination
Juillet 2007 IA Fondamentale – GDR I3 40
Discussion
WCSP et CSP Un WCSP peut se modéliser comme un
CSP
Une fonction de coût fS
Une nouvelle variable xf
Une contrainte Rf xf= fS(…)
Pourquoi s’intéresser aux WCSP ?
Juillet 2007 IA Fondamentale – GDR I3 41
Discussion
Les modèles « graphiques » omniprésents?
IAF (SAT, CSP, BN…) Planification / Décision séquentielle Analyse d’image (Champs Markov) Théorie du signal (Factor graphs) Statistique, machine learning Modélisation de systèmes complexes
Un modèle fédérateur ?
Juillet 2007 IA Fondamentale – GDR I3 42
Discussion
Si les modèles graphiques le permettent
N’y a-t-il pas un intérêt scientifique à fédérer les formalismes, propriétés, algorithmes ?
Comment peut-on faire ? Sans s’éloigner des objectifs (applications) de chacun d’eux.
Cela est-il incompatible avec le « Publish or Perish » ?
Juillet 2007 IA Fondamentale – GDR I3 43
Discussion
IA fondamentale et mise en oeuvre:
Ne faut-il pas dédier une partie plus importante des efforts de l’IAF à la résolution jusqu’au boutiste de problèmes « pratiques » ?
Incohérent avec le côté fondamental ?
Quels problèmes ? Visibilité ?
Juillet 2007 IA Fondamentale – GDR I3 44
Des références S.M. Aji, R.J. McEliece. The Generalized Distributive Law. IEEE Trans. Inform.
Theory, 46(2). Mars 2000, pages 325-343. S. Bistarelli, U. Montanari and F. Rossi, Semiring-based Constraint
Satisfaction and Optimization, Journal of ACM, vol.44, n.2, pp. 201-236, March 1997.
S. Bistarelli, H. Fargier, U. Montanari, F. Rossi, T. Schiex, G. Verfaillie. Semiring-Based CSPs and Valued CSPs: Frameworks, Properties, and Comparison. CONSTRAINTS, Vol.4, N.3, September 1999.
S. Bistarelli, R. Gennari, F. Rossi. Constraint Propagation for Soft Constraint Satisfaction Problems: Generalization and Termination Conditions , in Proc. CP 2000
C. Blum and A. Roli. Metaheuristics in combinatorial optimization: Overview and conceptual comparison. ACM Computing Surveys, 35(3):268-308, 2003.
T. Schiex, Arc consistency for soft constraints, in Proc. CP’2000. M. Cooper, T. Schiex. Arc consistency for soft constraints, Artificial
Intelligence, Volume 154 (1-2), 199-227 2004. M. Cooper. Reduction Operations in fuzzy or valued constraint satisfaction
problems. Fuzzy Sets and Systems 134 (3) 2003. A. Darwiche. Recursive Conditioning. Artificial Intelligence. Vol 125, No 1-2,
pages 5-41. R. Dechter. Bucket Elimination: A unifying framework for Reasoning.
Artificial Intelligence, October, 1999. R. Dechter, Mini-Buckets: A General Scheme For Generating Approximations
In Automated Reasoning In Proc. Of IJCAI97
Juillet 2007 IA Fondamentale – GDR I3 45
References
S. de Givry, F. Heras, J. Larrosa & M. Zytnicki. Existential arc consistency: getting closer to full arc consistency in weighted CSPs. In IJCAI 2005.
W.-J. van Hoeve, G. Pesant and L.-M. Rousseau. On Global Warming: Flow-Based Soft Global Constraints. Journal of Heuristics 12(4-5), pp. 347-373, 2006.
P. Jégou & C. Terrioux. Hybrid backtracking bounded by tree-decomposition of constraint networks. Artif. Intell. 146(1): 43-75 (2003)
F.R. Kschischang, B.J.Frey, H-A Loeliger. Factor Graphs and the Sum-Product Algorithm. IEEE Trans. Inf. Theory. 47(2), Février 2001. pages 498-519.
J. Larrosa & T. Schiex. Solving Weighted CSP by Maintaining Arc Consistency. Artificial Intelligence. 159 (1-2): 1-26, 2004.
J. Larrosa and T. Schiex. In the quest of the best form of local consistency for Weighted CSP, Proc. of IJCAI'03
J. Larrosa, P. Meseguer, T. Schiex Maintaining Reversible DAC for MAX-CSP. Artificial Intelligence.107(1), pp. 149-163.
R. Marinescu and R. Dechter. AND/OR Branch-and-Bound for Graphical Models. In proceedings of IJCAI'2005.
J.C. Regin, T. Petit, C. Bessiere and J.F. Puget. An original constraint based approach for solving over constrained problems. In Proc. CP'2000.
T. Schiex, H. Fargier et G. Verfaillie. Valued Constraint Satisfaction Problems: hard and easy problems In Proc. of IJCAI 95.
G. Shafer, P. Shenoy. Local computations in hyper-trees. Working paper 201. Juillet 1991.
G. Verfaillie, M. Lemaitre et T. Schiex. Russian Doll Search Proc. of AAAI'96.
Juillet 2007 IA Fondamentale – GDR I3 46
References (SAT)
M. Bonet, J. Levy and F. Manya. A complete calculus for max-sat. In SAT 2006.
M. Davis & H. Putnam. A computation procedure for quantification theory. In JACM 3 (7) 1960.
I. Rish and R. Dechter. Resolution versus Search: Two Strategies for SAT. In Journal of Automated Reasoning, 24 (1-2), 2000.
F. Heras & J. Larrosa. New Inference Rules for Efficient Max-SAT Solving. In AAAI 2006.
J. Larrosa, F. Heras. Resolution in Max-SAT and its relation to local consistency in weighted CSPs. In IJCAI 2005.
C.M. Li, F. Manya and J. Planes. Improved branch and bound algorithms for max-sat. In AAAI 2006.
H. Shen and H. Zhang. Study of lower bounds for max-2-sat. In proc. of AAAI 2004.
Z. Xing and W. Zhang. MaxSolver: An efficient exact algorithm for (weighted) maximum satisfiability. Artificial Intelligence 164 (1-2) 2005.