• Aucun résultat trouvé

La complexité en bits pour le problème du MIS, le problème de la coloration, le problème du couplage maximal et le problème de la coloration à distance 2 est

Bits de quelques Algorithmes Distribués Probabilistes

Théorème 4.1 La complexité en bits pour le problème du MIS, le problème de la coloration, le problème du couplage maximal et le problème de la coloration à distance 2 est

θ(log n)avec forte probabilité pour les graphes anonymes avec n sommets. Si nous considérons le cas particulier des anneaux, nous avons prouvé ([28], Chapitre 3) que O(plog n)rondes sont suffisantes avec forte proba-bilité pour calculer un MIS ou un couplage maximal où n est le nombre de sommets de l’anneau. On en déduit donc que la complexité en bits pour le problème du MIS ou du couplage maximal est θ(plog n) avec forte probabilité pour les anneaux anonymes avec n sommets.

La dernière section donne un résultat d’impossibilité sur l’existence des algorithmes distribués Las Vegas pour briser des « symétries à dis-tance k » dans des graphes anonymes pour k≥ 3, comme le problème du k-MIS ou le problème de la coloration à distance k.

4.2 Préliminaires

Cette section aborde les notions de revêtements. Elle explique com-ment les revêtecom-ments sont utilisés dans le contexte des algorithmes dis-tribués.

4.2.1 Graphes (Orientés) Étiquetés et Algorithmes Distribués Syn-chrones

Soit G = (G, λ) un graphe étiqueté avec une numérotation de ports δ. Soit D = Dir(G, δ0) le graphe orienté étiqueté correspondant à (Dir(G),(λ, δ0)) (cf. Définition 1.49 page 23). Soit A un algorithme dis-tribué synchrone. Nous parlons indifféremment d’une exécution deAsur (G, δ)ou sur D. L’état de chaque processus est représenté par l’étiquette

λ(v) du sommet correspondant à v. Soit D0 = (Dir(G0), δ0) un graphe orienté étiqueté obtenu par l’application d’un pas de A à D. Nous rap-pelons que le système est synchrone, par conséquent chaque sommet de Da un nouvel état calculé par une fonction de transition qui dépend de l’état du sommet et des messages qu’il a reçus. Cette transition est notée par :

(Dir(G), δ0) =⇒

4.2. Préliminaires 51

ou indifféremment

(G, δ) =⇒

A (G0, δ0).

Soit v un sommet de G. Nous notons par(v, λ(v)) =⇒

A (v, λ0(v))la transition associée au sommet v de G.

Soit r un entier positif. Une séquence (Di)0ir de graphes orientés étiquetés est appelée une A-exécution (ou une exécution lorsque A se déduit clairement du contexte) de taille r si Di+1 s’obtient à partir de Di en un pas d’une exécution de A. Elle est notée par DiADi+1 pour tout 0 ≤ i < r. Une exécution de taille 1 est un pas. De plus, si A est un algorithme distribué probabiliste synchrone et si l’exécution d’un pas a une probabilité p, alors on la notera : G =⇒

p G0.

Nous supposons que les choix des sommets sont indépendants. Remarque 4.3 Soit A un algorithme distribué probabiliste synchrone. Soit G un graphe. Soit

δ une numérotation de ports de G. Soit λ un étiquetage de G. Nous avons :

(G, δ) =⇒

p (G0, δ)(avec G0 = (G, λ0)) si et seulement si p est égal au produit sur V(G)des probabilités de transitions(v, λ(v)) =⇒

A (v, λ0(v)). 4.2.2 Revêtements et Algorithmes Distribués Synchrones

Cette section présente notre principal outil : les revêtements symétriques et leur utilisation dans les algorithmes distribués synchrones. La notion de revêtement symétrique (cf. Définition 1.53 page 25) nous permet d’exprimer des « similarités » entre deux graphes orientés et de prouver l’existence d’exécutions d’un algorithme qui ne brisent pas cer-taines symétries à l’intérieur de certains sous-ensembles de sommets d’un graphe (et du graphe orienté associé) : à savoir à l’intérieur des fibres. Des définitions et des propriétés principales sur les revêtements sont données par Boldi et Vigna [16].

Deux exemples de graphes orientés étiquetés symétriques sont donnés dans la Figure 4.1.

Remarque 4.4 Soit D un revêtement étiqueté symétrique de D0 via ϕ. Soit δ0 une numérotation de ports de D0 et soit δ une numérotation de ports de D induite par ϕ1. SoitA un algorithme distribué synchrone. Nous considérons l’exécution d’une ronde de Asur(D0, δ0). Cette ronde peut être relevée en(D, δ)de la façon suivante :

1. « le sommet v0 ∈V(D0)envoie des messages à ses voisins » devient « chaque sommet de ϕ1(v0) ⊆V(D)envoie des messages à ses voisins » (les mêmes messages sont envoyés depuis v0 et depuis chaque sommet w de ϕ1(v0)à travers les mêmes numéros de ports vers les voisins de v0 et w) ;

2. « le sommet v0 ∈V(D0)reçoit des messages de ses voisins » devient « chaque sommet w de ϕ1(v0) ⊆V(D)reçoit des messages de ses voisins à travers les mêmes numéros de ports que v0» ;

3. « le sommet v0 ∈V(D0)réalise des calculs locaux » devient « chaque sommet de ϕ1(v0) ⊆ V(D0)réalise des calculs locaux » (les mêmes calculs locaux sont réalisés sur v0 et sur chaque sommet de ϕ1(v0), par conséquent, le sommet v0 et les sommets de ϕ1(v0)sont dans le même état).

52

Chapitre 4. Bornes Inférieures pour la Complexité en Temps et en Bits de quelques Algorithmes Distribués Probabilistes

(G1,δ1) (Dir(G1),δ01) (D1,δ001) v1 v2 v1 v2 w 1 1 (1, 1) (1, 1) (1, 1) ϕ1 (G2,δ2) (Dir(G2),δ02) (D2,δ002) v1 v2 v3 v6 v5 v4 v1 v2 v3 v6 v5 v4 w1 w2 w3 2 2 3 2 2 2 3 2 1 1 1 1 1 1 (2, 2) (2, 2) (3, 2) (2, 3) (2, 2) (2, 2) (1, 1) (1, 1) ( 1, 1 ) ( 1, 1 ) (1, 1 ) ( 1, 1 ) (1, 1 ) ( 1, 1 ) (2, 2) (2, 2) (3, 2) (2, 3) (1, 1) (1, 1) (1, 1) ϕ2

Figure 4.1 – Le graphe orienté Dir(G1)(resp. Dir(G2)) est un revêtement symétrique via ϕ1 (resp. ϕ2) de D1 (resp. D2) où ϕ1 associe les sommets de Dir(G1)sur l’unique sommet de D1 et ϕ2(v1) = ϕ2(v6) = w1, ϕ2(v2) = ϕ2(v5) = w2 et ϕ2(v3) =

ϕ2(v4) = w3. Le nombre de feuillets de ces deux revêtements est 2. La numérotation de ports δ100(resp. δ200) de D1(resp. D2) induit via ϕ−11 (resp. ϕ−12 ) la numérotation de ports

δ10 (resp. δ02) de Dir(G1)(resp. Dir(G2)) et donc la numérotation de ports δ1(resp. δ2) de G1(resp. G2).

Finalement, nous obtenons le lemme classique suivant (cf. [4, 20]) : Lemme 4.1 Soit D un revêtement étiqueté symétrique de D0 via ϕ. Soit δ0 une numérotation

de ports de D0 et soit δ une numérotation de ports de D induite par ϕ1. Alors toute exécution d’un algorithme distribuéAsur(D0, δ0)peut être relevée en une exécution sur (D, δ), de telle façon qu’à la fin de l’exécution, pour tout sommet v∈V(D), v est dans le même état que ϕ(v).

Nous nous intéressons ici à certains problèmes comme le calcul d’un MIS, la coloration des sommets ou le calcul d’un couplage maximal. Dans chacun de ces cas, nous avons à briser certaines symétries à l’intérieur du graphe étiqueté. Pour briser les symétries à l’intérieur d’un graphe éti-queté, il suffit de distinguer un sommet. C’est précisément le but d’un al-gorithme d’élection. Un alal-gorithme distribué résout le problème de l’élec-tion s’il termine toujours et si dans sa configural’élec-tion finale, exactement un processus est marqué élu et tous les autres processus sont non-élus. De plus, il est supposé que lorsqu’un sommet prend l’état élu ou non-élu, il reste dans cet état jusqu’à la fin de l’exécution de l’algorithme. Le lien entre le problème de l’élection et les revêtements est le suivant [20] : Théorème 4.2 Étant donné un graphe connexe G, il existe un algorithme d’élection pour G si et

4.3. Obtenir des Bornes Inférieures en Considérant des Graphes Non-Connexes 53

Remarque 4.5 Un graphe orienté étiqueté symétrique D est minimal pour la relation « être