100% ont trouvé ce document utile (1 vote)
534 vues11 pages

Rapport Complexité

Transféré par

Yassine Harbegue
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
100% ont trouvé ce document utile (1 vote)
534 vues11 pages

Rapport Complexité

Transféré par

Yassine Harbegue
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
Vous êtes sur la page 1/ 11

Introduction gnrale

Au niveau du projet R.O complexit nous avons eu location dtudier le phnomne de coloration de graphe, qui est un phnomne utiliser dans plusieurs domaines et sur tout dans le domaine de tlcommunication , et notre tache consist a tudier ce phnomne et a concevoir un programme qui doit permettre de colorer un graphe avec le moins de couleurs possibles et qui semble le plus fiable avec la complexit la plus faible et un temps de rponse optimale . Ce rapport rsume notre travail. Il est compos de trois chapitres diviss comme suit : Le premier chapitre Etude de lart sera ddi pour ltude de phnomne coloration de graphe avec les diffrentes solutions algorithmiques disponibles et une comparaison entre eux. Dans le second Solution optimale second peut plus au niveau de lalgorithme optimale. Dans le dernier chapitre intitul Implmentation nous prsentons la solution implmente. ce chapitre est consiste sapprofondir un

Chapitre 1 Etat de lart


:

I.

Coloration de graphe
Conformment la dfinition fournie par le professeur Hao, colorer un graphe consiste attribuer une couleur chacun de ses sommets de sorte que deux sommets adjacents aient une couleur diffrente, et de manire obtenir un nombre de couleurs le plus faible possible. Ce nombre minimum est appel nombre chromatique du graphe color.

II.

Problmatique
Dans le cas gnral, le calcul du nombre chromatique d'un graphe non-orient constitue un problme NP-complet ; Un problme NP-complet est un problme de dcision qui est possible de lui vrifier une solution efficacement (en temps polynomial). Cela signifie que bien que l'on puisse rapidement en vrifier une solution mais on ne sait pas en dterminer un rsultat efficace. Ainsi, un algorithme de coloration exact prsente une complexit exponentielle. En effet, la mthode la plus performante connue ce jour demeure dans l'impossibilit de prouver que le nombre chromatique qu'elle permet d'obtenir correspond bien au plus petit k possible ds lors qu'elle traite un graphe de plus de 125 sommets. Les mthodes approches prsentent donc un intrt certain, bien qu'elles ne garantissent de fournir un rsultat optimal.

III.

Solution
Nous avons choisi dtudier plusieurs algorithmes de coloration de graphe afin de permettre une comparaison de leurs performances en termes de temps de rponse et defficacit.

1. Algorithme Glouton
L'algorithme glouton constitue probablement la mthode de coloration la plus intuitive qui soit. De ce fait, il est trs facile mettre en uvre. Son principe est simple ; il parcoure le graphe selon l'ordre de cration des nuds, et pour chaque nud, il vrifie quelles couleurs ont t attribues ses voisins afin de savoir lesquelles demeurent disponibles. S'il n'existe plus de couleur disponible, on en cre une nouvelle. Cet algorithme permet une coloration trs rapide d'un graphe, mais le nombre chromatique obtenu est rarement optimal.

Figure 1 Illustration du maximum local de l'algorithme glouton

Comme reprsente le schma suivant En partant du point A et en cherchant monter selon la plus forte pente, un algorithme glouton trouvera le maximum local "m", mais pas le maximum global "M".

2. Algorithme Glouton ordonn


Cet algorithme est une variante de la mthode gloutonne. Il en diffre uniquement dans la mesure o il trie pralablement les sommets suivant l'ordre dcroissant de leur degr. Cette rorganisation des Nodes dans le vecteur iGraph permet, la plupart du temps, d'obtenir un meilleur rsultat et ce pour un temps quasiment identique.

3. Algorithme Welsh and Powell


L'algorithme Welsh and Powell constitue une mthode de coloration assez proche de l'algorithme glouton. Elle dbute par un tri des sommets de la mme manire que l'algorithme glouton ordonn (par ordre dcroissant de leur degr). Ensuite, elle cre une couleur et parcoure tout le graphe en colorant autant de nuds que possible avec celle-ci. Elle recommence cette procdure avec d'autres couleurs jusqu' ce que l'ensemble des sommets du graphe ait t color. Pour tous les graphes tests, les rsultats sont identiques ceux fournis par l'algorithme glouton ordonn. En revanche, le temps d'excution du Welsh and Powell est systmatiquement plus long.

4. Algorithme Dsatur
L'algorithme DSATUR a t cr en 1979 par Daniel Brlaz, professeur de mathmatiques l'EPFL (cole Polytechnique Fdrale de Lausanne). Son principe n'en est pas moins relativement simple : 1. On ordonne les sommets de la mme manire qu'avec le Welsh and Powell. 2. On colore le premier sommet de la liste avec la premire couleur. 3. On choisit un sommet non-color ayant un DSAT* maximum ; s'il en existe plusieurs, on choisit le sommet de plus haut degr (i.e. le premier, du fait de l'ordre de tri). 4. On colore ce sommet avec la plus petite couleur possible ; si aucune couleur n'est disponible, on en cre une nouvelle. 5. On recommence ainsi partir de l'tape 3 jusqu' avoir color la totalit du graphe.

La plupart du temps, cet algorithme donne de meilleurs rsultats que les autres mthodes implmentes. Cependant, son excution est plus longue.

IV.

Etude Comparative
Les tests dont les rsultats sont prsents ci-aprs ont t effectus par un programme nomm COLORATOR qui colore les graphe avec les diffrentes algorithme trait prcdemment on utilisant un ordinateur de bureau quip d'un microprocesseur 64 bits Intel Core i7 920 cadenc 2,66 Ghz et pouvant atteindre une frquence de 2,80 Ghz . Cette machine dispose entre autres d'une distribution Linux 32 bits base sur Debian ; c'est ce systme qui a t utilis pendant les tests.

Tableau 1 Tableau Comparatif entre diffrentes algorithme

Il est noter que les temps affichs ne tiennent pas compte de la construction du graphe mais uniquement du processus de coloration des sommets.

NB : dsjc250.5 , dscjc500.1 : Random graphe

Comme les tests montrent que la plus rapide est le glouton, mais que la plus performante en terme de k est DSATUR. Toutefois, l'algorithme glouton ordonn fournit un trs bon compromis avec le meilleur rapport k / temps.

Tableau 2 Tableau rcaputilatif

Critre Temps de rponse Performance /k

Welsh et Powell long performent

Glouton Trs Rapide Moins prforment

Glouton ordonn rapide performent

DSATUR long Trs performent

Figure 2 Echelle de qualit

V.

Solution optimale
Dans notre choix bien sure, et selon ltude comparatif que nous avons fais , on dois choisir la solution optimale en terme de performance (qualit du rsultat) et en terme de complexit (temps de rponse) , et on vas choisir entre les deux algorithme qui sont le glouton ordonn et le Dsatur , le premier est plus rapide que le second vue que le Dsatur est plus performant , et la on dois choisir entre un algorithme performant et un algorithme rapide , et on a choisis la performance vue que la qualit de la lgorithme est toujours le premier critre de choix vue que lutilisateur cherche au premier lieux la performance et la qualit du rsultat fournie , et en second lieux on trouve le critre du temps de rponse , car avoir un rsultat erron dans moins de temps nintresse plus lutilisateurs . Et on peut dire que la mthode Dsatur prsente un intrt certain car son auteur a dmontr qu'elle est en mesure de fournir un rsultat optimal dans 90% des cas, et comme le tableau comparatif nous a montrer que le K fournie par lalgorithme de Dsatur est toujours le plus proche du meilleur connu.

Chapitre 2 : Implmentation

I.

Choix des outils


Nous avons choisi Eclipse comme environnement de travaille et le langage JAVA pour notre implmentation dans la mesure o il s'avre tout fait adapt la manipulation de graphes. De surcrot, nous disposons de solides connaissances en programmation orient objet. Par ailleurs, nous avons prfr concevoir une interface graphique pour notre programme, au profit d'une meilleure esthtique et d'une ergonomie amliore.

II.

Fonctionnement du programme
Notre programme est facile a manipuler, il consiste dfinir les diffrentes sommais par un click droits de la souris sur lcran, ensuite vient ltape de la liaison entre les diffrentes sommais par un click droit sur la premire sommais puis sur la seconde. Aprs avoir reli tous les sommais, lutilisateur na qua cliqu avec le bouton gauche de la souri quelque par dans linterface et la seffectue la coloration du graphe.

Figure 3 Graphe a 8 sommais et 3 couleurs

Figure 4 Graphe a 13 sommais et 3 couleurs

10

Conclusion

Ce mini projet a pour but de mettre en valeur la recherche oprationnel en matire de complexit. Au cours de notre travail, nous avons entam plusieurs phases, qui englobent la mise en uvre du problme, ltude du principe des algorithmes, ltude comparative, limplmentation et le test de la proposition. Ce mini projet est une parfaite occasion pour enrichir notre formation et qui impose quelques exigences organisationnelles en ce qui concerne le travail collaboratif et la discipline.

11

Vous aimerez peut-être aussi