Télécharger la présentation
La présentation est en train de télécharger. S'il vous plaît, attendez
Publié parPierre-Louis Patel Modifié depuis plus de 9 années
1
Licence d’Informatique Algorithmique des graphes
Flots sur les réseaux de transport
2
Flots sur les réseaux de transport
Exemple : problème d’approvisionnement Sites fournisseurs A1 A2 An ... Quantités disponibles a1 a2 an ... Sites demandeurs B1 B2 Bp ... Quantités demandées b1 b2 bp ...
3
(quantité maximum qui peut
Sites fournisseurs A1 A2 ... An Quantités disponibles a1 a2 an ... Sites demandeurs B1 B2 ... Bp Quantités demandées b1 b2 bp ... Réseau d’acheminement : graphe Contraintes d’acheminement : capacités A1 A2 An B1 B2 Bp (quantité maximum qui peut emprunter l’arc) c
4
Réseau d’acheminement : graphe
Sites fournisseurs A1 A2 ... An a1 a2 ... an Quantités disponibles Sites demandeurs B1 B2 ... Bp b1 b2 ... bp Quantités demandées Réseau d’acheminement : graphe Prise en compte des données ai et bj A1 A2 An B1 B2 Bp a1 b1 a2 e b2 s an c bp
5
Réseau de transport G = ( X {e} {s}, G, c) A1 A2 An B1 B2 Bp a1 b1
6
Flot sur un réseau de transport
Conditions de conservation du flux en chaque nœud e, s Fonction : G N x E(x) S(x) A1 A2 An B1 B2 Bp a1 b1 a2 e b2 s an c bp
7
Flot sur un réseau de transport
Conditions de conservation du flux en chaque nœud e, s Fonction : G N E(x) = S(x) Compatible: Valeur du flot : A1 A2 An B1 B2 Bp a1 b1 a2 e b2 s an c bp
8
Flot sur un réseau de transport
Conditions de conservation du flux en chaque nœud e, s Fonction : G N E(x) = S(x) Compatible: Valeur du flot : A1 B1 a1 b1 A2 B2 a2 e b2 s Un flot compatible représente un approvisionnement possible an c bp An Bp
9
Exemple Un flot compatible représente un approvisionnement possible
1 2 3 4 5 6 s Flot de valeur 5 1 4 2 2 2 2 e 2 5 s 2 2 3 6 1 Un flot compatible représente un approvisionnement possible
10
Flot sur un réseau de transport
Conditions de conservation du flux en chaque nœud e, s Fonction : G N E(x) = S(x) Compatible: Valeur du flot : Problème : calculer un flot - compatible - de valeur maximale Un flot compatible représente un approvisionnement possible
11
Résultats fondamentaux
Proposition 1 (théorème des flux) e s A
12
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de i) y A z x
13
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de i)
14
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de i)
15
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de i) Arcs « internes » x A y z x
16
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de i)
17
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de ii) A e A ’=A-{e} Sort de A’ (et donc de A) Sort de A, mais pas de A’
18
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de ii) A e A ’=A-{e} Entre dans A’ , mais pas dans A Entre dans A’ (et donc dans A)
19
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de ii)
20
Résultats fondamentaux
Proposition 1 (théorème des flux) Démonstration de ii)
21
Résultats fondamentaux
Notion de coupe Tout chemin de e à s emprunte au moins un arc de la coupe e s A L’ensemble des arcs sortant de A, noté GS(A), constitue une coupe du réseau.
22
Résultats fondamentaux
Notion de coupe Tout chemin de e à s emprunte au moins un arc de la coupe e s A La suppression des arcs d ’une coupe déconnecte le réseau L’ensemble des arcs sortant de A, noté GS(A), constitue une coupe du réseau.
23
Résultats fondamentaux
Lemme de Ford-Fulkerson Démonstration
24
Résultats fondamentaux
Lemme de Ford-Fulkerson Interprétation concrète e s Tout chemin de e à s emprunte au moins un arc de la coupe A Toute coupe constitue une « limitation » du flux sortant de A
25
Résultats fondamentaux
Lemme de Ford-Fulkerson DUALITÉ : Si on trouve un couple , A tel que alors: est de valeur maximum, et GS(A) est de capacité minimum (goulot d’étranglement)
26
Algorithme de Ford-Fulkerson
Invariant : est un flot compatible, A est un ensemble de sommets « marqués », avec e A (procédure marquage()) Arrêt : s A GS(A) est une coupe de capacité minimum, et est un flot compatible de valeur maximum Progression : amélioration de (procédure amélioration(, A))
27
Exemple Construction d’un flot compatible initial 1 1 4 2 1 1 2 2 2 e
5 s 2 2 3 6 1
28
Exemple Construction d’un flot compatible initial 1 1 4 2 2 1 1 1 2 2
5 s 2 2 3 6 1
29
Exemple Construction d’un flot compatible initial 1 1 4 2 2 1 1 1 2 2
5 s 2 2 3 6 1
30
Exemple Construction d’un flot compatible initial 1 1 4 2 2 1 1 1 2 2
5 s 2 2 3 6 1
31
Exemple Construction d’un flot compatible initial 1 1 4 2 2 1 1 1 2 2
5 s 2 1 1 2 3 6 1 1
32
Exemple Flot de valeur 5 Construction d’un flot compatible initial 1 1
4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s 2 1 1 2 3 6 1 Flot de valeur 5 1
33
Exemple Mais : Flot de valeur 5
1 Construction d’un flot compatible initial 1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s 2 1 1 2 3 6 1 Flot de valeur 5 Ce flot est complet : tout chemin est saturé Mais : Est-il de valeur maximale?
34
Exemple 1. Le sommet e est « marqué »
Comment essayer d’augmenter la valeur de ce flot ? 1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s + +3 2 1 1 2 3 6 +e 1 1. Le sommet e est « marqué » 3. L’unité peut repartir vers 5 (marqué +3) 2. Une nouvelle unité peut partir de e vers 3 (marqué +e)
35
Exemple Comment cette unité peut-elle repartir de 5?
1 Comment essayer d ’augmenter la valeur de ce flot ? -5 1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s + +3 2 1 1 2 3 6 +e 1 Comment cette unité peut-elle repartir de 5? Pas en allant vers s (l’arc (5,s) est saturé) Mais en diminuant le flux d’entrée depuis 1 ou 2 1 et 2 sont marqués -5
36
Exemple 1 Comment essayer d ’augmenter la valeur de ce flot ? -5 1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s + +3 2 1 1 2 3 6 +e 1 Si 2 diminue son flux vers 5, il peut compenser en augmentant vers 6 Si 1 diminue son flux vers 5, pas de rééquilibrage possible Mais en diminuant le flux d’entrée depuis 1 ou 2 1 et 2 sont marqués -5
37
Exemple 1 Comment essayer d ’augmenter la valeur de ce flot ? -5 1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s + +3 2 1 1 2 3 6 +e 1 +2 Si 2 diminue son flux vers 5, il peut compenser en augmentant vers 6 Si 1 diminue son flux vers 5, pas de rééquilibrage possible 6 est marqué +2
38
Exemple L ’unité arrivant en 6 peut repartir vers s s est marqué +6
1 Comment essayer d ’augmenter la valeur de ce flot ? -5 1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s + +3 +6 2 1 1 2 3 6 +e 1 +2 L ’unité arrivant en 6 peut repartir vers s s est marqué +6 ON PEUT DONC AUGMENTER LA VALEUR DE CE FLOT
39
Algorithme de Ford-Fulkerson
Procédure de marquage e est marqué (+) Soit x marqué marquer (+x) tout successeur y non marqué tel que (x,y) est non saturé (x,y)<c(x,y) marquer (-x) tout prédécesseur z non marqué tel que (z,x) est chargé (z,x)>0 Arrêt lorsque: s est marqué flot non maximum, ou plus de sommet à marquer flot maximum
40
Procédure d’amélioration (-5)
1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s (-5) (+3) (+) (+6) 2 1 1 2 3 6 (+e) 1 (+2) 1 e 3 5 2 6 s +1 +1 -1 +1 +1
41
Procédure d’amélioration
1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s 1 2 1 1 2 2 3 6 1 1 e 3 5 2 6 s +1 +1 -1 +1 +1
42
Procédure d’amélioration
1 1 4 2 2 1 2 2 1 2 2 1 2 2 e 2 5 s 1 2 1 1 1 2 2 2 3 6 1 1 e 3 5 2 6 s +1 +1 -1 +1 +1
43
Flot de valeur 6 Procédure d’amélioration 1 1 4 2 2 1 2 2 1 2 2 1 2 2
2 2 e 2 5 s 1 2 1 1 1 2 2 2 3 6 1 Flot de valeur 6 1 e 3 5 2 6 s +1 +1 -1 +1 +1
Présentations similaires
© 2024 SlidePlayer.fr Inc.
All rights reserved.