Problème du flot maximum
MSE3211A: Flot et Routage
(d’après Ahuja, R.K., T.L. Magnanti and J.B. Orlin, Prentice Hall, 1993,
et d’après les notes des cours de L.A. Wolsey et F. Vanderbeck)
Last update: January 10, 2011
Gautier Stauffer, MAB, Bur. A33:358, Email ga[email protected]
PROBLÈME DE FLOT MAXIMUM
Dans un réseau orienté avec des capacités sur les arcs, envoyer autant de
flot que possible entre un noeud source s et un noeud puits t, sans excéder
les capacités.
DONNÉES / Hypothèses
Un graphe orienG= (N,A)avec les noeuds s&t;
Des bornes 0 ui j Uentier, pour chaque arc (i,j).
6 ∃ chemin stdont tous les arcs ont une capacité infinie
(i,j)A=>(j,i)A(on peut avoir uji =0)
Pas d’arcs parallèles
FORMULATION
2
3
v
v
10 7
1
610
ts
max v
s.a.
PjN+(i)xi j PjN(i)xj i =8
<
:
vpour i=s
0 pour i6=s,t
vpour i=t
0xi j ui j pour tout (i,j)A
PROBLÈME DUAL: COUPE de capacité MINIMALE
On interprete v comme un arc fictif entre t et s et on cherche à maximiser le
flot sur cet arc
PRIMAL max xt s
X
jN+(i)
xi j X
jN(i)
xj i =0i(yi)
xi j ui j (i,j)6= (t,s) (zi j)
xi j 0(i,j)6= (t,s)
DUAL min X
(i,j)6=(t,s)
ui j zi j
yiyj+zi j 0(i,j)6= (t,s)
ytys=1
zi j 0(i,j)6= (t,s)
Toute (S,T)-coupe peut etre representée dans le dual
yi=1 si iest dans la partition de noeud coté tet zéro si coté s
zi j =1 si l’arc (i,j)est dans la coupe s-tet zéro sinon.
FLOT MAXIMUM ET COUPE MINIMALE: dualité
Pour toute coupe s-t, c-à-d (S,T)tel que Sset T=N\St, le flot
au travers de la coupe est égal au flot ventrant en s/ sortant de t.
v=PjN+(s)xs j PjN(i)xj s
+0=PiS\{s}(PjN+(i)xi j PjN(i)xj i)
v=PiS,jTxi j PjT,iSxj i
Pour toutes coupes s-t, le flot au travers de la coupe est inférieur ou
égal à la capacité de la coupe (DUALITÉ FAIBLE):
v=PiS,jTxi j PjT,iSxj i
PiS,jTui j =CAP(S,T)
Theorem
Le flot maximum égale la capacité minimale d’ une coupe s-t (DUALITÉ
FORTE): maxv=min(S,T)CAP(S,T)
Applications : PROBLÈMES DE CONNEXITÉ
La sécurisation de réseaux de télécom demande de prévoir des chemins
disjoints entre paires de noeuds.
Deux chemims de sàtsont disjoints en termes d’arcs s’ils n’ont
aucun arc en commun.
Deux chemims de sàtsont disjoints en termes de noeuds s’ils n’ont
aucun noeud en commun en-dehors de set t.
Theorem
Le nombre maximum de chemins de s à t disjoints en terme d’arcs égale le
nombre minimum d’arcs qu’il faudrait enlever pour disconnecter s de t.
Theorem
Le nombre maximum de chemins de s à t disjoints en terme de noeuds égale
le nombre minimum de noeuds qu’il faudrait enlever pour disconnecter s de t.
1 / 19 100%