algo rep
DESCRIPTION
algorithmTRANSCRIPT
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Distributed Weighted Stable Marriage ProblemNir Amira, Ran Giladi & Zvi Lotker
Ben-Gurion University Beer-Sheva, Israel
Marie Laveau
Universit Paris Sud
12 fvrier 2015
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Outline
ContexteProblme du mariage stableEtat de lartModles
Modle panneau daffichage : 1er rsultatPrincipesExemple
Modle distribu : 2me rsultatPrincipesExempleQuelques lemmesElements de preuve
Conclusion
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Problme du mariage stable
1962 : Gale et Shapley
Graphe biparti Kn,n Associer deux deux les
nuds
En prenant en compte lesprfrences de chaquelment
Sans crer dinterblocage K3,3
A0
A1
A2
B0
B1
B2
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Problme du mariage stable
1962 : Gale et Shapley Graphe biparti Kn,n
Associer deux deux lesnuds
En prenant en compte lesprfrences de chaquelment
Sans crer dinterblocage
K3,3
A0
A1
A2
B0
B1
B2
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Problme du mariage stable
1962 : Gale et Shapley Graphe biparti Kn,n Associer deux deux les
nuds
En prenant en compte lesprfrences de chaquelment
Sans crer dinterblocage
K3,3
A0
A1
A2
B0
B1
B2
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Problme du mariage stable
1962 : Gale et Shapley Graphe biparti Kn,n Associer deux deux les
nuds
En prenant en compte lesprfrences de chaquelment
Sans crer dinterblocage
K3,3
A0
A1
A2
B0
B1
B2
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Problme du mariage stable
1962 : Gale et Shapley Graphe biparti Kn,n Associer deux deux les
nuds
En prenant en compte lesprfrences de chaquelment
Sans crer dinterblocage K3,3
A0
A1
A2
B0
B1
B2
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Etat de lart
Variantes du problme avec des solutions Algorithmes gntiques Approche parallle et itrative Etude de la complexit dans un contexte distribu. Utilisation dans les rseaux (Switch)
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Modles
Fonctionnement par tapes
Cts In/Out Modle de prfrences :
Modle pondr (valeursuniques) complet
Modles decommunication :
Panneau daffichageDistribu
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Modles
Fonctionnement par tapes Cts In/Out
Modle de prfrences :Modle pondr (valeursuniques) complet
Modles decommunication :
Panneau daffichageDistribu
In0
In1
In2
Out0
Out1
Out2
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Modles
Fonctionnement par tapes Cts In/Out Modle de prfrences :
Modle pondr (valeursuniques) complet
Modles decommunication :
Panneau daffichageDistribu
In0
In1
In2
Out0
Out1
Out2
1
2
3
4
5
6
7
8
9
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Modles
Fonctionnement par tapes Cts In/Out Modle de prfrences :
Modle pondr (valeursuniques) complet
Modles decommunication :
Panneau daffichageDistribu
In0
In1
In2
Out0
Out1
Out2
1
2
3
4
5
6
7
8
9
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Principes
Panneau daffichage public Centralis
Reprsentation sous forme de tableau
Nuds In : 1 valeur envoye /tape (la plus haute restante)
Au total : n valeurs/tape
Calcul local du matching
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple
In0
In1
In2
In3
Out0
Out1
Out2
Out3
1
769
11
10
5
14
8 15
2
12
3
16
4
13
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple
In0
In1
In2
In3
Out0
Out1
Out2
Out3
1
769
11
10
5
14
8 15
2
12
3
16
4
13
Out0 Out1 Out2 Out3In0In1In2In3
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple
In0
In1
In2
In3
Out0
Out1
Out2
Out3
1
769
11
10
5
14
8 15
2
12
3
16
4
13
Out0 Out1 Out2 Out3In0 9In1 14In2 15In3 16
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple
In0
In1
In2
In3
Out0
Out1
Out2
Out3
1
769
11
10
5
14
8 15
2
12
3
16
4
13
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
Aprs n tapes, toutes les cartessont retournes : chacun peut calculerlocalement le matching.
Leur apport :Preuve de la complexit en O(n)
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple
In0
In1
In2
In3
Out0
Out1
Out2
Out3
1
769
11
10
5
14
8 15
2
12
3
16
4
13
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
Aprs n tapes, toutes les cartessont retournes : chacun peut calculerlocalement le matching.
Leur apport :Preuve de la complexit en O(n)
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple
In0
In1
In2
In3
Out0
Out1
Out2
Out3
1
769
11
10
5
14
8 15
2
12
3
16
4
13
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
Aprs n tapes, toutes les cartessont retournes : chacun peut calculerlocalement le matching.
Leur apport :Preuve de la complexit en O(n)
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Algorithme propos : Principe
Phase 1 : Phase de mouvementsObjectif : envoyer les n2 valeurs
n Out ports choisis (IAi )
(1 valeur/In noeud/IAi )
Phase 2 : Phase dinformationObjectif :
Chaque IA calcul tour tour son matching local et lenvoie aunuds In qui ont t associs.Les In nuds retransmettent aux autres IAs ainsi quaux Outsauxuquels ils ont t associsUpdate de sets darrtes : V (t), M(t), F (t).
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple K4,4
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
IA1 IA2In0 {9,3} {6,2} {6,2} {6,2}In1 {14,3} {10,1}In2 {15,1} {8,0}In3 {16,3} {4,2}
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple K4,4
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
IA1 IA2In0 {9,3} {7,1} {6,2} {1,0}In1 {14,3} {11,0} {10,1} {5,2}In2 {15,1} {12,3} {8,0} {2,2}In3 {16,1} {13,3} {4,2} {3,0}
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple K4,4
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
IA1 IA2In0 {9,3} {7,1} {6,2} {1,0}In1 {14,3} {11,0} {10,1} {5,2}In2 {15,1} {12,3} {8,0} {2,2}In3 {16,1} {13,3} {4,2} {3,0}
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple K4,4
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
IA1 IA2In0 {9,3} {7,1} {6,2} {1,0}In1 {14,3} {11,0} {10,1} {5,2}In2 {15,1} {12,3} {8,0} {2,2}In3 {16,1} {13,3} {4,2} {3,0}
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple K4,4
Out0 Out1 Out2 Out3In0 1 7 6 9In1 11 10 5 14In2 8 15 2 12In3 3 16 4 13
IA1 IA2In0 {9,3} {7,1} {6,2} {1,0}In1 {14,3} {11,0} {10,1} {5,2}In2 {15,1} {12,3} {8,0} {2,2}In3 {16,1} {13,3} {4,2} {3,0}
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Exemple K4,4
In0
In1
In2
In3
Out0
Out1
Out2
Out3
6
14
8
16
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Algorithme propos : Complexit en temps
Premire phase :n steps
Deuxime phase : 2n steps
Complexit totale en temps : O(n)
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Quelques Lemmes
Lemme 1 : Si les poids sont uniques dans un graphe Kn,n, le poidsmaximum du graphe biparti sera toujours pris pour le matchingstable M.
Lemme 2 : Si les poids sont uniques dans un graphe Kn,n complet,il ny a quun seul et unique matching stable M.
Si lon obtient un matching stable avec ces conditions : cest leseul et unique.
Lemme 3 : Aprs la phase 1, IA1 a au moinsn valeur qui seront
dans M.
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Quelques Lemmes
Lemme 1 : Si les poids sont uniques dans un graphe Kn,n, le poidsmaximum du graphe biparti sera toujours pris pour le matchingstable M.
Lemme 2 : Si les poids sont uniques dans un graphe Kn,n complet,il ny a quun seul et unique matching stable M.
Si lon obtient un matching stable avec ces conditions : cest leseul et unique.
Lemme 3 : Aprs la phase 1, IA1 a au moinsn valeur qui seront
dans M.
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Quelques Lemmes
Lemme 1 : Si les poids sont uniques dans un graphe Kn,n, le poidsmaximum du graphe biparti sera toujours pris pour le matchingstable M.
Lemme 2 : Si les poids sont uniques dans un graphe Kn,n complet,il ny a quun seul et unique matching stable M.
Si lon obtient un matching stable avec ces conditions : cest leseul et unique.
Lemme 3 : Aprs la phase 1, IA1 a au moinsn valeur qui seront
dans M.
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Elements de preuve
Theorem : Cet algorithme IAA gnre un matching stable.Ides :
Par induction sur le nombre m = |In| ports
m + 1 |M(i 1)| m + 1 3
n
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Elements de preuve
Theorem : Cet algorithme IAA gnre un matching stable.Ides :
Par induction sur le nombre m = |In| ports m + 1 |M(i 1)| m + 1
3
n
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Elements de preuve
Theorem : Cet algorithme IAA gnre un matching stable.Ides :
Par induction sur le nombre m = |In| ports m + 1 |M(i 1)| m + 1
3
n
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Elements de preuve
Theorem : Cet algorithme IAA gnre un matching stable.Ides :
Par induction sur le nombre m = |In| ports m + 1 |M(i 1)| m + 1 3
n
-
Contexte Modle panneau daffichage : 1er rsultat Modle distribu : 2me rsultat Conclusion
Conclusion
Possible de gnraliser du modle poids celui des listes deprfrences Limite infrieur en n-1 steps Algorithme en O(n) VOQ switch ? Dans le futur : enlever les contraintes quon stait pos : Complexit en temps pour un modle deux cts ? Et si dans le modle de panneau daffichage, les nuds
peuvent crire plus quune valeur ? Ici, les ports In et Out cooprent. Et si ctait pas le cas ?
ContexteProblme du mariage stableEtat de l'artModles
Modle panneau d'affichage : 1er rsultatPrincipesExemple
Modle distribu : 2me rsultatPrincipesExempleQuelques lemmesElements de preuve
Conclusion