• Aucun résultat trouvé

Bornes inférieures sur un algorithme exact basé sur DSATUR résolvant la coloration

N/A
N/A
Protected

Academic year: 2021

Partager "Bornes inférieures sur un algorithme exact basé sur DSATUR résolvant la coloration"

Copied!
2
0
0

Texte intégral

(1)

Bornes inférieures sur un algorithme exact basé sur DSATUR

résolvant la coloration

Ian-Christopher Ternier, Fabio Furini, Virginie Gabrel LAMSADE, CNRS UMR 7243, Université Paris Dauphine Place du Maréchal de Lattre de Tassigny, 75016 Paris, France

{ianchristopher.ternier, fabio.furini, virginie.gabrel}@dauphine.fr Mots-clés : Coloration de Graphe, DSATUR.

1. Introduction

Le problème de coloration de graphes est un problème classique de la théorie des graphes. Dans un graphe G non orienté, étant donné un entier naturel k, une k-coloration du graphe est définie pour une affectation d’un entier de {1, ..., k}, appelé couleur, à chaque sommet du graphe de façon à ce que deux sommets reliés par une arête aient des couleurs différentes. Le problème consiste à déterminer la valeur minimale de k notée χ(G). Ce problème est NP-difficile (Garey et Johnson - 1979).

2. Algorithme exact

On s’intéresse ici à la résolution exacte du problème basée sur DSATUR proposé par Brélaz en 1979 [1], un algorithme de Branch-and-Bound qui cherche à fournir une solution exacte.

DSATUR est un algorithme glouton où on assigne itérativement à chaque sommet i la plus petite couleur disponible parmi {1, ..., n}. A chaque itération, le sommet choisi est celui qui présente le plus grand degré de saturation DSAT (v), qui correspond au nombre de couleurs différentes dans le voisinage N (v) de v. On a C la coloration courante, U B borne supérieure courante et LB borne inférieure, l’algorithme exact basé sur DSATUR (noté DSATUR-B&B) est le suivant :

DSATUR-B&B(C)

k = nombre de couleurs utilisé dans C

Si LB ≥ k → Quitter

Si tous les sommets sont coloriés, alors Si k ≥ U B → Quitter

Sinon U B = k Sinon

v = sommet qui maximise DSAT (v)

Pour chaque couleur c possible dans {1,...,k+1},

C0 = C avec v colorié par c DSATUR(C0)

DSATUR-B&B est un algorithme d’énumération où on choisit le sommet v à colorier selon la règle du DSAT (v). On génère alors au plus k + 1 sous-problèmes en coloriant v potentiel-lement de k couleurs déjà présentes dans le graphe ou dans une nouvelle couleur k + 1. La borne inférieure LB est initialisée au début de l’algorithme dans le sommet racine comme une clique maximale au sens de l’inclusion et n’évolue pas au cours de l’algorithme. DSATUR-B&B initialise cette clique maximale en coloriant itérativement le graphe en suivant la règle du plus grand DSAT (v). Sewell (1996) [2] propose une amélioration de DSATUR basée sur une nou-velle règle pour choisir le sommet à colorier. Il arrive souvent qu’il y ait plusieurs sommets maximisant la valeur de DSAT (v), on choisit alors le sommet de degré le plus élevé. Sewell propose de choisir le sommet maximisant le nombre de couleurs disponibles des sommets non

(2)

colorés dans le voisinage du sommet. San Segundo (2011) [4] propose une amélioration de la règle de sélection de Sewell permettant de réduire le nombre de noeuds par rapport à Sewell sans perdre en efficacité.

3. Amélioration de borne inférieure dans DSATUR-B&B

On propose de mettre à jour la borne inférieure de DSATUR-B&B. A partir d’une coloration partielle à un noeud de l’arborescence, on construit un nouveau graphe GC et on cherche une

borne inférieure sur ce graphe. Pour construire GC, on va créer un sommet par groupe de couleurs qui va représenter et remplacer tous les sommets de son groupe en le connectant à tous les voisins des sommets de son groupe. On cherche une borne inférieure sur GC.

FIG. 1 – Une coloration partielle C dans G et le graphe GC associé

3.1 Borne sur le nombre de stabilité fractionnaire (LB-Clique)

Pour trouver une borne inférieure sur la coloration optimale du graphe GC, il suffit, comme

montré par Schrijver [5], de calculer la relaxation continue du problème de stable maximum formulé à l’aide des contraintes de clique dans le graphe complémentaire ¯GC.

3.2 Borne de stable issue d’une coloration (LB-Stable)

Cornaz et Jost (2008) [3] proposent de résoudre le problème de coloration en résolvant un problème de stable dans un graphe particulier ˜GC. En opérant cette transformation on peut obtenir une borne supérieure ¯α( ˜GC) sur la solution optimale du problème α( ˜GC). α( ˜GC) est

liée à χ(GC) par l’inégalité suivante : χ(GC) + α( ˜GC) = n [3], on a donc n − α( ˜GC) = χ(GC)

et n − ¯α( ˜GC) ≥ χ(GC).

4. Conclusions et perspectives

A partir de ces transformations, on peut considérer plusieurs bornes supérieures comme une relaxation semi-définie positive du problème ou une relaxation linéaire sur une formulation compacte du problème de coloration. En utilisant ces bornes inférieures dans DSATUR-B&B (y compris obtenues par relaxation semi-définies positives), on espère améliorer les performances de cet algorithme au niveau du temps CPU et du nombre de noeuds de l’arborescence.

Références

[1] D. Brélaz, New methods to color the vertices of a graph. Communications of the ACM

(CACM) 22(4) : 251-256, 1979.

[2] E. Sewell, An improved algorithm for exact graph coloring. Cliques, coloring, and

satisfia-bility. Proceedings of the second DIMACS implementation challenge26 : 359-373, 1996.

[3] D. Cornaz, V. Jost, A one-to-one correspondence between colorings and stable sets.

Ope-rations Research Letters 36(6) : 673-676, 2008.

[4] P. San Segundo, A new DSATUR-based algorithm for exact vertex coloring. Computers &

Operations Research 39(7) : 1724-1733, 2012.

[5] A. Schrijver, Combinatorial optimization, Springer-Verlag, Berlin Heidelberg : 1095-1096, 2002.

Références

Documents relatifs

L’algorithme de compression proposé ici génère un ensemble K de N points clés représentant une CLUT F donnée en en- trée, telle que la CLUT F e N reconstruite à partir de K

Écrire une fonction Matlab qui prend en entrée un graphe non orienté arbitraire et qui fournit en sortie le nombre de chemins de longueur k allant du sommet i au sommet j où k,

On dit que le nombre a = p h , avec h entier naturel, est une constante d’Eisenstein entière p-adique (ou une constante d’Eisenstein p-adique) pour la fonction f s’il existe un

Dans cet article, après avoir proposé un nouveau descripteur invariant aux transformations géométriques usuelles, basé sur la transformée de Radon appelé phi-signature, un

Ce problème peut se ramener à la recherche de la plus longue chaîne dans un graphe orienté à 50 sommets possédant un circuit (comme justifié ci-dessous), ce qui est un problème

Un graphe non-orienté (pas forcément simple) est planaire s’il admet une représentation sagittale dans un plan sans que les arêtes se croisent. K 4 est

— L'algorithme étudié concerne le calcul des plus courts chemins dans un graphe non orienté* La méthode employée s'inspire de celle de Dantzig mais la réduction du nombre de

 Les instances sont la donnée d’un graphe fini orienté et d’un entier ;..  Les instances positives sont les graphes dont il existe un sous- graphe de complet à