algor ford fulkerson
TRANSCRIPT
-
8/8/2019 Algor Ford Fulkerson
1/6
Application de lalgorithme de FORD-FULKERSON
Soit le graphe orient et valu suivant :
Valuation
=
=
=
)(
0
compteenprisnoncotd
capacitc
b
Chercher le flot complet du rseau.
a
7
Capacit
b
c
dS P
e
10
8
3
3
8
4
2
3 4
7
64
a()
7
Capacit
b()
c()
d()
S()
P()
e()
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[0]
[0]
[0]
[0][0]
[0]
[0][0]
[0][0]
[0]
[0]
Flot nul
a(+S)
7
Capacit
b(+S)
c(+a)
d(+a)
S(+)
P(+c)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[0]
[0]
[0]
[0][0]
[0]
[0][0]
[0][0]
[0]
[0]
Premier marquage :
Lordre dans lequel on traite les sommets marqus est une file :
S, a, b, c, d, e, P
a(+S)
7
Capacit
b(+S)
c(+a)
d(+a)
S(+)
P(+c)
e
(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[0]
[0]
[0]
[0][0]
[0]
[0][0]
[0][0]
[0]
[0]
Augmentation possible du flot dans la chane amliorante :
a7
cS P8 4
La capacit minimale de la chane : 4
On va donc augmenter le flot sur cette chane, au maximum, cad
jusqu la capacit minimale de la chane.
-
8/8/2019 Algor Ford Fulkerson
2/6
a(+S)
7
Capacit
b(+S)
c(+a)
d(+a)S(+) P(+c)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[4]
[4]
[0]
[0][0]
[0]
[0][0]
[0][4]
[0]
[0]
Le flot sur cette chane est maintenant :
4/ 11 =vf
On remarque que le flot est complet dans Pc , cet arc est satur.
a()
7
Capacit
b()
c()
d()
S()
P()
e()
10
8
3
3
8
4
2
34
7
64
[] Flot
() Marquage
[0]
[4]
[4]
[0]
[0]
[0]
[0]
[0][0]
[0][4]
[0]
[0]
Nouveau marquage :
Lordre dans lequel on traite les sommets marqus est une file :
S, a, b, c, d, e, P
a(+S)
7
Capacit
b(+S)
c(+a)
d(+a)
S(+)
P(+d)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[4]
[4]
[0]
[0][0]
[0]
[0][0]
[0]
[4]
[0]
[0]
Augmentation possible du flot dans la chane amliorante :
a3
dS P4 7
La capacit minimale de la chane : 3
On va donc augmenter le flot sur cette chane, au maximum, cad
jusqu la capacit minimale de la chane.
a(+S)
7
Capacit
b(+S)
c(+a)
d(+a)
S(+)
P(+d)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[4+3]
[4]
[3][0]
[0]
[0]
[0][0]
[0][4]
[3]
[0]
Le flot sur cette chane est maintenant :
3/ 22 =vf
On remarque que le flot est complet dans aS , cet arc est satur.
-
8/8/2019 Algor Ford Fulkerson
3/6
a()
7
Capacit
b(+S)
c()
d()S(+) P()
e()
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[7]
[4]
[3]
[0][0]
[0]
[0][0]
[0][4]
[3]
[0]
Nouveau marquage :
Le sommet a nest pas marquable depuis S car il est satur.
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)
S(+)
P()
e(+b)
10
8
3
3
8
4
2
34
7
64
[] Flot
() Marquage
[0]
[7]
[4]
[3]
[0]
[0]
[0]
[0][0]
[0][4]
[3]
[0]
On continue le marquage :
Le sommet b trait, on traite c.
Or on a 0),( >caf , on note donc le sommetapar )( c .
Ensuite on a Pc satur, on ne peut donc pas encore marquer P.
Les autres sommets encadrants c sont dj marqus (b et d), on
passe donc au suivant.
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)
S(+)
P(+d)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[7]
[4]
[3]
[0][0]
[0]
[0][0]
[0]
[4]
[3]
[0]
On continue le marquage :
On traite d.
on a ),(),( PdcPdf < , on note donc le sommet Ppar )( d+ .
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)
S(+)
P(+d)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[0]
[7]
[4]
[3][0]
[0]
[0]
[0][0]
[0][4]
[3]
[0]
Augmentation possible du flot dans la chane amliorante :
b10
dS P3 4
La capacit minimale de la chane : 3
On va donc augmenter le flot sur cette chane, au maximum, cad
jusqu la capacit minimale de la chane.
-
8/8/2019 Algor Ford Fulkerson
4/6
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)S(+) P(+d)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[3]
[7]
[4]
[3]
[0][0]
[3]
[0][0]
[0][4]
[3+3]
[0]
Le flot sur cette chane est maintenant :
3/ 33 =vf
On remarque que le flot est complet dans db , cet arc est satur.
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)
S(+)
P(+e)
e(+b)
10
8
3
3
8
4
2
34
7
64
[] Flot
() Marquage
[3]
[7]
[4]
[3]
[0]
[0]
[3]
[0][0]
[0][4]
[6]
[0]
Nouveau marquage
Lordre dans lequel on traite les sommets marqus est une file :
S, b, c, e, a, d, P
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)
S(+)
P(+e)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[3]
[7]
[4]
[3]
[0][0]
[3]
[0][0]
[0]
[4]
[6]
[0]
Augmentation possible du flot dans la chane amliorante :
b7
eS P3 6
La capacit minimale de la chane : 3
On va donc augmenter le flot sur cette chane, au maximum, cad
jusqu la capacit minimale de la chane.
a(-c)
7
Capacit
b(+S)
c(+b)
d(+b)
S(+)
P(+e)
e(+b)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[3+3]
[7]
[4]
[3][0]
[0]
[3]
[3][0]
[0][4]
[6]
[3]
Le flot sur cette chane est maintenant :
3/ 44 =vf
On remarque que le flot est complet dans eb , cet arc est satur.
-
8/8/2019 Algor Ford Fulkerson
5/6
a(-c)
7
Capacit
b(+S)
c(+b)
d(+c)S(+) P(+d)
e(+d)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[6]
[7]
[4]
[3]
[0][0]
[3]
[3][0]
[0][4]
[6]
[3]
Nouveau marquage :
Lordre dans lequel on traite les sommets marqus est une file :
S, b, c, d, a, P, e
Augmentation possible du flot dans la chane amliorante :
d1
b4
cS P2 3
La capacit minimale de la chane : 1
a(-c)
7
Capacit
b(+S)
c(+b)
d(+c)
S(+)
P(+d)
e(+d)
10
8
3
3
8
4
2
34
7
64
[] Flot
() Marquage
[6+1]
[7]
[4]
[3]
[0]
[1]
[3]
[3][0]
[1][4]
[6+1]
[3]
Le flot sur cette chane est maintenant :
1/ 55 =vf
On remarque que le flot est complet dans Pd , cet arc est satur.
a(-c)
7
Capacit
b(+S)
c(+b)
d(+c)
S(+)
P(+e)
e(+d)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[7]
[7]
[4]
[3]
[0][1]
[3]
[3][0]
[1]
[4]
[7]
[3]
Nouveau marquage :
Lordre dans lequel on traite les sommets marqus est une file :
S, b, c, d, a, e, P
Augmentation possible du flot dans la chane amliorante :
d4
b3
cS e1 2 3
P
La capacit minimale de la chane : 1
a(-c)
7
Capacit
b(+S)
c(+b)
d(+c)
S(+)
P(+e)
e(+d)
10
8
3
3
8
4
23
4
7
64
[] Flot
() Marquage
[7+1]
[7]
[4]
[3][0]
[1+1]
[3]
[3][1]
[1+1][4]
[7]
[3+1]
Le flot sur cette chane est maintenant :
1/ 66 =vf
On remarque que le flot est complet dans cb , cet arc est satur.
-
8/8/2019 Algor Ford Fulkerson
6/6
a()
7
Capacit
b(+S)
c()
d()
S(+)
P()
e()
10
8
3
3
8
4
2
34
7
64
[] Flot
() Marquage
[8]
[7]
[4]
[3]
[0][2]
[3]
[3][1]
[2][4]
[7]
[4]
A
Nouveau marquage :
On traite S, on marque b.
On traite b : aucun sommet nest marquable.
On na plus aucun sommet traiter.
On constate que P nest pas marqu, donc on a atteint le flot comple
du graphe.
15/)( = vPSf
On note : { }bSA ,= et AXA =