Sunteți pe pagina 1din 36

Teoria grafurilor.

Carte recomandat:
Elemente de teoria grafurilor, de teoria jocurilor i de statistic
matematic. Modele matematice n economie. Teorie i Aplicaii.
Autor: eu, Virginia Atanasiu.
Editura ASE.
Librria Editurii ASE.
Pre: 53 lei.

1) Definiia grafului orientat finit.

(X, ), unde:
def .
[graful orientat] se noteaz cu G

cuplul de 2 componente: X i

X (mulime) nevid + finit de n elemente, numite vrfuri ale lui G


este

(sau noduri ale lui G, sau puncte ale lui G) i notate cu [x1, x2, ... ,xn] (sau
prescurtat: [1, 2, ... , n]), iar:

n sensul c are importan (conteaz)


ordinea elementelor n pereche

(o mulime de perechi ordonate de 2 elemente din X, numite arce


este

ale lui G (sau conexiuni directe ale lui G, sau linii ale lui G) i notate prin
(xi, xj) (sau prescurtat: (i, j)), i, j = 1, n , cu i j.

nt
re paranteze rotunde, ntre paranteze rotunde,
de pereche ordonat, de pereche ordonat,
cele 2 elemente xi, xj cele 2 elemente i, j
ale lui X ale lui X
(perechea ordonat, (perechea ordonat,
de elemente: xi, xj, ale lui X, de elemente: i, j, ale lui X,
sau perechea ordonat, sau perechea ordonat,
format din elementele: format din elementele:
xi, xj ale lui X) i, j ale lui X)
Observaia1: Cazul i = j n cadrul perechii ordonate (i, j) conduce la
perechea ordonat (i, i), numit bucl. Se vor considera numai grafuri
orientate fr bucle.

Observaia2: Pentru arcul (i, j) al lui G (pe scurt pentru (i, j) ),


vrfurile i i j ale lui G s.n. extremitile arcului; mai precis:

-vrful i al lui G s.n. nod iniial al lui (i, j) (sau extremitate


iniial a lui (i, j)), iar:

-vrful j al lui G s.n. nod final al lui (i, j) (sau extremitate final a
lui (i, j)).

Remarc:

nod nod
iniial final
al lui (i, j) al lui (i, j)

(i, j) arc incident cu vf le i i j ale lui G (adic arc, ale crui


extremiti sunt
vrfurile i i j ale lui
G)

extremitate extremitate
iniial final
a lui (i, j) a lui (i, j)

Vrfurile i i j de mai sus s. n. vrfuri adiacente, pentru c un


arc ce le unete.

2) Reprezentri matematice pentru orientat finit.

Referitor la 2) = (reprezentri matematice ale unui graf orientat G =


(X, ), cu n vrfuri) exist a), cu a1) i a2), respectiv b) i c), unde:

a) reprezentarea analitic a lui G, ce presupune urmtoarele 2 forme


de definire matematic a lui G:
a1) G = (X, ), adic nsi definiia lui G
i:

a2) G = (X, ), unde:

: X (X)

def .
i (i) {vrfurilor lui G, la care se ajunge prin arce, ce
pleac din i}, i = 1, n .

Observaia3: Aplicaia face s corespund fiecrui element i


X, un element din X, mai multe elemente din X, sau niciun element din
X.

b) reprezentarea matriceal a lui G, ce presupune urmtoarea


form de definire matematic a lui G:
not . def .
G = (X, A), unde: A (matricea arcelor lui G) (matricea de
def .
elemente aij, ptraric de ordinul n) (aij) , cu: i , j 1, n

elementul de la intersecia liniei i a lui A cu coloana j a lui A, notat:

def . 1, dc. (i, j ) in G def . 1, dc. (i, j )


aij 0, dc. non (i, j ) in G , i, j = 1, n (aij 0, dc. (i, j ) , i, j =
= 1, n ).

c) reprezentarea geometric a lui G, ce presupune urmtoarea


form de definire matematic (n spe grafic) a lui G:

vrfurile lui G se reprezint ca puncte n plan dispuse (aezate)


arbitrar (oricum), iar:

arcele se reprezint prin linii drepte sau curbe, ce unesc


extremitile lor, avnd pe ele o sgeat de orientare de la nodul iniial al
arcului la nodul final al acelui arc.
3) Clasificarea vrfurilor lui G: geometric, i respectiv cu ajutorul
lui A (cu ajutorul matricei A a arcelor lui G).

Pentru 3) = (clasificarea vrfurilor unui graf orientat G = (X, ), cu


n vrfuri) avem (I), cu a), b), c), d) i (II), cu a), b), c), d), unde :

(I) clasificarea geometric a vrfurilor lui G = (X, ), cu n vrfuri:

a) Vrful i X, cu proprietatea c n el nu intr arce, ci numai ies


arce, s.n. surs (sau intrare, emisie) a lui G:

b) Vrful i X, cu proprietatea c n el intr arce, dar nu ies arce,


s.n. destinaie (sau ieire, recepie) a lui G:

c) Vrful i X, cu proprietatea c n el intr arce, dar i ies arce, s.n


intermediar a lui G:

d) Vrful i X, cu proprietatea c n el nici nu intr arce i nici nu


ies arce, s.n. izolat a lui G:
i

(II) clasificarea vrfurilor lui G = (X, ), (G cu n vrfuri), cu


ajutorul matricei A a arcelor lui G:

a) Vrful i X s.n. surs (sau intrare, emisie) a lui G, dac:


n

a *, adic
j 1
ij (exist) arce, ce pleac din i,

i:
n

a = 0, adic nu exist arce, ce sosesc n i.


k 1
ki

b) Vrful i X s.n. destinaie (sau ieire, recepie) a lui G, dac:


n

a = 0, adic nu exist arce, ce pleac din i,


j 1
ij

i:
n

a *, adic
k 1
ki (exist) arce, ce sosesc n i.

c) Vrful i X s.n. vrf intermediar a lui G, dac:


n

a *, adic exist arce, ce pleac din i,


j 1
ij
i:
n

a *, adic exist arce, ce sosesc n i.


k 1
ki

d) Vrful i X s.n. vrf izolat a lui G, dac:


n

a = 0, adic nu exist arce, ce pleac din i,


j 1
ij

i:
n

a = 0, adic nu exist arce, ce sosesc n i.


k 1
ki

4) Concepte orientate ntr-un graf orientat finit.

Pentru 4) = (concepte orientate ntr-un graf orientat G = (X, ), cu


n vrfuri) punem n eviden a), b), c) i d), unde:
def .
a) [drum n G] (o succesiune de arce ale lui G, puse cap la cap);
mai precis, cu:

not . def .
d(i, j) (drumul de la i la j) (i, p, l, ... , m, j)

secvena de vrfuri ale lui G:


i, p, l, ... , m, j,
cu proprietatea c n G:
arc de la i la p,
arc de la p la l,
.
.
arc de la m la j.
def .
Observaia4: [lungimea unui drum] [numrul de arce, ce l
formeaz].
def .
b) [drum elementar n G] [drum format din vrfuri (noduri)
distincte] (drum care nu repet niciun vrf prin care el trece, sau
drum care trece prin fiecare vrf al su o singur dat).
sau def .
c) [drum nchis n G] [circuit n G] [drum care se termin cu
not .
acelai vrf cu care ncepe]; cu: d(i, i) (drumul de la i la i, sau
circuitul ce l conine pe i).
def .
d) [drum hamiltonian n G] (drum elementar, ce trece prin toate
def .
vrfurile lui G) (drum care trece prin toate vrfurile lui G, o
singur dat); notm drumul hamiltonian cu dH sau DH.

Observaia5: Se arat c [lungimea unui dH sau DH n G] = n 1


(arce).

Deci DH ul este un drum elementar, de lungime (n 1) arce.

5) Matrici asociate unui graf orientat finit .

Pentru 5) = (matrici asociate unui graf orientat G = (X, ), cu n


vrfuri) exist a), b) i c), unde:
not . def .
a) A (matricea arcelor lui G) (matrice de elemente aij, ptratic
def .
de ordinul n) (aij) , unde: i , j 1, n

def . 1, dc. (i, j ) in G def . 1, dc. (i, j )


aij , i, j = 1, n (aij 0, dc. (i, j ) , i, j =
0, dc. non (i, j ) in G
= 1, n ).

Observaia6:
n

a = (arat suma sau numrul elementelor egale cu 1 de pe linia


j 1
ij

i din A) = (arat suma elementelor de pe linia i din A), i = 1, n ;


n

a = (arat suma sau numrul elementelor egale cu 1 de pe


i 1
ij

coloana j din A) = (arat suma elementelor de pe coloana j din A),


j = 1, n .

Din cele de mai sus, deducem c:


n n

a = (suma sau numrul elementelor egale cu 1 din matricea


i 1 j 1
ij

A), i, j = 1, n .
not . def .
b) D (matricea drumurilor lui G) (matrice de elemente aij,
def .
ptratic de ordinul n) (dij) , unde: i , j 1, n

def . 1, dc. 1 d (i , j ) in G
dij 0, dc. non d (i, j ) in G , i, j = 1, n .

Observaia7:

1) Dac dii = 0, i = 1, n (sau dac toate elementele de pe diagonala


principal a lui D sunt nule, respectiv egale cu 0), atunci n G nu exist
n d(i, i), i = 1, n , adic n G nu exist circuit ce conine vrful i, i
= = 1, n , deci G este un graf (orientat) fr circuite.

2) Dac 1 i = 1, n , a.. dii = 1, atunci n G 1 d(i, i), cu i = 1, n ,


adic n G 1 circuit ce conine vrful i, deci G este un graf
(orientat) cu circuite.

3) n prealabil, definim urmtoarele:


a) Spunem c vrful i atinge pe j n G, dac n G 1 d(i, j), unde i,
j= 1, n .
not . def .
b) pi (sau p(i)) (puterea de atingere a vrfului i) (numrul
de vrfuri atinse de i).

Mod de calcul pentru pi, unde i = 1, n :


n

pi = d ij = (arat suma elementelor de pe linia i din D) = (suma sau


j 1

numrul elementelor egale cu 1 de pe linia i din D), i = 1, n .


n n n

c) pi
b) d = (arat suma sau numrul elementelor egale cu 1
i 1 j 1
ij
i 1

din D).

Observaia8:

1) Elementele dij = 1 din D arat toate posibilitile de trecere de la


i la j, cu i, j = 1, n .

2) Elementele dij = 1 de pe coloana j din D, i = 1, n arat de la ce


vrfuri i din G se poate ajunge la vrful j din G.

3) Elementele dij = 1 de pe linia i din D, j = 1, n arat la ce


vrfuri j din G se poate ajunge de la vrful i al lui G, adic arat
vrfurile din G ce sunt atinse de ctre vrful i al lui G (sau ce sunt
atinse prin drumuri de vrful i (sau de la vrful i)).
not .
c) V (matricea valorilor arcelor lui G).

n prelabil, definim funcia:


v:

(i, j) v((i, j))
not .
(valoarea arcului (i, j) a lui G)

s.n. funcie valoare a lui G.


Prin introducerea funciei v, graful orientat finit G s.n. (sau devine)
valuat (sau ponderat, sau capacitate) i se noteaz astfel: G (X, ,
def .

v).

Acum suntem n msur s definim pe V:


def . def .
V (matrice de elemente aij, ptratic de ordinul n) (vij) i , j 1, n ,
unde:

0, dc. i j
def .
vij v((i, j )), dc. i j si (i, j ) in G, i, j = 1, n , cu
, dc. i j si non(i, j ) in G

meniunea c:

valoarea infinit egal cu + se atribuie n problemele de drum (rut,


traseu) minim (minim, sau minim), iar cealalt valoare infinit egal cu
- se atribuie n problemele de drum (rut, sau traseu) maxim
(maxim, sau maxim).

Graful orientat finit valuat (sau ponderat, sau capacitate) se noteaz


tot cu G, dar se mai poate defini i astfel: G (X, , V).
def .

6) Determinarea lui dH (sau DH) ntr-un graf orientat finit fr


circuite, i cu circuite.

Pentru 6) = (determinarea lui dH ntr-un G = (X, ) fr circuite, i


respectiv cu circuite) avem (I) i (II), unde:

(I) Problema DH ului ntr-un G = (X, ) fr circuite, cu


n vrfuri:

Fie G = (X, ) un graf orientat fr circuite, cu n vrfuri.

R1 = ThChen afirm c: Fie G = (X, ) un graf orientat fr


n
n( n 1)
circuite, cu n vrfuri. Concluzie: dH n G p =
i 1
i
2
.

suma
sau
nr - l
elementelor
egale
cu
1 din
D.

R2 afirm c: Fie G = (X, ) un graf orientat fr circuite, cu n


vrfuri, a. . dH n G. Concluzie: dH este unic i el parcurge vrfurile lui
G, n ordinea descresctoare () a puterilor lor de atingere.

Problema cercetrii DH ului ntr-un G = (X, ) fr circuite i


cu n vrfuri (adic ntr-un graf orientat finit i fr circuite) presupune
parcurgerea etapelor1, 2, 3:

Etapa1: Stabilim natura lui G = (X, ) = (graf orientat finit, cu n


vrfuri), adic ? (ne ntrebm) dac G este cu sau fr circuite; n acest
sens, ? (determinm) pe A (? = A) , i apoi ? (determinm) pe D (? = D);
din A D, pe baza + rii booleene; - a sau inexistena circuitelor
n G este dat de elementele diagonalei principale a lui D, i anume:

- dac dii = 0, i = 1, n , atunci G (fr circuite), respectiv;


este

- dac i = 1, n , a.. dii = 1, atunci G (cu circuite).


este

Presupunem c G (fr circuite).


este

Etapa2: ? (calculm) pi (? = pi = (puterea de atingere pentru


fiecare vrf i)), cu i = 1, n , astfel:
n

pi
def .
d = (suma elementelor de pe linia i din D),
j 1
ij i= 1, n

.
n acest sens, atam la dreapta tabelului ce conine pe D,
coloana pi- urilor, cu i = 1, n .
n n

Etapa3: ? (determinm) pi : ? = pi
adica
(suma sau numrul
i 1 i 1

elementelor egale cu 1 din D) pentru a o compara sau pentru a-l compara


n( n 1)
cu 2
.

Discuie:
n
n( n 1)
Cazul (i): Dac pi = 2
, atunci ! dH n G, iar dH
i 1

parcurge vrfurile lui G, n ordinea descresctoare () a puterilor lor


de atingere;
n
n( n 1)
Cazul (ii): Dac pi 2
, atunci nu dH n G.STOP
i 1


cazul
contrar
lui
(i)

(II) Problema DH ului ntr-un G = (X, ) cu circuite i cu


n vrfuri:

Fie G = (X, ) un graf orientat cu circuite, cu n vrfuri.

Problema cercetrii DH ului ntr-un G = (X, ) cu circuite i


cu n vrfuri (adic ntr-un graf orientat finit i cu circuite), sau ?
(determinarea) dH ului, respectiv a dH urilor (? = dH ului, respectiv
a ? = dH urilor) n G presupune ? (determinarea) matricilor M(1),
M(2), ..., M(n 1) (? = M(1), M(2), ... , M(n 1)), care ne dau drumurile
elementare (adic ne dau drumurile coninnd vrfuri distincte), dintre
oricare 2 vrfuri ale lui G, formate din 1, 2, ..., n 1 arce, adic de
lungimi: 1, 2, ..., n 1 arce. Din enumerarea de mai sus, intereseaz
matricea M(n 1), care conine dH ul, sau dH urile din G.

Varianta1 de determinare a lui M(n 1):

construim pe:

def .
- ? = M(1) (mij(1)) i , j 1, n = (matricea de elemente mij(1),
ptratic de ordinul n), unde:

secvena secvena
de de
vrfuri: vrfuri:

def . ij , dc. (i, j ) in G def . ij , dc. (i, j )
mij(1) , i, j = 1, n (mij(1)
(i, j )
,
0, dc. non (i, j ) in G 0, dc.
i, j = 1, n ).

construim pe:

(1) def . ~ (1) ~ (1)
- apoi ? = M~ ( m ij ) i , j 1, n = (matricea de elemente m ij ,
ptratic de ordinul n), unde:

vrful vrful

~ (1) def . j , dc. (i, j ) in G ~ def . j, dc. (i, j )
m ij , i, j = 1, n ( m ij(1)
dc. (i, j )
,
0, dc. non (i, j ) in G 0,
i,
j = 1, n ).
(1)
Observaia9: Matricea M~ se obine din matricea M(1) prin
suprimarea (sau eliminarea, sau tergerea) primului vrf din orice
secven de 2 vrfuri (evident distincte), ce apare n M(1), iar acolo unde
(1)
avem (este) 0 n M(1) rmne 0 i n M~ .

- dup care, efectum n ordine operaiile de mai jos, folosind


rea latin (de un tip special), astfel:

1) ? = (determinm) = M(2) = (utilizm descompunerea ceva + 1,


pentru exponentul 2 al puterii lui M(2)) = M(1 + 1) = (conform rii de

evident
ceva + 1 = 2
implic acel ceva = 1;
alt descompunere nici
nu exist

un tip special) = (ce afirm c este produsul a 2 matrice M, n care


matricea M de pe locul I al respectivului produs apare cu primul 1 din
descompunerea (1 + 1) a lui 2 i este scris fr ~ (fr tilda)
deasupra ei, iar matricea M de pe locul II al respectivului produs
apare cu al doilea 1 din descompunerea (1 + 1) a lui 2 i este scris cu
~ (cu tilda) deasupra ei) = M(1) M (1) .
~

2) ? = (determinm) = M(3) = (utilizm descompunerea ceva + 1,


pentru exponentul 3 al puterii lui M(2)) = M(2 + 1) = (conform rii de


evident
ceva + 1 = 3
implic acel ceva = 3 1 = 2;

un tip special) = (ce afirm c este produsul a 2 matrice M, n care


matricea M de pe locul I al respectivului produs apare deasupra ei, la
dreapta cu 2 din descompunerea (2 + 1) a lui 3 i este scris fr ~
(fr tilda) deasupra ei, iar matricea M de pe locul II al respectivului
produs apare deasupra ei, la dreapta cu 1 din descompunerea (2 + 1) a
lui 3 i este scris cu ~ (cu tilda) deasupra ei) = M(2) M~ .
(1)

.
. .a.m.d. pn ajungem la:
.

n - 2) ? = (determinm) = M(n - 1) = (utilizm descompunerea ceva + 1,


pentru exponentul n - 1 al puterii lui M(n - 1)) = M(n 2 + 1) = (conform

evident
ceva + 1 = n - 1
implic acel ceva = (n 1) 1 = n - 2;

definiiei rii de un tip special) = (ce afirm c este produsul a 2


matrice M, n care matricea M de pe locul I al respectivului produs
apare deasupra ei, la dreapta cu (n 2) din descompunerea [(n 2) + 1]
a lui (n 1) i este scris fr ~ (fr tilda) deasupra ei, iar matricea
M de pe locul II al respectivului produs apare deasupra ei, la dreapta
cu 1 din descompunerea [(n 2) + 1] a lui (n 1) i este scris cu ~
(cu tilda) deasupra ei) = M(n- 2) M (1) .
~

Observaia10: n cadrul nmulirii ( rii) de un tip special al


matricelor M(r) i M~ , ce afirm c: M(r + s) = M(r) M (s ) ., suprapunem
(s) ~

~
liniile din M(r) peste coloanele din M (s ) , i efectum produsul
elementelor ce se corespund la suprapunere, n sensul descris mai jos:

(secven) 0
def .
0,

0 (secven)
def .
0,

secvena format numai dac


din cele 2 secvene, ea (adic
(secven) (secven) scrise de la stnga la dreapta, secvena
def .

mare)
conine
vrfuri
diferite

0, n caz contrar.
~ (s)
M (s ) .se obine din M prin tergerea primului vrf din orice secven de
(s + 1) vrfuri ce apare n M(s), iar acolo unde n M(s) avem 0, rmne 0 i
~
n M (s ) .

Varianta2 de determinare a lui M(n 1):


? = (determinm) = M(n - 1) = (folosim o alt descompunere pentru
exponentul (n 1) al puterii lui M(n - 1), adic diferit de cea din
varianta1, adic diferit de ceva + 1, i anume:) = M(r + s) =
r n2
s 1

= (conform definiiei nmulirii ( rii) de un tip special) = (ce afirm


c este produsul a 2 matrice M, n care matricea M de pe locul I al
respectivului produs apare deasupra ei, la dreapta cu r din
descompunerea (r + s) a lui (n 1) i este scris fr ~ (fr tilda)
deasupra ei, iar matricea M de pe locul II al respectivului produs
apare deasupra ei, la dreapta cu s din descompunerea (r + s) a lui (n 1)
i este scris cu ~ (cu tilda) deasupra ei) = M(r) M (s ) .
~

Exemplu: pentru n = 5 n 1= 5 1 = 4, iar:

M(n 1) = M(4) se poate determina prin varianta2, astfel:

M(4) = (singura alt descompunere a lui 4, adic diferit de 3 + 1 a lui


4, este 2 + 2, a.. obinem) = M(2 + 2) = (conform definiiei nmulirii
( rii) de un tip special) = (ce afirm c este produsul a 2 matrice
M, n care matricea M de pe locul I al respectivului produs apare
deasupra ei, la dreapta cu primul 2 din descompunerea (2 + 2) a lui 4
i este scris fr ~ (fr tilda) deasupra ei, iar matricea M de pe
locul II al respectivului produs apare deasupra ei, la dreapta cu al doilea
2 din descompunerea (2 + 2) a lui 4 i este scris cu ~ (cu tilda)
deasupra ei) = M(2) M ( 2) , unde: M(2) = M(1 + 1) = M(1) M (1) , iar
~ ~

~ (2)
M ( 2) .se obine din M prin tergerea
primului vrf din orice secven de (2 + 1) = 3 vrfuri ce apare n M(2),
~
iar acolo unde n M(2) avem 0, rmne 0 i n M ( 2) .

Alt exemplu: pentru n = 9 n 1= 9 1 = 8, iar:

M(n 1) = M(8) se poate determina prin varianta2, astfel:

M(8) = (nu considerm 1 + 7, pentru c este descompunerea din cadrul


variantei1; de asemenea, nu convine 2 + 6, pentru c ar nsemna s
efectum prea multe calcule; de asemenea, nu convine 3 + 5, pentru c
ea ar conduce la un volum mare de calcule; de asemenea, nu convine
descompunerea 5 + 3, ntruct aceasta este identic cu descompunerea
3 + 5 luat n considerare mai sus, i nici descompunerea 6 + 2 nu
convine, ntruct aceasta este identic cu descompunerea 2 + 6, luat
n considerare mai sus; de asemenea, descompunerea 7 + 1 nu este
vizat, aceasta fiind identic cu 1 + 7, la care am fcut referire la
nceput; rmne descompunerea 4 + 4 pentru 8, a.. obinem) =
= M(4 + 4) = (conform definiiei nmulirii ( rii) de un tip special) =
= (ce afirm c este produsul a 2 matrici M, n care matricea M de
pe locul I al respectivului produs apare deasupra ei, la dreapta cu primul
4 din descompunerea (4 + 4) a lui 8 i este scris fr ~ (fr tilda)
deasupra ei, iar matricea M de pe locul II al respectivului produs
apare deasupra ei, la dreapta cu al doilea 4 din descompunerea (4 + 4) a
lui 8 i este scris cu ~ (cu tilda) deasupra ei) = M(4) M ( 4) , unde:
~

M(4) = M(2 + 2) = M(2) M ( 2) (a se vedea exemplul precedent), iar: M ( 4) .se


~ ~

obine din M(4) prin tergerea primului vrf din orice secven de (4 + 1)
= 5 vrfuri ce apare n M(4), iar acolo unde n M(4) avem 0, rmne 0 i
~
n M ( 4) .

2 = 1 + 1;

3 = 2 + 1; 2 = 1 + 1;

4 = 2 + 2;

5 = 4 + 1; 4 = 2 + 2; 2 = 1 + 1 (sau: 5 = 1 + 4; 4 = 2 + 2; 2 = 1 + 1, dar de
preferat ceea ce este scris naintea parantezei rotunde); (sau: 5 = 3 + 2; 3 =
= 2 + 1; 2 = 1 + 1, dar de preferat tot ceea ce este scris naintea primei
parantezei rotunde);

6 = 4 + 2; 4 = 2 + 2; 2 = 1 + 1 (sau: 6 = 5 + 1; 5 = 4 + 1; 4 = 2 + 2; 2 = 1 +
1, dar de preferat ceea ce este scris naintea parantezei rotunde); (sau: 6 =
= 3+ 3; 3 = 2 + 1; 2 = 1 + 1, dar de preferat tot ceea ce este scris naintea
primei parantezei rotunde);

7 = 5 + 2; 5 = 4 + 1; 4 = 2 + 2; 2 = 1 + 1 (sau: 7 = 4 + 3; 4 = 3 + 1; 3 = 2 +
+ 1; 2 = 1 + 1, dar de preferat ceea ce este scris naintea parantezei
rotunde); (sau: 7 = 6 +1; 6 = 4 + 2; 4 = 2 + 2; 2 = 1 + 1, care merge la fel
de bine ca ceea ce este scris naintea primei parantezei rotunde);

8 = 4 + 4; 4 = 2 + 2; 2 = 1 +1;
9 = 8 + 1; 8 = 4 + 4; 4 = 2 + 2; 2 = 1 + 1;

10 = 5 + 5; 5 = 4 + 1; 4 = 2 + 2; 2 = 1 + 1; .a.m.d.

Observaia11: Dac G are circuite, atunci putem stabili aceast


natur a sa, i anume c graful orientat G este cu circuite, fcnd
observaii directe pe G i punnd astfel, n eviden un asemenea
exemplu de circuit (drum nchis) al lui G. Deci n cazul grafului cu
circuite, nu construim matricea D, ci procedm aa dup cum am afirmat
ceva mai devreme

Observaia12: Dac G nu are circuite, atunci putem stabili aceast


natur a sa, i anume c graful orientat G este fr circuite, nu prin
efectuarea de observaii directe pe G, ci prin intermediul matricei D a
drumurilor lui G.

7) Determinarea drumurilor de valoare optim (minim sau maxim)


sau pe scurt a drumurilor optime (drumuri minime sau drumuri
maxime) de la fiecare vrf i al grafului orientat finit (cu i = 1, n ),
la un vrf fixat al respectivului graf, fie acesta n, adic ultimul
vrf al grafului, indiferent cum ar fi graful orientat finit, n sensul
urmtor: cu circuite sau fr circuite.

Deci pentru 7) = (determinarea drumurilor de valoare optim, adic


minim i respectiv maxim ntr-un G = (X, ), cu n vrfuri) se impune
rezolvarea urmtoarelor 2 probleme:

Problema 1: ? = (determinarea) valorii optime a drumurilor de la


fiecare (oricare) vrf i al lui G la un anumit vrf fixat al lui G, fie
acesta n al lui G, adic ultimul vrf al lui G, i = 1, n .

Apoi, numai n cazul n care problema cere efectiv (n mod explicit):

Problema 2: ? = (determinarea) = dopt(i, n), i= 1, n , pentru care


aplicm alg.B K.

drumurilor
optime (adic de
valoare optim)
de la
fiecare (oricare) vrf i al lui G
la
un anumit vrf fixat al lui G,
fie acesta n al lui G,
adic ultimul vrf al lui G, i =
1, n .

Observaia12: Dac vrful fixat al lui G este altul dect vrful n al


lui G, adic dect ultimul vrf al lui G, atunci l trecem pe ultimul loc, i
apoi aplicm alg.B K (algoritmul Bellman Kalaba).

Observaia13: Pentru rezolvarea problemei de mai sus, definim


urmtoarele 3 noiuni: noinunea1, noinunea2 i noinunea3, unde:

Noinunea1:

Funcia notat simplu:


cu
v: semnificaia economic:

(i, j) v((i, j)) (valoarea arcului (i, j) al lui G) = (cost, sau
not .

cheltuial, sau profit pe ruta (i, j)), s.n. funcie valoare a lui G = (X, ).

Astfel, G = (X, ) devine (sau s.n.) graf valuat, sau graf ponderat,
sau graf capacitate i se noteaz simbolic prin G = (X, , v) sau G = (X,
, V).

not .
Noinunea2: (matricea valorilor arcelor lui G) V = (matricea de
def .
elemente vij, ptratic de ordinul n) (vij) Mn x n([- , + i , j 1, n

]), unde:

0, dac i = j,

v((i, j)), dac i j i dac


def .
vij (i, j) n G, i, j = 1, n ,
, dac i j i non (i, j) n G,

cu: v((i, j)) notndu se valoarea arcului (i, j) al lui G,

iar valoarea infinit: + , atribuindu-se, dac optim nseamn minim,

respectiv cealalt valoare infinit: - , atribuindu-se dac optim


nseamn maxim.

Observaia14: V este a treia matrice asociat lui G = (X, , v).

Observaia15: V ca i A i D, se scrie ntr un tabel cu o singur


intrare, ale crui linii i coloane, corespund vrfurilor lui G = (X, , v).
def .
Noinunea3: (valoarea unui drum n G) (suma valorilor de pe
arcele sale).

Algoritmul Bellman Kalaba revine la parcurgerea a 2 etape:

Etapa1: ? = (determinm) = V, dac aceast matrice nu este dat n


enunul problemei, iar sub tabelul ce-l conine pe V, atam noi linii,
notate cu:
(1)
m in , ( 2)
m in , ... , (n )
m in , ....,

care dau valorile optime ale drumurilor din G = (X, , V), de la fiecare
(oricare) vrf i al lui G la vrful fixat n al lui G, cu i = 1, n , formate
din:

1, 2, ........... ,n, ..............arce,

adic de lungimi respectiv egale cu:

1, 2, ............, n, .................arce.

Operaiunea de construire (ataare) a noilor linii continu pn


cnd obinem 2 astfel de linii consecutive identice, caz n care alg.B K se
oprete, deoarece aici s-au determinat valorile optime cutate, adic ale
drumurilor de la fiecare (oricare) vrf i al lui G la un anumit vrf fixat
al lui G, fie acesta n al lui G, adic ultimul vrf al lui G, indiferent de
numrul de arce, ce le formeaz i = 1, n .

Etapa2: ? = (se determin efectiv drumurile de valoare optim de la


fiecare vrf i al lui G la vrful n al lui G, i = 1, n ) = (adic se
determin drumurile optime de la fiecare vrf i al lui G la vrful fixat
n al lui G, i = 1, n ) = (ceea ce revine la determinarea vrfurilor i
arcelor respectivelor drumuri), deci drumuri ce realizeaz valorile
optime ce s au obinut la etapa1 (adic ale drumurilor de valori
optime, stabilite n cadrul etapei1).

Observaia16: Parcurgem etapa2, numai dac problema cere pe


lng valoarea optim a drumului (sau drumurilor) de la vrful i
specificat la vrful n fixat, i drumul respectiv (drumurile respective),
care realizeaz aceast valoare optim.

8) Determinarea arborelui acoperire economic sau minimal al unui


graf neorientat finit valuat.

Pentru 8) = (determinarea arborelui acoperire minimal) se impun


a fi definite urmtoarele noiuni:
def .
1) [graful neorientat finit] notat cu G (X, ), unde:


cuplul
de
2
componente X i
X (mulime) nevid + finit de n elemente, numite vrfuri ale lui G
este

(sau noduri ale lui G, sau puncte ale lui G) i notate cu: x1, x2, ... ,xn (sau
prescurtat, sau pe scurt: 1, 2, ... , n), iar:

n sensul c nu are importan (nu conteaz)


ordinea elementelor n pereche
(o mulime de perechi neordonate de 2 elemente din X, numite
este

muchii ale lui G i notate prin [xi, xj] (sau prescurtat, pe scurt : [i, j]), i,
j = 1, n , cu i j.
ntre () ze drepte
ntre paranteze drepte cele 2 elemente
cele 2 elemente ale lui X i, j ale lui X.
xi i xj.

Remarc: Pentru muchia [i, j], vrfurile i i j ale lui G s.n.


extremitile acestei muchii. n cazul grafurilor neorientate finite, nu se
mai face distincie ntre extremitatea iniial i cea final a muchiilor lor,
ntruct [i, j] este identic cu (coincide cu) [j, i].

2) Mod de reprezentare matematic pentru [G = (X, ), cu n


vrfuri]:

-unul singur, i anume: reprezentarea geometric a lui G, prin care:

vrfurile lui G se reprezint ca puncte n plan, dispuse arbitrar


(aezate oricum), iar:

muchiile lui G se reprezint prin linii drepte neorientate sau


curbe neorientate, ce unesc extremitile muchiei.


n sensul c Observaia17: Pentru muchia [i, j],
pe ele nu se afl vrfurile i i j s.n.
nicio sgeat de orientare extremitile ei.
de la o extremitate la alta
a muchiilor. Observaia18: Pentru o muchie nu se
mai face diferen ntre
nodul ei iniial i nodul ei
final.
muchia muchia

Observaia19: Evident ntre [i, j] [j, i],
spre deosebire de (i, j)
(j, i).
arcul
arcul
3) Concepte neorientate ntr-un graf neorientat finit [G = (X, ), cu
n vrfuri]: a) i b), unde:
def .
a) [lan n G = (X, )] (succesiune de muchii ale lui G, puse
cap la cap), notat cu LG.
def .
Observaia20: [lungimea lui LG] [numrul de muchii, ce l
formeaz].
def .
b) [lan nchis n G = (X, )] [lan al lui G, care se termin cu
acelai vrf, cu care ncepe].

4) Tip de conexiune ntr-un G = (X, ), cu n vrfuri [Conceptul


de conexiune ntr-un G = (X, ) cu n vrfuri]:

G s.n. conex, dac oricare 2 vrfuri ale lui G sunt legate prin 1 LG
(de la orice vrf al su se poate ajunge prin L
uri ale lui G, la oricare altul al su).

Introducem urmtoarele definiii pentru noiunea de arbore:

G = (X, ),
cu n vrfuri

def .
Arbore
pr zisa
[graf neorientat finit + conex + fr lanuri nchise].

G = (X, ),
cu n vrfuri

Arbore = (definiie echivalent util n aplicaii) = (graf neorientat


finit + conex + cu numr minim de muchii].


n raport cu proprietatea lui G de a fi conex, n
sensul c: G = (este graf (neorientat finit) conex), iar [- rea din G] =
= [(suprimarea) = (eliminarea) din G] a unei muchii a lui G, face ca
graful rmas, adic G \ {respectiva muchie} s nu mai fie conex.
5) Graf dedus din [G = (X, ), cu n vrfuri]:
def .
S.n. graf parial strict al lui G un graf notat cu G (X, ' ), cu
' , adic un graf cu aceleai vrfuri ca i G acelai X
i
cu mai puine muchii dect G. cu '
ceea ce nseamn
c:

Deci G este un alt graf neorientat i finit, obinut din graful iniial
G, prin eliminarea unor muchii ale lui G (eliminnd o parte dintre
muchiile lui G), dar pstrnd toate vrfurile lui G.

6) Arbore acoperire al unui graf neorientat finit G = (X, ):

Introducem urmtoarea definiie pentru noiunea de acoperire al


lui [G = (X, ), cu n vrfuri]:

not . def .
T (arborele acoperire al lui [G = (X, ), cu n vrfuri]
def .
(un graf parial strict al lui G, care este arbore).

adic: adic, ce:


un graf este conex
cu aceleai vrfuri ca i G, i
i: cu numr minim de muchii.
cu mai puine muchii dect G. mai precis:

7) Graf neorientat finit i valuat (sau ponderat, sau capacitate):

Funcia notat simplu:

v: muchiei [i, j] a lui G



[i, j] v([i, j]) = (valoarea lui [i, j] )

s.n. funcie valoare asociat lui [G = (X, ), cu n vrfuri].

Astfel, [G = (X, ), cu n vrfuri] devine sau s.n. graf neorientat


def .
finit valuat (sau ponderat, sau capacitate), notat cu: G (X, , V).

8) Arbore acoperire minimal sau economic al unui graf neorientat


finit i valuat:
not .
Fie G (X, , v) graful neorientat finit (mai precis, cu n
not . not .
vrfuri) i valuat i fie T (un arbore acoperire al lui G (X, , v)).

def .

v(T)
not .
(valoarea lui T) (suma valorilor de pe muchiile lui
in
cuv .
def .
T) mat

.

v ([i, j]).
def .
[ i , j ]T
mat .
not . def .
T (un arbore acoperire minimal sau economic al lui G) (un
min v(T )
T ( arb.
este
arbore acoperire al lui G, pentru care avem: v( ) T acop . ).
al
lui
G)
valoarea minim
lui ntre
T valorile
tuturor
arborilor
acoperire
posibili
ai lui G.
n aplicaii, prezint interes:

de la orice vrf
al lui T , se poate ajunge
prin L-uri la oricare
alt vrf al lui T
echivalent

graf cu aceleai vrfuri este conex cu


ca i G, i cele
ns cu numr mai
cu mai puine muchii mai minim mici
dect G precis:de muchii valori pentru muchiile sale

adic: adic: adic:



(graf parial strict al lui G, care este arbore minimal (economic))

||adic:
? = (determinarea) lui T , precum i ? = (determinarea) lui v( T ) =
= (conform definiiei) = v ([i, j]). [ i , j ]T

n acest sens, aplicm alg.K (algoritmul lui Kruskal), ce presupune:

-selectarea din G a (n 1) muchii, n ordinea re a valorilor lor i


a.. acestea s nu nchid n T lanuri, cu urmtoarea meniune:

-dac [i, j] , atunci: v([i, j]) = + , adic valoarea atribuit lui [i, j]
este infinit, mai precis egal cu + .

Pentru alegerea cu uurin a muchiilor avnd proprietile din


alg.K, introducem:

V = (singura matrice asociat lui [G = (X, , v), cu n vrfuri])


not .

not . def .
(matricea valorilor muchiilor lui G) (vij) i , j 1, n , unde:

v(]i, j]), dac [i, j] ,


i, j = 1, n , cu i j.
def .
vij
+ , dac [i, j] ,
Deoarece [i, j] [j, i], i, j = 1, n , cu i j, deducem c: v([i, j]) =
= v([j, i]), i, j = 1, n , cu i j, ceea ce nseamn c vij = vji, i, j = 1, n
, cu i j, adic V = (matrice simetric, n raport cu diagonala
principal);

Matricea V se scrie ntr-un tabel cu o singur intrare, n care att


liniile, ct i coloanele corespund vrfurilor lui G (sau ale crui linii i
coloane corespund vrfurilor lui G).

Matricea V fiind simetric n raport cu diagonala principal,


completm numai partea de deasupra diagonalei principale din tabelul
ce l conine pe V, deci numai jumtatea de deasupra diagonalei
principale, restul (sau celelalte) obinndu-se prin simetria lui V,
proprietate conform creia sau care afirm c: vji = vij, i, j = 1, n , cu i
j.

9) Determinarea fluxului maxim ntr-o reea de transport (RT) adic


determinarea cantitii maxime (ct mai mari) de produs (de
resurs), ce urmeaz a fi transportat de la sursa lui RT la
destinaia lui RT, pe drumuri (trasee), ce leag (unesc) intrarea n
RT cu destinaia lui RT i formate din cel puin un ( 1) arc
saturat (adic din cel puin un ( 1) arc, pe care (de-a lungul
cruia) se trimite (se transport) o cantitate de produs (din
resurs) egal cu cea maxim posibil (admisibil) pe respectivul
arc)

Pentru 9) = (determinarea fluxului optim n reeaua de transport)


definim urmtoarele noiuni:
not . def .
(A) RT (reeaua de transport) (graf orientat + finit), notat
cu G (X, ), avnd n vrfuri i urmtoarele proprieti:
def .

(P1) nu are bucle;

(P2) exist un singur vrf notat x1, numit vrf surs al lui G, sau al
lui RT, sau nc intrarea n RT, definit astfel: n el nu intr arce, ci
numai ies arce (a se vedea figura de mai jos):
Vrful x1 X, cu proprietatea c n el nu intr arce, ci numai ies
arce, s.n. surs (sau intrare, emisie):

x1

Vrful x1 X s.n. surs (sau intrare, emisie), dac:


n

a *, adic
j 1
1j (exist) arce, ce pleac din x1,
i:
n

a = 0, adic nu exist arce, ce sosesc n x1.


i 1
i1

(P3) exist un singur vrf notat xn, numit vrf destinaie al lui G, sau
al lui RT, sau nc ieirea lui RT, definit astfel: n el intr arce, dar nu ies
arce (a se vedea figura de mai jos).

Vrful xn X, cu proprietatea c n el intr arce, dar nu ies arce,


s.n. destinaie (sau ieire, recepie):

Vrful xn X s.n. destinaie (sau ieire, recepie), dac:


n

a = 0, adic nu exist arce, ce pleac din xn,


j 1
nj

i:
n

a *, adic
i 1
in (exist) arce, ce sosesc n xn.

xn

(P4) exist drumuri de la x1 la xn n G;


(P5) n RT se definete o funcie:

c:

i, j = 1, n , cu i j,
not . not .
(i, j) u c(u) cij 0,

care asociaz fiecrui arc (i, j) u , numrul c(u) cij 0, i,


not . not .

j = = 1, n , cu i j, numit capacitatea arcului (i, j) al lui G, i, j = 1, n ,


cu i j (sau al lui (i, j) din , i, j = 1, n , cu i j), avnd semnificaia
economic a cantitii maxime de produs (din resurs), ce poate fi
transportat pe ruta (i, j), i, j = 1, n , cu i j

Odat cu RT, se mai definesc urmtoarele noiuni de la (A), (B) i


(C), unde:

(A) o funcie : numit flux n RT = G = (X, ), cu


proprietile (P1), (P2) i (P3) de mai jos, i anume:

(P1) (i, j) ((i, j)) ij 0, i, j = 1, n , cu i j; (P1)


not .

afirm c oricrui arc (i, j) , i, j = 1, n , cu i j, i se asociaz


numrul ((i, j)) ij 0, numit fluxul pe arcul (i, j) (i ce poate
not .

fi interpretat ca o anumit cantitate din resurs, transportat pe ruta (pe


arcul) (i, j) ), i, j = 1, n , cu i j.

(P2) afirm c: suma fluxurilor pe arcele care ies din vrful i


(fluxul total pe arcele ce ies din vrful i) este egal cu suma fluxurilor
pe arcele, care intr n vrful i (fluxul total pe arcele ce intr n vrful
i), oricare ar fi vrful i cu i 1, n; (P2) reprezint proprietatea de
conservare a fluxului.

(P3) ij cij, i, j = 1, n , cu i j; (P3) reprezint condiia de


mrginire a fluxului.

(B) un arc (i, j) s.n. saturat, dac ij = cij, i, j = 1, n , cu i j,


(cantitatea de produs (din resurs), ce se transport pe ruta (i, j)
este egal cu cantitatea maxim de produs (din resurs) ce se poate
transporta pe ruta (i,j))
i respectiv nesaturat, dac: ij < cij, i, j = 1, n , cu i
j.
(cantitatea de produs (din resurs), ce se transport pe ruta (i, j)
este egal cu cantitatea maxim de produs (din resurs) ce se poate
transporta pe ruta (i,j)).

(C) dac V X, cu x0 V

i
dac V X, cu xn V ,

a..:
V V = i V V = X,

atunci mulimea arcelor legnd puncte din V cu puncte din V , s.n.


tietur n reea de transport sau tietur de suport V , i se noteaz
prin (V, V ); capacitatea unei tieturi (V, V ), notat prin C(V, V ) este
dat de suma capacitilor arcelor ei, adic:

C(V, V )
def . c (x , x ).
xi V i j
x j V

Proprietate important a oricrui flux, ce strbate o reea de


transport:

ntr-o RT cu intrarea x1 i cu ieirea xn, fluxul total ce pleac din


sursa x1 a reelei (adic suma fluxurilor pe arcele lui RT, ce pleac din
sursa x1 a lui RT) este egal (este egal) cu fluxul total, ce ajunge la ieirea
xn a reelei (deci cu suma fluxurilor pe arcele lui RT, ce ajung la
destinaia xn a lui RT)

Valoarea comun a celor 2 fluxuri totale sau a celor 2 sume totale


din proprietatea de mai sus, se noteaz cu V i s.n. flux total sau flux ce
strbate RT.

Se pune problema determinrii fluxului total maxim ntr-o RT,


adic se pune problema determinrii funciei , adic a fluxului , a..
suma fluxurilor pe arcele ce intr n xn s fie maxim.
n acest sens, aplicm algoritmul Ford Fulkerson, ilustrat pe
cazul numeric al unei aplicaii din capitolul corespunztor.

Rezultat teoretic important (cunoscut sub denumirea de teorema


FORD-FULKERSON):

Fluxul total maxim ce poate strbate o RT este egal cu


capacitatea minim a tieturilor ce se pot construi n aceast reea.

Observaie:

Pentru orice flux , definit pe arcele unei RT: R = (X, , C) i


pentru orice tietur (V, V ), avem satisfcut relaia:


xi V ij -
= V C(V, V ).
xi V ij
x j V x j V

suma suma
fluxurilor fluxurilor,
pe arcele, pe arcele,
care care
ies din V intr n V

De reinut pentru operaiile de marcare urmtoarele:

marcat

xi ( )
ij < cij xn
x1 xj (+xi)
marcat

xi ( )
ji >0 xn
x1 xj (-xi)
Observaie:

n urma acestui procedeu de marcare, putem avea una dintre


urmtoarele situaii:

(I) vrful xn (adic destinaia sau ieirea reelei) nu a putut fi


marcat, situaie n care fluxul folosit este maxim;

(II) vrful xn (adic destinaia sau ieirea reelei) a putut fi marcat,


situaie n care fluxul folosit nu este maxim; atunci se poate trece la o
nou etap, deci la pasulurmtor.

Pasulurmtor: Fluxul poate fi mrit, adugnd o unitate la fluxurile


arcelor drumului, marcate cu + i scznd o unitate din fluxurile
arcelor de pe drumul ales, marcate cu ; fluxul arcelor de pe
respectivul drum, nemarcate nu se va schimba. Dup aceste modificri,
se reia procedeul de marcare din pasul2, continundu-se pn cnd xn nu
mai poate fi marcat.

Remarc: Mrirea fluxului (despre care am vorbit mai nainte) se


poate face, evitndu-se prea multe operaii de marcare, astfel:

i) Determinm un lan, ce leag (unete) sursa x1 cu destinaia xn,


de-a lungul cruia fluxul poate fi mrit cu o unitate; vrfurile acestui
lan se determin n sens invers, de la sfrit ctre nceput, folosind
marcrile, fcute la pasul2, astfel:

-ultimul vrf al lanului este destinaia xn;

-penultimul vrf al lanului, de exemplu xk este vrful cu care s-a


marcat xn;
-vrful anterior lui xk este cel cu care s-a marcat xk, .a.m.d., pn
se ajunge la primul vrf al lanului.

ii) Mrirea fluxului de-a lungul lanului determinat mai sus, cu o


unitate se face astfel:

-se mresc cu o unitate fluxurile de pe toate arcele, ce formeaz


lanul i al cror sens coincide cu sensul de citire al lanului (adic arce,
ale cror extremiti finale au marcri pozitive);

-se micoreaz cu cte o unitate fluxurile de pe arcele, ce formeaz


lanul i al cror sens este contrar sensului de citire al lanului (adic
arce, ale cror extremiti iniiale au marcri negative);

-fluxurile corespunztoare celorlalte arce ale reelei rmn


neschimbate.

Urmarea acestor operaii este faptul c fluxul total crete cu o


unitate.

Mrirea fluxului se poate face cu mai mult de o unitate, evitndu-se


astfel prea multe operaii de marcare, ca mai jos:

-mrim fluxul de-a lungul lanului determinat la pasul2 cu mai


multe uniti deodat, fcnd modificrile de mai sus nu cu o unitate, ci
cu un numr de uniti ntregi, care se calculeaz ca valoare minim
a urmtoarelor valori:

-pentru fiecare arc al lanului folosit, al crui sens coincide cu


sensul de citire al lanului, considerm diferena ntre capacitate i
fluxul corespunztor lui;

-pentru fiecare arc al lanului folosit, al crui sens este contrar


sensului de citire al lanului, considerm fluxul de pe arcul respectiv;

-fluxurile corespunztoare celorlalte arce ale reelei rmn


neschimbate.
Rezultatul final al acestei operaii o constituie creterea fluxului
total cu > 0 uniti. Cu fluxul astfel obinut, se repet paiiante urmtor i
urmtor 3.

Paiiante urmtor i urmtor se repet alternativ, pn cnd la pasulante urmtor


nu se mai poate marca destinaia reelei, caz n care s-a obinut fluxul
maxim pe reea.

n pasul final,deci atunci cnd nu putem marca ieirea xn, fluxul


obinut este maxim, iar mulimea arcelor ce unesc vrfurile marcate cu
cele ce n-au putut fi marcate, formeaz o tietur notat cu (P, P ), de
capacitate minim, unde:

P este mulimea vrfurilor, ce au putut fi marcate la pasul final


(adic pasulante urmtor din finalul aplicrii algoritmului, deci atunci cnd nu
s-a putut marca destinaia reelei),

iar:

P este mulimea vrfurilor nemarcate la pasul final.

Tietura de capacitate minim se obine prin separarea vrfurilor


marcate de cele nemarcate.

n cazul aplicaiei de mai jos ne cofruntm cu o alt sau cu urmtoarea


situaie.

Aplicaie: Depozitele A, B, C dispun de respectiv 15, 20 i 18


uniti convenionale de marf, care trebuie livrat la magazinele D, E,
F. Cererea la aceste magazine este de respectiv 18, 19 i 17 uniti.
Depozitele au la dispoziie mijloace de transport rutier, cu capaciti
limitate i anume:
Depozit Magazin Capacitate (unitate de
produs)
A D 5
E 7
F 4
B D 12
F 9
C D 5
E 10
F 3
S se stabileasc cantitatea maxim de produs, ce poate ajunge n
magazine. Este satisfcut cererea celor 3 magazine?

Rezolvare: n cazul problemei noastre, se dau mai multe surse (la


noi A, B, C), ce dispun de resurse limitate i mai multe destinaii (la
noi D, E, F), care solicit anumite cantiti din resursele de la surse.

Problema revine la a determina fluxul maxim ntr-o reea de


transport (RT), ale crei vrfuri sunt depozitele i magazinele (la noi A,
B, C, respectiv D, E, F) i n care introducem o intrare x, legat de
depozite (la noi A, B, C), prin arce de capaciti, respectiv egale cu
disponibilul depozitelor i mai introducem o ieire y, legat de
magazine (la noi D, E, F), prin arce de capaciti egale cu cererea
acestora.

5
A D
15 7 18
12 19
x 20 B 4 E y
9 10
18 5 17
C F
3

Aadar, problema revine la determinarea fluxului maxim n reeaua


de mai sus.

Se aplic aa-numitul algoritm FORD-FULKERSON, ce


presupune parcurgerea urmtoarelor etape sau a urmtorilor pai.

n acest sens, determinm (pentru a avea o ordine) de sus n jos, rute


(drumuri) ntre x i y, pe care se va trimite o cantitate ct mai mare
(deci maxim) de produs, a.. pe fiecare traseu (drum) s se obin cel
puin un arc saturat (arc saturat = arc, pentru care fluxul, ce l
strbate este egal cu capacitatea respectivului arc), adic cel puin un
arc, de-a lungul cruia se transport o cantitate de produs ce este egal
cu cantitatea maxim de produs, ce se poate transporta de-a lungul lui.
.
.
.
Cererea este satisfcut numai pentru magazinul D (conform
figurii de mai jos).

Pentru magazinul E cererea de 19 uniti de marf nu este


satisfcut, la acesta ajungnd numai 17 uniti de marf, din cele 19
solicitate de el (conform figurii de mai jos).

Analog, la magazinul F cererea de 17 uniti de marf nu este


satisfcut, la acesta ajungnd numai 16 uniti de marf, din cele 17
solicitate de el (conform figurii de mai jos).

-D 5 = 5 -1 + +C (P, P )
A D
15 = 5 + 7 + 3. -D 7 = 7. -y 18 = 5 + 12 + 1.
+ 12 =12-1+ 19 = 7 + 10 +
x 20 = 12 + 8. B 4 = 3 + 1. E y
9 = 8 +1. 10 = 10.
18 = 1 + 10 + 3 + 1+ 5=1+1+1+ 17 = 3 + 8 + 3 + 1 + 1+
+1 + C F
+x 3 = 3.

Rezolvarea problemei se gsete n capitolul intitulat Fluxul maxim


ntr-o RT (reea de transport)

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