SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 1
Programmation par Contraintes
Distribuée
Kim BENNI Philippe MORIGNOT
Université Paris VI AXLOG Ingéniérie
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 2
…
1
N
Intuition
N
1
1
?
1
N
<
1
…
1
N
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 3
Contexte
• Programmation par contraintes.
• Formellement, soit :
– Xi des variables
– Di des domaines discrets (e.g., à valeurs entières)
– Cj des relations n-aires entre les variables Xi
• Problème :
– trouver une valeur dans chaque Di pour chaque variable
Xi, qui satisfasse toutes les contraintes Cj.
– … avec une fonction à minimiser.
• Exemple : )min(et],10,1[],10,1[ yxyxyx +<∈∈
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 4
Approche : estimateur [Knuth 75]
• Convergence vers la valeur exacte (Monte Carlo)
• Complexité polynomiale
• Valeurs estimées : profondeur, nombre de solutions, nombre de
nœuds
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 5
*330 sous-noeuds
*16 niveaux
*74 solutions
Densité de solution = 0.224
*52 sous-noeuds
*10 niveaux
*18 solutions
Densité de solution = 0.346
1 2
Densité = 0,5 Densité = 0,263
Densité = 0, 389
Approche : découpage (1/2)
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 6
Approche : découpage (2/2)
• Problème : rechercher une liste de nœuds.
• Contraintes :
– Tous les nœuds de la liste doivent être distincts.
– L’ensemble des nœuds terminaux doit être inclus dans
l’ensemble des nœuds des sous-arbres déterminés par les
nœuds de la liste.
– Si un nœud est dans la liste, aucun de ses descendants n’y
est.
• Minimiser l’écart de taille, maximiser l’écart de
densité de solutions --- entre les sous-arbres.
Programmation par contraintes.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 7
Approche : communication
• Asynchrone.
• Quand un agent trouve une solution, il envoie
son coût (et sa solution) aux autres agents.
– Élagage des solutions de coût supérieur pour les
autres agents.
– Tolérance aux pannes (mort d’un agent).
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 8
Implémentation
• Langage Oz
• Environnement Mozart
• ~ 4000 lignes de code
fun {Queens N}
proc {$ Row}
L1N = {List.number 1 N 1}
LM1N = {List.number ~1 ~N ~1}
in
Row = {FD.tuple queens N 1#N}
{FD.distinct Row}
{FD.distinctOffset Row L1N}
{FD.distinctOffset Row LM1N}
{FD.distribute ff Row}
end
end
end
Exemple de code source OZ
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 9
Méthodologie : exemples
• N-Reines :
• Fugue de J.–S. Bach :
• La taille du contre-sujet est égale au sujet.
• L’intervalle est d’un octave au maximum par rapport à la tonalité du sujet.
• Les notes du contre-sujet sont exclusivement des noires, des blanches ou des croches.
• Il ne doit jamais y avoir de notes à l’unisson entre le sujet et le contre-sujet.
• Il ne doit jamais y avoir de notes formant une quinte entre le sujet et le contre-sujet.
• Le contre-sujet ne peut comporter que des notes faisant partie de la gamme utilisée par le sujet.
• Une dominante du contre-sujet ne peut pas être précédée par une note qui est 7, 9 ou 11 demi-
tons plus basse.
• La réponse est constituée des notes du sujet majoré de 7 demi-tons.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 10
Méthodologie : mesures
• 1 processus :
– Branch & Bound
• Multi-processus :
– Découpage « naïf »
Estimation Découpage Résolution A1
Résolution A2
Résolution A3
Tm
Estimation Découpage Résolution A1 Résolution A2 Résolution A3
TrTe Td
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 11
Découpage « naïf » (1/2) [Gorge & Morignot 05]
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 12
Découpage « naïf » (2/2)
0
1000
2000
3000
4000
5000
6000
0 0,2 0,4 0,6 0,8 1 1,2
Inverse du nombre d'agents
Tempsmispourlarésolutiondu
problèmedes15reines
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 13
Résultats expérimentaux (1/6)
r
de
T
TT +
N-reines, 1 processus.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 14
Résultats expérimentaux (2/6)
BBr
r
T
T
&
N-reines, 1 processus.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 15
Résultats expérimentaux (3/6)
BBt
t
T
T
&
N-reines, 1 processus.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 16
Résultats expérimentaux (4/6)
Naïfm
m
T
T
Fugue, multi-processus.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 17
Résultats expérimentaux (5/6)
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 18
Résultats expérimentaux (6/6)
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 19
Application : drônes intelligents
•Stand-alone UCAV
•Recce UCAVs
•Strike UCAVs
F.E.B.A.
Pop-up threat area
Attack
Split
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 20
Application : modèle (sketch)
',''
,
,,
11
1,,
,
,
kkkkkk
nkkk
kk
k
i j
njni
xXXpp
tiank
pak
pvun
⊕=⇒=∧=
=⇒=∀∀
≤∀
==∀ ∑ ∑
aiu , ajv ,
max(probabilité de survie, probabilité de destruction)
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 21
Conclusion
• Estimateur stochastique + découpage + résolutions
séparées avec communication.
• Complétude.
• Attention au temps de découpage → grands
problèmes.
• Jusqu’à 30% plus rapide qu’une approche distribuée
« naïve » (en 1/N).
• Travaux futurs :
– Multi-processus réel → temps de communication.
– Comparaison avec un découpeur aléatoire ?
– Communication entre agents dès que le coût diminue.
K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 22
Références
• A. Gorge, P. Morignot. Une corrélation en programmation
par contraintes distribuée. Rapport Technique AXLOG,
Arcueil, juin 2005, 10 pages. Soumis à RFIA’06.
• P. J. Modi, W. Shen, M. Tambe, M. Yokoo. ADOPT:
Asynchronous distributed constraint optimization with quality
guarantees. Artificial Intelligence, 161, pages 149-180, 2005.
• N. Prcovic, B. Neveu, P. Berlandier. Distribution de l’arbre de
recherche des problèmes de satisfaction de contraintes en
domaines finis. In Actes de la Deuxième Conférence Nationale
sur la Résolution de Problèmes NP-Complets (CNPC’96), août
1996.

Mais conteúdo relacionado

Destaque

ORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNO
ORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNOORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNO
ORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNOcmpardo
 
Fing - Plan d'action 2015
Fing - Plan d'action 2015Fing - Plan d'action 2015
Fing - Plan d'action 2015Fing
 
Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?
Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?
Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?Rémi VINCENT
 
Denis Gaucher (Kantar Media Advertising Intelligence) - Brand safety, transp...
Denis Gaucher (Kantar Media Advertising Intelligence) -  Brand safety, transp...Denis Gaucher (Kantar Media Advertising Intelligence) -  Brand safety, transp...
Denis Gaucher (Kantar Media Advertising Intelligence) - Brand safety, transp...Viuz
 
Windows Server2008 R2 Overview
Windows Server2008 R2 OverviewWindows Server2008 R2 Overview
Windows Server2008 R2 OverviewPablo Campos
 
Bebes fabricados con mazapan
Bebes fabricados con mazapanBebes fabricados con mazapan
Bebes fabricados con mazapancentrowebs
 
Pub Med Apprentissage 2011
Pub Med Apprentissage 2011Pub Med Apprentissage 2011
Pub Med Apprentissage 2011David BENOIST
 
Shibo Et Wen
Shibo Et WenShibo Et Wen
Shibo Et Wenzhymonica
 
14 sur - número 4
14 sur - número 414 sur - número 4
14 sur - número 4ale_maynard
 
El Telefono
El TelefonoEl Telefono
El Telefonopirata70
 
Revuepresse2
Revuepresse2Revuepresse2
Revuepresse2ramondiaz
 
Microsoft Tech Days 2010 Table ronde sur Agilité Scrum Xp
Microsoft Tech Days 2010 Table ronde sur Agilité Scrum XpMicrosoft Tech Days 2010 Table ronde sur Agilité Scrum Xp
Microsoft Tech Days 2010 Table ronde sur Agilité Scrum XpXavier Warzee
 
Bases De Datos
Bases De DatosBases De Datos
Bases De DatosLuis Diaz
 
Bloque0-PACIE
Bloque0-PACIEBloque0-PACIE
Bloque0-PACIEJose Tua
 
Trucos increibles del movil
Trucos increibles del movilTrucos increibles del movil
Trucos increibles del movilcentrowebs
 

Destaque (20)

ORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNO
ORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNOORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNO
ORGULLOSAMENTE MENDOCINO, VALORANDO MI ENTORNO
 
Fing - Plan d'action 2015
Fing - Plan d'action 2015Fing - Plan d'action 2015
Fing - Plan d'action 2015
 
Gastronomia (2)[1]
Gastronomia (2)[1]Gastronomia (2)[1]
Gastronomia (2)[1]
 
Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?
Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?
Comment mettre en place 
et maintenir 
une présence en ligne 
dans les musées ?
 
Denis Gaucher (Kantar Media Advertising Intelligence) - Brand safety, transp...
Denis Gaucher (Kantar Media Advertising Intelligence) -  Brand safety, transp...Denis Gaucher (Kantar Media Advertising Intelligence) -  Brand safety, transp...
Denis Gaucher (Kantar Media Advertising Intelligence) - Brand safety, transp...
 
Windows Server2008 R2 Overview
Windows Server2008 R2 OverviewWindows Server2008 R2 Overview
Windows Server2008 R2 Overview
 
Bebes fabricados con mazapan
Bebes fabricados con mazapanBebes fabricados con mazapan
Bebes fabricados con mazapan
 
Pub Med Apprentissage 2011
Pub Med Apprentissage 2011Pub Med Apprentissage 2011
Pub Med Apprentissage 2011
 
Shibo Et Wen
Shibo Et WenShibo Et Wen
Shibo Et Wen
 
14 sur - número 4
14 sur - número 414 sur - número 4
14 sur - número 4
 
Vendre plus sur le web
Vendre plus sur le webVendre plus sur le web
Vendre plus sur le web
 
El Telefono
El TelefonoEl Telefono
El Telefono
 
Revuepresse2
Revuepresse2Revuepresse2
Revuepresse2
 
Microsoft Tech Days 2010 Table ronde sur Agilité Scrum Xp
Microsoft Tech Days 2010 Table ronde sur Agilité Scrum XpMicrosoft Tech Days 2010 Table ronde sur Agilité Scrum Xp
Microsoft Tech Days 2010 Table ronde sur Agilité Scrum Xp
 
Bases De Datos
Bases De DatosBases De Datos
Bases De Datos
 
mensajes virtuales
mensajes virtualesmensajes virtuales
mensajes virtuales
 
Bloque0-PACIE
Bloque0-PACIEBloque0-PACIE
Bloque0-PACIE
 
Assessment record
Assessment recordAssessment record
Assessment record
 
CV Adam Fra V4
CV Adam Fra V4CV Adam Fra V4
CV Adam Fra V4
 
Trucos increibles del movil
Trucos increibles del movilTrucos increibles del movil
Trucos increibles del movil
 

DistributedCSP

  • 1. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 1 Programmation par Contraintes Distribuée Kim BENNI Philippe MORIGNOT Université Paris VI AXLOG Ingéniérie
  • 2. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 2 … 1 N Intuition N 1 1 ? 1 N < 1 … 1 N
  • 3. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 3 Contexte • Programmation par contraintes. • Formellement, soit : – Xi des variables – Di des domaines discrets (e.g., à valeurs entières) – Cj des relations n-aires entre les variables Xi • Problème : – trouver une valeur dans chaque Di pour chaque variable Xi, qui satisfasse toutes les contraintes Cj. – … avec une fonction à minimiser. • Exemple : )min(et],10,1[],10,1[ yxyxyx +<∈∈
  • 4. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 4 Approche : estimateur [Knuth 75] • Convergence vers la valeur exacte (Monte Carlo) • Complexité polynomiale • Valeurs estimées : profondeur, nombre de solutions, nombre de nœuds
  • 5. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 5 *330 sous-noeuds *16 niveaux *74 solutions Densité de solution = 0.224 *52 sous-noeuds *10 niveaux *18 solutions Densité de solution = 0.346 1 2 Densité = 0,5 Densité = 0,263 Densité = 0, 389 Approche : découpage (1/2)
  • 6. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 6 Approche : découpage (2/2) • Problème : rechercher une liste de nœuds. • Contraintes : – Tous les nœuds de la liste doivent être distincts. – L’ensemble des nœuds terminaux doit être inclus dans l’ensemble des nœuds des sous-arbres déterminés par les nœuds de la liste. – Si un nœud est dans la liste, aucun de ses descendants n’y est. • Minimiser l’écart de taille, maximiser l’écart de densité de solutions --- entre les sous-arbres. Programmation par contraintes.
  • 7. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 7 Approche : communication • Asynchrone. • Quand un agent trouve une solution, il envoie son coût (et sa solution) aux autres agents. – Élagage des solutions de coût supérieur pour les autres agents. – Tolérance aux pannes (mort d’un agent).
  • 8. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 8 Implémentation • Langage Oz • Environnement Mozart • ~ 4000 lignes de code fun {Queens N} proc {$ Row} L1N = {List.number 1 N 1} LM1N = {List.number ~1 ~N ~1} in Row = {FD.tuple queens N 1#N} {FD.distinct Row} {FD.distinctOffset Row L1N} {FD.distinctOffset Row LM1N} {FD.distribute ff Row} end end end Exemple de code source OZ
  • 9. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 9 Méthodologie : exemples • N-Reines : • Fugue de J.–S. Bach : • La taille du contre-sujet est égale au sujet. • L’intervalle est d’un octave au maximum par rapport à la tonalité du sujet. • Les notes du contre-sujet sont exclusivement des noires, des blanches ou des croches. • Il ne doit jamais y avoir de notes à l’unisson entre le sujet et le contre-sujet. • Il ne doit jamais y avoir de notes formant une quinte entre le sujet et le contre-sujet. • Le contre-sujet ne peut comporter que des notes faisant partie de la gamme utilisée par le sujet. • Une dominante du contre-sujet ne peut pas être précédée par une note qui est 7, 9 ou 11 demi- tons plus basse. • La réponse est constituée des notes du sujet majoré de 7 demi-tons.
  • 10. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 10 Méthodologie : mesures • 1 processus : – Branch & Bound • Multi-processus : – Découpage « naïf » Estimation Découpage Résolution A1 Résolution A2 Résolution A3 Tm Estimation Découpage Résolution A1 Résolution A2 Résolution A3 TrTe Td
  • 11. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 11 Découpage « naïf » (1/2) [Gorge & Morignot 05]
  • 12. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 12 Découpage « naïf » (2/2) 0 1000 2000 3000 4000 5000 6000 0 0,2 0,4 0,6 0,8 1 1,2 Inverse du nombre d'agents Tempsmispourlarésolutiondu problèmedes15reines
  • 13. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 13 Résultats expérimentaux (1/6) r de T TT + N-reines, 1 processus.
  • 14. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 14 Résultats expérimentaux (2/6) BBr r T T & N-reines, 1 processus.
  • 15. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 15 Résultats expérimentaux (3/6) BBt t T T & N-reines, 1 processus.
  • 16. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 16 Résultats expérimentaux (4/6) Naïfm m T T Fugue, multi-processus.
  • 17. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 17 Résultats expérimentaux (5/6)
  • 18. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 18 Résultats expérimentaux (6/6)
  • 19. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 19 Application : drônes intelligents •Stand-alone UCAV •Recce UCAVs •Strike UCAVs F.E.B.A. Pop-up threat area Attack Split
  • 20. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 20 Application : modèle (sketch) ','' , ,, 11 1,, , , kkkkkk nkkk kk k i j njni xXXpp tiank pak pvun ⊕=⇒=∧= =⇒=∀∀ ≤∀ ==∀ ∑ ∑ aiu , ajv , max(probabilité de survie, probabilité de destruction)
  • 21. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 21 Conclusion • Estimateur stochastique + découpage + résolutions séparées avec communication. • Complétude. • Attention au temps de découpage → grands problèmes. • Jusqu’à 30% plus rapide qu’une approche distribuée « naïve » (en 1/N). • Travaux futurs : – Multi-processus réel → temps de communication. – Comparaison avec un découpeur aléatoire ? – Communication entre agents dès que le coût diminue.
  • 22. K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 22 Références • A. Gorge, P. Morignot. Une corrélation en programmation par contraintes distribuée. Rapport Technique AXLOG, Arcueil, juin 2005, 10 pages. Soumis à RFIA’06. • P. J. Modi, W. Shen, M. Tambe, M. Yokoo. ADOPT: Asynchronous distributed constraint optimization with quality guarantees. Artificial Intelligence, 161, pages 149-180, 2005. • N. Prcovic, B. Neveu, P. Berlandier. Distribution de l’arbre de recherche des problèmes de satisfaction de contraintes en domaines finis. In Actes de la Deuxième Conférence Nationale sur la Résolution de Problèmes NP-Complets (CNPC’96), août 1996.