Vous êtes sur la page 1sur 7

Colorations des sommets

Complment au chapitre 7 Lhomme la cagoule et au chapitre 9 Lapprentie sudokiste En 1852, le jeune anglais Francis Guthrie s'est demand s'il est toujours possible de colorer une carte de gographie l'aide de quatre couleurs, en respectant la condition que deux pays voisins ne soient pas recouverts par la mme couleur. Ce n'est qu'en 1976 que deux chercheurs amricains, K. Appel et W. Haken, de l'Universit de l'Illinois, ont pu rpondre affirmativement cette conjecture des quatre couleurs. Plus d'un sicle s'est donc coul entre l'nonc et la rsolution de ce problme en apparence trs simple. Tout au long de ces annes, les chercheurs ne sont bien sr pas rests inactifs et de nombreuses tentatives de dmonstration de la conjecture ont donn lieu de nouveaux dveloppements mathmatiques ainsi qu' une formulation du problme en termes de graphes. La carte colorer a t remplace par un graphe, chaque pays tant reprsent par un sommet et deux pays voisins tant relis par une arte. Dfinition Une coloration des sommets dun graphe G est une affectation de couleurs aux sommets telle que chaque arte de G ait ses deux extrmits de couleur diffrente. On cherche gnralement dterminer une coloration utilisant aussi peu de couleurs que possible. Le plus petit nombre de couleurs ncessaire pour colorer les sommets d'un graphe G est appel le nombre chromatique de G et est not (G). On peut aussi colorer les artes en vitant que des artes incidentes un mme sommet aient la mme couleur. Cest ce que nous avons dj dfini dans le chapitre traitant de couplages. Dfinition Une coloration des artes dun graphe G est une affectation de couleurs aux artes telle que les artes ayant une extrmit en commun soient de couleur diffrente. On cherche gnralement dterminer une coloration utilisant aussi peu de couleurs que possible. Le plus petit nombre de couleurs ncessaires pour colorer les artes dun graphe G sappelle lindice chromatique de G et est not q(G). Reprenons lexemple de coloration des artes vu dans un chapitre prcdent. On doit raliser 5 tches T1, T2, T3, T4 et T5, chacune de ces tches ayant une dure dune journe. Les tches T1 et T2 doivent tre ralises par lemploy E1, les tche T3 et T4 par lemploy E2 et la tche T5 par lemploy E3. Les tches T1 et T3 requirent la machine M1, les tches T2 et T4 la machine M2 et la tche T5 la machine M3. Sachant que chaque employ ne peut raliser quune tche la fois et que chaque machine ne peut tre utilise que par un employ la fois, combien de jours faut-il au minimum pour raliser ces 5 tches ? Ce problme est quivalent une coloration des artes du graphe ci-dessous laide dun nombre minimum de couleurs, de telle sorte que les artes qui se touchent aient des

couleurs diffrentes. Chaque couleur correspond un jour. Il faut donc 2 jours. Par exemple, on peut faire les tches T1, T4 et T5 le 1er jour, et les tches T2 et T3 le 2me jour.

Considrons maintenant le mme problme avec une contrainte supplmentaire. Les tches T2, T3 et T5 monopolisent lunique engin filoguid de lentreprise, et cet engin ne peut pas aider la ralisation de deux tches simultanment. Le nombre minimum de jours ncessaires la ralisation des 5 tches peut tre dtermin en colorant les sommets du graphe ci-dessous en un nombre minimum de couleurs, de telle sorte quaucune arte nait ses deux extrmits de mme couleur. nouveau, chaque couleur correspond un jour. Il faut donc 3 jours. Par exemple, on peut faire les tches T1, T4 et T5 le premier jour, la tche T2 le deuxime jour et la tche T3 le troisime jour.

En fait, de nombreux problmes concrets se ramnent la recherche d'une partition d'un ensemble d'objets en sous-ensembles ne comportant que des lments compatibles deux deux. Par exemple, la dtermination d'un horaire scolaire est une partition du temps en priodes durant lesquelles seuls des cours pouvant avoir lieu simultanment y sont donns. On peut modliser ce genre de problme en termes de coloration des sommets d'un graphe : les sommets sont les objets de la partition et les artes reprsentent les incompatibilits entre les objets. Pour l'exemple de l'horaire scolaire, les sommets sont les cours devant tre placs dans la grille horaire, et on relie deux cours par une arte si ces cours ne peuvent pas tre donns simultanment (parce qu'ils concernent un mme enseignant, s'adressent aux mmes tudiants, ou doivent tre donns dans une mme salle). Le problme de la coloration des artes dun graphe a t trait dans un chapitre prcdent. Nous nous intressons ici la dtermination du nombre chromatique. Remarquons quen considrant le graphe de ligne L(G) dun graphe G on a bien videmment que colorer les artes de G est quivalent colorer les sommets de L(G). Lindique chromatique de G est donc gal au nombre chromatique de son graphe de ligne, ce qui scrit : q(G) = (L(G))

Dfinition Une clique dans un graphe est un ensemble de sommets tous relis 2 2. La taille de la plus grande clique dans un graphe G se note (G). tant donn que les sommets dune clique doivent tous avoir des couleurs diffrentes, on dduit que le nombre chromatique (G) de G ne peut pas tre infrieur (G). Il peut par contre est strictement suprieur, comme cest le cas par exemple pour le pentagone. En effet, il faut (G)=3 couleurs pour colorer ses sommets alors que (G)=2.

Comme autre exemple, nous pouvons donner le graphe dfini par Manori pour dterminer le coupable du braquage lpicerie de Madame Rossier.

Manori a dmontr que bien que ce graphe ne contienne aucune clique 4 sommets, son nombre chromatique est suprieur 3. En fait, on ne peut le colorer en 3 couleurs que si on te le sommet I. Pour rappel, Vizing a dmontr que lindique chromatique est toujours au plus gal au plus grand degr + 1, cest--dire q(G) (G)+1. Nous pouvons faire les observations suivantes : un ensemble dartes dans G ayant toutes une extrmit en commun correspond une clique dans son graphe de ligne L(G), ce qui montre que (L(G)) (G); si L(G) nest pas un triangle, une clique dans L(G) correspond un ensemble dartes toutes incidentes un mme sommet dans G, ce qui montre que (G) (L(G)).

En rsum, si L(G) nest pas un triangle, on a (G)=(L(G)). Si L(G) est un triangle, tel que dj constat dans un autre chapitre, et tel quillustr nouveau ci-dessous, il se peut que G soit galement un triangle, dans quel cas, 2=(G) < (L(G))=3.

tant donn que q(G)=(L(G)), le rsultat dmontr par Vizing peut donc se rcrire comme suit : (L(G)) (L(G))+1. Par le raisonnement ci-dessus, ce rsultat est vrai si L(G) nest pas un triangle. Il est galement vrai si L(G) est un triangle puisque dans ce cas, 3= (L(G)) < (L(G))+1=4. En dautres termes, nous venons de voir que le nombre chromatique dun graphe de ligne nest jamais beaucoup plus grand que la taille de sa plus grande clique. Ce rsultat nest cependant plus valable pour les graphes quelconques. En effet, il a t dmontr que lcart entre (G) et (G) peut tre aussi grand quon peut limaginer. Voici un exemple o (G) = (G)+2. Ce graphe a t construit comme suit. On a tout dabord considr deux pentagones, lun constitu des sommets a,b,c,d,e et lautre des sommets A,B,C,D,E. On a ensuite rajout une arte entre tous les sommets du premier pentagone et ceux du deuxime pentagone.

tant donn quil faut 3 couleurs pour colorer un pentagone, il faut 6 couleurs pour colorer ce graphe. Aussi, la plus grande clique dans un pentagone contient 2 sommets, ce qui signifie que la plus grande clique dans le graphe en entier est de taille 4. En rsum, on a (G)=6=4+2=(G)+2. Le problme de la dtermination du nombre chromatique d'un graphe G est difficile rsoudre. Les meilleurs algorithmes exacts connus ce jour ne permettent pas de

dterminer le nombre chromatique de graphes ayant plus de 100 sommets. Ces problmes peuvent par contre tre plus faciles pour certaines familles de graphes. Par exemple, pour un graphe biparti comportant au moins une arte, on sait que (G)=2 puisquon peut attribuer une couleur lune des parties de la partition de V, et une autre couleur la deuxime partie. Nous avons galement vu quil est facile de colorer un graphe dintervalles. Pour un gros graphe quelconque, on na pas dautre choix que de recourir aux heuristiques qui donnent des solutions de qualit raisonnable en des temps raisonnables. Nous prsentons ici quelques unes de ces heuristiques. Les mthodes constructives de coloration des sommets dun graphe parcourent squentiellement les sommets, en attribuant chaque sommet la plus petite couleur possible (les couleurs sont numrotes). La qualit de la solution ainsi obtenue dpend fortement de l'ordre dans lequel les sommets sont considrs. Celui-ci peut tre choisi a priori ou alors construit de manire dynamique. Il est important de remarquer que tout graphe possde un ordre des sommets partir duquel la mthode constructive produit une coloration en un nombre minimum de couleurs. Pour s'en convaincre, il suffit de considrer une coloration du graphe G en (G) couleurs et d'ordonner les sommets de G en prenant d'abord les sommets de couleur 1, puis ceux de couleur 2, et ainsi de suite. Proprit Une mthode constructive nutilisera jamais plus de (G)+1 couleurs. Preuve Quand on colore un sommet, un maximum de (G) couleurs peuvent dj apparatre dans son voisinage. Il est intressant de noter quun algorithme de coloration squentielle peut se tromper sur le graphe suivant qui ne contient que 4 sommets.

En effet, si on colore ce graphe avec lodre a,d,b,c, on donnera la couleur 1 a et d, la couleur 2 b et la couleur 3 c. Ce graphe peut pourtant facilement tre color laide uniquement de 2 couleurs (couleur 1 pour a et c et couleur 2 pour b et d). Ce graphe est not P4 de langlais (Path on 4 vertices) car cest une chane sur 4 sommets. Il a t dmontr (par Chvtal) que si un graphe ne contient aucun quadruplet de sommets a,b,c,d ayant la structure dun P4 (cest--dire que a est reli b mais pas c et d, b est reli aussi c mais pas d. et c est galement reli d), alors lalgorithme squentiel produira une coloration optimale en (G) couleurs, quel que soit lordre utilis. Les mthodes de coloration constructives les plus rpandues peuvent tre dcrites comme suit. Tout dabord, parmi les mthodes constructives bases sur des ordres statiques, les plus connues sont les suivantes : RANDOM Les sommets sont tris de manire alatoire. LF (Largest First) Les sommets sont tris par ordre de degr non croissant.

SL (Smallest Last) L'ordre v1,v2,,v|V| des sommets est tel que vi a le plus petit degr dans le graphe ne contenant plus que les sommets v1,v2,,vi. Illustration

Coloration avec lalgorithme LF

Coloration avec lalgorithme SL tant donne une coloration partielle de G, dfinissons le degr de saturation DSAT(v) d'un sommet v dans G comme le nombre de couleurs diffrentes dj affectes aux sommets voisins de v. tant donn un sous-ensemble W de sommets dans G, DEGW(v) mesure le nombre de sommets w dans W qui sont voisins de v. Dans ce qui suit, le sousensemble A de sommets correspond l'ensemble des sommets qui ne sont pas encore colors. Parmi les mthodes constructives bases sur des ordres dynamiques, la plus utilise est la suivante : DSATUR L'ordre des sommets est construit en choisissant chaque tape le sommet v de A qui maximise DSAT(v). Si deux sommets v et w ont le mme degr de saturation, v prcde w pour autant que DEGA(v)DEGA(w). Illustration

Coloration avec lalgorithme DSATUR Le tableau ci-dessous donne quelques indications sur les performances de ces quatre heuristiques lorsqu'on les applique des graphes gnrs alatoirement. Nous notons Gn,d un graphe alatoire form de n sommets et dans lequel chaque arte a une probabilit d d'exister, indpendamment des autres artes. La probabilit d est appele la densit du graphe. Tous les rsultats du tableau ci-dessous sont des moyennes calcules sur dix

graphes alatoires. Nous donnons pour chaque heuristique le nombre moyen de couleurs utilises pour colorer le graphe Gn,d considr.
n 100 300 500 1000 d 0.4 0.5 0.6 0.4 0.5 0.6 0.4 0.5 0.6 0.4 0.5 0.6 RANDOM 17.60 21.35 26.20 39.00 48.20 61.00 57.20 72.40 91.40 99.50 126.50 160.50 LF 16.10 20.15 24.50 37.10 46.00 58.20 56.00 69.20 87.60 96.50 122.00 155.00 SL 16.65 20.50 24.85 38.10 46.80 58.90 56.80 71.80 89.60 97.00 124.50 157.00 DSATUR 14.70 18.45 22.60 34.30 43.30 53.70 51.00 65.00 82.80 92.00 116.00 146.50

Pour des graphes alatoires d'au plus 1000 sommets, toutes ces mthodes ont des temps de calcul de l'ordre de la seconde. Notons quil existe des algorithmes beaucoup plus efficaces, mais plus lourds implanter. Par exemple, pour le graphe 1000 sommets et densit 0.5, les rsultats du tableau ci-dessus se situent entre 116 et 127 couleurs alors que les meilleurs algorithmes connus ce jour parviennent dterminer des colorations de ces mmes graphes en 82 couleurs (mais avec quelques heures de calcul). Nous terminons ce chapitre en reparlant de Manori qui a utilis la coloration des sommets dun graphe pour trouver la solution au premier sudoku qui lui a t soumis par la jeune Lei. En fait, tout problme de sudoku revient colorer un graphe 81 sommets en 9 couleurs avec quelques sommets ayant dj une couleur impose. Ce graphe contient un sommet par case et deux sommets sont relis par une arte sils correspondent des cases se trouvant sur la mme ligne, la mme colonne ou le mme carr 3x3 de la grille. Pour la grille propose par Lei, Manori ne considre que 6 cases particulires reprsentes ci-dessous. 5 7 A B 9 5 E 4 3 6 7 6 F C D 7

1 9 5

1 3

Manori remarque que ces 6 cases ne peuvent recevoir que les chiffres 2, 4 et 8. Il doit donc colorer ce graphe en 3 couleurs, lune reprsentant le 2, une autre pour le 4 et une dernire pour le 8. Il fait ensuite remarquer que la seule solution possible attribue une mme couleur A et C, une 2me couleur B et D, et finalement une 3me E et F. Il suffit alors dobserver que les cases D et E ne peuvent pas recevoir le chiffre 4 pour conclure que la couleur reprsentant le chiffre 4 ne peut tre attribue quaux cases A et C.