Vous êtes sur la page 1sur 11

Le problème du flot maximal– Exercices -corrigé

I Déterminer sur le réseau suivant, .......(reprendre le graphe sur l'énoncé)


On procède successivement aux marquages suivants :
(d'autres suites sont possibles, ici on prend systématiquement le premier sommet susceptible d'être
marqué)
Première itération de l'algorithme de Ford Fulkerson :
Procédure de marquage :
s+ a+ b+ e- (car le flux sur (e,b) est >0) c+ f + p+ : p est marqué.
Modification du flot :
ε+ = 2 (arc (a,b)) ε- = 1 (arc (e,b) ) ; on peut donc envoyer un flot de valeur 1 le long de la chaîne
s a b e c f p : le flux augmente de 1 sur tous les arcs sauf sur (e,b) où il diminue de 1.
La valeur du flot passe à 39.
a+ (5) b+ 4 (4) +
c
3 +1

+1
(10) 4 (4) 1 (2) 8
7 4 (9) +1 (8)
0 (8)
-1 +1

+ (20) 13 (18) 10 (10) 20 (30)+1 +


20 d
s p
- f+
e

10 (15) 2 (2)
(3)3 0 (10)
10 (10) 10 (20)
(20)
11

8 (15) 10 (10)
g h i

u0
+1
38

Deuxième itération
Procédure de marquage :
s + a+ b+ , on ne peut aller plus loin ; on repart de s.
On marque alors g+ h + d- e + c+ f+ p+ . p est marqué.
Modification du flot :
ε+ = 4 (arc (e,c) ε- = 10 (arc (d,h) ) on peut donc envoyer un flot de 4 le long de la chaîne
s g h d e c f p : le flux augmente de 4 sur tous les arcs sauf sur (d ,h) où il diminue de 4.
La valeur du flot passe à 43.

Le problème du flot maximal/exercices/corrigé/p1


a (5) b 4 (4) +
c
3 +1

+1
(10) 4 (4) 1 (2) 8
7
4 (9) +1 (8)
+4 0 (8)
-1 +1 +4
-
+ +
(20)
20 d 13 (18) +4 + 10 (10) 20 (30) +1 +4 +
s p
f
e

+4 2 (2)
(3)3 10 (15) -4 0 (10)
10 (10) 10 (20)
(20)
11

8 (15) +4 10 (10)
+
g h
+ i

u0
38 +1 +4
Troisième itération
Procédure de marquage :
s+ a + b+ puis à nouveau à partir de s : g+ h+ d- e + on ne peut rien marquer d'autres, le flot est
maximal.
+ +
a (5) b 4 (4) c
3 +1

+1
(10) 4 (4) 1 (2) 8
7 4 (9) (8)
+4 0 (8)
-1 +1 +1 +4
-
+ (20) 13 (18) +4 + 10 (10) 20 (30) +1 +4
20 d
s p
f
e

+4 10 (15) -4 2 (2)
(3)3 0 (10)
10 (10) 10 (20)
(20)
11

8 (15) +4 10 (10)
+
g h
+ i

u0
38 +1 +4
L'ensemble des sommets marqués est { s, a , b , d , e , g , h}
La coupe associée est constituée des arcs dont l'origine est marquée et l'extrémité non marquée : (b,c)
(e,c) (e,f) (h, f) (h, i) . La capacité de cette coupe est :
4 + 9 +10 + 10 = 10 = 43
Ceci confirme que le flot précédent est optimal.

Le problème du flot maximal/exercices/corrigé/p2


II Une raffinerie de pétrole........

a) On complète le graphe par une "supersource" s et les arcs (s,S1) , (s,S2) , (s,S3) que l'on munit d'une
capacité supérieure égale à la quantité qui peut être délivrée par chacun des puits.
La conservation des flux aux sommets S1, S2, S3 permet de limiter ce qui part de chacun des puits à ce
qu'ils peuvent fournir.
T1
S1 (3000) 3000
4000 (7000)
(2000) T4
(2000) 6000
(5000) 0 (2000) 2000 1000 (2000)
3000
T2 (8000) R (raffinerie)
2000
S2 (1000) 1000 p
(4000)
s 2000 (1500) 2000
2000 (1000) 1000 1000 (4000)
(3000) (3000)
(2000) 1000 (1000)
3000 T5
1000
S3 (3000)
1000 T3

8000

Actuellement il arrive une quantité de 8000 à la raffinerie.


Pour voir si cette quantité est maximale, on recherche s'il existe une chaîne améliorante qui
permettrait d'augmenter la valeur du flot.

Marquage 1 :
s, S1, S2 , S3 (-) , T3, T2, T5, p .
Le long de cette chaîne on peut envoyer un flot de 500, la limitation est due à l'arc (T2,T5).
T1
S1 (3000) 3000
+ 4000 (7000)
(2000) T4
+500 (2000) 6000
(5000) 0 (2000) 2000 1000 R (raffinerie)
3000 (2000)
+500 T2 (8000)
+ 2000
(4000) S2 (1000) 1000 p +
s 2000 (1500) 2000 +500
+ + +500
2000 (1000) 1000 1000 +500 (4000)
(3000) -500 (3000)
(2000) 1000 (1000) +
3000 T5
1000
S3 (3000)
1000 +500 +T3
-
8000 +500

Le problème du flot maximal/exercices/corrigé/p3


Marquage 2
s, S1, S2, S3(-), T3, T2, T1 (-), T4, p
Le long de cette chaîne on peut envoyer un flot de 1000, la limitation est due à l'arc (T1,T2) sur lequel
le flux ne peut pas diminuer de plus de 1000.
T1 _
S1 + (3000) 3000
4000 +1000(7000)
+1000 T4
(2000) +
+500 (2000) 6000 +1000
(5000) 0 (2000) 2000 1000 R (raffinerie)
(2000)
3000 +500 +1000 -1000
T2 (8000)
2000
(4000) +S2 (1000) 1000 p +
2000 +500
s 2000 + +1000(1500)
+ -1000 1000 +500 (4000)
2000 (1000) 1000 +500
(3000) -500
1000 (1000)
3000 (2000) (3000) T5
1000
S3 (3000)
- 1000 +500 +1000 T3
+
8000 +500 +1000

Marquage 3
s, S1, S2, S3,T3, T2 .... et c'est tout.
Arcs de la coupe (S1,T1) (S2,T1) (T2,T4) (T2,T5) (T3,T5)

Capacité = 3000 + 2000 + 2000 + 1500 + 1000 = 9 500

T1
S1 (3000) 3000
4000 +1000(7000)
+1000 T4
(2000)
+500 (2000) 6000 +1000
(5000) 0 (2000) 2000 1000
(2000)
3000 +500 +1000 -1000
T2 (8000)
2000
S2 (1000) 1000 p
(4000)
s 2000 (1500) 2000 +500
+1000 +500
2000 -1000 (1000) 1000 (4000)
(3000) -500 1000 +500
1000 (1000)
3000 (2000) (3000) T5
1000
S3 (3000)
1000 +500 +1000 T3

8000 +500 +1000

b) Afin d'augmenter encore cette quantité, doit-on augmenter la capacité des sources, ou celle de certains
éléments de pipe-line? Dans l'un ou l'autre cas préciser lesquels.

Pour augmenter la quantité envoyée à la raffinerie, il faut impérativement augmenter la capacité d'au
moins un des arcs de cette coupe.

Le problème du flot maximal/exercices/corrigé/p4


III Cet exercice correspond à un problème connu sous le nom de " La promenade des demoiselles".
Le responsable d’un .........

a) Ce problème peut être modélisé par un problème de flot maximal sur le graphe suivant : justifier ce résultat.

Compte tenu de la contrainte de capacité supérieure de 1 sur les arcs (s,Gi) et (Fj,p) et de la
conservation des flux aux sommets Gi et Fj un flot sur le graphe précédent est tel que le flux ne peut
être égal à 1 que sur un seul arc issu de chaque sommet Gi et sur un seul arc d’extrémité Fj : on pourra
donc associer à un arc (Gi,Fj) sur lequel le flux vaut 1 un couple (Gi,Fj). Pour avoir le maximum de
couples il faut donc déterminer le nombre maximum d’arcs sur lequel le flux vaudra 1. Ce nombre
d’arcs est comptabilisé sur l’arc de retour. Il s’agit donc de déterminer le flot maximal sur le réseau
proposé.

b) Le responsable du .........

@* @
G1
1 -1 * F1

1 1
+1
@ @ (1)
(1) 1 F2
G2 1
1 (1)
(1)
@
(1) 1 G3 +1 F3 +1 (1)
*s p *
(1) @* (1)
+1 @ 1 1
F4
(1) *G4
(1)

G5 F5
@
3 +1
Les arcs de type (s,i) et (j,p) sont munis de capacité supérieure égale à 1 (entre parenthèses sur le
graphe) et inférieure nulle.
Les arcs (i,j) sont uniquement munis de capacité inférieure nulle.
Les seuls flux mentionnés sur ce graphique sont les flux non nuls.
Initialement le flux est égal à 1 sur les arcs (s,G1) (s,G2) et (s,G3) , (G1,F1) ,(G2,F2) ,(G3,F4) , (F1,p)
(F2,p) (F4,p) .
Il a pour valeur 3 et représente la situation actuelle.
Pour voir si on peut constituer d'autres couples on cherche à augmenter ce flot.
L'application de l'algorithme de Ford Fulkerson conduit à deux itérations correspondant aux
marquages indiqués sur le graphe par :
* = premier marquage
@ = deuxième marquage

On procède au marquage des sommets :


Premier marquage : s , G4 ,F1 , G1( marquage à partir de F1 possible car le flux est égal à 1) ,F3 , p
p étant marqué on a mis en évidence une chaîne augmentante à partir de laquelle on peut augmenter
le flot de 1 : augmentation de 1 sur (s,G4) (G4,F1) (G3 , p ) et l’arc (p , s) et diminution de 1 sur (G1,
F1) .
La valeur du flot est maintenant de 4.

Deuxième marquage : s , G5 , F2, G2 , F3 , G1 (marquage de G1 possible car il y a un flux de 1 sur


l’arc (G1,F3) , F1 , G4. STOP on ne peut plus marquer de sommet . p n’est pas marqué , le flot actuel est
maximal.
Sommets marqués à l’issue de l’algo :
s G1, G2, G4, G5, F1, F2 , F3
Le problème du flot maximal/exercices/corrigé/p5
Arcs de la coupe de capacité minimale = arcs dont l’origine est marquée et l’extrémité non marquée :
(s,G3) , (F1,p) ,(F2,p) ,(F3,p) . Tous ces arcs ont 1 comme capacité. La capacité de la coupe est donc bien
de 4.
On a donc une nouvelle solution avec les couples : (G1,F3) (G2, F2) (G3,F4) (G4,F1)

Le problème du flot maximal/exercices/corrigé/p6


c) La solution que vous venez de trouver ...........

La création de l’arc (G3,F2) ne permet pas de mener la procédure de marquage jusqu’à p, puisque G3
n’est pas marqué. Le flot maximal reste de valeur 4 et donc le nombre de couples de 4.

Quelles sont, pour vous, toutes les relations ....

Augmenter le nombre de couples est équivalent à augmenter la valeur du flot. Pour cela il faut
détruire la coupe de capacité minimale en ajoutant un arc dont l’origine est marquée et l’extrémité non
marquée.
L’ensemble des liaisons possibles susceptibles de provoquer la création d’un 5ème couple est donc :
de G1, G2 , G4 ou G5 vers F4 ou F 5.

d) On suppose que G1 accepte de sortir avec F4 ( et réciproquement ! ), ....

On ajoute l'arc (G1,F4). On peut alors procéder au marquage suivant (sur le graphe la solution à 4
couples a été reportée )
- +
G1 F1

1 1
1
1 (1)
(1) G2 F2
- 1
(1)
1 + (1)

(1) 1 G3 1 F3 1 (1)
- + p +
+ (1) (1)
1 1 1
G4 F4
(1)
(1)
+
G5 F5
+
+
4
On marque dans l'ordre s G5 F2 G2 F3 G1 ( éventuellement F1 et G4 mais cela ne permet pas
d'arriver en p).
A partir de G1 on marque F4 , G3, F5 et enfin p. Les sommets G sont marqués de – sauf G5 et les
sommets F qui sont marqués de + .
On procède alors à la modification des flux le long de la chaine s G5 F2 G2 F3 G1 F4 G3 F5 p
- +
G1 F1
1
1 +1 1 -1
(1)
(1) G2
1 -1 F2
- 1
(1)
1 + (1)
+1
(1) 1 G3 1 F3 1 (1)
+ p +
+ (1)
- -1 (1)
1 1 1
G4 F4
+1 (1)
(1)
+1 +
+1
G5 F5 +1
+
+
4 +1
Le problème du flot maximal/exercices/corrigé/p7
On arrive alors à la situation : (G1,F4) (G2,F3) (G3,F5) (G4,F1) (G5,F2).

IV Le graphe ci-dessous représente le réseau routier permettant d'aller de la ville E à la ville S.


...................

a) Que pensez vous du diagnostic de Monsieur R ? .....


Premier marquage : la valeur du flot augmente de 1
(7) 5 -1 d
a
+
- (10)
(8) 2
(7)
7 +
+1 g
(5) 5 (4)
+1 (10)
+ 2 +1 9
e +1
b (6)2
(10)4 (2)2
+1 +
(2) S +
E
+ (1) (2)2
(8) 6 (6)4
(4) 4 f
c
15 +1

Deuxième marquage : la valeur du flot augmente de 4.

(7) 5 -4 -1
a d
+
- (10)
(8) 2
(7)
7
+1 +4 g
(5) 5 (4)
+1 +4 + +1 (10)
2 9 +1
e
b (6)2
(10)4 (2)2
+ +4
E
+1 +4 (2) S +
+ (1) (2)2
(8) 6 (6)4
(4) 4 f
c
15 +1 +4

Troisième marquage :
Les sommets marqués sont s, b , c , d .
On ne peut plus marquer p. Le flot est maximal.

Le problème du flot maximal/exercices/corrigé/p8


(7) 0
a d
+
- (7)
(10) (8) 7
5 7 g
(5) 5 (4) (10)
3 10
e
b (6)6
(10)9 (2)2
+
(2) S
E
+ (1) (2)2
(8) 6 (6)4
(4) 4 f
c
+ 20

On obtient un flot de valeur 20.


La coupe de capacité minimale est constituée des arcs (E,a) , (d,g) , (b,e) , (c,e) et (c,f). On vérifie que la
somme des capacités supérieures des arcs de cette coupe est bien égale à 20, ce qui limite la valeur du
flot.
L'augmentation du trafic passe nécessairement par l'augmentation de la capacité d'un de ces arcs.

b) Dans l'analyse précédente, il n'a pas été tenu compte du nombre maximal de véhicules pouvant traverser les
agglomérations..........

Sur ce nouveau graphe, la conservation des flux au sommet e1 implique que ce qui arrive en e1 est
égal à ce qui en part ; cette dernière quantité sera limitée par la capacité de 7de l'arc (e1 ,e2)
L'arc (e1,e2) joue le rôle de compteur.

2 - Déterminer alors le ....


On ne peut partir du flot précédent qui n'est pas réalisable puisqu'actuellement le trafic qui passe par
la ville "e" est de 9.
Pour trouver le trafic maximal, on repart du flot identiquement nul ( NB : il existe des algorithmes qui
permettraient de partir du flot précédent.) ou du flot donné initialement qui est réalisable.
On peut alors procéder à une nouvelle itération de l'algorithme de Ford Fulkerson.

_ +
5 -5
a (7) d
(7) 7
(10) 2
+5 (8) g
(5) 5 (4) 2 (10)
+5 2 (7)
e1 2 e2 9
4 b + +5 + (6)
(10) (2) +5
+5 + +
E (2) S
+ (1) (2)
(8) 4 4
(6)
(4) f
c 4
13 +5

Le problème du flot maximal/exercices/corrigé/p9


A partir de ce nouveau flot, la procédure de marquage ne permet plus de marquer le sommet S : le flot
est maximal.
_ +
a (7) 0 d
(7) 7
(10)
7
5 (8) g
(5) 5 (4) (10)
(7) 2
2 e1 9
7 e2
9 b +
(2) 5 (6)
(10) +
(2) +
E S
(1) (2)
+
(8) 4 4
(6)
(4) f
c + 4
18

On constate qu'il sature l'arc (e1,e2) : la traversée de la ville "e" atteint donc le maximum.
La coupe de capacité minimale est constituée des arcs (d,g) (e1,e2) (c,f) dont la capacité est bien de 18.
Une augmentation de la capacité du réseau doit passer par l'augmentation de la capacité des axes
routiers (d,g) ou (c,f), ou par l'amélioration de la traversée de la ville "e ".

c) Suite à une campagne de sécurité .........


1 - Quelque soit le sous-ensemble de sommets A contenant la ville E et ne contenant pas la ville S , tout
trajet de E à S passe par un arc de ω+(A).
Pour être certain que tous les véhicules seront contrôlés sur leur trajet il suffit de mettre un radar sur
chaque arc de ω+(A). Si on munit tous les arcs d'une capacité supérieure de 1, le nombre de ces arcs
est égal à la capacité de la coupe associée à A. Pour avoir le nombre de radars le plus faible possible il
faut prendre une coupe de capacité minimale que l'on détermine en résolvant le problème du flot
maximal sur ce réseau.
On trouve par exemple le flot suivant qui est évidemment maximal
(1) 1 d
a
(1)
(1) 1

g
(1) (1)
1 (1)
(1) 1
(1) e
b 1 (1)
1 (1) 1
(1) (1)
E S
+ (1) (1) (1)
1 (1) 1
1 f
c

A la dernière itération de l'algorithme de Ford Fulkerson le seul sommet marqué est le sommet E.
La coupe de capacité minimale est donc ω+ ({E}) = { (E,a) , (E , b) , (E , c) } de capacité 3;
Le nombre minimal de radars est donc de 3 que l'on peut placer le long des routes issues de E.
Le problème du flot maximal/exercices/corrigé/p10
2 - La sécurité routière constate que, ........
A partir du dernier flot obtenu à la question précédente on obtient, suite à la création de l'arc (E,d), un
nouveau marquage indiqué sur le graphe ci-dessous.
On peut maintenant marquer le sommet d, donc a (par "-") puis e , puis g , à partir de e on peut
marquer b par "-" , puis c puis f. Tous les sommets sont marqués sauf S. La valeur du flot ne peut être
augmentée par l'adjonction de ce nouvel arc, ce qui veut dire que le nombre de radars n'augmentera
pas. Mais la coupe de capacité minimale est maintenant constituée des arcs (g,S), (e,S) et (f,S) où
doivent maintenant être placés les radars.

- (1) 1
a d +
(1)
(1) 1

g +
(1) (1)
1 (1) (1) +
(1)
e 1
_ (1)
b 1 (1)
1
1 (1) (1) (1)
S
+E (1) (1)
(1) 1 (1) 1
1 f
c
+ +

Le problème du flot maximal/exercices/corrigé/p11

Vous aimerez peut-être aussi