algo rep

35
 Contexte  Modèle à pan neau d’ach age : 1 er résultat  Modèle distribué : 2ème résul tat  Conclusion Distributed Weighted Stable Marriage Problem Nir Amira, Ran Giladi & Zvi Lotker Ben-Gurion University Beer-Sheva, Israel Marie Laveau Université Paris Sud 12 février 2015

Upload: thang-pfiev

Post on 06-Oct-2015

5 views

Category:

Documents


0 download

DESCRIPTION

algorithm

TRANSCRIPT

  • 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