Vous êtes sur la page 1sur 10

Chapitre 5

PROBLEME DE CHEMINEMENT

5.1 PLUS COURT CHEMIN DANS UN RESEAU

Dé…nition 5.1 Soit (X; U ) un graphe orienté et une application d : U ! R qui à


chaque arc fait correspondre sa longueur.
La longueur d’un chemin P dans le réseau R = (X; U; d) est égale à la somme des
longueurs des arcs qui constituent le chemin P .
X
l(P ) = d(u):
u2P

Position du Problème Etant donné deux sommets x et y d’un réseau R = (X; U; d),
trois cas peuvent se présenter:

Cas 5.2 Il n’existe pas de chemin de x à y dans R.

Cas 5.3 Il existe un chemin de x à y dans R mais pas de chemin de longueur


minimum (ie: l’ensemble des longueurs des chemins de x à y dans R n’est pas
borné inférieurement).

Cas 5.4 Il existe un chemin de x à y dans R et dans l’ensemble des chemins de


x à y dans R il y en a un de longueur minimum.
PLUS COURT CHEMIN DANS UN RESEAU 62

3 1 0 0
1 2 3 7

1 1 1 -2

6 4

- Il n’existe pas de chemin de 2 à 1:


- Il existe un chemin de 1 à 7 dans R mais pas de chemin de longueur minimum
(considérer l’ensemble des chemins constitués par l’arc (12) auquel on adjoint k fois le
circuit [(23); (34); (42)] puis l’arc (37)).
- Il existe un plus court chemin de 1 à 5 dans R [(16); (65)] :

Dé…nition 5.5 Si un plus court chemin d’un sommet x à un sommet y existe, la


longueur de ce plus court chemin sera appelée " plus courte distance de x à y ".
La plus courte distance d’un sommet à lui même est nulle.

Dé…nition 5.6 On introduit les six problèmes suivants:

Pb A: Trouver un chemin élémentaire de longueur minimum joignant un sommet s


à un sommet p dans le réseau R = (X; U; d):

Pb B: A chaque sommet x 2 X; associer un chemin élémentaire de longueur minimum


joignant un sommet s donné à x dans le réseau R = (X; U; d):

Pb C : A chaque couple de sommets x; y 2 X; associer un chemin élémentaire de


longueur minimum joignant le sommet x au sommet y dans le réseau R =
(X; U; d):

Les pbs A0 ; B 0 ; C 0 ont le même énoncé que A; B et C respectivement en omettant le


mot élémentaire.

X
Dé…nition 5.7 Un circuit C tel que d(u) < 0 est appelé circuit absorbant.
u2C
PLUS COURT CHEMIN DANS UN RESEAU 63

Remarque 5.8 Soit C un circuit absorbant d’un réseau R = (X; U; d): Supposons qu’il
existe un chemin Csx de s à un sommet x du circuit et un chemin Cxp de x à p. Alors
le chemin obtenu en parcourant le chemin Csx puis le circuit k fois et en…n Cxp est un
chemin de s à p de longueur négative et aussi grande qu’on veut. Par conséquent, il
existe une séquence de chemins dont les longueurs ne sont pas bornées inférieurement.
Le problème de la recherche d’un plus court chemin n’a pas de solution.

Dé…nition 5.9 Soit G = (X; U ) un graphe orienté. s 2 X est une racine de G si


8x 2 Xns; il existe un chemin de s à x:

s 3
s 1 3

1 4
2

s est une racine s n’est pas une racine

Théorème 1A: Une CNS pour que le Pb A0 ait une solution est que:

i) L’ensemble Y des sommets qui sont à la fois descendants de s et des ascendants


de p soit non vide.
ii) Le sous réseau construit sur Y ne contienne pas de circuit absorbant.

Si i) et ii) sont véri…ées, toute solution du Pb A est aussi une solution du Pb A0 (les
solutions de A sont contenues dans celles de A0 ).

Théorème 1B: Une CNS pour que le Pb B 0 ait une solution est que:

i) s soit racine.
ii) R ne contienne pas de circuit absorbant.

Si i) et ii) sont véri…ées, toute solution du Pb B est aussi une solution du Pb B 0 .


PLUS COURTS CHEMINS ET PLUS COURTES DISTANCES 64

Théorème 1C: Une CNS pour que le Pb C 0 ait une solution est que:

i) Le réseau R soit fortement connexe.


ii) R ne contienne pas de circuit absorbant.

Si i) et ii) sont véri…ées, toute solution du Pb C est aussi une solution du Pb C 0 .

Remarque 5.10 La première condition garantit qu’il existe bien un chemin ou un


ensemble de chemins (existence d’une solution réalisable), la seconde que l’ensemble
des chemins ont des longueurs bornées (existence d’une solution optimale).

5.2 PLUS COURTS CHEMINS ET PLUS COURTES DISTANCES

Théorème 5.11 Soit R = (X; U; d) un réseau. Soit P un plus court chemin de s à un


sommet p dans R. Soit Pxy la portion du chemin P comprise entre les sommets x et y,
alors Pxy est un plus court chemin de x à y.

Preuve. Supposons qu’il existe un chemin Px0y tel que l(Px0y ) < l(Pxy ), alors la
concaténation des chemins Psx ; Px0y ; Pyp est un chemin de s à p plus court que P .
En e¤et, l(P 0 ) = l(Psx ) + l(Px0y ) + l(Pyp ) < l(Psx ) + l(Pxy ) + l(Pyp ) = l(P ): D’où la
conttradiction.

Théorème 5.12 Soit R = (X; U; d) un réseau sans circuit absorbant et admettant le


sommet s comme racine. A chaque sommet x on associe la longueur (x) d’un plus
court chemin (plus courte distance) de s à x dans R. On a:

(T (u)) (I(u)) d(u) 8u 2 U (1)

Réciproquement, un système de potentiels (x) satisfaisant (s) = 0 et les inéquations


(1) constitue un ensemble de bornes inférieures des longueurs des plus courts chemins
de s à x dans R.

Preuve. Soit u = xy un arc. Un plus court chemin Psx de s à x a pour longueur


(x): Le chemin P 0 obtenu à partir de P en ajoutant l’arc u est un chemin de s à y
de longueur (x) + d(u): Ainsi, la longueur d’un plus court chemein de s à y ne peut
dépasser (x) + d(u) =) (T (u)) (I(u)) d(u):
PLUS COURTS CHEMINS ET PLUS COURTES DISTANCES 65

Réciproquement, si les inéquations (1) sont véri…ées, on a pour tout chemin P de s à


z: X X
l(P ) = d(u) (T (u)) (I(u)) = (z) (s) = (z):
u2P u2P

Théorème 5.13 Soit R = (X; U; d) un réseau sans circuit absorbant et admettant le


sommet s comme racine. A chaque sommet x on associe (x) plus courte distance de
s à x, alors:
le graphe partiel (X; U 0 ) avec U 0 = fu 2 U= (T (u)) (I(u)) = d(u)g admet s comme
racine.
Réciproquement, tout chemin de s à un sommet quelconque z dans (X; U 0 ) est un plus
court chemin de s à z.

Preuve. Soit u = xy un arc appartenant à un plus court chemin P de s à z:


D’après le Théorème 5.11, Csx et Csy sont des plus courts chemins de s à x et de s à y
respectivement. Donc:

l(Csy ) = (y) = l(Csx ) + d(u) = (x) + d(u) =) (y) (x) = d(u):

D’où tout arc d’un plus court chemin de s à n’importe quel sommet appartient
0
àU:
Réciproquement, soit C un chemein de s à z inclus dans (X; U 0 ); alors:
X X
l(C) = d(u) = (T (u)) (I(u)) = (z) (s) = (z):
u2C u2C

Remarque 5.14 Le théorème 5.13 permet de réduire la recherche de l’ensemble des


plus courts chemins issus de s dans R = (X; U; d) à la recherche des plus courtes
distances.
En e¤et, la connaissance des plus courtes distances équivaut à celles des plus courts
chemins en construisant le graphe (X; U 0 ):
PLUS COURTS CHEMINS ET PLUS COURTES DISTANCES 66

1 -1 -2
1 -2 -1 7
0 s 2 4 6 P 5

-1 1 2 5
-2
2 5

3 5 7
-2 3
2 0 3

Figure 1 Les plus courtes distances

s 2 4 6 P

3 5 7

Figure 2 Le graphe partiel (X; U 0 ) des plus courts chemins.

On peut réunir les Théorèmes 5.12 et 5.13:

Théorème 5.15 Une CNS pour qu’un ensemble de potentiels représente les plus
courtes distances sur le réseau R = (X; U; d) entre un sommet s et tous les autres
sommets est que :
i) (s) = 0
ii) (T (u)) (I(u)) d(u) 8u 2 U
iii) Si on pose: U 0 = fu 2 U= (T (u)) (I(u)) = d(u)g, alors (X; U 0 ) admet s comme
racine.

Preuve. CN: conséquence directe des théorèmes 5.12 et 5.13. Pour montrer la
CS, il su¢ t de remarquer que pour tout z 2 X; (z) est une borne inférieure de la plus
courte distance d’après Thm 5.12 et qu’il existe e¤ectivement un chemin dans (X; U 0 )
de longueur égale à (z):

Corollaire 5.16 Soit R = (X; U; d) uun réseau dont tous les circuits ont une longueur
strictement positive. Une CNS pour qu’un ensemble de potentiels représente les plus
courtes distances sur R entre un sommet s et tous les autres sommets est que :
i) (s) = 0
ii) (y) = M in [ (I(u)) + d(u]) 8y 2 XnS:
fu=T (u)=yg
THEOREME DE LA TESION MAXIMUM 67

Preuve. Soit U 0 = fu 2 U= (T (u)) (I(u)) = d(u)g : Si (X; U 0 ) contenait


un circuit, il serait de longueur nulle, ce qui est impossible. Donc (X; U 0 ) admet s
comme racine (chaque sommet a nécessairement un prédécesseur , sauf s). Si s n’est
pas racine, le système i) et ii) n’a pas de solution.

5.3 THEOREME DE LA TESION MAXIMUM

Dé…nition 5.17 Soit R = (X; U; d); jU j = m: Le problème de la tension maximum


entre les sommets s et p sur R consiste à trouver un vecteur t 2 Rm tel que:
i) t est une tension sur le graphe G = (X; U );
ie: 9 : X ! R tel que t(u) = (T (u)) (I(u)) 8u 2 U
ii) t(u) d(u) 8u 2 U
iii) (p) (s) soit maximum.

Il s’agit de trouver une fonction potentiel : X ! R telle que la di¤érence des


potentiels aux sommets p et s; ( (p) (s)) soit la plus grande possible sous réserve que
la di¤érence de potentiel sur chaque arc soit inférieure ou au plus égale à la longueur
de cet arc.

Soit E la matrice d’incidence de R = (X; U; d);le problème de la tension maxi-


mum peut s’écrire sous la forme d’un programme linéaire:

(T (u)) (I(u)) d(u) 8u 2 U Et d


(T 0A ) =) (T 0A )
(p) (s) = Z(M ax) (p) (s) = Z(M ax)

Remarque 5.18 Si est solution de T 0A ; alors + a est aussi solution de T 0A :


8
< (s) = 0
(T A ) Et d
:
M ax(Z) = (p)

Exemple 5.19 Déterminer une tension maximum entre s et p sur le réseau suivant:
THEOREME DE LA TESION MAXIMUM 68

1
4
1
u1 u4

S 2 u3
P
u2
u5
5 1

Remarque 5.20 On peut de la même manière dé…nir le problème de la tension mini-


mum entre deux sommets s et p. Dans ce cas, on cherche un potentiel : X ! R tel
que:
i) (T (u)) (I(u)) = t(u) d(u) 8u 2 U
ii) (s) = 0
iii) M in(Z) = (p).

A
Théorème 5.21 (Tension maximum) Une CNS pour que le programme linéaire T
admette une solution optimale est que:
i) R ne contienne pas de circuit absorbant
ii) Il existe un chemin de s à p dans (X; U )
Si i) et ii) sont véri…ées, la valeur de la tension maximum entre s et p sur R est égale
à la longueur d’un plus court chemin de s à p dans R.

Preuve. - Soit une solution réalisable de T A : En sommant les inéquations


(T (u))
X (I(u)) d(u) sur les arcs d’un circuit C du graphe G = (X; U ), on obtient:
0 d(u). Donc R ne contient pas de circuit absorbant si T A admet une solution
u2C
réalisable.
X
- Supposons que R ne contienne pas de circuit absorbant et soit M = jd(u)j et soit
u2C
k M:
Si s n’est pas racine pour le graphe G = (X; U ), on ajoute des arcs à ce graphe de
telle sorte que s devienne racine pour le nouveau réseau = (X; U 0 ; d0 ) où d0 est dé…ni
comme suit:
d(u) si u 2 U
d0 (u) =
k si u 2 U 0 nU
THEOREME DE LA TESION MAXIMUM 69

A chaque sommet x on associe (x): plus courte distance de s à x dans le réseau


(il existe d’après le Thm 5.1). D’où d’après le Thm 5.12, le vecteur est solution
réalisable de T A .
- S’il n’existe pas de de chemin de s à p dans le réseau de départ, un plus court chemin
de s à p dans le réseau augmenté contiendra au moins un arc ajouté. Donc (p) croîtra
avec k et T A admet une classe de solutions pour lesquelles la valeur de la fonction
objectif tend vers l’in…ni.
- S’il existe un chemin de s à p dans le réseau de départ, en sommant les inéquations
(1) sur un chemin P de s à p quelconque, on trouve:
X X
(T (u)) (I(u)) = (p) d(u) = l(P ):
u2P u2P

Donc (p) est inférieur ou égal à la longueur de tout chemin de s à p: Comme on


connait un chemin pour lequel on a l’égalité, se trouve être solution optimale de T A :

Corollaire 5.22 (Théorème de la tension minimum) Une CNS pour que la valeur de
la tension minimum entre s et p sur R soit égale à la longueur d’un plus long chemin
de s à p dans R est que:
- R n’admette pas de circuit le long duquel la somme des longueurs des arcs est (stricte-
ment) positive.
- Il existe un chemin de s à p dans R.

8
>
(s) = 0
>
< t
Corollaire 5.23 Le programme linéaire (T B ) XE d
>
> (x) = M ax(Z)
:
x2X

admet une solution réalisable si et ssi le réseau R ne contient pas de circuit absorbant.
Dans ce cas, (T B ) admet une solution optimale si et ssi s est une racine de G = (X; U ):
La solution de (T B ) (si elle existe) est le vecteur des plus courtes distances à partir de
s dans R.
PROBLEME DE LA TENSION REALISABLE 70

5.4 PROBLEME DE LA TENSION REALISABLE

Dé…nition 5.24 Soit R = (X; U; d); jU j = m:On dé…nit:


: U ! R [ f 1g ; r : U ! R [ f+1g tel que: (u) r(u) 8u 2 U:
Le problème de la tension réalisable consiste à chercher un vecteur t 2 Rm tel que:
i) t soit une tension sur le graphe G = (X; U; d);
ii) (u) t(u) r(u) 8u 2 U .

Théorème 5.25 Une CNS pour qu’il existe une tension t sur le graphe G = (X; U; d)
tel que (u) t(u) r(u) 8u 2 U est que:
Pout tout cycle et pour chaque sens de parcours de on ait:
X X
(u) r(u) (*)
u2 u2 +

Preuve. Soit t une tension sur G tel que ii) soit véri…ée et soit un cycle de
G. On a: X X X X X
t(u) = t(u) t(u) = 0 =) t(u) = t(u)
u2 u2 + u2 u2 u2 +

X X X X
=) (u) t(u) = t(u) r(u)
u2 u2 u2 + u2 +

d’où (*) est véri…ée.

Vous aimerez peut-être aussi