Vous êtes sur la page 1sur 5
IUT Lyon Ingcrmatiqn’ Théorie des Graphs 2OUL-2012 s chemins cnapitre 2 [ Plus cour 3.1 Probleme du plus court chemin On se place deans Ie cas ces araphes otientés values = (S, A,v). Mais les résultats et alyorithnnes présentés néralisent facilement aus cas des sraphes non otientés valbés. Une autre soluticn comsiste 4 transformer Je graphe nonctienté cn tin eraphe ctienté cn ranphcant ume arete entre dex sctmmets par deus ates de sens inverse entre ces scumets, ion 341 — Le cot ou poids d'tm chemin ¢ =< $0, 81,..., $e > est Swale la some des valuations [es arcs composant le chemin, cet A dite He) = Dvls.50) ~ Le coat d'un plus court chemin entre deans sommets 5 ot sj ost note 6{si, 3) et ost defini par: ) esiste am moins un chemin cutie 54 ct 5, Sls. _ {min(£@ fe= cumin de 5 8.5)} si +00 sinon Jan la recherche hin phis comt chemin de 2 & y, trols cas peuvent se presenter = tiesiste aucun chemin de 2 A y (par exemple, siz et y apparticnnent a deux composantes fortement exes cliferentes de = Tesiste de= ciemins de 2 a y mais pas de plus cout chemin = Texiste un plus court chemin de 2 4 y. Exemple On consider le mraphe suivant wart chevain de 2 8 y (i subi Texiste des chemins de a y (ot meme tne infinit®), mais il wexiste pas de plus és art chemin de 2 42 mis Yomprunter Ie evele de poids négatif autant le fois que ngcessaire). existe un plus pas de chemin de 2A 2. Définition 3.2. Un circuit de longue nésative est appelé cireuit absorbant Et alots, une condition nfeessaire et sutfisante Fesistence de plus court chain est dennée par Te résultat suivant. Propositio n graphe orienté wnlué fortement connear G = (S,4,v), i existe un plus court che ritre taut couple de sommets si ef seulement sil n'existe pas de cwcuit absorbant dans G, Prouve + Onmontrecqiesi un chemin entre dens sommots x of y possede tm cincuit absorbant, alors x(2, 9) = oo. En fet, cbs que Ton parcoumt Je cretit abscabant, cv diminne Ie Tongueur div chemin, ct on peut dene Jiminner cotte longneur A Tinfini, En angmentant "“infininent” le nombre de toms dans le circuit, on cbtient a(2,y) = —00. Definition 34 Etant donné in sraphe otionté value @ = (8, A,v) ot 1m sommet origine s9 € 8. Ie probleme des plus courts chemins & origine unique consiste A ealcubr pour cheque sommet 3 € S Ie cout 8(30, 83) J plus court chemin de 30 28, On suppesera qe Te eraphe G ne comperte pas de cireit absorbant, Variantes du probleme : IUT Lyon Ingcrmatiqn’ Théorie des Graphes 2OUL-2012 = SiTet souhaite calculer Ie phis court chemin allant an sommict so vers mn atatre sonnet sy (la destination, 1 tihiqite}. on ponta utiliser Ia résolution du probleme précécant (oni calcule tots les phns courts chemin pettant de 59). En cffet, ct ne ocntmit pas C'aleorithme plus efficaee pour téscahe oe probleme, = Si Ton soutiaite calculer tous les plus courts chiemine entre tous Jes couples de scumicts possibles, ot pourrait aussi utiliser ka résolution dlr probléme préeédent. mais dans ce cas, on wobtiendrait_ pas am aleotithime optimal, 1 faauhra utiliser chns eo cas tn aluctithiie spécitique, par exemple Palgorithine «le Fleyd-Warshall, = plus courts chemins : On va ct fait calctiler non seulement les coat des plus cetnts cheming, mais anssi les sonmets presents sur ces phis courts chemins. La représentation ut ur ces pls counts chemins est la: meme que celle utilisée pour les arborescenees couvrantes caleulkes Jors d'un. parcemts en ur om en prefondeur Pun exaphe, Cotte arborescence est mémorisfe dans un tableau HL tel que = Iso] = nil. Athorescence ¢ = Msg] = 54 Si si > 34 est um anc de Varhorescence Pour connaitre le plas ccurt chemin entre $0 et mn sommot sx denny, il fandra alors "rementer" Parborese cence TT de sx JtscnA 90 (cf Valeorithine Taffichage di pls cenrt chemin trouvé par Te parcetrs en Target). orithmes suivant qui permettent de réscudke ce probleme its sont positifs on nuls, voilts sont pesitiés, nus ctr negate Neus allens 6turlier lee deus aithme de Dijkstra 12scut ce probleme Torsque tous les aithme de BellnensPord résout ce problaine lersuc Tes dane algetithmes procedent de la meme fagcn, selon tne stratégie dite Malentcnne", Lido est dPassoctor A gque scmmet s, € Stine valeur dis] qui repréecnite ume Lome mmsimale da cont cl pls comrt clietin entre $0 04 8 (Cestwindive (80,54) Ainsi, au départ = Also] = 0 = (50, 50) ct = d[s,] = +00 > 4{s0,s,) pour tout sommet 5, 4 so. rithme diminne alers prosressivement Jes valeans ds] associées aun différents sommuets, jusqu’a ce on ne puise plus les dimineer, atitacment dit, juscp’ ce que d{s,] = 6(s0, :)+ Pome diminner Tes valeas de 4, on va itérativement examiner cheeme arc si 3; dit graph. et regander si ch ne pent pas atntliorer la valeur Je dfs,] on passant pat 3, Cette cpératicn de dimimition et appe Ajchement de Pare s; > 5," et se ‘Algorithme 8: hich ate (ons. 1) Tnntrées : 5 ct 5; sont des scmmnets da araphe » wlnticn as alts, d taco dee Deans maak des canis, Ti arboresconce ccurvranit Sorties : d tableatt des homes maximum des coats, UH arborescence couvtante 1 sidls,] > d[si] + ¥(s,,8,) alors 2 | Yi vaut mica passer par sj pour aller A sj * 3] dsj] @ als] +u(si,3;) 4 | Ifsj)es Los algotithmes de Dijkstra ot BellmaneFord procédent ¢cus les deux par reachements successifs dares, La lisforence cutre Tee deus est que dans Falgorithme de Dijkstra. cheene arc est relaché tne et ame seule fois tandis que dans Falgctitlie de BellaneFord, chaque are peut étre rlaché plusicurs fois, Bal Algorithme de Dijkstra L'idée consiste & maintonir 2 ensembles dlisjoints B ot F tls que BUF sommet pour Keene ctr cchnmit un plus cctnt chetnity depuis so (este Leensoanble F centiont cus les atntaes d{sy] (puisenie dfs] c=t minimal’. Sachant que la fit ce co clietnin (ey & be petit faite qu'anementr la distance dv cxtin, eet autre chemin sera forcémment pli Ion, Par consequent on ne pourra pas trcuver de chemin plus Ccunt pour aller de s9 A s,..ct on pent faire entrer s; dans B ct rclacher touts Jes ates cui partent de sie Complexité : La complesité de cot algetithine ctpend de Vimp¥nentation du graphe (par mattice ou par listos d'adjacence), mais aussi de la fagon de gérer Fensemble F. On suppose que le graph pesséde me sommicts mance. Si ch utilise une mattice dadjacence, Palgoritlme sora on O(n?) En revanche, si om utilise des listes dad acence, alors = SiF cst implémenté par une liste lin‘aire, om un tablean, i aurea chercher, A cheque itérat dans F ayant I plus petite valeur de d, Etant donne quill y an itéra “qa pret contient n ements, ¢t qa chague passage suivant F ocntiont tm Clément de meins, i fardra att ¢ faire de Verde de n-+ (n— 1) + (n—2) +... +2-+ 1 operations, soit (m2), Fn revanche, cincue arc étant reliché une seule fois. les operations de relachement promdrent de Pordre dem opétations, Au total cn ura dene une complexité «ti O(n). = Pour amélioter les performances de Talgerithme, il fant trouser me stricture de dennées permettant ¢ acter phi rapidement Ia phi potite valour dans ensemble F, Peur cola en peut utiliser tm tas binaite un tas binaite permet de trouver le plus petit Cement dum ensemble en temps censtant. En revanche Pajeut. la suppreicn cu la movfication dim élément dans un tas bitaite ccmportant n Géments pretty Je Torche de toga(n) cpératicns, Pa conséqquent, si ct impléuente F avec un tas hinaite, on cbtient tne ‘omplesité pour Dijkstra ct O(m « log(n)). Je scummnet iP 34.2. Algorithme de BellmaneFord Les noeatif Considérene par exemple le voit inumé dls.) +u(s:,3,) alors to | L affidher( circuit absent!) Complexité : Sie praphe comporte n scammets ot m arcs, caeye arc sera relichaé n—1 fois, of om effectucta Jonc att total (n— Im rolaclimients successifs. Sie graphe c=t represent® par tine matrice Pacacence, on atta, tne ccmplesité en O(n), alors que s'il est représenté par des listes dTadacenee, cn anta une complesité en Ofnm). Remarque : En pratique, on poura areter Palgorithine ds Jors qu'aucune valeur de d n'a 66 modifice pendant une itératicn complete, On pourta atnssi métctiser A chase it¢ration Fenseanble des sommicts pour esque: Ta valour de da diangé, afin de ne relacher los de Pitération suivante que Ie ares partant- de cos sommncts nthese 2 En résim, en fonction des carnctér ne comporte pas de ques du probleme a résoudre il faudra choisir Ie hon algotitlamc icitit alors, que Von recherche un plus court chemin cur un phis Tong, suffit de trict les sommots topolewiquement. avec tm parccurs en profcedear 'abord pais de Jerer daqe sctmet dans Torte ainsi defini ot relacher & dace fois tons les ares partant de ce scant: = Sie eraphe comporte des circuits, alors = Sion recherche un plus court chemin, alors = Sila feuction ccit et monotone croisante (le cont dun chemin ne peut qu’anementer lersquten rajonte un are Aa fin dit chemin: par exemple, quran kes cont de teu Fes ares sont posit et que Je cont dun chemin est Gg A Te somme des cots des ance etpruntés), alens on pourra appliquer Dijkstra = Sincn, on appliqnera RellmaneFord (c ireuits absorbants) = Sion recherche tm plas Jong chemin, alors = Silk fonction coat et monctone deeroisante (le cont im chetnity ne pet que dinner lerseqren rajonte un are 8 Ia fin dit chemin: par exemple, qiand Tes cout de tout Jos acs sont compris entre yérifieg en mone temps que Te graphe ne comporte pas de IUT Lyon Ingcrmatiqn’ Théorie des Graphs 2OUL-2012 Det Let que Fe cet d'un chemin est Gal ai produit des comts des ares emprunté=),alers on pours ppliquor Digs = Sinch, on appliquera BelnansTerd (cr verifies en meme temps que Te exaphe ne comporte pas d incuite absctbants 219.28

Vous aimerez peut-être aussi