Sunteți pe pagina 1din 8

FLUXURI MAXIME N REELE DE TRANSPORT

Se numete reea de transport un graf n care fiecrui arc i este asociat capacitatea
arcului i n care exist un singur punct de intrare i un singur punct de ieire. Grupa de
probleme din activitatea de transport, care are ca model reeaua de transport, prezint
urmtoarele caracteristici:
- se dau mai multe surse ce dispun de resurse limitate i mai multe destinaii care
solicit anumite cantiti din resursele de la surse;
- transportul resurselor de la surse la destinaii se face trecnd prin anumite centre
intermediare care leag resursele de destinaii, iar ntre fiecare 2 centre exist o
anumit limit a cantitii ce se poate transporta (restricii de capacitate);
- obiectivul urmrit este transportul unui volum maxim de resurse;
- dup realizarea transportului maxim de resurse se analizeaz n continuare dac este
posibil s fie satisfcute toate cererile i cum trebuie organizat transportul.
Aceast grup de probleme cunoscut i sub numele de grupa problemelor de flux
maxim se rezolv cu ajutorul algoritmului Ford-Fulkerson. Problemele de acest gen apar n
transportul aerian, feroviar, auto i mai puin n cel naval.

Exemplu:
I. Fie reeaua reprezentat n figura urmtoare (pe fiecare arc este nscris capacitatea
corespunztoare). S se determine fluxul de valoare maxim ce strbate reeaua R aplicnd
algoritmul Ford-Fulkerson.

5
x1 x4

6 15 8
x0 x2 x5 x7

7
x3 x6

Etape:

Etapa 1. Se caut succesiv drumuri de la x0 la xn astfel nct fiecare din aceste drumuri
s fie format numai din arce nesaturate (arcul saturat este arcul al crui flux este egal cu
capacitatea sa). Pentru fiecare drum astfel format se determin cantitatea min {c ij ij } ,
unde: ij = fluxul arcului;
c ij = capacitatea arcului.
Aceast cantitate se adun ca valoare de flux pe toate arcele drumului i, celelalte
arce rmnnd neschimbate.
Fluxul total ce strbate reeaua este dat de suma fluxurilor drumurilor construite:
n
1 i
i 1

1
5=5
x1 x4

6=3+3 15=5+3+ 8=5+3


x0 x2 x5 x7

7=3+4
x3 x6

d1 x 0 x 1 x 4 x 7 1 min {10 - 0; 5 - 0; 15 - 0} 5
d 2 x 0 x1x 2 x 5 x 7 2 min {10 - 0; 5 - 0; 15 - 0; 8 - 0} 5
d3 x0x 2x5x7 3 min {6 - 0; 15 - 5; 8 - 5} 3
d4 x 0x 2x3x 6x 7 4 min {6 - 3; 5 - 0; 7 - 0; 12 - 0} 3
d5 x 0x3x 6x 7 5 min {10 - 0; 7 - 3; 12 - 3} 4
d6 x 0x3x5x 6x 7 6 min {10 - 4; 2 - 0; 4 - 0; 12 - 7} 2

Nu se mai pot forma alte drumuri din x0 n xn, mergnd pe arce nesaturate. Aadar
fluxul care strbate reeaua n acest moment este:
1 5 5 3 3 4 2 22

Etapa 2. Se verific dac fluxul total obinut n etapa 1 este sau nu maxim aplicnd o
operaie de marcare a vrfurilor reelei dup urmtoarele reguli: se marcheaz cu + vrful x0
de intrare n reea. Dac vrful xi a fost marcat, iar vrful xj nu a fost marcat i exist arcul xixj
nesaturat (adic c ij ij 0 ) se marcheaz vrful xj cu (+xi). dac vrful xi a fost marcat, iar
vrful xj nu a fost marcat i exist arcul xjxi cu un flux ij 0 se marcheaz vrful xj cu (+xi).
operaia de marcare a vrfurilor continu pn cnd se ajunge la una din urmtoarele 2
situaii:
1. Vrful de ieire din reea rmne nemarcat. Fluxul gsit este cel maxim i trebuie
egalat cu capacitatea tieturii reelei. Tietura este planul ce separ reeaua n dou pri:
vrfurile marcate de vrfurile nemarcate la ultima marcare. Capacitatea tieturii este egal cu
suma valorilor de flux de pe toate arcele strbtute de tietur. Tietura trece doar prin arce
saturate.
2. Vrful de ieire din reea este marcat, deci fluxul nu este cel maxim i se trece la
etapa a III-a.

2
-x2
5=5
x1 x4

-x3 +x2
6=3+3 15=5+3+ 8=5+3
(+) x0 x2 x5 x7 +x6

7=3+4
x3 x6
+x0 +x5

Etapa 3. Se construiete un lan de la intrarea la ieirea din reea (x0 - xn) astfel nct
fiecare vrf al lanului (cu excepia vrfului de intrare n reea) s fie marcat cu indicele
vrfului anterior. Acest lan se scrie mai uor de la sfrit ctre nceput folosind marcrile
realizate n etapa a II-a. Pentru lanul gsit se calculeaz cantitatea:
min {1 , 2 } ,
1 min {c ij - ij } numai pentru toate arcele lanului cu sgeata n sensul citirii
acestuia (de la stnga la dreapta);
1 min { ij } se calculeaz pentru toate arcele lanului cu sgeata n sens
invers citirii acestuia.

Cantitatea se adun ca valoare de flux pe toate arcele lanului cu sgeata n sensul


citirii lor i se scade din fluxul arcelor cu sgeata n sens invers citirii lor.
Rezultatul final al acestor operaii este creterea fluxului total ce strbate reeaua cu
cantiti. Dup aceasta, reeaua este strbtut de fluxul 2 1 .
Fluxul 2 se verific printr-o nou operaie de marcare a vrfurilor reelei. Fluxul
gsit (maxim) trebuie s fie egal cu capacitatea tieturii (C v), adic cu suma valorilor de flux
de pe toate arcele strbtute de tietur.

-x2
5=5
x1 x4

-x3 +x2
6=3+3 15=5+3+2+ 8=5+3
(+) x0 x2 x5 x7

7=3+4
x3 x6
+x0

1 2 ( min {10 - 6; 5 - 3; 15 - 8; 4 - 2;12 - 9} ),


2 3

3
2
2 1 22 2 24

Prin noua marcare x7 rmne nemarcat, deci 2 = flux maxim.


Capacitatea tieturii: C v 5 8 4 7 24 2 .

4
Aplicaie:

n 4 centre de distribuie A1, A2, A3 i A4 se gsesc la un moment dat urmtoarele


cantiti de marf: A1 = 240 t, A2 = A3 = A4 = 200 t. Aceste cantiti urmeaz s fie
transportate la 4 beneficiari B1, B2, B3 i B4 n urmtoarele condiii: B1 = 200 t, B2 = 160 t,
B3 = 180 t, B4 = 300 t. Posibilitile de transport limitate de capacitatea mijloacelor de
transport sunt date n tabelul urmtor. S se determine cantitatea maxim de mrfuri (fluxul
maxim de mrfuri) ce poate fi transportat de la centrele de distribuie la beneficiari (fcndu-
se abstracie de costuri).

B1 B2 B3 B4
A1 140 60 40 -
A2 100 80 20 -
A3 - 40 80 160
A4 - 40 80 160

Rezolvare:

n funcie de datele din tabel formm urmtoarea reea:

Pentru a putea aplica algoritmul Ford-Fulkerson, trebuie ca reeaua sa aib un singur


punct de intrare i un singur punct de ieire. Pentru aceasta, vom introduce n reea un punct
x1 ce reprezint cantitile de mrfuri aflate la nivelul celor 4 centre de distribuie, cantiti ce
urmeaz a fi transportate la beneficiari i un punct x2 ce reprezint cantitile cu care
urmeaz a fi aprovizionai cei 4 beneficiari.
n continuare, vom aplica algoritmul Ford-Fulkerson:

5
Etapa 1. Se caut succesiv drumuri de la x0 la xn astfel nct fiecare din aceste drumuri
s fie format numai din arce nesaturate.

d 1 x 1 A1 B1 x 2 1 min{240-0; 140-0; 200-0 } 140


d 2 x 1A1B 2 x 2 2 min{240-140; 60-0; 160-0 } 60
d 3 x 1A1B3 x 2 3 min{240-200; 40-0; 180-0 } 40
d 4 x 1A 2 B 2 x 2 4 min{200-0; 80-0; 160-60 } 80
d 5 x 1A 2 B3 x 2 5 min{200-80; 20-0; 180-0 } 20
d 6 x 1 A 2 B1 x 2 6 min{200-100; 100-0; 200-140 } 60
d 7 x 1A 3 B 2 x 2 7 min{200-0; 40-0; 160-140 } 20
d 8 x 1A 2 B 2 x 2 8 min{200-20; 80-0; 180-0 } 80
d 9 x 1A 3 B 4 x 2 9 min{200-100; 160-0; 300-0 } 100
d 10 x 1 A 4 B 3 x 2 10 min{200-0; 80-0; 180-140 } 40
d 11 x 1 A 4 B 4 x 2 11 min{200-40; 160-0; 300-100 } 160

Nu se mai pot forma alte drumuri din x1 n x2, mergnd pe arce nesaturate. Aadar,
fluxul care strbate reeaua n acest moment este:
1 140 60 40 80 20 60 20 80 100 40 160 800 tone

Vom verifica, n continuare, dac fluxul determinat este maxim, marcnd vrfurile
reelei:

6
n urma operaiei de marcare a vrfurilor reelei, vrful de ieire din reea a rmas
nemarcat, aadar fluxul determinat n etapa anterioar este maxim ( 800 t )
Verificm dac fluxul maxim este corect calculat, calculnd capacitatea tieturii
trasate n figura urmtoare:

7
Capacitatea tieturii (calculat ca suma capacitilor arcelor saturate tiate de
curb) este:
C v 200 60 40 80 20 200 200 800 , de unde rezult ca fluxul maxim a
fost calculat corect.

S-ar putea să vă placă și