[PDF] Gloutonner
Le principe de l'algorithme glouton (greedy algorithm) : On cherche `a obtenir une coloration des sommets d'un graphe qui
[PDF] Coloriage de sommets
Une coloration du graphe de Petersen avec 3 couleurs L'algorithme glouton centralisé est correct et termine en n étapes Il utilise ? + 1 couleurs
[PDF] L3 Info Cours 10 : Algorithmes gloutons Coloration de graphe
Complexité des algorithmes de graphes Coloration de graphe Il n'existe pas toujours un algorithme glouton pour résoudre un problème d'optimisation
[PDF] Coloration de graphes
Montrer qu'un graphe est 2-coloriable si et seulement si il ne possède pas de cycle de longueur impaire 2 Algorithme glouton Le problème du 2-coloriage est
[PDF] Coloration de graphes - Collège sciences et technologies
ENSM - Éléments de Théorie des Graphes Une k-coloration (propre) d'un graphe (simple sans l'algorithme glouton suivant :
[PDF] Allocation de Fréquences par Coloration de Graphes - Loria
2 1 Coloration séquentielle : l'algorithme glouton Une première approche pour colorer le graphe est de prendre ses sommets les uns après les
[PDF] Gloutonner
Montrer qu'une coloration du graphe par notre algorithme glouton de coloration utilise un nombre de couleurs égal au nombre chromatique avec une numérotation
[PDF] L3 Info Cours 10 : Algorithmes gloutons Coloration de graphe
Complexité des algorithmes de graphes Coloration de graphe Il n'existe pas toujours un algorithme glouton pour résoudre un problème d'optimisation
[PDF] Coloration dun graphe
L'algorithme glouton consiste à parcourir les sommets par ordre croissant d'index en attribuant à chaque sommet la plus petite couleur disponible (c'est-à-dire
[PDF] Coloration de graphes
L'algorithme glouton consiste à trouver un coloriage du graphe de la façon suivante : on numérote les sommets v1 vn de G puis on les colorie dans cet ordre
[PDF] Chapitre 4 Coloration de graphes
On peut considérer un algorithme glouton qui affecte une couleur d'indice la plus petite possible `a un sommet v en fonction des voisins déj`a coloriés suivant
[PDF] Allocation de Fréquences par Coloration de Graphes - Loria
2 1 Coloration séquentielle : l'algorithme glouton Une première approche pour colorer le graphe est de prendre ses sommets les uns après les
[PDF] L3: cours Graphes I6S3 Chapitre III : coloration de graphe
7 jan 2019 · Cet algorithme colorie tout graphe G en au plus ?(G)+1 couleurs o`u ?(G) est le degré maximum des sommets de G En pratique il vaut mieux
[PDF] Écrit Blanc dinformatique Préparation au CAPES de Mathématiques
19 déc 2018 · L'algorithme glouton construit un coloriage L d'un graphe G en utilisant au plus d(G)+1 couleurs Son principe est le suivant :
Comment faire algorithme glouton ?
2.1.
L'algorithme glouton sélectionne la plus grande valeur vn et la compare à s. somme restant à rendre étant alors s ? vn. L'algorithme continue avec la même système de pi?s Sn et cette nouvelle somme à rendre s ? vn. L'algorithme est ainsi répété jusqu'à obtenir une somme à rendre nulle.Quand utiliser un algorithme glouton ?
Cas d'usages d'algorithmes gloutons
optimiser la mise en cache de données ; compresser des données ; organiser au mieux le parcours d'un voyageur visitant un ensemble de villes ; organiser au mieux des plannings d'activité ou d'occupations de salles.Quel est le principe de l'algorithme de Dsatur ?
L'algorithme DSATUR est un algorithme de coloration séquentiel, au sens où il colore un seul sommet non déjà coloré à la fois et tel qu'au départ le graphe n'est pas coloré.- Le problème de coloration de graphe consiste à assigner à chaque sommet une couleur de sorte que deux sommets adjacents n'aient pas la même couleur, tout en utilisant un nombre minimal de couleurs. Ce dernier est le nombre chromatique ?( ) du graphe G.
![[PDF] Allocation de Fréquences par Coloration de Graphes - Loria [PDF] Allocation de Fréquences par Coloration de Graphes - Loria](https://pdfprof.com/Listes/17/33121-17rapport.pdf.pdf.jpg)
Allocation de Fréquences par Coloration
de GraphesTable des matières
1 Généralités2
1.1 Le problème d"allocation de fréquences . . . . . . . . . . . . . .. . . . . . . . . . . 2
1.2 Graphes, définitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . 3
1.3 Le problème de coloration . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . 3
2 Graphes quelconques : des algorithmes d"approximation 4
2.1 Coloration séquentielle : l"algorithme glouton . . . . . .. . . . . . . . . . . . . . . 4
2.2 Deux heuristiques différentes . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . 5
2.2.1 Welsh & Powell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .5
2.2.2 DSATUR . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3 Graphes triangulés : un algorithme linéaire de colorationoptimale 6
3.1 Généralités sur les graphes triangulés . . . . . . . . . . . . . .. . . . . . . . . . . . 6
3.2 Parcours en largeur lexicographique - LexBFS . . . . . . . . .. . . . . . . . . . . . 6
3.3 Affinage de partition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . 7
4 Résultats expérimentaux8
4.1 Sur des graphes pseudo-aléatoires . . . . . . . . . . . . . . . . . .. . . . . . . . . . 8
4.2 Sur des graphes de DIMACS . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . 10
Conclusion et perspectives12
Références12
11 Généralités1.1 Le problème d"allocation de fréquences
Imaginons que l"on veuille construire un réseau d"antennesradios. Il faudra réserver certainesfréquences de communication, que l"on attribuera à nos antennes afin qu"elles puissent communi-
quer entre elles. Il faut aussi minimiser le nombre de fréquences à réserver, car chaque réservation
a un coût. Une première modélisation du problème, en radio AMpar exemple, montre que si deux
antennes "assez proches" géographiquement émettent dans des fréquences trop voisines l"une de
l"autre, leur spectres en fréquences se recouvrent et il devient impossible d"extraire l"information
nécessaire du signal reçu. On dit alors que les antennes interfèrent.On modélise ainsi le réseau d"antenne par un graphe, appelégraphe d"interférences, dont les
sommets sont les antennes, et les arêtes relient deux antennes qui interfèrent entre elles. Les fré-
quences à allouer correspondent à des couleurs (représentées par des entiers) avec lesquelles nous
colorons les sommets du graphe. La coloration doit être une coloration propre : deux sommets adjacents ne peuvent recevoir la même couleur. Le graphe sera de plus non-orienté, la relation "interfère" étant supposé symétrique.Figure1 - Un réseau d"antennes
21.2 Graphes, définitions
Supposons maintenant le graphe d"interférence du réseau connu. Rappelons quelques définitions
et notations utilisées par la suite : •Ungrapheest un coupleG= (V,E) oùVest un ensemble fini, ses éléments sont lessommets du graphe, etE?V2, ses éléments sont lesarcsdu graphe. Ici les graphes sontsimples(?a?V,(a,a)/?E) etnon-orientés(?a,b?V,(a,b)?E?? (b,a)?E. Les arcs sont alors appelés desarêtes. L"ordre(resp. lataille) d"un graphe est le nombre de ses sommets (resp. arêtes). Par la suite nous prendronsV=?0,n-1?, oùn=|V|, et on noteram=|E|. •Deux sommetsaetbsont ditadjacentsouvoisinssi (a,b)?Eou (b,a)?E. Soita?V, on note alorsN(a) ={b?V,(a,b)?E ou(b,a)?E}l"ensemble des voisins àa, ouvoisinage dea. On noted(a) =|N(a)|le nombre de voisins dea, oudegrédea. •H= (V?,E?) est unsous-graphedeGsiV??VetE??E. SoitS?V, on noteG[S] le graphe (S,E∩(S×S)), appelésous-graphedeGinduit, ouengendré, parS. •Unechaînedelongueurkest une suite finie de sommets deux à deux adjacentsv0v1...vk, i.e. telle que?i??1,k?,(vi-1,vi)?E. Uncyclede longueurkest une chaînev0v1...vktelle quev0=vk. Dans une chaînev0v1...vk, unecordeest une arête (vi,vj)?E, avecj?=i±1.Enfin, untrouest un cycle sans corde.
1.3 Le problème de coloration
SoitG= (V,E) un graphe simple non-orienté. Une applicationσ:V→Nest appelée une coloration propredeGsi?(a,b)?E,σ(a)?=σ(b), i.e. deux sommets adjacents n"ont jamais la même couleur. Soitk=|σ?V?|, on dit alors queσest unek-coloration propredeG, et queGestk- colorable. Le plus petit entierkpour lequelGestk-colorable est appelénombre chromatiquedeG,notéχ(G). Nous recherchons ainsi une coloration optimale deG, c"est-à-dire uneχ(G)-coloration
propre deG.Allouer des fréquences au réseau d"antennes revient alors àcolorer proprement son graphe d"in-
terférences. Notons qu"en raison de contraintes géographiques, technologiques, ou autres (présence
de montagnes, etc.), nous ne pouvons pas faire d"hypothèsesa priorisur la structure du graphe d"interférences. Nous donnerons donc un exemple de méthode employée pour colorer un graphe d"une manièreplus générale. Trouver une coloration optimale d"un graphequelconque étant un problème NP-
Complet, nous exposerons tout d"abord des algorithmes de coloration non-optimale dans le cas général, ainsi qu"un algorithme optimal dans un cas particulier. 1 03 4 2 5 6Figure2 - Un graphe d"interférence coloré
32 Graphes quelconques : des algorithmes d"approximation2.1 Coloration séquentielle : l"algorithme glouton
Une première approche pour colorer le graphe est de prendre ses sommets les uns après lesautres afin de leur affecter une couleur, tout en veillant à ce que deux sommets adjacents n"aient
jamais la même couleur : c"est l"algorithme de coloration séquentielle. Nous obtenons ainsi une
coloration propre du graphe, pas forcément optimale, et quidépend fortement de l"ordre de visite
des sommets.Programme 1Coloration séquentielle
Entrée :Un graphe quelconqueG= (V,E), une permutation des sommetsσ:?0;n-1?→VSortie :Une coloration proprec:V→N
1:n :=|V|;
2:Couleur := Tableau(Taille : n) (Défaut :-1);
3:Pouri = 0 à n-1faire
4:x :=σ(i);
5: # Recherche de la plus petite couleur non utilisée dansN(x) #6:Libre := Tableau(Taille :???) (Défaut :vrai);
7:Poury? N(x)faire
8:SiCouleur.(y)?= -1alors
9:Libre.(Couleur.(y))←faux
10:Fin Si
11:Fin Pour
12:index := 0;
13:Tant QueLibre.(index) =fauxfaire
14:index := index + 1
15:Fin Tant Que
16: # Affecter la couleur donnée parindexàx#17:Couleur.(x)←index
18:Fin Pour
19:RenvoyerCouleur
La complexité temporelle de l"algorithme estO(n+m). 0 1 2Figure3 - Coloration séquentielle d"un graphe
42.2 Deux heuristiques différentes2.2.1 Welsh & Powell
Il s"agit maintenant d"utiliser l"algorithme de coloration séquentiel avec un ordre judicieux, en vue d"obtenir une coloration propre la plus "acceptable"possible. L"algorithme de Welsh & Powell consiste ainsi à colorer séquentiellement le grapheen visitant les sommets par ordre dedegré décroissant. L"idée est que les sommets ayant beaucoup de voisins seront plus difficiles à
colorer, et donc il faut les colorer en premier. La complexité de l"algorithme devientO(nlnn+m) en utilisant un tri par comparaison, mais resteO(n+m) avec un tri par dénombrement. Cependant on peut parfois aboutir aux pires colorations possibles (n2au lieu de 2). L"heuristique
DSATUR propose une amélioration du principe de l"algorithme de Welsh & Powell afin d"éviter ce problème.2.2.2 DSATUR
Ici, l"idée est que les sommets difficiles à colorer sont ceux qui ont le plus de voisins de couleurs
différentes, puis ceux qui ont le plus de voisins tout court. Concrètement, on définit ledegré de
saturationd"un sommeta, notéDSAT(a) comme suit : •Sian"a aucun voisin colorié alorsDSAT(a) = degré dea. •Sinon,DSAT(a) = nombre de couleurs différentes utilisées pour colorer lesvoisins dea. Ou encore, siσdésigne la fonction de coloration partielle,DSAT(a) =?d(a)si σ?N(a)?=∅ |σ?N(a)?|sinonAprès initialisation deDSAT(a) àd(a) pour touta, on répète alors les opérations suivantes :
1. Prendre un sommet non coloréxdeDSATmaximum.
2. Colorerxavec la plus petite couleur disponible.
3. Mettre à jourDSAT(y) poury? N(x).
La complexité temporelle de l"algorithme dépend de l"implémentation effectuée. Elle peut être
O?n2?ouO?n2+nm?selon la structure utilisée.
DSAT= 1
DSAT= 1
DSAT= 1←2DSAT= 1←2
1 03 4 526
Sommet visit´es : 1,6,2
Figure4 - Une étape de l"algorithme DSATUR
53 Graphes triangulés : un algorithme linéaire de coloration
optimale3.1 Généralités sur les graphes triangulés
Nous allons maintenant donner un algorithme optimal qui permet de colorer une classe degraphe bien particulière : les graphes triangulés. Nous présentons ici les définitions et propriétés
utiles à cet algorithme. •Un grapheG= (V,E) est dittriangulés"il ne contient pas de trou de longueur≥4. •Un sommetadeGestsimplicialsi tous ses voisins sont adjacents 2 à 2. •Unschéma(ouordre)d"élimination simplicialest une permutationσ:?0,n-1?→Vtelle que pour toutidans?0,n-1?,σ(i) soit simplicial dansG[σ??0,i??]. On peut alors démontrer la caractérisation suivante, sur laquelle repose l"algorithme LexBFS :Propriété 1.Gest triangulé si et seulement si il admet un schéma d"élimination simplicial.
L"utilité d"une telle caractérisation est manifeste, car on peut montrer qu"une coloration sé-
quentielle selon un tel ordre offre une coloration optimale.Le problème consiste donc à trouver
efficacement un tel schéma dans le cas des graphes triangulés,c"est le but de l"algorithme LexBFS.
Graphe Triangul´e
Sommet simplicial :
Tous ses voisins sont adjacents 2 `a 2
Sch´ema d"´elimination simplicial :
x1,x2,...,xn xi x 2 x 1x pxi x 2 x 1x p (p≥4) xx1x 2x ix nFigure5 - Illustrations
3.2 Parcours en largeur lexicographique - LexBFS
Il se présente comme une variante du parcours en largeur classique de graphe (dit BFS pour "Breadth First Search"). Considérons l"alphabetA=?1,n?, et munissons l"ensemble des mots surAde l"ordre lexicographique?, défini intuitivement comme étant l"ordre du dictionnaire.Onassocie alors à chaque sommetxune étiquetteL(x)?A?, initialement égale àε, oùεdésigne le
mot vide deA?.On effectue ensuite les opérations suivantes :
Pourivariant de0àn-1 :
1. Prendre un sommetxd"étiquette maximale pour?parmi les sommets non visités.
2. Affecter le numéroiàx.
3. Effectuer la mise à jourL(y)←L(y)·(n-i) poury? N(x)
6Programme 2Parcours en Largeur Lexicographique
Entrée :Un graphe quelconqueG= (V,E), un sommet sources?VSortie :Une bijectionσ:V→?0,n-1?
1:n :=|V|;
2:Numero := Tableau(Taille : n) (Defaut : -1);
3:Label := Tableau(Taille : n) (Defaut : "");
4:Pouri = 0 à n-1faire
5:Soit x tel que Label.(x) = max{Label.(y), Numero.(y) = -1};
6:Numero.(x)←i;
7:Poury? N(x)faire
8:SiNumero.(y) = -1alors
9:Label.(y)←Label.(y) ˆ String_of_Int (n-i)
10:Fin Si
11:Fin Pour
12:Fin Pour
13:RenvoyerNumero
Nous obtenons alors un ordreσ:V→?0,n-1?sur les sommets du graphe, appelé "ordre lexicographique", qui vérifie la propriété suivante :quotesdbs_dbs29.pdfusesText_35[PDF] algorithme de coloration de graphe en java
[PDF] coloration des graphes pdf
[PDF] coloration graphe terminale es
[PDF] algorithme de coloration de graphe en c
[PDF] algorithme de coloration de graphe en python
[PDF] coloriage magique avec les puissances correction
[PDF] coloriage numérique isabelle guillot
[PDF] écrire une fraction sous la forme d'un entier et d'une fraction cm2
[PDF] les fractions supérieures ? 1
[PDF] cours cap coiffure la permanente
[PDF] cours coloration cap coiffure
[PDF] boxe anglaise veteran
[PDF] reglement boxe anglaise
[PDF] boxe anglaise technique de base