16134746 Modele Matematice in Economie Teorie i Aplicaii
Transcript of 16134746 Modele Matematice in Economie Teorie i Aplicaii
Cuprins
Cuvânt înainte ............................................................................................................. 3
1. Teoria grafurilor ................................................................................................... 5
2. Complemente de algebră liniară ........................................................................ 53
3. Programare liniară ................................................................................................ 87
4. Teoria jocurilor ..................................................................................................... 171
Bibliografie ................................................................................................................. 275
Cuvânt înainte
Lucrarea de faţă este alcătuită din patru capitole: Teoria grafurilor, Complemente de algebră liniară, Programare liniară şi Teoria jocurilor. Ea este destinată studenţilor din anul I de la Facultatea de Relaţii Economice Internaţionale, cursuri de zi şi învăţământ deschis la distanţă.
Tematica abordată este inclusă în acel domeniu, teoretic şi aplicativ deopotrivă, în care demersul de fundamentare matematică şi cel de modelare a fenomenelor economice se întrepătrund, numit generic „Cercetare operaţională”.
Metodele acesteia au difuzat, de altfel, şi în alte sfere ale vieţii sociale, incluzând politicile guvernamentale, protejarea mediului, explorarea spaţiului.
Revenind la conţinutul cursului de „Modele matematice în economie”, vom sublinia comunicarea între capitole, prin împrumutul de noţiuni şi tehnici de rezolvare. Din acest motiv, nu recomandăm o lectură strict liniară a materialului prezentat. În aceeaşi ordine de idei, anumite demonstraţii pot fi sărite într-o primă fază, în beneficiul exemplelor, care, de regulă sunt tratate în amănunţime.
Ca orice text matematic şi acesta pune accent pe definirea clară a noţiunilor de bază, se serveşte de rezultate pregătitoare date în propoziţii şi enunţă teoreme cu caracter preponderent operaţional (şi doar pe alocuri, de tip existenţial – nu mai puţin importante, însă). Fiecare capitol se încheie cu o secţiune de probleme rezolvate, a căror utilitate o lăsăm la aprecierea cititorilor.
Din conţinut nu putea să lipsească subiectul, devenit clasic, al programării liniare, precedat de un rezumat al noţiunilor de algebră liniară, strict necesare înţelegerii sale. Capitolele unu şi patru aduc cu ele acel suflu teoretic care nu a încetat să alimenteze modelarea economică, deşi prezintă subiecte deja cunoscute.
Astfel, în capitolul de teoria grafurilor s-a urmărit prezentarea unor metode de determinare a rutelor optime într-un graf, cu accent deosebit pe problematica drumului critic. De asemenea sunt trataţi arborii, ca un caz remarcabil de grafuri conexe.
3
În ceea ce priveşte teoria jocurilor, este binecunoscut impactul pe care aceasta l-a avut în reconstrucţia teoriei economice. Considerente de ordin didactic (dar nu numai) au impus acordarea unei atenţii speciale jocurilor de două persoane, de tip necooperativ. Cazul antagonist (al jocurilor matriceale) este prezentat pe larg prin construirea strategiilor maximin (pure sau mixte), ca soluţie a jocului. În cazul neantagonist (al jocurilor bimatriceale), drept soluţie sunt căutate punctele de echilibru Nash ale jocului, dându-se metode de determinare a lor.
Cazul jocurilor cooperative, evident neantagonist, este ilustrat, pentru jocuri de două persoane, prin găsirea soluţiei Nash (folosind procedee grafice), iar pentru jocuri de n persoane (n ≥ 3), în care este permisă formarea de coaliţii, este prezentată valoarea Shapley, ca un posibil concept de soluţie.
În general, materialul nu face apel la cunoştinţe matematice prealabile de nivel superior, fiind „self-contained”. Cu speranţa ca aceasta să constituie un avantaj pentru studenţii din primul ciclu, aşteptăm cu interes sugestii de îmbunătăţire a conţinutului lucrării.
Autorii
4
1. Noţiuni generale Există numeroase probleme economice pentru care o reprezentare
sub forma unor scheme alcătuite din puncte şi săgeţi aduce clarificări şi
uşurează înţelegerea proceselor în sensul elucidării legăturilor de succesiune
şi cauzalitate. Pentru a da un exemplu, ne referim la procesul de luare a unei
decizii. Pornind de la o situaţie A0 se constată că sunt p variante ce conduc
la situaţiile A1, ..., Ap. Analizând în continuare desfăşurarea fenomenului,
pentru fiecare situaţie Ai, i = p,1 , există posibilitatea de a trece la una din
situaţiile Aij, j = in,1 . Raţionamentul poate continua cât timp procesul pune
în evidenţă noi variante. O reprezentare sugestivă a procesului descris mai
sus poate fi dată în figura următoare:
A1 A11
∶ ∶ A
11n A0 Ai Ai1
∶ ∶ A
iin
Ap Ap1
Appn
În raport cu un obiectiv stabilit apriori, dacă este posibil ca pentru
oricare cuplu de situaţii succesive să se asocieze o valoare reală, urmează să
TEORIA GRAFURILOR 1
∶
5
Teoria grafurilor
se găsească o metodă de determinare a succesiunii optime din punctul de
vedere al obiectivului adoptat.
Un graf G este o pereche (X, T) unde X este o mulţime de elemente
numite vârfuri sau noduri, iar T este o aplicaţie a lui X pe mulţimea părţilor
sale. Vom nota graful G = (X, T). Deci dacă x ∈ X, atunci T(x) ⊂ X. Dacă
x, y ∈ X şi y ∈ T(x), perechea u = (x, y) se numeşte arc al grafului G, cu x
extremitatea iniţială (originea) arcului u, iar y este extremitatea finală a lui
u.
Notând prin U = ⎨(x, y) ⏐ x ∈ X, y ∈ T(x)⎬ putem da o altă expresie
a grafului şi anume G = (X, U).
Exemplu: Fie X = ⎨x1, x2, x3, x4, x5⎬ şi T(x1) = ⎨x2, x4, x5⎬;
T(x2) = ⎨x3, x5⎬; T(x3) = ⎨x1, x5⎬; T(x4) = ⎨x3⎬; T(x5) = ⎨x4⎬.
Mulţimea arcelor este:
U = ⎨(x1, x2), (x1, x4), (x1, x5), (x2, x3), (x2, x5), (x3, x1), (x3, x5),
(x4, x3) (x5, x4)⎬.
Pentru graful astfel definit se poate realiza o imagine geometrică
construită astfel: vârfurile mulţimii X se aşează în plan şi se duc segmente
orientate care unesc punctele xi şi T(xi), i = 5,1 .
x2
x5
x1
x4
x3
O mulţime de vârfuri unite două câte două prin arce formează un
graf orientat. Dacă u1, ..., uk sunt arce ale unui graf cu proprietatea că
extremitatea finală a lui ui coincide cu extremitatea iniţială a lui ui+1,
6
Modele matematice în economie
1 ≤ i ≤ k-1, şirul de arce se numeşte drum. Când extremitatea finală a lui uk
coincide cu originea lui u1 drumul se numeşte circuit. Drumul poate fi
definit şi prin specificarea şirului de vârfuri prin care trece, astfel:
d = (x1, x2, ..., xr) dacă aceste vârfuri sunt în ordinea x1, x2, ..., xr.
Drumul ce trece o singură dată prin unele vârfuri ale grafului se
numeşte drum elementar. Drumul elementar ce trece prin toate vârfurile
grafului se numeşte drum hamiltonian. Numărul arcelor ce compun un drum
se numeşte lungimea drumului. Când xi ∈ T(xi), arcul (xi, xi) se numeşte
buclă.
Vom spune că [x, y] este o muchie dacă (x, y) şi (y, x) sunt arce. De
aceea, o muchie coincide cu mulţimea vârfurilor care o compun. Nu este
deci necesar să figurăm două sensuri contrare pe segmentul care le uneşte.
Un şir de muchii formează un lanţ dacă oricare două muchii
consecutive au o extremitate comună. Lanţul poate fi definit şi de
succesiunea de vârfuri prin care trece, astfel:
L = [x1, x2, ..., xr] dacă aceasta este ordinea vârfurilor. Lanţul ce
trece o singură dată prin unele vârfuri ale grafului se numeşte lanţ
elementar. Lanţul elementar ce trece prin toate vârfurile grafului se va numi
lanţ hamiltonian. Când x1 = xr şi toate muchiile lanţului L sunt distincte
două câte două, lanţul se numeşte ciclu. Numărul muchiilor unui lanţ se
numeşte lungimea lanţului.
Dacă într-un graf oricare două vârfuri ale sale sunt unite printr-un
lanţ, graful este conex.
Graful G1 = (X, U’), cu U’ ⊂ U este un graf parţial al grafului
G = (X, U), iar graful G2 = (X’, U’) cu X’ ⊂ X şi U’⊂ U este un subgraf al
lui G = (X, U).
7
Teoria grafurilor
Graful cu un număr finit de vârfuri se numeşte graf finit. Când
vârfurile grafului G sunt legate numai prin arce vom spune că graful G este
orientat, iar când vârfurile sunt legate prin muchii, graful G este neorientat.
2. Matrici asociate unui graf
Fie graful G = (X, U) cu X = ⎨x1, ..., xn⎬. Matricea A = (aij),
1 ≤ i, j ≤ n, cu
1, dacă există arcul (xi, xj)
0, în cazul contrar
se numeşte matricea arcelor sau matricea conexiunilor directe. Ea
determină graful în mod unic şi constituie un nou mod de a defini un graf.
Matricea D = (dij), 1 ≤ i, j ≤ n, cu
1, dacă există cel puţin un drum de la xi la xj
0, în cazul contrar
se numeşte matricea drumurilor sau matricea conexiunilor totale.
Matricea drumurilor poate determina mai multe grafuri. Astfel
grafurile de mai jos, deşi diferite, au aceeaşi matrice a drumurilor. D x1 x2 x3 x4 x2 x2
x1 x3 x1 x3
x4 x4
x1
x2
x3
x4
0
0
0
0
1
0
1
0
1
0
0
0
1
0
0
0
Dăm acum câteva rezultate necesare prezentării unui algoritm de
determinare a matricei drumurilor, datorat lui Y. V. Chen.
Propoziţia 1: Într-un graf G cu n vârfuri lungimea maximă a unui
drum elementar este egală cu n -1.
aij =
dij =
8
Modele matematice în economie
Demonstraţie: Aplicăm metoda inducţiei complete şi pentru n = 2
proprietatea este adevărată deoarece între 2 vârfuri poate exista cel mult un
drum elementar format dintr-un arc, deci de lungime 1, dacă arcul există.
Presupunem că într-un graf cu n -1 vârfuri există un drum elementar de
lungime n -2 şi fie acesta:
d = (x1i, ..., x
1−ni), ⎨i1, ..., in-1⎬ ⊂ ⎨1, ..., n-1⎬.
Adăugăm grafului considerat încă un vârf xn ce poate aduce
drumului de mai sus un arc în plus ((xn, x 1i) sau (x
1−ni, xn) sau (x
ki, xn) şi
(xn, x1+ki), cu dispariţia din d a arcului (x
ki, x
1+ki)) şi lungimea noului drum
va fi n-1. În restul cazurilor drumul elementar are lungimea mai mică decât
n – 1 şi propoziţia este demonstrată.
Notăm acum prin T(1)(xi) mulţimea vârfurilor unui graf G la care se
ajunge din xi prin drumuri de lungime 1 (dintr-un singur arc); T(2)(xi)
mulţimea vârfurilor din G la care se ajunge din xi prin drumuri de lungime 2
(din două arce) ş.a.m.d.; conform propoziţiei 1, ultima mulţime va fi
T(n-1)(xi), dacă graful G are n vârfuri.
Propoziţia 2: Fie G un graf cu n vârfuri, D = (dij), 1 ≤ i, j ≤ n,
matricea drumurilor lui G. Atunci dij = 1, i ≠ j, dacă şi numai dacă
xj ∈ U1
1
)( ).(−
=
n
si
s xT
Demonstraţie: Dacă dij = 1 rezultă că există cel puţin un drum de la
xi la xj. Presupunem că drumul este format din k arce, 1 ≤ k ≤ n-1; atunci
xj ∈ T(k)(xi), deci xj ∈ U1
1
)( ).(−
=
n
si
s xT
9
Teoria grafurilor
Reciproc, dacă xj ∈ U1
1
)( )(−
=
n
si
s xT , atunci xj aparţine cel puţin unei
mulţimi a reuniunii, fie aceasta T(k)(xi). Adică la xj se ajunge din xi printr-un
drum de lungime k, deci dij = 1 şi propoziţia 2 este demonstrată.
Reamintim că adunarea booleană se defineşte astfel:
+ 0 1
0
1
0
1
1
1
Cu rezultatele de mai sus dăm etapele următorului
Algoritm pentru determinarea matricei D
1) Asociem grafului dat matricea arcelor A = (aij), 1 ≤ i, j ≤ n;
2) Construim matricea D, linie cu linie, astfel: pentru determinarea
liniei i din D, i = n,1 , urmărim elementele egale cu 1 de pe linia i
din A; dacă acestea sunt aip, ..., ais se transcriu în linia i din D şi
se adună boolean liniile p, ..., s din A la linia i generându-se noi
elemente egale cu 1 pe linia i din D. Fie acestea dik, ..., dim ce
indică, conform propoziţiei 2, existenţa drumurilor de la xi la
xk, ..., xm, drumuri formate din 2 arce, adică xk, ..., xm ∈ T(2)(xi).
Adunăm boolean liniile k, ..., m din A la linia i, generând noi
elemente egale cu 1 ce vor reprezenta drumurile de la xi la alte
vârfuri, formate din 3 arce, ş.a.m.d. până când ajungem la una
din situaţiile:
a) toate elementele liniei i sunt egale cu 1;
b) nu se mai pot genera alte elemente egale cu 1 pe linia i din D
şi completăm locurile rămase libere cu 0.
10
Modele matematice în economie
3) Procedăm analog pentru fiecare linie din D şi obţinem în final
matricea drumurilor.
Exemplu: Să se determine matricea D pentru următorul graf:
x2
x3
x1
x4
x5
Rezolvare
Matricea arcelor A va fi:
A x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 1 0 0 1
0 0 0 0 0
0 1 0 1 0
1 0 0 0 1
0 1 0 0 0
Pentru a obţine linia 1 din D observăm că în A elementul a14 = 1; îl
transcriem în linia 1 din D, deci d14 = 1 şi adunăm boolean linia 4 din A la
linia 1. Se generează elementul d13 = 1, apoi adunăm boolean linia 3 din A
la linia 1 şi observăm că nu mai pot fi generate alte elemente egale cu 1
deoarece toate elementele liniei 3 sunt nule. Completăm locurile libere din
linia 1 a lui D cu 0.
Să determinăm acum linia 2 din D. Observăm că în A avem a21 = a23
= a25 = 1 şi le preluăm în linia 2 din D, apoi adunăm boolean liniile 1, 3 şi 5
la linia 2. Se obţine d24 = 1, deci vom aduna linia 4 din A la 2 şi deoarece nu
mai pot fi generate alte elemente egale cu 1, completăm cu 0 locurile libere.
11
Teoria grafurilor
Linia 3 din D este linia 3 din A deoarece are toate elementele 0. Pe
linia 4 din A avem a43 = 1, îl preluăm în linia 4 din D, adunăm boolean linia
3 din A la linia 4 şi nu mai pot fi generate elemente egale cu 1, deci
completăm cu 0. În sfârşit linia 5 din A are a51 = a54 = 1, le preluăm în linia
5 din D, adunăm boolean linia 1 şi 4 din A la linia 5, apare d53 = 1, adunăm
linia 3 din A la linia 5 şi algoritmul ia sfârşit căci nu mai pot fi generate
elemente egale cu 1. În final matricea D se prezintă astfel:
A x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 1 0 0 1
0 0 0 0 0
1 1 0 1 1
1 1 0 0 1
0 1 0 0 0
Notăm cu p(xi) puterea de atingere a vârfului xi prin care înţelegem
numărul de vârfuri ce pot fi atinse de drumurile ce pornesc din xi, adică
numărul elementelor egale cu 1 de pe linia i din D. În exemplul nostru p(x1)
= 2, p(x2) = 4, p(x3) = 0, p(x4) = 1, p(x5) = 3.
Observaţia 1: Matricea D pune în evidenţă existenţa circuitelor în
graful considerat. Astfel dacă dii = 1, graful are un drum ce pleacă din xi şi
revine în xi, deci un circuit. Dacă toate elementele diagonalei principale din
D sunt egale cu 0, graful nu are circuite. În exemplul de mai sus, graful nu
are circuite.
Observaţia 2: Dacă în matricea D a unui graf finit cu n vârfuri fără
circuite ordonăm liniile şi coloanele descrescător după puterile de atingere
ale vârfurilor obţinem o nouă matrice D’ = (d’ij), 1 ≤ i, j ≤ n, cu toate
elementele egale cu 1 deasupra diagonalei principale. Într-adevăr, notând,
x’1, ..., x’n ordinea liniilor (coloanelor) în D’ şi considerând d’ij = 1, i < j,
rezultă că există cel puţin un drum de la x’i la x’j, deci vârfurile atinse de x’j
12
Modele matematice în economie
vor fi atinse şi de x’i, adică p(x’i) > p(x’j) fapt ce atrage aşezarea liniei i
înaintea liniei j, deci d’ij = 1 se va găsi deasupra diagonalei principale în D’.
Matricea D’ se numeşte matricea triangularizată superior a matricei D.
Pentru exemplul nostru, D’ se prezintă astfel:
D’ x2 x5 x1 x4 x3 x2 x5 x1 x4 x3
0 0 0 0 0
1 0 0 0 0
1 1 0 0 0
1 1 1 0 0
1 1 1 1 0
Observaţia 3: În matricea D’ a unui graf fără circuite, primul
element egal cu 1 de pe fiecare linie corespunde unui arc din graf. Într-
adevăr, presupunând prin absurd că primului element pe linia i din D’,
d’ij = 1, îi corespunde un drum (x’i, ..., x’m, ..., x’j), cu m ≠ i, m ≠ j, atunci
x’m are puterea de atingere mai mare ca x’j şi coloana lui x’m o precede pe
cea a lui x’j. Deci pe linia x’i există elementul d’im = 1 care precede d’ij = 1,
ceea ce contrazice ipoteza.
3. Drumuri hamiltoniene într-un graf
3.1 Cazul grafurilor fără circuite
Teorema 1. (Y.V. Chen). Fie G = (X, U) cu X = ⎨x1, ..., xn⎬, orientat
şi fără circuite. G conţine un drum hamiltonian dacă şi
numai dacă
∑=
−=
n
ii
nnxp1 2
)1()( .
13
Teoria grafurilor
Demonstraţie: Presupunem că în G există drumul hamiltonian
dH = (x1i, ..., x
ni), unde (i1, ..., in) este o permutare a lui (1, ..., n).
Rezultă că x1i atinge toate cele n – 1 vârfuri care îl succed, deci pe
linia lui x1i din D sunt n – 1 elemente egale cu 1. Vârful x
2i atinge n – 2
vârfuri şi pe linia lui x2i
vor fi n – 2 elemente egale cu 1, ş.a.m.d., pentru
fiecare vârf următor al drumului hamiltonian numărul elementelor egale cu
1 scade cu câte o unitate până ajungem la xni
a cărui putere de atingere este
zero. Atunci:
∑ ∑= =
−=+++−+−==
n
i
n
kii
nnnnxpxpk
1 1 2)1(01...)2()1()()( .
Reciproc, dacă ∑=
−=
n
ii
nnxp1 2
)1()( şi matricea triangularizată D’ are
liniile şi coloanele ordonate astfel: x’1, ..., x’n, din observaţia 2 deducem că
toate cele 2
)1( −nn elemente egale cu 1 ale lui D’ se găsesc deasupra
diagonalei principale unde sunt exact 2
)1( −nn poziţii. Observaţia 3 ne
permite determinarea drumului hamiltonian scriind succesiunea de arce
corespunzătoare primelor elemente egale cu 1 de pe fiecare linie, adică:
(x’1, x’2), (x’2, x’3), ..., (x’n-1, x’n) sau dH: (x’1, ..., x’n).
Teorema 2. Dacă într-un graf G orientat şi fără circuite există drum
hamiltonian, el este unic.
Demonstraţie: Presupunem prin absurd că G are două drumuri
hamiltoniene d )1(H şi d )2(
H distincte şi
d )1(H = (x’1, ..., x’i, ..., x’j, ... ,x’n)
d )2(H = (x’1, ..., x’j, ..., x’i, ... ,x’n)
14
Modele matematice în economie
Din d )1(H rezultă că există un drum de la x’i la x’j, iar din d )2(
H rezultă
că există un drum de la x’j la x’i, adică un circuit, ceea ce contrazice ipoteza.
Presupunerea făcută este falsă, deci drumul hamiltonian în G este unic.
Teoremele 1 şi 2 ne permit să dăm un
Algoritm pentru determinarea drumului hamiltonian într-un graf
orientat, finit (cu n vârfuri) şi fără circuite
1. Determinăm matricea A (a arcelor);
2. Determinăm matricea D (a drumurilor);
3. a) Dacă există dii = 1, graful are circuite, teoremele 1 şi 2 nu se
aplică, nu ştim dacă există drum hamiltonian;
b) Dacă toate elementele diagonalei principale din D sunt nule,
graful nu are circuite, se aplică teoremele 1 şi 2.
4. Calculăm p(xi), i = n,1 şi apoi ∑=
n
iixp
1
)( . Apare unul din cazurile:
a) ∑=
−≠
n
ii
nnxp1 2
)1()( ; din teorema 1 rezultă că în G nu există
drum hamiltonian;
b) ∑=
−=
n
ii
nnxp1 2
)1()( , atunci din teorema 1 rezultă că există drum
hamiltonian în G, iar din teorema 2 rezultă că acesta este unic.
5. Determinăm drumul hamiltonian scriind vârfurile grafului în
ordinea descrescătoare a puterii lor de atingere.
Exemplu
Pentru graful precedent am văzut că era fără circuite şi p(x1) = 2,
p(x2) = 4, p(x3) = 0, p(x4) = 1, p(x5) = 3. Deci ∑=
5
1ii )x(p = 10. Dar n = 5 şi
15
Teoria grafurilor
2)1( −nn =
245× = 10, deci teorema 1 spune că există drum hamiltonian şi
acesta este dH = (x2, x5, x1, x4, x3) şi este unic.
3.2 Cazul grafurilor cu circuite
Prezentăm în cele ce urmează un algoritm, datorat lui Kaufmann,
pentru determinarea drumurilor hamiltoniene într-un graf cu circuite.
Fie G un graf cu n vârfuri, cu circuite. Determinăm pentru G
matricele latine D(k), 1 ≤ k ≤ n – 1, matrici ale căror elemente d )(kij ,
1 ≤ i,j ≤ n, reprezintă drumurile elementare de la xi la xj, formate din k arce.
Deci ultima matrice D(n-1) va conţine toate drumurile hamiltoniene din G.
Matricea D(1) = (d )1(ij ), 1 ≤ i,j ≤ n, se construieşte astfel:
xixj dacă există arcul (xi, xj)
0 , dacă nu există arcul (xi, xj).
Din D(1) formăm matricea D (1) = ( d )1(ij ),1 ≤ i,j ≤ n, cu
xj dacă există arcul (xi, xj)
0 , dacă nu există arcul (xi, xj).
Deci matricea D (1) se obţine din D(1) prin ştergerea primei litere a
secvenţei xi xj din orice căsuţă (i, j) şi ea conţine vârfurile ce pot fi atinse
prin arce de la orice vârf al grafului.
Următoarele matrici D(2), ..., D(n-1) se construiesc prin operaţia „L”
(produsul latin), astfel:
D(k) = D(k-1) L D (1), k = 2, ..., n - 1
d )1(ij =
d )1(ij =
16
Modele matematice în economie
şi elementul d )(kij din D(k) este: xi x
1i ... x
1−ki xj dacă toate aceste vârfuri sunt
distincte (se vor lua liniile din D(k-1) cu coloanele din D (1), ca la produsul
matricelor) sau este 0, dacă nu apar k + 1 vârfuri distincte sau se obţine zero
pentru toate elementele care participă la înmulţire.
Exemplu
Să se determine drumurile hamiltoniene în graful:
x2
x3
x1
x5 x4
Rezolvare
Observăm că graful are circuite (altfel am fi determinat matricea D),
de exemplu d = (x3, x5, x1, x2).
Determinăm pe rând matricele D(1), D (1), D(2), D(3) şi D(4).
D(1) x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 0 0 0
x5 x1
x1 x2 0 0 0 0
0 x2 x3
0 0 0
0 x2 x4 x3 x4
0 x5 x4
0 0
x3 x5 0 0
D (1) x1 x2 x3 x4 x5
x1 x2 x3 x4 x5
0 0 0 0 x1
x2 0 0 0 0
0 x3 0 0 0
0 x4 x4 0 x4
0 0 x5 0 0
17
Teoria grafurilor
D(2)= D(1)L D (1) x1 x2 x3 x4 x5
x1 x2 x3 x4 x5
0 0
x3x5x1 0 0
0 0 0 0
x5x1x2
x1x2x3 0 0 0 0
x1x2x4 x2x3x4 x3x5x4
0 0
0 x2x3x5
0 0 0
D(3)= D(2)L D (1) x1 x2 x3 x4 x5
x1 x2 x3 x4 x5
0 x2x3x5x1
0 0 0
0 0
x3x5x1x2 0 0
0 0 0 0
x5x1x2x3
x1x2x3x4 0 0 0
x5x1x2x4
x1x2x3x5 0 0 0 0
D(4)= D(3)L D (1) x1 x2 x3 x4 x5
x1 x2 x3 x4 x5
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
x1x2x3x5x4 0
x3x5x1x2x4 0
x5x1x2x3x4
0 0 0 0 0
Din D(4) citim că există 3 drumuri hamiltoniene şi anume:
d )1(H = (x1, x2, x3, x5, x4)
d )2(H = (x3, x5, x1, x2, x4)
d )3(H = (x5, x1, x2, x3, x4)
Să explicăm modul în care, de exemplu, s-a găsit elementul d )2(34 de
pe linia 3 coloana 4 din matricea D(2). S-a considerat linia 3 din D(1) şi
coloana 4 din D (1) şi aplicând definiţia lui d )(kij , s-a obţinut singura
succesiune, diferită de zero, (x3, x5, x4). Dacă s-ar mai fi găsit şi o altă
succesiune în căsuţa (3, 4) din D(2), se scriau una sub alta ambele succesiuni
şi în calculele următoare se ţinea seama de fiecare în parte.
18
Modele matematice în economie
4. Drum de valoare optimă (rută optimă) într-un graf
Fie G = (X, U) un graf orientat, cu X = ⎨x1, ..., xn⎬ şi U mulţimea
arcelor sale. Graful G se va numi graf valuat dacă există o funcţie v: U →ℝ,
astfel încât oricare ar fi u = (xi, xj) ∈ U, v(u) = v(xi, xj) ≥ 0, i, j = n,1 .
Numărul v(u) se va numi valoarea arcului u. Într-o problemă economică,
v(u) poate să însemne costul sau durata transportului de la xi la xj, distanţa
dintre vârfurile xi şi xj etc.
Dacă d este un drum în graful valuat G, suma valorilor arcelor sale
se va numi valoarea drumului d.
În cele ce urmează vom dori să determinăm valoarea minimă a
drumurilor de la orice vârf al grafului G la un vârf fixat xn.
Fie matricea V = (vij), 1 ≤ i, j ≤ n, cu
0 , i = j
vij = v(xi, xj), dacă există arcul (xi, xj)
∞ , dacă nu există arcul (xi, xj).
Notăm prin )(k
inm valoarea minimă a drumurilor dintre xi şi xn,
drumuri formate din cel mult k arce, iar prin inm valoarea minimă a
drumurilor de la xi la xn, indiferent de numărul arcelor.
Propoziţia 3:
În graful G, cu n vârfuri, orientat şi valuat, este adevărată relaţia )1( +k
inm = nj≤≤1
min (vij + )(k
jnm ), i ≠ n, k ≥ 1.
Justificarea acestei propoziţii e dată de principiul de optimalitate al
lui Bellman, care pentru problema noastră se enunţă astfel: drumul optim
într-un graf este format din subdrumuri optime. Şi cum orice drum de la xi la
19
Teoria grafurilor
xn format din cel mult k + 1 arce trebuie să fie format dintr-un arc (xi, xj), i≠j
şi un drum de la xj la xn format din cel mult k arce, urmează că )1( +k
inm -
valoarea minimă a drumurilor de la xi la xn formate din cel mult k + 1 arce
va fi dată de nj≤≤1
min (vij + )(k
jnm ).
Propoziţia 4:
Dacă pentru graful G din propoziţia 1 există k ∈ ℕ astfel încât
)(kinm =
)1( +kinm , 1 ≤ i ≤ n, atunci:
)(kinm = inm .
Demonstraţie: Formulată altfel, propoziţia 4 şi anume: există k ∈ ℕ
astfel încât )(k
inm = )1( +k
inm , atunci: )(k
inm = )( sk
inm+
, oricare ar fi s ∈ ℕ, putem
aplica inducţia matematică după s ∈ℕ*, astfel: pentru s = 1, proprietatea se
verifică cu relaţia din ipoteză. Presupunem adevărată proprietatea pentru s
oarecare şi demonstrăm că e adevărată şi pentru s + 1.
Dar din propoziţia 3, avem: )1( ++ sk
inm = j
min (vij + )( sk
jnm+
) şi cum în presupunerea de inducţie
avem că )( sk
jnm+
= )k(
jnm , rezultă )1( ++ sk
inm = j
min (vij + )k(
jnm ) = )1( +k
inm = )(k
inm
tot din propoziţia 3 şi ipoteza propoziţiei 4.
Pe aceste două propoziţii se bazează algoritmul Bellman – Kalaba de
determinare a drumurilor de valoare minimă de la orice vârf al grafului xi la
vârful xn fixat. Etapele algoritmului sunt:
1. Se construieşte matricea V = (vij), 1 ≤ i,j ≤ n, corespunzătoare
grafului dat.
20
Modele matematice în economie
2. Se ataşează noi linii matricei V notate succesiv prin )1(
inm , )2(
inm , ... care dau valorile minime ale drumurilor formate din
cel mult 1, 2, ... arce de la orice vârf xi (cap de coloană) la xn
fixat, astfel:
a) linia )1(
inm ale cărei elemente sunt valorile minime ale
drumurilor de la xi, i = n,1 , din G la xn, drumuri formate din
cel mult un arc, reprezintă valorile arcelor (xi, xn), i = n,1 ,
deci această linie va fi transpusa coloanei lui xn din V;
b) presupunem completată linia )(k
inm şi trecem la determinarea
elementelor liniei )1( +k
inm . Orice element de pe această linie se
calculează cu relaţia din propoziţia 3: )1( +k
inm = nj≤≤1
min (vij + )(k
jnm ), i = n,1 , ceea ce înseamnă că vom
aduna respectiv elementele liniei lui xi din V cu cele ale liniei )(k
inm şi cea mai mică valoare va fi )1( +k
inm ;
c) ataşarea de noi linii continuă până când se obţin două linii
consecutive identice, când în baza propoziţiei 4 algoritmul ia
sfârşit şi ultima linie conţine tocmai valorile minime ale
drumurilor de la fiecare vârf cap de coloană la xn fixat.
3) Se determină apoi succesiunea de vârfuri prin care trece drumul
de valoare minimă (ruta optimă), de exemplu, de la xi la xn, astfel:
adunăm respectiv elementele liniei xi cu cele ale ultimei linii )1( +k
inm şi dacă cea mai mică valoare corespunde coloanei lui xk,
primul arc al drumului este (xi, xk). Adunăm apoi linia lui xk la
ultima şi dacă cea mai mică valoare corespunde coloanei lui xp,
21
Teoria grafurilor
următorul arc al rutei este (xk, xp), ş.a.m.d. până ajungem în xn.
Drumul căutat va fi:
d = (xi, xk, xp, ..., xn)
şi valoarea sa va fi )1( +k
inm .
Observaţia 1: Când în etapa a 3-a suma minimă se obţine în dreptul
mai multor coloane, atunci există mai multe drumuri de valoare minimă şi
se urmăreşte până la capăt fiecare drum în parte.
Observaţia 2: Algoritmul Bellman – Kalaba poate fi aplicat şi pentru
determinarea drumului de valoare maximă de la orice vârf al grafului la unul
fixat cu următoarele condiţii:
a) graful să nu aibă circuite;
b) vij = - ∞, dacă i ≠ j şi nu există arcul (xi, xj);
c) în etapele 2, 3 şi observaţia 1, sumele minime se înlocuiesc cu
sumele maxime, întrucât propoziţiile 3 şi 4 sunt adevărate şi
pentru cazul când prin )(k
inm înţelegem valoarea maximă a
drumurilor de la xi la xn formate din cel mult k arce.
Observaţia 3: La determinarea drumului de valoare minimă într-un
graf neorientat, fiecare muchie [xi, xj] va fi considerată cu arce (xi, xj) şi
(xj, xi), iar matricea V va fi simetrică.
Exemplu: Să se determine drumul de valoare minimă de la x1 la x6
în graful următor:
x2
x5
x1 x3
x6
x4
24
3 15
123
6
22
Modele matematice în economie
Rezolvare
Scriem pentru graful dat matricea V = (vij), 1 ≤ i, j ≤ 6, care va fi o
matrice simetrică.
V x1 x2 x3 x4 x5 x6 x1 x2 x3 x4 x5 x6
0 2 4 3 ∞ ∞
2 0 3 ∞ 6 ∞
4 3 0 1 2 ∞
3 ∞ 1 0 ∞ 5
∞ 6 2 ∞ 0 1
∞ ∞ ∞ 5 1 0
)1(
6im ∞ ∞ ∞ 5 1 0 )2(
6im 8 7 3 5 1 0 )3(
6im 7 6 3 4 1 0 )4(
6im 7 6 3 4 1 0
Linia )1(
6im se obţine prin transpunerea coloanei lui x6.
Primul element al liniei )2(
6im este )2(
16m şi se determină adunând
respectiv elementele liniei x1 din V cu cele ale liniei )1(
6im . Cea mai mică
sumă este elementul căutat, adică )2(
16m = min⎨0 + ∞, 2 + ∞, 4 + ∞, 3 + 5,
∞ + 1, ∞ + 0⎬ = 8.
Elementele următoare ale liniei )2(
6im se determină în acelaşi mod,
păstrând fixă linia )1(
6im dar modificând pe rând linia din V cu x2, x3, ..., x6.
Pentru linia )3(
6im se ia linia )2(
6im şi se adună pe rând cu liniile x1, ...,
x6 din V, reţinând cea mai mică sumă. În mod asemănător procedăm pentru
linia )4(
6im , luând linia )3(
6im şi adunând-o pe rând cu liniile x1, ... , x6.
Observăm că ultimele două linii sunt identice şi algoritmul ia sfârşit.
23
Teoria grafurilor
Valoarea minimă a drumurilor de la x1 la x6 este dată de elementul )4(
16m = 7.
Pentru determinarea succesiunii de vârfuri prin care trece drumul
căutat, ce porneşte din x1, adunăm elementele liniei x1 cu respectiv cele ale
ultimei linii adăugate, )4(
6im . Obţinem:
min⎨0 + 7; 2 + 6; 4 + 3; 3 + 4, ∞ + 1; ∞ + 0⎬ = 7 care în afara
coloanei lui x1 mai corespunde şi coloanelor x3 şi x4. Deci drumul căutat nu
e unic. Marcăm elementele de pe linia lui x1 aflate la intersecţia cu coloanele
x3 şi x4 în mod diferit şi continuăm căutarea drumului dat de un marcaj, de
exemplu cel care are primul arc (x1, x3) de valoare 4. Adunăm apoi linia lui
x3 la ultima şi
min⎨4+7; 3+6; 0+3; 1+4; 2+1; ∞ + 0⎬ = 3 corespunde coloanei lui
x5 (în afara lui x3) şi marcăm elementul 2 de pe linia x3 şi coloana x5. Acesta
reprezintă valoarea arcului (x3, x5), următorul din drum. În sfârşit adunăm
linia lui x5 cu ultima linie, )4(
6im , cea mai mică sumă este 1 şi corespunde
coloanei lui x6, deci ultimul arc este (x5, x6) şi are valoarea 1. Drumul dat de
primul marcaj este:
d1: x1 4→ x3
2→ x5
1→ x6 de valoare 7.
Procedând analog cu al doilea marcaj, vom găsi
d2: x1 3→ x4
1→ x3
2→ x5
1→ x6 cu aceeaşi valoare egală cu 7.
Observaţia 4: În matricea V ultima coloană va fi a vârfului ce
încheie drumul căutat.
Observaţia 5: Propoziţiile 3 şi 4 mai pot fi folosite pentru construirea
unui algoritm de determinare a rutelor optime între oricare două vârfuri ale
grafului G considerat.
24
Modele matematice în economie
Pentru prezentarea acestui algoritm introducem o operaţie între două
matrici, notată „*”, astfel:
Dacă A = (aij) şi B = (bij), atunci A * B = C, unde C = (cij), cu
cij = nk≤≤1
min (aik + bkj), (∀) i, j = n,1 , dacă se caută ruta de valoare minimă.
Notăm M(k) = ()(k
ijm ) şi M = ( ijm ), i, j = n,1 , k = 1,1 −n .
Etapele algoritmului sunt:
1) Se construieşte matricea V = (vij), i, j = n,1
2) Se determină, prin operaţia de mai sus, matricele:
M(2) = V * V, M(3) = M(2) * V, ş.a.m.d. până când M(k+1) = M(k),
când în baza propoziţiei 4 algoritmul ia sfârşit. Atunci
M(k+1) = M = ( ijm ) şi elementele ijm sunt valorile minime ale
drumurilor de la xi la xj, formate din oricâte arce.
3) Pentru a determina vârfurile prin care trece drumul de valoare
minimă, de exemplu de la xi la xj, transpunem linia lui xi din V
peste coloana lui xj din M şi efectuăm sumele perechilor de
elemente căutând suma (sumele) cu valoarea minimă egală cu
ijm . Dacă această sumă se află pe linia lui xk, primul arc al
drumului căutat este (xi, xk). Transpunem apoi linia lui xk din V
peste coloana lui xj din M şi în mod asemănător determinăm
următorul vârf al rutei, ş.a.m.d., până ajungem în xj.
Observaţia 4.a: Pentru a mări viteza de calcul putem determina
matricele M(K) în următoarea ordine:
M(2), M(4) = M(2) * M(2), M(8) = M(4) * M(4) ş.a.m.d. până când
ultimele două vor coincide.
25
Teoria grafurilor
Observaţia 4.b: Dacă în etapa a treia suma minimă corespunde la
două sau mai multe vârfuri, ruta optimă nu e unică şi se cercetează fiecare în
parte, marcându-le diferit.
Observaţia 4. c: Algoritmul acesta poate fi aplicat şi în determinarea
drumului de valoare maximă în graful G cu următoarele condiţii:
- graful să nu aibă circuite;
- în matricea V, vij = - ∞, când nu există arcul (xi, xj);
- cij = nk≤≤1
max (aik + bkj), i,j = n,1 ;
- în etapele 2, 3 şi observaţia 4.b, sumele minime se înlocuiesc cu
sumele maxime.
Exemplu. Să se determine valorile minime ale drumurilor dintre
oricare două vârfuri ale următorului graf.
x2
x3
x1
x4
x5
Rezolvare
Matricea V, determinată cu definiţia elementelor vij este:
V x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 ∞ ∞ ∞ ∞
7 0 ∞ ∞ ∞
2 ∞ 0 ∞ ∞
4 ∞ 4 0 ∞
5 ∞ 1 3 0
72
5
3
416
5
26
Modele matematice în economie
Determinăm matricea M(2) = V * V şi obţinem:
M(2) x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 ∞ 0 ∞ ∞
7 0 5 ∞ ∞
2 ∞ 0 ∞ ∞
6 ∞ 4 0 ∞
3 ∞ 1 3 0
unde, de exemplu, )2(
15m este cea mai mică sumă obţinută adunând
elementele liniei lui x1 cu cele ale coloanei lui x5 din V, adică )2(
15m = min(0 + 5; 7 + ∞; 2 + 1; 4 + 3; 5 + 0) = 3
Analog vom calcula M(4) = M(2) * M(2) şi obţinem:
M(4) x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 ∞ 0 ∞ ∞
7 0 5 ∞ ∞
2 ∞ 0 ∞ ∞
6 ∞ 4 0 ∞
3 ∞ 1 3 0
adică M(4) = M(2) = M şi algoritmul se opreşte. Pentru ilustrarea procedurii,
12m = 7 este valoarea minimă a drumurilor de la x1 la x2. Aceste drumuri,
obţinute aplicând procedeul din etapa 3, sunt:
d1: x1 7→x2 şi d2: x1
2→x3
5→ x2.
5. Drumul critic
O aplicaţie importantă a rutelor optime o întâlnim în determinarea
drumului critic într-un graf.
27
Teoria grafurilor
Să considerăm un graf G finit, orientat, valuat şi fără circuite, care
modelează o problemă de cercetare – dezvoltare (R & D) sau investiţională
pentru care este necesar un plan de activităţi, adică un complex de sarcini
limitate în timp şi spaţiu. O stare oarecare în realizarea proiectului o vom
numi eveniment şi o vom reprezenta printr-un vârf al grafului; orice porţiune
de proiect având un început şi un sfârşit în evenimente distincte şi deci care
consumă o durată de timp o vom numi activitate şi o vom reprezenta printr-
un arc. Timpul necesar unei activităţi reprezentate de un arc este valoarea
arcului respectiv şi îl vom numi timp operativ. Graful mai are un eveniment
de debut – vârful x0 şi un eveniment final – vârful xn.
Să presupunem că am stabilit graful unui program şi ne-am convins
că nu are circuite. Ne întrebăm care este data realizării ansamblului de
activităţi, adică durata programului de realizat. Această durată nu poate fi
inferioară sumei timpilor operativi luaţi pe drumul cel mai nefavorabil de la
x0 la xn, adică ce dă între aceste două puncte o sumă maximă de timpi
operativi. Acest drum (pot exista mai multe) se va numi drum critic.
O mai bună înţelegere o vom obţine pe graful alăturat:
x2
x1 x3
Evenimentul x3 reprezintă realizarea a trei activităţi (operaţii):
(x1, x2), (x1, x3) şi (x2, x3). Se vede că vor trebui 10 unităţi de timp pentru ca
aceste activităţi să se realizeze.
Luând pentru durata ansamblului de lucrări suma timpilor operatori
de pe drumul cel mai nefavorabil de la x0 la xn, ne asigurăm ca toate
operaţiile prevăzute să poată fi realizate. Calculul duratei de realizare a lui
5
10
3
28
Modele matematice în economie
xn revine la căutarea în graf a drumului critic. Vârfurile drumului critic se
numesc evenimente critice, iar arcele lui – activităţi critice. Operaţiunile de
pe drumul critic nu pot fi amânate. Celelalte evenimente sau activităţi
necritice, ce pot fi amânate, trebuie analizate ca nu cumva amânarea lor prea
mare să dăuneze programului.
În cele ce urmează prezentăm metoda PERT (program de evaluare şi
revizuire a obiectivelor) de determinare a drumului critic.
Aceasta constă din următoarele etape:
1) Scriem matricea arcelor A, determinăm matricea drumurilor D şi
ne asigurăm că graful nu are circuite;
2) Dacă graful nu are circuite, scriem matricea D’ (triangularizata lui
D) şi îi asociem apoi matricea V (a valorilor arcelor)
triangularizată;
3) Determinăm matricea M (a valorilor maxime ale drumurilor
dintre oricare două vârfuri ale grafului, deci îl vom avea şi pe cel
de la x0 la xn – drumul critic) cu al doilea algoritm din paragraful
precedent;
4) Se determină drumul critic (drumul de valoare maximă de la x0 la
xn), evenimentele şi activităţile critice;
5) Se determină rezervele de timp (marjele) pentru toate
evenimentele şi activităţile necritice, dând prioritate operaţiilor cu
marja mai mică.
Deci trebuie cunoscut pentru fiecare eveniment xi necritic data sa
limită de realizare, dată de la depăşirea căreia tot programul va fi întârziat.
Timpul necesar pentru realizarea operaţiunilor situate între xi şi xn se
obţine căutând în matricea M valoarea maximă a drumului de la xi la xn, pe
care o notăm prin v[dmax(xi, xn)]. Astfel ne asigurăm ca operaţiile ce succed
29
Teoria grafurilor
lui xi să poată fi realizate. Durata limită căutată (timpul cel mai întârziat de
realizare a lui xi, notat prin t ti va fi dat de:
t ti = v[dmax(x0, xn)] – v[dmax(xi, xn)].
Dacă notăm prin t di - timpul cel mai devreme de realizare a
evenimentului xi, el va fi dat de v[dmax(x0, xi)].
Atunci marja evenimentului xi va fi t ti - t d
i , evident nenegativă. În
funcţie de valoarea marjei, evenimentele sunt critice (cu marja egală cu
zero) sau necritice (cu marja pozitivă).
O cercetare asemănătoare poate fi făcută şi în funcţie de activităţi. Se
asociază oricărei activităţi (xi, xj), i ≠ j, următoarele momente de timp:
1) t di - timpul cel mai devreme de începere a activităţii (xi, xj), care
este întocmai v[dmax(x0, xi)];
2) t tj - timpul cel mai întârziat de terminare a activităţii (xi, xj), care
este v[dmax(x0, xn)] – v[dmax(xj, xn)];
3) t ti - timpul cel mai întârziat de începere a activităţii (xi, xj) este
egal cu t tj - vij (valoarea arcului (xi, xj));
4) t dj - timpul cel mai devreme de terminare a activităţii (xi, xj) este
egal cu t di + vij.
Aplicaţie
Integrarea României în structurile europene necesită înfăptuirea, într-
un sector economic, a unui obiectiv, a cărei finalizare este posibilă prin
30
Modele matematice în economie
realizarea într-o ordine bine stabilită a unor evenimente, conform
următorului graf:
x1
x4
x0 x6
x5
x3
Considerând cunoscute duratele de parcurgere a fiecărei etape de
reformă în săptămâni – valorile arcelor, se cere:
a) care este data cea mai apropiată a înfăptuirii obiectivului?
b) care este data cea mai apropiată şi cea mai îndepărtată a fiecărui
eveniment din planul de înfăptuire a obiectivului?
c) să se stabilească modul de supraveghere a îndeplinirii planului
pentru a se evita sau reduce întârzierile.
Rezolvare
a) Determinăm matricea arcelor A
A x0 x1 x2 x3 x4 x5 x6 x0 x1 x2 x3 x4 x5 x6
0 0 0 0 0 0 0
1 0 0 0 0 0 0
1 1 0 1 0 0 0
1 0 0 0 0 0 0
0 1 1 0 0 0 0
0 0 1 1 1 0 0
0 0 1 0 1 1 0
10
2
7
9
3 4
5
3
7
3 5
4 x2
6
31
Teoria grafurilor
Determinăm matricea drumurilor D ca să vedem dacă graful are
circuite. Dacă nu are, ataşăm lui D coloana puterilor de atingere p(xi),
i = 6,0 , pentru a obţine matricea triangularizată D’.
D x0 x1 x2 x3 x4 x5 x6 p(xi)x0 x1 x2 x3 x4 x5 x6
0 0 0 0 0 0 0
1 0 0 0 0 0 0
1 1 0 1 0 0 0
1 0 0 0 0 0 0
1 1 1 1 0 0 0
1 1 1 1 1 0 0
1 1 1 1 1 1 0
6 4 3 4 2 1 0
Graful nu are circuite şi D’ se obţine din D prin schimbarea ordinii
între x2 şi x3, atât pe linii cât şi pe coloane.
D’ x0 x1 x3 x2 x4 x5 x6 x0 x1 x3 x2 x4 x5 x6
0 0 0 0 0 0 0
1 0 0 0 0 0 0
1 1 1 0 0 0 0
1 0 0 0 0 0 0
1 1 1 1 0 0 0
1 1 1 1 1 0 0
1 1 1 1 1 1 0
Scriem acum matricea V cu ordinea vârfurilor din D’:
V x0 x1 x3 x2 x4 x5 x6 x0 x1 x3 x2 x4 x5 x6
0 -∞ -∞ -∞ -∞ -∞ -∞
3 0
-∞ -∞ -∞ -∞ -∞
4 -∞ 0
-∞ -∞ -∞ -∞
5 6 3 0
-∞ -∞ -∞
-∞ 7
-∞ 2 0
-∞ -∞
-∞ -∞ 9 7 5 0
-∞
-∞ -∞ -∞ 10 3 4 0
Determinăm matricea M(2) = V * V, unde elementele )2(
ijm = 60
max≤≤k
(vik + vkj), (∀) i, j = 6,0 .
32
Modele matematice în economie
Obţinem:
M(2) x0 x1 x3 x2 x4 x5 x6 x0 x1 x3 x2 x4 x5 x6
0 -∞ -∞ -∞ -∞ -∞ -∞
3 0
-∞ -∞ -∞ -∞ -∞
4 -∞ 0
-∞ -∞ -∞ -∞
9 6 3 0
-∞ -∞ -∞
10 8 5 2 0
-∞ -∞
13 13 10 7 5 0
-∞
15 16 13 11 9 4 0
în care, de exemplu, elementul )2(
35m se obţine transpunând linia lui x3 din V
pe coloana lui x5; apoi efectuăm suma coloanelor obţinute şi reţinem cea
mai mare valoare. Astfel: )2(
35m = max⎨-∞ + (-∞), -∞ + (-∞), 9 + 0, 7 + 3, 5 + 5, 0 + 10, -∞ + 13⎬ = 10.
Apoi calculăm M(3) = M(2) * V, M(4) = M(3) * V şi observăm că M(3) =
M(4), deci M(3) = M, unde M este matricea valorilor maxime ale drumurilor
dintre oricare două vârfuri ale grafului, drumuri formate din oricâte arce.
Obţinem:
M x0 x1 x3 x2 x4 x5 x6 x0 x1 x3 x2 x4 x5 x6
0 -∞ -∞ -∞ -∞ -∞ -∞
3 0
-∞ -∞ -∞ -∞ -∞
4 -∞ 0
-∞ -∞ -∞ -∞
9 6 3 0
-∞ -∞ -∞
11 8 5 7 0
-∞ -∞
16 13 10 7 5 0
-∞
20 17 14 11 9 4 0
de unde citim v[dmax(x0, x6)] = 20 = 06m
Deci obiectivul poate fi înfăptuit cel mai devreme în 20 de
săptămâni.
33
Teoria grafurilor
b) Pentru determinarea vârfurilor prin care trece drumul critic,
procedăm ca în etapa a 3-a a celui de-al doilea algoritm din paragraful 4.
Astfel, transpunem linia lui x0 din V peste coloana lui x6 din M, efectuăm
sumele perechilor de elemente, reţinând valoarea maximă egală cu 06m = 20.
Avem: max⎨0 + 20; 3 + 17; 4 + 14; 5 + 11; -∞ +9; -∞+4; -∞+0⎬ = 20
Această sumă s-a găsit pe linia lui x1, deci primul arc al drumului
critic este (x0, x1). Apoi transpunem linia lui x1 din V peste coloana lui x6
din M şi cea mai mare valoare va corespunde liniei lui x2, următorul arc
fiind (x1, x2), ş.a.m.d.. Se găsesc două drumuri critice; evident au aceeaşi
valoare 20.
d1 = x0 → x1 → x2 → x4 → x5 → x6
d2 = x0 → x1 → x2 → x5 → x6
Evenimentele critice sunt: x0, x1, x2, x4, x5, x6.
Evenimentulxi
t di t t
i Marja (t t
i -t di )
x0 x1 x3 x2 x4 x5 x6
0 3 4 9 11 16 20
0 3 6 9 11 16 20
0 0 2 0 0 0 0
unde t di = v[dmax(x0, xi)], i = 6,1 , se citesc pe linia lui x0 în M, iar
t ti = v[dmax(x0, x6)] – v[dmax(xi, x6)] = 20 – v[dmax(xi, x6)], unde
v[dmax(xi, x6)], i = 6,0 , se citesc pe coloana lui x6 din M.
Din tabel rezultă că singurul eveniment ce mai poate admite o
întârziere este x3, cu cel mult 2 săptămâni.
34
Modele matematice în economie
c). Activităţile critice sunt reprezentate de arcele ce intră în
componenţa drumurilor critice. Pentru o analiză a posibilelor întârzieri,
organizăm calculele în următorul tabel:
Activităţi t di vij t t
j t ti t d
j Marja
(x0, x1) (x0, x2) (x0, x3) (x1, x2) (x1, x4) (x3, x2) (x3, x5) (x2, x4) (x2, x5) (x2, x6) (x4, x5) (x4, x6) (x5, x6)
0 0 0 3 3 4 4 9 9 9 11 11 16
3 5 4 6 7 3 9 2 7 10 5 3 4
3 9 6 9 11 9 16 11 16 20 16 20 20
0 4 2 3 4 6 7 9 9 10 11 17 16
3 5 4 9 10 7 13 11 16 19 16 14 20
0 4 2 0 1 2 3 0 0 1 0 6 0
Să explicăm, de exemplu, cum a fost completată linia activităţii
(x3, x5). t di = t d
3 = v[dmax(x0, x3)] = 4, citit în M linia x0 şi coloana x3;
vij = v35 = 9 din graf sau din V; t tj = t t
5 = v[dmax(x0, x6)] – v[dmax(x5, x6)] =
= 20 – 4 = 16, primul termen citit pe linia lui x0 şi coloana lui x6, iar al
doilea termen pe linia lui x5 şi coloana 6 din M; t ti = t t
j - vij, în cazul nostru
t t3 = t t
5 - v35 = 16 – 9 = 7 (adică elementele coloanei t ti se obţin scăzând din
coloana t tj coloana vij); t d
j = t di + vij, devine t d
5 = t d3 + v35 = 4 + 9 = 13
(adică elementele coloanei t dj se obţin adunând respectiv elementele
coloanelor t di şi vij). Marja este dată de t t
i - t di sau t t
j - t dj , în cazul nostru
t t3 - t d
3 = t t5 - t d
5 = 7 – 4 = 16 – 13 = 3.
35
Teoria grafurilor
Activităţile critice au marja zero, iar celelalte trebuie supravegheate
în funcţie de mărimea marjei, în ordinea crescătoare a acesteia.
6. Arbori
Dacă G este un graf neorientat şi [x, y] o muchie a sa, spunem că
vârfurile x şi y sunt adiacente în graful dat şi de asemenea, că vârfurile x şi
y sunt incidente cu muchia [x, y]. Gradul unui vârf x este numărul muchiilor
incidente cu vârful x. Un vârf cu gradul egal cu 1 se numeşte vârf terminal
al grafului G.
Definiţie: Un graf neorientat, finit, conex şi fără cicluri se numeşte
arbore.
Propoziţia 5. Dacă G este un arbore, atunci el are următoarele
proprietăţi:
1) între două vârfuri oarecare ale lui G există un lanţ şi numai unul;
2) dacă în G se suprimă o muchie, G nu mai este arbore;
3) dacă în G se introduce o nouă muchie, G nu mai este arbore;
4) orice arbore cu n vârfuri, n ≥ 2, conţine cel puţin 2 vârfuri
terminale;
5) orice arbore cu n vârfuri are n – 1 muchii.
Demonstraţie:
1) Într-adevăr, absenţa lanţului înseamnă că G nu e conex, iar
existenţa a două lanţuri implică formarea unui ciclu, situaţie
exclusă prin definiţie;
2) Presupunem prin absurd că graful G1 obţinut din G prin
suprimarea muchiei [x, y] este conex. Deci există un lanţ în G1 de
36
Modele matematice în economie
extremităţi x şi y, care împreună cu muchia suprimată [x, y]
formează un ciclu în G, fapt ce contrazice definiţia arborelui G.
Observaţia 1:
Un graf conex în care dacă suprimăm o muchie oarecare graful
obţinut devine neconex se cheamă graf conex minimal. Deci orice arbore
este un graf conex minimal. Reciproca acestei afirmaţii este valabilă. Într-
adevăr, presupunem prin absurd că graful conex minimal G nu este arbore şi
conţine un ciclu [x, z1, ..., zk, y, x]. Suprimând muchia [x, y], se obţine un
nou graf G1 care este conex, deoarece în orice lanţ dintre două vârfuri
oarecare u şi v ale lui G care conţine muchia [x, y] putem înlocui această
muchie prin lanţul [x, z1, ..., zk, y] care există şi în G1, obţinând un lanţ între
u şi v din G1. Deci G1 este conex, ceea ce contrazice faptul că G este graf
conex minimal. Rezultă că G este fără cicluri, deci G este arbore.
3) fie x şi y două vârfuri neadiacente în G. Din proprietatea 1)
rezultă că între ele există un lanţ de extremităţi x şi y. Prin
adăugarea muchiei [x, y] se formează un ciclu, deci G nu mai este
arbore.
Observaţia 2:
Un graf fără cicluri în care dacă adăugăm o muchie oarecare graful
va conţine un ciclu se numeşte graf fără cicluri maximal. Deci orice arbore
este un graf fără cicluri maximal.
Reciproca acestei afirmaţii este adevărată. Într-adevăr, fie G un graf
fără cicluri maximal. Să arătăm că G este conex. Presupunem prin absurd că
G nu este conex, deci există vârfurile x şi y între care nu există un lanţ. Prin
adăugarea muchiei [x, y] se formează graful G1 care nu poate conţine un
ciclu pentru că G nu conţine cicluri şi între x şi y nu există nici un lanţ.
37
Teoria grafurilor
Apariţia lui G1 fără cicluri contrazice ipoteza că G este un graf fără cicluri
maximal. Deci G este conex şi cum nu are cicluri este arbore.
4) Presupunem prin absurd că există un arbore G cu n ≥ 2 vârfuri
care are cel mult un vârf terminal şi fie [x, z1, ..., zp, y] un lanţ
elementar care conţine un număr maxim de muchii (de lungime
maximă). Cel puţin una dintre extremităţile lanţului are gradul
mai mare sau egal cu 2, deoarece am presupus că arborele are cel
mult un vârf terminal. Fie această extremitate x, deci x mai este
adiacent cu un vârf al arborelui G şi anume cu unul din vârfurile
lanţului de lungime maximă considerat. Dar atunci se produce un
ciclu şi se contrazice definiţia arborelui. Presupunerea făcută este
falsă şi proprietatea este demonstrată.
5) Demonstraţia se face prin inducţie după n. Pentru n = 2, există
arbore format din muchia ce uneşte cele 2 vârfuri. Presupunem
că orice arbore cu n vârfuri are n – 1 muchii. Fie G un arbore cu
n + 1 vârfuri care conform proprietăţii 4 are cel puţin un vârf
terminal x. Suprimând din G vârful x şi muchia incidentă cu x, se
obţine subgraful G1, cu n vârfuri. Deoarece G nu conţine cicluri,
rezultă că nici G1 nu conţine cicluri. Să arătăm că G1 este conex.
Fie y şi z două vârfuri oarecare, diferite între ele şi diferite şi de
x, ale lui G. Din 1) rezultă că între y şi z există un singur lanţ,
care nu trece prin x (vârf terminal), deci este un lanţ de
extremităţi y şi z şi în G1. Rezultă că G1 este conex, deci este
arbore. Dar G1 are n vârfuri şi deci aplicând ipoteza de inducţie
G1 are n – 1 muchii. Dar G conţine în plus faţă de G1 muchia
incidentă cu x, deci G are n muchii şi proprietatea 5 este
demonstrată.
38
Modele matematice în economie
Definiţie: Un graf parţial G’ al unui graf G cu proprietatea că G’ este
arbore se numeşte arbore parţial al lui G.
Teorema 3.
Condiţia necesară şi suficientă ca printre grafurile parţiale ale lui G
să existe arbori este ca G să fie conex.
Demonstraţie:
Condiţia este necesară deoarece dacă G nu este conex orice graf
parţial are aceeaşi proprietate, deci nu poate fi arbore.
Să arătăm acum că orice graf conex G conţine un arbore parţial G’.
Dacă G este un arbore conex minimal, conform observaţiei 1, el este arbore,
deci G’ = G. În caz contrar, există cel puţin o muchie [x, y] a lui G care prin
suprimare ne conduce la graful G’ conex. Apoi din G’ suprimăm o altă
muchie ş.a.m.d. până obţinem un graf conex minimal, care va fi arbore
parţial al lui G.
Observaţia 3: Deoarece, dacă graful are n vârfuri, el va avea cel mult
C 2n muchii, procedeul de suprimare descris are un număr finit de paşi. În
afară de unele cazuri particulare, există mai mulţi arbori într-un graf G
neorientat şi conex. De aceea, dacă definim pe mulţimea U a muchiilor,
valorile acestora, apare necesitatea de a determina arborele pentru care suma
valorilor ataşate muchiilor să fie minimă. Un astfel de arbore de valoare
minimă se găseşte cu algoritmul lui Kruskal.
Vom presupune în cele ce urmează, pentru a facilita prezentarea
algoritmului că:
i) graful G cu n vârfuri este complet, adică oricare ar fi vârfurile sale
xi şi xj, există muchia [xi, xj];
ii) valorile ataşate muchiilor sunt toate distincte, deci mulţimea
acestor valori este strict ordonată.
39
Teoria grafurilor
Algoritmul Kruskal
În condiţiile i) şi ii) de mai sus, va exista muchia u1 cu valoarea cea
mai mică, u2 cu valoarea imediat următoare, u3 cu valoarea care urmează,
dar care nu formează un ciclu cu precedentele ş.a.m.d., eliminând muchiile
care ar forma cicluri cu cele reţinute. Şi cum G are un număr finit de vârfuri
şi de muchii, va exista un rang k peste care nu se poate trece fără a se forma
un ciclu. Deci:
f(u1) < f(u2) < f(u3) < ... < f(uk) unde f(ui) este valoarea
muchiei ui, i = k,1 .
Obţinem astfel un graf fără cicluri, maximal, care conform
observaţiei 2 este un arbore, pentru care, din proprietatea 5, k = n – 1.
Teorema 3.
Arborele G = (X, U), unde U = ⎨u1, ..., uk⎬ determinat prin
algoritmul Kruskal are valoarea minimă.
Demonstraţie:
Presupunem prin absurd, că există un arbore G’ = (X, U’), cu
U’ = ⎨u’1, ..., u’k⎬, G’ ≠ G, de valoare minimă. Fie ui prima muchie
din G (în ordinea crescătoare a valorilor) care nu există în G’. Graful parţial
format cu muchiile lui G’, la care se adaugă ui nu este arbore pentru că, în
baza proprietăţii 3, apare un ciclu. Există deci o muchie u’j ∉ G şi deoarece
primele i – 1 muchii ale lui G sunt şi ale lui G’, vom avea f(u’j) > f(ui). Dacă
în G’ se înlocuieşte u’j cu ui se obţine tot un arbore, numărul de muchii
rămâne tot k = n – 1, cu valoarea totală mai mică decât G’, ceea ce
contrazice ipoteza că G’ e minim. De aici rezultă că G este arborele de
valoare minimă şi că el este unic, când toate muchiile sunt de valori
distincte.
40
Modele matematice în economie
Observaţia 4: Înlăturarea restricţiilor privitoare la completitudinea
grafului se realizează atribuind valoarea „+ ∞” muchiilor care lipsesc.
Acestea nu vor intra în componenţa arborelui căutat, numărul muchiilor
rămânând n – 1.
Observaţia 5: Dacă în graful conex G valorile muchiilor nu sunt
toate distincte şi presupunem că:
f(ui) = ... = f(ui+p)
putem efectua o modificare a valorilor funcţiei f, astfel:
f(ui) ← f(ui) + ε0
f(ui+1) ← f(ui+1) + ε1
∶ ∶
f(ui+p) ← f(ui+p) + εp
numerele εs, s = p,0 , fiind alese astfel încât să nu se afecteze ordinea
valorilor acestor muchii faţă de celelalte. Cu acestea, ordinea valorilor
muchiilor devine strictă, în final punându-se εs = 0, s = p,0 .
În general, dacă există mai multe muchii cu aceeaşi valoare, pentru
graful G conex, pot exista mai multe posibilităţi de alegere a unei muchii de
valoare minimă care nu formează cicluri cu muchiile deja alese, deci pot
exista mai mulţi arbori de valoare minimă.
Exemplu:
Să se determine arborele minimal (de valoare minimă) pentru
următorul graf.
41
Teoria grafurilor
x2
x5
x3
x1 x7
x4 x6
Rezolvare
Pentru a păstra o ordine scriem partea de deasupra diagonalei
principale din matricea valorilor muchiilor. Se obţine:
x1 x2 x3 x4 x5 x6 x7 x1 x2 x3 x4 x5 x6 x7
- - - - - - -
35- - - - - -
35 30 - - - - -
50 42 40 - - - -
- - 36 60 - - -
- - 50 - 55 - -
- - - - 65 60 -
Muchia [x2, x3] de lungime minimă o reţinem în arbore. Apoi există
două muchii [x1, x2] şi [x1, x3] de lungime 35. O alegem, de exemplu, pe
[x1, x2] iar [x1, x3] nu poate fi aleasă deoarece ar forma ciclu [x1, x2, x3, x1]
cu muchiile deja alese. Următoarea valoare în ordine crescătoare este 36 şi
corespunde muchiei [x3, x5] ce poate fi aleasă (nu formează cicluri), apoi
[x3, x4] de valoare 40. Muchia [x2, x4] de valoare 42 nu se alege (formează
ciclu). Următoarea valoare este 50 pentru [x3, x6], se reţine, în vreme ce
[x1, x4] nu se reţine (formează ciclu). Dintre muchiile de valoare 60 se reţine
doar [x6, x7]. S-au reţinut astfel 6 muchii, atâtea cât va avea arborele căutat.
3036
50
55
60
65
6040
4250
35
35
42
Modele matematice în economie
x2
x5
x3
x1 x7
x4 x6
Arborele căutat are valoarea 251 dată de suma valorilor muchiilor.
Observaţia 1: Dacă în locul muchiei [x1, x2] am fi ales [x1, x3]
ambele de valoare 35 am fi obţinut un alt arbore minimal.
Observaţia 2: Algoritmul Kruskal poate fi aplicat şi în determinarea
arborelui maximal (de valoare maximă) cu deosebirea că alegerea muchiilor
se face în ordinea descrescătoare a valorii lor, cu aceeaşi grijă ca orice
muchie aleasă să nu formeze cicluri cu cele alese anterior.
Observaţia 3: Cu ajutorul arborelui minimal putem determina un lanţ
hamiltonian de valoare cât mai mică, în graful dat, având grijă ca orice vârf
al lanţului să aibă gradul cel mult 2. În exemplul nostru numai vârful x3 nu
îndeplineşte această condiţie. Deci trebuie să facem ca şi el să aibă gradul 2.
Dacă renunţăm la [x3, x6] şi introducem [x5, x6], gradul lui x3 va fi 3 în loc
de 4. Mai renunţăm şi la [x3, x4] şi introducem [x1, x4] şi astfel s-a obţinut
lanţul hamiltonian x4 → x1 → x2 → x3 → x5 → x6 → x7 de valoare 266.
3036
5060
40
35
43
Teoria grafurilor
7. Probleme
1. Fie graful G = (X, T), X = ⎨x1, x2, x3, x4, x5⎬ şi T(x1) = ⎨x4⎬;
T(x2) = ⎨x1, x5⎬; T(x3) = ⎨x1, x2, x4, x5⎬; T(x4) = ∅; T(x5) = ⎨x1, x4⎬. Se
cere:
a) să se reprezinte geometric graful G;
b) să se scrie un drum de lungime 3 din G;
c) să se determine matricea drumurilor D;
d) să se cerceteze existenţa circuitelor în G;
e) să se cerceteze existenţa drumurilor hamiltoniene.
Rezolvare
a) Reprezentarea geometrică este:
x2
x1 x3
x5
x4
b) d = (x3, x2, x1, x4)
c) Scriem matricea A apoi determinăm, cu algoritmul obţinut,
matricea D.
A x1 x2 x3 x4 x5 D x1 x2 x3 x4 x5 p(xi) x1 x2 x3 x4 x5
0 1 1 0 1
0 0 1 0 0
0 0 0 0 0
1 0 1 0 1
0 1 1 0 0
x1 x2 x3 x4 x5
0 1 1 0 1
0 0 1 0 0
0 0 0 0 0
1 1 1 0 1
0 1 1 0 0
1 3 4 0 2
44
Modele matematice în economie
Pentru a obţine, de exemplu, linia lui x2 în D, am preluat elementele
egale cu 1 de pe linia lui x2 din A în D. Apoi pentru că avem 1 pe coloana
lui x1, adunăm boolean linia lui x1 din A la cea a lui x2 şi mai apare un 1 pe
coloana lui x4. Pentru că avem 1 pe coloana lui x5, adunăm boolean linia lui
x5 la cea a lui x2 şi nu mai obţinem alt element egal cu 1. Avem şi un 1 pe
coloana lui x4, adunăm linia lui x4 din A la cea a lui x2 şi nu mai obţinem
alte elemente de 1; completăm locurile libere cu zerouri. Repetăm
raţionamentul pentru fiecare linie şi obţinem matricea D.
d) Pe diagonala principală a matricei D toate elementele sunt egale
cu 0, deci graful nu are circuite.
e) Graful neavând circuite, aplicăm teorema lui Y.V. Chen,
determinând puterile de atingere ale vârfurilor. Adăugăm
matricei D coloana p(xi) cu valorile: p(x1) = 1, p(x2) = 3,
p(x3) = 4, p(x4) = 0, p(x5) = 2.
Deoarece n = 5, ∑=
=5
110)(
iixp , iar 10
245
2)1(
=⋅
=−nn , rezultă că
există drum hamiltonian pe care îl obţinem scriind vârfurile grafului în
ordinea descrescătoare a puterii lor de atingere, adică:
dH = (x3, x2, x5, x1, x4).
2. Fie graful G = (X, U), X = ⎨x1, x2, x3, x4, x5⎬ şi
U = ⎨(x1, x3), (x1, x4), (x2, x1), (x2, x5), (x3, x4), (x4, x2), (x4, x5),
(x3, x2)⎬.
Se cere:
a) să se reprezinte geometric graful G;
b) să se cerceteze dacă are circuite;
c) să se cerceteze dacă are drumuri hamiltoniene.
45
Teoria grafurilor
Rezolvare
a)
x2
x5
x1
x4
x3
b) Fără să mai determinăm matricea D se observă că există circuitul
d = (x2, x1, x4, x2). Deci graful are circuite.
c) Cercetăm existenţa drumurilor hamiltoniene cu algoritmul
Kaufmann deoarece graful are circuite.
D(1) D (1)
0 x2x1
0 0 0
0 0
x3x2 x4x2
0
x1x3 0 0 0 0
x1x4 0
x3x40 0
0 x2x5
0 x4x5
0
x1
x2 x2
x3
x4
x4
x5
x5
D(2) = D(1) L D (1) D(3) = D(2)L D (1) 0 x1x3x2
x1x4x2 0 x1x3x4 x1x4x5 0 x1x3x4x2 0 0 x1x3x2x5
x1x4x2x5 x1x3x4x5
0 0 x2x1x3 x2x1x4 0 0 0 0 x2x1x3x4 x2x1x4x2 x3x2x1 x3x4x2 0 0 x3x2x5
x3x4x5 x3x4x2x1 0 0 x3x2x1x4 x3x4x2x5
x4x2x1 0 0 0 x4x2x5 0 0 x4x2x1x3 0 0 0 0 0 0 0 0 0 0 0 0
D(4) = D(3)L D (1)
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
x1x3x4x2x5 x2x1x3x4x5x3x2x1x4x5
0 0
46
Modele matematice în economie
Matricea D(4) conţine drumurile elementare formate din 4 arce, deci
ce trec prin 5 vârfuri, adică prin toate vârfurile grafului. Aceste drumuri sunt
şi hamiltoniene şi avem:
d )1(H = (x1, x3, x4, x2, x5)
d )2(H = (x2, x1, x3, x4, x5)
d )3(H = (x3, x2, x1, x4, x5).
3. Un sistem de comunicare a datelor între 5 obiective are ca model
graful de mai jos. Posibilităţile de comunicare între obiective sunt figurate
prin arce, iar costul unei comunicări este valoarea arcului. Se cere:
a) să se determine comunicările de cost minim la x5;
b) să se determine comunicările de cost minim între oricare două
obiective.
x2 x3
x1
x5 x4
Rezolvare
a) Trebuie să determinăm rutele de valoare minimă de la orice vârf
la vârful x5. Se aplică algoritmul Bellman – Kalaba.
5
1
4
2
2
1
4 3
6
31
47
Teoria grafurilor
V x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 3 ∞ ∞ ∞
4 0 1 ∞ 3
2 ∞ 0 5 2
∞ ∞ ∞ 0 1
6 1 ∞ 4 0
)1(5im 6 1 ∞ 4 0
)2(5im 5 1 2 4 0
)3(5im 4 1 2 4 0
)4(5im 4 1 2 4 0
b) Aplicăm al doilea algoritm de la rute optime şi determinăm
M(2) = V * V. V x1 x2 x3 x4 x5 V x1 x2 x3 x4 x5 M(2) x1 x2 x3 x4 x5
x1 x2 x3 x4 x5
0 3 ∞ ∞ ∞
4 0 1 ∞ 3
2 ∞ 0 5 2
∞ ∞ ∞ 0 1
6 1 ∞ 4 0
*
x1 x2 x3 x4 x5
0 3 ∞ ∞ ∞
4 0 1 ∞ 3
2 ∞ 0 5 2
∞ ∞ ∞ 0 1
6 1 ∞ 4 0
=
x1 x2 x3 x4 x5
0 3 4 ∞ 6
3 0 1 6 3
2 3 0 5 2
7 2 ∞ 0 1
5 1 2 4 0
unde, de exemplu elementul m )2(43 se obţine transpunând linia lui x4 pe
coloana lui x3 din V şi efectuând sumele perechilor de elemente se reţine cea
mai mică valoare. Astfel: m )2(43 = min⎨∞+2; ∞+∞; 5+0; 0+5; 4+2⎬ = 5.
Prin aceeaşi operaţie calculăm M(4) = M(2) * M(2) şi obţinem:
M(4) x1 x2 x3 x4 x5 x1 x2 x3 x4 x5
0 3 4 9 6
3 0 1 6 3
2 3 0 5 2
5 2 3 0 1
4 1 2 4 0
Matricea M(4) conţine valorile minime ale rutelor dintre oricare vârf
cap de linie la orice vârf cap de coloană.
= M(5) = M
48
Modele matematice în economie
Astfel, cifra 9 de pe linia lui x4 şi coloana lui x1 din M(4) reprezintă
costul minim al comunicării de la x4 la x1. Pentru a determina şi ruta,
adunăm linia lui x4 (din V) cu respectiv elementele coloanei x1 din M(4). Cea
mai mică sumă este 5 + 4 = 9 şi corespunde liniei lui x3 din M(4), deci (x4,
x3) este primul arc al rutei căutate. Apoi transpunem linia lui x3 din V peste
coloana lui x1 din M(4), efectuăm sumele perechilor de elemente şi cea mai
mică sumă este 1 + 3 = 4 ce va corespunde liniei lui x2 din M(4). Arcul
(x3, x2) este următorul din rută. În sfârşit, transpunem linia lui x2 din V peste
coloana lui x1 din M(4), adunăm cele două coloane, suma minimă este 3 + 0
= 3 de pe linia lui x1 din M(4), deci următorul arc este (x2, x1) şi am ajuns la
destinaţie. Ruta căutată va fi:
d: x4 5→ x3
1→ x2
3→ x1 şi valoarea ei este 5 + 1 + 3 = 9.
4. Fie graful G finit, orientat, valuat. Se cere:
a) să se cerceteze dacă are circuite;
b) să se cerceteze dacă are drumuri hamiltoniene;
c) în caz că există, să se determine drumul de valoare maximă de la
x2 la x4.
x2
x5
x1 x3
x6
x4
Rezolvare
a) Se determină pe rând matricele A (a arcelor) şi D (a drumurilor).
2
2
43
86
79
5
49
Teoria grafurilor
A x1 x2 x3 x4 x5 x6 D x1 x2 x3 x4 x5 x6 p(xi) x1 x2 x3 x4 x5 x6
0 0 0 0 0 0
1 0 0 0 0 0
1 1 0 0 1 0
1 0 1 0 0 0
0 1 0 0 0 0
0 0 0 1 1 0
x1 x2 x3 x4 x5 x6
0 0 0 0 0 0
1 0 0 0 0 0
1 1 0 0 1 0
1 1 1 0 1 0
1 1 0 0 0 0
1 1 1 1 1 0
5 4 2 1 3 0
Pe diagonala principală în D toate elementele sunt egale cu zero,
deci nu există circuite.
b) Adăugăm lui D coloana puterilor de atingere p(xi) şi o
determinăm pentru fiecare vârf cap de linie:
∑=
=6
115)(
iixp şi cum n = 6; 15
256
2)1(
=⋅
=−nn este îndeplinită
condiţia de existenţă a drumului hamiltonian şi acesta este, scriind vârfurile
grafului în ordinea descrescătoare a puterilor de atingere:
dH = (x1, x2, x5, x3, x4, x6).
c)
V x1 x2 x3 x4 x5 x6 x1 x2 x3 x4 x5 x6
0 -∞ -∞ -∞ -∞ -∞
2 0 -∞ -∞ -∞ -∞
3 9 0 -∞ 7 -∞
2 -∞ 8 0 -∞ -∞
-∞ 5 -∞ -∞ 0 -∞
-∞ -∞ -∞ 6 4 0
)1(4im 2 -∞ 8 0 -∞ -∞
)2(4im 11 17 8 0 -∞ -∞
)3(4im 19 20 8 0 15 -∞
)4(4im 22 20 8 0 15 -∞
)5(4im 22 20 8 0 15 -∞
50
Modele matematice în economie
Deoarece vrem să ajungă ruta în x4, prima linie ce se adaugă lui V, )1(
4im va fi transpusa coloanei lui x4. Ultima linie, )5(
4im , va da valorile
maxime ale drumurilor de la vârfurile cap de coloană la x4. Astfel valoarea
maximă a drumurilor de la x2 la x4 este 20 (elementul )5(
24m ) şi punctele prin
care trece ruta optimă sunt:
x2, x5, x3, x4.
5. Fie graful G, finit, neorientat, valuat. Se cere:
a) arborele minimal şi valoarea acestuia;
b) un lanţ hamiltonian de valoare cât mai mică;
c) arborele maximal şi valoarea acestuia.
x2
x4
x1
x3 x5
Rezolvare
a) Alegem cele 4 muchii ale grafului (conform proprietăţii 5) în
ordinea crescătoare a valorii lor cu grijă să nu se formeze cicluri şi obţinem:
x2
x4
x1
x3 x5
6
6
8
8
7 9
10
6
6
8
7
51
Teoria grafurilor
arborele minimal de valoare suma valorilor muchiilor ce îl compun, adică
27.
b) Vârful x3 are gradul 3. Eliberăm o muchie, [x3, x5] pentru că are
valoarea cea mai mare şi introducem în locul ei [x4, x5]. Se obţine:
lH = (x1, x2, x3, x5, x4) de valoare 28.
c) Alegem muchiile în ordinea descrescătoare a valorii lor, cu grijă
să nu apară cicluri. Obţinem:
x2
x4
x1
x3 x5
arborele maximal, care este şi lanţ hamiltonian maximal şi are valoarea 35.
8
8
9
10
52
1. Spaţii liniare Fie X o mulţime nevidă, K un corp de numere (reale sau complexe)
şi două legi de compoziţie: o lege internă, „adunarea”, definită „+”:
X × X → X, cu x + y ∈ X (∀) x,y ∈ X şi o lege externă „înmulţirea cu
scalar”, definită „⋅”: K × X → X, α⋅x ∈ X, (∀) x ∈ X şi α ∈ K.
Definiţia 1: Mulţimea X formează un spaţiu liniar (vectorial) peste
corpul K, notat (X, K), dacă:
1. (X, +) este grup abelian.
2. a) α⋅(x + y) = α⋅x + α⋅y, (∀) α ∈ K, (∀) x, y ∈ X
b) (α + β)⋅x = α⋅x + β⋅x, (∀) α,β ∈ K, (∀) x ∈ X
c) α⋅(β⋅x) = (αβ)⋅x, (∀) α, β ∈ K, (∀) x ∈ X
d) 1 ⋅ x = x (∀) x ∈ X, 1 ∈ K.
Elementele lui X se numesc vectori, elementele lui K se numesc
scalari, elementul neutru din grupul (X, +) se notează cu 0 şi se numeşte
vector nul.
Exemple
1. (ℝn, ℝ), unde ℝn = ⎨x ⏐ x = (x1, ..., xn)T, xi ∈ ℝ, i = n,1 ⎬ cu
operaţiile: x + y = (x1+ y1, ..., xn + yn)T, α ⋅ x = (αx1, ..., αxn)T, (∀) x = (x1,
..., xn)T, y = (y1, ..., yn)T ∈ X, (∀) α ∈ K, 0 = (0,...,0)T.
COMPLEMENTE DE ALGEBRĂ LINIARĂ 2
53
Modele matematice în economie
Observaţie: ℝn este mulţimea matricelor – coloană cu n elemente
numere reale, iar operaţiile sunt: adunarea matricelor – coloane cu câte n
elemente şi înmulţirea lor cu un număr real.
2. (Mmn, ℝ), unde Mmn este mulţimea matricelor cu m linii şi n
coloane având elemente numere reale.
3. (ℝn[X], ℝ), unde ℝn[X] este mulţimea polinoamelor de o
nedeterminată X, de grad cel mult n şi cu coeficienţi reali.
Propoziţia 1: Într-un spaţiu liniar (X, K) sunt adevărate
proprietăţile:
a) 0 ⋅ x = 0 , (∀) x ∈ X şi 0 ∈ K;
b) (-1) ⋅ x = - x;
c) α ⋅ 0 = 0 , (∀) α ∈ K.
Demonstraţie:
a) 0 ⋅ x + x = 0 ⋅ x + 1 ⋅ x = (0 + 1)⋅x = 1 ⋅ x = x
Din 0 ⋅ x + x = x rezultă 0 ⋅ x = 0 ;
b) Din a) avem 0 ⋅ x = 0 ⇒ (1 + (-1))⋅x = 0 ⇒ 1 ⋅ x + (-1)⋅x = 0 ⇒
⇒ (-1)⋅x = - x;
c) α ⋅ 0 = α⋅( 0 + 0 ) = α ⋅ 0 + α ⋅ 0 ⇒ α ⋅ 0 = 0 .
2. Dependenţa şi independenţa liniară a vectorilor
Fie (X, K) un spaţiu liniar, ⎨v1, ..., vm⎬ ⊂ X, α1, ..., αm ∈ K.
Definiţia 2: Se numeşte combinaţie liniară a vectorilor v1, ..., vm cu
scalarii α1, ..., αm vectorul
54
Complemente de algebră liniară
v = α1v1 + ... + αmvm.
Dacă αi ∈ [0, 1], i = m,1 şi ∑=
=m
ii
11α , atunci vectorul v este o
combinaţie liniară convexă de v1, ..., vm.
Exemplu:
În (ℝ2, ℝ) se dau vectorii:
v1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛06
, v2 = ⎟⎟⎠
⎞⎜⎜⎝
⎛− 33
, v3 = ⎟⎟⎠
⎞⎜⎜⎝
⎛− 24
.
a) Să se determine vectorul v = 2v1 – 3v2 – v3;
b) Este v3 o combinaţie liniară de v1 şi v2?
Răspuns
a) v = 2 ⎟⎟⎠
⎞⎜⎜⎝
⎛06
- 3 ⎟⎟⎠
⎞⎜⎜⎝
⎛− 33
- ⎟⎟⎠
⎞⎜⎜⎝
⎛− 24
= ⎟⎟⎠
⎞⎜⎜⎝
⎛−11
1;
b) Presupunem că există α1 şi α2 astfel încât v3 = α1v1 + α2v2.
Înlocuind v1, v2, v3, avem:
⎟⎟⎠
⎞⎜⎜⎝
⎛− 24
= α1 ⎟⎟⎠
⎞⎜⎜⎝
⎛06
+ α2 ⎟⎟⎠
⎞⎜⎜⎝
⎛− 33
de unde rezultă sistemul:
6α1 + 3α2 = 4
- 3α2 = -2, cu soluţia α2 = 32 şi α1 =
31 , deci v3 =
31 v1 +
32 v2 şi
răspunsul e afirmativ.
Observaţie: Deoarece α1, α2 ∈ [0, 1] şi α1 + α2 = 1, v3 este o
combinaţie liniară convexă de v1 şi v2.
55
Modele matematice în economie
Definiţia 3:
a) Sistemul finit de vectori ⎨v1, ..., vm⎬ ⊂ X se numeşte liniar
independent dacă relaţia ∑=
=m
iiiv
10α implică αi = 0, i = m,1 ;
b) ⎨v1, ..., vm⎬ ⊂ X este liniar dependent dacă există scalarii
α1 ,..., αm, nu toţi nuli, astfel încât ∑=
=m
iiiv
10α .
Definiţia 4:
O familie S = ⎨vi ⏐ i ∈ I⎬ de vectori din X este liniar independentă
dacă orice sistem finit de vectori din S este liniar independent. În caz
contrar, adică dacă S conţine cel puţin un sistem finit de vectori liniar
dependent, spunem că S este liniar dependent (I este mulţimea indicilor
familiei S).
Exemple:
a) În (ℝn, ℝ), E = ⎨e1, ..., en⎬ ⊂ ℝn, cu e1 = (1, 0,...,0)T, ...
en = (0,..., 0, 1)T este un sistem liniar independent, deoarece din
relaţia: α1e1 + ...+ αnen = 0 rezultă α1 = ... = αn = 0.
b) În (ℝ2, ℝ), sistemul de vectori ⎨v1, v2, v3⎬ cu
v1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛−11
; v2 = ⎟⎟⎠
⎞⎜⎜⎝
⎛32
; v3 = ⎟⎟⎠
⎞⎜⎜⎝
⎛73
este liniar dependent, deoarece
v1 – 2v2 + v3 = 0 , deci există cel puţin un scalar αi ≠ 0.
Propoziţia 2: Fie (X, K) un spaţiu liniar.
a) Sistemul ⎨v1, ..., vm⎬ ⊂ X este liniar dependent dacă şi numai dacă
cel puţin un vector este combinaţie liniară a celorlalţi.
b) Dacă ⎨v1, ..., vm⎬ ⊂ X este liniar independent şi ⎨v1, ..., vm, vm+1⎬
este liniar dependent, atunci vm+1 este combinaţie liniară de v1, ..., vm.
56
Complemente de algebră liniară
Demonstraţie:
a) Dacă ⎨v1, ..., vm⎬ e liniar dependent, din definiţie rezultă că există
cel puţin un scalar αj ≠ 0, j ∈ ⎨1, ..., m⎬ şi alţi scalari αl, l ≠ j, 1 ≤ l ≤ m, cu
proprietatea ∑=
=m
iiiv
10α .
Presupunem α1 ≠ 0 şi din relaţia precedentă avem:
v1 = -1
2
αα v2 - ... -
1ααm vm sau, notând βl = -
1αα l , l = m,2 , rezultă:
v1 = β2v2 + ...+ βmvm.
Reciproc, dacă v1 se scrie ca mai sus, avem:
1 ⋅ v1 - β2v2 - ... - βmvm = 0 unde β1 = 1 ≠ 0, deci sistemul ⎨v1,...,vm⎬
este liniar dependent.
b) Dacă sistemul ⎨v1,...,vm, vm+1⎬ este liniar dependent rezultă că
există scalarii α1, ..., αm+1, cu cel puţin un αj ≠ 0, 1 ≤ j ≤ m + 1, astfel încât
∑+
=
=α1m
1iii 0v .
Dacă αm+1 = 0, relaţia de mai sus devine α1v1 + ... + αmvm = 0 şi din
independenţa vectorilor v1, ..., vm ar rezulta α1 = ... = αm = 0, ceea ce este o
contradicţie. Deci αm+1 ≠ 0, de unde vm+1 = - i
m
i m
i v∑= +1 1α
α , adică vm+1 este o
combinaţie liniară de ceilalţi vectori.
Aplicaţie
În (ℝ3, ℝ) se dau vectorii:
v1 = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
321
; v2 = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−11
0; v3 =
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
501
; v4 = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
502
.
57
Modele matematice în economie
Să se stabilească natura sistemelor de vectori:
a) S1 = ⎨v1, v2, v3⎬; b) S2 = ⎨v1, v2, v4⎬.
Rezolvare
a) Presupunem α1v1 + α2v2 + α3v3 = 0 ; înlocuim vectorii şi obţinem
sistemul:
α1 + α3 = 0
2α1 - α2 = 0 , având determinantul
3α1 + α2 + 5α3 = 0
∆ = 0513012101=− .
Alegem determinantul principal ∆p = 12
01−
≠ 0 şi deci sistemul
ecuaţiilor şi necunoscutelor principale va fi:
α1 = - α3
2α1 - α2 = 0
de unde α1 = - α3, α2 = - 2α3, (∀) α3 ∈ ℝ.
Înlocuind în relaţia presupusă α1, α2 în funcţie de α3 avem:
-α3v1 - 2α3v2 + α3v3 = 0 ⇒ -v1 – 2v2 + v3 = 0 sau v3 = v1 + 2v2, ce
reprezintă legătura dintre vectorii dependenţi v1, v2, v3.
b) Din relaţia α1v1 + α2v2 + α4v4 = 0 , se obţine sistemul:
α1 + 2α4 = 0
2α1 - α2 = 0
3α1 + α2 + 5α4 = 0
58
Complemente de algebră liniară
cu ∆ = 5, deci ≠ 0. Sistemul are soluţie unică, soluţia banală, deci
α1 = α2 = α4 = 0 şi ⎨v1, v2, v4⎬ este un sistem de vectori liniar independent.
3. Baza unui spaţiu liniar
Fie (X, K) un spaţiu liniar.
Definiţia 5: Un sistem de vectori S = ⎨vi⎬i∈I se numeşte sistem de
generatori pentru X dacă orice vector din X este o combinaţie liniară (finită)
de vectori din S.
Exemplu
În (ℝn, ℝ), E = ⎨e1, ..., en⎬ ⊂ ℝn, unde e1 = (1, 0, ..., 0)T, ...,
en = (0 ,..., 0, 1)T, este sistem de generatori pentru ℝn, deoarece (∀) x ∈ ℝn,
cu x = (x1, ..., xn)T avem x = x1e1 + ... + xnen.
Definiţia 6: Un sistem de vectori B ⊂ X formează o bază a spaţiului
liniar (X, K) dacă:
1. B este un sistem liniar independent;
2. B este un sistem de generatori pentru X.
Exemplu
În (ℝn, ℝ), mulţimea E = ⎨e1, ..., en⎬ formează o bază, numită baza
canonică, deoarece am văzut mai înainte că E satisface condiţiile din
definiţia bazei.
Definiţia 7: Spaţiul liniar (X, K) se numeşte finit dimensional dacă
are o bază finită. Numărul de vectori ai bazei se numeşte dimensiunea
spaţiului şi se notează dimX.
59
Modele matematice în economie
Exemplu
(ℝn, ℝ) are dimensiunea n, pentru că are baza E = ⎨e1, ..., en⎬; se
scrie dim ℝn = n şi se spune că este spaţiul real n – dimensional.
Teorema 1 (teorema bazei): Orice vector dintr-un spaţiu (X, K) finit
- dimensional se poate exprima în mod unic ca o combinaţie liniară de
vectorii unei baze oarecare a spaţiului.
Demonstraţie:
Fie B = ⎨vi⎪i = m,1 ⎬ o bază a spaţiului liniar (X, K) m-dimensional
şi v ∈ X.
Existenţa
B e bază, deci este şi sistem de generatori; atunci (∀) v ∈ X,
(∃) α1, ..., αm ∈ K astfel încât:
v = α1v1 + ... + αmvm (1)
Unicitatea
Presupunem că scrierea nu este unică:
v = β1v1 + ...+ βmvm şi (∃) αj ≠ βj, 1 ≤ j ≤ m.
Scăzând ultimele două relaţii, avem:
0 = (α1 - β1)v1 + ...+ (αm - βm)vm.
Cum sistemul ⎨v1, ..., vm⎬ e liniar independent (B – bază) rezultă că
αi - βi = 0, (∀) i = m,1 , deci αj = βj, ceea ce contrazice ipoteza. Deci
scrierea este unică.
Definiţia 8: Scalarii α1, ..., αm din relaţia (1) se numesc coordonatele
vectorului v în baza B şi scriem:
vB = (α1, ..., αm)T.
Observaţie: Când B este baza canonică E, nu se mai specifică baza.
60
Complemente de algebră liniară
Propoziţia 3: Orice spaţiu liniar finit – generat are o bază, aleasă
dintre vectorii sistemului de generatori.
Propoziţia 4: Oricare două baze ale unui spaţiu liniar finit
dimensional au acelaşi număr de vectori.
Propoziţia 5: Oricare două spaţii liniare (X, K) şi (Y, K), cu
dimX = dimY sunt izomorfe, adică există o funcţie f: X → Y cu
proprietăţile:
a) f este bijecţie;
b) f(x + y) = f(x) + f(y); (∀) x, y ∈ X;
c) f(αx) = αf(x), (∀) α ∈ K, (∀) x ∈ X.
Consecinţă. Orice spaţiu liniar n - dimensional peste corpul ℝ este
izomorf cu spaţiul (ℝn, ℝ).
De aceea, în continuare se va analiza în detaliu spaţiul (ℝn, ℝ).
4. Spaţiul liniar (ℝn, ℝ)
Fie în spaţiul liniar (ℝn, ℝ) sistemul de vectori ⎨v1, ..., vm⎬ cu
vj = (a1j, a2j, ...., anj)T, j = m,1 , şi A = (aij), i = n,1 , j = m,1 , matricea ale
cărei coloane sunt vectorii daţi.
Teorema 2:
a) Sistemul de vectori ⎨v1, ..., vm⎬ este liniar independent dacă şi
numai dacă rang A = m;
b) Sistemul de vectori ⎨v1, ..., vm⎬ este liniar dependent dacă şi
numai dacă rang A < m.
61
Modele matematice în economie
Demonstraţie:
Fie relaţia:
α1v1 + ...+ αmvm = 0 (2)
în care înlocuim vectorii cu matricele – coloană respective. Avem:
α1
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛=
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛α++
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
0
0
a
a
a
a
nm
m1
m
1n
11
MMKM , relaţie echivalentă cu sistemul
omogen de ecuaţii liniare:
a11α1 + .... + a1mαm = 0
∶ ∶ (3)
an1α1 + ... + anmαm = 0
a cărui matrice este A = (aij), i = n,1 , j = m,1 .
i) Sistemul (3) admite numai soluţia banală α1 = ... = αm = 0 dacă şi
numai dacă rangA = m, caz în care relaţia (2) implică
α1 = ... = αm = 0, deci ⎨v1, ..., vm⎬ - liniar independent.
ii) Sistemul (3) admite şi soluţii diferite de cea banală, deci va exista
cel puţin un scalar αi ≠ 0, i ∈ ⎨1, ..., m⎬, dacă şi numai dacă
rangA < m. Atunci din relaţia (2) rezultă ⎨v1, ..., vm⎬ - liniar
dependent.
Aplicaţie
În (ℝ3, ℝ) se dau vectorii:
v1 = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
201
; v2 = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−41
0; v3 =
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
0aa2
, a ∈ℝ.
Să se determine, în funcţie de a, natura vectorilor daţi.
62
Complemente de algebră liniară
Rezolvare
A = ⇒⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−042a10a01 2
⎪A⎪ = 2a(a - 2) rezultă:
- dacă a ∈ ℝ \ ⎨0, 2⎬, ⎪A⎪ ≠ 0 ⇒ rangA = 3 şi deci sistemul de
vectori este liniar independent;
- dacă a ∈ ⎨0, 2⎬, rangA < 3, sistemul de vectori este liniar
dependent.
Consecinţă: În (ℝn, ℝ), orice sistem de m vectori, cu m > n este
liniar dependent. Evident, deoarece rangA ≤ n < m.
Propoziţia 6: În (ℝn, ℝ), orice sistem de n vectori liniar independent
formează o bază.
Demonstraţie: Fie sistemul ⎨v1, ..., vn⎬ ⊂ ℝn, liniar independent. Să
arătăm că este şi un sistem de generatori. Fie v ∈ ℝn; atunci ⎨v1, ..., vn, v⎬
este liniar dependent conform consecinţei de mai sus, iar din propoziţia 2b)
rezultă că v se scrie ca o combinaţie liniară de vectorii daţi, deci aceştia din
urmă formează un sistem de generatori, deci bază.
Consecinţă: Verificarea condiţiei ca n vectori să formeze o bază în
(ℝn, ℝ) se reduce doar la verificarea independenţei acestora.
Se pot pune următoarele probleme: cunoscându-se un vector din ℝn
dat în baza canonică, cum se determină coordonatele lui într-o altă bază B a
lui ℝn; cum se schimbă coordonatele acelui vector la schimbarea bazei B cu
o altă bază B1. Răspunsul la aceste probleme îl vom avea în următoarele
două propoziţii.
63
Modele matematice în economie
Propoziţia 7:
Fie B = ⎨v1, ..., vn⎬ bază în ℝn, cu vj = (a1j, ..., anj)T, j = n,1 , A = (aij),
i, j = n,1 şi un vector oarecare v ∈ ℝn. Atunci
vB = A-1 ⋅ v
Demonstraţie:
Fie v = (b1, ..., bn)T, bi ∈ℝ, i = n,1 . Din teorema bazei există scalarii
α1, ..., αn astfel încât vB = (α1, ..., αn)T, sau:
v = α1v1+ ... + αnvn, (4)
scalari ce reprezintă coordonatele lui v în baza B.
Înlocuind vectorii v, v1, ... ,vn în (4), obţinem sistemul de ecuaţii
liniare:
a11α1 + .... + a1nαn = b1
∶ ∶ (5)
an1α1 + ... + annαn = bn
care se mai scrie matriceal astfel:
AvB = v (6)
Cum ⎨ v1, ... ,vn⎬ e bază, deci liniar independent, rangA = n →
→ ⎪A⎪ ≠ 0 → (∃) A-1.
În relaţia (6) înmulţim la stânga cu A-1 şi avem:
vB = A-1 ⋅ v (7)
Observaţie: Sistemul (5) este deci sistem de tip Cramer, are soluţie
unică, pe care o putem găsi cu regulile lui Cramer sau cu alte metode
elementare (a reducerii, substituţiei).
Propoziţia 8:
Fie vB = (α1, ..., αn)T, vectorul v în baza B = ⎨v1, ..., vn⎬,
64
Complemente de algebră liniară
vj = (a j1 , ..., anj)T, j = n,1 şi v1B = (α '
1 , ..., α 'n )T vectorul v în noua bază
B1 = ⎨v '1 , ..., v '
n ⎬ cu v 'j = (a '
j1 , ... , a 'nj )
T, j = n,1 , iar A1 = (a 'ij ), i,j = n,1 .
Atunci: v1B = A 1
1− ⋅ A ⋅ vB (8)
Demonstraţie:
Din propoziţia 7 putem scrie:
v = AvB
v = A1v1B
deci: A ⋅ vB = A1 ⋅ v 1B de unde: v1B = A 1
1− ⋅ A ⋅ vB sau vB = A-1 ⋅ A1 ⋅ v 1B .
Aplicaţie
În (ℝ2, ℝ) se dau vectorii: v1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛21
; v2 = ⎟⎟⎠
⎞⎜⎜⎝
⎛13
; v = ⎟⎟⎠
⎞⎜⎜⎝
⎛24
şi v '1 = ⎟⎟
⎠
⎞⎜⎜⎝
⎛41
;
v '2 = ⎟⎟
⎠
⎞⎜⎜⎝
⎛11
. Se cere:
a) să se arate că vectorii ⎨v1, v2⎬ şi ⎨v '1 , v '
2 ⎬ formează respectiv
bazele B şi B1;
b) să se determine vB;
c) folosind rezultatul din 8b) să se determine v1B .
Rezolvare
a) Formăm matricele A şi A1:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛1231
⇒ ⎪A⎪ = -5 ⇒ rangA = 2, adică sistemul ⎨v1, v2⎬ este
liniar independent şi conform propoziţiei 6, formează o bază B. Raţionăm
analog pentru A1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛1411
cu rang A = 2, ⎨v '1 , v '
2 ⎬ = B1.
65
Modele matematice în economie
b) Din relaţia (7), vB = A-1v, unde:
A-1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
−5/15/2
5/35/1 şi deci:
vB = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
−5/15/2
5/35/1⎟⎟⎠
⎞⎜⎜⎝
⎛24
= ⎟⎟⎠
⎞⎜⎜⎝
⎛5/65/2
.
c) Deoarece A 11− = ⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−3/13/4
3/13/1, din relaţia (8) avem:
v1B = A 1
1− ⋅ A ⋅ vB = ⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−3/13/4
3/13/1⎟⎟⎠
⎞⎜⎜⎝
⎛1231
⎟⎟⎠
⎞⎜⎜⎝
⎛5/65/2
= ⎟⎟⎠
⎞⎜⎜⎝
⎛−3/143/2
.
Ca verificare, avem: -32 v '
1 + 3
14 v '2 = ⎟⎟
⎠
⎞⎜⎜⎝
⎛=⎟⎟
⎠
⎞⎜⎜⎝
⎛+⎟⎟
⎠
⎞⎜⎜⎝
⎛−−
24
3/143/14
3/83/2
= v.
Lema substituţiei:
Fie (ℝn, ℝ), B = ⎨a1, ..., an⎬ o bază şi v = ∑=
αn
1jjja ∈ ℝn.
Dacă B1 = ⎨a1, ..., ai-1, v, ai+1, ..., an⎬, atunci:
a) B1 este bază în (ℝn, ℝ) ⇔ αi ≠ 0;
b) Dacă αi ≠ 0 şi x ∈ ℝn cu xB = (λ1, ..., λn)T, atunci
x1B = (λ '
1 , ..., λ 'n )T unde λ
i
i'i α
λ= , λ
i
ijji'j α
λα−λα= , pentru j ≠ i,
1 ≤ j ≤ n.
Demonstraţie:
a) Dacă B1 cu n vectori este bază, atunci este un sistem de vectori
liniar independent, deci din relaţia:
β1a1 + ... + βi-1ai-1 + βiv + βi+1ai+1 + ... + βnan = 0 (9)
rezultă β1 = ... = βn = 0.
66
Complemente de algebră liniară
Dar (9) se mai scrie:
(10) 0aa)(
0aa0va
iiij
n
ij1j
jij
n
ij1j
n
1jjjijj
n
ij1j
ijj
=βα+αβ+β
⇔=⎟⎟⎠
⎞⎜⎜⎝
⎛αβ+β⇔=β+β
∑
∑ ∑∑
≠=
≠= =
≠=
Cum B e bază, deci sistem liniar independent, rezultă:
β1 + α1βi = 0 ∶ βi-1+ αi-1βi = 0 αiβi = 0 βi+1+ αi+1βi = 0 ∶ βn + αnβi = 0
sistem în necunoscutele β1, ..., βn ce va avea numai soluţia nulă dacă
determinantul său:
D =
100
000
010001
n
i
2
1
LL
MLMLMM
LL
MLMLMM
LL
LL
α
α
αα
= αi ≠ 0.
b) Fie x = ∑=
λn
1jjja , v = ∑
=
αn
1jjja şi presupunem αi ≠ 0. Atunci:
αiai = v - α1a1 - ... - αi-1ai-1 - αi+1ai+1 - ... - αnan
ai = ni
n1i
i
1i1i
i
1i1
i
1
i
a...aa...av1αα
−−αα
−αα
−−αα
−α +
+−
− (11)
67
Modele matematice în economie
Cum x = ∑≠=
λ+λn
ij1j
iijj aa , înlocuind ai din (11), avem:
,a...av
a...aav1ax
ni
inn1i
i
i1i1i
i
i
1ii
i1i1i1
i
i11
n
ij1j
j
n
ij1j i
j
iijj
⎟⎟⎠
⎞⎜⎜⎝
⎛αλα
−λ++⎟⎟⎠
⎞⎜⎜⎝
⎛αλα
−λ+αλ
+
+⎟⎟⎠
⎞⎜⎜⎝
⎛αλα
−λ++⎟⎟⎠
⎞⎜⎜⎝
⎛αλα
−λ=⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
α
α−
αλ+λ=
++
+
−−
−
≠=
≠=
∑ ∑
reprezentând scrierea lui x în baza B1. În enunţul lemei substituţiei avem
x1B = (λ '
1 , ..., λ 'n ) şi din unicitatea coordonatelor unui vector într-o bază
rezultă: i
ijji
i
ijj
'j
i
i'i ,
α
λα−λα=
α
λα−λ=λ
αλ
=λ , 1 ≤ j ≤ n, j ≠ i şi
demonstraţia se termină. Observaţii:
1) αi ≠ 0 din enunţul lemei se numeşte pivot, iar regula de calcul
pentru λ 'j , j ∈ n,1 , j ≠ i se numeşte regula dreptunghiului sau
regula pivotului. 2) Lemei substituţiei i se asociază schema:
B a1 a2... ai... an v x a1 1 0 0 0 α1 λ1 a2 0 1 0 0 α2 λ2
∶ ∶ ∶ ∶ ∶ ∶ ∶ ai 0 0 1 0 αi λi
∶ ∶ ∶ ∶ ∶ ∶ ∶ an 0 0 0 1 αn λn
αi ≠ 0 →
B1 a1 a2... ...ai... an v x a1 1 0
i
1
αα
− 0 0 i
i11i11 α
λα−λα=λ
a2 0 1 i
2
αα
−0 0
i
i22i12 α
λα−λα=λ
∶ ∶ ∶ ∶ ∶ ∶ ∶ v 0 0
i
1α
0 1 i
i1i α
λ=λ
∶ ∶ ∶ ∶ ∶ ∶ ∶
αi ≠ 0 →
an 0 0 i
n
αα
− 1 0
i
inni1n α
λα−λα=λ
68
Complemente de algebră liniară
3) Din schema de mai sus se observă că transformarea coeficienţilor se face astfel:
- linia pivotului se împarte la pivot; - coloana pivotului se completează cu 0; astfel această coloană
devine un vector unitar; - celelalte coloane ale vectorilor lui B1 rămân neschimbate; - elementele celorlalte coloane se calculează cu regula
dreptunghiului.
5. Metoda eliminării Gauss - Jordan
Metoda eliminării Gauss – Jordan sau metoda pivotului este aplicabilă calculului iterativ al inversei unei matrici şi rezolvării unui sistem de ecuaţii liniare, cu n necunoscute.
Prezentarea metodei o vom face pentru rezolvarea unui sistem liniar, compatibil determinat, de forma:
a11x1 + ... + a1nxn = b1
∶ (12)
an1x1 + ... + annxn = bn
Notând cu A = (aij), i, j = n,1 , matricea coeficienţilor, b =(b1, ..., bn)T,
x = (x1,..., xn)T, sistemul (12) devine: Ax = b (13)
Presupunem ⎪A⎪ ≠ 0. Fiecare coloană „j” din A, j = n,1 , este un
vector aj ∈ ℝn cu aj = (a1j, ..., anj)T. Atunci A = (a1, ..., an) şi din (13) avem:
(a1, ..., an)⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
n
1
x
xM = b ⇔ x1a1 +...+ xnan = b (14)
69
Modele matematice în economie
Din condiţia ⎪A⎪ ≠ 0 rezultă rangA = n, vectorii a1, ..., an sunt
independenţi deci formează o bază în (ℝn, ℝ), iar din relaţia (14) observăm
că vectorul soluţie x are drept componente coordonatele vectorului b în baza
⎨ a1, ..., an⎬.
Ne propunem, folosind lema substituţiei, să determinăm
coordonatele lui b în baza ⎨ a1, ..., an⎬, pornind de la faptul ştiut că vectorii
b, a1, ..., an sunt daţi în baza canonică.
Pasul 1: Asociem sistemului schema caracteristică lemei substituţiei
(în care nu mai figurăm coloanele vectorilor unitari ei, i = n,1 ).
Baza a1 a2 ... an b
e1 a11 a12 ... a1n b1
e2 a21 a22 ... a2n b2
∶ ∶ ∶ ∶ ∶ ∶
en an1 an2 ... ann bn
Dacă a11 ≠ 0, se alege ca pivot, în caz contrar permutăm unele linii
ale sistemului cu scopul ca elementul de pe linia şi coloana întâi să fie diferit
de zero.
Pasul 2: Aplicăm operaţiile din observaţia 3 de mai sus şi obţinem: Baza a1 a2 ... an b
a1 1 a12/a11 ... a1n/a11
11
1'1 a
bb =
e2 0 a’22 ... a’2n
11
121211'2 a
babab −=
∶ ∶ ∶ ∶ ∶ ∶
en 0 a’n2 ... a’nn
11
11nn11'n a
babab −=
70
Complemente de algebră liniară
Dacă a’22 ≠ 0, îl alegem drept pivot, procedăm analog ca în pasul
precedent, ş.a.m.d., până în final când ajungem la:
Baza a1 a2 ... an b
a1 1 0 ... 0 x1
a2 0 1 ... 0 x2
∶ ∶ ∶ ∶ ∶ ∶
an 0 0 ... 1 xn
Pe coloana lui b vom citi soluţia sistemului.
Aplicaţie
Folosind metoda eliminării Gauss – Jordan, să se rezolve sistemul:
x1 + x2 + x3 = 1
4x1 + 3x2 + 2x3 = -2
2x1 + x2 + x3 = -2
Rezolvare
Matricea sistemului este:
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
112234111
, ⎪A⎪ = -1 ≠ 0.
Sistemul este compatibil determinat şi se poate rezolva cu metoda
eliminării a lui Gauss – Jordan.
71
Modele matematice în economie
Pasul B a1 a2 a3 b 1
e1 e2 e3
1 4 2
1 3 1
1 2 1
1 -2 -2
2
a1 e2 e3
1 0 0
1 -1 -1
1 -2 -1
1 -6 -4
3
a1 a2 e3
1 0 0
0 1 0
-1 2 1
-5 6 2
4
a1 a2 a3
1 0 0
0 1 0
0 0 1
-3 2 2
Soluţia sistemului este x = (-3, 2,2)T, adică x1 = -3, x2 = 2, x3 = 2.
6. Funcţionale liniare
Definiţia 9: Dacă (X, K) este un spaţiu liniar, aplicaţia f: X → K se
numeşte funcţională liniară dacă are proprietăţile:
1) f(x + y) = f(x) + f(y); (∀) x, y ∈ X, adică f e aditivă;
2) f(αx) = αf(x), (∀) α ∈ K, (∀) x ∈ X, adică f e omogenă.
Observaţie: Dacă f e funcţională liniară are loc relaţia:
f(αx + βy) = αf(x) + βf(y), (∀) α,β ∈ K, (∀) x, y ∈ X.
Generalizare: Dacă f e funcţională liniară, atunci:
f(α1x1 + ... + αnxn) = α1f(x1) + ... + αnf(xn) sau
∑∑==
α=⎟⎠
⎞⎜⎝
⎛α
n
1iii
n
1iii )x(fxf ; (∀) αi ∈ K, (∀) xi ∈ X, i = n,1 .
Presupunem că dimX = n şi fie G = ⎨g1, ..., gn⎬ o bază a lui X. Dacă
x ∈ X este un vector arbitrar ales, atunci din teorema bazei avem:
72
Complemente de algebră liniară
x = ∑=
n
1iiigx , unde xi, i = n,1 , sunt coordonatele lui x în baza G.
Aplicând funcţionala liniară f, rezultă:
f(x) = f(∑=
n
1iiigx ) = ∑
=
n
1iii )g(fx = A ⋅ xG, unde A = (a1, ..., an), cu
ai = f(gi), iar xG = (x1, ..., xn)T.
A se numeşte matricea asociată funcţionalei liniare f în baza G.
Aplicaţie
Fie f: ℝ3 → ℝ, f(x) = 2x1 – x2 – 3x3, (∀) x = (x1, x2, x3)T ∈ ℝ3. Se
cere:
a) să se arate că f este funcţională liniară;
b) să se determine matricea A a funcţionalei în baza canonică,
E = ⎨e1, e2, e3⎬, a lui (ℝ3, ℝ).
Rezolvare
a) Fie x = (x1, x2, x3)T, y = (y1, y2, y3)T vectori arbitrari din ℝ3.
Atunci: x + y = (x1 + y1, x2 + y2, x3 + y3)T şi
f(x + y) = 2(x1 + y1) – (x2 + y2) – 3(x3 + y3) =
= (2x1 – x2 – 3x3) + (2y1 – y2 – 3y3) = f(x) + f(y), deci f e aditivă.
Pentru αx = (αx1 , αx2, αx3)T rezultă:
f(αx) = 2αx1 - αx2 -3αx3 = α(2x1 – x2 – 3x3) = αf(x), (∀) α∈ℝ, deci
f e omogenă, adică f e funcţională liniară.
b) A = (a1, a2, a3), cu a1 = f(e1) = 2, a2 = f(e2) = -1, a3 = f(e3) = -3,
deci A = (2, -1, -3).
73
Modele matematice în economie
7. Mulţimi convexe
În cele ce urmează, notaţia X va desemna un punct al unui spaţiu
vectorial şi nu spaţiul vectorial însuşi.
Definiţia 10: Numim segment determinat de X1, X2 ∈ ℝn mulţimea
notată [X1, X2] = ⎨X ⎪ X = λX1 + (1 - λ)X2, λ ∈ [0,1]⎬ adică mulţimea
vectorilor (punctelor) din ℝn care sunt combinaţii liniare convexe de X1 şi
X2 (numite capetele segmentului).
Definiţia 11: Mulţimea C ⊂ ℝn se numeşte mulţime convexă dacă
(∀) X1, X2 ∈ C, ⎨X ⎪ X = λX1 + (1 - λ)X2, λ ∈ [0,1]⎬ ⊂ C, adică pentru
oricare două puncte X1 şi X2 ale sale, ea conţine şi segmentul [X1, X2].
Observaţie: Dacă C este convexă şi X1, ..., Xm ∈ C, atunci (∀) λi ≥
0, i = m,1 , cu ∑=
=λm
1ii 1 , rezultă: ∑
=
λm
1iiiX ∈ C.
Definiţia 12: Un punct X ∈ C se numeşte vârf al mulţimii convexe C
dacă nu există X1 şi X2 ∈ C, X1 ≠ X2, astfel încât
X = λX1 + (1 - λ)X2, λ ∈ (0, 1).
Definiţia 13: Mulţimea punctelor X = (x1, ..., xn)T ∈ ℝn ce satisfac o
relaţie de forma:
a1x1 + ... + anxn = b, aj ∈ ℝ, j = n,1 , b ∈ ℝ, se numeşte hiperplan.
Definiţia 14: Un hiperplan determină în ℝn două semispaţii:
S1 = ⎨X ⎪ X = (x1, ..., xn)T, ∑=
≤n
1jjj bxa ⎬
S2 = ⎨X ⎪ X = (x1, ..., xn)T, ∑=
≥n
1ijj bxa ⎬.
74
Complemente de algebră liniară
Definiţia 15: Intersecţia unui număr finit de semispaţii date de
relaţiile: ∑=
≤n
1jijij bxa , i = m,1 , adică mulţimea soluţiilor unui sistem de
inegalităţi liniare, T = ⎨X ∈ ℝn ⎪ AX ≤ b, A = (aij), i = m,1 , j = n,1 ; b ∈ℝm⎬
se numeşte tronson.
Propoziţia 9: Tronsonul T este o mulţime convexă.
Demonstraţie:
Fie X1, X2 ∈T, deci AX1 ≤ b, AX2 ≤ b. Să arătăm că (∀) λ ∈[0, 1],
X = λX1 + (1 - λ)X2 ∈ T. Într-adevăr:
AX = A[λX1 + (1 - λ)X2] = λAX1 + (1 - λ)AX2 ≤ λb + (1 - λ)b = b.
Deci T e convex, adică mulţimea soluţiilor unui sistem de inegalităţi
liniare este o mulţime convexă.
Definiţia 16: Poliedrul convex este un tronson convex mărginit.
Evident, numărul vârfurilor unui poliedru convex este finit.
Propoziţia 10: Dacă H este un poliedru convex, atunci orice punct
X ∈ H poate fi scris ca o combinaţie liniară convexă de vârfurile lui H.
Demonstraţie:
Pentru simplitatea justificării considerăm H ⊂ ℝ2, adică e interiorul
unui poligon împreună cu laturile sale (ca de exemplu în figura de mai jos).
A3
A4 M
X A2
A5
A1
75
Modele matematice în economie
Distingem cazurile:
a) Dacă X ≡ A1, sau oricare alt vârf, rezultă
X = 1 ⋅ A1 + 0(A2 + ... + A5), deci X e combinaţie liniară convexă de
vârfurile lui H.
b) Dacă X aparţine segmentului determinat de două vârfuri oarecare
ale lui H, de exemplu A1 şi A2, din definiţia 10 a segmentului, rezultă că:
X = λA1 + (1 - λ)A2, 0 ≤ λ ≤ 1.
c) Dacă X nu se află în cazurile a) sau b), atunci este un punct în
interiorul poligonului; unim X cu un vârf, de exemplu A1, prelungim
segmentul [A1, X] şi notăm cu M intersecţia cu latura A2A3. Atunci putem
scrie:
X = λA1 + (1 - λ)M = λA1 + (1 - λ)[µA2 + (1 - µ)A3] =
= λA1 + (1 - λ)µA2 + (1 - λ)(1 - µ)A3
care este combinaţie liniară convexă de vârfurile lui H (cele ce nu apar au
coeficienţii nuli), pentru 0 ≤ λ ≤ 1 şi 0 ≤ µ ≤ 1, deoarece
λ + (1 - λ)µ + (1 - λ)(1 - µ) = 1.
76
Complemente de algebră liniară
8. Probleme
1. Fie ℝn = ℝ × ... × ℝ = ⎨x⎪x = (x1, ..., xn)T, xi ∈ ℝ, i = n,1 ⎬. Să se
arate că ℝn este un spaţiu liniar (vectorial) peste ℝ.
Rezolvare
Dacă x, y ∈ ℝn, x = (x1, ..., xn)T, y = (y1, ..., yn)T şi α ∈ℝ, definim
operaţiile:
x + y = (x1 + y1, ..., xn + yn)T ∈ℝn
α ⋅ x = (αx1, ..., αxn) ∈ℝn.
ce reprezintă legea de compoziţie internă notată „+”, respectiv legea de
compoziţie externă notată „⋅”.
1) (ℝn, +) este grup abelian, deoarece:
a) x + y = y + x; (∀) x, y ∈ℝn, adică adunarea e comutativă.
Într-adevăr:
x + y = (x1 + y1, ..., xn + yn)T = (y1 + x1, ..., yn + xn)T = y + x.
b) (x + y) + z = x + (y + z), (∀) x, y, z ∈ℝn, adică adunarea e
asociativă. Avem:
(x + y) + z = (x1 + y1, ..., xn + yn)T + (z1, ..., zn)T =
= ((x1+ y1) + z1, ... ,(xn + yn) + zn)T =
= (x1 + (y1 + z1), ..., xn + (yn + zn))T = x + (y + z).
Am folosit aici asociativitatea adunării numerelor reale şi faptul că
z = (z1, ..., zn)T ∈ ℝn.
77
Modele matematice în economie
c) 0 = (0, ..., 0)T ∈ℝn este elementul neutru deoarece
x + 0 = 0 + x = x; (∀) x ∈ℝn.
d) oricare ar fi x = (x1, ..., xn)T ∈ℝn, există simetricul lui,
- x = (-x1, ..., -xn)T astfel încât: x + (-x) = (-x) + x = 0
2) Legea externă are proprietăţile:
a) α⋅(x + y) = α⋅x + α⋅y, (∀) α ∈ℝ, (∀) x, y ∈ℝn.
α⋅(x + y) = α⋅(x1 + y1, ..., xn + yn)T = (α(x1 + y1), ..., α(xn + yn))T =
= (αx1 + αy1, ..., αxn + αyn)T = (αx1, ... , αxn)T + (αy1 ,..., αyn)T =
= α⋅(x1, ... , xn)T + α⋅(y1 ,..., yn)T = α⋅x + α⋅y.
b) (α + β)⋅x = α⋅x + β⋅x; (∀) α, β ∈ ℝ, (∀) x ∈ ℝn.
(α + β)⋅x = (α + β)(x1, ..., xn)T = ((α + β)x1, ..., (α + β)xn)T =
= (αx1 + βx1, ..., αxn + βxn)T = (αx1, ..., αxn)T + (βx1, ..., βxn)T =
= α⋅(x1, ..., xn)T + β⋅(x1, ..., xn)T = α⋅x + β⋅x.
Am folosit aici distributivitatea înmulţirii numerelor reale faţă de
adunarea lor.
c) α⋅(β⋅x) = (αβ)⋅x; (∀) α, β ∈ℝ, (∀) x ∈ℝn.
α⋅(β⋅x) = α⋅(β⋅(x1, ..., xn)T) = α⋅(βx1, ..., βxn)T =(α(βx1),...,α(βxn))T =
= ((αβ)x1, ..., (αβ)xn)T = (αβ)(x1, ..., xn)T = (αβ)⋅x.
Am folosit asociativitatea înmulţirii numerelor reale.
d) 1 ⋅ x = x; (∀) x ∈ℝn.
2. Fie vectorii v1 = (4, -1, 2, 1)T, v2 = (-2, 1, -1, -1)T şi
v3 = (2, 1, 1, -1)T.
78
Complemente de algebră liniară
a) Să se determine combinaţia liniară de v1, v2, v3 cu respectiv
scalarii 1, -1, -2.
b) Să se determine m, n ∈ℝ, astfel încât: mv1 + nv2 = v3.
Rezolvare
a) v = 1v1 – 1v2 – 2v3 = 1(4, -1, 2, 1)T – 1(-2, 1, -1, -1)T -
- 2(2, 1, 1, -1)T = (2, -4, 1, 2)T.
b) Relaţia m(4, -1, 2, 1)T + n(-2, 1, -1, -1)T = (2, 1,1, -1)T este
echivalentă cu sistemul:
4m – 2n = 2
-m + n = 1
2m – n = 1
m – n = -1
ce are soluţia m = 2 şi n = 3.
3. Fie vectorii v1 = (3, -2, 0)T, v2 = (1, -1, 1)T, v3 = (m, 2, 4)T.
a) Să se determine m astfel încât v1, v2, v3 să fie liniar dependenţi şi
să se găsească legătura dintre ei;
b) Arătaţi că pentru m = 2 vectorii formează o bază în ℝ3;
c) Determinaţi coordonatele vectorului v = (5, -15, -7)T în baza de la
punctul b.
Rezolvare
Formăm matricea ale cărei coloane sunt vectorii daţi.
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−−
410212m13
.
79
Modele matematice în economie
Avem:
⎪A⎪ = -2m – 10.
Dacă m = -5, ⎪A⎪ = 0 şi rangA < 3; 3 fiind numărul vectorilor,
rezultă că vectorii sunt liniar dependenţi şi atunci v3 = (-5, 2, 4)T.
Din definiţia dependenţei liniare rezultă că există αi ≠ 0, i ∈ 3,1 ,
astfel încât:
α1v1 + α2v2 + α3v3 = 0 (1)
0 este vectorul nul din ℝ3.
Înlocuim în relaţia (1) vectorii şi obţinem sistemul
3α1 + α2 - 5α3 = 0
-2α1 - α2 + 2α3 = 0
α2 + 4α3 = 0
Determinant principal poate fi ales
∆p = 01012≠
−−. Avem:
-2α1 - α2 = -2α3
α2 = -4α3 , de unde α1 = 3α3 şi înlocuind în relaţia (1) pe
α1 şi α2 avem 3α3v1 - 4α3v2 + α3v3 = 0
Cum α3 ≠ 0 (altfel vectorii ar fi liniar independenţi), simplificăm
prin α3 şi relaţia căutată este:
3v1 – 4v2 + v3 = 0 .
b) Pentru m = 2, ⎪A⎪ = - 14 ≠ 0, atunci rangA = 3 şi vectorii sunt
liniar independenţi, deci v1, v2, v3 formează o bază B în ℝ3. Din teorema
bazei rezultă că vectorul v = λ1v1 + λ2v2 + λ3v3. (2)
80
Complemente de algebră liniară
c) Introducem, în relaţia (2) vectorii daţi şi obţinem:
3λ1 + λ2 + 2λ3 = 5
-2λ1 - λ2 + 2λ3 = -15 (3)
λ2 + 4λ3 = -7
sistem de tip Cramer, cu soluţie unică, pe care o determinăm cu una din
metodele cunoscute. Găsim:
λ1 = 2, λ2 = 5, λ3 = -3. Atunci:
v = 2v1 + 5v2 – 3v3 sau
vB = (2, 5, -3)T.
Observaţie: Rezolvarea sistemului (3) se poate face prin regulile lui
Cramer, metoda reducerii, metoda substituţiei sau metoda Gauss - Jordan (a
eliminării). Pe aceasta din urmă o aplicăm în continuare.
Organizăm calculele în următorul tabel:
A b 3 1 2 -2 -1 2 0 1 4
5 -15 -7
1 1/3 2/3 0 -1/3 10/3 0 1 4
5/3 -35/3
-7 1 0 4 0 1 -10 0 0 14
-10 35 -42
1 0 0 0 1 0 0 0 1
2 5 -3
de unde vB = (2, 5, -3)T.
4. Fie v1, v2, v3 ∈ℝn, liniar independenţi. Să se cerceteze natura
sistemului de vectori ⎨v1 + v2; v1 – 2v2 + v3; v2 + 3v3⎬.
81
Modele matematice în economie
Rezolvare
Fie α1, α2, α3 scalari astfel încât:
α1(v1 + v2) + α2(v1 – 2v2 + v3) + α3(v2+ 3v3) = 0 ,
relaţie ce se mai scrie astfel:
(α1 + α2)v1 + (α1 - 2α2 + α3)v2 + (α2 + 3α3)v3 = 0
Dar v1, v2, v3 liniar independenţi, implică sistemul:
α1 + α2 = 0
α1 - 2α2 + α3 = 0
α2 + 3α3 = 0
a cărui unică soluţie este α1 = α2 = α3 = 0, şi deci sistemul de vectori
cercetat este liniar independent.
5. În ℝ2 se dau bazele B = ⎨v1, v2⎬ cu v1 = (3, -1)T, v2 = (2, 1)T şi
B’ = ⎨v’1, v’2⎬ cu v’1 = (4, 2)T, v’2 = (3, 2)T. Fie vectorul v ∈ ℝ2. Să se
găsească legătura dintre coordonatele lui v în cele două baze.
Rezolvare
Fie A şi A’ matricele corespunzătoare celor două baze:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛− 11
23, A’ = ⎟⎟
⎠
⎞⎜⎜⎝
⎛2234
Din relaţiile:
v = AvB şi v = A’vB’ rezultă AvB = A’vB’, de unde
vB = A-1A’vB’ şi vB’ = (A’)-1AvB (4)
Dar: A-1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛ −3121
51 şi (A’)-1 = ⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−4232
21 ,
82
Complemente de algebră liniară
iar:
A-1A’ = ⎟⎟⎠
⎞⎜⎜⎝
⎛ −=⎟⎟
⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛ −91010
51
2234
3121
51
(A’)-1A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
=⎟⎟⎠
⎞⎜⎜⎝
⎛−⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−01019
21
1123
4232
21
Atunci, din (4), avem:
vB = ⎟⎟⎠
⎞⎜⎜⎝
⎛ −91010
51 vB’ şi vB’ = ⎟⎟
⎠
⎞⎜⎜⎝
⎛− 010
1921 vB.
6. Să se cerceteze dacă următoarele funcţionale sunt liniare:
a) f: ℝ4→ℝ, f(x)=x1 + 3x2 – x3 + 2x4 + 1, (∀)x= (x1, x2, x3, x4)T∈ℝ4;
b) f: ℝ3→ℝ, f(x)= 5x1 - 4x2 + x3, (∀) x = (x1, x2, x3)T ∈ ℝ3.
Rezolvare
a) Fie x şi y ∈ℝ4 cu x = (x1, ..., x4)T, y = (y1, ..., y4)T şi α, β ∈ℝ.
f(αx + βy) = f(αx1 + βy1, ..., αx4 + βy4) =(αx1 + βy1) + 3(αx2 + βy2)-
– (αx3 + βy3) + 2(αx4 + βy4) + 1 = α(x1 + 3x2 – x3 + 2x4) + β(y1 + 3y2 – y3 +
+ 2y4) + 1 = α(f(x) – 1) + β(f(y) – 1) + 1 = αf(x) + βf(y) +1 - α - β.
Cum f(αx + βy) ≠ αf(x) + βf(y), pentru α + β ≠ 1, rezultă că f nu
este funcţională liniară.
b) Fie x, y ∈ℝ3, x = (x1, x2, x3)T, y = (y1, y2, y3)T şi α,β ∈ℝ.
f(αx + βy) = f(αx1 + βy1, αx2 + βy2, αx3 + βy3) =
= 5(αx1 + βy1) – 4(αx2 + βy2) + (αx3 + βy3) =
= α(5x1 – 4x2 + x3) + β(5y1 – 4y2 +y3) = αf(x) + βf(y), rezultă că f
este funcţională liniară.
83
Modele matematice în economie
7. Fie f: ℝ2 → ℝ, f(x) = 2x1 – 3x2, (∀) x = (x1, x2)T ∈ ℝ2.
a) Să se arate că f este funcţională liniară;
b) Să se determine matricea A a funcţionalei în baza canonică
E = ⎨e1, e2⎬, cu e1 = (1, 0)T, e2 = (0, 1)T;
c) Să se determine matricea A’ a funcţionalei în baza B’ = ⎨v1, v2⎬
cu v1 = (2, 1)T, v2 = (-1, 1)T.
Rezolvare
a) Fie x, y ∈ ℝ2, x = (x1, x2)T, y = (y1, y2)T, α, β∈ℝ.
f(αx + βy) = f(αx1 + βy1, αx2 + βy2) = 2(αx1 + βy1) – 3(αx2 + βy2) =
= α(2x1 – 3x2) + β(2y1 – 3y2) = αf(x) + βf(y).
b) Ştim că A = (a1, a2), unde a1 = f(e1) = 2 ⋅ 1 – 3 ⋅ 0 = 2 şi
a2 = f(e2) = 2 ⋅ 0 – 3 ⋅ 1 = -3, deci A = (2, -3).
c) A’ = (a’1, a’2), a’1 = f(v1) = 2 ⋅ 2 – 3 ⋅ 1 = 1,
a’2 = f(v2) = 2(-1) – 3 ⋅ 1 = - 5, deci A’ = (1, -5).
8. Mulţimea soluţiilor unui sistem de ecuaţii liniare şi omogene este
o mulţime convexă.
Rezolvare
Fie sistemul liniar şi omogen:
a11x1 + ...+ a1nxn = 0
…
am1x1 + ...+ amnxn = 0
84
Complemente de algebră liniară
Notăm A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
mn1m
n111
a...a
a...aM şi X =
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
n
1
x
xM
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛=
0
00 M .
Atunci sistemul se mai scrie:
AX = 0 (5)
Fie X1 şi X2 două soluţii ale sistemului din relaţia (5), deci AX1 = 0
şi AX2 = 0 . Fie λ ∈ [0,1] şi X = λX1 + (1 - λ)X2. Atunci:
AX = A[λX1 + (1 - λ)X2] = λAX1 + (1 - λ)AX2 = λ0 + (1 - λ) 0 = 0
de unde rezultă că X este soluţie a sistemului (5).
9. Dacă C este o mulţime convexă şi Xi ∈ C, i = n,1 , atunci
X = ∑=
λn
1iiiX , cu λi ≥ 0, ∑
=
λn
1ii = 1, aparţine lui C.
Rezolvare
Aplicăm principiul inducţiei complete. Pentru n = 2 proprietatea este
adevărată din definiţia lui C ca mulţime convexă.
Presupunem adevărată proprietatea pentru k, adică:
Y = ∑=
λk
1iiiX ∈ C, (∀) λi ≥ 0, i = k,1 , ∑
=
λk
1ii = 1.
Să considerăm Z = ∑+
=
µ1k
1iiiX , cu µk+1 ∈ (0,1) şi ∑
+
=
µ1k
1ii = 1, µi ≥ 0.
Avem Z = (1 - µk+1)∑=
+++
µ+µ−µk
1i1k1ki
1k
i XX1
.
Deoarece ∑=
µk
1ii = 1 - µk+1, din ipoteza de inducţie rezultă că
85
Modele matematice în economie
∑ ∑= =+
λ=µ−µk
1i
k
1ii
'ii
1k
i XX1
= Y’ ∈ C şi mai departe
(1 - µk+1)Y’ + µk+1Xk+1 = Z ∈ C, din convexitatea lui C. Deci
proprietatea e adevărată şi pentru k + 1 de unde rezultă adevărată pentru
orice n ∈ ℕ*.
86
1. Introducere În cele mai diverse ramuri ale ştiinţelor economice apar probleme a
căror rezolvare poate fi dată prin mai multe alternative. Pentru a diferenţia
aceste moduri de rezolvare trebuie urmărit un scop şi rezolvarea cea mai
bună este cea în care scopul este satisfăcut în cel mai înalt grad.
Rezultatul analizei economice conduce la alegerea unor valori pentru
variabilele ce descriu procesul şi care pot fi mărimi economice sau fizice
(bunuri materiale, valori băneşti, distanţe etc.). Condiţiile concrete ale
studiului introduc limitări în formularea problemei. Soluţia optimă este
aceea care conduce la cea mai bună alegere a valorilor variabilelor în
condiţiile îndeplinirii restricţiilor impuse.
Pentru rezolvarea acestui gen de probleme, matematica oferă
economistului un grup de metode şi tehnici de calcul care constituie obiectul
capitolului numit programare matematică. Rolul economistului este de a-şi
valorifica funcţia economică în analiza justă a situaţiei concrete, în a
diferenţia aspectele secundare de cele principale, de a aplica politica
economică optimă în cazurile concrete studiate.
În formularea unei probleme de programare matematică se parcurg
etapele:
a) stabilirea variabilelor x1, ..., xn, adică a vectorului
X = (x1, ..., xn)T ∈ℝn;
PROGRAMARE LINIARĂ3
87
Modele matematice în economie
b) stabilirea obiectivului propus, o funcţie de x1, ..., xn, adică f(X),
pentru care se va aplica un procedeu de maximizare sau
minimizare;
c) stabilirea restricţiilor, legături între variabile şi limitări ale
acestora fără de care problema nu are valoare practică, ce pot fi de
forma gi(X) ≤ 0, i = m,1 . Restricţiile de forma xj ≥ 0, j = n,1 ,
numite condiţii de nenegativitate, apar când variabilele reprezintă
cantităţi ce au o interpretare reală doar dacă nu sunt negative.
În concluzie, problema generală a programării matematice se enunţă
astfel: să se determine valoarea maximă sau minimă a funcţiei
f(X) = f(x1,...,xn) în condiţiile gi(X) = gi(x1,...,xn) ≤ 0, i = m,1 , unde
f, gi: ℝn →ℝ.
Funcţia f ce se optimizează se numeşte funcţie obiectiv sau funcţie de
eficienţă.
Dacă funcţiile f şi gi, i = m,1 , sunt funcţii liniare spunem că
problema este de programare liniară şi de acest caz ne vom ocupa în cele ce
urmează.
Pentru a prezenta intuitiv o serie de noţiuni şi proprietăţi ce vor fi
expuse riguros în acest capitol dăm următorul:
Exemplu:
Resursele R1, ..., R4 (materii prime, forţă de muncă, investiţii în bani
etc.) disponibile respectiv în cantităţile 12, 8, 16, 12 unităţi convenţionale se
vor utiliza pentru producerea activităţilor A1 şi A2 (produse, piese, proiecte
etc.). Pentru realizarea unei unităţi din A1 se folosesc respectiv 2, 1, 4, 0, iar
pentru o unitate din A2, 2, 2, 0, 4 unităţi din resursele date. Venitul pentru o
88
Programare liniară
unitate din A1 este 2 unităţi băneşti, iar pentru o unitate din A2, de 3 unităţi
băneşti.
Să se determine nivelul activităţilor A1 şi A2 astfel încât, folosind
raţional resursele disponibile, să se obţină venitul total maxim.
Rezolvare
Pentru a găsi modelul matematic al problemei strângem datele
iniţiale în următorul tabel:
Ri/Aj A1 A2 Disponibil R1 2 2 12 R2 1 2 8 R3 4 0 16 R4 0 4 12 Venitul unitar
2 3
Notăm apoi cu x1 şi x2 nivelul activităţilor A1 respectiv A2. Datele
expuse conduc imediat la scrierea următoarelor relaţii:
2x1 + 2x2 ≤ 12
x1 + 2x2 ≤ 8
4x1 ≤ 16
4x2 ≤ 12 , x1 ≥ 0, x2 ≥ 0, iar venitul total va fi dat de
funcţia f(x1, x2) = 2x1 + 3x2 pentru care vom căuta valoarea maximă.
Rezolvarea o vom face prin metoda grafică. În acest scop se
consideră sistemul rectangular de axe x1 O x2 şi se determină mulţimea
perechilor (x1, x2) ce verifică restricţiile de mai sus şi condiţia de
nenegativitate.
Astfel, restricţiei 2x1 + 2x2 ≤ 12 i se ataşează dreapta
(d1): 2x1 + 2x2 = 12 care împarte planul ℝ2 în două regiuni, una dintre
acestea fiind soluţia inecuaţiei. Dreapta (d1) intersectează axele în punctele
89
Modele matematice în economie
A1(6, 0) şi B1(0, 6) şi deoarece originea O(0,0) verifică inecuaţia rezultă că
semiplanul care conţine originea este soluţia inecuaţiei.
Analog restricţiei x1 + 2x2 ≤ 8 i se ataşează dreapta (d2): x1 + 2x2 = 8,
ce intersectează axele în A2(8, 0) şi B2 (0, 4); regiunea ce conţine originea
este soluţie a inecuaţiei; restricţiei 4x1 ≤ 16 îi asociem dreapta (d3): 4x1 = 16
ce taie Ox1 în A3(4, 0) şi e paralelă cu Ox2. Originea verifică inecuaţia deci
semiplanul ce o conţine este soluţia inecuaţiei date; restricţiei 4x2 ≤ 12 îi
asociem dreapta (d4): 4x2 = 12 ce taie axa Ox2 în B4(0, 3) şi este paralelă cu
Ox1. Originea verifică restricţia, deci semiplanul ce conţine originea este
soluţia inecuaţiei.
Condiţia de nenegativitate x1, x2 ≥ 0 ne spune că mulţimea căutată va
fi în cadranul I.
Intersecţia celor 4 regiuni în cadranul I ne dă zona haşurată din
figura de mai jos.
x2
B1(0, 6) (d1)
14/3
B2(0, 4)
(d3)
B4(0,3) • (d4)
O(0,0) A3(4,0) A1(6, 0) 7 A2(8, 0) x1
D C
(d2)
B
A
•
•
•
90
Programare liniară
Notăm cu O, A, B, C, D vârfurile mulţimii căutate ce au respectiv
coordonatele:
Ox1 ∩ (d3) = A(4, 0)
d1 ∩ d2 ∩ d3 = B(4, 2)
d2 ∩ d4 = C(2, 3)
Ox2 ∩ d4 = D(0, 3)
Determinăm valorile lui f în fiecare vârf şi obţinem:
f0(0,0) = 0; fA(4, 0) = 8; fB(4, 2) = 14; fC(2, 3) = 13 şi fD(0, 3) = 9.
Soluţia optimă va fi în punctul B, unde [max]f(x) = 14 pentru x1 = 4
şi x2 = 2. Că lucrurile stau într-adevăr aşa, o probează următorul
raţionament.
Dacă egalăm 2x1 + 3x2 cu V, V ≥ 0 obţinem o familie de drepte
⎨(x1, x2) ⏐ 2x1 + 3x2 = V⎬V≥0, paralele, având aceeaşi pantă, α = - 32 .
Acestea intersectează ambele axe de coordonate astfel încât raportul
lungimilor segmentului de pe ordonată şi a segmentului de pe abscisă este
de 2/3. Se poate observa uşor că orice punct al mulţimii admisibile (haşurată
în figură) se află pe una şi numai una din aceste drepte. Pentru fiecare astfel
de punct (x1, x2) punem în evidenţă intersecţia dreptei din familie
corespunzătoare lui cu axa absciselor, de forma (x’1, 0). Dar 2x1 + 3x2 = V =
= 2x’1 şi, deci, ne interesează acel(e) punct(e) pentru care x’1 (deci şi V) este
cel mai mare.
În cazul de faţă, din figură rezultă că punctul B satisface această
cerinţă, iar dreapta respectivă este cea care trece prin punctele (7, 0) şi
(0, 14/3) (reprezentată punctat).
91
Modele matematice în economie
Observaţii
1) Ceva mai departe se va demonstra teorema ce justifică căutarea
soluţiei optime în vârfurile mulţimii de puncte ce satisfac
restricţiile problemei de programare liniară.
2) Resursele R1, R2, R3 sunt consumate în întregime în vreme ce din
R4 mai rămân 4 unităţi date de diferenţa dintre disponibil şi ceea
ce se consumă.
3) Metoda grafică nu poate fi aplicată decât în cazul problemelor cu
cel mult trei variabile.
4) O generalizare a problemei precedente ar avea forma:
Resursele Ri, i = m,1 , disponibile respectiv în cantităţile bi, i = m,1 ,
pot fi utilizate în producerea activităţilor Aj, j = n,1 . Se cunosc veniturile
unitare pe activităţi cj, j = n,1 precum şi coeficienţii tehnologici aij, i = m,1 ,
j = n,1 , respectiv cantităţile din fiecare resursă Ri necesare realizării unei
unităţi din Aj, i = m,1 , j = n,1 ; să se determine nivelul xj al activităţilor Aj,
j = n,1 , astfel încât venitul total să fie maxim.
Reprezentăm datele problemei în următorul tabel:
Ri/Aj A1...Aj...An Disponibil R1 ... Ri ... Rm
a11...a1j...a1n
... ai1...aij...ain ... am1...amj...amn
b1 ... bi ... bm
Venitul unitar
c1 ... cj ... cn
92
Programare liniară
Modelul matematic se scrie astfel:
[max]f(X) = ∑=
n
1jjjxc (1)
≤∑=
n
1jjji xa bi, i = m,1 (2)
xj ≥ 0, j = n,1 (3)
Notând A = (aij), i = m,1 , j = n,1 ; sau A = (a1, ..., an), b = (b1, ...,
bm)T, C = (c1, ..., cn), X = (x1, ..., xn)T, problema se poate scrie sub formă
matriceală: [max]f(X) = CX
AX ≤ b
X ≥ 0 sau vectorială:
[max]f(X) = c1x1 + ... + cnxn (1’)
a1x1 + ... + anxn ≤ b (2’)
x1, ..., xn ≥ 0 (3’)
unde aj = (a1j, ..., amj)T este coloana j din matricea A.
Forma generală a unei probleme de programare liniară este:
[optim]f(X) = ∑=
n
1jjjxc (4)
∑=
≤n
1jijij bxa , i ∈ ⎨1, ..., k⎬
∑=
=n
1jijij bxa , i ∈ ⎨k+1, ..., p⎬ (5)
∑=
≥n
1jijij bxa , i ∈ ⎨p+1, ..., m⎬
xj ≥ 0, j ∈ ⎨1, ..., s⎬
xj oarecare, j ∈ ⎨s+1,..., v⎬ (6)
93
Modele matematice în economie
xj ≤ 0, j ∈ ⎨v+1,..., n⎬
Pentru metoda de rezolvare pe care o vom prezenta este important ca
o problemă de tipul (4), (5), (6) să fie adusă la forma standard, adică toate
restricţiile din (5) să fie egalităţi şi toate variabilele xj ≥ 0, j = n,1 .
Acest lucru presupune efectuarea următoarelor transformări:
1) la fiecare restricţie de tipul „≤” se adaugă în membrul stâng o
variabilă de compensare nenegativă;
2) din membrul stâng al restricţiilor de tipul „≥” se scade o variabilă
de compensare nenegativă;
Observaţie: În exemplul de mai sus, dacă am aduce problema la
forma standard, variabilele de compensare au semnificaţia unor cantităţi de
produse (activităţi) ce nu se efectuează, deci contribuţia lor la venitul total
este nulă, adică în funcţia de eficienţă variabilele de compensare vor avea
coeficienţii cj nuli.
3) în toate restricţiile şi în funcţia obiectiv se fac substituţiile:
xj = -x’j, dacă xj < 0 şi xj = uj – vj, uj, vj ≥ 0, dacă xj este oarecare.
Astfel toate restricţiile devin egalităţi şi toate variabilele sunt
nenegative, deci problema are forma standard:
[optim]f(X) = CX (7)
AX = b (8)
X ≥ 0 (9) sau:
(opt)f(X) = c1x1 + ...+ cnxn (7’)
a1x1 + ... + anxn = b (8’)
x1, ..., xn ≥ 0 (9’)
4) orice problemă de maxim poate fi transpusă pentru minim şi
reciproc, datorită relaţiei evidente;
[max]f(X) = -[min][-f(X)] şi [min]f(X) = -[max][-f(X)]
94
Programare liniară
În sfârşit, există multe cazuri practice când problemele apar sub una
din formele particulare:
[max]f(X) = ∑=
n
1jjjxc
i
n
1jjij bxa ≤∑
=
, i = m,1 (10)
xj ≥ 0, j = n,1
sau:
[min]f(X) = ∑=
n
1jjjxc
i
n
1jjij bxa ≥∑
=
, i = m,1 (11)
xj ≥ 0, j = n,1
numite forme canonice, dacă bi ≥ 0, i = m,1 .
2. Soluţiile problemelor de programare liniară
Considerăm problema de programare liniară sub forma standard dată
de relaţiile (7), (8), (9).
Definiţia 1.
Vectorul X ∈ℝn, X = (x1, ..., xn)T, se numeşte soluţie posibilă
(admisibilă, program) dacă satisface relaţiile (8) şi (9). Notăm cu P
mulţimea soluţiilor posibile.
95
Modele matematice în economie
Definiţia 2.
Dacă X ∈P satisface şi condiţia (7), X se numeşte soluţie optimă.
Mulţimea soluţiilor optime o notăm O.
Observaţie: Se impune o condiţie pentru compatibilitatea sistemului
(8), anume rangA = m, iar pentru nedeterminarea acestui sistem se cere ca
să avem m < n. Celelalte cazuri nu au importanţă practică din punctul de
vedere al programării liniare.
Definiţia 3.
Se numeşte bază a sistemului (8) cu rangA = m < n, orice bază B a
spaţiului (ℝm, ℝ) în componenţa căreia intră numai vectori coloană din A.
Observaţie: B ⊂ A, B matrice nesingulară de ordinul m, admite
inversa B-1.
Definiţia 4.
Cele m variabile asociate coloanelor lui B se numesc variabile de
bază. Ele formează un subvector al lui X şi se notează XB. Restul de n – m
variabile se numesc variabile secundare şi formează subvectorul lui X notat
cu Xs.
Dacă Xs = 0 sistemul din (8) devine:
BXB = b, de unde XB = B-1b.
Observaţie: Dacă B este baza canonică atunci XB = b.
Definiţia 5.
Fie o bază B = ⎨a1, ..., am⎬. Vectorul X = (XB, Xs), cu XB = B-1b,
XS = 0, X ∈ P se numeşte soluţie posibilă de bază. Dacă XB are m
componente pozitive, X va fi soluţie posibilă de bază nedegenerată, în caz
contrar va fi degenerată. Notăm PB mulţimea soluţiilor posibile de bază.
96
Programare liniară
Exemplu
Fie sistemul:
3x1 – 6x3 + x4 = 6
-x1 + x2 + 2x3 = 4
Matricea sistemului este:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
−02111603
, cu vectorii: a1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛−13
; a2 = ⎟⎟⎠
⎞⎜⎜⎝
⎛10
; a3 = ⎟⎟⎠
⎞⎜⎜⎝
⎛−26
;
a4 = ⎟⎟⎠
⎞⎜⎜⎝
⎛01
.
Deoarece rangA = 2, sistemul este compatibil dublu nedeterminat. O
soluţie poate fi găsită astfel:
3x1 = 6 + 6x3 - x4
-x1 + x2 = 4 - 2x3
unde pentru x3 = 1; x4 = 3 găsim x1 = 3 şi x2 = 5. Deci, conform definiţiei 1,
vectorul X = (3, 5, 1, 3)T este o soluţie posibilă.
Vectorii ⎨a4, a2⎬ formează baza canonică, deci variabilele x4 şi x2 vor
fi variabile de bază, iar celelalte, x1 şi x3 vor fi variabile secundare. Dacă
x1 = x3 = 0, obţinem x2 = 4 şi x4 = 6, adică vectorul X = (0,4,0,6)T este o
soluţie posibilă de bază, nedegenerată, conform definiţiei 5.
Teorema 1: Mulţimea soluţiilor posibile P este convexă.
Demonstraţie
Excludem cazul când P este redusă la un singur element, deoarece
concluzia este banală. Admitem că există cel puţin două soluţii X1, X2 ∈P,
adică AX1 = b, X1 ≥ 0 şi AX2 = b, X2 ≥ 0.
Fie X = λX1 + (1 - λ)X2, 0 ≤ λ ≤ 1, o combinaţie liniară convexă de
X1 şi X2. Vom arăta că X ∈ P adică AX = b şi X ≥ 0.
97
Modele matematice în economie
Într-adevăr:
AX = A[λX1 + (1 - λ)X2] = λAX1 + (1 - λ)AX2 = λb + (1 - λ)b = b
X ≥ 0 deoarece X1 ≥ 0, λX1 ≥ 0, X2 ≥ 0, (1 - λ)X2 ≥ 0.
Se poate demonstra că dacă mulţimea soluţiilor posibile P este
nevidă, atunci există cel puţin o soluţie posibilă de bază (PB ≠ ∅).
Dăm în continuare un rezultat deosebit de important.
Teorema 2: Orice soluţie posibilă de bază X este un vârf al lui P şi
reciproc, orice vârf al lui P este o soluţie posibilă de bază.
Demonstraţie
Fie X soluţie posibilă de bază. Să demonstrăm că e vârf al lui P. Fără
a restrânge generalitatea, presupunem că X = (x1, ..., xm, 0, ..., 0)T pentru
baza B = ⎨a1, ..., am⎬.
Prin absurd, presupunem că X nu este vârf al lui P. Cum X ∈ P,
mulţime convexă, există Y, Z ∈ P, Y = (y1, ..., yn)T, Z = (z1, ..., zn)T, Y ≠ Z,
astfel încât:
X = λY + (1 - λ)Z, 0 < λ < 1.
Rezultă că:
xj = λyj + (1 - λ)zj, j = n,1 .
Dar xj = 0, pentru j = m+1,..., n, implică
λyj + (1 - λ)zj = 0, j = m+1, ..., n.
Cum λ > 0, 1 - λ > 0, yj ≥ 0, zj ≥ 0, j = m+1, ..., n, rezultă:
yj = zj = 0, j = m+1,..., n
Din Y, Z ∈ P rezultă că ele satisfac relaţia (8’), adică:
b = ∑∑==
=m
1jjj
m
1jjj azay
Dar scrierea lui b în baza B este unică, deci yj = zj, j = m,1 .
98
Programare liniară
Atunci Y = Z, ceea ce contrazice ipoteza.
Reciproc, fie X un vârf al lui P. Să arătăm că e soluţie posibilă de
bază.
Presupunem că X = (x1, ..., xk, 0, ..., 0)T, xi >0, i = k,1 . Vom proba
că vectorii a1, ..., ak sunt liniar independenţi, deci X e soluţie de bază.
Prin absurd, presupunem că vectorii a1, ..., ak sunt liniar dependenţi,
deci există cel puţin un coeficient αh ≠ 0, astfel încât:
α1a1 + ... + αkak = 0 (12)
Dar X ∈ P satisface relaţia (8’), deci:
x1a1 + ...+ xkak = b (13)
Relaţia (12) înmulţită cu β ∈ ℝ se scade şi apoi se adună la relaţia
(13) şi obţinem:
(x1 - βα1)a1 + ...+ (xk - βαk)ak = b
(x1+ βα1)a1 + ... + (xk + βαk)ak = b (14)
Alegând β suficient de mic aşa încât xi - βαi ≥ 0 şi xi + βαi ≥ 0,
i = k,1 , relaţiile (14) definesc două soluţii U şi V ∈ P. Dar 21 U +
21 V = X,
fapt ce contrazice ipoteza că X este vârf în P. Deci a1, ..., ak sunt
independenţi şi X ∈ PB.
Observaţie: Deoarece matricea A are m linii şi n coloane, m < n, cu
vectorii ei se pot forma cel mult C mn baze în ℝm, deci numărul soluţiilor
posibile de bază este cel mult C mn .
Teorema 3: Dacă problema dată de relaţiile (7), (8), (9) are optim
finit, atunci cel puţin un vârf al lui P este soluţie optimă.
99
Modele matematice în economie
Demonstraţie:
Fie X1, ..., Xs vârfurile lui P şi X0 soluţie optimă pentru problema de
programare liniară în care presupunem că vrem să minimizăm funcţia de
eficienţă f. Deci:
f(X0) ≤ f(X); (∀) X ∈ P. (15)
Dacă X0 este un vârf, teorema e demonstrată. Presupunem că X0 nu
este un vârf. Cum X0 ∈ P, din propoziţia 10 cap. 2, rezultă că:
X0 = ∑=
λs
1iiiX , λi ≥ 0, i = s,1 şi ∑
=
λs
1ii = 1.
Dar f este o funcţională liniară şi putem scrie:
f(X0) = f(∑=
λs
1iiiX ) = λ1f(X1) + ... + λsf(Xs) (16)
Dacă notăm m = f(X0) şi presupunem că Xj este vârful cu
proprietatea:
f(Xj) = si1
min≤≤
f(Xi)
din relaţia (16) putem scrie:
m ≥ f(Xj) ⋅ ∑=
λs
1ii = f(Xj).
Cum m > f(Xj) nu poate avea loc, deoarece X0 ∈ O, rezultă că
m = f(Xj), deci Xj ∈ O.
Observaţii:
1) Soluţia optimă (când e finită) se caută printre vârfurile lui P, adică
printre soluţiile posibile de bază. Această observaţie justifică
metoda grafică de rezolvare a unei probleme de programare
liniară.
2) Pentru maximizarea lui f demonstraţia e analoagă.
100
Programare liniară
Teorema 4: Mulţimea soluţiilor optime O este convexă.
Dacă O = ∅ sau O e formată dintr-un singur punct, proprietatea este
evidentă.
Presupunem că (∃)X1, X2 ∈ O, f(X1) = f(X2) = m şi fie λ ∈ [0,1].
Atunci X = λX1 + (1 - λ)X2 ∈ P şi
f(X) = λf(X1) + (1 - λ)f(X2) = λm + (1 - λ)m = m, de unde rezultă
X ∈ O
Observaţii:
1) Dacă o problemă de programare liniară are cel puţin două soluţii
optime, ea va avea o infinitate de soluţii optime, date de
combinaţia liniară convexă a acestora; deci, orice punct de pe
segmentul determinat de două soluţii optime este tot soluţie
optimă.
2) Pentru m şi n mari, numărul soluţiilor posibile de bază poate fi
destul de mare şi găsirea printre acestea a celei optime,
laborioasă. A devenit necesară găsirea unei metode care să
permită trecerea de la o soluţie de bază la o alta mai bună, în
sensul funcţiei f de eficienţă. O astfel de metodă este algoritmul
simplex (propus de G.B. Dantzig în 1947 la Chicago) care permite
determinarea unui vârf al lui P şi dă posibilitatea să se stabilească
dacă în acest vârf funcţia de eficienţă f îşi atinge optimul. Când
acest vârf nu este de optim, algoritmul permite găsirea unui alt
vârf învecinat în care f să ia o valoare mai bună (mai mare pentru
max sau mai mică pentru min), iar după un număr finit de paşi să
se găsească soluţia optimă. Algoritmul mai permite să se
stabilească dacă problema de programare liniară admite soluţii
sau dacă f este nemărginită pe P.
101
Modele matematice în economie
3. Principiile metodei simplex
Pentru obţinerea unor rezultate de bază în fundamentarea
algoritmului simplex, vom introduce unele notaţii. Astfel: presupunem
X ∈ PB, X = ( x 1, ..., x m, 0, ..., 0)T pentru o bază B = ⎨a1, ..., am⎬.
Au loc relaţiile:
x 1a1 + ...+ x mam = b (17)
şi x 1c1 + ...+ x mcm = f0,
unde x i > 0, i = m,1 şi f0 este valoarea funcţiei de eficienţă pentru X .
Deoarece orice vector aj, j = n,1 , poate fi scris în baza B, presupunem că:
a1ja1 + ...+ amjam = aj (18)
şi a1jc1 + ...+ amjcm = fj, j = n,1 (19)
unde ci este coeficientul funcţiei de eficienţă corespunzător vectorului ai,
i = m,1 . Cu notaţiile de mai sus, să demonstrăm:
Teorema 5: (testul de optimalitate).
Fie X ∈ PB şi ∆j = cj – fj. Dacă pentru problema de programare
liniară (7), (8), (9) în care se doreşte maximizarea lui f, ∆j ≤ 0, (∀) j = n,1 ,
atunci problema are optim finit şi X ∈ O (este soluţie optimă).
Demonstraţie:
Fie X ∈ P, X = (x1, ..., xn)T, o soluţie posibilă oarecare pentru care
avem: ∑=
n
1jjjax = b (20)
Din X ∈ PB rezultă că:
∑=
m
1iiiax = b (21)
102
Programare liniară
Relaţiile (20), (21), (18) ne permit să scriem:
b = ∑ ∑∑∑ ∑ ∑= === = =
⎟⎟⎠
⎞⎜⎜⎝
⎛=⎟
⎠
⎞⎜⎝
⎛==
m
1ii
n
1jijj
m
1iiij
m
1i
n
1j
n
1jjjjii aaxaaxaxax (22)
Unicitatea scrierii vectorului b în baza B implică, din (22), relaţia:
∑=
=n
1jijji axx (23)
Atunci:
f(X) – f( X ) = ∑ ∑ ∑ ∑ ∑= = = = =
=⎟⎟⎠
⎞⎜⎜⎝
⎛−=−
n
1j
m
1i
n
1j
m
1i
n
1jijjijjiijj axcxcxcxc
∑ ∑ ∑ ∑∑∑= = = ===
−=⎟⎠
⎞⎜⎝
⎛−=⎟
⎠
⎞⎜⎝
⎛−=
n
1j
n
1j
n
1j
n
1jjjjj
m
1iijjjj
m
1iijijj x)fc(xaccxacxc (24)
(am folosit pe parcurs relaţiile (23) şi (19)).
Se ştie că xj ≥ 0 şi dacă ∆j = cj – fj ≤ 0, (∀) j = n,1 atunci din relaţia
(24) avem:
f(X) – f( X ) ≤ 0 sau f(X) ≤ f( X ), (∀) X ∈ P, deci X ∈ O.
Observaţii:
1) Pentru problema de minim condiţia de minim este ∆j = fj – cj ≤0,
(∀) j = n,1 şi demonstraţia este analoagă;
2) Dacă X nu este optimă (există cel puţin o diferenţă ∆j > 0),
algoritmul permite construirea unei alte soluţii posibile de bază
Y îmbunătăţite, trecând de la un vârf al lui P la altul, prin
înlocuirea unui vector din bază cu altul din afara bazei, cu
condiţia ca noul sistem de vectori să rămână liniar independent,
deci să formeze o bază, ca în lema substituţiei.
103
Modele matematice în economie
Ne propunem în cele ce urmează construirea unei soluţii posibile de
bază Y îmbunătăţite când este cunoscută X ∈ PB.
Fie X = ( x 1, ..., x m, 0, ..., 0)T; I = ⎨1, ..., m⎬; B = ⎨a1, ..., am⎬ o
bază în ℝm. Presupunem că înlocuim vectorul ai ∈ B cu un alt vector aj ∉B,
obţinând o nouă bază în ℝm, deci o altă soluţie Y de componente y k, k ∈I’,
I’ = (I \ ⎨i⎬) ∪ ⎨j⎬.
Din X , Y ∈ PB, rezultă:
∑∑∈∈
=='Ik
kkIk
kk ayaxb (24)
Dar { }
jji\Ik
kk'Ik
kk ayayayb +== ∑∑∈∈
.
Înlocuind aj din relaţia (18), avem:
{ } { } { }
{ }(25) aaya)ayy(
aayaayayaayayb
iijjkkjjki\Ik
iiji\Ik
jkkjIk i\Ik
jkkkkji\Ik
jkk
++=
=++=+=
∑
∑∑ ∑∑
∈
∈∈ ∈∈
Din relaţia (24) putem scrie că:
{ }ii
i\Ikkk
Ikkk axaxaxb +== ∑∑
∈∈
(26)
Unicitatea scrierii vectorului b în baza B şi relaţiile (25) şi (26) ne
permit să scriem:
x i = y jaij
x k = y k + y jakj , k ∈ I \ ⎨i⎬ de unde rezultă:
y j = ij
i
ax
y k = x k - ij
i
ax akj (27)
104
Programare liniară
cu aij ≠ 0 (condiţie întâlnită în lema substituţiei).
Relaţiile (27) dau formulele de calcul ale componentelor noii soluţii
Y . Cum Y ∈ PB, componentele ei trebuie să fie nenegative. Deci vom
pune condiţiile:
ij
i
ax ≥ 0, şi cum x i ≥ 0 trebuie ca aij > 0 (28)
x k - ij
i
ax akj ≥ 0, de unde θ =
ij
i
ax ≤
kj
k
ax , k ∈ I’, (29)
evident akj > 0.
Relaţiile (28) şi (29) dau condiţiile necesare ca vectorul ai să poată fi
înlocuit de aj, adică criteriul de ieşire din bază.
Să presupunem că problema de programare liniară are în relaţia (7),
[max]f şi să căutăm condiţia ca Y să fie o soluţie mai bună ca X , adică:
f( Y ) > f( X ) sau f( Y ) - f( X ) > 0 (30)
Dar: f( Y ) - f( X ) = { } { }
∑∑ ∑ ∑∈∈ ∈ ∈
−−+=−i\Ik
iikk'Ik Ik i\Ik
jjkkkkkk xcxcycycxcyc
Ţinând seama de relaţiile (27) şi (19) vom avea:
f( Y ) - f( X ) = { } { }
=−−⎟⎟⎠
⎞⎜⎜⎝
⎛−+ ∑∑
∈∈ i\Ikiikk
i\Ikkj
ij
ikk
ij
ij xcxca
axxc
axc
= cjij
i
ax -
ij
i
ax
{ }⎟⎟⎠
⎞⎜⎜⎝
⎛+∑
∈ i\Ikijikjk acac =
ij
i
ax (cj – fj) > 0, dacă ∆j = cj – fj > 0
Evident f( Y ) - f( X ) ia cea mai mare valoare atunci când ∆j ia cea
mai mare valoare pozitivă.
Această ultimă condiţie constituie criteriul de intrare în noua bază a
vectorului aj în locul lui ai, eliminat.
105
Modele matematice în economie
Observaţii:
1) Elementul aij > 0 este pivotul, iar a doua relaţie din (27) este
regula dreptunghiului din lema substituţiei;
2) Construcţia soluţiei Y pentru cazul determinării lui [min]f(X)
este analoagă, cu deosebirea că ∆j = fj – cj, (∀) j = n,1 , cele două
criterii de intrare şi de ieşire din bază rămânând aceleaşi;
3) Formulele (27) se aplică nu doar pentru Y ci şi pentru toţi
vectorii aj, j = n,1 , ca în cazul metodei lui Gauss – Jordan.
4. Algoritmul simplex
Pentru o expunere teoretică mai clară, vom presupune problema de
programare liniară sub forma standard şi matricea A conţinând baza
B = ⎨a1, ..., am⎬ = baza canonică. Acest lucru ne îndreptăţeşte să pornim în
calcule cu soluţia de bază XB = b (coloana termenilor liberi).
Aplicarea algoritmului simplex se face în cadrul unui tabel, numit
tabelul simplex, în etape numite iteraţii, tabel de forma:
c1 ... ci ... cm cm+1 ... cj ... cn Baza CB XB a1 ... ai ... am am+1 ... aj ... an θ
a1 ⋮
ai
⋮
am
c1 ⋮
ci
⋮
cm
x 1 ⋮ x i
⋮ x m
1 ... 0 ... 0 a1m+1 ... a1j ...a1n ⋮ ⋮ ⋮ ⋮ ⋮
0 ... 1 ... 0 aim+1 aij ... ain ⋮ ⋮ ⋮ ⋮ ⋮
0 ... 0 ... 1 amm+1 ..amj...amn
f0 f1 ... fi ... fm fm+1 .... fj .... fn ∆j=cj – fj 0 ... 0 ... 0 cm+1–fm+1 cj - fj ...cn-fn
iteraţie
dacă problema este de maxim.
106
Programare liniară
Etapele algoritmului simplex
Pasul 1. Ne asigurăm ca problema să aibă forma standard.
Pasul 2. Ne asigurăm ca matricea A să conţină baza canonică ca să
luăm soluţia de bază iniţială vectorul b. Scriem funcţia de eficienţă care să
cuprindă şi variabilele introduse pentru compensare sau pentru existenţa
bazei canonice.
Pasul 3. Completăm prima iteraţie a tabelului simplex şi testăm
optimalitatea soluţiei, cercetând semnele diferenţelor ∆j = cj – fj (pentru
maxim). Distingem situaţiile:
a) ∆j ≤ 0, (∀) j = n,1 ; rezultă că X este soluţie optimă şi algoritmul
ia sfârşit;
b) dacă există ∆j > 0, soluţia cercetată nu este optimă, se poate
construi o soluţie îmbunătăţită.
Pasul 4. Îmbunătăţirea soluţiei se face astfel:
a) aplicăm criteriul de intrare în bază: dacă
∆j = cj – fj = 0h
max>∆
(ch – fh), intră în noua bază vectorul aj;
b) criteriul de ieşire din bază: dacă
⎪⎭
⎪⎬⎫
⎪⎩
⎪⎨⎧
==θ>
kj
k
0aij
i
axmin
ax
kj
, cu k = m,1 , iese din bază vectorul ai.
Elementul aij > 0 este pivotul.
Pasul 5. Completăm o nouă iteraţie a tabelului simplex astfel:
a) coloana bazei, în locul lui ai scriem aj;
b) coloana CB, cu respectiv coeficienţii lui f corespunzători
vectorilor bazei;
c) coloanele vectorilor bazei, ca vectori unitari;
107
Modele matematice în economie
d) linia vectorului intrat, aj, se obţine prin împărţirea la pivot a liniei
vectorului eliminat ai, conform primei relaţii din (27);
e) restul elementelor din tabel se determină cu regula
dreptunghiului dată de relaţia a doua din (27) şi care ar putea fi
enunţată astfel: elementul ce trebuie înlocuit se înmulţeşte cu
pivotul; ele determină o diagonală într-un dreptunghi; din
produsul lor se scade produsul elementelor ce determină cealaltă
diagonală a dreptunghiului şi toată diferenţa se împarte la pivot.
Testăm apoi noua soluţie.
Paşii 3, 4, 5 se repetă până când e satisfăcut criteriul de optim.
Observaţie.
Dacă problema este de minim algoritmul se aplică la fel, cu
deosebirea că ∆j = fj – cj, j = n,1 .
Aplicaţie
Să se determine:
[max]f(X) = 3x1 + 5x2 + 2x3 + x4
x1 + 2x2 + 3x3 + x4 = 20
4x1 + x2 + x3 ≤ 16
xj ≥ 0, j = 4,1 .
Rezolvare
Aducem problema la forma standard adunând în restricţia a doua în
membrul stâng variabila de compensare x5 ≥ 0. Obţinem:
x1 + 2x2 + 3x3 + x4 = 20
4x1 + x2 + x3 + x5 = 16
xj ≥ 0, j = 5,1 .
[max]f(X) = 3x1 + 5x2 + 2x3 + x4 + 0 ⋅ x5
108
Programare liniară
Matricea sistemului de restricţii obţinut este:
a1 a2 a3 a4 a5
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛1011401321
şi conţine baza canonică B = ⎨a4, a5⎬.
Vectorii: C = (3, 5, 2, 1, 0); X = (x1, ..., x5)T, cu XB = (x4, x5)T;
Xs = (x1, x2, x3)T = (0,0,0)T; b = (20, 16)T. Şi cum B e baza canonică, rezultă
că XB = b, adică XB = (20, 16)T.
Formăm acum tabelul simplex şi completăm prima iteraţie.
3 5 2 1 0 B CB XB a1 a2 a3 a4 a5 θ
← a4 a5
1 0
20 16
1 4
2 ↓ 1
3 1
1 0
0 1
20:2 16:1
fj 20 1 2 3 1 0 ∆j = cj - fj 2 3 -1 0 0
a2 ← a5
5 0
10 6
1/2 ↓ 7/2
1 0
3/2 -1/2
1/2 -1/2
0 1
10:1/2 6:7/2
fj 50 5/2 5 15/2 5/2 0 ∆j = cj – fj 1/2 0 -11/2 -3/2 0
a2 a1
5 3
64/7 12/7
0 1
1 0
11/7 -1/7
4/7 -1/7
-1/7 2/7
fj 356/7 3 5 52/7 17/7 1/7 ∆j = cj - fj 0 0 -38/7 -8/7 -1/7
În iteraţia 1 am calculat fj, cu j = 5,1 , cu relaţia (19) iar f0 (sub XB)
cu relaţia a doua din (17).
Cea mai mare diferenţă ∆j > 0 este ∆2, sub coloana a2; a2 va intra în
baza din următoarea iteraţie. Cel mai mic raport θ = 20 : 2 = 10 corespunde
lui a4 din B, deci a4 va ieşi din bază. Elementul a12 = 2 este pivotul şi-l
înrămăm.
În această iteraţie soluţia posibilă de bază este X1 = (0,0,0,20,16)T,
f(X1) = f0 = 20, dar această soluţie nu este optimă.
109
Modele matematice în economie
Completăm următoarea iteraţie cu indicaţiile de la pasul 5 şi obţinem
o nouă soluţie posibilă de bază X2 = (0,10,0,0,6)T, f(X2) = f0 = 50.
X2 este mai bună ca X1 deoarece f(X2) > f(X1), dar nici X2 nu este
optimă pentru că există ∆1 = 1/2 > 0, deci algoritmul continuă cu intrarea în
bază a lui a1 în locul lui a5, pe linia căruia θ ia cea mai mică valoare.
Pivot este a21 = 7/2 şi aplicând operaţiile de la pasul 5 trecem la
următoarea iteraţie în care găsim soluţia posibilă de bază
X3 = (12/7, 64/7, 0,0,0)T, f(X3) = f0 = 7
356 , care este soluţie optimă
pentru că ∆j ≤ 0, (∀) j = 5,1 , deci [max]f(X) = 7
356 .
5. Observaţii la aplicarea algoritmului simplex
1. Din teorema 5 avem:
f( Y ) – f( X ) = ij
i
ax (cj – fj), de unde:
f( Y ) = f( X ) + θ ⋅ ∆j, (31)
cu θ = ij
i
ax , ∆j = cj – fj, aleşi prin criteriile de eliminare din bază, respectiv
introducere în bază.
Am obţinut prin (31) o relaţie de recurenţă între valorile funcţiei de
eficienţă în două iteraţii succesive.
2. Diferenţele ∆j sunt nule sub vectorii bazei deoarece pentru aceştia
fj = cj.
110
Programare liniară
3. Dacă ak şi ah ∉ B, dar ∆k = ∆h = 0j
max>∆∆j, pentru a decide ce vector
intră în bază comparăm ck şi ch. Dacă problema e de maxim şi ck < ch va
intra în bază ah; dacă e de minim, va intra ak.
4. Dacă în etapa de optim există ∆j = 0 şi aj ∉ B, putem continua
algoritmul cu introducerea în bază a lui aj. Dar din (31) rezultă că:
f( Y ) = f( X )
adică noua soluţie Y este tot optimă. Şi dacă problema are două soluţii
optime va avea o infinitate de soluţii optime conform teoremei 4.
Exemplu
[max]f(X) = 20x1 + 14x2
- 2x1 + 3x2 ≤ 24
5x1 – 2x2 ≤ 50
10x1 + 7x2 ≤ 140
x1, x2 ≥ 0
Rezolvare
Aducem problema la forma standard.
- 2x1 + 3x2 + x3 = 24
5x1 – 2x2 + x4 = 50
10x1 + 7x2 + x5 = 140
xj ≥ 0, j = 5,1
a1 a2 a3 a4 a5
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−
−
1007100102500132
are baza canonică B = ⎨a3, a4, a5⎬
[max]f(X) = 20x1 + 14x2 + 0(x3 + x4 + x5).
111
Modele matematice în economie
Sunt îndeplinite condiţiile de trecere la tabelul simplex.
20 14 0 0 0 B CB XB a1 a2 a3 a4 a5 θ
a3
← a4 a5
0 0 0
24 50
140
-2 ↓ 5
10
3 -2 7
1 0 0
0 1 0
0 0 1
- 10 14
fj 0 0 0 0 0 0 ∆j = cj - fj 20 14 0 0 0 a3
a1
← a5
0
20 0
44
10 40
0
1 0
11/5↓
-2/5 11
1
0 0
2/5
1/5 -2
0
0 1
44:5
11
- 40:11
fj 200 20 -8 0 4 0 ∆j 0 22 0 -4 0
← a3
a1
a2
0
20
14
36
126/11
40/11
0
1
0
0
0
1
1
0
0
4/5↓
7/55
-2/11
-1/5
2/55
1/11
36: 54
557:
11126
- fj 280 20 14 0 0 2
∆j 0 0 0 0 -2 a4 a1 a2
0 20 14
45 63/11
130/11
0 1 0
0 0 1
5/4 -7/44 10/44
1 0 0
-1/4 3/442/44
fj 280 20 14 0 0 2 ∆j 0 0 0 0 -2
În iteraţia a treia am găsit soluţia optimă cu
[max]f(X) = 280 pentru x1 = 11
126 şi x2 = 1140 , adică X1 = (
11126 ,
1140 ).
Dar ∆4 = 0 deşi a4 ∉ B. Am efectuat încă o iteraţie în tabel şi am
găsit o altă soluţie optimă:
X2 = (11
130,1163 ).
112
Programare liniară
Atunci, din teorema 4, orice combinaţie liniară convexă de X1 şi X2
este soluţie optimă, adică
X = λX1 + (1 - λ)X2, cu 0 ≤ λ ≤ 1 este soluţie optimă şi deci
problema dată are o infinitate de soluţii optime.
5. Dacă vectorul aj trebuie să intre în bază, dar toate componentele
lui, akj ≤ 0, k = m,1 , atunci problema nu are optim finit.
6. Există situaţii în care, pentru soluţii diferite, funcţia de eficienţă f
ia aceeaşi valoare, ajungând după un număr de paşi la repetarea unei soluţii.
Continuarea algoritmului devine inutilă, deoarece apare fenomenul de ciclaj.
Din relaţia (31) observăm că repetarea valorii lui f poate avea loc dacă
∆j = 0 sau θ = 0. În prima situaţie am văzut (cazul 4) că problema are o
infinitate de soluţii optime. Cazul θ = 0 apare doar dacă în tabelul asupra
căruia facem consideraţiile avem o soluţie degenerată, valorii nule din
coloana XB corespunzându-i o valoare pozitivă în coloana vectorului ce
urmează a fi introdus în bază.
Condiţia degenerării este doar necesară pentru ciclaj. Va trebui să
examinăm situaţiile în care apare degenerarea şi modalitatea de a lucra în
continuare cu algoritmul simplex.
Să presupunem că în aplicarea criteriului de eliminare din bază, când
ştim că aj va fi vectorul ce va fi introdus, raportul:
qj
q
pj
p
kj
k
mk10a a
xax
axmin
kj
===θ≤≤>
.
Dacă am alege eliminarea lui ap, a doua relaţie din (27) ar da
0aaxxy qj
pj
pqq =−= , deci soluţie degenerată ce conduce la ciclaj.
113
Modele matematice în economie
Pentru a evita ciclajul căutăm un criteriu de a alege dintre ap şi aq
vectorul ce urmează a fi înlocuit de aj. Acest criteriu este dat de metoda
perturbaţiilor stabilită de Charnes, conform căreia va ieşi din bază ap sau aq
după cum este mai mic raportul:
pj
npn
22p1pp
aa...aax ε++ε+ε+
(32)
sau: qj
nqn
22q1qq
aa...aax ε++ε+ε+
, unde ε > 0, arbitrar de mic.
Practic aplicarea metodei constă în următoarele calcule: se formează
şirurile de rapoarte:
pj
pn
pj
1p
pj
p
aa
,...,aa
,ax (33)
şi: qj
qn
qj
1q
qj
q
aa
,...,aa
,ax (34)
Dintre rapoartele (32) va fi cel mai mic acela pentru care în şirul (33)
respectiv (34) vom obţine mai curând o valoare algebrică minimă.
Rapoartele din (33) şi (34) nu pot fi respectiv egale deoarece, în caz contrar,
proporţionalitatea a două linii din matricea A implică rangA < m, ceea ce
contrazice ipoteza în care lucrăm.
Exemplu
O problemă în care se cere minimizarea funcţiei de eficienţă a
condus la următoarea iteraţie din tabelul simplex:
B XB a1 a2 a3 a4 a5 a6 θ a6 a4 a5
7 2 4
3↓ 1 2
4 3 -1
1 -1 1
0 1 0
0 0 1
1 0 0
7:3 2:1 4:2
∆j = fj - cj 6 3 -5 0 0 0
114
Programare liniară
Cea mai mică valoare a lui θ este 2 şi corespunde vectorilor a4
respectiv a5 din bază. Unul dintre aceştia trebuie eliminat şi a1 trebuie
introdus în bază.
În conformitate cu relaţiile (33) şi (34), formăm şirurile de rapoarte
pentru a4 respectiv a5:
,...21,
21,
22,
24
,...11,
13,
11,
12
−
−
Comparăm rapoartele de acelaşi ordin din cele două şiruri şi
observăm că primul raport mai mic este ⎟⎠⎞
⎜⎝⎛−
21 apărut pe linia lui a5
(comparat cu valoarea 13 corespunzătoare lui a4), deci a5 va fi eliminat şi
a31 = 2 va fi pivotul. În rest, calculele sunt conforme cu algoritmul simplex.
7. Dacă în matricea A nu există m vectori unitari care să formeze o
bază iniţială vom recurge la aşa-numita metodă a bazei artificiale sau
metoda penalizării.
Presupunem că matricea A nu conţine nici un vector unitar de
ordinul m. Atunci, se adaugă la fiecare restricţie i o variabilă yi ≥ 0 numită
artificială şi se obţine vectorul Y = (y1, ..., ym)T.
Problema dată de (7), (8), (9) va deveni:
AX + Im Y = b
X ≥ 0, Y ≥ 0; Im – matricea unitate de ordinul m, cu modificarea
funcţiei obiectiv prin metoda penalizării:
[max]f = CX – MY
sau [min]f = CX + MY
115
Modele matematice în economie
unde M = (M, ..., M) ∈ ℝm, cu M > 0, oricât de mare, fapt ce asigură
eliminarea vectorilor artificiali din bază.
Vectorii corespunzători variabilelor artificiale îi vom nota respectiv
cu αi, i = m,1 , şi îi vom numi vectori artificiali. Vectorii artificiali formează
o bază iniţială canonică pe care o vom numi bază artificială.
Dacă problema iniţială admite soluţie optimă, atunci ea este optimă
şi pentru problema extinsă, iar variabilele artificiale yi sunt nule, (∀)
i = m,1 .
Dacă matricea A are r vectori unitari atunci va fi nevoie doar de m –
r vectori artificiali pentru a obţine baza iniţială în aplicarea algoritmului
simplex.
Un vector artificial ce iese din bază într-o iteraţie nu se va mai
întoarce niciodată în bază; componentele lui în următoarele iteraţii nu se mai
calculează.
Aplicarea algoritmului simplex poate conduce la una din situaţiile:
a) Testul de optimalitate este îndeplinit şi în bază nu se află vectori
artificiali. Atunci s-a obţinut soluţia optimă şi pentru problema
iniţială;
b) Testul de optimalitate este îndeplinit, în bază se află vectori
artificiali, iar variabilele artificiale corespunzătoare acestora au
valoarea zero. În acest caz soluţia optimă a problemei iniţiale este
degenerată;
c) Testul de optimalitate este îndeplinit, în bază se află vectori
artificiali şi cel puţin o variabilă artificială este nenulă. În acest
caz problema iniţială nu are soluţie.
116
Programare liniară
Între soluţiile problemei iniţiale şi cele ale problemei extinse (ce
conţine variabilele artificiale) există unele legături date de următoarele
rezultate:
a) Problema iniţială are cel puţin o soluţie posibilă dacă şi numai
dacă cea extinsă are o soluţie optimă cu toate variabilele
artificiale egale cu zero. Valorile optime ale celor două probleme
coincid;
b) Dacă problema extinsă are optim infinit, atunci cea iniţială nu are
soluţii posibile sau are optim infinit;
c) Dacă problema iniţială are optim infinit, atunci şi cea extinsă are
optim infinit.
Exemplu
Să se rezolve problema de programare liniară şi apoi să se explice
rezultatul:
[max]f = 3x1 + 4x2 + x3
5x1 – x2 + 2x3 ≤ 7
x1 + 2x2 – x3 ≥ 4
3x1 + 2x2 + 4x3 = 2
xj ≥ 0, j = 3,1
Rezolvare
Aducem problema la forma standard:
5x1 – x2 + 2x3 + x4 = 7
x1 + 2x2 – x3 – x5 = 4
3x1 + 2x2 + 4x3 = 2
xj ≥ 0, j = 5,1
117
Modele matematice în economie
Matricea asociată formei standard este:
a1 a2 a3 a4 a5
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−−
−
0042310121
01215
A conţine un singur vector unitar, a4 şi pentru formarea matricei unitate se impune folosirea vectorilor artificiali α1 = (0,1,0)T şi α2 = (0,0,1)T ce vor fi generaţi de adunarea la a doua şi a treia restricţie a variabilelor artificiale y1 respectiv y2, a căror valoare este egală cu zero pentru a rămâne problema la forma standard. Astfel problema dată se extinde la:
[max]f = 3x1 + 4x2 + x3 + 0(x4 + x5) – M(y1 + y2), M > 0, M → ∞. 5x1 – x2 + 2x3 + x4 = 7 x1 + 2x2 – x3 – x5 + y1 = 4 3x1 + 2x2 + 4x3 + y2 = 2 x1, ..., x5, y1, y2 ≥ 0 Matricea problemei extinse va fi: a1 a2 a3 a4 a5 α1 α2
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−−
−=
100042301101210001215
A
şi conţine baza canonică B = ⎨a4, α1, α2⎬ - bază artificială. Aplicăm
algoritmul simplex: 3 4 1 0 0 -M -M B CB XB a1 a2 a3 a4 a5 α1 α2
a4
α1 ← α2
0 -M -M
7 4 2
5 1 3
-1↓ 2 2
2 -1 4
1 0 0
0 -1 0
0 1 0
0 0 1
- 4:2 2:2
fj -6M -4M -4M -3M 0 M -M -M ∆j = cj - fj 3+4M 4+4M 1+3M 0 -M 0 0
a4
α1 a2
0 -M 4
8 2 1
13/2 -2 3/2
0 0 1
4 -5 2
1 0 0
0 -1 0
0 1 0
⏐ ⏐ ⏐
fj 4-2M 2M+6 4 5M+8 0 M -M ∆j= cj - fj -2M-3 0 -5M-7 0 -M 0
118
Programare liniară
În ultima iteraţie toate diferenţele ∆j ≤ 0, deci criteriul de optim este
satisfăcut. Dar ultima bază e formată din ⎨a4, α1, a2⎬, deci conţine un vector
artificial, iar variabila artificială corespunzătoare y1 = 2, ceea ce este
inadmisibil pentru că y1 a fost introdus cu condiţia să aibă valoarea zero.
Această problemă nu are soluţii.
8. O verificare a corectitudinii calculelor poate fi făcută într-un mod
exemplificat pe problema rezolvată în paragraful 4, astfel:
Soluţia optimă este XB = (64/7, 12/7)T şi în baza optimă sunt vectorii
a2 şi a1. Dacă B este matricea formată cu componentele vectorilor a2 şi a1,
atunci: B = ⎟⎟⎠
⎞⎜⎜⎝
⎛4112
.
Matricea B-1 (inversa lui B) se citeşte pe coloanele din ultima
iteraţie, ce corespund vectorilor din baza iniţială (a4 şi a5). Astfel:
B-1 = ⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜
⎝
⎛
−
−
72
71
71
74
.
Rezolvarea este corectă dacă XB = B-1b, unde b = (20, 16)T. Într-
adevăr: XB = B-1b = ⎟⎟⎠
⎞⎜⎜⎝
⎛=⎟⎟
⎠
⎞⎜⎜⎝
⎛
⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜
⎝
⎛
−
−
7/127/64
1620
72
71
71
74
, deci rezolvarea este corectă.
119
Modele matematice în economie
6. Dualitatea în programarea liniară
Fie o problemă de programare liniară sub forma cea mai generală, cu
m restricţii (unele de forma „≤”, altele „≥”, iar altele egalităţi), n variabile
(unele ≥ 0, altele ≤ 0, iar altele oarecare) şi funcţia de eficienţă de maxim.
Definiţie: Spunem că o restricţie a problemei este concordantă cu
funcţia obiectiv dacă este de tipul „≤” în cazul problemei
de maxim sau „≥” în cazul problemei de minim.
În caz contrar, restricţiile se numesc neconcordante (cu „≥” pentru
maxim şi „≤” pentru minim).
Problemei date iniţial, numită primală îi vom ataşa în mod unic o nouă problemă numită duală, obţinută aplicând următoarele reguli:
1. Dacă primala cere maximul (respectiv minimul) funcţiei obiectiv, atunci duala cere minimul (respectiv maximul) funcţiei obiectiv;
2. Coeficienţii funcţiei obiectiv din primală sunt termenii liberi din duală; termenii liberi din primală sunt coeficienţii funcţiei obiectiv din duală;
3. Matricea coeficienţilor sistemului de restricţii A se transpune în duală;
4. Numărul restricţiilor din primală este egal cu numărul variabilelor din duală; numărul variabilelor din primală este egal cu numărul restricţiilor din duală;
5. Unei restricţii concordante din primală îi corespunde o variabilă nenegativă în duală; unei restricţii neconcordante din primală îi corespunde o variabilă nepozitivă în duală; unei egalităţi din primală îi corespunde o variabilă oarecare în duală;
6. Unei variabile nenegative din primală îi corespunde o restricţie concordantă în duală; unei variabile nepozitive din primală îi
120
Programare liniară
corespunde o restricţie neconcordantă în duală; unei variabile oarecare în primală îi corespunde o egalitate în duală.
Problema primală împreună cu duala sa spunem că formează un cuplu de probleme duale. Iar din regulile de mai sus rezultă că duala dualei este problema primală.
Exemplu Fie problema primală: [max]f(X) = 6x1 – x2 + 4x3 – 2x4
x1 + x2 – 2x3 ≥ 5
3x1 + 4x2 + x4 ≤ 9
2x1 + x2 + x3 + 2x4 = 8
x1 ≥ 0, x2 ≥ 0, x3 ≤ 0, x4 oarecare.
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛=
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛ −
895
b;211210430211
; c = (6, -1, 4, -2); X = (x1, x2, x3, x4)T.
Transpusa matricei A:
AT =
⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜
⎝
⎛
−210102141231
.
Problema duală este o problemă de minim, ce va avea 4 restricţii şi 3 necunoscute u1, u2, u3, ce vor determina vectorul U = (u1, u2, u3), şi are forma:
[min]g(U) = 5u1 + 9u2 + 8u3
u1 + 3u2 + 2u3 ≥ 6
u1 + 4u2 + u3 ≥ -1
-2u1 + u3 ≤ 4 u2 + 2u3 = -2
u1 ≤ 0, u2 ≥ 0, u3 – oarecare.
121
Modele matematice în economie
În particular, pentru primala sub forma canonică de tipul I:
[max]f(X) = CX
AX ≤ b (35)
X ≥ 0
se obţine duala:
[min]g(U) = Ub
UA ≥ C (36)
U ≥ 0
adică o problemă canonică de tipul II.
Spunem că aceste două probleme formează un cuplu de probleme
simetrice.
Dacă primala are forma standard:
[max]f(X) = CX
AX = b
X ≥ 0
duala ei va fi:
[min]g(U) = Ub
UA ≥ C
U – oarecare.
Importanţa trecerii la duală constă în faptul că între soluţiile celor
două probleme există o legătură foarte strânsă, care va fi pusă în evidenţă
prin proprietăţile de mai jos. Pentru simplificarea expunerii, vom considera
un cuplu de probleme duale simetrice, date de relaţiile (35) şi (36).
Proprietatea 1: Dacă X şi U sunt soluţii posibile pentru problema
primală (35), respectiv duală (36) atunci:
CX ≤ Ub (37)
122
Programare liniară
Demonstraţie:
Dacă U este soluţie posibilă pentru duală, din (36) rezultă că:
C ≤ UA
Înmulţim în dreapta cu X, care fiind nenegativ, nu schimbă sensul
inegalităţii:
CX ≤ (UA)X = U(AX) ≤ Ub
(am ţinut seama că AX ≤ b, din (35)).
Proprietatea 2: Dacă X şi U sunt soluţii posibile pentru problema
primală (35) respectiv duală (36) care satisfac relaţia:
C X = U b (38)
atunci X este soluţie optimă a problemei (35), iar U este soluţie optimă a
problemei (36).
Demonstraţie:
Presupunem prin reducere la absurd că X care satisface relaţia (38)
nu este soluţie optimă pentru primală. Atunci există o soluţie posibilă X
astfel încât:
CX > C X = U b,
adică CX > U b, relaţie ce contrazice rezultatul (37) din proprietatea 1. Deci
X este soluţie optimă pentru problema primală.
În mod similar se demonstrează că U este soluţie optimă a
problemei (36).
Observaţii:
1) Deoarece relaţia (37) are loc pentru orice pereche X, U de soluţii
posibile ale problemelor (35) şi (36), atunci vom avea şi [max]CX ≤ [min]Ub
X ∈ ⎨X ⏐ AX ≤ b, X ≥ 0⎬ U ∈ ⎨U ⏐ UA ≥ C, U ≥ 0⎬
123
Modele matematice în economie
2) Dacă problema (35) nu are optim finit atunci problema (36) nu are
soluţii. Într-adevăr, dacă optimul lui (35) este + ∞ ar urma ca
optimul lui (36) să ia aceeaşi valoare, ceea ce nu este posibil
pentru o problemă de minim. Analog dacă (36) are minimul (- ∞)
problema (35) nu poate avea soluţii.
Teorema fundamentală a dualităţii
Pentru orice cuplu de probleme duale este posibilă numai una dintre
următoarele situaţii:
a) ambele probleme au soluţii posibile; în acest caz vom avea soluţii
optime pentru ambele probleme, iar valorile funcţiilor de eficienţă
coincid;
b) una din probleme are soluţii posibile iar cealaltă nu are; în acest
caz prima problemă are optim infinit;
c) nici una din probleme nu are soluţii posibile şi deci nici una nu
are soluţii optime.
Primele două proprietăţi demonstrează o bună parte din concluziile
acestei teoreme. Ar mai trebui arătat că dacă ambele probleme au soluţii
optime este valabilă şi reciproca proprietăţii 2.
Teorema ecarturilor complementare
Pentru un cuplu de probleme duale (35) şi (36) condiţiile necesare şi
suficiente ca soluţiile lor posibile X şi respectiv U să fie optime sunt:
U (b - A X ) = 0 şi ( U A – C) X = 0 (39)
124
Programare liniară
Demonstraţie:
Pentru început să arătăm necesitatea condiţiilor adică, presupunând
că X şi U sunt soluţii optime să deducem că relaţiile (39) sunt verificate.
Într-adevăr, dacă X şi U sunt soluţii optime pentru (35) şi (36) ele
sunt şi soluţii posibile. Deci:
U ≥ 0 şi b - A X ≥ 0
X ≥ 0 şi U A – C ≥ 0
de unde rezultă că:
U (b - A X ) ≥ 0
( U A – C) X ≥ 0
Adunăm ultimele două relaţii şi obţinem:
U (b - A X ) + ( U A – C) X = U b - U A X + U A X - C X =
= U b - C X = 0.
Dar suma a două numere nenegative este nulă numai dacă ambele
numere sunt nule. Rezultă deci relaţiile (39).
Pentru a demonstra suficienţa condiţiilor, să însumăm relaţiile (39)
presupuse adevărate; rezultă:
U b = C X
ceea ce implică optimalitatea soluţiilor conform proprietăţii 2.
În virtutea celor demonstrate mai sus egalităţile din (39) ne dau
următoarele informaţii asupra soluţiilor:
a) Dacă componenta i din soluţia X a primalei este strict pozitivă,
atunci restricţia i din duală este satisfăcută ca egalitate în U ;
b) Dacă componenta j din soluţia U a dualei este strict pozitivă,
atunci restricţia j din primală este satisfăcută ca egalitate în X ;
125
Modele matematice în economie
c) Dacă soluţia X a primalei satisface o restricţie i cu egalitate,
atunci componenta i din soluţia optimă U a dualei este strict
pozitivă;
d) Dacă soluţia U a dualei satisface o restricţie j din duală cu
egalitate, atunci componenta j din X este strict pozitivă.
7. Legătura dintre soluţiile problemelor duale
Din cele expuse s-au obţinut unele informaţii asupra soluţiei dualei
după rezolvarea primalei, cea mai importantă fiind aceea că valorile optime
ale funcţiilor de eficienţă sunt egale. Vom arăta în continuare că prin
rezolvarea uneia din cuplu de probleme duale se obţine implicit şi soluţia
celeilalte care se citeşte pe tabelul de optim al celei rezolvate.
Examinăm în continuare cazul problemelor din (35) şi (36). Pentru
rezolvare problema primală (35) se aduce la forma standard folosind
variabilele de compensare xn+1, ..., xn+m ≥ 0.
Fie X o soluţie optimă pentru (35), deci pentru care ∆j = cj – fj ≤ 0,
j = 1, 2, ..., n + m, unde:
fj = cBB-1aj, j = 1, 2, ..., n
fj = cBB-1ej, j = n+1, ..., n+m
cu ej – vectorul j din matricea unitate de ordinul m, introdus de variabila de
compensare xn+j, j = 1, ..., m.
Deci pentru X avem relaţiile:
∆j = cj – fj = cj – cBB-1aj ≤ 0, j = 1, ..., n (40)
∆j = cj – fj = 0 – cBB-1ej ≤ 0, j = n+1, ..., n+m.
126
Programare liniară
Dacă matricea A = (a1, ..., an), relaţia UA ≥ C din (36) se mai scrie:
UA = U(a1, ..., an) ≥ C
din care componenta j este:
Uaj ≥ cj, j = 1, ..., n, adică cj – Uaj ≤ 0.
Din acest rezultat şi din relaţia (40) rezultă că
U = cBB-1 (41)
este soluţie posibilă a dualei, deci soluţie optimă conform teoremei
fundamentale a dualităţii.
Funcţia de eficienţă corespunzătoare din (36) este:
g(U) = g(cBB-1) = (cBB-1) ⋅ b = cB(B-1b) = cB ⋅ X = f( X ).
Atunci soluţia U este optimă pentru duală.
Practic soluţia optimă a dualei cBB-1 se citeşte pe linia fj din etapa de
optim în dreptul coloanelor ce corespund vectorilor unitari ce au format
baza iniţială.
Rezolvarea dualei este mai indicată decât a primalei când duala este
mai uşor de rezolvat cu algoritmul simplex (are mai puţine restricţii sau mai
puţine variabile decât primala). O aplicaţie a acestui calcul o vom găsi la
jocurile matriceale.
Aplicaţie:
1) Fie problema de programare liniară:
[min]f(X) = 10x1 + 8x2 + 5x3
x1 + 2x2 ≥ 3
2x1 + 3x3 ≥ 6
3x1 + 2x2 + x3 ≥ 8
x2 + x3 ≥ 7
xj ≥ 0; j = 1, 2, 3.
127
Modele matematice în economie
Să se scrie problema duală, să se rezolve aceasta şi să se indice
soluţiile optime ale cuplului de probleme duale.
Rezolvare
Problema duală este:
[max]g(U) = 3u1 + 6u2 + 8u3 + u4
u1 + 2u2 + 3u3 ≤ 10
2u1 + 2u3 + u4 ≤ 8
3u2 + u3 + u4 ≤ 5
ui ≥ 0; i = 4,1 .
Forma standard va fi:
u1 + 2u2 + 3u3 + u5 = 10
2u1 + 2u3 + u4 + u6 = 8
3u2 + u3 + u4 + u7 = 5
ui ≥ 0; i = 7,1 .
[max]g(U) = 3u1 + 6u2 + 8u3 + u4 + 0(u5 + u6 + u7)
a1 a2 a3 a4 a5 a6 a7
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
100113001012020010321
şi B = ⎨a5, a6, a7⎬ - baza iniţială.
Rezolvăm duala cu algoritmul simplex în următorul tabel.
128
Programare liniară
3 6 8 1 0 0 0 B CB UB a1 a2 a3 a4 a5 a6 a7 θ
←a5 a6 a7
0 0 0
10 8 5
1 2 0
2 0 3
3↓ 2 1
0 1 1
1 0 0
0 1 0
0 0 1
10:3 8:2 5:1
gj 0 0 0 0 0 0 0 0 ∆j = cj - gj 3 6 8 1 0 0 0
a3
←a6 a7
8 0 0
10/3 4/3 5/3
1/3 4/3 -1/3
2/3 -4/3 7/3
1 0 0
0↓ 1 1
1/3 -2/3 -1/3
0 1 0
0 0 1
- 4/3 5/3
gj 80/3 8/3 16/3 8 0 8/3 0 0 ∆j 1/3 2/3 0 1 -8/3 0 0
a3 a4
←a7
8 1 0
10/3 4/3 1/3
1/3 4/3 -5/3
2/3↓ -4/3 11/3
1 0 0
0 1 0
1/3 -2/3 1/3
0 1 -1
0 0 1
10:2 -
1:11 gj 84/3 4 4 8 1 2 1 0
∆j -1 2 0 0 -2 -1 0 a3 a4 a2
8 1 6
36/11 16/11 1/11
7/11 8/11 -5/11
0 0 1
1 0 0
0 1 0
3/11 -6/11 1/11
2/11 7/11 -3/11
-2/11 4/11 3/11
gj 310/11 34/11 6 8 1 24/11 5/11 6/11 ∆j -1/11 0 0 0 -24/11 -5/11 -6/11
Soluţia optimă a dualei este unică şi anume:
U = ⎟⎠⎞
⎜⎝⎛ 0,0,0,
1116,
1136,
111,0 şi [max]g(U) =
11310 .
Soluţia optimă a problemei primale este unică şi se află pe linia gj a
ultimei iteraţii din tabelul simplex în dreptul vectorilor a5, a6, a7 ce au format
baza iniţială.
Citim: [min]f(X) = 11310 , X =
T
116,
115,
1124
⎟⎠⎞
⎜⎝⎛ .
Observaţie: Rezolvarea primalei cu algoritmul simplex ar fi condus
la o problemă cu 4 restricţii şi 11 variabile (3 date, 4 de compensare şi 4
artificiale), într-un tabel mai mare, cu calcule mai multe. Deci, în acest caz,
rezolvarea primalei prin duală este modul cel mai simplu.
129
Modele matematice în economie
2) Fie problema primală:
[min]f(X) = 4x1 + 5x2
2x1- 3x2 ≥ 6
-x1 + x2 ≥ 1
x1, x2 ≥ 0
Să se scrie duala şi apoi să se cerceteze existenţa soluţiilor optime
ale cuplului de probleme duale.
Rezolvare
Duala are forma:
[max]g(U) = 6u1 + u2
2u1- u2 ≤ 4
-3u1 + u2 ≤ 5
u1, u2 ≥ 0
Se aduce la forma standard:
2u1- u2 + u3 = 4
-3u1 + u2 + u4 = 5
ui ≥ 0; i = 4,1 , cu:
a1 a2 a3 a4
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
−10130112
unde baza iniţială B = ⎨a3, a4⎬, iar funcţia de eficienţă:
[max]g = 6u1 + u2 + 0(u3 + u4).
130
Programare liniară
6 1 0 0 B CB UB a1 a2 a3 a4
←a3 a4
0 0
4 5
2↓ -3
-1 1
1 0
0 1
-
gj 0 0 0 0 0 ∆j = cj-gj 6 1 0 0 a1 a4
6 0
2 11
1 0
-1/2↓ -1/2
1/2 3/2
0 0
- -
gj 12 6 -3 3 0 ∆j 0 4 -3 0
Ar trebui să intre în bază a2 (∆2 = 4 > 0) dar toate componentele de
pe coloana lui sunt negative. Atunci observaţia 5 din paragraful 5 ne spune
că problema duală (de maxim) are optim infinit, iar observaţia de la
proprietatea 2 ne spune că atunci problema primală (de minim) nu are
soluţii.
8. Problema transporturilor
8.1 Forma generală
Presupunem că un anumit tip de produs se găseşte depozitat în m
centre furnizoare A1, ..., Am, în cantităţi respectiv egale cu a1, ..., am. Acest
produs urmează să fie transportat în n puncte beneficiare B1, ..., Bn, unde
necesarul este, respectiv b1, ..., bn. Admitem cunoscute costurile unitare de
transport cij (costul de transport al unei unităţi de produs de la Ai la Bj),
i = m,1 , j = n,1 . Să determinăm planul optim de transport, altfel spus
cantităţile xij ce vor fi transportate de la Ai la Bj, i = m,1 , j = n,1 , astfel
încât cheltuielile totale de transport să fie minime.
131
Modele matematice în economie
Prezentăm datele problemei transporturilor (problema T) în următorul tabel:
Bj
Ai B1 ... Bj ... Bn D
A1 c11/x11 ... c1j/x1j ... c1n/x1n a1
∶ ∶ ∶ ∶ ∶ ∶ ∶
Ai ci1/xi1 ... cij/xij ... cin/xin ai
∶ ∶ ∶ ∶ ∶ ∶ ∶
Am cm1/xm1 ... cmi/xmi ... cmn/xmn am
N b1 ... bj ... bn
în care linia N este linia necesarului, iar coloana D este coloana
disponibilului.
Modelul matematic al acestei probleme este:
[min]f(X) = ∑∑= =
m
1i
n
1jijijxc (1)
≤∑=
n
1jijx ai, i = m,1 ,
≥∑=
m
1iijx bj, j = n,1 ,
xij ≥ 0, i = m,1 , j = n,1 , (3)
deci modelul unei probleme de programare liniară, la care mai putem
adăuga condiţii de nenegativitate pentru ai, bj, cij, i = m,1 , j = n,1 .
Definiţia 1: Problema T se numeşte echilibrată dacă:
∑∑==
=n
1jj
m
1ii ba .
În caz contrar problema T se numeşte neechilibrată.
(2)
132
Programare liniară
Observaţie: O problemă T neechilibrată se transformă în problemă T
echilibrată astfel:
a) dacă ∑∑==
<m
1ii
n
1jj ab , se introduce un beneficiar Bn+1 fictiv, pentru
care necesarul va fi bn+1 = ∑∑==
−n
1jj
m
1ii ba , iar costurile de transport
ci,n+1, i = m,1 vor fi egale cu zero;
b) dacă ∑∑==
>m
1ii
n
1jj ab , se introduce un furnizor fictiv Am+1, pentru
care disponibilul va fi am+1 = ∑∑==
−m
1ii
n
1jj ab , iar costurile de
transport cm+1, j, j = n,1 , vor fi egale cu zero.
Deci orice problemă T poate fi adusă la forma echilibrată.
Teorema 1:
Condiţia necesară şi suficientă pentru ca problema T să aibă forma
standard (relaţiile (2) să fie egalităţi) este
∑∑==
=n
1jj
m
1ii ba (4)
Demonstraţie: Suficienţa.
Dacă relaţia (4) este adevărată, să presupunem că una din restricţiile
(2) este satisfăcută cu inegalitatea strictă. Fie aceasta:
∑=
n
1jkjx < ak, k – fixat, 1 ≤ k ≤ m. Atunci:
∑ ∑∑∑∑∑= = === =
≤=<m
1i
n
1j
m
1iij
n
1jji
m
1i
n
1jij xbax
relaţie imposibilă, deoarece primul şi ultimul termen reprezintă aceeaşi
valoare.
133
Modele matematice în economie
Un raţionament analog se face pentru restricţiile de forma:
∑=
>m
1ikil bx , l – fixat, 1 ≤ l ≤ n.
Deci relaţiile (2) pot fi numai egalităţi, adică problema T are forma
standard.
Necesitatea.
Dacă relaţiile (2) sunt egalităţi, atunci:
∑ ∑∑∑ ∑∑= === = =
===n
1j
n
1jj
m
1iij
m
1i
m
1i
n
1jiji bxxa , adică relaţia (4).
Modelul matematic al unei probleme T echilibrate este:
[min]f(X) = ∑∑= =
m
1i
n
1jijijxc (1’)
∑=
=n
1jiij ax , i = m,1 (2’)
∑=
=m
1ijij bx , j = n,1
xij ≥ 0, i = m,1 , j = n,1 (3’)
În cele ce urmează vom presupune problema T echilibrată.
Definiţia 2: O matrice X = (xij), i = m,1 , j = n,1 ale cărei
componente satisfac condiţiile (2’) şi (3’), se numeşte plan de transport sau
soluţie posibilă (admisibilă) a problemei T.
Propoziţia 1.
Mulţimea soluţiilor posibile ale unei probleme T echilibrate este
nevidă.
134
Programare liniară
Demonstraţie:
Fie matricea X = (xij), i = m,1 , j = n,1 , unde
xij = Sba ji , i = m,1 , j = n,1 şi S = ∑ ∑
= =
=m
1i
n
1jji ba . Atunci:
n,1j,bSSb
aSb
Sba
x
m,1i,aSSab
Sa
Sba
x
jj
m
1i
m
1i
m
1ii
jjiij
ii
n
1j
n
1j
n
1jj
ijiij
=====
=====
∑ ∑ ∑
∑ ∑ ∑
= = =
= = =
adică X satisface relaţiile (2’).
Dar xij ≥ 0, deoarece ai ≥ 0, bj ≥ 0, S > 0, (∀)i = m,1 şi (∀) j = n,1 .
X satisface şi (3’), deci X e soluţie posibilă.
Matricea coeficienţilor necunoscutelor din relaţia (2’) o vom nota cu
M. Ea are m + n linii şi mn coloane. Pentru m, n ≥ 2, min(m+n, mn) = m + n
şi deci rangA ≤ m + n. Toate coloanele conţin de două ori valoarea 1, restul
elementelor fiind egale cu zero.
Propoziţia 2.
rangM = m + n – 1.
Demonstraţie:
Explicităm relaţiile (2’):
x11 + x12 + ...+ x1n = a1 x21 + x22 + ...+ x2n = a2
∶ ∶ xm1 + xm2 + ...+ xmn = am x11 + x21 + ...+ xm1 = b1 x12 + x22 + ...+ xm2 = b2
∶ ∶ x1n + x2n + ...+ xmn = bn
135
Modele matematice în economie
şi notăm cu aij vectorul coloană format cu coeficienţii necunoscutei xij.
Matricea M va avea forma:
a11 a12 ... a1n a21 a22 ... a2n ... am1 am2 ... amn
M =
⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜⎜
⎝
⎛
100100100
010010010
001001001
111000000
000111000
000000111
LLLL
MMMMMMMMMMMMM
LLLL
LLLL
LLLL
MMMMMMMMMMMMM
LLLL
LLLL
Am separat cu o linie coeficienţii primelor m linii.
Observăm că ultima linie din M se obţine din suma primelor m linii
minus suma următoarelor n – 1 linii, adică ultima linie este o combinaţie
liniară a celorlalte linii. Suprimând ultima linie şi reţinând doar coloanele
corespunzătoare vectorilor a1n, a2n, ..., amn, a11, a12, ..., a1n-1, obţinem o
matrice pătratică de ordinul m + n – 1 ale cărei elemente aflate sub
diagonala principală sunt nule, iar cele de pe diagonala principală sunt egale
cu 1. Determinantul acestei matrici este egal cu 1 şi deci
rangM = m + n – 1.
Din cele expuse până acum, deducem:
- o problemă T echilibrată este o problemă de programare liniară sub
forma standard;
- ea admite cel puţin o soluţie posibilă;
- rangul matricei sistemului de restricţii este m + n -1, deci există
m + n – 1 vectori coloană liniar independenţi ce vor forma o bază a
spaţiului ℝm+n-1. Prin urmare, va exista cel puţin o soluţie de bază
136
Programare liniară
cu cel mult m + n – 1 componente pozitive. Când soluţia de bază va
avea m + n – 1 componente pozitive, ea se va numi soluţie de bază
nedegenerată. În cazul în care numărul componentelor pozitive
este mai mic ca m + n – 1, spunem că avem o soluţie de bază
degenerată.
Definiţia 3: O problemă T se numeşte degenerată dacă ea admite o
soluţie de bază degenerată.
Teorema 2:
Condiţia necesară şi suficientă ca o problemă T să fie degenerată
este să existe un sistem de indici i1, ..., ip, j1, ..., jr, p < m, r < n, astfel încât:
∑ ∑= =
=p
1k
r
1hjhik ba .
Observăm că sunt îndeplinite toate condiţiile pentru aplicarea
metodei simplex. Totuşi, după cum se va vedea în continuare, în cazul
problemei T este mai uşor să se aplice o altă metodă.
8.2 Soluţii posibile de bază iniţiale
Ca şi în utilizarea metodei simplex, în metoda de rezolvare a
problemei T soluţia optimă se găseşte pornind de la o soluţie posibilă de
bază oarecare, aplicând apoi un procedeu de îmbunătăţiri succesive.
Prezentăm în continuare câteva metode de determinare a soluţiilor
posibile de bază pentru problema T echilibrată.
137
Modele matematice în economie
1. Metoda Nord-Vest
Se consideră problema T echilibrată şi se scrie tabelul în care se află
datele problemei: disponibilităţile ai, necesităţile bj şi costurile unitare de
transport cij, i = m,1 , j = n,1 . Fie X = (xij), i = m,1 , j = n,1 , matricea
necunoscutelor problemei, pe care, într-un alt tabel, ne pregătim să o
completăm. Procedeul porneşte cu asignarea unei valori necunoscutei aflate
în colţul de Nord-Vest al tabelului dat, punându-se x11 = min(a1, b1).
Dacă min(a1, b1) = a1, se completează elementele primei linii cu
zero. Apoi, mergem pe coloana întâi şi alegem x21 = min(b1 – x11, a2). Când
avem x21 = b1 – x11, elementele rămase pe coloană devin nule. Altfel, dacă
x21 = a2, toate celelalte elemente de pe linia a doua sunt zero.
În cazul când min(a1, b1) = b1, poziţiile rămase libere în prima
coloană primesc valoarea zero. Apoi, comparăm a1 – x11 cu b2 şi minimul lor
va fi x12. Dacă x12 = a1 – x11, restul de elemente de pe linia întâi se anulează.
Altfel, dacă x12 = b2, elementele de la x22 la xm2 devin zero.
Procedeul continuă în modul descris mai sus, până la epuizarea
elementelor de comparat. Liniile sau coloanele care se completează cu
zerouri le considerăm detaşate de matricea iniţială, pentru a ne concentra
atenţia asupra elementului din colţul de nord-vest (stânga-sus) al unei
matrice de dimensiuni din ce în ce mai mici.
Exemplu
Considerăm problema T din următorul tabel:
BjAi
B1 B2 B3 B4 D
A1 A2 A3
3 2 7
1 5 3
2 1 3
4 6 1
201030
N 12 9 18 21
138
Programare liniară
Problema este echilibrată: ∑ ∑= =
==3
1i
4
1jji 60ba .
Luăm pentru x11 = min(20, 12) = 12, restul elementelor coloanei 1
fiind nule. Mai departe, x12 = min(20 – 12, 9) = 8 şi completăm prima linie,
punând x13 = x14 = 0. Trecem apoi la x22 = min(10, 9 – 8) = 1 şi completăm
coloana a doua cu x32 = 0. În linia a doua, calculăm x23 = min(10-1, 18) = 9
şi vom avea deci x24 = 0, care încheie această linie.
În sfârşit, x33 = min(18-9, 30) = 9 şi astfel, x34 = 21. Soluţia obţinută
o scriem în tabelul:
12 8
1 9
9 21
în care elementele nenule sunt x11, x12, x22, x23, x33 şi x34, în număr de
m + n -1 = 3 + 4 – 1 = 6. Deci avem o soluţie de bază nedegenerată. Costul
total corespunzător acestei soluţii este:
3 ⋅ 12 + 1 ⋅ 8 + 5 ⋅ 1 + 1 ⋅ 9 + 3 ⋅ 9 + 1 ⋅ 21 = 106.
Observaţie: Metoda expusă operează numai cu valorile ai şi bj, fără a
lua în considerare elementele cij ale matricei costurilor unitare. Este evident
că un cost total mai mic se va obţine utilizând rutele cu costuri unitare mai
mici. Această observaţie este folosită în metodele care urmează.
2. Metoda costului minim pe linie
Se determină mai întâi c1k = minc1j şi apoi x1k = min(a1, bk). Se
înlocuiesc a1 şi bk cu a1 – x1k şi respectiv bk – x1k, după care se suprimă linia
1 sau coloana k căreia îi corespunde diferenţa nulă şi se repetă procedeul în
tabelul rămas până când sunt satisfăcute toate cererile.
1≤j≤n
139
Modele matematice în economie
Pe exemplul nostru c1k = c12 = 1 şi deci x12 = min(20,9) = 9. Se
înlocuieşte a1 cu 20 – 9 = 11 şi b2 cu 0, după care se suprimă coloana a
doua şi repetând procedeul se obţine soluţia:
9 11
3 7
9 21
nedegenerată, pentru care costul total va fi 128.
3. Metoda costului minim pe coloană
Se determină cl1 = mi1
min≤≤
ci1 şi se ia xl1 = min(al, b1), înlocuindu-se
apoi al şi b1 prin al – xl1 respectiv b1 – xl1, după care se suprimă linia l sau
coloana 1 şi se obţine un tabel redus pe care se repetă procedeul până când
toate cererile sunt satisfăcute. În exemplul nostru c1l = c21 şi
x21 = min(10, 12) = 10.
Se înlocuieşte b1 cu 12 – 10 = 2, a2 cu 0, se suprimă linia a doua,
ş.a.m.d., obţinându-se în final soluţia:
2 9 9
10
9 21
nedegenerată, cu costul total 101.
4. Metoda costului minim din matrice
Se caută ckp = nj1mi1
min≤≤≤≤
cij şi se ia xkp = min(ak, bp), iar ak şi bp se
înlocuiesc prin ak – xkp respectiv bk – xkp, după care se suprimă linia k sau
coloana p şi se obţine un tabel redus în care se repetă procedeul de mai sus
până când toate cererile sunt satisfăcute.
140
Programare liniară
În exemplul nostru ckp = c12 sau c23 sau c34. Presupunem că este c12 şi
se ia x12 = min(a1, b2) = (20, 9) = 9, anulându-se coloana a doua, iar în loc
de a1 vom lua 20 – 9 = 11 ş.a.m.d.. Obţinem:
3 9 8
10
9 21
soluţie nedegenerată pentru care costul total este 120.
8.3 Metoda potenţialelor pentru determinarea soluţiei optime
Fie problema T:
[min]f(X) = ∑∑= =
m
1i
n
1jijijxc (1’)
m,1i,ax i
n
1jij ==∑
=
(2’a)
n,1j,bx j
m
1iij ==∑
=
(2’b)
xij ≥ 0, i = m,1 , j = n,1 (3’)
Vom scrie duala acestei probleme de programare liniară astfel:
fiecărei restricţii de tipul (2’a) i se asociază o variabilă ui, i = m,1 şi fiecărei
restricţii de tipul (2’b) variabila vj, j = n,1 .
Cum fiecare variabilă apare o singură dată în (2’a) şi o singură dată
în (2’b), duala va avea forma:
[max]g = ∑ ∑= =
+m
1i
n
1jjjii vbua (5)
141
Modele matematice în economie
ui + vj ≤ cij, i = m,1 , j = n,1 (6)
ui şi vj fără restricţii de semn deoarece relaţiile (2’a) şi (2’b) sunt
egalităţi.
Notând x ij respectiv ( u i, v j) componentele soluţiilor optime ale
celor două probleme duale, din teorema ecarturilor complementare avem:
x ij(cij - u i - v j) = 0, i = m,1 , j = n,1 .
Pornind de la o soluţie de bază nedegenerată, unde există m + n – 1
componente xij > 0, soluţia va fi optimă dacă:
cij = ui + vj (7)
pentru toate rutele (i, j) pentru care xij > 0, dacă sunt satisfăcute relaţiile (6)
pentru restul rutelor.
Relaţiile (7) reprezintă un sistem de m + n – 1 ecuaţii cu m + n
necunoscute ui şi vj. Pentru rezolvarea sistemului dăm unei necunoscute o
valoare arbitrară, de exemplu u1 = 0.
Cu acestea, expunem algoritmul pentru determinarea soluţiei optime
pornind de la o soluţie posibilă de bază nedegenerată.
Pasul 1. Ne asigurăm ca problema T să fie echilibrată.
Pasul 2. Cu una din metodele expuse anterior determinăm o soluţie
posibilă de bază X1 şi presupunem că este nedegenerată.
Pasul 3. Se rezolvă sistemul (7) pentru u1 = 0. Un procedeu simplu
de rezolvare a sistemului (7), fără să se scrie ecuaţiile constă în transcrierea
coloanei lui ui la stânga coloanelor unei matrici m × n şi a unei linii cu
elementele vj deasupra liniilor matricei m × n, matrice ale cărei elemente
sunt costurile calculate c’ij = ui + vj, i = m,1 , j = n,1 , în care în prealabil au
fost trecute costurile unitare cij ce corespund componentelor xij > 0.
Deci, în căsuţele corespunzătoare lui xij > 0, c’ij = cij.
142
Programare liniară
Completarea coloanei lui ui şi a liniei vj se face astfel: dacă u1 = 0 şi
u1 + vp = c1p, rezultă valoarea lui vp. Dacă uq + vp = cpq, rezultă uq ş.a.m.d..
După determinarea valorilor ui, i = m,1 şi vj, j = n,1 , completăm
matricea cu cantităţile c’ij = ui + vj şi o notăm C’ = (c’ij), i = m,1 , j = n,1 ,
numind-o matricea costurilor calculate (spre a o deosebi de matricea
costurilor reale C = (cij), i = m,1 , j = n,1 , dată iniţial).
Pasul 4. Determinăm matricea ∆ = (∆ij), i = m,1 , j = n,1 , cu
∆ij = c’ij – cij. Poate apărea una din situaţiile:
a) ∆ij ≤ 0, (∀) i = m,1 , (∀) j = n,1 , caz în care condiţiile teoremei
ecarturilor complementare sunt satisfăcute şi X1 este soluţie
optimă pentru problema primală, problema T;
b) (∃) ∆ij > 0; X1 nu este optimă, ea trebuie îmbunătăţită.
Pasul 5. Dacă 00 ji∆ =
j,imax ∆ij, cu ∆ij > 0, (i0, j0) ∉ D (D fiind
mulţimea perechilor (i, j) pentru care xij > 0), introducem în matricea în care
vom construi soluţia X2, mai bună ca X1, în ruta (i0, j0), cantitatea
x00 ji = θ > 0. Se realizează un ciclu de rute, pornind şi ajungând în (i0, j0) de
forma (i0, jk), (ir, jk), (ir, js), (ip, js), ..., (it, j0), toate rutele aparţinând lui D.
Astfel se formează un lanţ, pornind din (i0, j0), schimbând direcţia
numai în rutele din D şi numai în unghi drept şi ajungând în (i0, j0). Se
examinează valorile xij din rutele de ordin impar (prima este (i0, jk)) şi se
găseşte valoarea minimă notată prin θ a acestor valori. Introducând θ în
(i0, j0), scăzând θ din xij în rutele de ordin impar şi adunând θ la valorile xij
în rutele de ordin par se obţine o nouă soluţie posibilă de bază, deoarece o
componentă a lui X1 se anulează şi în (i0, j0) apare componenta θ > 0. Dacă
143
Modele matematice în economie
noua soluţie este nedegenerată, se trece la pasul 3, rulând algoritmul până se
obţine condiţia de optimalitate ∆ij ≤ 0, (∀) i = m,1 , (∀) j = n,1 .
Această metodă de rezolvare a problemei T este cunoscută sub
numele de metoda potenţialelor şi i se datorează lui Dantzig.
Observaţie: Cazul în care X2 e soluţie degenerată va fi tratat ulterior.
Exemplu
Reluând exemplul de la metoda Nord-Vest, cu soluţia posibilă de
bază obţinută prin această metodă şi aplicând pasul 3 rezolvăm sistemul:
u1 + v1 = 3 u2 + v2 = 5 u3 + v3 = 3
u1 + v2 = 1 u2 + v3 = 1 u3 + v4 = 1
Pentru u1 = 0 se obţin succesiv valorile: v1 = 3, v2 = 1, u2 = 4,
v3 = -3, u3 = 6, v4 = -5.
Matricele C’ = (c’ij), c’ij = ui + vj şi ∆ = (∆ij), ∆ij = c’ij – cij, i = m,1 ,
j = n,1 sunt:
C’ = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−−−
137911575313
şi ∆ = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−−−
004270059500
În ∆ există valori pozitive, deci soluţia X1 (obţinută prin metoda N-
V) nu este optimă. Cea mai mare valoare pozitivă este 5 pe ruta (2, 1).
Formăm lanţul cu rutele intermediare:
(1, 1), (1, 2), (2, 2) care porneşte din poziţia (2, 1).
12 8
(2, 1) 1
144
Programare liniară
Pornind din poziţia (2, 1) se scade şi se adună alternativ valoarea θ
din fiecare vârf, astfel:
12-θ 8+θ
θ 1-θ
şi observăm că min(x11, x22) = min(12, 1) = 1, deci θ = 1.
Obţinem astfel noua soluţie de bază X2:
11 9
1 9
9 21
Reluăm pasul 3 cu rezolvarea sistemului:
u1 + v1 = 3 u2 + v1 = 2 u3 + v3 = 3
u1 + v2 = 1 u2 + v3 = 1 u3 + v4 = 1
Pentru u1 = 0 se obţine v1 = 3, v2 = 1, u2 = -1, v3 = 2, u3 = 1, v4 = 4,
pentru care matricea:
C = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛−13241102
0213 şi ∆ =
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−−−−−
001370501000
Deoarece toate elementele matricei ∆ sunt mai mici sau egale cu
zero, X2 este soluţia optimă şi costul total corespunzător este 101.
145
Modele matematice în economie
Practic este preferabil să se expună calculele sub formă de tabele.
Pentru problema rezolvată mai sus, tabelele sunt: vj
ui 3 1 -3 -5 ∆
12 8 0 3 1 -3 -5 0 0 -5 -9 12-θ 8+θ 1 9 4 7 5 1 -1 5 0 0 -7 θ 1-θ 9
X1
9 21 6 9 7 3 1 2 4 0 0 9 21 f1 = 106 vj
ui 3 1 2 0 θ = 1
11 9 0 3 1 2 0 0 0 0 -4 1 9 -1 2 0 1 -1 0 -5 0 -7
X2
9 21 1 4 2 3 1 -3 -1 0 0
8.4 Observaţii la aplicarea metodei potenţialelor
1. Dacă pentru soluţia optimă X0 avem ∆ij = 0 pentru (i, j) ∉ D se
poate obţine o nouă soluţie optimă aplicând acestei rute pasul 5 şi
introducând θ în (i, j). Vom găsi o nouă soluţie optimă X’0 şi soluţia optimă
generală va fi:
X = λX0 + (1 - λ)X’0, λ ∈ [0, 1].
În acest caz vom spune că problema T are soluţie optimă multiplă
sau are o infinitate de soluţii optime.
În exemplul precedent ∆13 = 0, deşi (1, 3) ∉ D (sunt indici din afara
bazei). Dacă în (1, 3) introducem θ şi aplicăm pasul 5, obţinem:
11-θ 9 θ
1+θ 9-θ
9 21
unde θ = min(11, 9) = 9, şi deci obţinem o nouă soluţie X3 pentru care mai
aplicăm o dată algoritmul.
146
Programare liniară
vj ui
3 1 2 0 ∆
2 9 9 0 3 1 2 0 0 0 0 -4 10 -1 2 0 1 -1 0 -5 0 -7
X3
9 21 1 4 2 3 1 -3 0 0 0
Cum toate elementele matricei ∆ sunt mai mici sau egale cu zero
noua soluţie este optimă, deci problema T are o infinitate de soluţii optime
date de:
X = λX2 + (1 - λ)X3, λ ∈ [0, 1].
Soluţia optimă X3 este tocmai soluţia iniţială de bază obţinută prin
metoda costului minim pe coloană.
2. Dacă j,i
max ∆ij = ∆pq =∆rs, ∆ij > 0, p, r ∈ ⎨1, ..., m⎬, q, s ∈⎨1, ..., n⎬,
pentru a vedea în ce rută trebuie să-l introducem pe θ, comparăm costurile
cpq şi crs şi dacă cpq < crs, introducem θ în ruta (p, q).
3. În rezolvarea problemei T poate apărea o soluţie posibilă de bază
degenerată, fapt ce ar face imposibilă rezolvarea sistemului în necunoscutele
ui şi vj din pasul 3. O astfel de situaţie poate apărea în două cazuri:
a) când soluţia iniţială de bază este degenerată. Evitarea acestui
neajuns se poate face cu metoda perturbării ce constă în reformularea
problemei, punând:
ai(ε) = ai + ε, i = m,1
bj(ε) = bj, j = 1n,1 −
bn(ε) = bn + mε, ε > 0, arbitrar de mic.
Cu aceste date determinăm soluţia iniţială de bază ale cărei
componente depind de ε. Punem condiţia ca ε → 0 şi se vor obţine
componente bazice nule pe care le tratăm ca şi când ar fi pozitive.
147
Modele matematice în economie
Exemplu
Fie problema T, echilibrată:
Bj
Ai B1 B2 B3 D
A1 7 8 3 40
A2 4 1 2 15
A3 5 7 6 25
N 30 10 40
şi soluţia posibilă de bază iniţială obţinută prin metoda Nord-Vest:
30 10
15
25
Observăm că numărul componentelor pozitive, patru, este mai mic
ca m + n -1 = 3 + 3 – 1 = 5, deci soluţia este degenerată.
Reformulăm problema punând:
30 10 ε 40+ε
15+ε 15+ε
25+ε 25+ε
30 10 40+3ε
Pentru ε → 0 vom avea x13 = 0, componentă bazică nulă, cu care se
va lucra ca şi când ar fi pozitivă. Spunem că x13 este un zero esenţial spre a-l
deosebi de celelalte zerouri corespunzătoare componentelor nebazice.
148
Programare liniară
b) Degenerarea poate apare la modificarea unei soluţii de bază când
pe rutele unde se scade cantitatea θ, valoarea minimă apare de două sau mai
multe ori. În acest caz se anulează două sau mai multe componente ale
soluţiei, creându-se o soluţie cu mai puţin de m + n – 1 componente
pozitive, deci degenerată.
Dintre componentele ce au devenit nule se renunţă la cea căreia îi
corespunde costul unitar cel mai mare, celelalte rămânând componente
bazice nule (zerouri esenţiale) şi se va lucra cu ele ca şi când ar fi pozitive.
Exemplu
Fie problema T echilibrată:
Bj
Ai B1 B2 B3 D
A1 4 2 1 12
A2 3 5 2 15
A3 4 2 2 2
N 5 12 12
şi soluţia ei posibilă de bază iniţială obţinută prin metoda Nord-Vest:
5 7
5 10
2
nedegenerată.
Rezolvăm problema în următorul tabel: vj
ui 4 2 -1 ∆
5 7 0 4 2 -1 0 0 -2 5-θ 7+θ 5 10 3 7 5 2 4 0 0 θ 5-θ 10
X1
2 3 7 5 2 3 3 0 2
149
Modele matematice în economie
θ = min(5, 5) = 5 şi noua soluţie va fi:
12
5 10
2
degenerată din cauza anulării pentru θ = 5 a două componente pozitive
(x11 şi x22). Comparând costurile c11 = 4 cu c22 = 5, c11 < c22, vom renunţa la
zeroul de pe ruta (2, 2), iar x11 = 0 va fi un zero esenţial cu care se va lucra
mai departe ca şi când ar fi un număr pozitiv.
4) Există probleme practice ce conduc la modelul matematic al
problemei T în care se cere maximizarea funcţiei obiectiv. În acest caz
metoda potenţialelor comportă următoarele modificări: în construirea unei
soluţii posibile de bază iniţiale metoda costului minim (pe linie, coloană,
total) devine metoda costului maxim şi se aplică pornind de la valoarea cea
mai mare (pe linie, coloană, în toată matricea) din C. La metoda Nord-Vest
nu se impune nici o modificare. Calculul diferenţelor ∆ij se face după
formula:
∆ij = cij – c’ij, i = m,1 , j = n,1
iar condiţia de optim este aceeaşi ∆ij ≤ 0, (∀)i = m,1 , j = n,1 .
5) Există probleme T în care practica impune evitarea unor rute, deci
cu rute interzise. Dacă ruta (k, h) nu trebuie folosită, orice soluţie va trebui
să aibă xkh = 0, rezultat care se obţine astfel:
- pentru problemele de minim se va lua ckh = M, M → ∞;
- pentru problemele de maxim se pune ckh = 0.
Raţiunea acestor înlocuiri este evidentă. În cazul minimului evitarea
rutei se face luând costul unitar foarte mare iar pentru maxim costul unitar
nul face ruta incovenabilă.
150
Programare liniară
6) Între valorile funcţiei obiectiv fi+1 pentru soluţia Xi+1 şi fi pentru
soluţia Xi există relaţia de recurenţă:
fi+1 = fi - ∆ *ijθ
pentru problema de minimizare a lui f, unde ∆ *ij este cea mai mare valoare
pozitivă în ∆, iar θ este valoarea determinată pentru îmbunătăţirea lui Xi cu
Xi+1.
Dacă problema cere maximizarea lui f, relaţia de recurenţă este:
fi+1 = fi + ∆ *ijθ.
Aplicaţie
Pornind de la o soluţie de bază iniţială obţinută prin metoda
minimului pe coloană, să se rezolve următoarea problemă T în care se cere
minimizarea funcţiei obiectiv:
Bj
Ai B1 B2 B3 D
A1 2 3 1 15
A2 4 1 0 9
N 7 11 8
Rezolvare
Deoarece N = ∑=
3
1jjb = 26 şi D = ∑
=
2
1iia = 24, problema este
neechilibrată. Introducem pentru echilibrare A3 fictiv căruia îi repartizăm un
disponibil egal cu N – D = 2 şi toate costurile unitare de pe linia lui A3 vor fi
nule.
151
Modele matematice în economie
Avem acum de rezolvat următoarea problemă T modificată:
Bj
Ai B1 B2 B3 D
A1 2 3 1 15
A2 4 1 0 9
A3 0 0 0 2
N 7 11 8
a cărei soluţie posibilă de bază iniţială prin metoda minimului pe coloane
este:
5 2 8
9
2
Această soluţie are 5 componente pozitive şi m+n – 1 = 3+3 – 1 = 5,
deci este o soluţie nedegenerată. Putem trece la rezolvarea problemei T
modificată cu calculele în tabelul următor: vj
ui 2 3 1 ∆
5 2 8 0 2 3 1 0 0 0 5+θ 2-θ 8 9 -2 0 1 -1 -4 0 -1 9
X1
2 -2 0 1 -1 0 1 -1 2-θ θ f1 = 33 vj
ui 2 2 1 θ = 2
7 8 0 2 2 1 0 -1 0 9 -1 1 1 0 -3 0 0
X2
0 2 -2 0 0 -1 0 0 -1 f2 = 31
Soluţia optimă este:
[min]f(X) = 31
x11 = 7, x13 = 8, x22 = 9, x32 = 2
152
Programare liniară
această din urmă componentă (x32) este fictivă deoarece A3 este fictiv şi deci
B2 nu primeşte tot necesarul de 11 unităţi ci doar 9.
Pe parcursul rezolvării a intervenit degenerarea prin anularea de
către θ = 2 a două componente pozitive din X1, şi anume x12 şi x31. Cum
c31 < c12, renunţăm la x12 şi luăm x13 = 0, zero esenţial, tratat ca fiind un
număr pozitiv.
În etapa de optim, în matricea ∆, în afara rutelor corespunzătoare
componentelor bazice, mai apare un zero în ruta (2, 3), deci soluţia optimă a
problemei date este multiplă.
În sfârşit din tabel observăm că f1 = 33, ∆ *ij = ∆32 = 1 iar θ = 2.
Relaţia de recurenţă ne dă:
f2 = f1 - ∆ *ijθ = 33 – 1 ⋅ 2 = 31, atât cât am obţinut şi noi în tabel
folosind definiţia funcţiei obiectiv:
f(X) = ∑∑= =
m
1i
n
1jijij .xc
9. Probleme
1. Conducerea unei firme îşi propune să producă, folosind 2 tipuri de
materie primă M1 şi M2, 4 tipuri de produse P1, P2, P3, P4. Consumurile
specifice, cantităţile disponibile din M1 şi M2, preţurile unitare de vânzare bi
şi costurile unitare ci, i = 4,1 sunt date în următorul tabel:
P1 P2 P3 P4 Disponibil M1 1 3 2 2 200 M2 4 1 3 1 300 bi 5 7 10 6 ci 3 4 6 4
153
Modele matematice în economie
Studiul pieţei de desfacere impune condiţia ca întreaga producţie să
nu depăşească 500 unităţi.
Să se scrie modelul matematic ce va conduce la planul optim de
producţie.
Rezolvare
Fie xi cantitatea de produs Pi, i = 4,1 . Beneficiul unei unităţi de
produs Pi va fi bi – ci; atunci beneficiul total va fi:
f = ∑=
−4
1iiii x)cb( , şi se caută cel mai mare beneficiu, deci pentru
cazul nostru:
[max]f(x) = 2x1 + 3x2 + 4x3 + 2x4
x1 + 3x2 + 2x3 + 2x4 ≤ 200
4x1 + x2 + 3x3 + x4 ≤ 300
x1 + x2 + x3 + x4 ≤ 500
xi ≥ 0; i = 4,1 .
2. Unei firme îi este necesară într-un trimestru o cantitate de 30
vagoane dintr-un anumit tip de produs. Aprovizionarea se face eşalonat la
începutul fiecărei luni. Cererea în vagoane, costurile unitare în mii de euro
sunt date în tabelul de mai jos: Luna 1 2 3 Cererea 10 12 8 Costul 30 25 32
Se ştie că la începutul primei luni firma dispune de 6 vagoane din
produsul respectiv, pot fi depozitate cel mult 14 vagoane iar la sfârşitul
trimestrului cantitatea de produs trebuie să fie consumată integral.
154
Programare liniară
Să se scrie modelul matematic al problemei când se caută costul total
minim de aprovizionare.
Rezolvare
Notăm cu xi numărul de vagoane din produsul căutat comandate la
începutul lunii i, i = 3,1 .
Cantitatea x1 adăugată celor 6 vagoane existente trebuie să satisfacă
cererea din prima lună şi să nu depăşească capacitatea de depozitare. Adică:
10 ≤ x1 + 6 ≤ 14 sau 4 ≤ x1 ≤ 8 (1)
La sfârşitul primei luni, mai rămân x1 + 6 – 10 = x1 – 4 vagoane, iar
la începutul lunii a doua avem x1 – 4 + x2 ce va trebui să satisfacă condiţiile:
12 ≤ x1 – 4 + x2 ≤ 14 sau 16 ≤ x1 + x2 ≤ 18 (2)
Cantitatea x3 va trebui să satisfacă condiţia:
6 + x1 + x2 + x3 = 30 sau x1 + x2 + x3 = 24 (3)
Modelul matematic al problemei va fi:
[min]f(x) = 30x1 + 25x2 + 32x3
4 ≤ x1 ≤ 8
16 ≤ x1 + x2 ≤ 18
x1 + x2 + x3 = 24 xi ≥ 0; i = 3,1 .
3. Să se rezolve grafic problema:
[min]f(x) = x1 + 2x2
-x1 + x2 ≥ 2
x1 + 2x2 ≤ 4
5x1 – 3x2 ≤ 15
x1, x2 ≥ 0
155
Modele matematice în economie
Rezolvare
Folosim metoda grafică şi reprezentăm dreptele (d1) –x1 + x2 = 2,
(d2) x1 + 2x2 = 4; (d3) 5x1 – 3x2 = 15 şi apoi regiunile corespunzătoare
inegalităţilor.
x2 C
A
2
3 4 x1
Mulţimea soluţiilor posibile este porţiunea haşurată. Soluţia optimă
se va găsi în unul din vârfurile A(0, 2), B ⎟⎠⎞
⎜⎝⎛
135,
1342 , C ⎟
⎠⎞
⎜⎝⎛
225,
221 . Şi cum:
f(A) = 0 + 2 ⋅ 2 = 4
f(B) = 1352
1342
⋅+ = 4
f(C) = 271
2252
221
=⋅+ = 35, 5.
[min]f(x) = 4 în A când x1 = 0 şi x2 = 2 sau în B când x1 = 1342 şi
x2 = 135 . Adică problema are ca soluţii optime X1 = (0, 2) şi X2 = ⎟
⎠⎞
⎜⎝⎛
135,
1342 .
Atunci orice combinaţie liniară convexă de forma:
X = λX1 + (1 - λ)X2, (∀) λ∈[0,1]
B
(d2)
(d3)
(d1)
156
Programare liniară
este tot soluţie optimă, deci problema are o infinitate de soluţii optime date
de: X = ⎟⎠⎞
⎜⎝⎛ λ+λ−
13215,
134242 , (∀)λ∈[0,1], obţinute prin înlocuirea lui
X1 şi X2 în expresia lui X.
Observaţie: Dacă se cerea [max]f(x) = x1 + 2x2, atunci această
valoare se găseşte în C unde f(C) = 35, 5 şi deci:
[max]f = 35,5 în x1 = 221 şi x2 =
225 , deci soluţia unică este
X = ⎟⎠⎞
⎜⎝⎛
225,
221 .
4. Fie sistemul de inecuaţii:
x1 + 2x2 – 3x3 ≤ 3
2x1 – x2 – 6x3 ≥ 4
xj ≥ 0, j = 3,1 .
a) Aduceţi sistemul la forma standard şi asiguraţi-vă ca matricea
sistemului să conţină o bază canonică în R2;
b) Determinaţi 4 soluţii de bază pentru sistemul de ecuaţii de la a) şi
faceţi observaţii asupra soluţiilor găsite;
c) Dacă f(x) = 2x1 – 5x2 + 3x3, calculaţi valoarea lui f în soluţiile
găsite la b) şi specificaţi în care dintre ele f ia cea mai mare
valoare.
Rezolvare
a) Sistemul de ecuaţii va fi:
x1 + 2x2 – 3x3 + x4 = 3
2x1 – x2 – 6x3 – x5 = 4
xj ≥ 0, j = 5,1 .
157
Modele matematice în economie
Matricea sistemului este:
a1 a2 a3 a4 a5
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−−−
−10612
01321
Ca aceasta să conţină o bază canonică, forţăm ecuaţia a doua
adunând în membrul stâng y = 0 (variabilă artificială) ce va genera vectorul
artificial α, şi sistemul va deveni:
x1 + 2x2 – 3x3 + x4 = 3
2x1 – x2 – 6x3 – x5 + y = 4
xj ≥ 0, y ≥ 0 iar:
a1 a2 a3 a4 a5 α
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−−−
−10
1061201321
cu baza canonică ⎨a4, α⎬.
b) Pentru determinarea soluţiilor de bază aplicăm lema substituţiei
pentru sistemul de ecuaţii de la punctul a) şi organizăm calculele în
următorul tabel: Baza Nec.
princ. a1 a2 a3 a4 a5 α b Soluţia
a4 α
x4 y
1 2
2 -1
-3 -6
1 0
0 -1
0 1
3 4
X1 = (0,0,0,3,0,4)T
a4 a1
x4 x1
0 1
5/2 -1/2
0 -3
1 0
1/2 -1/2
-1/2 1/2
1 2
X2= (2,0,0,1,0,0)T
a2 a1
x2 x1
0 1
1 0
0 -3
2/5 1/5
1/5 -2/5
-1/5 2/5
2/5 11/5
X3 T)0,0,0,0,52,
511(=
a2 a3
x2 x3
0 -
1/3
1 0
0 1
2/5 -1/15
1/5 2/15
-1/5 -2/5
2/5 -11/15
X4 T)0,0,0,1511,
52,0( −=
X1 nu e soluţie pentru că y = 4 şi contrazice ipoteza în care a fost
introdus (y = 0).
158
Programare liniară
X4 nu este soluţie posibilă pentru că x3 = - 1511
< 0.
X2 şi X3 sunt soluţii posibile de bază, cu X2 soluţie degenerată
(numărul componentelor pozitive – dintre x1, x2, x3, este mai mic ca
numărul restricţiilor, 2), iar X3 este nedegenerată.
c) Deoarece f(X2) = 4 şi f(X3) = 2,4 rezultă că în X2 f ia cea mai
mare valoare.
5. Fie modelul de programare liniară:
[max]f(x) = 15x1 + 20x2
3x1 + 8x2 ≤ 24
7x1 + 3x2 ≤ 21
x1 ≥ 1
x1, x2 ≥ 0
a) Să se aducă la forma standard;
b) Să se enumere bazele ce se pot forma cu vectorii din matricea
tehnologică extinsă;
c) Să se rezolve problema pe cale grafică;
d) Să se rezolve problema prin algoritmul simplex.
Rezolvare
a) Folosim variabilele de compensare x3, x4, x5 astfel:
3x1 + 8x2 + x3 = 24
7x1 + 3x2 + x4 = 21
x1 – x5 = 1
xj ≥ 0, j = 5,1
[max]f(x) = 15x1 + 20x2 + 0(x3 + x4 + x5)
159
Modele matematice în economie
b) Matricea tehnologică extinsă este:
a1 a2 a3 a4 a5
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−100010103700183
Orice sistem de 3 vectori din A, liniar independenţi formează o bază.
Numărul maxim posibil de baze este C 35 = 10. Acestea sunt:
B1 = ⎨a1, a2, a3⎬; B2 = ⎨a1, a2, a4⎬; B3 = ⎨a1, a2, a5⎬; B4 = ⎨a1, a3, a4⎬;
B5 = ⎨a1, a3, a5⎬; B6 = ⎨a1, a4, a5⎬; B7 = ⎨a2, a3, a5⎬; B8 = ⎨a2, a4, a5⎬;
B9 = ⎨a3, a4, a5⎬. Vectorii ⎨a2, a3, a4⎬ nu pot forma o bază (rangul
matricei formate cu ei este mai mic ca numărul lor 3). Deci există 9 baze ce
vor da 9 soluţii de bază. Nu toate acestea sunt soluţii posibile de bază (cu
toate componentele nenegative).
c) În planul Ox1x2 reprezentăm dreptele:
(d1) 3x1 + 8x2 = 24; (d2) 7x1 + 3x2 = 21; (d3) x1 = 1. x2
7
3 C
D
A B
0 1 3 8 x1
(d3) (d2) (d1)
160
Programare liniară
Inegalităţile date sunt verificate de punctele din regiunea haşurată ale
cărei vârfuri A(1, 0), B(3, 0), C ⎟⎠⎞
⎜⎝⎛
47105,
4796 , D ⎟
⎠⎞
⎜⎝⎛
821,1 sunt cele 4 soluţii
posibile de bază ale problemei.
Cum f(A) = 15; f(B) = 45; f(C) = 47
3540 = 79,5; f(D) = 2
135 = 67,5
rezultă că soluţia optimă este în C şi:
[max]f(x) = 47
3540 , cu x1 = 4796 şi x2 =
47105 .
d) Forma standard conţine doar doi din vectorii matricei unitate de
ordinul trei; este necesar un vector unitar artificial şi avem:
3x1 + 8x2 + x3 = 24
7x1 + 3x2 + x4 = 21
x1 – x5 + y = 1
xj ≥ 0, j = 5,1 , y ≥ 0
[max]f(x) = 15x1 + 20x2 + 0(x3 + x4 + x5) – My
a1 a2 a3 a4 a5 α
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
− 100
100010103700183
şi B = ⎨a3, a4, α⎬.
15 20 0 0 0 -M B CB XB a1 a2 a3 a4 a5 α θ
a3 a4
←α
0 0
-M
24 21 1
3↓ 7 1
8 3 0
1 0 0
0 1 0
0 0 -1
0 0 1
8 3 1
fj -M -M 0 0 0 M -M ∆j = cj - fj 15+M 20 0 0 -M 0 ←a3
a4 a1
0 0
15
21 14 1
0 0 1
8↓ 3 0
1 0 0
0 1 0
3 7 -1
-3 -7 1
21/8 14/3
- fj 15 15 0 0 0 -15 15 ∆j = cj - fj 0 20 0 0 15 -M-15
I0 I1
161
Modele matematice în economie
a2 ←a4
a1
20 0
15
21/8 49/8
1
0 0 1
1 0 0
1/8 -3/8
0
0 1 0
3/8↓ 47/8 -1
-3/8 -47/8
1
7 49/47
- fj 135/2 15 20 5/2 0 -15/2 15/2 ∆j = cj - fj 0 0 -5/2 0 15/2 -M-5/2
a2 a5 a1
20 0
15
105/47 49/47 96/47
0 0 1
1 0 0
7/47 -3/47 -3/47
3/47 8/47 8/47
0 1 0
0 -1 0
fj 3540/47 15 20 95/47 60/47 0 0 ∆j = cj - fj 0 0 -95/47 -60/47 0 -M
I2 I3
Deci [max]f(x) = 47
3540 , X = T
0,47
105,4796
⎟⎠⎞
⎜⎝⎛ .
Observaţie: În iteraţia I1 apare soluţia din vârful A, în I2 apare soluţia
din vârful D, iar în I3 soluţia din vârful C.
6. Să se găsească soluţia optimă a următoarei probleme de
programare liniară, rezolvând duala ei prin algoritmul simplex.
[min]f(x) = 20x1 + 18x2 + x3
2x1 + 3x2 + 3x3 ≥ 6
2x1 + 2x2 – x3 ≥ 10
2x1 + x2 – x3 ≥ 8
x1, x2, x3 ≥ 0
Rezolvare
Modelul dual sub formă canonică de maxim (dualitate simetrică)
este: [max]g(u) = 6u1 + 10u2 + 8u3
2u1 + 2u2 + 2u3 ≤ 20
3u1 + 2u2 + u3 ≤ 18
3u1 - u2 – u3 ≤ 1
u1, u2, u3 ≥ 0
162
Programare liniară
Forma standard a dualei este:
[max]g(U) = 6u1 + 10u2 + 8u3 + 0(u4 + u5 + u6)
2u1 + 2u2 + 2u3 + u4 = 20
3u1 + 2u2 + u3 + u5 = 18
3u1 - u2 – u3 + u6 = 1
ui ≥ 0, i = 6,1 şi i se aplică algoritmul simplex:
6 10 8 0 0 0 B CB UB a1 a2 a3 a4 a5 a6
θ
a4
←a5 a6
0 0 0
20 18 1
2 3 3
2↓ 2 -1
2 1 -1
1 0 0
0 1 0
0 0 1
10 9 -
gj 0 0 0 0 0 0 0 ∆j = cj - gj 6 10 8 0 0 0 ←a4
a2 a6
0 10 0
2 9 10
-1 3/2 9/2
0 1 0
1↓ 1/2 -1/2
1 0 0
-1 1/2 1/2
0 0 1
2 18 -
gj 90 15 10 5 0 5 0 ∆j = cj - gj -9 0 3 0 -5 0
a3 a2 a6
8 10 0
2 8 11
-1 2 4
0 1 0
1 0 0
1 -1/2 1/2
-1 1 0
0 0 1
gj 96 12 10 8 3 2 0 ∆j = cj - gj -6 0 0 -3 -2 0
Soluţia optimă a problemei date (primale) este:
[min]f(x) = [max]g(u) = 96
iar componentele soluţiei x1, x2, x3 se citesc pe linia lui gj din ultima etapă
respectiv la intersecţia cu coloanele vectorilor a4, a5, a6 ce au format baza
iniţială. Astfel:
x1 = 3, x2 = 2, x3 = 0, sau X = (3, 2, 0)T.
163
Modele matematice în economie
7. Să se determine planul optim de transport pentru următoarea
problemă:
BjAi
B1 B2 B3 B4 D
A1 3 2 1 2 30 A2 4 3 3 2 20 A3 2 1 4 5 40 N 10 15 15 40
pornind de la o soluţie iniţială de bază obţinută prin metoda costului minim
pe linie.
Rezolvare
Deoarece N = ∑=
4
1jjb = 80, iar D = ∑
=
3
1iia = 90, problema este
neechilibrată. Se va echilibra introducând B5 fictiv cu necesarul 90 – 80 =
10 şi toate costurile de pe coloana lui B5 vor fi nule. Vom rezolva acum
problema T modificată.
Bj Ai
B1 B2 B3 B4 B5 D
A1 3 2 1 2 0 30 A2 4 3 3 2 0 20 A3 2 1 4 5 0 40 N 10 15 15 40 10
Aplicând metoda costului minim pe linie găsim soluţia posibilă de
bază iniţială X1
15 5 10 20
10 15 15
164
Programare liniară
care are 7 componente pozitive şi cum m + n – 1 = 3 + 5 – 1 = 7 soluţia
găsită este nedegenerată şi pentru ea avem f1 = 175.
vj
ui -1 -2 1 2 0 ∆
15 5 10 0 -1 -2 1 2 0 -4 -4 0 0 0 15 5+θ 10-θ 20 0 -1 -2 1 2 0 -5 -5 -2 0 0 20
X1
10 15 15 3 2 1 4 5 3 0 0 0 0 3 10 15 15-θ θ f1 = 175 vj
ui -1 -2 1 2 0 θ = 10
15 15 0 -1 -2 1 2 0 -4 -4 0 0 0 20 0 -1 -2 1 2 0 -5 -5 -2 0 0
X2
10 15 5 10 3 2 1 4 5 0 0 0 0 0 0 f2 = 145
Ultima soluţie X2 este optimă, [min]f(X) = 145.
În matricea ∆ de pe linia lui X2, etapa de optim, avem ∆33 = 0 deşi
x33 nu e componentă pozitivă în X2; rezultă că problema nu are soluţie
optimă unică, ci are o infinitate de soluţii optime.
Deoarece B5 este fictiv, cantitatea x35 = 10 nu se transportă,
rămânând disponibilă pentru o altă întrebuinţare.
8. Pornind de la o soluţie posibilă de bază obţinută prin metoda
Nord-Vest, să se rezolve problema T:
BjAi
B1 B2 B3 B4 D
A1 1 2 3 4 6 A2 4 3 2 0 8 A3 0 2 2 1 10 N 4 6 8 6
Rezolvare
Problema este echilibrată, N = D = 24. Soluţia iniţială obţinută prin
metoda Nord-Vest este:
4 2 4 4 4 6
165
Modele matematice în economie
cu 6 componente pozitive şi cum m + n – 1 = 3 + 4 – 1 = 6, este deci
nedegenerată.
Organizăm calculele în tabelul următor:
vj
ui 1 2 1 0 ∆
4 2 0 1 2 1 0 0 0 -2 -4 4-θ 2+θ 4 4 1 2 3 2 1 -2 0 0 1 4-θ 4+θ
X1
4 6 1 2 3 2 1 2 1 0 0 θ 4-θ 6 f1 = 42 vj
ui 1 2 3 2 θ = 4
0 6 0 1 2 3 2 0 0 0 -2 0 6 8 -1 0 1 2 1 -4 -2 0 1 8-θ θ
X2
4 0 6 -1 0 1 2 1 0 -1 0 0 4 0+θ 6-θ f2 = 34 vj
ui 1 2 3 1 θ = 6
0 6 0 1 2 3 1 0 0 0 -3 2 6 -1 0 1 2 0 -4 -2 0 0
X3
4 6 -1 0 1 2 0 0 -1 0 -1 f3 = 28
X3 este soluţie optimă, este degenerată pentru că are doar 5 componente pozitive. Degenerarea a provenit din cauza anulării pentru
θ = 4 a trei componente pozitive: x11, x22, x33. Comparând costurile corespunzătoare c11, c22, c33 cel mai mare este
c22 = 3 de aceea renunţăm la ruta (2, 2) şi vom lua x11 = x33 = 0, care vor fi zerouri esenţiale.
Deoarece în etapa de optim, matricea ∆ conţine pe ∆13 = 0, deşi x13 = 0, soluţia optimă nu e unică ci multiplă.
9. O firmă dispune de două centre furnizoare A1, A2, ale unui anumit
tip de produs, în respectiv cantităţile 15 şi 10. Produsul poate fi achiziţionat de beneficiarii B1, B2, B3 în respectiv cantităţile 12, 8, 10.
166
Programare liniară
Cunoscând beneficiile unitare cij (beneficiul adus de o unitate de produs din Ai transportat la Bj), i = 1, 2, j = 1, 2, 3, date în tabelul următor:
BjAi
B1 B2 B3 D
A1 1 3 4 15 A2 5 2 3 10 N 12 8 10
Să se determine planul optim de transport care să ducă la beneficiul
total maxim.
Rezolvare
Deoarece D = 25 şi N = 30, problema este neechilibrată. O
echilibrăm introducând A3 fictiv căruia îi asociem un disponibil egal cu 30 –
25 = 5, costurile de pe linia lui A3 fiind nule.
Obţinem astfel problema T modificată, pe care o rezolvăm.
BjAi
B1 B2 B3 D
A1 1 3 4 15 A2 5 2 3 10 A3 0 0 0 5 12 8 10
Soluţia posibilă iniţială de bază obţinută prin metoda costului maxim
din matricea C este X1:
5 10 10 2 3
167
Modele matematice în economie
X1 are 5 componente pozitive şi m + n – 1 = 3 + 3 – 1 = 5, deci este
nedegenerată. Formăm tabelul cu calcule:
vj ui
3 3 4 ∆
5 10 0 3 3 4 -2 0 0 10 2 5 5 6 0 -3 -3
X1
2 3 -3 0 0 1 0 0 -1 f1 = 105
Elementele matricei ∆, s-au calculat cu formula:
∆ij = cij – c’ij
şi sunt toate mai mici sau egale cu zero, deci X1 este soluţie optimă, este
unică şi nedegenerată, iar:
[max]f(x) = 105.
10. Din centrele furnizoare A1, A2, A3 se pot aproviziona beneficiarii
B1, B2, B3 cu un anumit tip de produs. Relaţii conflictuale fac ca
aprovizionarea lui B2 şi B3 de către A2 să fie interzisă. Să se determine
planul optim de transport cunoscând disponibilul furnizorilor, necesarul
beneficiarilor şi costurile unitare de transport date în tabelul de mai jos:
BjAi
B1 B2 B3 D
A1 5 4 2 90 A2 2 - - 70 A3 3 1 6 140N 50 60 40
168
Programare liniară
Rezolvare
Problema este neechilibrată, D = 300, N = 150 şi are rute interzise.
Introducem B4 fictiv cu un necesar egal cu 300 – 150 = 150, iar costurile pe
coloana lui B5 le luăm egale cu zero. În rutele (2, 2) şi (2, 3) vom pune
costurile egale cu M, M → ∞. Problema T modificată va fi:
BjAi
B1 B2 B3 B4 D
A1 5 4 2 0 90 A2 2 M M 0 70 A3 3 1 6 0 140N 50 60 40 150
Soluţia X1 posibilă de bază, iniţială, o determinăm prin metoda
costului minim pe coloană şi va fi:
40 50 50 20 60 80
Aplicăm metoda potenţialelor pas cu pas în tabelul următor:
vj ui
2 1 2 0 ∆
40 50 0 2 1 2 0 -3 -3 0 0 50 20 0 2 1 2 0 0 1-M 2-M 0
X1
60 80 0 2 1 2 0 0 0 -4 0
169
Modele matematice în economie
Cum M → ∞, toate elementele matricei ∆ sunt mai mici sau egale cu
zero. Deci este îndeplinită condiţia de optim şi X1 este soluţie optimă,
nedegenerată, unică cu:
[min]f(X) = 240.
170
1. Noţiuni generale Teoria jocurilor este teoria matematică care se ocupă cu
determinarea metodelor de alegere a deciziilor în cazuri de competiţie sau
situaţii conflictuale. O situaţie conflictuală este cea în care acţionează doi
sau mai mulţi factori (persoane fizice, firme, partide politice) având scopuri
contrarii. Astfel de situaţii sunt: concurenţa economică, vânzările la licitaţie,
alegerile parlamentare etc.. Teoria jocurilor se ocupă şi de cazurile în care o
activitate intră în conflict cu caracterul întâmplător al unor evenimente
naturale (epidemii, secetă). Pentru construirea unui model formal,
simplificat al situaţiei cercetate se vor selecta caracteristicile principale, cele
secundare neglijându-se. Terminologia folosită este cea de la jocurile de
societate sau de noroc.
Prin joc sau joc strategic se înţelege situaţia în care acţionează o
mulţime de elemente raţionale (numite jucători sau parteneri) care în mod
succesiv şi independent, într-o ordine şi condiţii fixate într-un ansamblu de
reguli, iau câte o decizie (efectuează o mutare) dintr-o mulţime dată de
alternative. Regulile jocului fixează şi situaţiile în care se termină jocul,
precum şi câştigul sau recompensa pentru fiecare jucător. Un joc realizat se
mai numeşte partidă.
Acţiunile întreprinse de jucători în cadrul unei partide se numesc
mutări. Acestea pot fi: libere – când alegerea alternativei este univocă sau
TEORIA JOCURILOR 4
171
Modele matematice în economie
aleatoare, când alegerea alternativei este supusă întâmplării şi e determinată
de un mecanism aleator (zar).
După cantitatea de informaţie de care dispune fiecare jucător există
jocuri cu informaţie completă (şahul) şi jocuri cu informaţie parţială (bridge-
ul), necunoaşterea intenţiilor adversarului constituind elementul esenţial al
situaţiilor conflictuale.
Ansamblul de reguli ce definesc în mod unic mişcările libere în
funcţie de situaţia ivită în timpul jocului se numeşte strategie. Dacă unul
dintre adversari are la dispoziţie m alternative, iar partida se încheie printr-o
alegere, se spune că jucătorul are la dispoziţie m strategii pure. Când
partidele se repetă, jucătorii pot alege strategii pure cu anumite frecvenţe sau
probabilităţi şi atunci se spune că utilizează o strategie mixtă. Dacă numărul
strategiilor pure este finit, spunem că avem un joc finit, în caz contrar avem
un joc infinit. Fiecare jucător urmăreşte aplicarea unei strategii care să îi
aducă un câştig maxim, deci îşi caută o strategie optimă.
Câştigul pi realizat de jucătorul Pi are semnificaţia unei sume băneşti
sau a unui număr de puncte, bunuri etc.. Dacă pi > 0, jucătorul Pi realizează
un câştig în sensul uzual al cuvântului, iar dacă pi < 0 înregistrează o
pierdere.
Din punct de vedere al câştigului distingem:
- jocuri cu sumă nulă – când la sfârşitul unei partide suma pierdută
de o parte din jucători este câştigată de ceilalţi şi
- jocuri cu sumă nenulă – când jucătorii pot să-şi mărească
concomitent câştigurile, prin alegerea unor strategii adecvate.
După numărul n al jucătorilor, jocurile pot fi cu doi parteneri sau cu
n > 2 parteneri.
172
Teoria jocurilor
Exemplu [2]
Fie jocul cu doi parteneri P1 şi P2 ce constă în 3 mutări libere. O
mutare înseamnă alegerea unuia dintre numerele a sau b, a ≠ b. La prima
mutare P1 alege liber pe a sau pe b; la a doua mutare P2, informat asupra
alegerii făcute de P1, alege la rândul său unul din numerele a sau b. În
sfârşit, la a treia mutare P1, informat asupra alegerii făcute de P2, alege unul
dintre numerele a sau b.
Observăm că este un joc în doi, cu mutări libere şi informaţie
completă ce poate fi reprezentat printr-un arbore de forma:
(1, -1) (2, 1) (-1, 2) (3, 1) (-2, 1) (1, -3) (2, 3) (1, 2)
Vârful 0 arată momentul iniţial, iar cifra 1 scrisă sub 0 arată că prima
mutare este a lui P1. Din 0 pornesc două muchii spre vârfurile a şi b, ce
reprezintă alegerile lui P1. Sub a şi b scriem 2, pentru că următoarea mutare
este a lui P2. Din fiecare vârf pornesc două muchii spre alte vârfuri a şi b,
reprezentând alegerile lui P2 şi sub aceste vârfuri scriem 1 deoarece P1 face
următoarea mutare spre alte vârfuri notate a şi b (care vor fi vârfuri
terminale). Sub ele nu mai scriem nimic, dar fiecăruia îi asociem un vector
b a b b ba a a
a b ba
ba
0
1 1 1 1
22
1
173
Modele matematice în economie
bidimensional (p1, p2) ale cărui componente reprezintă respectiv câştigurile
celor doi jucători, decurgând din regulile jocului.
S-au obţinut 8 vârfuri terminale ce vor determina tot atâtea partide,
deoarece o partidă este reprezentată de un lanţ ce leagă vârful 0 de unul din
vârfurile terminale. Cele 8 partide sunt: (a, a, a), (a, a, b), (a, b, a), (a, b, b),
(b, a, a), (b, a, b), (b, b, a) şi (b, b, b).
Jocul nu este cu sumă nulă deoarece dacă, de exemplu, s-ar realiza
partida (a, a, b) avem p1 = 2, p2 = 1 şi p1 + p2 = 3 ≠ 0.
Mulţimea strategiilor jucătorului P1 este:
A = ⎨(a, a), (a, b), (b, a), (b, b)⎬, unde primul element din fiecare
pereche reprezintă numărul ales la prima mutare, iar al doilea element indică
numărul ales la a treia mutare.
Mulţimea strategiilor lui P2 este:
B = ⎨(a), (b)⎬, reprezentând alegerile la a doua mutare.
Asociem jocului considerat un tabel cu două intrări A = ⎨A1, ...,A4⎬
- strategiile lui P1 şi B = ⎨B1, B2⎬, strategiile lui P2.
La intersecţia liniei lui Ai cu coloana lui Bj avem un dreptunghi în
care deasupra diagonalei am scris partida, iar dedesubt vectorul (pi, pj) al
câştigurilor celor doi jucători, când aceştia aleg strategiile Ai, respectiv Bj.
B A B1 = (a) B2 = (b)
A1 = (a, a) (a, a, a)(1, -1)
(a, b, a)(-1, 2)
A2 = (a, b) (a, a, b)(2, 1)
(a, b, b)(3, 1)
A3 = (b, a) (b, a, a)(-2, 1)
(b, b, a)(2, 3)
A4 = (b, b) (b, a, b)(1, -3)
(b, b, b)(1, 2)
174
Teoria jocurilor
Din acest exemplu observăm că există diferite moduri de
reprezentare a unui joc, cu ajutorul unui arbore sau matricial.
Observaţie: Dacă în acelaşi joc considerăm câştigurile date de
următoarea corespondenţă:
(a, a, a) → (2, -2) (b, a, a) → (1, -1)
(a, a, b) → (-1, 1) (b, a, b) → (3, -3)
(a, b, a) → (4, -4) (b, b, a) → (-2, 2)
(a, b, b) → (5, -5) (b, b, b) → (-3, 3)
jocul va fi: finit, cu informaţie completă, cu mutări libere şi cu sumă nulă,
deoarece p1 + p2 = 0 pentru orice vector (p1, p2).
În acest caz reprezentarea matricială poate fi simplificată, scriind în
locul vectorului (p1, p2) doar câştigul p1 al lui P1, deoarece cel al lui P2 e
cunoscut, egal cu – p1.
Forma simplificată a matricei este:
B A
B1 = (a) B2 = (b)
A1 = (a, a) A2 = (a, b) A3 = (b, a) A4 = (b, b)
2 -1 1 3
4 5 -2 -3
2. Jocuri matriceale
Fie un joc finit între doi jucători, în care un jucător are m strategii
pure, iar celălalt n strategii pure. Un astfel de joc se numeşte joc m × n sau
joc matriceal. Dacă jocul este cu sumă nulă, el se va numi antagonist. În
175
Modele matematice în economie
acest din urmă caz, funcţia de câştig se poate prezenta sub forma unui tabel
de plăţi, adică o matrice m × n, notată cu A, astfel:
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
mn1m
n111
aa
aa
L
MMM
L
sau A = (aij), i = m,1 , j = n,1 .
Matricea A se numeşte matricea jocului (matricea câştigurilor).
Elementul aij este câştigul jucătorului P1 când alege strategia Ai şi jucătorul
P2 alege strategia Bj. Această formă matriceală de prezentare a jocului se va
numi forma normală.
Caracteristicile esenţiale ale unui joc sunt:
a) mulţimea strategiilor pure ale jucătorului P1, notată
A = ⎨A1,..., Am⎬;
b) mulţimea strategiilor pure ale jucătorului P2, notată
B = ⎨B1,...,Bn⎬;
c) funcţia de câştig f: A × B → ℝ, definită prin f(Ai, Bj) = aij,
i = m,1 , j = n,1 .
Imaginea prin f a produsului cartezian A × B este matricea A.
Matricea A se scrie deci în raport cu un singur jucător şi anume P1,
primul jucător (numit şi jucătorul maximizant, din punct de vedere formal –
ambii jucători urmărind acelaşi scop). Când P1 câştigă valoarea aij, P2
plăteşte lui P1 valoarea aij, i = m,1 , j = n,1 .
Pentru P2 toate elementele matricei au semn contrar (fiind un joc cu
sumă nulă). P2 se mai numeşte jucător minimizant. Vom nota jocul definit în
condiţiile de mai sus prin tripletul: G = (A, B, f).
176
Teoria jocurilor
Exemplu
În jocul numit „aruncarea monedei”, fiecare jucător alege liber stema
(S) sau valoarea (V). Dacă alegerile coincid, jucătorul P1 primeşte de la P2
un euro. Dacă alegerile diferă, P2 primeşte de la P1 un euro.
Atunci forma normală a jocului pentru P1 este:
P2P1
(S) (V)
(S) (V)
1 -1
-1 1
2.1 Jocuri cu punct şa
Fie un joc G = (A, B, f), cu matricea A = (aij), i = m,1 , j = n,1 .
Jucătorii sunt consideraţi la fel de competenţi. Ei aderă la un principiu de
comportare, născut din raţionalitate. Astfel, P1 va acţiona aşa încât cel mai
mic câştig asigurat pe care îl poate obţine de la P2 să fie cât mai mare, iar P2
urmăreşte să facă pe cât posibil mai mică, cea mai mare valoare pe care ar
trebui să o dea lui P1. Acest principiu poartă numele de principiul minimax.
Dacă P1 va alege strategia Ai ∈ A, se aşteaptă ca P2 să aleagă acea
strategie Bj ∈ B care să ofere un câştig cât mai mic pentru P1. Fie acesta
αi = nj1
min≤≤
aij, i = m,1 .
Dintre cele m strategii pure, P1 va alege acea strategie Ai care dă cea
mai mare valoare a lui αi. Notând:
α = i
max αi = i
maxj
min aij
α se va numi valoarea inferioară a jocului şi se mai notează Gv .
177
Modele matematice în economie
Strategia care asigură lui P1 un câştig egal cu Gv se numeşte
strategie maximin.
Dacă P2 alege strategia Bj ∈ B, se aşteaptă ca P1 să aleagă strategia
Ai ∈ A care îi asigură acestuia un câştig cât mai mare.
Fie
βj = mi1
max≤≤
aij, j = n,1 .
Dintre cele n strategii pure, P2 va alege acea strategie Bj care dă cel
mai mic câştig lui P1, adică cea care dă cea mai mică valoare lui βj. Notând
β = j
min βj = j
mini
max aij
β se va numi valoarea superioară a jocului şi se mai notează cu Gv .
Strategia care asigură lui P2 o pierdere egală cu Gv se numeşte
strategie minimax.
Exemplu
Fie jocul caracterizat de matricea:
B A B1 B2 B3 B4
A1 A2 A3
0 1 2
1 0 4
-2 3 -3
2 2 3
Dacă P1 alege strategia A1 vizând câştigul a14 = 2, P2 poate alege
strategia B3, obligându-l pe P1 la un câştig a13 = -2 (adică o pierdere); când
P1 alege A2, P2 poate răspunde cu B2 şi P1 câştigă a12 = 0, iar când P1 alege
A3, P2 poate alege strategia B3 şi P1 câştigă atunci a31 = -3.
Să determinăm valorile inferioară şi superioară ale jocului.
Calculând αi = 4j1
min≤≤
aij, i = 3,1 , obţinem:
α1 = min⎨0,1,-2,2⎬ = -2
178
Teoria jocurilor
α2 = min⎨1,0,3,2⎬ = 0
α3 = min⎨2,4,-3,3⎬ = -3
Valoarea inferioară a jocului este:
Gv = 3i1
max≤≤αi = max⎨-2,0,-3⎬ = 0 = α2.
Determinăm βj = 3i1
max≤≤
aij, j = 4,1 . Obţinem:
β1 = max⎨0,1,2⎬ = 2
β2 = max⎨1,0,4⎬ = 4
β3 = max⎨-2,3,-3⎬ = 3
β4 = max⎨2,3⎬ = 3.
Valoarea superioară a jocului este:
Gv = 4j1
min≤≤βj = min⎨2,4,3⎬ = 2 = β1.
De aici rezultă că strategia maximin este A2, iar strategia minimax
este B1.
Observaţie: Calculele de mai sus pot fi simplificate prin organizarea
lor într-un tabel obţinut din cel iniţial, la care se adaugă coloana elementelor
αi şi linia elementelor βj, astfel:
B A B1 B2 B3 B4 αi
A1 A2 A3
0 1 2
1 0 4
-2 3 -3
2 2 3
-2 0 -3
βj 2 4 3 3 02
Dacă într-un joc avem:
Gv = Gv = v
valoarea comună v se numeşte valoarea jocului. Elementul aij în care se
realizează această egalitate se numeşte punct şa, iar jocul respectiv se va
179
Modele matematice în economie
numi joc cu punct şa. Strategiile Ai şi Bj corespunzătoare punctului şa aij
formează o pereche de strategii minimax şi se vor numi strategii optime. Ele
determină valoarea jocului care este egală cu elementul corespunzător
punctului şa.
Exemplu
Fie jocul cu matricea:
B A B1 B2 B3 B4 αi
A1 A2 A3 A4
1 3 2 3
6 3 1 4
0 5 0 5
3 6 9 7
0 3 0 3
βj 3 6 5 9 α=3β=3
Observăm că α = Gv = 3 = Gv = β
Elementul a21 = 3 va fi punctul şa. Strategiile A2 şi B1 sunt strategii
optime, iar valoarea jocului este v = 3.
Observaţii:
1) Şi elementul a41 = 3 este punct şa, deci şi strategiile A4 şi B1 sunt
optime, iar valoarea jocului este tot v = 3. Deci punctul şa nu este
unic.
2) Abaterea de la strategia optimă poate duce la micşorarea
câştigului lui P1. De exemplu, dacă P1 alege A3 şi P2 îi răspunde
cu B3, câştigul său este a33 = 0, deci scade (tentaţia fiind aceea de
a obţine câştigul maxim, egal cu 9).
3) Elementul a21 = 3 este cel mai mic de pe linia şi cel mai mare de
pe coloana pe care se află. La fel a41 = 3. Aceasta justifică şi
denumirea de punct şa.
180
Teoria jocurilor
Exemplu
Fie jocul cu matricea:
B A B1 B2 B3 B4 B5
A1 A2 A3 A4
4 3 1 2
-1 -2 2 -6
2 0 0 3
1 -1 -1 1
3 2 -2 0
Observăm că strategia A1 are toate câştigurile respectiv mai mari ca
ale strategiei A2. Jucătorul P1 care doreşte un câştig cât mai mare nu va
alege A2, pentru că poate câştiga mai mult prin A1 oricare ar fi strategia
aleasă de P2. Spunem că strategia A1 domină strategia A2, care este
dominată. A2 poate fi eliminată din joc.
Pentru jucătorul P2, strategia B4 domină strategiile B1 şi B3, acestea
din urmă conducând la pierderi mai mari pentru P2 decât B4. Deci se poate
renunţa la B1 şi B3 şi matricea A se reduce la:
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−−−
−
016212
311.
În concluzie, o strategie pură domină o altă strategie pură dacă duce
la câştiguri mai bune decât aceasta din urmă. Un jucător nu trebuie să
folosească niciodată strategii dominate, acestea fiindu-i nefavorabile. Din
matricea A se elimină liniile care au toate elementele respectiv mai mici sau
egale cu ale altei linii şi coloanele ce au toate elementele respectiv mai mari
sau egale decât ale altei coloane. Acest principiu poartă numele de
principiul dominării strategiilor. Aplicarea lui conduce la reducerea
ordinului matricei A şi a volumului de calcule. Se poate demonstra că
181
Modele matematice în economie
eliminarea strategiilor dominate conduce la un joc care are aceeaşi valoare
ca şi jocul iniţial.
Să observăm că jocul „redus”, rezultat prin eliminarea strategiilor
dominate nu are punct şa, deci nici cel iniţial.
2.2 Jocuri fără punct şa
În jocurile fără punct şa, un jucător îşi poate majora câştigul folosind
altă strategie decât cea minimax dacă este informat asupra comportării
adversarului. Informaţii asupra comportamentului adversarului se pot obţine
prin repetarea partidelor, dacă acesta îşi menţine în toate partidele strategia
minimax. Un jucător nu trebuie să folosească mereu aceeaşi strategie şi nici
să folosească strategiile după o regulă ce poate fi descoperită de adversar.
Va fi necesară alternarea strategiilor pure, cu anumite probabilităţi.
În cele ce urmează vom vedea că, în cazul unui joc matriceal fără
punct şa, valoarea jocului o vom determina folosind un alt joc matriceal
asociat primului, numit joc mediat, notat Γ = (X, Y, ϕ), unde:
a) X = ⎨x ⎪ x = (x1, ..., xm), xi ≥ 0, i = m,1 , ∑=
m
1iix = 1⎬, cu
xi = P(Ai), i = m,1 reprezentând probabilitatea de alegere a
strategiei Ai, iar X este mulţimea strategiilor mixte pentru P1;
b) Y = ⎨y ⎪ y = (y1, ..., yn), yj ≥ 0, j = n,1 , ∑=
n
1jjy = 1⎬ unde
yj = P(Bj), j = n,1 , este probabilitatea de alegere a strategiei Bj,
iar Y mulţimea strategiilor mixte pentru P2;
182
Teoria jocurilor
c) ϕ: X × Y → ℝ, cu:
ϕ(x, y) = ∑∑= =
m
1i
n
1jjiij yxa dacă P1 foloseşte strategia mixtă
x = (x1, ..., xm), iar P2 foloseşte strategia mixtă y = (y1, ..., yn).
Dacă introducem variabila aleatoare:
(x, j): ⎟⎟⎠
⎞⎜⎜⎝
⎛
m21
mjj2j1
xxxaaa
L
L, valoarea medie a acesteia o notăm:
ϕ(x, j) = ∑=
m
1iiijxa şi reprezintă câştigul mediu realizat de P1 când
foloseşte strategia mixtă x = (x1, ..., xm), iar P2 foloseşte strategia pură Bj.
Analog, variabila aleatoare:
(i, y): ⎟⎟⎠
⎞⎜⎜⎝
⎛
n21
in2i1i
yyyaaa
L
L va avea valoarea medie:
ϕ(i, y) = ∑=
n
1jjijya şi reprezintă câştigul mediu realizat de P1 când
foloseşte strategia Ai iar P2 foloseşte strategia mixtă y = (y1, ..., yn).
Atunci, putem scrie că:
ϕ(x, y) = ∑∑ ∑ ∑= = = =
ϕ=ϕ=m
1i
n
1j
m
1i
n
1jjijiij )j,x(y)y,i(xyxa , de unde se vede
că ϕ(x, y) semnifică valoarea medie a jocului, care se mai scrie matriceal
astfel: ϕ(x, y) = xAyT.
Pentru jocul mediat Γ = (X, Y, ϕ), vom defini valoarea inferioară Γv
şi valoarea superioară Γv prin expresiile:
Γv = Xx
max∈ Yy
min∈
ϕ(x, y)
Γv = Yy
min∈ Xx
max∈
ϕ(x, y)
183
Modele matematice în economie
Prezentăm acum, cu sau fără demonstraţie, câteva rezultate din teoria
funcţiilor de mai multe variabile reale ce vor fundamenta principiile
matematice ale jocurilor matriceale.
Teorema 1
Fie X, Y două subspaţii ale unor spaţii liniare şi f: X × Y →ℝ. Dacă
există mărimile:
Xxmax∈ Yy
min∈
f(x, y) şi Yy
min∈ Xx
max∈
f(x, y), atunci
Xxmax∈ Yy
min∈
f(x, y) ≤Yy
min∈ Xx
max∈
f(x, y). (1)
Demonstraţie:
Notăm g(x) = Yy
min∈
f(x, y), (∀) x ∈ X şi h(y) = Xx
max∈
f(x, y), (∀) y ∈Y.
Din definiţia extremelor, avem:
g(x) ≤ f(x, y), (∀) y ∈Y şi (∀)x ∈ X
Atunci:
Xxmax∈
g(x) ≤ Xx
max∈
f(x, y) = h(y), (∀) y ∈Y, şi deci:
Xxmax∈
g(x) ≤ Yy
min∈
h(y).
Revenind la semnificaţiile lui g şi h, rezultă relaţia (1).
Consecinţă 1. Pentru orice joc matriceal G = (A, B, f) există Gv şi
Gv şi Gv ≤ Gv .
Demonstraţie:
Existenţa celor două valori, Gv şi Gv rezultă din faptul că f are o
mulţime finită de valori. Şi dacă în teorema 1 X = A, Y = B şi f (Ai, Bj) = aij
pentru orice Ai ∈ A şi Bj ∈ B, atunci relaţia (1) devine Gv ≤ Gv .
184
Teoria jocurilor
Teorema 2
În ipotezele teoremei 1, o condiţie necesară şi suficientă ca
Xxmax∈ Yy
min∈
f(x, y) =Yy
min∈ Xx
max∈
f(x, y). (2)
este să existe x0 ∈ X şi y0 ∈ Y şi un număr w ∈ ℝ astfel încât:
f(x, y0) ≤ w ≤ f(x0, y), pentru orice x ∈ X şi y ∈ Y. (3)
Demonstraţie:
Necesitatea: Presupunem relaţia (2) adevărată. Fie x0 ∈ X punctul
care maximizează expresia Yy
min∈
f(x, y) şi fie y0 ∈ Y punctul care
minimizează expresia Xx
max∈
f(x, y), adică:
Yymin∈
f(x0, y) = Xx
max∈ Yy
min∈
f(x, y)
Xxmax∈
f(x, y0) = Yy
min∈ Xx
max∈
f(x, y).
De aici şi din relaţia (2) rezultă că:
Yymin∈
f(x0, y) =Xx
max∈
f(x, y0) = w.
De unde, evident f(x0, y) ≥ w şi f(x, y0) ≤ w, (∀) x ∈ X şi (∀) y ∈ Y,
adică relaţia (3).
Suficienţa: Presupunem că există x0 ∈ X, y0 ∈ Y şi w ∈ℝ astfel
încât relaţia (3) să fie adevărată.
Din f(x0, y) ≥ w, (∀) y ∈ Y, rezultă că şi Yy
min∈
f(x0, y) ≥ w.
Analog, din f(x, y0) ≤ w, (∀) x ∈ X, rezultă că şi Xx
max∈
f(x, y0) ≤ w,
deci Xx
max∈
f(x, y0) ≤ w ≤ Yy
min∈
f(x0, y), (∀) x ∈ X, (∀) y ∈ Y.
Dar Yy
min∈ Xx
max∈
f(x, y) ≤Xx
max∈
f(x, y0) ≤ w
185
Modele matematice în economie
Xxmax∈ Yy
min∈
f(x, y) ≥ Yy
min∈
f(x0, y) ≥ w
şi de aici, în baza tranzitivităţii relaţiei „≤”, rezultă că:
Yymin∈ Xx
max∈
f(x, y) ≤ Xx
max∈ Yy
min∈
f(x, y).
Această relaţie, împreună cu relaţia (1), implică
w = Xx
max∈ Yy
min∈
f(x,y) = Yy
min∈ Xx
max∈
f(x,y), fapt ce încheie demonstraţia.
Definiţie: Fie f: X × Y →ℝ. Punctul (x0, y0) ∈ X × Y este punct şa
pentru f dacă:
f(x, y0) ≤ f(x0, y0) ≤ f(x0, y), (∀) x ∈ X şi (∀) y ∈ Y.
Consecinţă 2: Dacă G = (A, B, fG) este un joc matriceal m × n, atunci
o condiţie necesară şi suficientă ca Gv = Gv = w este ca fG să admită un
punct şa.
Demonstraţie:
Se aplică teorema 2, în care X = A, Y = B, fG(Ai, Bj) = aij, i = m,1 ,
j = n,1 , luând w = fG(Aio, Bj0).
Condiţia necesară şi suficientă de existenţă a punctului şa este să
existe perechea de strategii pure Aio, Bjo astfel încât:
aiojo = i
maxj
min aij = j
mini
max aij
adică elementul aiojo este cel mai mic din linia i0 şi în acelaşi timp cel mai
mare din coloana j0.
Strategiile A0i şi B
0jcorespunzătoare punctului şa sunt strategii
optime.
186
Teoria jocurilor
Teorema 3. (teorema fundamentală de minimax)
Fie un joc G = (A, B, f) de două persoane, caracterizat de matricea
jocului A = (aij), i = m,1 , j = n,1 şi fie Γ = (X, Y, ϕ) jocul mediat
corespunzător. Atunci există expresiile:
Γv = Xx
max∈ Yy
min∈
ϕ(x, y) şi Γv = Yy
min∈ Xx
max∈
ϕ(x, y) şi Γv = Γv .
Demonstraţie:
Să demonstrăm existenţa valorilor Γv şi Γv .
Pentru orice y = (y1, ..., yn) ∈ Y funcţia
ϕ(x, y) = ∑∑= =
m
1i
n
1jjiij yxa este funcţie de x = (x1, ..., xm) ∈X,
continuă şi liniară. Într-adevăr:
ϕ(x, y) = ∑∑==
++n
1jjmj
n
1jmjj11 yax...yax , deci este mărginită şi îşi atinge
marginile pe X.
Deci există Xx
max∈
ϕ(x, y) pentru orice y ∈Y, iar această funcţie este
liniară în y ∈ Y, deci este şi continuă. Cum Y este o parte închisă a lui ℝn,
rezultă că există Xx
max∈ Yy
min∈
ϕ(x, y).
Analog se arată că există Yy
min∈ Xx
max∈
ϕ(x, y) şi existenţa e demonstrată.
Din teorema 1, relaţia (1) putem scrie că
Xxmax∈ Yy
min∈
ϕ(x, y) ≤ Yy
min∈ Xx
max∈
ϕ(x, y) (4)
adică Γv ≤ Γv .
187
Modele matematice în economie
Pentru demonstrarea inegalităţii inverse dăm, fără demonstraţie:
Lema 1 (lema fundamentală a dualităţii):
Dacă A = (aij), i = m,1 , j = n,1 şi x = (x1, ..., xm), y = (y1, ..., yn)
îndeplinesc condiţiile:
xi ≥ 0, ∑=
m
1iix = 1, yj ≥ 0, ∑
=
n
1jjy = 1, atunci există o pereche de
asemenea vectori x, y pentru care numai una din următoarele situaţii este
adevărată:
i) ∑=
m
1iiijxa ≥ 0, j = n,1 ;
ii) ∑=
n
1jjijya ≤ 0, i = m,1 .
Aplicând această lemă pentru matricea jocului A, dacă are loc prima
situaţie (i), înseamnă că există x = (x1, ..., xm) astfel încât a1jx1 +...+amjxm ≥0,
(∀) j = n,1 , de unde:
ϕ(x, y) = ∑=
++n
1jjmmj1j1 y)xa...xa( ≥ 0, (∀) y ∈ Y, deci
Yymin∈
ϕ(x, y)≥0, de unde rezultă că şi Xx
max∈ Yy
min∈
ϕ(x, y)≥0.
Dacă situaţia (ii) din lemă este adevărată, există y = (y1, ..., yn) ∈ Y
astfel încât
ai1y1 + ... + ainyn ≤ 0, i = m,1 , de unde:
ϕ(x, y) = ∑=
++m
1iinin11i x)ya...ya( ≤ 0, (∀) x ∈ X, deci şi
Xxmax∈
ϕ(x, y) ≤ 0, de unde rezultă că şi Yy
min∈ Xx
max∈
ϕ(x, y) ≤ 0.
188
Teoria jocurilor
Cum numai una dintre cele două situaţii din lemă are loc, niciodată
nu se va verifica relaţia
Xxmax∈ Yy
min∈
ϕ(x, y) < 0 < Yy
min∈ Xx
max∈
ϕ(x, y) (5)
Fie Gk = (A, B, fk) având matricea Ak = (aij – k); i = m,1 , j = n,1 ,
k ∈ℝ şi jocul mediat corespunzător Γk = (X, Y, ϕk), ϕk fiind câştigul mediu
în jocul mediat cu matricea Ak, adică:
ϕk(x, y) = ∑ ∑∑∑∑∑= = === =
−=−m
1i
m
1i
n
1jji
n
1jjiij
m
1i
n
1jjiij yxkyxayx)ka( .
Cum ∑∑i j
ji yx = 1, obţinem:
ϕk(x, y) = ϕ(x, y) – k (6)
Pentru jocul Γk, rezultă din (5) că nu poate avea loc inegalitatea:
Xxmax∈ Yy
min∈
ϕk(x, y) < 0 < Yy
min∈ Xx
max∈
ϕk(x, y)
sau ţinând seama de (6) nu poate avea loc relaţia
Xxmax∈ Yy
min∈
ϕ(x, y) – k < 0 < Yy
min∈ Xx
max∈
ϕ(x, y) – k
care se mai scrie:
Xxmax∈ Yy
min∈
ϕ (x, y) < k < Yy
min∈ Xx
max∈
ϕ(x, y), (∀) k ∈ℝ.
Negarea acestei ultime relaţii implică:
Xxmax∈ Yy
min∈
ϕ(x, y) ≥Yy
min∈ Xx
max∈
ϕ(x, y) sau
Γv ≥ Γv , care, împreună cu (4), dau Γv = Γv .
Definiţie. Valoarea unui joc matriceal G = (A, B, f) cu f(A × B) = A,
A = (aij), i = m,1 , j = n,1 fără punct şa este dată de valoarea Γv = Γv = v a
jocului mediat Γ = (X, Y, ϕ) asociat lui.
189
Modele matematice în economie
Consecinţă 3: Orice joc matriceal mediat are o valoare şi deci şi o
soluţie. În mulţimea strategiilor X şi Y există cel puţin o pereche de strategii
mixte x0, y0 pentru care:
ϕ(x0, y0) = Xx
max∈ Yy
min∈
ϕ(x, y) =Yy
min∈ Xx
max∈
ϕ(x, y).
Teorema 4 [6]
Dacă G = (A, B, f) şi Γ(X, Y, ϕ) jocul mediat asociat, atunci:
Gv ≤ Γv ≤ Γv ≤ Gv
Teorema 5 [6]
Asupra matricei A = (aij) a unui joc se pot efectua următoarele
operaţii:
a) dacă se permută liniile (coloanele) între ele, valoarea jocului nu se
schimbă şi nici probabilităţile de folosire a strategiilor de către
jucătorul P1 (respectiv P2);
b) dacă la fiecare element aij din matricea A a unui joc matriceal de
valoare v se adaugă acelaşi număr real k, atunci strategiile mixte
optime rămân neschimbate, iar valoarea jocului devine v’ = v + k;
c) dacă toate elementele matricei A dintr-un joc matriceal de valoare
v se înmulţesc cu acelaşi număr k > 0, atunci strategiile mixte
optime rămân neschimbate, iar valoarea jocului devine v’ = kv.
2.3 Rezolvarea jocurilor matriceale
Teorema 3 (teorema minimax) asigură existenţa strategiilor optime
în jocuri de două persoane cu sumă nulă. Ne preocupă să găsim modul cum
190
Teoria jocurilor
pot fi calculate aceste strategii. În cele ce urmează, vom prezenta câteva
metode pentru soluţia unor jocuri matriceale.
2.3.a Jocuri 2 × 2
Considerăm jocul matriceal cu:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛
2221
1211
aaaa
.
Dacă jocul are punct şa, rezolvarea sa e banală. Presupunem că jocul
nu are punct şa. Atunci strategiile optime x = (x1, x2) şi y = (y1, y2) vor avea
toate componentele pozitive. Valoarea jocului v este:
v = ϕ(x, y) = a11x1y1 + a12x1y2 + a21x2y1 + a22x2y2
şi se mai scrie:
x1(a11y1 + a12y2) + x2(a21y1 + a22y2) = v (7)
Cum y este strategie optimă, fiecare expresie din paranteze este cel
mult egală cu v. Dacă presupunem că una e strict mai mică decât v, de
exemplu:
a11y1 + a12y2 < v
a21y1 + a22y2 ≤ v
cum x1 > 0 şi x1 + x2 = 1 ar rezulta că membrul stâng din (7) este mai mic ca
v. Deci va trebui ca:
a11y1 + a12y2 = v
a21y1 + a22y2 = v.
Raţionând analog se obţine:
a11x1 + a21x2 = v
a12x1 + a22x2 = v.
191
Modele matematice în economie
Sau matriceal:
AyT ⎟⎟⎠
⎞⎜⎜⎝
⎛=
vv
şi xA = (v, v). (8)
Notând J = (1, 1) şi ţinând seama că x1 + x2 = 1 şi y1 + y2 = 1, găsim
formulele de calcul pentru x, y şi v.
Dacă A este nesingulară, din (8) avem:
xA = vJ şi x = vJA-1. (8’)
Dar x1 + x = 1 este echivalentă cu xJT = 1.
În (8’), înmulţind cu JT, avem:
vJA-1JT = xJT = 1 de unde:
v = T1JJA1− .
Atunci, din (8’) vom avea:
x = T1
1
JJAJA
−
−
.
Prima relaţie din (8) se mai scrie: AyT = vJT, de unde:
yT = A-1(vJT) = T1
T1
JJAJA
−
−
.
Dacă A este singulară (A-1 nu există), echivalentele formulelor de
mai sus vor fi ([16]):
TT
TT
T J*JA|A|v;
J*JAJ*Ay;
J*JA*JAx === , (9)
unde A* este matricea adjunctă a lui A, ⎪A⎪ determinantul lui A şi J = (1,1).
Aceste formule se verifică şi când A este inversabilă.
192
Teoria jocurilor
Exemplu
Să se determine soluţia jocului matriceal:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛3012
.
Rezolvare
Jocul nu are punct şa. Matricea A* = ⎟⎟⎠
⎞⎜⎜⎝
⎛ −2013
, ⎪A⎪ = 6,
JA* = (1,1) ⎟⎟⎠
⎞⎜⎜⎝
⎛ −2013
= (3, 1); A*JT = ⎟⎟⎠
⎞⎜⎜⎝
⎛ −2013
=⎟⎟⎠
⎞⎜⎜⎝
⎛11
⎟⎟⎠
⎞⎜⎜⎝
⎛22
;
JA*JT = (1, 1) ⎟⎟⎠
⎞⎜⎜⎝
⎛22
= 4.
Introducând rezultatele obţinute în (9) avem:
x = ⎟⎠⎞
⎜⎝⎛
41,
43 , y = ⎟
⎠⎞
⎜⎝⎛
21,
21 , v =
23 .
Observaţie: Metoda de mai sus poate fi aplicată în rezolvarea
matriceală a jocurilor, în care dacă notăm matricea câştigurilor cu C = (cij), i
= m,1 , j = n,1 , pentru jocul Γ = (X, Y, f), soluţia şi valoarea jocului se
determină ([9], [21]) cu ajutorul formulelor:
Trr
Tr
*r
Tr
Trr
r
J*AJ|A|v,
JAJ*)A(Jy,
J*AJ*AJx === (9’)
În relaţiile (9’) avem:
- A o matrice nesingulară a lui C, de ordinul r, 2 ≤ r ≤ min(m, n);
- ⎪A⎪ este determinantul matricei A;
- Jr = (1, ..., 1), matrice de ordinul 1 × r;
193
Modele matematice în economie
Determinarea soluţiei se face astfel:
a) se caută toate submatricele nesingulare A, pornind de la
r = min(m,n);
b) se rezolvă jocurile corespunzătoare matricelor de la a), care
admit numai strategii pozitive;
c) în x şi y se completează cu zerouri componentele
corespunzătoare liniilor şi coloanelor din C care nu intră în A,
obţinând strategiile x0 şi y0;
d) se verifică condiţiile corespunzătoare relaţiilor (8), date de
criteriul Neumann şi anume x0A = vJ şi AyT = vJT.
Dacă aceste relaţii sunt îndeplinite x0 şi y0 sunt strategii optime ale
jocului Γ, iar v este valoarea jocului.
2.3.b Jocuri 2 × n şi m × 2
În acest caz presupunem că cel puţin un jucător posedă numai două
strategii pure. Fie P1 jucătorul ce are numai două strategii pure, adică
analizăm cazul 2 × n. Jocurile m × 2 se tratează într-un mod similar.
Dacă matricea jocului este:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛
n221
n111
a...aa...a
şi x = (x1, x2) e strategia jucătorului P1, atunci acesta urmăreşte să
maximizeze funcţia v(x) – valoarea jocului.
194
Teoria jocurilor
Modelul matematic al jocului pentru P1 este:
a11x1 + a21x2 ≥ v
∶
a1nx1 + a2nx2 ≥ v
x1 + x2 = 1
x1, x2 ≥ 0
şi poate fi adus la forma matematică a unui model de programare liniară
având necunoscutele x1, x2 şi v, astfel:
[max]f = v
a11x1 + a21x2 – v ≥ 0
∶
a1nx1 + a2nx2 – v ≥ 0
x1 + x2 = 1
x1, x2 ≥ 0, v – oarecare.
Exemplu
Să se determine strategia optimă a jucătorului P1 în jocul definit de
matricea:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
−−1668
442.
Rezolvare
Strategiile lui P1 verifică sistemul:
-2x1 + 8x2 ≥ v
4x1 – 6x2 ≥ v
-4x1 + 16x2 ≥ v
x1 +x2 = 1
x1, x2 ≥ 0, v – oarecare.
195
Modele matematice în economie
Forma matematică a modelului de programare liniară în
necunoscutele x1, x2 şi v va fi:
[max]f = v
-2x1 + 8x2 – v ≥ 0
4x1 – 6x2 – v ≥ 0
-4x1 + 16x2 – v ≥ 0
x1 +x2 = 1
x1, x2 ≥ 0, v – oarecare.
Cum x1 = 1 – x2, x1, x2 ∈ [0,1], modelul de mai sus devine:
[max]f = v
10x2 – v ≥ 2
10x2 + v ≤ 4
20x2 – v ≥ 4
x2 ∈ [0,1], v – oarecare.
Rezolvăm grafic această problemă şi obţinem:
v
4
2
1 M(0,3; 1)
0 1 x2
-1
-2
-4
v =
-4+2
0x2
v =
-2+1
0x2
v = 4-10x2
196
Teoria jocurilor
Regiunea haşurată conţine mulţimea punctelor ce satisfac restricţiile
modelului de programare liniară. Punctul M aflat la intersecţia dreptelor
generate de restricţiile 1 şi 2 (deci corespunzătoare coloanelor 1 şi 2 din A)
are abcisa x2 = 0, 3 şi ordonata v = 1. Atunci strategia lui P1 este x = (x1, x2),
unde x2 = 0, 3 şi x1 = 1 – x2 = 0,7 şi valoarea jocului este v = 1.
Observaţie: Aceste valori pot fi obţinute cu formulele (9) pentru
jocul matriceal 2 × 2 format din coloanele 1 şi 2 ale matricei A. Fie
A0 = ⎟⎟⎠
⎞⎜⎜⎝
⎛−
−68
42. Într-adevăr,
⎟⎟⎠
⎞⎜⎜⎝
⎛−−−−
=2846
A*0 , ⎪A0⎪ = - 20, ⎟⎟
⎠
⎞⎜⎜⎝
⎛−−−−
=2846
)1,1(JA*0 = (-14, -6).
⎟⎟⎠
⎞⎜⎜⎝
⎛−−
=⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛−−−−
=1010
11
2846
JA T*0 ; JA *
0 JT = (1,1) ⎟⎟⎠
⎞⎜⎜⎝
⎛−−
1010
= - 20.
x = 201
JJAJA
T*0
*0 −= (-14, -6) = (0,7; 0,3).
v = 2020
JJA|A|T*
0
0
−−
= = 1.
yT = ⎟⎟⎠
⎞⎜⎜⎝
⎛=⎟⎟
⎠
⎞⎜⎜⎝
⎛−−
−=5,05,0
1010
201
JJAJA
T*0
T*0 de unde y = (0,5; 0,5; 0).
Am obţinut astfel şi strategia optimă a lui P2.
2.3.c Rezolvarea jocurilor matriciale prin programare liniară
Fie jocul G = (A, B, f) cu matricea A = (aij), i = m,1 , j = n,1 de
valoare v, având jocul mediat corespunzător Γ = (X, Y, ϕ).
197
Modele matematice în economie
Dacă jucătorul P1 foloseşte strategiile Ai, cu probabilităţile xi,
i = m,1 , poate spera la un câştig egal cel puţin cu valoarea v a jocului,
pentru orice strategie Bj, j = n,1 , a lui P2.
Putem scrie sistemul de inecuaţii:
a11x1 + ... + am1xm ≥ v
a12x1 + ... + am2xm ≥ v
(I) ∶
a1nx1 + ... + amnxm ≥ v
x1 + ... + xm = 1
xi ≥ 0; i = m,1 .
Dacă jucătorul P2 foloseşte strategiile Bj cu probabilităţile yj, j = n,1 ,
el se aşteaptă la o pierdere cel mult egală cu valoarea v a jocului şi putem
scrie sistemul de inecuaţii:
a11y1 + ... + a1nyn ≤ v
a21y1 + ... + a2nyn ≤ v
(II) ∶
am1y1 + ... + amnyn ≤ v
y1 + ... + yn = 1
yj ≥ 0; j = n,1 .
Sistemul (I) corespunde condiţiei ϕ(x, j) ≥ v, j = n,1 , iar sistemul (II)
corespunde condiţiei ϕ(i, y) ≤ v pe care trebuie să le verifice strategiile
x = (x1, ..., xm) şi y = (y1, ..., yn) pentru a fi optime.
198
Teoria jocurilor
Pentru a transforma cele două sisteme în modele de programare
liniară este necesar ca valoarea v a jocului să fie pozitivă. Deci vom
presupune v > 0 (în caz contrar se face modificarea matricei A în A = ( ija )
cu ija = aij + k > 0, (∀)i = m,1 , j = n,1 şi k > 0.
Notăm Xi = vxi , i = m,1 , Yj =
vy j , j = n,1 .
Condiţiile ca xi şi respectiv yj să fie probabilităţi, devin:
X1 + ...+ Xm = v1
Y1 + ...+ Yn = v1
Deoarece jucătorul P1 urmăreşte obţinerea celei mai mari valori a
câştigului v, deci a celei mai mici valori a lui v1 , el îşi propune să obţină
minf = X1 + ... + Xm.
Jucătorul P2 urmăreşte obţinerea celei mai mici pierderi v, adică cea
mai mare valoare a lui v1 , deci îşi propune să obţină maxg = Y1 + ...+ Yn.
Astfel sistemele (I) şi (II) corespunzătoare celor doi jucători se pot
scrie ca un cuplu de probleme duale de programare liniară şi anume:
[min]f = v1 = X1 + ...+ Xm
a11X1 + ... + am1Xm ≥ 1
(I) ∶
a1nX1 + ... + amnXm ≥ 1
Xi ≥ 0, i = m,1
199
Modele matematice în economie
[max]g = v1 = Y1 + ...+ Yn
a11Y1 + ... + a1nYn ≤ 1
(II) ∶
am1Y1 + ... + amnYn ≤ 1
Yj ≥ 0, j = n,1
Prin rezolvarea uneia dintre cele două duale se obţin strategiile mixte
optime ale ambilor jucători precum şi valoarea jocului v:
g[max]1
f[min]1v == .
Este de preferat rezolvarea lui II deoarece implică un volum mai mic
de calcule.
Exemplu
O firmă A doreşte să lanseze pe piaţă un anumit tip de produs în trei
sortimente A1, A2, A3. Concurenta ei, firma B, prezintă produsul în
sortimentele B1, B2, B3. Se cunoaşte, din sondajele făcute că dacă
cumpărătorii trebuie să aleagă între sortimentul Ai, i = 3,1 şi Bj, j = 3,1 , ei
preferă fie produsele firmei A (situaţie notată cu 1), fie pe cele ale firmei B
(situaţie notată cu -1), fie sunt indiferenţi (situaţie notată cu 0), conform
tabelului următor:
BjAi
B1 B2 B3
A1 A2 A3
1 -1 0
-1 1 1
0 -1 1
Să se determine strategia firmei A în faţa concurentei B.
200
Teoria jocurilor
Rezolvare
Fie x1, x2, x3 probabilităţile corespunzătoare celor 3 strategii pure ale
firmei A şi y1, y2, y3 probabilităţile corespunzătoare strategiilor firmei B.
Determinăm valoarea inferioară α şi valoarea superioară β a jocului.
yx y1 y2 y3 αi
x1 x2 x3
1 -1 0
-1 1 1
0 -1 1
-1 -1 0
βj 1 1
1 01
α = max αi = 0 este valoarea inferioară a jocului şi
β = min βj = 1 este valoarea superioară a jocului.
Deci jocul nu are punct şa, iar valoarea v a jocului are proprietatea că
0 ≤ v ≤ 1.
Modelele duale de programare liniară vor fi:
x1 + x2 + x3 =1
x1 – x2 ≥ v
(I) -x1 + x2 + x3 ≥ v
-x2 + x3 ≥ v
xi ≥ 0, i = 3,1
sau cu notaţiile Xi = vxi , i = 3,1 şi [min]f =
v1
201
Modele matematice în economie
[min]f = v1 = X1 + X2 + X3
X1 – X2 ≥ 1
(I) -X1 + X2 + X3 ≥ 1
-X2 + X3 ≥ 1
Xi ≥ 0, i = 3,1
pentru firma A, iar pentru firma B:
y1 + y2 + y3 =1
y1 – y2 ≤ v
(II) -y1 + y2 - y3 ≤ v
y2 + y3 ≤ v
yj ≥ 0, j = 3,1
Cu notaţiile Yj = vy j , j = 3,1 şi [max]g =
v1 , avem:
[max]g = v1 = Y1 + Y2 + Y3
Y1 – Y2 ≤ 1
(II) -Y1 + Y2 - Y3 ≤ 1
Y2 + Y3 ≤ 1
Yj ≥ 0, j = 3,1
Se rezolvă prin algoritmul simplex al doilea model, aducând
problema la forma standard.
202
Teoria jocurilor
Y1 – Y2 + Y4 = 1
-Y1 + Y2 – Y3 + Y5 = 1
Y2 + Y3 + Y6 = 1
Yj ≥ 0, j = 6,1
[max]g = v1 = Y1 + Y2 + Y3 + 0(Y4 + Y5 + Y6)
1 1 1 0 0 0 B CB YB a1 a2 a3 a4 a5 a6 θ
←a4 a5 a6
0 0 0
1 1 1
1 ↓ -1 0
-1 1 1
0 -1 1
1 0 0
0 1 0
0 0 1
1 - -
gj 0 0 0 0 0 0 0 ∆j = cj - gj 1 1 1 0 0 0
a1 a5 ←a6
1 0 0
1 2 1
1 0 0
-1 ↓ 0 1
0 -1 1
1 1 0
0 1 0
0 0 1
- - 1
gj 1 1 -1 0 1 0 0 ∆j = cj - gj 0 2 1 -1 0 0
a1 a5 a2
1 0 1
2 2 1
1 0 0
0 0 1
1 -1 1
1 1 0
0 1 0
1 0 1
gj 3 1 1 2 1 0 2 ∆j = cj - gj 0 0 -1 -1 0 -2
[max]g = 3 = [min]f
Y1 = 2, Y2 = 1, Y3 = 0
X1 = 1, X2 = 0, X3 = 2
Atunci v = 31
g[max]1
= .
y1 = vY1 = 31 ⋅ 2 =
32 , y2 = vY2 =
31 ⋅ 1 =
31 , y3 = vY3 =
31 ⋅ 0 = 0
x1 = vX1 = 31 ⋅ 1 =
31 , x2 = vX2 =
31 ⋅ 0 = 0, x3 = vX3 =
31 ⋅ 2 =
32 .
Firma A va avea strategia mixtă
203
Modele matematice în economie
x = (31 , 0,
32 ), adică va trebui să producă 33, 33% produse din
primul sortiment iar restul 66,66% din al treilea sortiment. Acest plan de
producţie îi asigură firmei A un câştig, fără nici un risc, de 31 în vreme ce
concurenta ei, firma B, va avea o pierdere de 31 .
În concluzie, în rezolvarea unui joc matricial se parcurg următorii
paşi:
Pasul 1. Se determină valoarea inferioară α şi valoarea superioară β
a jocului:
- dacă α = β, jocul are punct şa, se determină strategiile
pure şi valoarea jocului;
- dacă α < β, jocul nu are punct şa; vor trebui determinate
strategiile mixte optime şi valoarea jocului.
Pasul 2. Se elimină strategiile dominate.
Pasul 3. Ne asigurăm ca valoarea v a jocului să fie un număr pozitiv,
ştiind că v ∈ [α, β].
Pasul 4. Scriem modelul de programare liniară pentru jucătorul P2 şi
rezolvăm prin algoritmul simplex problema din care citim
[max]g, Y1,...,Yn şi X1, ..., Xm.
Pasul 5. Determinăm: v = g[max]
1 , xi = vXi, i = m,1 şi yj = vYj,
j = n,1 , adică soluţia optimă a problemei.
Observaţie: Dacă matricea jocului este de forma 2 × 2 sau 2 × n, în
pasul 3 putem alege şi alte metode în afara algoritmului simplex, cum ar fi
cele prezentate la 2.3.a şi 2.3.b.
204
Teoria jocurilor
3. Jocuri contra naturii
Până acum ne-am ocupat de jocuri în care alegerea strategiilor era
determinată de matricea A a câştigurilor primului jucător P1. Sunt situaţii în
care riscurile cu care se iau hotărâri nu pot fi cunoscute, deoarece jucătorul
P2 nu acţionează raţional. Un astfel de jucător poate fi considerată natura, de
unde şi denumirea de jocuri contra naturii. De analiza unor astfel de situaţii
se ocupă teoria deciziilor.
În cele ce urmează vom prezenta unele criterii de alegere a deciziei
jucătorului P1 (numit şi statistician) în jocurile contra naturii (numite şi
jocuri în caz de incertitudine). Menţionăm că atitudinea faţă de joc, diferită
de la o persoană la alta, face ca în teoria deciziilor să nu existe criterii
universal valabile. Aplicarea criteriilor poate conduce la rezultate diferite.
Alegerea strategiei ar putea fi dată de rezultatul aplicării mai multor criterii.
Vom presupune că statisticianul – jucătorul P1, dispune de m
strategii pure A1, ..., Am, iar natura are n stări B1, ..., Bn.
Fie matricea A = (aij), i = m,1 , j = n,1 , unde aij este câştigul lui P1
când alege strategia Ai, iar natura se află în starea Bj.
Criteriul lui Hurwicz (criteriul optimismului)
Optimismul jucătorului P1 se defineşte ca un număr α ∈ [0,1]. Se
determină numerele reale:
mi = j
min ⎨aij⎬ şi Mi = j
max ⎨aij⎬, i = m,1 .
Fiecărei strategii Ai îi asociem expresia:
αMi + (1 - α)mi, i = m,1 .
205
Modele matematice în economie
Strategia optimă va fi cea care corespunde la:
imax [αMi + (1 - α)mi]
În folosirea acestui criteriu trebuie să se definească în prealabil
optimismul jucătorului, adică numărul α ∈ [0, 1].
Exemplu
Se consideră jocul contra naturii a cărui matrice a câştigurilor lui P1
în orice strategie a sa Ai, i = 4,1 şi în orice stare Bj, j = 4,1 a naturii este:
B1 B2 B3 B4 A1A2A3A4
2 3 1 3
4 2 5 3
3 3 2 2
3 2 1 3
Să se determine în funcţie de α strategia optimă a lui P1.
Pentru α = 32 care este strategia optimă?
Rezolvare
Ataşăm matricei date coloanele elementelor: mi, Mi şi
αMi + (1 - α)mi, unde mi este respectiv cel mai mic, iar Mi este cel mai mare
număr de pe linia respectivă. Obţinem astfel:
B1 B2 B3 B4 mi Mi αMi+(1-α)mi
A1 A2 A3 A4
2 3 1 3
4 2 5 3
3 3 2 2
3 2 1 3
2 2 1 2
4 3 5 3
2α+2 α+2 4α+1 α+2
206
Teoria jocurilor
Ca să determinăm i
max [αMi + (1 - α)mi], ştiind că α ∈ [0,1],
observăm că α + 2 ≤ 2α + 2, (∀)α ∈ [0,1]. Merită studiate cazurile:
a) 4α + 1 < α + 2, de unde α < 31 ;
b) α + 2 ≤ 4α + 1 < 2α + 2, de unde 31 ≤ α <
21 ;
c) 2α + 2 ≤ 4α + 1, de unde α ≥ 21 .
Deci pentru α ∈ [0, 31 ), 2α + 2 este cea mai mare valoare şi cum ea
corespunde strategiei A1, aceasta este strategia optimă.
Pentru α ∈ [31 ,
21 ), tot 2α + 2 este valoarea maximă deci A1 e
strategie optimă.
Pentru α ∈ [21 , 1], 4α + 1 e valoarea maximă şi A3 este strategia
optimă.
În particular α = 32 ∈ [
21 , 1], deci A3 este strategia optimă.
Criteriul Bayes - Laplace
În cazul acestui criteriu se va presupune că stările naturii sunt egal
probabile. Şi cum numărul lor este n, probabilitatea ca natura să se afle în
starea Bj este n1 , (∀) j = n,1 .
207
Modele matematice în economie
Dacă jucătorul P1 va alege strategia Ai, câştigul său va fi
n1 ∑
=
n
1jija , care este valoarea medie a variabilei aleatoare
discrete cu repartiţia:
⎟⎟
⎠
⎞
⎜⎜
⎝
⎛
n1
n1
n1
aaa in2i1i
L
L.
P1 va alege strategia pentru care câştigul său mediu este maxim:
⎭⎬⎫
⎩⎨⎧∑=≤≤
n
1jijmi1
an1max .
Observaţia 1:
Dacă se cunosc totuşi probabilităţile diferitelor stări ale naturii
respectiv y1, ..., yn, deci strategia y = (y1, ..., yn) cu yj ≥ 0, j = n,1 şi
∑=
n
1jjy =1, câştigul mediu al statisticianului P1 când foloseşte strategia Ai va
fi, conform formulei din paragraful 2.2:
ϕ(i, y) = ∑=
n
1jjijya , iar câştigul mediu va fi maxim pentru strategia
corespunzătoare valorii:
mi1max
≤≤ϕ(i, y).
Observaţia 2:
Criteriul lui Laplace introduce toate neajunsurile valorii medii. Dacă
estimările au fost făcute grosolan apar erori în apreciere, ce vor duce la
decizii greşite. Criteriul devine uneori inacceptabil când elementele jocului
sunt foarte dispersate.
208
Teoria jocurilor
Exemplu
Pentru jocul din exemplul precedent să se determine strategia optimă
a lui P1 în cazurile:
a) când stările naturii sunt egal probabile;
b) când probabilităţile ca natura să se afle în stările ei sunt
respectiv:
92,
94,
92,
91 .
Rezolvare
a) Ataşăm matricei jocului coloana ∑=
4
1jija
n1 :
B1 B2 B3 B4 ∑=
4
1jija
n1
A1 A2 A3 A4
2 3 1 3
4 2 5 3
3 3 2 2
3 2 1 3
41⋅12
41⋅10
41⋅9
41⋅11
Deci 4i1
max≤≤⎨ ∑
=
4
1jija
41
⎬ este 41⋅12 ce corespunde strategiei A1 deci
aceasta este strategia optimă, după criteriul Laplace.
b) Calculăm pentru fiecare strategie Ai valoarea expresiei date de
ϕ(i, y), i = 4,1 . Obţinem:
ϕ(1, y) = 91⋅2 +
92⋅4 +
94⋅ 3 +
92⋅3 =
91⋅28;
209
Modele matematice în economie
ϕ(2, y) = 91⋅3 +
92⋅2 +
94⋅ 3 +
92⋅2 =
91⋅23;
ϕ(3, y) = 91⋅1 +
92⋅5 +
94⋅ 2 +
92⋅1 =
91⋅21;
ϕ(4, y) = 91⋅3 +
92⋅3 +
94⋅ 2 +
92⋅3 =
91⋅23.
Cea mai mare valoare este 91⋅ 28 şi corespunde lui ϕ(1, y), deci A1
este strategia optimă.
Criteriul lui Savage (criteriul regretelor)
Savage compară rezultatul deciziei în cazul necunoaşterii stării
naturii cu cel care s-ar obţine dacă s-ar cunoaşte această stare. Diferenţa
dintre câştigul realizat când se ia decizia fără a cunoaşte stările naturii şi cel
realizat dacă se cunosc acestea reprezintă regretul sau ce s-ar fi câştigat dacă
P1 ar fi cunoscut stările naturii.
Pornind de la matricea A = (aij), i = m,1 , j = n,1 , se formează o nouă
matrice R = (rij), numită matricea regretelor, unde elementul:
rij = mk1
max≤≤
akj – aij, i = m,1 , j = n,1 , adică rij este dat de diferenţa
dintre cel mai mare element de pe coloana j şi elementul aij.
Se obţine astfel un nou joc caracterizat de matricea R care va fi tratat
după criteriul minimax. P1 va alege strategia pe linia căreia se obţine:
mi1min
≤≤⎨
nj1max
≤≤rij⎬, adică linia pe care cel mai mare regret este minim.
Exemplu
Pentru acelaşi joc din ultimele două exemple, aplicând criteriul
regretelor, să se determine strategia ce va fi aleasă de P1.
210
Teoria jocurilor
Rezolvare
Se determină mai întâi matricea regretelor ale cărei elemente de pe o
coloană se obţin scăzând din cel mai mare element al coloanei fiecare
element al acesteia. Se obţine:
B1 B2 B3 B4 jmax rij
A1 A2 A3 A4
1 0 2 0
1 3 0 2
0 0 1 1
0 1 2 0
1 3 2 2
Atunci i
min ⎨j
max rij⎬ = min⎨1, 3, 2, 2⎬ = 1, ce corespunde strategiei
A1, deci P1 alege această strategie.
Criteriul lui Wald
Dacă jocul are punct şa, statisticianul P1 alege strategia Ai
determinată de condiţia:
imax (
jmin aij).
Dacă jocul nu are punct şa, se determină strategia mixtă
x = (x1, ..., xm) pentru care:
jmin
⎭⎬⎫
⎩⎨⎧∑
=
m
1iiijxa , este maximă.
Exemplu
Aplicarea criteriului lui Wald jocului cercetat şi cu celelalte criterii
ne duce la concluzia că jocul nu are punct şa. Procedând ca în paragraful
2.3.c, se determină strategia mixtă a statisticianului şi se găseşte vectorul:
x = (1/3, 1/3, 0, 1/3),
211
Modele matematice în economie
de unde rezultă că P1 poate alege oricare dintre strategiile sale A1, A2 sau
A4.
Observaţie: Criteriile aplicate nu au dus mereu la aceeaşi decizie dar
în majoritatea cazurilor s-a obţinut că cea mai bună strategie este A1;
statisticianul pe aceasta o va alege.
Aplicaţie
Patronul unui magazin achiziţionează un număr de frigidere de un
anumit tip pe o perioadă de 6 luni (primăvară – vară), pentru a le vinde. Din
observaţiile statistice, bazate pe cererea din ultimii doi ani, el estimează că
va vinde un număr de frigidere cuprins între: 15 şi 25 cu probabilitatea de
0,1; între 25 şi 35 cu probabilitatea de 0,4; între 35 şi 45 cu 0,3 şi între 45 şi
55 cu 0,2.
Costul unitar de achiziţie este de 300 euro iar preţul unitar de
vânzare este 400 euro (incluzând cheltuielile de transport şi garanţia de
funcţionare pe un an). Toate frigiderele nevândute până în toamnă se
restituie furnizorului pentru 250 euro/bucata.
Să se stabilească numărul optim de frigidere pe care să le
achiziţioneze patronul pentru a obţine un câştig cât mai mare.
Rezolvare
Determinăm matricea A = (aij), i, j = 4,1 , unde aij este câştigul
obţinut de patron când aplică strategia Ai, i = 4,1 şi cererea este în starea Sj,
j = 4,1 . Obţinem astfel: Cererea pieţei
Cantitatea achiziţionată
S1:20 S2:30 S3:40 S4:50
A1:20 A2:30 A3:40 A4:50
2000 1500 1000 500
2000 3000 2500 2000
2000 3000 4000 3500
2000 3000 4000 5000
212
Teoria jocurilor
unde de exemplu elementul de pe linia A3 şi coloana S2 se calculează astfel:
din cele 40 frigidere achiziţionate se vând 30.
Diferenţa dintre preţul unitar de vânzare şi cel de achiziţionare este
de 100 euro pentru un frigider, ce reprezintă câştigul patronului. Pentru cele
30 frigidere vândute va câştiga 3000 euro. Dar alte 10 frigidere nevândute
vor fi restituite furnizorului cu o pierdere unitară de 50 euro dată de
diferenţa dintre costul de achiziţie 300 şi cel de restituire 250. Deci
pierderea va fi de 500 euro şi atunci beneficiul total va fi de: 3000 – 500 =
= 2500 euro.
Deoarece în stabilirea deciziei contează consecinţele economice se
pot aplica în rezolvarea problemei criteriile: maximin, minimax, Savage,
Bayes-Laplace:
a) Prin criteriul maximin se alege minimul fiecărei linii şi dintre
acestea se găseşte maximul:
A1 A2 A3 A4 2000 1500 1000 500
care este 2000 şi recomandă strategia A1.
b) Criteriul minimax, bazat pe prudenţă, indică alegerea elementelor
maxime pe fiecare linie şi apoi determinarea celui mai mic dintre acestea.
A1 A2 A3 A4 2000 3000 4000 5000
Acest element este 2000 şi arată că cea mai prudentă decizie este A1.
c) Criteriul lui Savage este de fapt criteriul minimax aplicat pe
matricea regretelor, ce va avea forma:
R =
⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜
⎝
⎛
050010001500100005001000200010000500300020005000
213
Modele matematice în economie
pentru care vom căuta maximul pe fiecare linie şi apoi cel mai mic dintre
acestea. Găsim:
A1 A2 A3 A4 3000 2000 1000 1500
cel mai mic element este 1000 şi recomandă strategia A3.
d) Criteriul Bayes-Laplace presupune calculul câştigului mediu
pentru fiecare strategie folosind probabilităţile date în enunţul problemei şi
formulele din paragraful 2.2. Astfel:
ϕ(1,y) = 0,1⋅2000 + 0,4⋅2000 + 0,3⋅2000 + 0,2⋅2000 = 2000
ϕ(2,y) = 0,1⋅1500 + 0,4⋅3000 + 0,3⋅3000 + 0,2⋅3000 = 2850
ϕ(3,y) = 0,1⋅1000 + 0,4⋅2500 + 0,3⋅4000 + 0,2⋅4000 = 3100
ϕ(4,y) = 0,1⋅500 + 0,4⋅2000 + 0,3⋅3500 + 0,2⋅5000 = 2900
Cel mai mare câştig se obţine când se aplică strategia A3.
4. Jocuri de două persoane cu sumă arbitrară (bimatriceale)
Jocurile de două persoane cu sumă oarecare extind în mod natural
jocurile cu sumă nulă de care ne-am ocupat până acum. Ele produc şi o
schimbare calitativă importantă, în sensul că, dacă regulile jocului o permit,
jucătorii pot căuta împreună căi (strategii) de îmbunătăţire a câştigurilor lor,
ceea ce, în cazul jocurilor antagoniste, era exclus din punct de vedere logic.
Obiectul teoriei jocurilor fiind dat de analiza situaţiilor de tip
competiţional, regulile care reglementează concurenţa vor sta la baza
dezvoltărilor ulterioare.
214
Teoria jocurilor
Astfel, vom studia separat jocurile cu sumă arbitrară de tip
necooperativ, în care nu este permisă (sau nu există interes pentru)
colaborarea între jucători şi apoi jocurile de tip cooperativ, în care jucătorii
îşi pot corela strategiile şi/sau pot apela la transferul mutual al unor părţi din
câştiguri. Şi într-un caz şi în celălalt, preocuparea principală va fi de a defini
un concept de soluţie a jocului, de a cerceta condiţii de existenţă şi a
identifica metode de determinare a acesteia.
Ca o trăsătură care distinge jocurile cu sumă arbitrară de cele cu
sumă nulă se evidenţiază interdependenţa strategiilor componente ale unei
soluţii a jocului.
4.1 Jocuri cu sumă arbitrară necooperative
Vom nota, ca şi mai înainte, cei doi jucători cu P1 şi P2 şi vom
presupune că strategiile lor (pure) sunt în număr finit:
A = ⎨A1, ..., Am⎬ reprezintă mulţimea strategiilor lui P1, iar
B = ⎨B1, ..., Bn⎬, mulţimea strategiilor lui P2.
Definiţie: Se numeşte joc de două persoane cu sumă arbitrară dat în
formă normală, un sistem G = ⎨A, B; f1, f2⎬, unde A şi B conţin strategiile
celor doi jucători iar fi(⋅,⋅), i = 2,1 sunt funcţii definite pe A × B cu valori
reale, numite funcţii de câştig, corespunzătoare fiecăruia dintre aceştia.
Pentru o pereche de strategii (Ai, Bj) vom nota f1(Ai, Bj) = aij şi
f2(Ai, Bj) = bij, i = m,1 , j = n,1 . În vederea unei scrieri compacte a
215
Modele matematice în economie
elementelor care definesc un joc de acest tip, apelăm la o reprezentare
matriceală ca cea de mai jos:
P2P1
B1 ... Bj ... Bn
A1
∶ Ai
∶ Am
.
. (aij, bij)
.
.
Deoarece elementele tabloului de mai sus sunt perechi de numere
reale care ar putea proveni din suprapunerea a două matrici de dimensiuni
m × n conţinând câştigurile celor doi jucători, luaţi separat, asemenea jocuri
se mai numesc pe scurt jocuri bimatriceale.
Să remarcăm faptul că asupra valorilor sumelor f1(Ai, Bj) + f2(Ai,Bj),
i = m,1 , j = n,1 nu se impune nici o condiţie.
Considerăm, spre exemplificare, următorul joc:
G = ⎨A, B; f1, f2⎬; A = ⎨A1, A2⎬, B = ⎨B1, B2⎬; f1(A1, B1) = 3,
f1(A2, B1) = 1, f1(A1, B2) = 1, f1(A2, B2) = 0; f2(A1, B1) = 0, f2(A2, B1) = 4,
f2(A1, B2) = 2, f2(A2, B2) = 1.
Vom analiza jocul folosind forma sa matriceală.
B1 B2 A1A2
(3,0) (1,4)
(1,2) (0,1)
Se observă că pentru jucătorul P1 este preferabil să joace strategia A1
în raport cu A2, indiferent ce strategie adoptă P2 (B1 sau B2), deoarece avem
f1(A1, ⋅) ≥ f1(A2, ⋅) (într-adevăr, 3 > 1 şi 1 > 0).
Recunoaştem aici existenţa unei strategii dominate a jucătorului 1, în
speţă A2.
216
Teoria jocurilor
Referitor la strategiile lui P2, să observăm că nici una dintre ele nu o
domină pe cealaltă (0 < 2, dar 4 > 1).
Obiectivul nostru fiind acela de a prevedea desfăşurarea jocului, prin
precizarea strategiilor pe care jucătorii, cel mai probabil, le vor folosi (în
scopul raţional al maximizării câştigului), vom reduce matricea jocului
renunţând la linia corespunzătoare strategiei dominate (pe care ar fi iraţional
să o adopte P1).
B1 B2 A1 (3,0) (1,2)
Este evident acum că jucătorul P2 va alege strategia B2, care îi
asigură un câştig mai mare. În concluzie, perechea de strategii (A1, B2) se
constituie într-o soluţie a jocului, rezultată din confruntarea intereselor lui P1
şi P2. Un efect, în acest caz, este acela că nici un jucător nu îşi realizează
câştigul maxim admisibil (3, respectiv 4), fapt posibil din punct de vedere
teoretic, în general.
În exemplul precedent, raţionamentul utilizat a urmărit identificarea
unei convenţii la care jucătorii, în mod independent, sunt dispuşi să adere,
concretizate printr-o soluţie unică a jocului necooperativ. Aceasta conduce
la ideea folosirii perechii de strategii (A1, B2) în mod liber, în mai multe
partide (repetări ale jocului), de către jucători raţionali care aşteaptă unul de
la celălalt un astfel de comportament.
Ideea cristalizării unei convenţii are, desigur, o latură ideală. Nu
putem presupune că pentru un joc oarecare vom elimina pe rând, strategiile
(strict) dominate, rămânând, în final, cu o singură pereche de strategii. Pe de
altă parte, acest proces de eliminare poate să conducă la o mulţime terminală
de perechi de strategii, dintre care unele nu au calităţile unei soluţii.
217
Modele matematice în economie
În precizarea calităţilor pe care trebuie să le aibă o soluţie a jocului,
vom ţine cont de faptul că tendinţa unilaterală de câştig a unui jucător poate
fi amendată de opţiunile celuilalt, dar nu şi anihilată. De aceea, apare
naturală cerinţa ca strategia unui jucător, care este o componentă a soluţiei,
să reprezinte cel mai bun răspuns la strategia aleasă de celălat jucător, care
completează soluţia. O astfel de soluţie poate fi numită strategic – stabilă,
deoarece nici un jucător nu are interesul să se abată de la strategia sa, atâta
vreme cât nici ceilalţi nu încearcă acest lucru. Ideea de echilibru pe care
trebuie să îl realizeze strategiile care alcătuiesc soluţia jocului este acum
transparentă. Cele de mai înainte sunt redate în următoarea:
Definiţie. Într-un joc bimatriceal dat în formă normală
G = ⎨A, B; f1, f2⎬, perechea de strategii (A*, B*) reprezintă un punct
de echilibru Nash dacă au loc relaţiile:
f1(A*, B*) ≥ f1(Ai, B*), oricare ar fi Ai ∈ A şi
f2(A*, B*) ≥ f2(A*, Bj), oricare ar fi Bj ∈ B
Altfel spus, maxf1(Ai, B*) este atins în A*, iar maxf2(A*, Bj) e atins Ai∈A Bj∈B
în B*.
Cum A* ∈ A şi B* ∈ B, se obişnuieşte, pentru mai multă claritate, să
se spună că (A*, B*) este punct de echilibru Nash în strategii pure.
Observaţie: Noţiunea de punct de echilibru Nash o generalizează pe
cea de punct şa de la jocurile matriceale (cu sumă nulă). Într-adevăr,
condiţiile:
f(Ai, Bjo) ≤ f(Aio, Bjo) ≤ f(Aio, Bj) (∀) Ai ∈ A, (∀) Bj ∈ B,
care definesc punctul şa aiojo = f(Aio, Bjo) se mai pot scrie:
f(Aio, Bjo) ≥ f(Ai, Bjo), (∀)Ai ∈ A,
-f(Aio, Bjo) ≥ -f(Aio, Bj), (∀)Bj ∈ B.
218
Teoria jocurilor
De aceea, unii folosesc termenul de punct de echilibru în loc de
punct şa atunci când se referă la soluţia unui joc matriceal G = (A, B, f).
Definiţia precedentă se poate extinde, fără dificultate, la cazul a n
jucători, ale căror funcţii de câştig sunt funcţii reale de n argumente.
Exemplu
Se consideră jocul în formă normală G, căruia îi corespunde
matricea:
B1 B2 B3 B4 A1 A2 A3
(4,0) (0,1) (2,4)
(2,1) (2,0) (1,3)
(0,4) (3,3) (1,2)
(1,1) (5,2) (0,2)
Determinarea punctelor de echilibru Nash ale jocului se va face în
modul următor: pentru fiecare jucător şi pentru fiecare strategie a acestuia,
se determină răspunsul optim al celuilalt jucător la respectiva strategie.
Pentru a-l marca, vom sublinia în acea linie / coloană câştigul maxim
corespunzător.
Astfel, observăm că dacă P1 ar folosi strategia A1, atunci P2 ar trebui
să folosească strategia B3 şi vom scrie atunci (0,4) în poziţia din matrice
corespunzătoare perechii (A1, B3). Asemănător, pentru strategiile A2 şi A3
ale lui P1, vom selecta răspunsurile B3, respectiv B1 şi vom completa (3, 3),
respectiv (2, 4) în locurile potrivite din tabel.
În privinţa replicilor lui P1 la alegerile posibile ale lui P2, strategiei
B1 îi va corespunde A1 şi vom scrie în prima coloană (4, 0) (deoarece 4 > 0
şi 4 > 2). Pentru coloanele a doua, a treia şi a patra, vom selecta strategiile
de răspuns A1, A2 şi A2, respectiv.
219
Modele matematice în economie
Se obţine aşadar, după procedura de marcare, următorul tabel:
B1 B2 B3 B4 A1 A2 A3
(4,0) (0,1) (2,4)
(2,1) (2,0) (1,3)
(0,4) (3,3) (1,2)
(1,1) (5,2) (0,2)
Ţinând seama de definiţia dată anterior, deducem că punctele de
echilibru corespund acelor perechi de câştiguri în care ambele componente
apar subliniate (dacă există). În exemplul analizat, această situaţie apare
doar în cazul perechii de strategii (A2, B3), care va reprezenta deci soluţia
Nash a jocului.
Vom clarifica în continuare legătura care există între eliminarea
strategiilor strict dominate şi existenţa punctelor de echilibru Nash. Au loc
următoarele rezultate:
Propoziţia 4.1
În jocul dat sub formă normală G = ⎨A, B; f1, f2⎬, dacă strategiile
(S *1 , S *
2 ) reprezintă un punct de echilibru, atunci ele nu sunt afectate de
procedeul de eliminare a strategiilor strict dominate.
Propoziţia 4.2
Dat fiind jocul G = ⎨A, B; f1, f2⎬, dacă eliminarea succesivă a
strategiilor dominate strict conduce la desfiinţarea tuturor combinaţiilor de
strategii, cu excepţia lui (S *1 , S *
2 ), atunci această pereche constituie unicul
punct de echilibru Nash al jocului.
Vom justifica cele afirmate în propoziţia 4.1, folosind reducerea la
absurd. Să presupunem că (S *1 , S *
2 ) este un punct de echilibru al jocului, dar
că una dintre strategiile componente, de exemplu S *1 , a fost eliminată la un
moment dat (eventual precedată de alte strategii din A\⎨S *1 ⎬, sau B\⎨S *
2 ⎬,
220
Teoria jocurilor
eliminate şi ele), fiind strict dominată. Să notăm cu S’1 o strategie din A care
a „supravieţuit” eliminării succesive până la momentul dispariţiei lui S *1 şi
care o domină strict pe aceasta. Are loc deci relaţia:
f1(S *1 , B) < f1(S’1, B) pentru orice strategie B dintre cele rămase la
acest moment. Cum S *1 ar fi prima eliminată dintre strategiile de echilibru,
din inegalitatea de mai sus rezultă:
f1(S *1 , S *
2 ) < f1(S’1, S *2 ).
Dar astfel este contrazis faptul că S *1 este cel mai bun răspuns al lui
P1 la strategia S *2 a lui P2, aşa cum impune faptul că (S *
1 , S *2 ) e punct de
echilibru. Cu aceasta, demonstraţia se încheie.
Mai departe ne preocupă problema existenţei punctelor de echilibru
multiple ale unui joc bimatriceal. Conform propoziţiei 4.1, nu este posibil ca
strategiile componente ale unuia dintre ele să fie evitate în procesul de
eliminare succesivă a strategiilor strict dominate, iar altele, cu aceeaşi
proprietate, nu. De aici rezultă că în propoziţia 4.2 este suficient să arătăm
că (S *1 , S *
2 ) este punct de echilibru Nash. (Demonstraţia, asemănătoare cu
cea precedentă, se sprijină pe ipoteza că mulţimile de strategii ale ambilor
jucători sunt finite).
Ne vom servi în discuţia noastră de exemplul jocului
G = (A, B; f1, f2) cu matricea câştigurilor:
B1 B2 B3 A1A2A3
(2,0) (3,4) (1,3)
(2,1) (1,2) (0,2)
(4,2) (2,3) (3,0)
221
Modele matematice în economie
Se poate observa uşor că strategia A1 domină strict pe A3 şi că B3
domină strict pe B2 după eliminarea lui A3. După ce suprimăm strategiile
dominate, jocul are forma simplificată:
B1 B3 A1A2
(2,0) (3,4)
(4,2) (2,3)
Urmând procedura descrisă anterior, sau prin verificare directă,
folosind definiţia, se deduce că (A1, B3) şi (A2, B1) sunt puncte de echilibru
Nash ale jocului.
Aceasta ne permite să remarcăm faptul că, spre deosebire de jocurile
cu sumă nulă, în jocurile bimatriceale, prin interschimbarea strategiilor
corespondente între două puncte de echilibru, perechile rezultate nu mai
sunt puncte de echilibru, aşa cum o demonstrează (A1, B1) şi (A2, B3).
Problema principală însă este ce anume trebuie înţeles prin soluţia
unui astfel de joc. Examinând câştigurile fiecărui jucător în parte, constatăm
că nu putem privilegia vreunul din punctele de echilibru, deoarece jucătorul
P1 preferă, firesc, pe (A1, B3), iar P2 preferă pe (A2, B1).
Teoretic, putem conveni că soluţia jocului este formată din ambele
puncte de echilibru. Practic însă este nevoie de o negociere (uneori dură)
între cei doi jucători sau de un arbitraj pentru a stabili pentru ce strategii vor
opta fiecare. Şanse mai mari de concretizare ar putea avea în acest caz
varianta care dă câştigurile (3, 4), dar elemente de ordin subiectiv nu trebuie
ignorate.
O situaţie de incertitudine în alegerea strategiilor optime ca cea de
faţă, este un teren propice pentru a testa utilitatea strategiilor de tip
maximin.
222
Teoria jocurilor
Astfel, în ce priveşte strategia maximin a lui P1 vom găsi:
min⎨2,2,4⎬ = 2 → A1; min⎨3,1,2⎬ = 1 → A2; min⎨1,0,3⎬ = 0 → A3,
deci strategia căutată este A1. Analog, pentru P2 avem:
min⎨0,4,3⎬ = 0 → B1; min⎨1,2,2⎬ = 1 → B2; min⎨2,3,0⎬ = 0 → B3,
de unde rezultă că strategia maximin a lui P2 este B2.
După cum se observă, însă, perechea de strategii maximin (A1, B2)
nu este un punct de echilibru. Oricare dintre jucători preferă câştigul care îi
revine ca urmare a alegerii în comun a unuia din punctele de echilibru faţă
de câştigul minim asigurat (într-adevăr (4, 2) > (2,1) şi (3, 4) > (2, 1)). În
fapt, are loc următorul rezultat general:
Propoziţia 4.3
Orice punct de echilibru furnizează fiecărui jucător în parte, un
câştig cel puţin egal cu câştigul său maximin.
Demonstraţie:
Presupunem că (A*, B*) este punct de echilibru al jocului, în
notaţiile de mai înainte. Atunci avem, pentru P1:
f1(A*, B*) ≥ f1(Ai, B*) ≥ minf1(Ai, Bj) pentru orice strategie Ai ∈ A.
De aici rezultă imediat:
maxminf1(Ai, Bj) ≤ f1(A*, B*).
Pentru jucătorul P2, obţinem folosind din nou definiţia punctului de
echilibru: f2(A*,B*) ≥ f2(A*, Bj) ≥ minf2(Ai, Bj), (∀) Bj ∈ B, deci
f2(A*,B*) ≥ maxminf2(Ai, Bj).
În concluzie, într-un joc cu sumă arbitrară, strategiile maximin îşi
pierd din importanţă.
Bj∈B
Bj∈B Ai∈A
Ai∈A
Ai∈A Bj∈B
223
Modele matematice în economie
Puncte de echilibru în strategii mixte
Posibilitatea existenţei mai multor puncte de echilibru Nash într-un
joc bimatriceal, cu implicaţiile sale în stabilirea soluţiei jocului nu este,
totuşi, lucrul care stânjeneşte cel mai mult. O problemă fundamentală care
apare în acest context este faptul că există jocuri cu sumă arbitrară chiar
dintre cele mai simple, care nu admit strategii pure de echilibru.
Să considerăm următorul joc:
B1 B2 A1A2
(2,1) (1,2)
(0,2) (3,0)
Se poate observa pe acest exemplu că nici o pereche de strategii
(Ai, Bj) nu poate realiza echilibrul. Astfel, pentru (A1, B1) observăm că
jucătorul P2 are interesul să devieze de la strategia B1 către B2, care îi
asigură un câştig superior. Analog, (A2, B1) nu poate fi punct de echilibru,
pentru că jucătorul P1 va prefera strategia A1 lui A2, ş.a.m.d..
Este greu de admis ideea că astfel de jocuri nu admit soluţie, în
sensul echilibrului de tip Nash. Cheia de rezolvare stă şi aici, ca şi în cazul
jocurilor cu sumă nulă, în lărgirea conceptului de strategie şi definirea
noţiunii de echilibru în această accepţiune mai largă.
Trebuie făcută precizarea că noul tip de strategie îl înglobează pe cel
utilizat până acum în discuţie şi că identificarea unor puncte de echilibru
corespunzătoare lui nu suprimă posibilitatea existenţei, pentru un acelaşi
joc, a punctelor de echilibru în strategii pure.
Obişnuim să numim strategie mixtă pe mulţimea A = ⎨A1, ..., Am⎬ a
strategiilor (pure) ale jucătorului P1 o repartiţie de probabilităţi:
x = (x1, ..., xm), unde xi ≥ 0, i = m,1 şi ∑=
m
1iix = 1.
224
Teoria jocurilor
Mulţimea tuturor acestor strategii o notăm prin X. Analog vom
considera:
Y = ⎨y = (y1,..., yn) ⏐ yj ≥ 0, ∑=
n
1jjy = 1⎬ ca fiind ansamblul
strategiilor mixte pe mulţimea B, a strategiilor jucătorului P2.
Ideea de strategie mixtă se leagă, în mod natural, de alternarea
strategiilor de către un jucător, în decursul mai multor partide. Cum
probabilităţile pot fi interpretate ca limite ale unor frecvenţe relative, se
pune întrebarea dacă în situaţii reale putem considera ca acceptabilă
repetarea (independentă) a jocului de un număr de ori suficient de mare.
Se poate încerca evitarea acestei dificultăţi prin interpretarea unei
strategii mixte a lui P2, y = (y1, ..., yn) ca reprezentând probabilităţile
(subiective) pe care le atribuie P1 utilizării uneia dintre strategiile pure
B1, ..., Bn de către P2 şi, asemănător, a unei strategii mixte a lui P1
(x1, ..., xm), schimbând rolurile între jucători. Impasul ce se profilează aici
ţine de tratarea jocurilor cu mai mult de doi jucători, caz în care doi jucători
pot avea percepţii diferite relative la comportarea unui terţ.
Oricare ar fi interpretarea dată strategiilor mixte, ele ne ajută să
punem în termeni corecţi problema maximizării unui câştig incert, prin
apelul la conceptul fundamental de medie a unei variabile aleatoare.
În condiţiile alegerii independente şi simultane a strategiilor de către
fiecare jucător în parte, folosindu-ne de notaţiile de mai înainte, vom defini
câştigurile celor doi, în ipoteza folosirii strategiilor mixte x şi y, respectiv,
prin: ϕ1(x, y) = ∑∑= =
m
1i
n
1jjiij yxa ;
ϕ2(x, y) = ∑∑= =
m
1i
n
1jjiij yxb ; ϕi: X × Y → ℝ, i = 2,1 ,
225
Modele matematice în economie
unde xi ⋅ yj reprezintă probabilitatea utilizării perechii de strategii (Ai, Bj),
iar aij şi bij sunt câştigurile asociate ei ale jucătorilor P1 şi P2, respectiv.
Să observăm că de exemplu, câştigul mediu ϕ1(x, y) este o medie a
unor câştiguri medii, considerând, pe rând, strategiile din A fixate faţă de
cele din B, după cum o arată relaţia:
ϕ1(x, y) = ∑ ∑= =
⎟⎟⎠
⎞⎜⎜⎝
⎛m
1i
n
1jjijya xi.
Cu aceste precizări, putem să dăm definiţia extinsă a punctelor de
echilibru ale unui joc bimatriceal în formă normală:
Definiţie: Într-un joc bimatriceal G = ⎨A, B; f1, f2⎬, o pereche de
strategii mixte (x*, y*) este un punct de echilibru Nash dacă au loc
următoarele inegalităţi:
ϕ1(x*,y*) ≥ ϕ1(x, y*)
ϕ2(x*,y*) ≥ ϕ2(x*, y)
pentru orice strategii mixte x ∈ X şi y ∈ Y.
Cu alte cuvinte, x* este cea mai bună strategie (mixtă) de răspuns a
lui P1 la strategia y* a lui P2 şi viceversa.
Se deduce din cele de mai sus că putem porni la determinarea
strategiilor mixte de echilibru ale unui joc (a căror existenţă o vom afirma
ceva mai târziu) prin găsirea celui mai bun răspuns (în strategii mixte sau
pure) al unui jucător la o strategie mixtă a celuilalt.
În demersul nostru ne servim de următorul rezultat:
Propoziţia 4.4
Pentru ca o strategie mixtă a lui P1 să fie un cel mai bun răspuns al
acestuia la o strategie mixtă dată y a lui P2, este necesar şi suficient ca ea să
asigneze probabilităţi strict pozitive numai acelor strategii pure care sunt ele
226
Teoria jocurilor
însele un cel mai bun răspuns la strategia y (sau numai unei părţi a acestora,
restul primind probabilităţi nule).
Demonstraţie:
Să notăm, pentru o strategie y dată, cu Imax mulţimea indicilor acelor
strategii pure ale lui P1 care sunt un cel mai bun răspuns la y:
Imax = ⎨K ⏐ ∑∑==
≥n
1jjij
n
1jjkj yaya , (∀) i = m,1 ⎬.
Să alegem un K0 ∈ Imax. Fie x = (x1, ..., xm) o strategie mixtă a lui P1
şi să presupunem că există l ∈ n,1 \ Imax astfel încât xl > 0. Notăm cu x’
strategia mixtă obţinută din x prin asocierea probabilităţii x0K + xl la
strategia A0K şi a unei probabilităţi nule la Al. Atunci vom avea:
ϕ1(x, y) = <++⎟⎟⎠
⎞⎜⎜⎝
⎛∑∑∑ ∑==≠ =
n
1jjljl
n
1jjjKK
l,Ki
n
1jjiji yaxyaxyax
00
0
)y,'x(ya0ya)xx(ya 1
n
1jjlj
n
1jjjKlK
l,Ki
n
1jjij 00
0
ϕ=⋅+++⎟⎟⎠
⎞⎜⎜⎝
⎛< ∑∑∑ ∑
==≠ =
, de
unde deducem că x nu este cea mai bună strategie de răspuns la y.
Pentru probarea suficienţei, se consideră I0 ⊆ Imax şi o strategie mixtă
x0 = ( )m1i0ix = care asignează probabilităţi nenule numai acelor strategii Ah, cu
h ∈ I0. De aici rezultă:
∑∑∑∑ ∑====
∈∈ =
=⎟⎟⎠
⎞⎜⎜⎝
⎛=⎟⎟
⎠
⎞⎜⎜⎝
⎛=ϕ
n
1jjij
m,1i
n
1jjij
m,1iIh
0h
Ih
n
1jjhj
0h
01 yamaxyamaxxyax)y,x(
00
, şi
mai departe:
ϕ1(x, y) = =≤⎟⎟⎠
⎞⎜⎜⎝
⎛∑∑∑∑=====
n
1jjij
m,1i
m
1ii
n
1jjij
m
1ii yamaxxyax ϕ1(x0, y), oricare ar
fi strategia mixtă x ∈X. Deci x0 este răspuns optim al lui P1 la strategia y.
227
Modele matematice în economie
Un enunţ similar celui din propoziţia 4.4 caracterizează strategiile mixte ale lui P2 care sunt răspunsuri optime la o strategie mixtă x a lui P1, fixată.
Reamintim că orice strategie pură a unui jucător poate fi interpretată ca o strategie mixtă, exprimabilă printr-un vector binar cu 1 pe poziţia corespunzătoare strategiei şi având restul componentelor egale cu 0.
Revenind la exemplul de mai înainte al jocului bimatriceal 2 × 2, să încercăm determinarea unui punct de echilibru în strategii mixte. Pentru simplitate, vom nota strategiile mixte ale lui P1 prin x = (p, 1 – p) şi
strategiile mixte ale lui P2 cu y = (q, 1 – q), p, q ∈ [0, 1]. Într-o primă etapă, vom găsi strategiile pure optime de răspuns ale
fiecărui jucător, la o strategie mixtă a adversarului.
Pentru o strategie mixtă dată (q, 1 – q) pe B = ⎨B1, B2⎬, câştigul
mediu al lui P1 va fi 2q + 0(1 – q) = 2q, dacă foloseşte strategia A1 sau
1 ⋅ q + 3(1 – q) = 3 – 2q, dacă foloseşte strategia A2.
Rezolvând inecuaţia 2q > 3 – 2q pe intervalul [0, 1], deducem:
- dacă q ∈ [0, 43 ), cel mai bun răspuns al lui P1 este A2;
- dacă q = 43 , atunci A1 şi A2 sunt răspunsuri la fel de bune;
- dacă q ∈ (43 , 1], cel mai bun răspuns al lui P1 este A1.
Inversând rolurile, fie (p, 1 – p) o strategie mixtă pe A = ⎨A1, A2⎬.
Câştigul mediu al lui P2 va fi 1 ⋅ p + 2(1 – p) = 2 – p, dacă foloseşte strategia B1 sau 2p, dacă utilizează strategia B2. Folosindu-ne de soluţia inecuaţiei
2 – p > 2p pe [0, 1], constatăm următoarele:
- pentru p ∈ [0, 32 ), răspunsul optim al lui P2 este B1;
228
Teoria jocurilor
- pentru p = 32 , P2 poate răspunde atât cu B1, cât şi cu B2;
- pentru p ∈ (32 , 1], răspunsul optim al lui P2 este B2.
Căutăm acum o pereche de strategii mixte (x*, y*), x* = (p*, 1-p*),
y* = (q*, 1 – q*) cu proprietăţile din definiţia extinsă a echilibrului Nash.
Vom analiza pe rând diversele situaţii posibile.
I. Dacă q* ar aparţine intervalului [0, 43 ), atunci răspunsul optim
al lui P1 ar fi strategia pură A2, căreia îi corespunde p = 0 ca
strategie mixtă. Însă răspunsul optim al jucătorului P2 la această
strategie este B1, corespunzând lui q = 1. Cum 1 ∉ (0, 43 ], acest
caz nu e compatibil cu existenţa unui punct de echilibru.
II. Dacă q* ∈ (43 , 1], cel mai bun răspuns al lui P1 este A1, pe care
îl identificăm cu strategia mixtă (1, 0). Cel mai bun răspuns al
lui P2 la această strategie este strategia pură B2, pentru care
avem q = 0. Dar 0 ∉ (43 , 1] şi concluzia e identică celei de la
punctul precedent.
III. În cazul q* = 43 , ca răspuns optim al jucătorului P1 putem lua
orice strategie mixtă (r, 1 – r) pe ⎨A1, A2⎬, r ∈ [0, 1], conform
cu propoziţia 4.4. Dar situaţiile r ∈ [0, 32 ) şi r ∈ (
32 , 1] conduc
la valori ale răspunsurilor corespunzătoare lui q = 1 şi q = 0,
respectiv, ambele diferite de 43 . Pentru r =
32 , răspunsul optim
229
Modele matematice în economie
fiind orice strategie mixtă (q, 1 – q) pe ⎨B1, B2⎬, în particular
(43 ,
41 ), rezultă că putem alege p* =
32 . În concluzie, punctul de
echilibru al jocului, în strategii mixte, este:
(x*,y*) = ((32 ,
31 ), (
43 ,
41 )).
Importanţa considerării strategiilor mixte în identificarea soluţiilor
posibile ale unui joc bimatriceal reiese din următorul rezultat (pe care îl dăm
într-un caz particular):
Teorema lui Nash
Orice joc finit de două persoane în formă normală, G = ⎨A, B; f1, f2⎬
posedă cel puţin un punct de echilibru, în strategii pure sau mixte.
Demonstraţia teoremei, al cărei enunţ în formă generală se referă la
jocuri de n persoane, are la bază o teoremă de punct fix.
(În cazul de faţă, (x*,y*) cu proprietatea T(x*, y*) = (x*,y*) este
punct fix al unei transformări T). Deşi în demonstraţie nu se construieşte
efectiv un punct de echilibru, concluzia sa este suficient de elocventă.
Vom prezenta în cele ce urmează o procedură de determinare a
punctelor de echilibru ale unui joc bimatriceal în formă normală, atunci când
jucătorii P1, P2 au la dispoziţie m şi n strategii pure, respectiv, cu ajutorul
unui exemplu concret. Vom avea în vedere cazul când câştigurile jucătorilor
sunt nenegative, dar aceasta, după cum se constată, nu reprezintă o restricţie
importantă.
Sunt necesare câteva precizări şi notaţii. Astfel, vom nota cu C1
matricea câştigurilor jucătorului P1 definită prin:
C1 = (aij)n,1jm,1i
== , aij = f1(Ai, Bj), Ai ∈A, Bj ∈ B.
230
Teoria jocurilor
Asemănător, C2 va desemna matricea câştigurilor jucătorului P2:
C2 = (bij) n,1jm,1i
== , bij = f2(Ai, Bj), Ai ∈ A, Bj ∈ B.
Pentru două strategii mixte, x = (x1, ..., xm) a lui P1 şi y = (y1,..., yn) a
lui P2, se pot transcrie câştigurile medii ale fiecărui jucător în parte, astfel:
ϕ1(x, y) = xC1yT, ϕ2(x, y) = yC T2 xT, unde indicii T înseamnă operaţia
de transpunere.
Notând Jm şi Jn vectorii-linie cu m, respectiv n componente, toate
egale cu 1, vom putea scrie relaţiile:
xJ Tm = 1, y J T
n = 1 (1)
sinonime cu faptul că suma probabilităţilor (xi)i∈ m,1 (respectiv (yj)j∈ n,1 ) face
1.
Să presupunem acum că (x, y) reprezintă o pereche de strategii de
echilibru şi să notăm, pentru simplitate, cu ϕ1 şi ϕ2 câştigurile aferente ei ale
celor doi jucători.
Introducem vectorii Φ1 = (ϕ1, ..., ϕ1) ∈ℝn şi Φ2 = (ϕ2, ..., ϕ2) ∈ℝn,
care ne permit o scriere matriceală a proprietăţii de echilibru. Astfel,
folosind propoziţia 4.4, deducem relaţiile:
C1yT ≤ Φ T1 , C T
2 xT ≤ Φ T2 (2)
în care inegalităţile trebuie interpretate ca funcţionând între oricare două
componente corespondente ale vectorilor – coloană. Ele exprimă faptul că
răspunsurile printr-o strategie pură la strategiile y, respectiv x pot să ducă, în
cel mai bun caz, la egalarea câştigurilor ϕ1, respectiv ϕ2. Acestea sunt atinse
efectiv în (x, y), ceea ce reiese din relaţiile:
xC1yT = xΦ T1 ⇔ x(Φ T
1 - C1yT) = 0
yC T2 xT = yΦ T
2 ⇔ y(Φ T2 - C T
2 xT) = 0 (3)
231
Modele matematice în economie
în care am ţinut seama de (1).
Rezultă din cele de mai înainte că un punct de echilibru Nash, (x, y),
al unui joc bimatriceal trebuie să satisfacă cele şase relaţii date, la care se
adaugă condiţiile x ≥ 0 şi y ≥ 0.
Concret, vom găsi soluţiile următorului joc bimatriceal, folosind
instrumentarul prezentat pentru cazul general.
B1 B2 B3 A1A2
(4,0) (6,12)
(2,1) (2,10)
(8,6) (4,9)
Cele două matrici de câştiguri ale jucătorilor sunt:
C1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛426824
şi C2 = ⎟⎟⎠
⎞⎜⎜⎝
⎛91012610
Suntem în cazul a m = 2 strategii pure ale jucătorului P1 şi a n = 3
strategii pure ale jucătorului P2.
Vom separa relaţiile de tip liniar de cele neliniare şi apoi le vom
grupa astfel încât să ne ocupăm separat de strategia (x1, x2), respectiv
(y1, y2, y3). Din relaţiile (1) şi (2) va rezulta:
x1 + x2 = 1 y1 + y2 + y3 = 1
12x2 - ϕ2 ≤ 0 4y1 + 2y2 + 8y3 - ϕ1 ≤ 0
x1 + 10x2 - ϕ2 ≤ 0 6y1 + 2y2 + 4y3 - ϕ1 ≤ 0
6x1 + 9x2 - ϕ2 ≤ 0
x1, x2 ≥ 0 y1, y2, y3 ≥ 0
Pentru jocul analizat, atât ϕ1 cât şi ϕ2 sunt nenegative şi ca atare,
vom nota x3 = ϕ2 şi y4 = ϕ1. De asemenea, vom transforma, în sistemele
scrise anterior, inegalităţile în egalităţi, prin introducerea unor variabile-
ecart, notate θi, i = 2,1 , respectiv µj, j = 3,1 .
232
Teoria jocurilor
Obţinem:
x1 + x2 = 1 y1 + y2 + y3 = 1
(I) 12x2 – x3 + µ1 = 0 (II) 4y1 + 2y2 + 8y3 – y4 + θ1 = 0
x1 + 10x2 - x3 + µ2 = 0 6y1 + 2y2 + 4y3 - y4 + θ2 = 0
6x1 + 9x2 - x3 + µ3 = 0
x1, ..., x3 ≥ 0; µ1,...,µ3 ≥ 0 y1, ..., y4 ≥ 0; θ1, θ2 ≥ 0
Relaţiile (3) vor avea drept corespondent următoarele egalităţi:
(III) x1θ1 + x2θ2 = 0
y1µ1 + y2µ2 + y3µ3 = 0
Căutarea soluţiilor jocului bimatriceal se structurează aşadar în:
- rezolvarea în domeniul numerelor nenegative a sistemului liniar (I),
în necunoscutele x1, x2, x3, µ1, µ2, µ3;
- rezolvarea în domeniul numerelor nenegative a sistemului liniar
(II), în necunoscutele y1, y2, y3, y4, θ1, θ2;
- „filtrarea” soluţiilor, prin verificarea, de tip încrucişat, a
îndeplinirii condiţiilor (III).
În fapt, obiectivul nostru principal este să deducem soluţiile posibile
de bază pentru fiecare din sistemele (I) sau (II), deoarece soluţia generală se
poate obţine ca o combinaţie liniară convexă a soluţiilor de bază. Probarea
condiţiilor (III) o vom face aşadar pentru diferite perechi de soluţii de bază.
233
Modele matematice în economie
Să considerăm matricea sistemului liniar (I), în care fiecare coloană
este notată cu ak, k = 6,1 :
a1 a2 a3 a4 a5 a6
⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜
⎝
⎛
−−−
10019601011010011120000011
Procedura este cea cunoscută de la programarea liniară: se aleg patru
coloane din cele 6 astfel încât ele să formeze o bază în ℝ4,
B = ⎨a1k , a
2k , a3k , a
4k ⎬.
Atunci soluţia de bază va fi dată de (x, µ) = (B-1b, 0), unde
b = (1, 0,0,0)T este coloana termenilor liberi şi toate variabilele ale căror
coloane asociate nu au intrat în bază iau valoarea 0.
Fie de exemplu mulţimea ⎨a1, a2, a3, a5⎬. Deoarece:
det[a1, a2, a3, a5] =
019611101011200011
−−−
= 9 ≠ 0, rezultă că
B = ⎨a1, a2, a3, a5⎬ este o bază. Alegem µ1 = µ3 = 0. Avem de
rezolvat sistemul:
x1 + x2 = 1
12x2 – x3 = 0
x1 + 10x2 - x3 + µ2 = 0
6x1 + 9x2 - x3 = 0
234
Teoria jocurilor
Se deduce uşor că x3 = 12x2, x2 = 2x1. Cum x1 + x2 = 1, rezultă
x1 = 31 , x2 =
32 , x3 = 8 şi µ2 = 1.
Soluţia de bază va fi deci (x, µ)1 = (31 ,
32 ,8,0,1,0), având toate
componentele pozitive sau nule.
Repetând procedeul pentru alte baze şi testând nenegativitatea
componentelor soluţiilor, vom găsi încă două soluţii posibile de bază.
(x, µ)2 = (1,0,6,6,5,0), corespunzând bazei ⎨a1, a3, a4, a5⎬ şi
(x, µ)3 = (0,1,12, 0,2,3), corespunzând bazei ⎨a2, a3, a5, a6⎬.
Matricea sistemului (II) este:
b1 b2 b3 b4 b5 b6
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−−
101426011824000111
Putem alege o bază formată din coloanele b1, b2 şi b4, deoarece
determinantul corespunzător lor are valoarea -2. Alegem y3 = θ1 = θ2 = 0.
Din sistemul:
y1 + y2 = 1
4y1 + 2y2 – y4 = 0
6y1 + 2y2 – y4 = 0
deducem y1 = 0, y2 = 1 şi y4 = 2, care ne dau soluţia posibilă de bază:
(y, θ)1 = (0,1,0,2,0,0).
Pentru bazele ⎨b1, b3, b4⎬, ⎨b3, b4, b6⎬ şi ⎨b1, b4, b5⎬, vom obţine alte
soluţii posibile de bază ale sistemului:
(y, θ)2 = (32 , 0,
31 ,
316 , 0, 0), (y, θ)3 = (0,0,1,8,0,4),
235
Modele matematice în economie
(y, θ)4 = (1, 0,0,6,2,0).
Înainte de a trece la verificarea condiţiilor (III), observăm că, în
ipotezele de nenegativitate a componentelor, x1θ1 + x2θ2 = 0 este
echivalentă cu x1θ1 = 0 şi x2θ2 = 0 şi similar y1µ1 + y2µ2 + y3µ3 = 0 e
îndeplinită dacă şi numai dacă y1µ1 = 0, y2µ2 = 0 şi y3µ3 = 0.
În consecinţă, dacă un θ (µ) este nenul, atunci componenta x
(y) cu acelaşi indice trebuie să fie egală cu zero.
Pentru facilitarea examinărilor necesare, vom construi două
tabele în care marcăm în prima coloană cuplul de strategii (x, y)
examinat, prin indicii corespunzători ordinilor date, iar în ultima
coloană, prin *, dacă perechea (x, y) respectă condiţia impusă. Primul
tabel este:
(x,y) θ1 θ2 x1 x2 */- (1,1)(2,1)(3,1)
0 0 0
0 0 0
1/3 1 0
2/3 0 1
* * *
(1,2)(2,2)(3,2)
0 0 0
0 0 0
1/3 1 0
2/3 0 1
* * *
(1,3)(2,3)(3,3)
0 0 0
4 4 4
1/3 1 0
2/3 0 1
- * -
(1,4)(2,4)(3,4)
2 2 2
0 0 0
1/3 1 0
2/3 0 1
- - *
236
Teoria jocurilor
Referitor la modul de completare a tabelului, am marcat cu *
perechea (2,3), deoarece θ1x1 = 0 ⋅ 1 = 0 şi θ2x2 = 4 ⋅ 0 = 0, în timp ce pentru
perechea (1, 4) avem θ1 = 2 ≠ 0 şi x1 = 31 ≠ 0, ş.a.m.d..
Cel de-al doilea tabel se prezintă astfel:
(x,y) µ1 µ2 µ3 y1 y2 y3 */- (1,1) (1,2) (1,3) (1,4)
0 0 0 0
1 1 1 1
0 0 0 0
0 2/3 0 1
1 0 0 0
0 1/3 1 0
- * * *
(2,1) (2,2) (2,3) (2,4)
6 6 6 6
5 5 5 5
0 0 0 0
0 2/3 0 1
1 0 0 0
0 1/3 1 0
- - * -
(3,1) (3,2) (3,3) (3,4)
0 0 0 0
2 2 2 2
3 3 3 3
0 2/3 0 1
1 0 0 0
0 1/3 1 0
- - - *
Am marcat cu * cuplul de strategii (1, 2), pentru că avem:
µ1y1 = 0 ⋅ 32 = 0, µ2y2 = 1 ⋅ 0 = 0 şi µ3y3 = 0 ⋅
31 = 0. În schimb
cuplul (3, 2) va fi marcat cu – (respins), deoarece µ1y1 = µ2y2 = 0, însă
µ3y3 = 3 ⋅ 31 = 1 ≠ 0.
Vom extrage din fiecare tabel perechile de strategii marcate cu
asterisc şi apoi vom intersecta cele două mulţimi. Astfel obţinem:
⎨(1,1), (2,1), (3,1), (1,2), (2,2), (3,2), (2,3), (3, 4)⎬ ∩
∩ ⎨(1,2), (1,3), (1,4), (2,3), (3, 4)⎬ = ⎨(1,2), (2,3), (3, 4)⎬.
Intersecţia găsită conţine strategiile de echilibru Nash (pure sau
mixte) ale jocului considerat. Acestea sunt (respectând ordinea):
237
Modele matematice în economie
⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎠⎞
⎜⎝⎛
⎟⎠⎞
⎜⎝⎛
31,0,
32,
32,
31 ; ((1, 0), (0,0,1)); ((0,1), (1, 0,0)).
Se observă că avem o pereche de strategii mixte (prima) şi două
perechi de strategii pure, mai exact (A1, B3) şi (A2, B1).
În încheierea discuţiei despre punctele de echilibru ale unui joc
bimatriceal, facem următoarele observaţii:
1. În situaţia în care elementele matricelor de câştiguri nu sunt toate
pozitive sau nule, trebuie să considerăm că ϕ1 şi ϕ2 sunt numere
reale. Pentru a putea să ne folosim în continuare de procedeul
descris mai înainte, putem proceda în două moduri:
a) să exprimăm fiecare variabilă ϕi, i = 2,1 ca diferenţa a două
variabile cărora li se impune să ia valori nenegative:
ϕi = ϕ’i - ϕ”i, ϕ’i ≥ 0, ϕ”i ≥ 0, i = 2,1 ;
b) să adunăm la matricile C1 sau C2 o matrice (m × n) formată
din constante identice între ele, suficient de mari,
transformarea neafectând decât valorile câştigurilor medii, nu
şi determinarea strategiilor de echilibru;
2. În exemplul rezolvat mai înainte, trebuiau considerate cel mult
C 46 = 15 situaţii care conduc la o bază pentru matricea sistemului
(I) şi cel mult C 36 = 20 situaţii de acelaşi tip în cazul sistemului
(II). Pentru un număr mai mare de strategii ale fiecărui jucător,
pentru a fi aplicabilă, metoda face apel la un program care
generează soluţii posibile de bază şi le testează în mod automat;
3. Asupra elementelor matricilor de câştiguri pot fi operate şi alte
tipuri de transformări, ca de pildă scalarea (înmulţirea cu un factor
pozitiv). De asemenea se poate discuta despre o strategie pură
238
Teoria jocurilor
dominată de o strategie mixtă, care ar putea să o disloce, fără a
afecta esenţial găsirea punctelor de echilibru, (Cititorul este
îndemnat să compare ultimul joc analizat cu unul prezentat
anterior şi să tragă concluziile de rigoare).
4.2 Jocuri bimatriceale cooperative
Aşa cum arătam la începutul discuţiei privind jocurile cu sumă
arbitrară, un joc cooperativ este acela în care regulile sale permit alegerea în
comun a strategiilor şi transferul de câştiguri între jucători, în scopul
cointeresării lor într-o anumită acţiune comună.
Ne vom servi de exemplul câtorva jocuri, pentru a ilustra situaţii în
care jucătorii au interesul să coopereze între ei. Punctul de plecare îl va
constitui, în ideea continuităţii, noţiunea de cuplu de strategii de echilibru
Nash.
Să considerăm jocul bimatriceal următor:
B1 B2 B3 A1A2
(1,2) (2,2)
(2,-2) (4,-1)
(3,1) (6,3)
Se observă cu uşurinţă că perechea de strategii (A2, B3) reprezintă un
punct de echilibru al jocului (în strategii pure). În particular, câştigurile
corespunzătoare ale jucătorilor (6, respectiv 3) sunt valorile maxime ale
funcţiilor de câştig ale fiecăruia, deci şi suma câştigurilor (care nu mai poate
fi îmbunătăţită prin considerarea strategiilor mixte) este maximă, între toate
combinaţiile posibile de strategii. Într-un asemenea caz, ipoteza cooperării
între cei doi jucători nu are nici un efect.
239
Modele matematice în economie
Dacă însă analizăm jocul:
B1 B2 A1A2
(3,2) (2,8)
(9,1) (7,5)
vom constata că, deşi (A1, B1) este punct de echilibru al jocului, câştigurile
care le revin jucătorilor nu îi pot mulţumi. Chiar suma lor, 5, ia valoarea cea
mai mică posibilă. Eliminând perechile (A2, B1) şi (A1, B2), care favorizează
un jucător şi îl defavorizează pe celălalt, rămâne perechea (A2, B2), ale cărui
câştiguri aduc un plus amândurora faţă de ce le oferă strategiile de echilibru.
Ea este însă instabilă.
Ieşirea din această dilemă se face prin modificarea regulilor jocului,
prin acceptarea cooperării. Odată acceptată, ea aduce cu sine însă o altă
problemă, aceea a împărţirii între cei doi jucători a câştigului comun, egal cu
12. Teoretic, se poate impune interzicerea plăţilor laterale între jucători,
situaţie în care distribuţia câştigurilor poate să rămână cea de la început. Nu
vom adopta o asemenea ipoteză în cele ce urmează.
Jocurile de tip cooperativ au o problematică specifică şi rezolvarea
lor presupune atât introducerea unor noţiuni noi cât şi revalorizarea altora
mai vechi.
Se pune astfel o primă întrebare: sub ce limită a câştigului nu poate
să accepte să coboare fiecare jucător?
Răspunsul îl furnizează acel câştig pe care îl poate obţine un jucător,
acţionând în mod independent, indiferent de strategia (pură sau mixtă)
aleasă de celălalt jucător. Referindu-ne la primul jucător, obţinem valoarea
maximin a jocului corespunzătoare lui, dată de expresia:
240
Teoria jocurilor
u* = Xx
max∈ Yy
min∈
ϕ1(x,y),
unde x şi y sunt strategii mixte pe mulţimea strategiilor lui P1, respectiv ale
lui P2. Analog, pentru P2 valoarea maximin va fi:
v* = Yy
max∈ Xx
min∈
ϕ2(x,y).
Deci, notând cu (u, v) o pereche de câştiguri ale celor doi jucători, ea
ar putea constitui o soluţie a jocului cooperativ numai dacă avem
(u, v) ≥ (u*, v*).
La întrebarea unde trebuie căutată soluţia jocului, răspunsul îl dă
noţiunea fundamentală de mulţime admisibilă. Aceasta, notată cu S, este
mulţimea tuturor perechilor de câştiguri (u, v) pe care le pot obţine, prin
cooperare în alegerea strategiilor, cei doi jucători. Datorită faptului că sunt
acceptate strategiile mixte şi, mai mult, ele pot fi corelate, această
submulţime a lui ℝ2 are proprietatea de convexitate. Este de presupus că
forma lui S va avea o influenţă asupra găsirii soluţiei jocului.
O altă noţiune importantă este aceea de frontieră Pareto-optimală a
mulţimii admisibile S. Astfel, un punct (u, v) ∈ S aparţine acesteia dacă
oricare ar fi ε > 0, δ > 0 rezultă (u + ε, v) ∉ S şi (u, v + δ) ∉ S.
Vom ilustra noţiunile introduse mai înainte şi vom schiţa metoda de
găsire a soluţiei, folosindu-ne de exemplul următorului joc bimatriceal.
B1 B2 A1A2A3
(1,2) (2,0) (3/2,6)
(3,8) (4,5) (5,3)
241
Modele matematice în economie
Presupunem că regulile jocului permit cooperarea între jucători (dar
nu ca o consecinţă a faptului că jocul nu admite puncte de echilibru în
strategii pure).
Inversând ordinea de mai înainte, vom determina mai întâi mulţimea
admisibilă S, precizând frontiera sa Pareto-optimală, folosindu-ne de o
reprezentare grafică. Dacă notăm cu W11 punctul din plan de coordonate
(1, 2) şi, mai departe, W12 = (3, 8), W21 = (2, 0), W22 = (4, 5), W31 = (23 , 6),
W32 = (5, 3), unde legătura dintre perechile de indici şi perechile de câştiguri
este evidentă, atunci S va fi reprezentată prin aşa-numita „acoperire
convexă” a punctelor W11, ..., W32 (adică cea mai mică mulţime convexă
plană care le conţine), dată în figura următoare prin mulţimea haşurată: V W12
W31
W22
S
W32
W11
0 W21 u
Să precizăm că există cazuri în care unele puncte - câştiguri W pot să
fie situate în interiorul poligonului convex determinat de restul punctelor,
caz în care mulţimea S va fi generată folosind numai aceste din urmă
puncte.
Frontiera Pareto-optimală a lui S va fi formată, în mod firesc, din
laturi ale poligonului W11W21 ... W31. Singurele care satisfac condiţia dată
sunt W12W22 şi W22W32. (Pentru puncte (u, v) aparţinând altor segmente,
242
Teoria jocurilor
cum ar fi W21W32 sau W31W12 este suficient să luăm (u, v + δ) sau (u + ε, v),
cu ε, δ > 0 alese corespunzător, pentru a constata că punctele obţinute fac
parte din S). Această frontieră Pareto [W12, W22, W32] va constitui, de fapt,
zona de interes în identificarea soluţiei jocului, deoarece ea corespunde
cursului de creştere, atât în u cât şi în v, a punctelor (u, v) din S, favorabil
ambilor jucători.
În continuare vom găsi valorile maximin ale jocului (în strategii
mixte). Pentru a uşura calculele, să facem observaţia că atunci când dorim să
minimizăm ϕ1(x, y) în raport cu y ∈ Y, pentru un x ∈ X fixat, este suficient
să considerăm strategiile pure y = (1, 0) şi y = (0, 1) deoarece putem scrie:
ϕ1(x, y) = xC1yT = (x1, x2, x3)C11 y1 + (x1, x2, x3) C 2
1 y2
unde y = (y1, y2), y1, y2 ≥ 0, y1 + y2 = 1, iar C11 şi C 2
1 sunt respectiv prima şi
a doua coloană a matricei de câştiguri a jucătorului P1, notată C1. Concret,
vom avea:
Yymin∈
ϕ1(x, y) = min⎨x1 + 2x2 + 23 x3, 3x1 + 4x2 + 5x3⎬ =
= x1 + 2x2 + 23 x3 (x1, x2, x3 ≥ 0)
Cum X = ⎨(x1, x2, x3)⎪x1, x2, x3 ≥ 0, x1 + x2 + x3 = 1⎬ este un simplex
în ℝ3, vom găsi:
u* = Xx
max∈ Yy
min∈
ϕ1(x, y) = Xx
max∈
(x1 + 2x2 + 23 x3) = 2, care se atinge în
vârful (0,1,0) al lui X.
Cu un argument asemănător, folosind egalitatea ϕ2(x, y) = yC T2 xT,
unde C2 este matricea câştigurilor lui P2, vom obţine:
Xxmin∈
ϕ2(x, y) = min⎨2y1 + 8y2, 5y2, 6y1 + 3y2⎬.
243
Modele matematice în economie
Dar y2 = 1 – y1, deci vom calcula:
min⎨-6y1 + 8, -5y1 + 5, 3y1 + 3⎬ pentru y1 ∈ [0, 1].
Expresia acestuia este egală cu 3y1 + 3, dacă y1 ∈ [0, 41 ] şi egală cu
-5y1 + 5, dacă y1 ∈ [41 , 1]. În final, avem:
v* = Yy
max∈ Xx
min∈
ϕ2(x, y) = 3 ⋅ 41 + 3 =
415 .
Soluţia jocului cooperativ dat, în sensul lui Nash, va fi o pereche
( u , v ) din S, cu proprietatea ( u , v ) ≥ (2, 4
15 ) şi care maximizează expresia
(u – u*)(v – v*) pentru acele perechi (u, v) cu u ≥ 2 (în cazul în care există
(u, v) ∈ S cu u > u* şi v > v*). Ea va aparţine frontierei Pareto-optimale a
lui S.
Se demonstrează că punctul căutat (unic prin construcţie) are
proprietatea că dreapta tangentă la frontiera lui S, dusă prin el, are panta
(coeficientul unghiular) egală cu opusul pantei dreptei care uneşte (u*,v*)
cu ( u , v ). Evident, această tangentă trebuie să existe, drept pentru care
punctele W12, W22 şi W32 sunt tratate (eventual) separat.
Cum coeficientul unghiular al dreptei care uneşte (2, 4
15 ) cu un
(u, v) de pe frontieră este o mărime care variază continuu, analiza decurge
după cum urmează.
Panta dreptei care conţine segmentul [W32W22] (şi care joacă rolul
tangentei la frontiera lui S pentru punctele din interiorul său) este:
α1 = 5435
−− = -2.
244
Teoria jocurilor
Unind punctul (2, 4
15 ) cu (5, 3) se obţine o dreaptă cu panta egală
cu: 254
153
−
−= -
41 . Asemănător, dreapta care trece prin punctele (2,
415 ) şi
(4, 5) are panta egală cu 85 . Aşadar, făcându-l pe (u, v) să varieze în
interiorul lui [W32W22] obţinem o dreaptă cu panta β care parcurge
intervalul (-41 ,
85 ). Cum opusul lui α1 nu se găseşte în această plajă de
valori (2 ∉ (-41 ,
85 )), rezultă că ( u , v ) nu aparţine interiorului segmentului
menţionat.
Continuând analiza cu punctele din interiorul segmentului [W22W12],
constatăm că panta dreptei – suport a acestuia este α2 = 4358
−− = -3. Dacă
unim pe (2, 4
15 ) cu (3, 8) obţinem o dreaptă având panta egală cu 4
17 . Deci,
atunci când (u, v) variază între capetele W22 şi W12, dreapta care îl uneşte cu
(u*,v*) are panta β ∈ (85 ,
417 ).
În acest caz, - α2 = 3 ∈ (85 ,
417 ) şi rămâne să îl determinăm pe
( u , v ) ca un punct situat între W22 şi W12.
Dreapta care trece prin punctele (4, 5) şi (3, 8) are ecuaţia:
14u
35v
−−
=− ⇔ v = -3u + 17. Ea se va intersecta cu o dreaptă care
trece prin (2, 4
15 ), de pantă egală cu β2 = 3, în ( u , v ).
245
Modele matematice în economie
Rezultă sistemul de ecuaţii:
v - 4
15 = 3(u – 2)
v = - 3u + 17
de unde, prin eliminarea lui v, găsim 6u = 17 + 49 şi deci u =
2477 ≈ 3.208,
iar v = 3 ⋅ 2477 -
49 =
859 = 7.375.
Soluţia de tip Nash a jocului cooperativ considerat mai sus este
perechea de câştiguri ( u , v ) = (2477 ,
859 ).
La acest moment se cuvine a fi făcută o observaţie referitoare la
transferul câştigurilor. Astfel, din ecuaţia:
v = -3u + 17, rezultă că o unitate valorică cedată de P1 se transferă
în 3 unităţi valorice ale lui P2, deoarece avem:
-3(u – 1) + 17 = -3u + 17 + 3 = v + 3.
Putem vorbi deci de o rată de transfer a câştigurilor de la P1 către
P2, egală cu 3(3 la 1).
Să facem diferenţele între câştigul dat de soluţia Nash şi valoarea
maximin pentru fiecare jucător în parte:
2477 - 2 =
2429 ;
829
415
859
=−
Raportul lor (în ordinea P2 / P1) este 829 ÷
2429 = 3, deci coincide cu
rata de transfer. Aceasta ne arată că părţile de câştig obţinute prin cooperare,
în plus faţă de câştigul maximin, de către fiecare jucător, se situează într-o
proporţie egală cu rata de transfer în punctul ( u , v ).
246
Teoria jocurilor
Să nu pierdem din vedere faptul că scopul fiecărui jucător este ca să-
şi îmbunătăţească câştigul, inclusiv prin cooperare, dar neexcluzând
influenţele subiective. În acest context, putem observa că suma câştigurilor
Nash:
u + v ≈ 3.208 + 7.375 = 10.583,
este strict inferioară sumei 3 + 8 = 11 ce rezultă dacă cei doi jucători convin
să aplice strategiile A1 şi B2, respectiv. Diferenţa rezultată ar putea să fie
obiectul unui transfer de câştig în scopul amintit. Trebuie să acceptăm din
această cauză concluzia că soluţia Nash nu e cea mai bună?
Să observăm că în calculele de mai sus nu am ţinut seama de rata de
transfer, egală cu 3 pentru toţi (u, v) ∈ [W12, W22]. Acestea ar fi trebuit să
arate astfel (în unităţi ale lui P2):
3 × 3 + 1 × 8 = 9 + 8 = 17
3 × 3.208 + 1 × 7.375 = 9.624 + 7.375 = 16.999 ≈ 17.
În încheiere să menţionăm că există şi un alt mod de producere a
soluţiei jocului cooperativ, bazat pe aşa-numitele strategii de ameninţare.
Pentru lămuriri, îndrumăm cititorul către referinţele bibliografice date.
5. Jocuri de n persoane. Valoare Shapley
În cele ce urmează vom considera jocul de n persoane, în care notăm
cu N = ⎨1, 2, ..., n⎬ mulţimea tuturor jucătorilor şi presupunem permisă
cooperarea între aceştia.
Definiţia 1. Orice submulţime nevidă a lui N (inclusiv N şi toate
submulţimile formate dintr-un singur jucător) se numeşte coaliţie.
247
Modele matematice în economie
Definiţia 2: Se numeşte funcţie caracteristică a unui joc de n jucători
funcţia v, definită pe mulţimea părţilor lui N, care asociază fiecărei coaliţii
S ⊂ N valoarea maximin (corespunzătoare lui S) a jocului de două persoane
jucat între coaliţiile S şi N – S.
Deci notăm prin v(S) câştigul pe care jucătorii din S îl pot obţine în
joc (acţionând în cooperare), indiferent de ceea ce fac restul jucătorilor.
Prin definiţie vom considera:
v(Φ) = 0 (1)
Dacă S şi T sunt coaliţii disjuncte, unindu-şi forţele, ele pot realiza
un câştig cel puţin tot atât ca în cazul când acţionează separat. Acest lucru se
scrie astfel:
v(S ∪ T) ≥ v(S) + v(T), dacă S ∩ T = Φ (2)
şi înseamnă că funcţia caracteristică v are proprietatea de superaditivitate.
Dacă în jocul de două persoane elementul esenţial era studiul
strategiilor mixte, în jocul de n persoane acest element esenţial este
formarea de coaliţii. Funcţia caracteristică dă posibilităţile diferitelor coaliţii
şi este cea mai potrivită pentru studiul acestora.
Definiţia 3: Prin joc de n persoane în formă caracteristică se
înţelege o funcţie v cu valori reale definită pe submulţimile lui N şi care
satisface condiţiile (1) şi (2).
Prin definiţie, v(S) este valoarea maximin a jocului între S şi N - S.
Dacă presupunem că jocul este cu sumă constantă, adică suma câştigurilor
tuturor jucătorilor este constantă, indiferent de desfăşurarea jocului, atunci:
v(S) + v(N-S) = v(N).
v(N) este valoarea ce se poate obţine prin cooperare generală şi se mai
numeşte valoare totală.
248
Teoria jocurilor
Notăm cu v(⎨i⎬) valoarea pe care jucătorul i o poate obţine acţionând
independent. Evident jucătorul i va intra în coaliţia S dacă valoarea
câştigului este cel puţin v(⎨i⎬).
Definiţia 4: Într-un joc v de n persoane vectorul x = (x1, ..., xn), cu
condiţiile:
a) ∑∈Ni
ix = v(N) şi
b) xi ≥ v(⎨i⎬), (∀) i ∈ N, se numeşte imputaţie.
Evident, din a) şi b), rezultă că:
v(N) ≥ {})i(vNi∑∈
.
Definiţia 5: Un joc v se numeşte esenţial, dacă
v(N) > {})i(vNi∑∈
şi neesenţial în caz contrar.
Jocurile esenţiale sunt acelea ce prezintă interes.
Deoarece jocurile în forma caracteristică (definiţia 3) sunt funcţii cu
valori reale, are sens să vorbim despre suma a două sau mai multe jocuri.
Definiţia 6: Se numeşte suport al unui joc v o coaliţie T cu
proprietatea:
v(S) = v(S ∩ T) pentru orice coaliţie S.
Aceasta înseamnă că orice jucător care nu aparţine unui suport al
jocului este lipsit de importanţă, adică nu aduce nimic unei coaliţii.
Definiţia 7: Fie v un joc de n persoane şi π o permutare arbitrară a
mulţimii N. Prin πv înţelegem jocul obţinut din v în care s-au interschimbat
rolurile jucătorilor prin permutarea π.
249
Modele matematice în economie
Axiomele Shapley
Numim valoare a unui joc v de n persoane, vectorul
ϕ[v] = (ϕ1[v],..., ϕn[v]), unde ϕi[v] reprezintă partea care trebuie atribuită
jucătorului i, i = n,1 , din câştigul total v(N), cu proprietăţile:
a1) pentru orice suport S al lui v avem: ∑∈
=ϕSi
i )S(v]v[ ;
a2) pentru orice permutare π şi orice jucător i ∈ N, ϕπ(i)[πv] = ϕi[v];
a3) pentru oricare două jocuri u şi v avem: ϕ[u + v] = ϕ[u] + ϕ[v].
Aceste trei proprietăţi sunt axiomele lui Shapley şi ele sunt suficiente
pentru a determina o funcţie valoare ϕ, definită pentru toate jocurile. Dăm
fără demonstraţie următoarea:
Teoremă [16]
Există o funcţie unică ϕ, definită pentru toate jocurile, care satisface
axiomele a1, a2, a3 şi anume:
ϕi[v] = {}[ ]∑∈⊂
−−−−
TiNT
)iT(v)T(v!n
)!tn()!1t( (3)
unde t este numărul jucătorilor din coaliţia T.
Semnificaţia termenului v(T) – v(T - ⎨i⎬) este câştigul primit de
jucătorul i, sau valoarea cu care acest jucător contribuie la câştigul total al
coaliţiei T din care face parte.
Dacă vom presupune că termenul v(T) – v(T - ⎨i⎬) poate lua numai
valorile 0 sau 1, şi anume ia valoarea 1 dacă şi numai dacă T este o coaliţie
câştigătoare, dar T - ⎨i⎬ nu este câştigătoare, atunci jocul v este un joc
simplu, iar formula (3) se simplifică, astfel:
ϕi[v] = ∑∈⊂
−−
TiNT !n
)!tn()!1t( (4)
250
Teoria jocurilor
unde sumarea se face pentru toate coaliţiile câştigătoare T pentru care
T - ⎨i⎬ nu este câştigătoare.
Aplicaţie [16]
O societate pe acţiuni are 4 acţionari ce posedă respectiv 10, 20, 30
şi 40% din acţiuni. Toate deciziile privind activitatea societăţii se iau cu
majoritatea simplă (cel puţin 51% voturi, care sunt proporţionale cu numărul
de acţiuni posedate). Considerând această situaţie ca un joc simplu de 4
persoane se cere:
a) să se găsească toate coaliţiile câştigătoare;
b) să se scrie coaliţiile câştigătoare T pentru care T - ⎨1⎬ nu este
câştigătoare;
c) să se determine valoarea Shapley ϕ = (ϕ1, ϕ2, ϕ3, ϕ4), unde ϕi este
partea ce se atribuie jucătorului i, i = 4,1 , din câştigul total;
d) să se facă observaţii asupra rezultatului obţinut la punctul c).
Rezolvare
a) Coaliţiile câştigătoare sunt:
⎨2, 4⎬, ⎨3, 4⎬, ⎨1, 2, 3⎬, ⎨1, 2, 4⎬, ⎨1, 3, 4⎬, ⎨2, 3, 4⎬, ⎨1, 2, 3, 4⎬.
b) Dintre coaliţiile câştigătoare ce îl conţin pe primul acţionar
singura care devine necâştigătoare când este scos din coaliţie acesta este
coaliţia: ⎨1, 2, 3⎬, în care t (numărul acţionarilor) este egal cu 3.
c) Aplicând formula (4), unde t = 3, n = 4, i = 1, avem:
ϕ1 = 121
!4!1!2= .
Analog, coaliţiile câştigătoare, care îşi pierd această proprietate dacă
acţionarul 2 este înlăturat sunt:
⎨2, 4⎬, ⎨1, 2, 3⎬,⎨1, 2, 4⎬.
251
Modele matematice în economie
Formula (4) va da pentru ϕ2 suma a trei termeni, fiecare
corespunzând uneia din coaliţiile de mai sus.
Astfel pentru coaliţia ⎨2, 4⎬, t = 2, n = 4, i = 2, primul termen din (4)
va fi:
121
!4)!24()!12(=
−− .
Pentru ⎨1, 2, 3⎬, t = 3, n = 4, i = 2, obţinem:
121
!4)!34()!13(=
−− .
Iar pentru ⎨1, 2, 4⎬, t = 3, n = 4, i = 2, aceeaşi valoare ca mai sus,
adică 121 . Atunci:
ϕ2 = 41
121
121
121
=++ .
Procedând similar vom obţine:
ϕ3 = 41 şi ϕ4 =
125 .
Astfel valoarea Shapley este vectorul:
ϕ = (121 ,
41 ,
41 ,
125 ).
Observaţie: ϕ este o imputaţie deoarece satisface condiţiile
definiţiei 4.
d) Valoarea Shapley nu concordă cu vectorul voturilor dat de
(52,
103,
51,
101 ) ale cărui componente sunt proporţionale cu numărul
acţiunilor deţinute.
Astfel ϕ2 = ϕ3 deşi acţionarul 3 posedă mai multe acţiuni ca
acţionarul 2. Acţionarul 3 nu are posibilităţi mai mari decât acţionarul 2 de a
252
Teoria jocurilor
participa la o coaliţie câştigătoare. Importanţa acţionarului 4 este mai mare
decât cea corespunzătoare procentului acţiunilor sale, iar a jucătorului 1 este
mai mică decât cea corespunzătoare acţiunilor sale.
Dacă acţionarii ar deţine respectiv 10, 30, 30, 30% din acţiuni,
oricare doi dintre acţionarii 2, 3, 4 pot forma coaliţii câştigătoare în timp ce
acţionarul 1 este lipsit de orice importanţă neputând aduce nimic nici unei
coaliţii. Atunci valoarea jocului este vectorul:
ϕ = (0, 31,
31,
31 ).
6. Probleme
1. Să se stabilească valoarea jocului şi strategiile pure optime pentru
jocul:
BA B1 B2 B3 B4 αi
A1 A2 A3
-4 8 -1
4 6 0
2 5 1
11 7 -4
-4 5 -4
βj 8 6 5 11
Rezolvare
Luând αi = 4j1
min≤≤
aij, i = 3,1 , βj = 3i1
max≤≤
aij, j = 4,1 , completăm
coloanele αi, respectiv βj. Şi deoarece α = 3i1
max≤≤αi = 5 = α2, iar β =
4j1min
≤≤βj =
= 5 = β3 rezultă că jocul are punct şa, iar strategiile pure optime ale celor doi
jucători sunt respectiv A2 şi B3, iar valoarea jocului v = a23 = 5.
253
Modele matematice în economie
2. Să se rezolve jocul de ordinul 2 × 2 cu matricea:
A = ⎟⎟⎠
⎞⎜⎜⎝
⎛−0611
, pe cale matriceală.
Rezolvare
Jocul nu are punct şa deoarece 6 şi 1 nu sunt minime pe liniile lor.
Vom folosi relaţiile (9) de la 2.3.a. Cum ⎪A⎪ = -6 ≠ 0 şi:
A* = ⎟⎟⎠
⎞⎜⎜⎝
⎛−−−
1610
, JA* = (1, 1) ⎟⎟⎠
⎞⎜⎜⎝
⎛−−−
1610
= (-6, -2);
A*JT = ⎟⎟⎠
⎞⎜⎜⎝
⎛−−−
1610
⎟⎟⎠
⎞⎜⎜⎝
⎛−−
=⎟⎟⎠
⎞⎜⎜⎝
⎛71
11
, JA*JT = (-6, -2) ⎟⎟⎠
⎞⎜⎜⎝
⎛11
= -8
rezultă că:
x = ⎟⎠⎞
⎜⎝⎛=−−−=
41,
43)2,6(
81
J*JA*JA
T
yT = ⎟⎟⎠
⎞⎜⎜⎝
⎛=⎟⎟
⎠
⎞⎜⎜⎝
⎛−−
−=8/78/1
71
81
J*JAJ*A
T
T
, de unde y = (81 ,
87 )
v = 43
86
J*JA|A|
T =−−
= .
3. Să se rezolve pe cale grafică jocul a cărui matrice este:
⎟⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜⎜
⎝
⎛
−−
−
2251431526
254
Teoria jocurilor
Rezolvare
Observăm că linia a cincea este dominată de linia a treia, deci vom
renunţa la linia a cincea şi jocul va fi de forma 4 × 2,
A =
⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜
⎝
⎛
−
−
51431526
.
Strategiile jucătorului P2 verifică relaţiile:
6y1 – 2y2 ≤ v
5y1 + y2 ≤ v
3y1 + 4y2 ≤ v
-y1 + 5y2 ≤ v
y1 + y2 = 1
Punând y1 = 1 – y2 în primele 4 inegalităţi, acestea devin:
6 – 8y2 ≤ v
5 – 4y2 ≤ v
y2 + 3 ≤ v
6y2 – 1 ≤ v
şi sunt reprezentate grafic mai jos: v
6
5 5
M 4
3
(d2)
1 y2
-1
-2
(d4)
(d3)
(d1)
255
Modele matematice în economie
unde am asociat fiecărei inegalităţi (i), dreapta di, i = 4,1 , ce împarte
semiplanele determinate de inegalitatea (i). Porţiunea din plan cuprinsă între
y2 = 0 şi y2 = 1 (y2 este o probabilitate), şi dedesubtul liniei frânte îngroşate
conţine mulţimea punctelor (y2, v) ce verifică cele 4 inegalităţi. Linia
îngroşată conţine punctele cu cea mai mare valoare a lui v, iar dintre acestea
punctul cu cea mai mică valoare dintre cele de pe linia frântă este
M = d2 ∩ d3 şi deci va avea coordonatele date de soluţia sistemului:
5 – 4y2 = v
y2 + 3 = v
de unde y2 = 52 , y1 =
53 iar v = 3, 4, deci y2 şi v satisfac restricţiile 2 şi 3 cu
egalităţi. Teorema ecarturilor ne spune că atunci componentele x2 şi x3 din
problema duală vor fi pozitive.
Deci strategia lui P2 este y = (53 ,
52 ).
Soluţia optimă a jucătorului P1 verifică relaţiile:
6x1 + 5x2 + 3x3 – x4 ≥ v
-2x1 + x2 + 4x3 + 5x4 ≥ v
x1 + x2 + x3 + x4 = 1
în care x2, x3 > 0 iar x1 = x4 = 0. Atunci eliminând prima şi a patra linie din
A va rezulta un joc redus cu matricea:
A1 = ⎟⎟⎠
⎞⎜⎜⎝
⎛4315
.
Determinarea strategiei lui P1 o vom face cu ajutorul formulelor (9)
din 2.3.a, unde:
⎪A1⎪ = 17; A *1 = ⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−5314
; JA *1 = (1,1) ⎟⎟
⎠
⎞⎜⎜⎝
⎛−
−5314
= (1, 4);
256
Teoria jocurilor
JA *1 JT = (1, 4) ⎟⎟
⎠
⎞⎜⎜⎝
⎛11
= 5 deci:
x = 51
JJAJA
T*1
*1 = (1, 4) = (
51 ,
54 ), deci x2 =
51 , x3 =
54 şi strategia lui
P1 este x = (0, 51 ,
54 , 0).
4. Să se determine prin metodele cunoscute valoarea jocului şi
strategiile jucătorilor pentru cazul în care matricea plăţilor este:
⎟⎟⎟⎟⎟
⎠
⎞
⎜⎜⎜⎜⎜
⎝
⎛
−
−−
3211113254311204
.
Rezolvare
Aplicând principiul strategiilor dominate observăm că linia a doua
are elementele respectiv mai mari ca linia a patra, deci o vom şterge pe
aceasta din urmă. Coloana a treia domină coloana a patra, care va fi ştearsă
şi matricea jocului se va restrânge la:
A = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛ −
132431204
.
Cercetăm dacă jocul este cu punct şa, adăugând matricei A coloana
αi (a celor mai mici elemente pe linie) şi linia βj (a celor mai mari elemente
pe coloană).
257
Modele matematice în economie
Obţinem:
B1 B2 B3 αi A1 A2 A3
4 1 2
0 3 3
-2 4 1
-2 1 1
βj 4 3 4
de unde α = maxαi = 1, β = minβj = 3, deci α ≠ β, jocul nu are punct şa, iar
valoarea jocului v ∈ (1, 3).
a) Rezolvăm întâi problema pe cale matriceală, folosind formulele
(9’) din observaţia dată în paragraful 2.3.a.
⎪A⎪ = -30;
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
−−−
−−=∗
121231887669
A
( ) ( ) 15JJA;3,3,9JA;0,10,5JA TT −=−−−=−−= ∗∗∗
( ) ⎟⎠⎞
⎜⎝⎛=−−−== ∗
∗
0,32,
310,10;5
151
JJAJAx T
( ) ⎟⎠⎞
⎜⎝⎛=−−−−== ∗
∗∗
51,
51,
533,3,9
151
JJAJAJ T
21530
JJAA
v T =−−
== ∗
Aplicăm procedeul din observaţia mai sus citată şi verificăm criteriul
lui Neumann, astfel:
( ) J22,2,2132431204
0,32,
31Ax ==
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛ −⋅⎟⎠⎞
⎜⎝⎛=
258
Teoria jocurilor
TTJ2
222
5/15/15/3
132431204
yA =⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛=
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛⋅⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛ −=
Deci x şi y sunt o soluţie a jocului cu 2v = .
b) Rezolvăm problema prin programare liniară. Modelul matematic
al jocului scris din punctul de vedere al celui de al doilea jucător cu strategia
( )321 y,y,yy = , va fi:
[ ] .3,1j,1,0y;1yyy
vyy3y2vy4y3yvy2y4
j321
321
321
31
=∈=++
≤++≤++≤−
Cum ( )3,1v∈ deci este pozitiv, împărţim relaţiile de mai sus prin v
şi notăm:
3,1j,vy
Y jj ==
Deoarece P2 urmăreşte să facă minim v, atunci va dori să facă maxim
v1 şi obţinem:
[max]g = v1 = Y1 + Y2 + Y3
3,1j,0Y
1YY3Y21Y4Y3Y1Y2Y4
j
321
321
31
=≥
≤++≤++≤−
Aducem problema la forma standard şi aplicăm algoritmul simplex.
259
Modele matematice în economie
6,1j,0Y
1YYY3Y21YY4Y3Y1YY2Y4
j
6321
5321
431
=≥
=+++=+++=+−
( )654321 YYY0YYYv1g[max] +++++== .
1 1 1 0 0 0 B CB YB a1 a2 a3 a4 a5 a6
θ
a4 0 1 4 ↓ 0 -2 1 0 0 a5 0 1 1 3 4 0 1 0 a6 0 1 2 3 1 0 0 1
gj 0 0 0 0 0 0 0 0 ∆j=cj-gj 1 1 1 0 0 0
a1 1 1/4 1 0 -1/2↓ 1/4 0 0 - a5 0 3/4 0 3 9/2 -1/4 1 0 1/6 a6 0 2/4 0 3 2 -1/2 0 1 1/4
gj 1/4 1 0 -1/2 1/4 0 0 ∆j=cj-gj 0 1 3/2 -1/4 0 0
a1 1 1/3 1 1/3 0 2/9 1/9 0 a3 1 1/6 0 2/3 1 -1/18 2/9 0 a6 0 1/6 0 5/3 0 -7/18 0 1
gj 1/2 1 1 1 1/6 1/3 0 ∆j=cj-gj 0 0 0 -1/6 -1/3 0
Am ajuns la soluţia optimă care va fi:
2vundede,21
v1gmax === .
;323/12Yvyundede6/1Y,3/1Y 1131 =⋅====
⎟⎠⎞
⎜⎝⎛=
=⋅==
31,0,
32y
:fivaPluistrategiadeci,3/16/12Yvy 233
260
Teoria jocurilor
.0,32,
31xşi0x;
32x;
31
612vXx
:undede0X,31X,
61X
3211
321
⎟⎠⎞
⎜⎝⎛======
===
Observaţie: Prin metoda b) strategia lui P1 este aceeaşi cu cea din a),
dar strategia lui P2 diferă. Acest lucru a apărut deoarece în rezolvarea prin simplex a problemei, în etapa de optim ∆2 = 0 deşi a2 ∉ B. În acest caz problema are o infinitate de soluţii. Să mai găsim una continuând simplexul cu încă o iteraţie prin introducerea în bază a lui a2 şi eliminarea lui a6.
a1 1 3/10 1 0 0 3/10 1/9 -1/5 a3 1 1/10 0 0 1 1/10 2/9 -2/5 a2 1 1/10 0 1 0 -7/10 0 3/5
gj 1/2 1 1 1 1/6 1/3 0 ∆j=cj-gj 0 0 0 -1/6 -1/3 0
Obţinem aceeaşi valoare v = 2 şi ⎟⎠⎞
⎜⎝⎛= 0,
32,
31x .
Dar ,101Y,
101Y,
103Y 321 === ce conduce la:
,51y,
51y,
53y 321 === adică ⎟
⎠⎞
⎜⎝⎛=
51,
51,
53y soluţie găsită şi prin
metoda a).
Dar dacă o problemă de programare liniară are două soluţii optime:
⎟⎠⎞
⎜⎝⎛=′′⎟
⎠⎞
⎜⎝⎛=′
51,
51,
53yşi
31,0,
32y ea va avea o infinitate de soluţii optime, date
de combinaţia liniară convexă de y' şi y''. Deci P2 are o infinitate de strategii
date de:
( ) ( )
.10,15
23,5
1,15
951,
51,
531
31,0,
32y1yy
≤λ≤⎟⎠⎞
⎜⎝⎛ λ+λ−λ+
=
=⎟⎠⎞
⎜⎝⎛λ−+⎟
⎠⎞
⎜⎝⎛λ=′′λ−+′λ=
261
Modele matematice în economie
Observaţie: Dacă la metoda matriceală de la punctul a) am fi aplicat
procedeul dat în paragraful 2.3.a, am fi găsit şi altă soluţie pentru jocul
considerat şi orice combinaţie liniară convexă de soluţiile găsite ar fi fost tot
o soluţie a jocului, de unde infinitatea de soluţii dată de algoritmul simplex.
5. Să se rezolve jocul G = (A, B, f) în care matricea plăţilor A este:
B A B1 B2 B3 B4
A1 A2 A3
3 6 2
-1 8 5
0 3 1
7 5 3
Rezolvare
Determinăm valoarea inferioară şi valoarea superioară ale jocului:
αi = 4j1
min≤≤
aij şi Gv = 3i1
max≤≤αi = α
βj = 3i1
max≤≤
aij şi Gv = 4j1
min≤≤βj = β
Avem:
B A B1 B2 B3 B4 αi
A1 A2 A3
3 6 2
-1 8 5
0 3 1
7 5 3
-1 3 1
βj 6 8 3 7
α1 = min⎨3, -1, 0,7⎬ = -1
α2 = min⎨6, 8, 3,5⎬ = 3
α3 = min⎨2, 5, 1,3⎬ = 1
de unde α = max⎨-1, 3, 1⎬ = 3 = Gv .
β1 = max⎨3, 6, 2⎬ = 6; β2 = max⎨-1, 8, 5⎬ = 8;
262
Teoria jocurilor
β3 = max⎨0, 3, 1⎬ = 3; β4 = max⎨7, 5, 3⎬ = 7;
β = min⎨6, 8, 3, 7⎬ = 3 = Gv .
Cum vG = Gv = 3, rezultă că jocul are punct şa şi P1 va alege numai
strategia A2 iar P2 numai B3, indiferent de numărul partidelor ce se joacă.
6. Să se rezolve jocul matriceal G = (A, B, f) asociat unei situaţii de
concurenţă a două firme, dacă s-a stabilit că matricea jocului este:
B A B1 B2 B3
A1 A2 A3
0 -2 1
-5 2 -1
2 -1 1
Rezolvare
Determinăm vG şi Gv pentru a vedea dacă jocul are punct şa. Avem:
B A B1 B2 B3 αi
A1 A2 A3
0 -2 1
-5 2 -1
2 -1 1
-5 -2 -1
βj 1 2 2
vG = maxαi = max⎨-5, -2, -1⎬ = -1
Gv = minβj = min⎨1, 2, 2⎬ = 1
Din vG ≠ Gv rezultă că jocul nu are punct şa şi valoarea lui
v ∈ (-1, 1).
Căutăm strategiile mixte x = (x1, x2, x3) pentru P1 şi y = (y1, y2, y3)
pentru P2, prin intermediul programării liniare.
Mai întâi transformăm elementele matricei A, pentru a avea v > 0.
263
Modele matematice în economie
E suficient să adunăm 2 la elementele matricei iniţiale şi avem:
⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛ −=
313140432
A = (aij + 2).
Jocul corespunzător matricei A va avea aceleaşi strategii mixte
optime ca jocul iniţial, doar valoarea jocului este v = v + 2, adică cu 2 mai
mare decât valoarea jocului iniţial.
Pentru P2 problema de programare liniară ce trebuie rezolvată va fi:
2y1 – 3y2 + 4y3 ≤ v
4y2 + y3 ≤ v
3y1 + y2 + 3y3 ≤ v
y1 + y2 + y3 = 1
yj ≥ 0, j = 3,1
Cu v > 0, Yj = v
y j şi v1 = [max]g, avem:
[max]g = v1 = Y1 + Y2 + Y3
2Y1 – 3Y2 + 4Y3 + Y4 = 1
4Y2 + Y3 + Y5 = 1
3Y1 + Y2 + 3Y3 + Y6 = 1
Yj ≥ 0, j = 6,1 .
Rezolvăm problema aplicând algoritmul simplex.
264
Teoria jocurilor
1 1 1 0 0 0 B CB YB a1 a2 a3 a4 a5 a6 θ
a4 0 1 2 -3 ↓ 4 1 0 0 - a5 0 1 0 4 1 0 1 0 1/4 a6 0 1 3 1 3 0 0 1 1/3
gj 0 0 0 0 0 0 0 ∆j=cj-gj 1 1 1 0 0 0
a4 0 7/4 4 ↓ 0 19/4 1 3/4 0 7/16 a2 1 1/4 0 1 1/4 0 1/4 0 - a6 0 3/4 3 0 11/4 0 -1/4 1 3/12
gj 1/4 0 1 1/4 0 1/4 0 ∆j=cj-gj 1 0 3/4 0 -1/4 0
a4 0 3/4 0 0 13/12 1 13/12 -4/3 a2 1 1/4 0 1 1/4 0 1/4 0 a1 1 1/4 1 0 11/12 0 -1/2 1/3
gj 1/2 1 1 7/6 0 1/6 1/3 ∆j=cj-gj 0 0 -1/6 0 -1/6 -1/3
Am ajuns la soluţia optimă care este:
[max]g = v1 =
21 , de unde v = 2
Y1 = vy1 =
41 , de unde y1 = 2
41 =
21 ; Y2 =
41 , de unde y2 =
21 ,
y3 = 0;
X2 = 61 =
vx1 , de unde x2 = 2
61 =
31 ; X3 =
31 , de unde x3 =
32 ;x1 = 0
deci: x = (0, 31 ,
32 ), y = (
21 ,
21 ,0) iar v = v - 2 = 2 – 2 = 0.
Echilibrul realizat se manifestă aici prin anularea câştigului fiecărui
participant.
7. O familie se aprovizionează pentru iarnă cu cărbune de un anumit
tip. Cantitatea necesară şi condiţiile de aprovizionare sunt date în următorul
tabel [10]:
265
Modele matematice în economie
Iarna Cantitatea necesară în tone
Preţ unitar u.m./t
Uşoară Obişnuită
Grea
4 5 6
70 75 80
Dacă aprovizionarea se face vara, preţul unitar este de 60 u.m./t.
Se cere:
a) să se scrie matricea plăţilor ştiind că aprovizionarea se face în
timpul verii;
b) să se decidă strategia prin criteriul maximin;
c) să se decidă strategia prin criteriul minimax;
d) să se decidă strategia prin criteriul Savage;
e) să se decidă strategia când stările iernii sunt egal probabile;
alternativ, când probabilităţile sunt respectiv 0,2; 0,5 şi 0,3;
f) pentru α = 0,75 să se determine strategia optimă prin criteriul
Hurwicz.
Rezolvare
a) Matricea asociată jocului generat de problema dată va fi:
Strategia iernii
Cantitatea contractată
uşoarăS1:4t
obişnuită S2:5t
grea S3:6t
A1:4t A2:5t A3:6t
-240 -300 -360
-315 -300 -360
-400 -380 -360
unde, de exemplu, elementul de pe linia lui A2 şi coloana lui S3 s-a calculat
astfel: s-au cumpărat 5t a câte 60 u.m. pentru care s-au plătit 300 u.m.; iarna
266
Teoria jocurilor
fiind grea, mai este nevoie de o tonă ce se cumpără iarna cu preţul de 80
u.m., deci în total cheltuielile vor fi de 380 sau în matricea câştigurilor lui P1
vom scrie -380.
b) În aplicarea criteriului maximin se alege minimul elementelor de
pe fiecare linie şi dintre acestea se determină maximul, astfel:
A1 A2 A3
-400 -380 -360
Cel mai mare este -360 şi indică alegerea strategiei A3.
c) Criteriul minimax recomandă alegerea elementului maxim de pe
fiecare linie şi apoi determinarea celui mai mic dintre acestea.
A1 A2 A3
-240 -300 -360
Cel mai mic este -360 şi corespunde strategiei A3.
d) Formăm matricea R a regretelor din A scăzând din cel mai mare
element al unei coloane toate elementele coloanei respective. Obţinem:
R = ⎟⎟⎟
⎠
⎞
⎜⎜⎜
⎝
⎛
0601202006040150
.
Determinăm apoi în R cel mai mare element pe fiecare linie şi apoi
cel mai mic dintre acestea. Obţinem:
A1 A2 A3
40 60 120
Cel mai mic este 60 şi recomandă strategia A2.
267
Modele matematice în economie
e) În ipoteza că stările Si, i = 3,1 , sunt egal probabile, vom calcula
cheltuielile medii pentru fiecare strategie Ai, i = 3,1 . Astfel:
ϕ(1, y) = 31 (-240) +
31 (-315) +
31 (-400) = -
3955
ϕ(2, y) = - 3
980 şi ϕ(3, y) = - 3
1080 .
Cea mai mare dintre aceste sume este ϕ(1, y) şi recomandă A1. Dacă
stările nu sunt egal probabile ci au respectiv probabilităţile: 0,2; 0,5; 0,3,
cheltuielile medii vor fi:
ϕ(1, y) = 0,2(-240) + 0,5(-315) + 0,3(-400) = -325, 5
ϕ(2, y) = 0,2(-300) + 0,5(-300) + 0,3(-380) = -324
ϕ(3, y) = 0,2(-360) + 0,5(-360) + 0,3(-360) = -360
şi cea mai mică cheltuială este ϕ(2, y) şi recomandă A2.
f) Ataşăm matricei iniţiale A coloanele elementelor mi = 3j1
min≤≤
aij şi
Mi = 3j1
max≤≤
aij, apoi coloana elementelor αMi + (1 - α)mi, astfel:
Si Ai
S1 S2 S3 mi Mi αMi+(1-α)mi
A1 A2 A3
-240 -300 -360
-315 -300 -360
-400 -380 -360
-400 -380 -360
-240 -300 -360
160α-400 80α-380
-360
Pentru α = 0,75, corespunzător lui A1, obţinem pe ultima coloană
160 ⋅ 0,75 – 400 = - 280; pentru A2, 80 ⋅ 0,75 – 380 = -320 şi pentru A3,
- 360. Cea mai mică cheltuială este pentru A1.
268
Teoria jocurilor
8. Să se elimine strategiile dominate şi să se cerceteze existenţa
punctelor de echilibru Nash (în strategii pure) pentru următorul joc
bimatriceal.
P2 P1
B1 B2 B3 B4
A1 A2 A3 A4
(5,4) (2,7) (6,8) (3,2)
(3,1) (3,4) (1,3) (4,7)
(9,0) (1,3) (0,2) (2,4)
(4,2) (0,1) (3,5) (2,6)
Rezolvare
Se observă mai întâi că strategia A4 a jucătorului P1 domină strict
strategia A2 (oricare ar fi strategia de răspuns Bj a lui P2, avem a4j > a2j).
După eliminarea lui A2, care nu afectează punctele de echilibru, observăm
că strategia B4 a lui P2 domină strict pe B3 (deoarece 2 > 0, 5 > 2 şi 6 > 4).
După ce B3 este suprimată şi ea, obţinem un tabel restrâns.
B1 B2 B4 A1 A3 A4
(5,4) (6,8) (3,2)
(3,1) (1,3) (4,7)
(4,2) (3,5) (2,6)
În această fază nu vom mai găsi strategii dominate. Urmând
procedura de determinare a răspunsurilor optime, pe linii şi pe coloane, vom
obţine marcările de mai jos:
B1 B2 B4 A1 A3 A4
(5,4) (6,8) (3,2)
(3,1) (1,3) (4,7)
(4,2) (3,5) (2,6)
Cum singurele perechi de câştiguri cu două sublinieri sunt (6,8) şi
(4,7), rezultă că (A3, B1) şi (A4, B2) sunt puncte de echilibru ale jocului (în
strategii pure). Observând câştigurile corespunzătoare, se poate spune că
269
Modele matematice în economie
(A3, B1) este preferabil lui (A4, B2) pentru ambii jucători şi deci poate
constitui soluţia jocului.
9. Să se construiască un joc bimatriceal care să admită un punct de
echilibru format din strategii pure de tip maximin.
Rezolvare
Fie jocul cu sumă arbitrară dat prin matricea:
B1 B2 A1 A2
(4,5) (2,6)
(3,4) (5,7)
Se observă, fără dificultate, că (A1, B1) şi (A2, B2) sunt puncte de
echilibru Nash al jocului. În acelaşi timp, avem valorile maximin:
2,1imax= 2,1j
min=
aij = max⎨min⎪⎨4,3⎬, min⎨2,5⎬⎬ = max⎨3,2⎬ = 3
2,1imax= 2,1j
min=
bij = max⎨min⎪⎨5,6⎬, min⎨4,7⎬⎬ = max⎨5,4⎬ = 5
Deci A1 e strategia maximin a lui P1 şi B1 e strategia maximin a lui
P2. Se confirmă, pe de altă parte, faptul că orice punct de echilibru îi promite
fiecărui jucător un câştig mai mare sau egal cu valoarea maximin
corespunzătoare lui a jocului.
10. Să se arate că jocul în formă normală de mai jos nu admite
puncte de echilibru Nash în strategii mixte:
B1 B2 B3 A1 A2
(1,0) (0,3)
(1,2) (0,1)
(0,1) (2,0)
270
Teoria jocurilor
Rezolvare
Fie (p, q, 1 – p – q) o strategie mixtă pe B = ⎨B1, B2, B3⎬.
Avem deci p, q ≥ 0 şi p + q ≤ 1. Căutăm răspunsul optim al lui P1 la
această strategie a lui P2. Dacă P1 foloseşte strategia A1 atunci îi revine un câştig mediu egal cu p + q, iar dacă foloseşte strategia A2, câştigul mediu
este 2(1 – p – q). Comparându-le, se deduce imediat că dacă p + q ∈ [0, 2/3)
cel mai bun răspuns este A2 în timp ce pentru p + q ∈ (2/3, 1], cel mai bun răspuns este A1.
Cazul p + q = 32 nu face deosebire între A1 şi A2 ca replici optime
ale lui P1. Dacă vom considera o strategie mixtă (r, 1 – r) pe A = ⎨A1, A2⎬,
0 ≤ r ≤ 1, câştigurile medii ale lui P2 vor fi egale cu 3 – 3r, r + 1 sau r, după
cum foloseşte strategiile pure B1, B2 sau B3, respectiv. Din inegalităţile
3 – 3r > r + 1 > r reiese că răspunsul optim al lui P2 este B1, pentru
r < 21 şi B2, pentru r >
21 . În cazul r =
21 , se reţin ca cel mai bun răspuns
oricare dintre strategiile B1 sau B2. Să presupunem că punctele de echilibru ale jocului sunt de forma
((r*, 1 – r*), (p*, q*, 1 – p* - q*)). Vom analiza situaţiile posibile pentru r*:
I. Dacă r* ∈ [0, 21 ), răspunsul optim al lui P2 este B1, căruia i-ar
corespunde ca strategie mixtă valorile p* = 1, q* = 0, ceea ce
înseamnă că p* + q* = 1 > 32 şi, în replică, am avea strategia
optimă A1 a lui P1. Cum A1 poate fi identificată cu strategia mixtă (1, 0), rezultă r* = 1, contrazicând ipoteza iniţială;
271
Modele matematice în economie
II. În cazul r* = 21 , orice strategie mixtă a lui P2 de forma
(λ, 1-λ, 0), 0 ≤ λ ≤ 1 este un răspuns optim. Discuţia continuă ca
mai înainte şi se ajunge la concluzia r* = 1 ≠ 21 ;
III. Dacă r* ∈ (21 , 1), replica cea mai bună a lui P2 este B2; ei îi
corespund valorile p* = 0, q* = 1 şi cum p* + q* > 32 , răspunsul
optim al lui P1 e din nou A1. Obţinem, ca mai sus, r*= 1∉(21 ,1);
IV. Ultima posibilitate, r* = 1 ne conduce la o strategie de răspuns cu p* = 0, q* = 1 şi, de această dată, cu răspunsul în oglindă al lui P1, lanţul deducţiilor se închide. Am obţinut astfel un punct de echilibru în strategii pure, ((1,0), (0,1,0)), fapt ce clarifică cerinţa problemei vis-à-vis de teorema lui Nash. Să mai observăm că, deoarece strategia B3 este strict dominată, componenta corespunzătoare ei într-o strategie optimă a lui P2 nu putea fi decât nulă.
11. ([12]) Două firme cu profile asemănătoare de activitate oferă fiecare câte un loc de muncă. Să presupunem că se plătesc salarii diferite:
firma i plăteşte salariul si, unde (1/2) s1 < s2 < 2s1. Să presupunem că există doi lucrători ce doresc să se angajeze, dar fiecare nu poate opta decât pentru o singură firmă, acest lucru făcându-se simultan. Dacă numai câte un singur lucrător îşi oferă serviciile unei firme, el este angajat.
Dacă ambii lucrători optează pentru aceeaşi firmă, aceasta angajează pe unul dintre ei, la întâmplare, iar celălalt rămâne, pe mai departe, fără serviciu (şi cu o plată presupusă nulă). Să se găsească soluţia în strategii de echilibru Nash a acestui joc.
272
Teoria jocurilor
Rezolvare Vom construi pentru început forma normală a jocului descris.
Jucătorii sunt cei doi lucrători, strategiile lor constând din opţiunile pe care le fac pentru firma 1 sau firma 2 şi pe care le notăm cu A1, A2, respectiv B1,
B2. Vom nota, ca de obicei, cu f1(⋅,⋅) şi f2(⋅,⋅) respectiv, funcţiile de câştig ale jucătorilor. Considerând utilităţile imediate ale celor doi lucrători, rezultate în urma alegerilor făcute, putem construi următoarea matrice de plăţi (în ipoteza şanselor egale):
B1 B2 A1
A2
(21 s1,
21 s1)
(s2,s1)
(s1,s2)
(21 s2,
21 s2)
Ţinând seama de ipotezele 21 s1 < s2 şi
21 s2 < s1, vom putea scrie:
f1(A1, B2) = s1 > 21 s2 = f1(A2, B2)
f2(A1, B2) = s2 > 21 s1 = f2(A1, B1)
de unde rezultă că (A1, B2) este punct de echilibru Nash.
Asemănător, obţinem relaţiile:
f1(A2, B1) = s2 > 21 s1 = f1(A1, B1)
f2(A2, B1) = s1 > 21 s2 = f2(A2, B2)
ceea ce arată că şi (A2, B1) este un punct de echilibru Nash.
Faptul că fiecare lucrător este angajat dacă se optează pentru una sau
cealaltă dintre perechile de strategii discutate vine în acord cu ideea de
echilibru, chiar dacă unul dintre jucători poate să nu fie mulţumit pe deplin
cu salariul pe care îl obţine.
273
Modele matematice în economie
Dacă fiecare jucător ţine la şansa sa de a fi angajat şi de a primi un
salariu mai bun, atunci are sens considerarea strategiilor mixte.
Fie (y, 1-y) o strategie mixtă a lui P2. Atunci câştigul mediu al lui P1
va fi dat de:
21 ys1 + (1 – y)s1 = s1 -
21 ys1, sau
ys2 + 21 (1 – y) s2 =
21 s2 +
21 ys2, după cum foloseşte strategia pură
A1 sau A2.
Din inegalitatea s1 - 21 ys1 >
21 s2 +
21 ys2, rezultă că pentru
y ∈ ⎢⎣
⎡⎟⎟⎠
⎞+−
21
21
ssss2,0 cel mai bun răspuns al lui P1 la strategia mixtă a lui P2 este
A1, iar pentru y ∈ ]⎜⎜⎝
⎛+− 1,ssss2
21
21 , acesta este A2 (să observăm că s1 < 2s2 e
echivalent cu 2s1 – s2 < s1 + s2).
O analiză similară se face pornind de la o strategie mixtă (x, 1 – x)
pe ⎨A1, A2⎬. Urmând procedeul de rezolvare descris în soluţia la problema
10, vom obţine următorul punct de echilibru Nash în strategii mixte:
⎟⎟⎠
⎞⎜⎜⎝
⎛⎟⎟⎠
⎞⎜⎜⎝
⎛+−
+−
⎟⎟⎠
⎞⎜⎜⎝
⎛+−
+−
21
12
21
21
21
12
21
21
ssss2,
ssss2,
ssss2,
ssss2 .
Desigur că în acest exemplu de joc nu se pune problema repetării
sale de un număr de ori care să permită alternarea strategiilor.
Metoda de decizie pentru oricare jucător este să folosească un
generator de numere aleatoare (de tipul funcţiei RND a unui calculator de
buzunar); dacă valoarea generată se găseşte în intervalul (0, 21
21
ssss2
+− ),
atunci el va alege strategia A1(B1), altfel va juca A2(B2).
274
BIBLIOGRAFIE
1. ALLEN, R.G.D. Analiză matematică pentru economişti, Bucureşti, Editura Ştiinţifică, 1971
2. BAZ, D., COZMA, C., POPESCU, O.
Matematici aplicate în economie, Bucureşti, Lito ASE, 1981
3. BAZ, D., BUTESCU, V., STREMŢAN, N.
Matematici aplicate în economie, (Vol. I, II), Bucureşti, Universitatea „Dimitrie Cantemir”, 1997
4. BERGE, C. Teoria grafurilor şi aplicaţiile ei, Bucureşti, Editura Tehnică, 1969
5. BOLDUR – LĂŢESCU, G., SĂCUIU, I., ŢIGĂNESCU, E.
Cercetare operaţională cu aplicaţii în economie, Bucureşti, Editura Didactică şi Pedagogică, 1979
6. BURLACU, V., SĂCUIU, I.
Matematici speciale aplicate în economie, (Vol. II), Bucureşti, Lito ASE, 1983
7. CENUŞĂ, GH., RAISCHI, C., BAZ, D. ş.a.
Matematici pentru economişti, Bucureşti, Editura Cison, 2000
8. CENUŞĂ, GH., FILIP, A., BAZ, S. ş.a.
Matematici pentru economişti. Culegere de probleme, Bucureşti, Editura Cison, 2000
9. CIUCU, G., IOSIFESCU, M. ş.a.
Teoria jocurilor, Bucureşti, Editura Tehnică, 1965
10. DANI, E. Metode numerice în teoria jocurilor, Cluj – Napoca, Editura Dacia, 1983
275
11. DANTZIG, G.B. Linear Programming and Extension, New York, Princeton University Press, 1963
12. GIBBONS, R. A Primer in Game Theory, New York, London, Harvester Wheatsheaf, 1992
13. HILLIER, F., LIEBERMAN, G.
Introduction to Operations Research, Mc.Graw & Hill, 1993
14. KAUFMANN, A. Metode şi modele ale cercetării operaţionale, (Vol. I, II), Bucureşti, Editura Ştiinţifică, 1967
15. KAUFMANN, A., DESBAZEILLE, G.
Metoda drumului critic, Bucureşti, Editura Tehnică, 1971
16. OWEN, G. Teoria jocurilor, Bucureşti, Editura Tehnică, 1974
17. POPESCU, O., BAZ, D., BEGANU, G. ş.a.
Matematici aplicate în economie, Bucureşti, Editura Didactică şi Pedagogică, 1993
18. POPESCU, O., BAZ, D., BEGANU, G. ş.a.
Matematici aplicate în economie. Culegere de probleme, Bucureşti, Editura Didactică şi Pedagogică, 1996
19. SHAPLEY, L.S. „A Value for n-Person Games”. In Annals of Mathematical Studies, 28
20. VĂDUVA, I., DINESCU, C., SĂVULESCU, B.
Modele matematice de organizare şi conducere a producţiei, (Vol. I, II), Bucureşti, Editura Didactică şi Pedagogică, 1974
21. VRĂNCEANU, GH., MITITELU, Şt.
Probleme de cercetare operaţională, Bucureşti, Editura Tehnică, 1978
276