Vous êtes sur la page 1sur 10

Institut de Mathmatiques Appliques Universit Catholique de lOuest

Exercices Flots

L. Pridy

Legende: Cliquer sur le mot E XERCICE ou le numro de la question permet dobtenir la correction. Ensuite, cliquer sur Retour en bas de la page. Cliquer sur licone jaune permet dobtenir une aide (un indice). En cas de difcult, il est fortement conseill de la lire et de continuer la recherche avant de lire la correction complte.

Copyright c 2002-2003 laurent.peridy@ima.uco.fr Last Revision Date: 6 avril 2004

Version 1.0

E XERCICE 1. Flots avec bornes infrieures de capacit Soit un problme de ot maximum sur un graphe G = (X, U ) avec une source s et un puits t dans lequel larc (t, s) existe, formul comme suit : M ax v = xts
{j/(i,j)U } xij {j/(j,i)U } xji = 0 i X lij xij cij , (i, j) U

(a) Exprimer ce problme en fonction des variables xij dnies comme suit : (i, j) U, xij = xij lij (b) Chaque contrainte tant associe un sommet de G, on note b(i) le second membre de la contrainte associe au sommet i. Montrer que iX b(i) = 0. (c) Soit la transformation suivante : Insrer une super-source S et un super-puits T . Pour chaque sommet i avec b(i) > 0, ajouter un arc (S, i) avec une capacit infrieure nulle et une capacit suprieure de b(i). Pour chaque sommet i avec b(i) < 0, ajouter un arc (i, T ) avec une capacit infrieure nulle et une capacit suprieure de b(i). Montrer que si le ot maximum sur le graphe transform sature tous les arcs (S, i) et (i, T ) alors il existe un ot ralisable sur le graphe initial, sinon il nexiste pas de ot ralisable. (d) Rsoudre le problme de ot maximum entre s et t sur le graphe de la gure 1 (page 3). (e) Soit le problme de ot maximum suivant : M ax v
{j/(i,j)U } xij bij xij cij {j/(j,i)U }

xji = b (i) i X

Back

Doc

Doc

sm T
(10,30) im

(5,20)

B m 1 r

(5,5) rr j r m (5,20) b & t & & c& (5,40) s m 2

(arc retour) (bij , cij )

E jm

F IG . 1 Graphe 1 exercice 1 avec iX b (i) = 0. En sinspirant de lexercice, dnir une mthode (un algorithme) permettant de rsoudre ce type de problme. (f) Rsoudre le problme de ot maximum entre s et t sur le graphe de la gure 2 (page 4) o les b (i) reprsentent les offres/demandes sur les sommets.

Back

Doc

Doc

Solutions des Exercices

B m 1 r (5,5) rr b (t) = 0 b (s) = 0 (5,20) j r m sm (5,20) b & t & T (10,30) c & (5,40) s m 2 &
(arc retour) im (bij , cij ) b (2) = 10

b (1) = 10

E jm

F IG . 2 Graphe 2 exercice 1

Solutions des Exercices


Exercice 1(a) M ax v = xts + lts xij {j/(j,i)U } xji = 0 xij cij lij , (i, j) U
{j/(i,j)U } {j/(j,i)U } lji

{j/(i,j)U } lij

i X

Back

Doc

Doc

Solutions des Exercices

Exercice 1(b)

Back

Doc

Doc

Solutions des Exercices

Exercice 1(c) Soit x un ot maximum sur le graphe transform qui sature tous les arcs (S, i) et (i, T ). Montrons quil existe un ot ralisable sur le graphe initial. Soit G = (X , U ) le graphe transform. Le ot x vrie {j/(i,j)U } xij {j/(j,i)U } xji = 0 i X 0 xij cij , (i, j) U 0 xSi bi , (S, i) U 0 xiT bi , (i, T ) U Puisque tous les arcs (S, i), (i, T ) sont saturs, (S, i) U , xSi = cSi = b(i) (i, T ) U , xiT = ciT = b(i) do
{j/(i,j)U }

xij

{j/(j,i)U }

xji =

xSi , i X tel que b(i) > 0 xiT , i X tel que b(i) > 0

0 xij cij bij , (i, j) U 0 xSi b(i), (S, i) U 0 xiT b(i), (i, T ) U En effectuant le changement de variables (i, j) U, xij = xij lij nous obtenons xij {j/(j,i)U } xji = b(i) + {j/(i,j)U } xij {j/(j,i)U } xji = b(i) + 0 xij cij lij , (i, j) U
{j/(i,j)U } {j/(j,i)U } lji

lji {j/(j,i)U }

{j/(i,j)U } lij {j/(i,j)U } lij

i X tel que b(i) > 0 i X tel que b(i) > 0

do

Back

Doc

Doc

Solutions des Exercices

xij {j/(j,i)U } xji = 0 i X tel que b(i) > 0 {j/(i,j)U } xij {j/(j,i)U } xji = 0 i X tel que b(i) > 0 0 xij cij lij , (i, j) U et le ot x est un ot ralisable pour le problme initial.
{j/(i,j)U }

Soit x un ot ralisable sur le graphe initial. Montrons quil existe un ot maximum sur le graphe transform qui sature tous les arcs (S, i) et (i, T ). xij {j/(j,i)U } xji = 0 i X bij xij cij , (i, j) U En effectuant le changement de variables
{j/(i,j)U }

Le ot x vrie

(i, j) U, xij = xij lij


{j/(i,j)U } xij {j/(j,i)U } xji = b(i) i X 0 xij cij bij , (i, j) U En introduisant une super-source S et un super-puits T comme indiqu dans la tranformation, nous avons {j/(i,j)U } xij {j/(j,i)U } xji = 0 i X 0 xij cij , (i, j) U 0 xSi b(i), (S, i) U 0 xiT b(i), (i, T ) U do x est un ot ralisable sur le graphe transform saturant tous les arcs (S, i) et (i, T ). Do le rsultat.

nous obtenons

Back

Doc

Doc

Solutions des Exercices

Exercice 1(d)

Back

Doc

Doc

Solutions des Exercices

Exercice 1(e)

Back

Doc

Doc

Solutions des Exercices

10

Exercice 1(f)

Back

Doc

Doc