Vous êtes sur la page 1sur 6

UMBB DGM Génie Industriel S7 Ourari 2021-2022

UEF 1.2.1 Matière :Planification et Ordonnancement

Chapitre II. Modélisation et résolution des problèmes de


planification de la production à long terme

Les décisions stratégiques du long terme concernent l’évolution des produits fabriqués et l’évolution
de l’appareil productif.

II.1 Choix de projets d’investissement


II.2 Équilibrage des chaines de production
II.3 Flot maximal dans les réseaux
Les problèmes de flots dans les réseaux concernent la circulation de flux (matières) dans un graphe.
Ils sont rencontrés dans plusieurs domaines de planification et essentiellement dans les problèmes
d’approvisionnent des marchandises des distributeurs aux consommateurs et où on se demande si
l’offre peut satisfaire la demande. On trouve aussi :
 Circulation de flux de matière dans un réseau (gaz, pétrole, eau ect)
 Affecter des produits des entrepôts vers des clients

Il s’agit d’acheminer la plus grande quantité de produits possibles (flux maximal) d’une origine
(source) vers une destination finale (puits) dans un réseau représenté par un graphe orienté et
valué G(X, U) avec :
 Un sommet source s : tous les sommets de X sont accessibles depuis s
 Un sommet puits f : f est accessible depuis tous les sommets de X
 Les valuations : les arcs de U sont valués avec une capacité limitée.

II.3.1 Introduction sur les graphes


Un graphe orienté est un couple G(X, U) déterminé par
 Un ensemble X={x1, x2, …., xn} de sommets
 Un ensemble U={u1, u2, …., un} du produit cartésien X.X d’arcs. L’arc ui=(xi, xj).
Si pour un problème le sens du parcours n’intervient pas  on parle de graphe non orienté. Exemple
du voyageur de commerce.
 Un graphe orienté  les liaisons sont des arcs.
 Un graphe non orienté  les liaisons sont des arêtes

Exemple
Graphe orienté A Graphe non orienté B

 G=(X, U) G=(X’, U’)


 X={a, b, c, d}  X’={a, b, c, d}
 U=arcs= {(a,b), (a,d), (d,b), (b,c), (c,a)}  U’=arcs= {a, b, a, d,b, d, b, c}
UMBB DGM Génie Industriel S7 Ourari 2021-2022

Représentation d’un graphe


 Matrice d’un graphe orienté du graphe A Dictionnaire de précédence
o b est successeur de a, c prédécesseur
𝑎 𝑏 𝑐 𝑑 de b, b prédécesseur de a et d, …
𝑎 0 1 0 1 o Γ + (𝑎) = 𝑏, 𝑒𝑡 𝑑 (Successeur de a)
𝑏 0 0 1 0
𝑐 1 0 0 0 o Γ − (𝑎) = 𝑐 (prédécesseur de a)
𝑑 0 1 0 0
[ ]

 Degré d’un sommet = nombre d’arête reliés à ce sommet


o Degré de a du graphe B est 2
o Degré de b du graphe N est 3
 Un chemin  une liste ordonnée d’arcs (u1, u2, …., un) tel que l’extrémité de de ui est égale à
l’origine de ui+1.
 Une chaine une suite de sommets reliés par une seule arête (on ne tient pas compte de
l’orientation de l’arc).
 Un cycle  partir d’un sommet et revenir à ce sommet en parcourant une seule fois les autres
sommets.
 Un circuit est un chemin dont l’extrémité initiale correspond avec l’extrémité finale (il
boucle).
 Un graphe G=(X, U) est dit connexe si  i, j X, il existe une chaine entre i et j.

II.3.2 Définition d’un flot dans un graphe


Soit G=(X, U) un graphe connexe, sans boucle, possédant une entrée et une sortie.
 A chaque arc u est associé un nombre réel noté u.
 u est appelé le flux sur l’arc u (c’est la quantité positive qui circule sur l’arc)

Définition 1: Un flot dans un graphe est une valuation des arcs représentant la loi de conservation
des flux (loi de Kirchoff) sur chaque sommet xX (i.e. la somme des flux qui entrent en x doit être
égale à la somme des flux qui sortent de x) :

∑𝑢∈Γ+(𝑥) 𝜑𝑢 = ∑𝑢∈Γ−(𝑥) 𝜑𝑢 pour tout x de X

Avec 𝜑𝑢 : Quantité de flux, sur l’arc u.

Exemple : Soit le graphe G1 suivant :

 Pour x=1 ; Γ + (1) = {2,4} ; Γ − (1) = {3,5} ;


o ∑𝑖∈Γ+(1) 𝜑𝑖 = 1 + 1 = 2 ; ∑𝑖∈Γ−(1) 𝜑𝑖 = 1 + 1 = 2 (les deux quantités sont égales)
 A vérifier (la conservation des flux) avec tous les autres sommets
UMBB DGM Génie Industriel S7 Ourari 2021-2022

Capacité des arcs :


 Un réseau de transport est un réseau où chaque arc 𝑢 ∈ 𝑈 est associé une capacité 𝑐(𝑢) ≥
0. C’est la limite supérieure du flux admissible sur l’arc u.
 Un flot est admissible si et seulement si φ(u) ≤ 𝑐(𝑢) ∀ 𝑢 ∈ 𝑈

II.3.3 Problème de flots maximal dans un réseau de transport

Soit G=(X, U) un graphe valué par une fonction capacité C : U R+.


 Chaque arc u est valué par une capacité c(u)
 Il existe un sommet source (entrée) s de degré entrant nul (pas de prédécesseur)
 Il existe un sommet puits (sortie) p de degré sortant nul (pas de successeur)
 Il existe un arc de retour du puits p à la source s
On s’intéresse à un graphe sans circuits avec une entrée et une sortie.

Définition : Soit deux sommets s (source) et puits (p) qui modélisent les entrées et les sorties d’un
graphe G(x, U). Un graphe G(x, U0) déduit de G en rajoutant l’arc (p, s) applet arc de retour du flot :
∑ 𝜑𝑢 = ∑ 𝜑𝑢 = 𝜑0
𝑢∈Γ+ (𝑠) 𝑢∈Γ− (𝑝)
Où 𝜑0 est la valeur du flot

Problème : Quelle quantité de matières peut-on au maximum envoyer de la source vers le puits du
graphe de manière à respecter les capacités des arcs.

 Un flux c’est ce qui circule dans un arc. Il doit être positif et inférieur à sa capacité
 Un flot est un ensemble de flux.

L’exemple dans la figure a est un flot

L’exemple dans la figure b est un exemple d’un réseau

Chemin ou chaine saturé

 Un chemin ou une chaine est dit saturé si au moins un de ses arcs qui les composent est
saturé (son flux est égal à sa capacité).
 Dans un chemin, tous les arcs sont directs, par contre dans une chaine il existe des arc
indirect (4-1 est un arc indirect)

Arc direct et indirect

 L’arc (a,b) est direct


 On dit que l’arc (b, a) est indirect
UMBB DGM Génie Industriel S7 Ourari 2021-2022

Définitions :

1. Un arc direct est sature si son flux est égal à sa capacité (on ne peut rien lui ajouter), par
contre un arc indirect est saturé si son flux est nul (on ne peut rien lui retrancher)

2. Un flot compatible ou réalisable est tel que le flux de de chaque arc 𝑢 ∈ 𝑈 est bornéé entre
deux valeurs inférieure et supérieure : 𝐵𝐼(𝑢) ≤ 𝜑 ≤ 𝐵𝑆(𝑢) avec 𝐵𝑆(𝑢) = 𝑐(𝑢)

3. Un flot est complet est un flot réalisable tel que tout chemin allant de s à p possède au moins
un arc saturé, c’est-à-dire, ∃𝑢 ∕ 𝜑(𝑢) = 𝑐(𝑢).

4. Un flot complet n’est pas forcement optimal. Le flot complet pour un problème n’est pas
unique. Leurs valeurs peuvent être différentes.
Définition. Le problème du flot maximal est un problème de détermination du flot sur G,
compatible avec les capacités et dont le flux 𝝋(𝒖𝟎 ) sur l’arc de retour u0 est le plus grand possible.
Remarque :

 Le flot maximal n’est pas unique, mais sa valeur est unique


 Pour chaque arc u, on a 𝜑(𝑢) ≤ 𝑐(𝑢). On peut augmenter le flot de 𝑐(𝑢) − 𝜑(𝑢) et on peut
le diminuer de 𝜑(𝑢)

Définition d’un chemin améliorant : Soit un flot dans un réseau et un chemin allant de la source s au
puits p. Un chemin améliorant Le chemin est améliorant si tous les flux sur les arcs du chemin sont
inférieurs à leur capacité.

Définition d’une chaine améliorante : Soit une chaîne allant de s à p dans un réseau. Une chaine est
améliorante si pour les ars de sens directs de la chaine le flux est strictement inférieur à la capacité
alors que pour les arcs indirects le flux est strictement positif.

Soit l’exemple d’un réseau avec les capacités des arcs :

Il n’existe aucun chemin améliorant, mais il


existe une chaine améliorante (en rouge).

Un solution est donnée par le flot schématisé


dans la figure suivante :

Coupe dans un graphe :


UMBB DGM Génie Industriel S7 Ourari 2021-2022

Une coupe (S, P) dans un graphe G=(X, U) est une partition de X dans S, avec S P=X ; SP’=) et tel
que 𝑠 ∈ 𝑆 et 𝑝 ∈ 𝑃. L’ensemble des arcs ayant une extrémité initiale dans S et une extrémité finale
dans P est appelée coupe. La capacité de la coupe est :
𝑐(𝑆, 𝑃) = ∑ 𝜑𝑢
𝑢∈ 𝑐𝑜𝑢𝑝𝑒(𝑆,𝑃)

Théorème : 𝜑0 ≤ capacité de toute coupe séparant s de p.

 La coupe (S, P)= ({s, v1, v2},{v3, v4, p})


 Sa capacité c(S,P) est :
c(v1, v3)+ c(v2, v4)=12+14=26
 La valeur du flux net est :
( v1, v3)+ ( v2, v3)+ ( v2, v4)
= 12+(-4)+11
= 19

II.3.2 Résolution du problème de flot maximal


Théorème de Ford-Fulkerson : La valeur du flot maximum est égale à la plus petite capacité des
coupes séparant s de p.

L’algorithme de Ford-Fulkerson permet de résoudre le problème de flot maximal.

Algorithme :
Etape 1 : Partir d’un flot quelconque (nul)
Etape 2 : On cherche un chemin améliorant et on itère l’étape jusqu’à ne plus trouver de tels
chemins (flot complet avec tous les chemins saturés)
Etape 3 : On cherche une chaîne améliorante et on itère jusqu’à ne plus trouver de telles chaînes
(toutes les arcs de la chaînes sont saturées)

Exemple
 Saturation des chemins : (2-6),(6,8), (4,5), (5,8), (3-7); Ce Flot est complet. Il est aussi
maximal car toutes les chaines sont saturées et sa valeur est 𝜑(8) =16.

5
2 8 6 5
1
6 1 8
6 5 8 5
8 4 8 8
1 3 2
8 7
7 7
3 5 8
UMBB DGM Génie Industriel S7 Ourari 2021-2022

Supposons que le flot complet est différent du précédent dont les chemins saturés sont : (2,6), (4,5),
(1,3), (5,8), (6,8), (3,4).
Flot est égal à 𝜑(8) =15
 Le flot est complet, mais
 La chaine 1-4-3-7-8 n’est pas saturée (4-3 est un arc indirect) . Il faut saturer la chaine. (ce
qu’on ajoute dans l’arc direct, il faut le retrancher de l’arc indirect (2,6), (4,5), (5,8), (3,7).
Flot maximal 𝜑(8)=16
5 6
2 1 8 5
1 8
6
6 5
8 5
8 4 8 8
1 2
3 8 7
7 3 7 8
5

Autre exemple

Vous aimerez peut-être aussi