Coloriage distribué des graphes

Documents pareils
Introduction à la théorie des graphes. Solutions des exercices

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Continuité et dérivabilité d une fonction

Eteindre. les. lumières MATH EN JEAN Mme BACHOC. Elèves de seconde, première et terminale scientifiques :

Resolution limit in community detection

Exercices types Algorithmique et simulation numérique Oral Mathématiques et algorithmique Banque PT

NOTE SUR LA MODELISATION DU RISQUE D INFLATION

Parallélisme et Répartition

Simulation de variables aléatoires

Fonctions de plusieurs variables, intégrales multiples, et intégrales dépendant d un paramètre

Objets Combinatoires élementaires

La classification automatique de données quantitatives

INTRODUCTION A L ELECTRONIQUE NUMERIQUE ECHANTILLONNAGE ET QUANTIFICATION I. ARCHITECTURE DE L ELECRONIQUE NUMERIQUE

Programmation linéaire

Université Paris-Dauphine DUMI2E 1ère année, Applications

Correction du baccalauréat ES/L Métropole 20 juin 2014

Capacité d un canal Second Théorème de Shannon. Théorie de l information 1/34

Chp. 4. Minimisation d une fonction d une variable

Plan. 5 Actualisation. 7 Investissement. 2 Calcul du taux d intérêt 3 Taux équivalent 4 Placement à versements fixes.

Objectifs du cours d aujourd hui. Informatique II : Cours d introduction à l informatique et à la programmation objet. Complexité d un problème (2)

Baccalauréat ES Pondichéry 7 avril 2014 Corrigé

Python - introduction à la programmation et calcul scientifique

Chapitre 2 Le problème de l unicité des solutions

Texte Agrégation limitée par diffusion interne

TS 35 Numériser. Activité introductive - Exercice et démarche expérimentale en fin d activité Notions et contenus du programme de Terminale S

Calculs de probabilités conditionelles

La NP-complétude. Johanne Cohen. PRISM/CNRS, Versailles, France.

Théorie et codage de l information

Modélisation et Simulation

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

3 Approximation de solutions d équations

Chapitre 6. Fonction réelle d une variable réelle

Feuille TD n 1 Exercices d algorithmique éléments de correction

CH.6 Propriétés des langages non contextuels

Simulation : application au système bonus-malus en responsabilité civile automobile

3. Conditionnement P (B)

Estimation: intervalle de fluctuation et de confiance. Mars IREM: groupe Proba-Stat. Fluctuation. Confiance. dans les programmes comparaison

4 Distributions particulières de probabilités

Probabilités Loi binomiale Exercices corrigés

Condition de stabilité d'un réseau de les d'attente à deux stations et N classes de clients 1

Sur certaines séries entières particulières

Mathématique et Automatique : de la boucle ouverte à la boucle fermée. Maïtine bergounioux Laboratoire MAPMO - UMR 6628 Université d'orléans

Représentation des Nombres

Examen optimisation Centrale Marseille (2008) et SupGalilee (2008)

Probabilités sur un univers fini

Probabilités et Statistiques. Feuille 2 : variables aléatoires discrètes

Chapitre 3. Quelques fonctions usuelles. 1 Fonctions logarithme et exponentielle. 1.1 La fonction logarithme

Conception d'un réseau de transport d'électricité

Résolution d équations non linéaires

Contexte. Pour cela, elles doivent être très compliquées, c est-à-dire elles doivent être très différentes des fonctions simples,

Cours 1 : Introduction Ordinateurs - Langages de haut niveau - Application

Une nouvelle approche de détection de communautés dans les réseaux sociaux

Mathématiques financières

Examen d informatique première session 2004

Commun à tous les candidats

Baccalauréat ES/L Métropole La Réunion 13 septembre 2013 Corrigé

Loi binomiale Lois normales

Chapitre 3 : INFERENCE

Arithmétique binaire. Chapitre. 5.1 Notions Bit Mot

Dualité dans les espaces de Lebesgue et mesures de Radon finies

MIS 102 Initiation à l Informatique

Amphi 3: Espaces complets - Applications linéaires continues

Suites numériques 3. 1 Convergence et limite d une suite

ÉPREUVE COMMUNE DE TIPE Partie D

V- Manipulations de nombres en binaire

Définition 0,752 = 0,7 + 0,05 + 0,002 SYSTÈMES DE NUMÉRATION POSITIONNELS =

Moments des variables aléatoires réelles

Algorithme. Table des matières

Raisonnement par récurrence Suites numériques

Le théorème de Perron-Frobenius, les chaines de Markov et un célèbre moteur de recherche

III- Raisonnement par récurrence

UEO11 COURS/TD 1. nombres entiers et réels codés en mémoire centrale. Caractères alphabétiques et caractères spéciaux.

CHAPITRE 10. Jacobien, changement de coordonnées.

2.4 Représentation graphique, tableau de Karnaugh

1 Définition et premières propriétés des congruences

FaceBook aime les Maths!

Chapitre 10 Arithmétique réelle

Raisonnement probabiliste

Exemples de problèmes et d applications. INF6953 Exemples de problèmes 1

Plus courts chemins, programmation dynamique

Fonctions de plusieurs variables

Chapitre 3. Mesures stationnaires. et théorèmes de convergence

CRYPTOGRAPHIE. Signature électronique. E. Bresson. SGDN/DCSSI Laboratoire de cryptographie

Modèles à Événements Discrets. Réseaux de Petri Stochastiques

T.P. FLUENT. Cours Mécanique des Fluides. 24 février 2006 NAZIH MARZOUQY

n N = u N u N+1 1 u pour u 1. f ( uv 1) v N+1 v N v t

BACCALAURÉAT GÉNÉRAL SESSION 2012 OBLIGATOIRE MATHÉMATIQUES. Série S. Durée de l épreuve : 4 heures Coefficient : 7 ENSEIGNEMENT OBLIGATOIRE

Mesure d angles et trigonométrie

1.1 Codage de source et test d hypothèse

Quelques tests de primalité

Eléments de Théorie des Graphes et Programmation Linéaire

Limites finies en un point

Cercle trigonométrique et mesures d angles

1 Complément sur la projection du nuage des individus

Cryptologie. Algorithmes à clé publique. Jean-Marc Robert. Génie logiciel et des TI

1 de 46. Algorithmique. Trouver et Trier. Florent Hivert. Mél : Florent.Hivert@lri.fr Page personnelle : hivert

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

Baccalauréat ES Antilles Guyane 12 septembre 2014 Corrigé

Exercices - Polynômes : corrigé. Opérations sur les polynômes

Transcription:

Chapitre 3 Coloriage distribué des graphes 3. Introduction Soit G = (V,E) un graphe simple non orienté. Une sommet-coloration de G est une fonction qui affecte une couleur c(v) à chaque sommet v de G telle que pour tous {u,v} E, c(u) c(v). La suite de ce chapitre présente un algorithme probabiliste simple et efficace permettant de réaliser une sommet-coloration de tout graphe G. L algorithme fonctionne en phases synchrones : au début de chaque phase, un sommet non encore colorié connaît l ensemble de ses voisins encore actifs (sommets qui n ont pas encore leur couleur définitive) et crée un ensemble contenant l ensemble de ces sommets. Chaque phase est composée d un envoi, d une réception et d un ensemble d actions internes. À chaque round, chaque sommet u génère (uniformément) un bit aléatoire et l envoie à tous ses voisins encore actifs. Il reçoit ensuite un bit de chaque voisin actif et supprime de l ensemble de ses voisins actifs les sommets qui lui ont envoyé un bit différent de celui généré par u. Soit couleur u le mot formé des bits générés par u (couleur u [i] est le ième bit généré par u). Si u n a plus de voisins actifs, alors u a sa couleur définitive : couleur u. 3.2 L algorithme F ast Color L algorithme opère en rounds. À la fin chaque round, les sommets qui obtiennent leurs couleurs définitives arrêtent d exécuter l algorithme, ils sont alors supprimés du graphe avec leurs arêtes adjacentes. Les autres sommets continuent d exécuter l algorithme dans le graphe résiduel. Formellement, chaque sommet u maintient une liste actifs u de sommets voisins actifs, c est-à-dire la liste des sommets voisins non encore coloriés et avec lesquels la symétrie n est pas encore brisée. Initialement, actifs u est égale à N(u). La couleur couleur u d un sommet u est initialement le mot vide, à chaque round, u génère un bit b u, le rajoute à la fin de couleur u et envoie b u à tous les sommets dans l ensemble actifs u. Il reçoit ensuite les bits envoyés par ses voisins encore actifs et met à jour la liste actifs u. Le sommet u répète cet ensemble d actions jusqu à ce que la symétrie soit brisée avec tous ses voisins, sa couleur est alors le mot couleur u. La figure 3.2 illustre une exécution de l algorithme. 7

8 CHAPITRE 3. COLORIAGE DISTRIBUÉ DES GRAPHES Fig. 3. Une exécution de l algorithme F ast Col : initialement, tous les sommets sont dans le même état. A chaque tirage, les arêtes (en pointillé) pour lesquelles les deux extrémités ont tiré des bits différents (la symétrie est brisée) sont retirées du graphe. A la fin de l algorithme (quand toutes les arêtes sont supprimées) les mots sur chaque sommet sont interprétés comme des couleurs. Remarque 3. La couleur d un sommet u est la concaténation de tous les bits générés par u depuis le début de l exécution de l algorithme. Cette couleur peut donc être interprétée comme un entier. 3.3 Analyse de l algorithme Espérance du temps d exécution Chaque sommet u, non encore colorié, génère un bit b u, envoie b u à tous les voisins de u encore actifs et reçoit b v de chaque voisin actif v. Si b u b v, alors u met à jour sa liste de sommets actifs en supprimant v de l ensemble actifs u. En terme de structure de graphe, cela revient à supprimer l arête {u, v} du graphe G. Or, la probabilité que l événement b v b u se produise est égale à /2. Nous en déduisons : Lemme 3.2 À la fin de chaque round, l espérance mathématique du nombre d arêtes supprimées du graphe résiduel G est égale à la moitié du nombre d arêtes dans G. Preuve : La preuve utilise la linéarité de l espérance (voir.2). En effet, soit X le nombre total d arêtes supprimées du graphe à la fin d une phase. Cette v.a. peut être écrite comme somme de v.a. X {u,v} comme suit : X = {u,v} E X {u,v}, où X {u,v} = si, et seulement si, b u b v, c est-à-dire, si la symétrie est brisée entre u et v. Or il est facile de voir que X {u,v} est une v.a. de Bernoulli de paramètre /2 et donc

3.3. ANALYSE DE L ALGORITHME 9 Algorithme 3 : L algorithme Fast Color. : var : 2: couleur v : mot Init mot-vide ; 3: actifs v : N(v) Init N(v) ; 4: b v : {,}} ; 5: Tant que actifs v faire 6: b v flip(,) ; 7: couleur v b v couleur v ; 8: Pour tout u actifs v Faire 9: envoyer b v à u; : recevoir b u de u; : Si b v b u alors 2: active v active v \ {u} ; 3: Fin Si 4: Fin Pour 5: Fin Tant que d espérance /2 (voir.2.7). On en déduit que E (X) = On en déduit le théorème suivant : = {u,v} E {u,v} E = E /2. E ( X {u,v} ) Théorème 3.3 Il existe deux constantes k et K telles que pour tout graphe G à n sommets, le nombre de rounds nécessaires pour supprimer toutes les arêtes de G est. inférieur à k log n en moyenne, 2. inférieur à K log n avec grande probabilité. Preuve : Le point est un résultat direct du lemme 3.2 et du fait que E < n 2. Soit e = {u,v} une arête de G, et soit r >. L arête e n est pas supprimée du graphe après r itérations si, et seulement si, la symétrie entre u et v n a pas été brisée pendant r itérations. Autrement dit, pendant r tirages, u et v ont tiré le même bit. Cet évenement se produit avec probabilité /2 r. Si on note par X r la v.a. qui compte le nombre d arêtes encore dans le graphe après r tirages, il est facile de voir que X r est une v.a. binomiale de paramètres E et /2 r (voir.2.7). Son espérance est donc donnée par : 2 E (X r ) = E 2 r.

2 CHAPITRE 3. COLORIAGE DISTRIBUÉ DES GRAPHES Par ailleurs, en utilisant l inégalité de Markov (voir.27), nous avons P (X r > ) E (X r ). (3.) En prenant r 4log 2 n, et en remarquant que E n 2 /2, l inégalité (3.) devient : P (X r > ) n 2 2 4log 2 n + = n2. (3.2) Or, l algorithme termine dès que X r =, ce qui se produit pour r 4log 2 n avec probabilité P (X r = ) = P (X r = ) n ( 2 ) = o. (3.3) n Il suffit donc de prendre K = 4 pour obtenir le second point du théorème. Pour résumer les résultats de cette section, nous avons le théorème : Théorème 3.4 L algorithme F ast Color calcule une coloration de tout graphe de taille n en O(log n) rounds avec forte probabilité en n utilisant que des messages de bit. 3.4 Réduction du nombre de couleurs L algorithme F ast Color permet d obtenir une coloration propre de tout graphe G de taille n en O (log n) rounds en moyenne et avec forte probabilité. Cependant, le nombre de couleurs utilisés peut être élevé. En effet, l algorithme ne se fixe pas comme objectif d utiliser un nombre réduit de couleurs et la figure 3.2 montre bien comment ce nombre peut être assez grand : le nombre de couleurs utilisé est de 6 alors que 2 couleurs aurait suffi. Dans cette section, nous allons voir comment réduire ce nombre pour n utiliser qu au plus + couleurs pour tout graphe G de degré maximum. L algorithme que nous étudions ici opère en deux phases : la première consiste à exécuter l algorithme Fast Color, la deuxième se base sur les mots générés lors de la première phase afin de calculer un coloriage n utilisant que + couleurs. 3.4. L algorithme Reduce A la fin de la première phase, nous obtenons un coloriage propre du graphe G. Les couleurs sont des mots de bits (la variable couleur v dans l algorithme). Ces mots peuvent être intérprétés comme des codages binaires de nombres. Dans cette section, nous verrons que si on intérpréte couleur v comme le codage binaire d un nombre réel de l intervalle

3.4. RÉDUCTION DU NOMBRE DE COULEURS 2............ Fig. 3.2 Une exécution de l algorithme Reduce. [, ], alors nous pouvons construire un coloriage utilisant un nombre réduit de couleurs. En l occurrence, + couleurs au maximum, où est le degré maximum du graphe. La deuxième phase, (l algorithme Reduce) opère comme suit : quand un sommet v termine l exécution de la phase (l algorithme F ast Color), il obtient une couleur propre. Le but de l algorithme Reduce est d affecter au sommet v une couleur dans l ensemble {,,,d(v)}. Pour tout sommet v, nous définissons x(v) comme le nombre dont le codage binaire est donné par.b b 2... où b, b 2,... sont les bits du mot couleur v suivis d une suite infinie de bits aléatoires uniformes. Notons que les nombres x(u) sont des v.a. indépendantes suivant une même loi. Pour chaque voisin u de v, si x(v) < x(u), alors l arête {u,v} est orientée de u vers v. Ensuite, un sommet v qui n a que des arcs sortant, et qui par conséquent a un nombre x(v) plus petit que tout ses voisins, prends la plus petite couleur encore disponible dans l ensemble {,,,d(v)}, il informe alors ses voisins que cette couleur lui est affectée et donc elle leur est interdite (voir l algorithme 4). La figure 3.4. donne un exemple d exécution de l algorithme. 3.4.2 Analyse de l algorithme Nous avons le théorème suivant : Théorème 3.5 Pour tout graphe G = (V, E) à degré maximum, l algorithme Reduce réalise une ( + ) coloration de G en au plus e + 3log n rounds et ce avec forte probabilité. Preuve : Un sommet v dont le nombre x(v) vérifie la propriété {x(v) < x(u), u N(v)} prends la plus petite couleur encore disponible. Si le degré de v est d(v), cette couleur appartient à l ensemble {,,,d(v)}. Il en résulte que si G est a degré maximum, alors le nombre de couleurs utilisés dans tout le graphe ne peut excéder +. Soit v un sommet quelconque et notons par T v la v.a. qui compte le nombre de phases avant que v ne soit colorié. Il est a remarquer que si v n est pas colorié après t > phases,

22 CHAPITRE 3. COLORIAGE DISTRIBUÉ DES GRAPHES Algorithme 4 : L algorithme Reduce. : var : 2: FC u : entier Init couleur v ; (* couleur finale de v *) 3: IN v : N(v) Init ; 4: OUT v : N(u) Init ; 5: Couleurs v : ensemble de couleurs Init {,,,d(v)} ; 6: Pour chaque v N(v) 7: Si (x(u) < x(v)) alors 8: OUT v = OUT v {v} ; 9: Sinon : IN v = IN v {v} ; : Fin Si; 2: Fin Pour 3: Tant que IN v faire 4: recvoir < c, w > d un voisin w ; 5: IN v = IN v \ {w} ; 6: Colours v = Colours v \ {c} ; 7: Fin Tant que 8: FC v = min{colours v } ; 9: Pour chaque u OUT v 2: envoyer < FC v,u > à v ; 2: Fin Pour ; alors cela veut dire qu il existe au moins une chaine P = {v,v,,v t } telle que v = v et x(v ) > x(v ) > > x(v t ). On en déduit que : P (T v > t) = P ( P = {v = v,v,,v t } x(v ) > x(v ) > > x(v t )) P (x(v ) > x(v ) > > x(v t )). (3.4) P={v =v,v,,v t} Soit P = {v,v,,v t } un chemin dans G tel que v = v. Nous avons : P (x(v ) > x(v ) > > x(v t )) = = x x xt dx t dx dx (t + )!. (3.5) Par ailleurs, si G est à degré maximum, alors le nombre maximum de chemins P de longueur t et ayant une extrémité égale à v est majoré par ( ) t. L expression (3.4) devient : P (T v t) ( )t t! t t!. (3.6)

3.4. RÉDUCTION DU NOMBRE DE COULEURS 23 La formule de Stirling donne t! 2πt ( t e) t, ce qui permet d établir l inégalité suivante : P (T v t) ) t ( e t ( t e ) t. (3.7) t Utilisons à présent la relation ( x) k e kx pour obtenir : Avec t = e + 3 log n, l inégalité (3.8) devient : P (T v t) e (t e ). (3.8) P (T v e + 3log n) n3. (3.9) Si T est la v.a. qui compte le nombre de phases avant que l algorithme Reduce soit terminé dans tout le graphe, nous avons : P (T e + 3log n) = P ( v V T v e + 3log n) v V P (T v e + 3log n) n n3. (3.) Il en résulte que P (T e + 3log n) = o ( n). ce qui prouve le théorème.