algorithme de belleman-ford et Dijkstra
Chemin de coût minimum
Introduction
Le problème posé consiste à déterminer dans un graphe valué (GO où GNO) le plus court chemin entre deux sommets.
Définition
Définition :
Soit G=(V,E) un graphe et p une fonction de E dans R
Soit µ =(v0,. . ., vk) un chemin donné dans G. On définit le poids de ce chemin par : p()= k p(v ,v )
1
i-1
i
Le coût du chemin le plus court entre deux sommets u et v est
Défini par :
(u,v)=Min{p( ) , chemin de u à v}
(u,v)=infini, s’il pas de chemin
Remarque1 il n y a pas de solution lorsque le graphe contient un circuit (ou cycle) absorbant. i.e. un circuit (cycle) dont le poids est négatif.
On peut diminuer la valeur du chemin de a vers b en empruntant le circuit encerclé dont le poids vaut -2
Exemple
Remarque 2
Selon la fonction poids, on peut être amené à de solutions différentes. x
t
3
s
9
5
11
y
z
0
x
t
3
9
3 s 0
4
2
5
y
2
11
z
Question
Est-ce qu’un chemin de coût minimal peut contenir un cycle?
Réponse : NON
• Un chemin de coût minimal ne contient pas de cycle absorbant
• Il ne peut pas contenir de cycle de poids positifs
• Les cycles de poids nuls sont autorisés dans les chemins de coût minimum. Comme on peut les supprimer.
Convention
Sans perdre de généralité, on suppose que les chemins de coût
Minimum ne contient pas de cycle.
Etant donné que les chemin acyclique d’un graphe G contient
Au plus |V| sommet, ils contient aussi au plus |V|-1 Arcs.
Suite à cette remarque, on restreint la recherche du chemin de
Coût minimum au chemins contenant au plus |V|-1 Arcs.
Applications
Le réseau routier peut être modélisé par un graphe : les sommets représentent les intersections, les Arcs sont les segments entre ses intersections et la fonction poids représente les distances.
Les liaisons aériennes entre différentes villes. Le coût est le prix du billet d’avion ou bien le temps de