Top Banner
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
22

DistributedCSP

Feb 20, 2017

Download

Documents

Kim Benni
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 1

Programmation par Contraintes Distribuée

Kim BENNI Philippe MORIGNOTUniversité Paris VI AXLOG Ingéniérie

Page 2: DistributedCSP

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

Page 3: DistributedCSP

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 +<∈∈

Page 4: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 4

Approche : estimateur [Knuth75]

• Convergence vers la valeur exacte (Monte Carlo)

• Complexité polynomiale

• Valeurs estimées : profondeur, nombre de solutions, nombre de nœuds

Page 5: DistributedCSP

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)

Page 6: DistributedCSP

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.

Page 7: DistributedCSP

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).

Page 8: DistributedCSP

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}

inRow = {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

Page 9: DistributedCSP

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.

Page 10: DistributedCSP

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

Page 11: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 11

Découpage « naïf » (1/2) [Gorge & Morignot 05]

Page 12: DistributedCSP

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

Tem

ps m

is p

our

la r

ésol

utio

n du

pr

oblè

me

des

15 r

eine

s

Page 13: DistributedCSP

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.

Page 14: DistributedCSP

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.

Page 15: DistributedCSP

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.

Page 16: DistributedCSP

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.

Page 17: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 17

Résultats expérimentaux (5/6)

Page 18: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 18

Résultats expérimentaux (6/6)

Page 19: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 19

Application : drônesintelligents

•Stand-alone UCAV •Recce UCAVs•Strike UCAVs

F.E

.B.A

.

Pop-up threat area

Attack

Split

Page 20: DistributedCSP

K. Benni, P. Morignot Séminaire LRI, Paris 11 - 7 septembre 2005 Page 20

Application : modèle (sketch)

',''

,

,,

11

1,,

,

,

kkkkkk

nkkk

kk

ki j

njni

xXXpp

tiank

pak

pvun

⊕=⇒=∧==⇒=∀∀

≤∀

==∀ ∑ ∑aiu , ajv ,

max(probabilité de survie, probabilité de destruction)

Page 21: DistributedCSP

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.

Page 22: DistributedCSP

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 qualityguarantees. 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.