Sunteți pe pagina 1din 274

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.
Î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
1 TEORIA GRAFURILOR

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 = 1, p , există posibilitatea de a trece la una din

situaţiile Aij, j = 1, ni . 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 1n
1

A0 Ai Ai1
∶ ∶
A in
i

Ap Ap1

A pn
p

Î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

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 = 1,5 .
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,
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).
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)
aij =
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
dij =
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.
x2 x2 D x1 x2 x3 x4
x1 0 1 1 1
x1 x3 x1 x3 x2 0 0 0 0
x3 0 1 0 0
x4 x4 x4 0 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.
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 = (x i1 , ..., x in−1 ), ⎨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 i1 ) sau (x in−1 , xn) sau (x ik , xn) şi

(xn, x ik +1 ), cu dispariţia din d a arcului (x ik , x ik +1 )) ş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ă
n −1
xj ∈ UT (s)
( xi ).
s =1

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
n −1
xj ∈ T(k)(xi), deci xj ∈ UT (s)
( xi ).
s =1
Teoria grafurilor

n −1
Reciproc, dacă xj ∈ UT (s)
( xi ) , atunci xj aparţine cel puţin unei
s =1

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 0 1
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 = 1, n , 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.
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 0 0 0 1 0
x2 1 0 1 0 1
x3 0 0 0 0 0
x4 0 0 1 0 0
x5 1 0 0 1 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.
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 0 0 1 1 0
x2 1 0 1 1 1
x3 0 0 0 0 0
x4 0 0 1 0 0
x5 1 0 1 1 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
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 0 1 1 1 1
x5 0 0 1 1 1
x1 0 0 0 1 1
x4 0 0 0 0 1
x3 0 0 0 0 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
n(n − 1)
∑ p( x ) =
i =1
i
2
.
Teoria grafurilor

Demonstraţie: Presupunem că în G există drumul hamiltonian


dH = (x i1 , ..., x in ), unde (i1, ..., in) este o permutare a lui (1, ..., n).

Rezultă că x i1 atinge toate cele n – 1 vârfuri care îl succed, deci pe

linia lui x i1 din D sunt n – 1 elemente egale cu 1. Vârful x i2 atinge n – 2

vârfuri şi pe linia lui x i2 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 x in a cărui putere de atingere este

zero. Atunci:
n n
n(n − 1)
∑ p( xi ) = ∑ p( xik ) = (n − 1) + (n − 2) + ... + 1 + 0 =
i =1 k =1 2
.

n
n(n − 1)
Reciproc, dacă ∑ p( x ) =
i =1
i
2
şi matricea triangularizată D’ are

liniile şi coloanele ordonate astfel: x’1, ..., x’n, din observaţia 2 deducem că
n(n − 1)
toate cele elemente egale cu 1 ale lui D’ se găsesc deasupra
2
n(n − 1)
diagonalei principale unde sunt exact poziţii. Observaţia 3 ne
2
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 (H1) şi d (H2 ) distincte şi

d (H1) = (x’1, ..., x’i, ..., x’j, ... ,x’n)

d (H2 ) = (x’1, ..., x’j, ..., x’i, ... ,x’n)


Modele matematice în economie

Din d (H1) rezultă că există un drum de la x’i la x’j, iar din d (H2) 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.
n
4. Calculăm p(xi), i = 1, n şi apoi ∑ p( x ) . Apare unul din cazurile:
i =1
i

n
n(n − 1)
a) ∑ p( x ) ≠
i =1
i
2
; din teorema 1 rezultă că în G nu există

drum hamiltonian;
n
n(n − 1)
b) ∑ p( x ) =
i =1
i
2
, 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,
5
p(x2) = 4, p(x3) = 0, p(x4) = 1, p(x5) = 3. Deci ∑ p(x ) = 10. Dar n = 5 şi
i =1
i
Teoria grafurilor

n(n − 1) 5× 4
= = 10, deci teorema 1 spune că există drum hamiltonian şi
2 2
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 ij(k ) ,

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 ij(1) ), 1 ≤ i,j ≤ n, se construieşte astfel:

xixj dacă există arcul (xi, xj)


d ij(1) = 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)


(1)
d =
ij 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
Modele matematice în economie

şi elementul d ij( k ) din D(k) este: xi x i1 ... x ik −1 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 0 x1 x2 0 0 0
x2 0 0 x2 x3 x2 x4 0
x3 0 0 0 x3 x4 x3 x5
x4 0 0 0 0 0
x5 x5 x1 0 0 x5 x4 0

D (1) x1 x2 x3 x4 x5
x1 0 x2 0 0 0
x2 0 0 x3 x4 0
x3 0 0 0 x4 x5
x4 0 0 0 0 0
x5 x1 0 0 x4 0
Teoria grafurilor

D(2)= D(1)L D (1) x1 x2 x3 x4 x5


x1 0 0 x1x2x3 x1x2x4 0
x2 0 0 0 x2x3x4 x2x3x5
x3 x3x5x1 0 0 x3x5x4 0
x4 0 0 0 0 0
x5 0 x5x1x2 0 0 0

D(3)= D(2)L D (1) x1 x2 x3 x4 x5


x1 0 0 0 x1x2x3x4 x1x2x3x5
x2 x2x3x5x1 0 0 0 0
x3 0 x3x5x1x2 0 0 0
x4 0 0 0 0 0
x5 0 0 x5x1x2x3 x5x1x2x4 0

D(4)= D(3)L D (1) x1 x2 x3 x4 x5


x1 0 0 0 x1x2x3x5x4 0
x2 0 0 0 0 0
x3 0 0 0 x3x5x1x2x4 0
x4 0 0 0 0 0
x5 0 0 0 x5x1x2x3x4 0

Din D(4) citim că există 3 drumuri hamiltoniene şi anume:


d (H1) = (x1, x2, x3, x5, x4)

d (H2 ) = (x3, x5, x1, x2, x4)

d (H3) = (x5, x1, x2, x3, x4)


( 2)
Să explicăm modul în care, de exemplu, s-a găsit elementul d 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 ij( k ) , 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.
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 = 1, n .


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).
(k )
Notăm prin min valoarea minimă a drumurilor dintre xi şi xn,
drumuri formate din cel mult k arce, iar prin min 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
( k +1) (k )
min = min (vij + m jn ), i ≠ n, k ≥ 1.
1≤ j ≤ n

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
Teoria grafurilor

xn format din cel mult k + 1 arce trebuie să fie format dintr-un arc (xi, xj), i≠j
( k +1)
şi un drum de la xj la xn format din cel mult k arce, urmează că min -
valoarea minimă a drumurilor de la xi la xn formate din cel mult k + 1 arce
(k )
va fi dată de min (vij + m jn ).
1≤ j ≤ n

Propoziţia 4:

Dacă pentru graful G din propoziţia 1 există k ∈ ℕ astfel încât


(k ) ( k +1)
min = min , 1 ≤ i ≤ n, atunci:
(k )
min = min .

Demonstraţie: Formulată altfel, propoziţia 4 şi anume: există k ∈ ℕ


(k ) ( k +1) (k ) (k + s)
astfel încât min = min , atunci: min = min , 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:
( k + s +1) (k + s)
min = min (vij + m jn ) şi cum în presupunerea de inducţie
j

(k + s) (k)
avem că m jn = m jn , rezultă
( k + s +1) (k) ( k +1) (k )
min = min (vij + m jn ) = min = min
j

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.
Modele matematice în economie

2. Se ataşează noi linii matricei V notate succesiv prin


(1) ( 2)
min , min , ... 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:
(1)
a) linia min ale cărei elemente sunt valorile minime ale
drumurilor de la xi, i = 1, n , din G la xn, drumuri formate din

cel mult un arc, reprezintă valorile arcelor (xi, xn), i = 1, n ,


deci această linie va fi transpusa coloanei lui xn din V;
(k )
b) presupunem completată linia min şi trecem la determinarea
( k +1)
elementelor liniei min . Orice element de pe această linie se
calculează cu relaţia din propoziţia 3:
( k +1) (k )
min = min (vij + m jn ), i = 1, n , ceea ce înseamnă că vom
1≤ j ≤ n

aduna respectiv elementele liniei lui xi din V cu cele ale liniei


(k ) ( k +1)
min şi cea mai mică valoare va fi min ;
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
( k +1)
min ş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,
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)
( k +1)
şi valoarea sa va fi min .
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
(k )
pentru cazul când prin min î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
6
2 3 x5
4 2
x1 x3 1

1
3 5 x6
x4
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 0 2 4 3 ∞ ∞
x2 2 0 3 ∞ 6 ∞
x3 4 3 0 1 2 ∞
x4 3 ∞ 1 0 ∞ 5
x5 ∞ 6 2 ∞ 0 1
x6 ∞ ∞ ∞ 5 1 0

mi 6
(1)
∞ ∞ ∞ 5 1 0

mi 6
( 2) 8 7 3 5 1 0

mi 6
( 3) 7 6 3 4 1 0

mi 6
( 4) 7 6 3 4 1 0

(1)
Linia mi 6 se obţine prin transpunerea coloanei lui x6.
( 2) ( 2)
Primul element al liniei mi 6 este m16 şi se determină adunând
(1)
respectiv elementele liniei x1 din V cu cele ale liniei mi 6 . Cea mai mică
( 2)
sumă este elementul căutat, adică m16 = min⎨0 + ∞, 2 + ∞, 4 + ∞, 3 + 5,
∞ + 1, ∞ + 0⎬ = 8.
( 2)
Elementele următoare ale liniei mi 6 se determină în acelaşi mod,
(1)
păstrând fixă linia mi 6 dar modificând pe rând linia din V cu x2, x3, ..., x6.
( 3) ( 2)
Pentru linia mi 6 se ia linia mi 6 ş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
( 4) ( 3)
linia mi 6 , luând linia mi 6 ş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.
Teoria grafurilor

Valoarea minimă a drumurilor de la x1 la x6 este dată de elementul


( 4)
m16 = 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
( 4)
ultimei linii adăugate, mi 6 . 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
( 4)
linia lui x5 cu ultima linie, mi 6 , 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:
4 2 1
d1: x1 → x3 → x5 → x6 de valoare 7.
Procedând analog cu al doilea marcaj, vom găsi
3 1 2 1
d2: x1 → x4 → x3 → x5 → 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.
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 = min (aik + bkj), (∀) i, j = 1, n , dacă se caută ruta de valoare minimă.
1≤ k ≤ n

(k )
Notăm M(k) = ( mij ) şi M = ( mij ), i, j = 1, n , k = 1, n − 1 .
Etapele algoritmului sunt:
1) Se construieşte matricea V = (vij), i, j = 1, n
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 = ( mij ) şi elementele mij 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

mij . 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.
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 = max (aik + bkj), i,j = 1, n ;


1≤ k ≤ n

- î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
5
7 x3
2
x1 6 1 4

5 x4
3
x5

Rezolvare
Matricea V, determinată cu definiţia elementelor vij este:
V x1 x2 x3 x4 x5
x1 0 7 2 4 5
x2 ∞ 0 ∞ ∞ ∞
x3 ∞ ∞ 0 4 1
x4 ∞ ∞ ∞ 0 3
x5 ∞ ∞ ∞ ∞ 0
Modele matematice în economie

Determinăm matricea M(2) = V * V şi obţinem:


M(2) x1 x2 x3 x4 x5
x1 0 7 2 6 3
x2 ∞ 0 ∞ ∞ ∞
x3 0 5 0 4 1
x4 ∞ ∞ ∞ 0 3
x5 ∞ ∞ ∞ ∞ 0

( 2)
unde, de exemplu, m15 este cea mai mică sumă obţinută adunând
elementele liniei lui x1 cu cele ale coloanei lui x5 din V, adică
( 2)
m15 = 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 0 7 2 6 3
x2 ∞ 0 ∞ ∞ ∞
x3 0 5 0 4 1
x4 ∞ ∞ ∞ 0 3
x5 ∞ ∞ ∞ ∞ 0

adică M(4) = M(2) = M şi algoritmul se opreşte. Pentru ilustrarea procedurii,

m12 = 7 este valoarea minimă a drumurilor de la x1 la x2. Aceste drumuri,


obţinute aplicând procedeul din etapa 3, sunt:
7 2 5
d1: x1 → x2 şi d2: x1 → x3 → x2.

5. Drumul critic

O aplicaţie importantă a rutelor optime o întâlnim în determinarea


drumului critic într-un graf.
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
3 5

10
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
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
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 id - 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 id , 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 id - 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 id + 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
Modele matematice în economie

realizarea într-o ordine bine stabilită a unor evenimente, conform


următorului graf:
x1
7
x4
3
6 3
2
5
5 10
x0 x6
x2 7 4
4 3

9 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 0 1 1 1 0 0 0
x1 0 0 1 0 1 0 0
x2 0 0 0 0 1 1 1
x3 0 0 1 0 0 1 0
x4 0 0 0 0 0 1 1
x5 0 0 0 0 0 0 1
x6 0 0 0 0 0 0 0
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 = 0,6 , pentru a obţine matricea triangularizată D’.
D x0 x1 x2 x3 x4 x5 x6 p(xi)
x0 0 1 1 1 1 1 1 6
x1 0 0 1 0 1 1 1 4
x2 0 0 0 0 1 1 1 3
x3 0 0 1 0 1 1 1 4
x4 0 0 0 0 0 1 1 2
x5 0 0 0 0 0 0 1 1
x6 0 0 0 0 0 0 0 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 0 1 1 1 1 1 1
x1 0 0 1 0 1 1 1
x3 0 0 1 0 1 1 1
x2 0 0 0 0 1 1 1
x4 0 0 0 0 0 1 1
x5 0 0 0 0 0 0 1
x6 0 0 0 0 0 0 0

Scriem acum matricea V cu ordinea vârfurilor din D’:


V x0 x1 x3 x2 x4 x5 x6
x0 0 3 4 5 -∞ -∞ -∞
x1 -∞ 0 -∞ 6 7 -∞ -∞
x3 -∞ -∞ 0 3 -∞ 9 -∞
x2 -∞ -∞ -∞ 0 2 7 10
x4 -∞ -∞ -∞ -∞ 0 5 3
x5 -∞ -∞ -∞ -∞ -∞ 0 4
x6 -∞ -∞ -∞ -∞ -∞ -∞ 0

Determinăm matricea M(2) = V * V, unde elementele


( 2)
mij = max (vik + vkj), (∀) i, j = 0,6 .
0 ≤k ≤ 6
Modele matematice în economie

Obţinem:
M(2) x0 x1 x3 x2 x4 x5 x6
x0 0 3 4 9 10 13 15
x1 -∞ 0 -∞ 6 8 13 16
x3 -∞ -∞ 0 3 5 10 13
x2 -∞ -∞ -∞ 0 2 7 11
x4 -∞ -∞ -∞ -∞ 0 5 9
x5 -∞ -∞ -∞ -∞ -∞ 0 4
x6 -∞ -∞ -∞ -∞ -∞ -∞ 0

( 2)
în care, de exemplu, elementul m35 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)
m35 = 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 0 3 4 9 11 16 20
x1 -∞ 0 -∞ 6 8 13 17
x3 -∞ -∞ 0 3 5 10 14
x2 -∞ -∞ -∞ 0 7 7 11
x4 -∞ -∞ -∞ -∞ 0 5 9
x5 -∞ -∞ -∞ -∞ -∞ 0 4
x6 -∞ -∞ -∞ -∞ -∞ -∞ 0

de unde citim v[dmax(x0, x6)] = 20 = m06


Deci obiectivul poate fi înfăptuit cel mai devreme în 20 de
săptămâni.
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 m 06 = 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.
Evenimentul t id t ti Marja
xi (t ti -t id )
x0 0 0 0
x1 3 3 0
x3 4 6 2
x2 9 9 0
x4 11 11 0
x5 16 16 0
x6 20 20 0

unde t id = v[dmax(x0, xi)], i = 1,6 , 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 = 0,6 , 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.
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 id vij t tj t ti t dj Marja
(x0, x1) 0 3 3 0 3 0
(x0, x2) 0 5 9 4 5 4
(x0, x3) 0 4 6 2 4 2
(x1, x2) 3 6 9 3 9 0
(x1, x4) 3 7 11 4 10 1
(x3, x2) 4 3 9 6 7 2
(x3, x5) 4 9 16 7 13 3
(x2, x4) 9 2 11 9 11 0
(x2, x5) 9 7 16 9 16 0
(x2, x6) 9 10 20 10 19 1
(x4, x5) 11 5 16 11 16 0
(x4, x6) 11 3 20 17 14 6
(x5, x6) 16 4 20 16 20 0

Să explicăm, de exemplu, cum a fost completată linia activităţii


(x3, x5). t id = t 3d = v[dmax(x0, x3)] = 4, citit în M linia x0 şi coloana x3;

vij = v35 = 9 din graf sau din V; t tj = t t5 = 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 tj - vij, în cazul nostru

t t3 = t t5 - v35 = 16 – 9 = 7 (adică elementele coloanei t ti se obţin scăzând din

coloana t tj coloana vij); t dj = t id + vij, devine t 5d = t 3d + v35 = 4 + 9 = 13

(adică elementele coloanei t dj se obţin adunând respectiv elementele

coloanelor t id şi vij). Marja este dată de t ti - t id sau t tj - t dj , în cazul nostru

t t3 - t 3d = t t5 - t 5d = 7 – 4 = 16 – 13 = 3.
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
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ţ.
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ă.
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ă.
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 = 1, k .
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.
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 = 0, p , 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 = 0, p .
Î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.
Teoria grafurilor

x2
30 x5
35 36
x3 65
35
x1 40 x7
60 55
42
50
50 60

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 - 35 35 50 - - -
x2 - - 30 42 - - -
x3 - - - 40 36 50 -
x4 - - - - 60 - -
x5 - - - - - 55 65
x6 - - - - - - 60
x7 - - - - - - -

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.
Modele matematice în economie

x2
30 x5
35 36
x3
x1 40 x7

50
60

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.
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 0 0 0 1 0 x1 0 0 0 1 0 1
x2 1 0 0 0 1 x2 1 0 0 1 1 3
x3 1 1 0 1 1 x3 1 1 0 1 1 4
x4 0 0 0 0 0 x4 0 0 0 0 0 0
x5 1 0 0 1 0 x5 1 0 0 1 0 2
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.
5
n(n − 1) 5 ⋅ 4
Deoarece n = 5, ∑ p( x ) = 10 , iar
i =1
i
2
=
2
= 10 , 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.
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 0 x1x3 x1x4 0 x3 x4
x2x1 0 0 0 x2x5 x1 x5
0 x3x2 0 x3x4 0 x2 x4
0 x4x2 0 0 x4x5 x2 x5
0 0 0 0 0

D(2) = D(1) L D (1) D(3) = D(2)L D (1)

0 x1x3x2 0 x1x3x4 x1x4x5 0 x1x3x4x2 0 0 x1x3x2x5


x1x4x2 x1x4x2x5
x1x3x4x5
0 0 x2x1x3 x2x1x4 0 0 0 0 x2x1x3x4 x2x1x4x2
x3x2x1 x3x4x2 0 0 x3x2x5 x3x4x2x1 0 0 x3x2x1x4 x3x4x2x5
x3x4x5
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 x1x3x4x2x5
0 0 0 0 x2x1x3x4x5
0 0 0 0 x3x2x1x4x5
0 0 0 0 0
0 0 0 0 0
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 (H1) = (x1, x3, x4, x2, x5)

d (H2 ) = (x2, x1, x3, x4, x5)

d (H3) = (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 1
x3
3 4 3 2 5
1
x1
2
6 1

x5 x4
4

Rezolvare
a) Trebuie să determinăm rutele de valoare minimă de la orice vârf
la vârful x5. Se aplică algoritmul Bellman – Kalaba.
Teoria grafurilor

V x1 x2 x3 x4 x5
x1 0 4 2 ∞ 6
x2 3 0 ∞ ∞ 1
x3 ∞ 1 0 ∞ ∞
x4 ∞ ∞ 5 0 4
x5 ∞ 3 2 1 0
mi 5
(1) 6 1 ∞ 4 0

mi 5
( 2) 5 1 2 4 0

mi 5
( 3) 4 1 2 4 0

mi 5
( 4) 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 0 4 2 ∞ 6 x1 0 4 2 ∞ 6 x1 0 3 2 7 5
x2 3 0 ∞ ∞ 1 x2 3 0 ∞ ∞ 1 x2 3 0 3 2 1
x3 ∞ 1 0 ∞ ∞ * x3 ∞ 1 0 ∞ ∞ = x3 4 1 0 ∞ 2
x4 ∞ ∞ 5 0 4 x4 ∞ ∞ 5 0 4 x4 ∞ 6 5 0 4
x5 ∞ 3 2 1 0 x5 ∞ 3 2 1 0 x5 6 3 2 1 0

unde, de exemplu elementul m (432) 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 (432 ) = 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 0 3 2 5 4
x2 3 0 3 2 1
x3 4 1 0 3 2 = M(5) = M
x4 9 6 5 0 4
x5 6 3 2 1 0

Matricea M(4) conţine valorile minime ale rutelor dintre oricare vârf
cap de linie la orice vârf cap de coloană.
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:
5 1 3
d: x4 → x3 → x2 → 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
5
2 9 x5
7
3
x1 x3 4

8
2
6 x6
x4

Rezolvare
a) Se determină pe rând matricele A (a arcelor) şi D (a drumurilor).
Teoria grafurilor

A x1 x2 x3 x4 x5 x6 D x1 x2 x3 x4 x5 x6 p(xi)
x1 0 1 1 1 0 0 x1 0 1 1 1 1 1 5
x2 0 0 1 0 1 0 x2 0 0 1 1 1 1 4
x3 0 0 0 1 0 0 x3 0 0 0 1 0 1 2
x4 0 0 0 0 0 1 x4 0 0 0 0 0 1 1
x5 0 0 1 0 0 1 x5 0 0 1 1 0 1 3
x6 0 0 0 0 0 0 x6 0 0 0 0 0 0 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
n(n − 1) 6 ⋅ 5
∑ p( x ) = 15 şi cum n = 6;
i =1
i
2
=
2
= 15 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 0 2 3 2 -∞ -∞
x2 -∞ 0 9 -∞ 5 -∞
x3 -∞ -∞ 0 8 -∞ -∞
x4 -∞ -∞ -∞ 0 -∞ 6
x5 -∞ -∞ 7 -∞ 0 4
x6 -∞ -∞ -∞ -∞ -∞ 0
mi 4
(1) 2 -∞ 8 0 -∞ -∞
mi 4
( 2) 11 17 8 0 -∞ -∞
mi 4
( 3) 19 20 8 0 15 -∞
m
( 4)
i4
22 20 8 0 15 -∞
m
(5)
i4
22 20 8 0 15 -∞
Modele matematice în economie

Deoarece vrem să ajungă ruta în x4, prima linie ce se adaugă lui V,


(1) ( 5)
mi 4 va fi transpusa coloanei lui x4. Ultima linie, mi 4 , va da valorile
maxime ale drumurilor de la vârfurile cap de coloană la x4. Astfel valoarea
( 5)
maximă a drumurilor de la x2 la x4 este 20 (elementul m 24 ) ş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
10
6 x4
x1 6
7
8 9

8
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
6 x4
x1 6
7

8
x3 x5
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
10
x4
x1
8 9

8
x3 x5

arborele maximal, care este şi lanţ hamiltonian maximal şi are valoarea 35.
COMPLEMENTE
2 DE ALGEBRĂ LINIARĂ

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 = 1,n ⎬ 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.
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
Complemente de algebră liniară

v = α1v1 + ... + αmvm.


m
Dacă αi ∈ [0, 1], i = 1,m şi ∑α
i =1
i = 1 , atunci vectorul v este o

combinaţie liniară convexă de v1, ..., vm.


Exemplu:

În (ℝ2, ℝ) se dau vectorii:

⎛ 6⎞ ⎛ 3 ⎞ ⎛ 4 ⎞
v1 = ⎜⎜ ⎟⎟ , v2 = ⎜⎜ ⎟⎟ , v3 = ⎜⎜ ⎟⎟ .
⎝ 0⎠ ⎝ − 3⎠ ⎝ − 2⎠
a) Să se determine vectorul v = 2v1 – 3v2 – v3;
b) Este v3 o combinaţie liniară de v1 şi v2?
Răspuns
⎛ 6⎞ ⎛ 3 ⎞ ⎛ 4 ⎞ ⎛ − 1⎞
a) v = 2 ⎜⎜ ⎟⎟ - 3 ⎜⎜ ⎟⎟ - ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ ;
⎝ 0⎠ ⎝ − 3 ⎠ ⎝ − 2 ⎠ ⎝ 11 ⎠
b) Presupunem că există α1 şi α2 astfel încât v3 = α1v1 + α2v2.
Înlocuind v1, v2, v3, avem:
⎛ 4 ⎞ ⎛ 6⎞ ⎛ 3 ⎞
⎜⎜ ⎟⎟ = α1 ⎜⎜ ⎟⎟ + α2 ⎜⎜ ⎟⎟ de unde rezultă sistemul:
⎝ − 2⎠ ⎝ 0⎠ ⎝ − 3⎠
6α1 + 3α2 = 4
2 1 1 2
- 3α2 = -2, cu soluţia α2 = şi α1 = , deci v3 = v1 + v2 şi
3 3 3 3
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.
Modele matematice în economie

Definiţia 3:
a) Sistemul finit de vectori ⎨v1, ..., vm⎬ ⊂ X se numeşte liniar
m
independent dacă relaţia ∑α v
i =1
i i = 0 implică αi = 0, i = 1,m ;

b) ⎨v1, ..., vm⎬ ⊂ X este liniar dependent dacă există scalarii


m
α1 ,..., αm, nu toţi nuli, astfel încât ∑α v
i =1
i i = 0.

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

⎛1⎞ ⎛ 2⎞ ⎛ 3⎞
v1 = ⎜⎜ ⎟⎟ ; v2 = ⎜⎜ ⎟⎟ ; v3 = ⎜⎜ ⎟⎟ este liniar dependent, deoarece
⎝ − 1⎠ ⎝ 3⎠ ⎝ 7⎠
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.
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
m
proprietatea ∑α v
i =1
i i = 0.

Presupunem α1 ≠ 0 şi din relaţia precedentă avem:


α2 α α
v1 = - v2 - ... - m vm sau, notând βl = - l , l = 2 ,m , rezultă:
α1 α1 α1
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
m +1

∑α v
i =1
i i = 0.

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
m
αi
contradicţie. Deci αm+1 ≠ 0, de unde vm+1 = - ∑α
i =1
vi , adică vm+1 este o
m +1

combinaţie liniară de ceilalţi vectori.


Aplicaţie

În (ℝ3, ℝ) se dau vectorii:

⎛ 1⎞ ⎛0⎞ ⎛ 1⎞ ⎛ 2⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟ ⎜ ⎟
v1 = ⎜ 2 ⎟ ; v2 = ⎜ − 1⎟ ; v3 = ⎜ 0 ⎟ ; v4 = ⎜ 0⎟ .
⎜ 3⎟ ⎜1⎟ ⎜ 5⎟ ⎜ 5⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠ ⎝ ⎠
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
1 0 1
∆ = 2 −1 0 = 0 .
3 1 5

1 0
Alegem determinantul principal ∆p = ≠ 0 şi deci sistemul
2 −1

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
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.
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 = 1, m ⎬ 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 = 1, m , 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.
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 = 1, m , şi A = (aij), i = 1, n , j = 1, m , 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.
Modele matematice în economie

Demonstraţie:
Fie relaţia:
α1v1 + ...+ αmvm = 0 (2)
în care înlocuim vectorii cu matricele – coloană respective. Avem:

⎛ a 11 ⎞ ⎛ a 1m ⎞ ⎛ 0 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
α1 ⎜ M ⎟ + K + α m ⎜ M ⎟ = ⎜ M ⎟ , relaţie echivalentă cu sistemul
⎜a ⎟ ⎜ a ⎟ ⎜ 0⎟
⎝ n1 ⎠ ⎝ nm ⎠ ⎝ ⎠
omogen de ecuaţii liniare:
a11α1 + .... + a1mαm = 0

∶ ∶ (3)
an1α1 + ... + anmαm = 0

a cărui matrice este A = (aij), i = 1, n , j = 1, m .


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:

⎛ 1⎞ ⎛0⎞ ⎛ a2 ⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
v1 = ⎜ 0 ⎟ ; v2 = ⎜ − 1⎟ ; v3 = ⎜ a ⎟ , a ∈ℝ.
⎜ 2⎟ ⎜4⎟ ⎜0⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠
Să se determine, în funcţie de a, natura vectorilor daţi.
Complemente de algebră liniară

Rezolvare
⎛1 0 a2 ⎞
⎜ ⎟
A = ⎜ 0 − 1 a ⎟ ⇒ ⎪A⎪ = 2a(a - 2) rezultă:
⎜2 4 0 ⎟
⎝ ⎠

- 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.
Modele matematice în economie

Propoziţia 7:
Fie B = ⎨v1, ..., vn⎬ bază în ℝn, cu vj = (a1j, ..., anj)T, j = 1, n , A = (aij),

i, j = 1, n şi un vector oarecare v ∈ ℝn. Atunci

vB = A-1 ⋅ v
Demonstraţie:
Fie v = (b1, ..., bn)T, bi ∈ℝ, i = 1, n . 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⎬,
Complemente de algebră liniară

vj = (a 1 j , ..., anj)T, j = 1, n şi v B1 = (α 1' , ..., α 'n )T vectorul v în noua bază

B1 = ⎨v 1' , ..., v 'n ⎬ cu v 'j = (a 1' j , ... , a 'nj )T, j = 1, n , iar A1 = (a ij' ), i,j = 1, n .

Atunci: v B1 = A 1−1 ⋅ A ⋅ vB (8)

Demonstraţie:
Din propoziţia 7 putem scrie:
v = AvB
v = A1v B1

deci: A ⋅ vB = A1 ⋅ v B1 de unde: v B1 = A 1−1 ⋅ A ⋅ vB sau vB = A-1 ⋅ A1 ⋅ v B1 .

Aplicaţie
⎛ 1⎞ ⎛ 3⎞ ⎛ 4⎞ ⎛1⎞
În (ℝ2, ℝ) se dau vectorii: v1 = ⎜⎜ ⎟⎟ ; v2 = ⎜⎜ ⎟⎟ ; v = ⎜⎜ ⎟⎟ şi v 1' = ⎜⎜ ⎟⎟ ;
⎝ 2⎠ ⎝ 1⎠ ⎝ 2⎠ ⎝ 4⎠

⎛1⎞
v '2 = ⎜⎜ ⎟⎟ . Se cere:
⎝1⎠
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 v B1 .

Rezolvare
a) Formăm matricele A şi A1:
⎛ 1 3⎞
A = ⎜⎜ ⎟⎟ ⇒ ⎪A⎪ = -5 ⇒ rangA = 2, adică sistemul ⎨v1, v2⎬ este
⎝ 2 1⎠
liniar independent şi conform propoziţiei 6, formează o bază B. Raţionăm
⎛ 1 1⎞
analog pentru A1 = ⎜⎜ ⎟⎟ cu rang A = 2, ⎨v 1' , v '2 ⎬ = B1.
⎝ 4 1 ⎠
Modele matematice în economie

b) Din relaţia (7), vB = A-1v, unde:


⎛ − 1/ 5 3 / 5 ⎞
A-1 = ⎜⎜ ⎟⎟ şi deci:
⎝ 2 / 5 − 1/ 5⎠
⎛ − 1/ 5 3 / 5 ⎞ ⎛ 4⎞ ⎛ 2 / 5⎞
vB = ⎜⎜ ⎟⎟ ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ .
⎝ 2 / 5 − 1/ 5⎠ ⎝ 2⎠ ⎝ 6 / 5⎠
⎛ − 1/ 3 1/ 3 ⎞
c) Deoarece A 1−1 = ⎜⎜ ⎟⎟ , din relaţia (8) avem:
⎝ 4 / 3 − 1 / 3⎠
⎛ − 1 / 3 1 / 3 ⎞ ⎛ 1 3⎞ ⎛ 2 / 5 ⎞ ⎛ − 2 / 3⎞
v B1 = A 1−1 ⋅ A ⋅ vB = ⎜⎜ ⎟⎟ ⎜⎜ ⎟⎟ ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ .
⎝ 4 / 3 − 1 / 3⎠ ⎝ 2 1 ⎠ ⎝ 6 / 5 ⎠ ⎝ 14 / 3 ⎠
2 14 ' ⎛ − 2 / 3⎞ ⎛14 / 3⎞ ⎛ 4 ⎞
Ca verificare, avem: - v 1' + v 2 = ⎜⎜ ⎟⎟ + ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ = v.
3 3 ⎝ − 8 / 3 ⎠ ⎝14 / 3⎠ ⎝ 2 ⎠
Lema substituţiei:
n
Fie (ℝn, ℝ), B = ⎨a1, ..., an⎬ o bază şi v = ∑α a
j =1
j j ∈ ℝ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

λi α i λ j − α jλ i
x B1 = (λ 1' , ..., λ 'n )T unde λ i' = , λ 'j = , pentru j ≠ i,
αi α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.
Complemente de algebră liniară

Dar (9) se mai scrie:


n n ⎛ n ⎞
∑ β a
j j + β i v = 0 ⇔ ∑ β a
j j + β i ⎜ ∑ α ja j ⎟ = 0 ⇔
⎜ ⎟
j=1
j≠ i
j=1
j≠ i
⎝ j=1 ⎠
n

∑ (β
j=1
j + βi α j ) a j + α iβi a i = 0 (10)
j≠ i

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:
1 0 L α1 L 0
0 1 L α2 L 0
M M L M L M
D= = αi ≠ 0.
0 0 L αi L 0
M M L M L M
0 0 L αn L 1
n n
b) Fie x = ∑λ a
j =1
j j ,v= ∑α a
j =1
j j şi presupunem αi ≠ 0. Atunci:

αiai = v - α1a1 - ... - αi-1ai-1 - αi+1ai+1 - ... - αnan


1 α α α α
ai = v − 1 a1 − ... − i −1 a i −1 − i +1 a i +1 − ... − n a n (11)
αi αi αi αi αi
Modele matematice în economie

n
Cum x = ∑λ a
j=1
j j + λ i a i , înlocuind ai din (11), avem:
j≠ i

⎛ n α

n
⎜ 1 ⎟ ⎛ αλ ⎞ ⎛ α λ ⎞
x = ∑ λ j a j + λ i ⎜ v − ∑ a j ⎟ = ⎜⎜ λ 1 − 1 i ⎟⎟a 1 + ... + ⎜⎜ λ i −1 − i −1 i ⎟⎟a i −1 +
j

j=1 ⎜ αi j=1 α i ⎟ ⎝ αi ⎠ ⎝ αi ⎠
j≠ i ⎝ j≠ i ⎠
λ ⎛ α λ ⎞ ⎛ α λ ⎞
+ i v + ⎜⎜ λ i +1 − i +1 i ⎟⎟a i +1 + ... + ⎜⎜ λ n − n i ⎟⎟a n ,
αi ⎝ αi ⎠ ⎝ αi ⎠

reprezentând scrierea lui x în baza B1. În enunţul lemei substituţiei avem


x B1 = (λ 1' , ..., λ 'n ) şi din unicitatea coordonatelor unui vector într-o bază

λi α jλ i α i λ j − α jλ i
rezultă: λ'i = , λ' j = λ j − = , 1 ≤ j ≤ n, j ≠ i şi
αi α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 ∈ 1, n , 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 αi ≠ 0

∶ ∶ ∶ ∶ ∶ ∶ ∶
an 0 0 0 1 αn λn
B1 a1 a2... ...ai... an v x
a1 1 0 α1

0 0 λ11 =
α i λ1 − α1λ i
αi αi
a2 0 1 α2 0 0 α i λ 2 − α 2λ i
− λ12 =
αi ≠ 0 αi αi
→ ∶ ∶ ∶ ∶ ∶ ∶ ∶
v 0 0 1 0 1 λ =
1 λi
i
αi αi
∶ ∶ ∶ ∶ ∶ ∶ ∶
an 0 0 −
αn 1 0 αiλ n − α n λi
λ1n =
αi αi
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 = 1, n , 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 = 1, n , este un

vector aj ∈ ℝn cu aj = (a1j, ..., anj)T. Atunci A = (a1, ..., an) şi din (13) avem:
⎛ x1 ⎞
⎜ ⎟
(a1, ..., an) ⎜ M ⎟ = b ⇔ x1a1 +...+ xnan = b (14)
⎜x ⎟
⎝ n⎠
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 = 1, n ).
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 b1
b1' =
a 11
e2 0 a’22 ... a’2n a 11b 2 − a 21b1
b '2 =
a 11

∶ ∶ ∶ ∶ ∶ ∶
en 0 a’n2 ... a’nn a 11b n − a n1b1
b 'n =
a 11
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:
⎛1 1 1⎞
⎜ ⎟
A = ⎜ 4 3 2 ⎟ , ⎪A⎪ = -1 ≠ 0.
⎜ 2 1 1⎟
⎝ ⎠

Sistemul este compatibil determinat şi se poate rezolva cu metoda


eliminării a lui Gauss – Jordan.
Modele matematice în economie

Pasul B a1 a2 a3 b
e1 1 1 1 1
1 e2 4 3 2 -2
e3 2 1 1 -2
a1 1 1 1 1
2 e2 0 -1 -2 -6
e3 0 -1 -1 -4
a1 1 0 -1 -5
3 a2 0 1 2 6
e3 0 0 1 2
a1 1 0 0 -3
4 a2 0 1 0 2
a3 0 0 1 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 ⎞ n
f ⎜ ∑ α i x i ⎟ = ∑ α if ( x i ) ; (∀) αi ∈ K, (∀) xi ∈ X, i = 1, n .
⎝ i =1 ⎠ i =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:
Complemente de algebră liniară

n
x = ∑x g
i =1
i i , unde xi, i = 1, n , sunt coordonatele lui x în baza G.

Aplicând funcţionala liniară f, rezultă:


n n
f(x) = f( ∑ x i g i ) = ∑ x f (g ) = A ⋅ xG, unde A = (a1, ..., an), cu
i i
i =1 i =1

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).
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 ≥
m m
0, i = 1, m , cu ∑ λ i = 1, rezultă:
i =1
∑λ X
i =1
i i ∈ 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 = 1, n , b ∈ ℝ, se numeşte hiperplan.

Definiţia 14: Un hiperplan determină în ℝn două semispaţii:


n
S1 = ⎨X ⎪ X = (x1, ..., xn)T, ∑a x
j=1
j j ≤ b⎬

n
S2 = ⎨X ⎪ X = (x1, ..., xn)T, ∑a x
i =1
j j ≥ b ⎬.
Complemente de algebră liniară

Definiţia 15: Intersecţia unui număr finit de semispaţii date de


n
relaţiile: ∑a
j=1
ij x j ≤ b i , i = 1, m , adică mulţimea soluţiilor unui sistem de

inegalităţi liniare, T = ⎨X ∈ ℝn ⎪ AX ≤ b, A = (aij), i = 1, m , j = 1, n ; 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
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.
Complemente de algebră liniară

8. Probleme

1. Fie ℝn = ℝ × ... × ℝ = ⎨x⎪x = (x1, ..., xn)T, xi ∈ ℝ, i = 1, n ⎬. 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.


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.
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.
⎛ 3 1 m⎞
⎜ ⎟
A = ⎜ − 2 −1 2 ⎟ .
⎜ 0 1 4 ⎟⎠

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 ∈ 1,3 ,
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
− 2 −1
∆p = ≠ 0 . Avem:
0 1

-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)
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 5
-2 -1 2 -15
0 1 4 -7
1 1/3 2/3 5/3
0 -1/3 10/3 -35/3
0 1 4 -7
1 0 4 -10
0 1 -10 35
0 0 14 -42
1 0 0 2
0 1 0 5
0 0 1 -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⎬.
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:
⎛ 3 2⎞ ⎛ 4 3⎞
A = ⎜⎜ ⎟⎟ , A’ = ⎜⎜ ⎟⎟
⎝ −1 1⎠ ⎝ 2 2⎠
Din relaţiile:
v = AvB şi v = A’vB’ rezultă AvB = A’vB’, de unde
vB = A-1A’vB’ şi vB’ = (A’)-1AvB (4)
1 ⎛1 − 2 ⎞ 1 ⎛ 2 − 3⎞
Dar: A-1 = ⎜⎜ ⎟⎟ şi (A’)-1 = ⎜⎜ ⎟,
5 ⎝1 3 ⎠ 2 ⎝ − 2 4 ⎟⎠
Complemente de algebră liniară

iar:
1 ⎛1 − 2 ⎞⎛ 4 3 ⎞ 1 ⎛ 0 − 1⎞
A-1A’ = ⎜ ⎟⎜ ⎟= ⎜ ⎟
5 ⎜⎝1 3 ⎟⎠⎜⎝ 2 2 ⎟⎠ 5 ⎜⎝10 9 ⎟⎠

1 ⎛ 2 − 3 ⎞⎛ 3 2 ⎞ 1 ⎛ 9 1 ⎞
(A’)-1A = ⎜ ⎟⎜ ⎟= ⎜ ⎟
2 ⎜⎝ − 2 4 ⎟⎠⎜⎝ − 1 1 ⎟⎠ 2 ⎜⎝ − 10 0 ⎟⎠
Atunci, din (4), avem:
1 ⎛ 0 − 1⎞ 1 ⎛ 9 1⎞
vB = ⎜⎜ ⎟⎟ vB’ şi vB’ = ⎜⎜ ⎟ vB.
5 ⎝10 9 ⎠ 2 ⎝ − 10 0 ⎟⎠

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ă.
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
Complemente de algebră liniară

⎛ a 11 ...a 1n ⎞ ⎛ x1 ⎞ ⎛ 0⎞
⎜ ⎟ ⎜ ⎟ ⎜ ⎟
Notăm A = ⎜ M ⎟ şi X = ⎜ M ⎟ 0 = ⎜M⎟ .
⎜ a ...a ⎟ ⎜x ⎟ ⎜ 0⎟
⎝ m1 mn ⎠ ⎝ n⎠ ⎝ ⎠
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 = 1, n , atunci


n n
X= ∑ λ i X i , cu λi ≥ 0,
i =1
∑λ
i =1
i = 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ă:
k k
Y= ∑ λiXi ∈ C, (∀) λi ≥ 0, i = 1, k ,
i =1
∑ λ = 1.
i =1
i

k +1 k +1
Să considerăm Z = ∑ µiXi , cu µk+1 ∈ (0,1) şi
i =1
∑ µ = 1, µi ≥ 0.
i =1
i

k
µi
Avem Z = (1 - µk+1) ∑ X i + µ k +1X k +1 .
i =1 1 − µ k +1

k
Deoarece ∑µ
i =1
i = 1 - µk+1, din ipoteza de inducţie rezultă că
Modele matematice în economie

k
µi k


i =1 1 − µ
X i = ∑
i =1
λ'i X i = Y’ ∈ C şi mai departe
k +1

(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 ∈ ℕ*.
3 PROGRAMARE LINIARĂ

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;


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 = 1, m . Restricţiile de forma xj ≥ 0, j = 1, n ,
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 = 1, m , 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 = 1, m , 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
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 2 3
unitar

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
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)
C
B4(0,3) •D • (d4)

•B

(d2)

•A
O(0,0) A3(4,0) A1(6, 0) 7 A2(8, 0) x1
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
2
⎨(x1, x2) ⏐ 2x1 + 3x2 = V⎬V≥0, paralele, având aceeaşi pantă, α = - .
3
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).
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 = 1, m , disponibile respectiv în cantităţile bi, i = 1, m ,

pot fi utilizate în producerea activităţilor Aj, j = 1, n . Se cunosc veniturile

unitare pe activităţi cj, j = 1, n precum şi coeficienţii tehnologici aij, i = 1, m ,

j = 1, n , respectiv cantităţile din fiecare resursă Ri necesare realizării unei

unităţi din Aj, i = 1, m , j = 1, n ; să se determine nivelul xj al activităţilor Aj,

j = 1, n , astfel încât venitul total să fie maxim.


Reprezentăm datele problemei în următorul tabel:

Ri/Aj A1...Aj...An Disponibil


R1 a11...a1j...a1n b1
... ... ...
Ri ai1...aij...ain bi
... ... ...
Rm am1...amj...amn bm
Venitul c1 ... cj ... cn
unitar
Programare liniară

Modelul matematic se scrie astfel:


n
[max]f(X) = ∑c x
j=1
j j (1)

∑a
j =1
ij x j ≤ bi, i = 1, m (2)

xj ≥ 0, j = 1, n (3)

Notând A = (aij), i = 1, m , j = 1, n ; 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:
n
[optim]f(X) = ∑c x
j=1
j j (4)

∑a
j=1
ij x j ≤ b i , i ∈ ⎨1, ..., k⎬

∑a
j=1
ij x j = b i , i ∈ ⎨k+1, ..., p⎬ (5)

∑a
j=1
ij x j ≥ b i , i ∈ ⎨p+1, ..., m⎬

xj ≥ 0, j ∈ ⎨1, ..., s⎬
xj oarecare, j ∈ ⎨s+1,..., v⎬ (6)
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 = 1, n .
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)]
Programare liniară

În sfârşit, există multe cazuri practice când problemele apar sub una
din formele particulare:
n
[max]f(X) = ∑c x
j=1
j j

∑a x
j =1
ij j ≤ bi , i = 1, m (10)

xj ≥ 0, j = 1, n
sau:
n
[min]f(X) = ∑c x
j=1
j j

∑a x
j =1
ij j ≥ bi , i = 1, m (11)

xj ≥ 0, j = 1, n

numite forme canonice, dacă bi ≥ 0, i = 1, m .

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.
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ă.
Programare liniară

Exemplu
Fie sistemul:
3x1 – 6x3 + x4 = 6
-x1 + x2 + 2x3 = 4
Matricea sistemului este:
⎛ 3 0 − 6 1⎞ ⎛3⎞ ⎛ 0⎞ ⎛ − 6⎞
A = ⎜⎜ ⎟⎟ , cu vectorii: a1 = ⎜⎜ ⎟⎟ ; a2 = ⎜⎜ ⎟⎟ ; a3 = ⎜⎜ ⎟⎟ ;
⎝ −1 1 2 0⎠ ⎝ −1⎠ ⎝ 1⎠ ⎝ 2 ⎠
⎛1⎞
a4 = ⎜⎜ ⎟⎟ .
⎝ 0⎠
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.
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 = 1, n .
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ă:
m m
b= ∑ y ja j = ∑ z ja j
j=1 j=1

Dar scrierea lui b în baza B este unică, deci yj = zj, j = 1, m .


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 = 1, k . 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,
1 1
i = 1, k , relaţiile (14) definesc două soluţii U şi V ∈ P. Dar U + V = X,
2 2
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ă.
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ă:
s s
X0 = ∑ λ i X i , λi ≥ 0, i = 1, s şi
i =1
∑λ
i =1
i = 1.

Dar f este o funcţională liniară şi putem scrie:


s
f(X0) = f( ∑ λ i X i ) = λ1f(X1) + ... + λsf(Xs) (16)
i =1

Dacă notăm m = f(X0) şi presupunem că Xj este vârful cu


proprietatea:
f(Xj) = min f(Xi)
1≤ i ≤ s

din relaţia (16) putem scrie:


s
m ≥ f(Xj) ⋅ ∑λ
i =1
i = 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ă.
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.
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 = 1, m şi f0 este valoarea funcţiei de eficienţă pentru X .

Deoarece orice vector aj, j = 1, n , poate fi scris în baza B, presupunem că:


a1ja1 + ...+ amjam = aj (18)
şi a1jc1 + ...+ amjcm = fj, j = 1, n (19)
unde ci este coeficientul funcţiei de eficienţă corespunzător vectorului ai,
i = 1, m . 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 = 1, n ,

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
n
avem: ∑x a
j=1
j j =b (20)

Din X ∈ PB rezultă că:


m

∑x a
i =1
i i =b (21)
Programare liniară

Relaţiile (20), (21), (18) ne permit să scriem:


m n n
⎛ m ⎞ m ⎛ n ⎞
b= ∑ x i a i = ∑ x a
j j = ∑ x j ∑ ij i ⎟ = ∑ ⎜ ∑ x ja ij ⎟a i (22)

⎝ i =1
a a ⎜
⎠ i =1 ⎝ j=1

i =1 j =1 j =1 ⎠
Unicitatea scrierii vectorului b în baza B implică, din (22), relaţia:
n
x i = ∑ x ja ij (23)
j=1

Atunci:
n m n m ⎛ n ⎞
f(X) – f( X ) = ∑ c x − ∑ c x = ∑ c x − ∑ c ⎜⎜ ∑ x a
j j i i j j i j ij
⎟=

j=1 i =1 j=1 i =1 ⎝ j=1 ⎠
n n
⎛ m ⎞ n
⎛ m
⎞ n
= ∑ c jx j − ∑ ⎜ ∑ cia ij ⎟ x j = ∑ ⎜ c j − ∑ c ja ij ⎟ x j = ∑ (c j − f j ) x j (24)
j =1 j=1 ⎝ i =1 ⎠ j=1 ⎝ i =1 ⎠ j=1

(am folosit pe parcurs relaţiile (23) şi (19)).


Se ştie că xj ≥ 0 şi dacă ∆j = cj – fj ≤ 0, (∀) j = 1, n 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 = 1, n ş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.
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ă:

b = ∑ x k a k =∑ y k a k (24)
k∈I k∈I '

Dar b = ∑ y k a k = ∑y a k k + y ja j .
k∈I ' k∈I \ {i}

Înlocuind aj din relaţia (18), avem:

b= ∑y a
k∈I \ {i}
k k + y j ∑ a kja k =
k∈I
∑y a
k∈I \ {i}
k k + yj ∑a
k∈I \ {i }
a + y ja ija i =
kj k

= ∑ (y
k∈I \ {i }
k + y ja kj )a k + y ja ija i (25)

Din relaţia (24) putem scrie că:


b = ∑ x ka k = ∑x a k k + x ia i (26)
k∈I k∈I \ {i}

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ă:

xi
yj =
a ij

xi
yk = xk - akj (27)
a ij
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:
xi
≥ 0, şi cum x i ≥ 0 trebuie ca aij > 0 (28)
a ij

xi xi xk
xk - akj ≥ 0, de unde θ = ≤ , k ∈ I’, (29)
a ij a ij a kj

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 ) = ∑c
k∈I '
k yk − ∑ ck x k =
k∈I
∑c
k∈I \{i}
k yk + c j y j − ∑c
k∈I \ {i }
k x k − ci x i

Ţinând seama de relaţiile (27) şi (19) vom avea:

xi ⎛ xi ⎞
f( Y ) - f( X ) = c j + ∑ c k ⎜ x k − a kj ⎟ − ∑ c k x k − c i x i =
a ij k∈I \{i} ⎜⎝ a ij ⎟ k∈I \{i}

xi xi ⎛ ⎞ x
= cj - ⎜ ∑ ck a kj + ci a ij ⎟ = i (cj – fj) > 0, dacă ∆j = cj – fj > 0
a ij a ij ⎜ ⎟ a
⎝ k∈I \{i} ⎠ ij

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.
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 = 1, n , 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 = 1, n , 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 c1 x1 1 ... 0 ... 0 a1m+1 ... a1j ...a1n
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮
ai ci xi 0 ... 1 ... 0 aim+1 aij ... ain
⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ iteraţie

am cm x m 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
dacă problema este de maxim.
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 = 1, n ; 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 = max (ch – fh), intră în noua bază vectorul aj;
∆ h >0

b) criteriul de ieşire din bază: dacă

xi ⎧⎪ x k ⎫⎪
θ= = min ⎨ ⎬ , cu k = 1, m , iese din bază vectorul ai.
a ij a kj > 0 ⎪⎩ a kj ⎪⎭

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;
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 = 1, n .
Aplicaţie
Să se determine:
[max]f(X) = 3x1 + 5x2 + 2x3 + x4
x1 + 2x2 + 3x3 + x4 = 20
4x1 + x2 + x3 ≤ 16

xj ≥ 0, j = 1,4 .
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 = 1,5 .

[max]f(X) = 3x1 + 5x2 + 2x3 + x4 + 0 ⋅ x5


Programare liniară

Matricea sistemului de restricţii obţinut este:


a1 a2 a3 a4 a5
⎛ 1 2 3 1 0⎞
A = ⎜⎜ ⎟⎟ şi conţine baza canonică B = ⎨a4, a5⎬.
⎝ 4 1 1 0 1⎠
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 1 20 1 2↓ 3 1 0 20:2
a5 0 16 4 1 1 0 1 16:1
fj 20 1 2 3 1 0
∆j = cj - fj 2 3 -1 0 0
a2 5 10 1/2 ↓ 1 3/2 1/2 0 10:1/2
← a5 0 6 7/2 0 -1/2 -1/2 1 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 5 64/7 0 1 11/7 4/7 -1/7
a1 3 12/7 1 0 -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 = 1,5 , 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ă.
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ă
356
X3 = (12/7, 64/7, 0,0,0)T, f(X3) = f0 = , care este soluţie optimă
7
356
pentru că ∆j ≤ 0, (∀) j = 1,5 , deci [max]f(X) = .
7

5. Observaţii la aplicarea algoritmului simplex

1. Din teorema 5 avem:


xi
f( Y ) – f( X ) = (cj – fj), de unde:
a ij

f( Y ) = f( X ) + θ ⋅ ∆j, (31)

xi
cu θ = , ∆j = cj – fj, aleşi prin criteriile de eliminare din bază, respectiv
a ij

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.
Programare liniară

3. Dacă ak şi ah ∉ B, dar ∆k = ∆h = max ∆j, pentru a decide ce vector


∆ j >0

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 = 1,5
a1 a2 a3 a4 a5
⎛− 2 3 1 0 0⎞
⎜ ⎟
A = ⎜ 5 −2 0 1 0⎟
⎜ 10 7 0 0 1 ⎟⎠

are baza canonică B = ⎨a3, a4, a5⎬
[max]f(X) = 20x1 + 14x2 + 0(x3 + x4 + x5).
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 0 24 -2 ↓ 3 1 0 0 -
← a4 0 50 5 -2 0 1 0 10
a5 0 140 10 7 0 0 1 14
fj 0 0 0 0 0 0
∆j = cj - fj 20 14 0 0 0
a3 0 44 0 11/5↓ 1 2/5 0 11
44:
5
a1 20 10 1 -2/5 0 1/5 0 -
← a5 0 40 0 11 0 -2 1 40:11
fj 200 20 -8 0 4 0
∆j 0 22 0 -4 0
← a3 0 36 0 0 1 4/5↓ -1/5 4
36:
5
a1 20 126/11 1 0 0 7/55 2/55 126 7
:
11 55
a2 14 40/11 0 1 0 -2/11 1/11
-
fj 280 20 14 0 0 2
∆j 0 0 0 0 -2
a4 0 45 0 0 5/4 1 -1/4
a1 20 63/11 1 0 -7/44 0 3/44
a2 14 130/11 0 1 10/44 0 2/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


126 40 126 40
[max]f(X) = 280 pentru x1 = şi x2 = , adică X1 = ( , ).
11 11 11 11
Dar ∆4 = 0 deşi a4 ∉ B. Am efectuat încă o iteraţie în tabel şi am
găsit o altă soluţie optimă:
63 130
X2 = ( , ).
11 11
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 = 1, m , 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:
xk xp xq
θ = min = = .
a kj > 0 a a a
1≤ k ≤ m kj pj qj

Dacă am alege eliminarea lui ap, a doua relaţie din (27) ar da


xp
yq = x q − a qj = 0 , deci soluţie degenerată ce conduce la ciclaj.
a pj
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:
x p + a p1ε + a p 2ε 2 + ... + a pn ε n
(32)
a pj

x q + a q1ε + a q 2 ε 2 + ... + a qn ε n
sau: , unde ε > 0, arbitrar de mic.
a qj

Practic aplicarea metodei constă în următoarele calcule: se formează


şirurile de rapoarte:
x p a p1 a pn
, ,..., (33)
a pj a pj a pj

x q a q1 a
şi: , ,..., qn (34)
a qj a qj a qj

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 7 3↓ 4 1 0 0 1 7:3
a4 2 1 3 -1 1 0 0 2:1
a5 4 2 -1 1 0 1 0 4:2
∆j = fj - cj 6 3 -5 0 0 0
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:
2 1 3 −1
, , , ,...
1 1 1 1
4 2 1 1
, ,− , ,...
2 2 2 2
Comparăm rapoartele de acelaşi ordin din cele două şiruri şi
⎛ 1⎞
observăm că primul raport mai mic este ⎜ − ⎟ apărut pe linia lui a5
⎝ 2⎠
3
(comparat cu valoarea corespunzătoare lui a4), deci a5 va fi eliminat şi
1
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
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 = 1, m , ş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 = 1, m .
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.
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 = 1,3
Rezolvare
Aducem problema la forma standard:
5x1 – x2 + 2x3 + x4 = 7
x1 + 2x2 – x3 – x5 = 4
3x1 + 2x2 + 4x3 = 2
xj ≥ 0, j = 1,5
Modele matematice în economie

Matricea asociată formei standard este:


a1 a2 a3 a4 a5
⎛5 −1 2 1 0⎞
⎜ ⎟
A = ⎜1 2 −1 0 − 1⎟
⎜3 2 4 0 0 ⎟⎠

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
⎛5 −1 2 1 0 0 0⎞
⎜ ⎟
A = ⎜1 2 −1 0 −1 1 0⎟
⎜3 2 4 0 0 0 1 ⎟⎠

ş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 0 7 5 -1↓ 2 1 0 0 0 -
α1 -M 4 1 2 -1 0 -1 1 0 4:2
← α2 -M 2 3 2 4 0 0 0 1 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 0 8 13/2 0 4 1 0 0 ⏐
α1 -M 2 -2 0 -5 0 -1 1 ⏐
a2 4 1 3/2 1 2 0 0 0 ⏐
fj 4-2M 2M+6 4 5M+8 0 M -M
∆j= cj - fj -2M-3 0 -5M-7 0 -M 0
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,
⎛ 2 1⎞
atunci: B = ⎜⎜ ⎟⎟ .
⎝ 1 4⎠
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:
⎛ 4 −1⎞
⎜ ⎟
B-1 = ⎜ 7 7 ⎟.
⎜ −1 2 ⎟
⎜ ⎟
⎝ 7 7 ⎠
Rezolvarea este corectă dacă XB = B-1b, unde b = (20, 16)T. Într-
⎛ 4 −1⎞
⎜ ⎟
adevăr: XB = B b = ⎜ 7
-1 7 ⎟⎛⎜ 20 ⎞⎟ = ⎛⎜ 64 / 7 ⎞⎟ , deci rezolvarea este corectă.
⎜ −1 2 ⎟⎜⎝ 16 ⎟⎠ ⎜⎝ 12 / 7 ⎟⎠
⎜ ⎟
⎝ 7 7 ⎠
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
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.
⎛ 1 1 − 2 0⎞ ⎛ 5⎞
⎜ ⎟ ⎜ ⎟
A = ⎜ 3 4 0 1 ⎟; b = ⎜ 9 ⎟ ; c = (6, -1, 4, -2); X = (x1, x2, x3, x4)T.
⎜ 2 1 1 2⎟ ⎜ 8⎟
⎝ ⎠ ⎝ ⎠
Transpusa matricei A:
⎛ 1 3 2⎞
⎜ ⎟
T ⎜ 1 4 1⎟
A =⎜ .
−2 0 1⎟
⎜ ⎟
⎜ 0 1 2 ⎟⎠

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.
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)
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:
CX = 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⎬
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)
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 = CX
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 ;
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.
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.
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 = 1,4 .

Forma standard va fi:


u1 + 2u2 + 3u3 + u5 = 10
2u1 + 2u3 + u4 + u6 = 8
3u2 + u3 + u4 + u7 = 5
ui ≥ 0; i = 1,7 .
[max]g(U) = 3u1 + 6u2 + 8u3 + u4 + 0(u5 + u6 + u7)

a1 a2 a3 a4 a5 a6 a7
⎛1 2 3 0 1 0 0⎞
⎜ ⎟
A = ⎜2 0 2 1 0 1 0⎟
⎜0 3 1 1 0 0 1 ⎟⎠

şi B = ⎨a5, a6, a7⎬ - baza iniţială.

Rezolvăm duala cu algoritmul simplex în următorul tabel.


Programare liniară

3 6 8 1 0 0 0
B CB UB θ
a1 a2 a3 a4 a5 a6 a7
←a5 0 10 1 2 3↓ 0 1 0 0 10:3
a6 0 8 2 0 2 1 0 1 0 8:2
a7 0 5 0 3 1 1 0 0 1 5:1
gj 0 0 0 0 0 0 0 0
∆j = c j - g j 3 6 8 1 0 0 0
a3 8 10/3 1/3 2/3 1 0↓ 1/3 0 0 -
←a6 0 4/3 4/3 -4/3 0 1 -2/3 1 0 4/3
a7 0 5/3 -1/3 7/3 0 1 -1/3 0 1 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 8 10/3 1/3 2/3↓ 1 0 1/3 0 0 10:2
a4 1 4/3 4/3 -4/3 0 1 -2/3 1 0 -
←a7 0 1/3 -5/3 11/3 0 0 1/3 -1 1 1:11
gj 84/3 4 4 8 1 2 1 0
∆j -1 2 0 0 -2 -1 0
a3 8 36/11 7/11 0 1 0 3/11 2/11 -2/11
a4 1 16/11 8/11 0 0 1 -6/11 7/11 4/11
a2 6 1/11 -5/11 1 0 0 1/11 -3/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:


⎛ 1 36 16 ⎞ 310
U = ⎜ 0, , , ,0,0,0 ⎟ şi [max]g(U) = .
⎝ 11 11 11 ⎠ 11
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ă.
T
310 ⎛ 24 5 6 ⎞
Citim: [min]f(X) = ,X= ⎜ , , ⎟ .
11 ⎝ 11 11 11 ⎠
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.
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 = 1,4 , cu:
a1 a2 a3 a4
⎛ 2 −1 1 0⎞
A = ⎜⎜ ⎟⎟
⎝ − 3 1 0 1⎠
unde baza iniţială B = ⎨a3, a4⎬, iar funcţia de eficienţă:
[max]g = 6u1 + u2 + 0(u3 + u4).
Programare liniară

6 1 0 0
B CB UB
a1 a2 a3 a4
←a3 0 4 2↓ -1 1 0
a4 0 5 -3 1 0 1 -
gj 0 0 0 0 0
∆j = cj-gj 6 1 0 0
a1 6 2 1 -1/2↓ 1/2 0 -
a4 0 11 0 -1/2 3/2 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 = 1, m , j = 1, n . Să determinăm planul optim de transport, altfel spus

cantităţile xij ce vor fi transportate de la Ai la Bj, i = 1, m , j = 1, n , astfel


încât cheltuielile totale de transport să fie minime.
Modele matematice în economie

Prezentăm datele problemei transporturilor (problema T) în


următorul tabel:
Bj
B1 ... Bj ... Bn D
Ai
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:
m n
[min]f(X) = ∑∑ c x
i =1 j=1
ij ij (1)

∑x
j=1
ij ≤ ai, i = 1, m ,
(2)
m

∑x
i =1
ij ≥ bj, j = 1, n ,

xij ≥ 0, i = 1, m , j = 1, n , (3)
deci modelul unei probleme de programare liniară, la care mai putem
adăuga condiţii de nenegativitate pentru ai, bj, cij, i = 1, m , j = 1, n .
Definiţia 1: Problema T se numeşte echilibrată dacă:
m n

∑ ai = ∑ b j .
i =1 j =1

În caz contrar problema T se numeşte neechilibrată.


Programare liniară

Observaţie: O problemă T neechilibrată se transformă în problemă T


echilibrată astfel:
n m
a) dacă ∑b < ∑a
j =1
j
i =1
i , se introduce un beneficiar Bn+1 fictiv, pentru

m n
care necesarul va fi bn+1 = ∑a − ∑b
i =1
i
j =1
j , iar costurile de transport

ci,n+1, i = 1, m vor fi egale cu zero;


n m
b) dacă ∑b > ∑a
j =1
j
i =1
i , se introduce un furnizor fictiv Am+1, pentru

n m
care disponibilul va fi am+1 = ∑ b j − ∑ a i , iar costurile de
j =1 i =1

transport cm+1, j, j = 1, n , 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
m n

∑a = ∑b
i =1
i
j=1
j (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

∑x j=1
kj < ak, k – fixat, 1 ≤ k ≤ m. Atunci:

m n m n n m

∑∑ x ij < ∑ a i = ∑ b j ≤ ∑∑ x ij
i =1 j=1 i =1 j=1 j=1 i =1

relaţie imposibilă, deoarece primul şi ultimul termen reprezintă aceeaşi


valoare.
Modele matematice în economie

Un raţionament analog se face pentru restricţiile de forma:


m

∑x
i =1
il > b k , 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:
m m n n m n

∑ a i = ∑∑ x ij =∑ ∑ x ij =∑ b j , adică relaţia (4).


i =1 i =1 j =1 j=1 i =1 j =1

Modelul matematic al unei probleme T echilibrate este:


m n
[min]f(X) = ∑∑ c x
i =1 j=1
ij ij (1’)

∑x
j =1
ij = a i , i = 1, m (2’)

∑x
i =1
ij = b j , j = 1, n

xij ≥ 0, i = 1, m , j = 1, n (3’)

În cele ce urmează vom presupune problema T echilibrată.


Definiţia 2: O matrice X = (xij), i = 1, m , j = 1, n 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ă.
Programare liniară

Demonstraţie:
Fie matricea X = (xij), i = 1, m , j = 1, n , unde
aib j m n
xij =
S
, i = 1, m , j = 1, n şi S = ∑ a i = ∑ b j . Atunci:
i =1 j=1

n n a ib j ai n
ai
∑ x ij = ∑
j =1 j =1 S
=
S
∑b
j =1
j =
S
S = a i , i = 1, m

m m a ib j bj m bj
∑x = ∑
i =1
ij
i =1 S
=
S
∑a i =1
i =
S
S = b j , j = 1, n

adică X satisface relaţiile (2’).


Dar xij ≥ 0, deoarece ai ≥ 0, bj ≥ 0, S > 0, (∀)i = 1, m şi (∀) j = 1, n .
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
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
⎛1 1 L 1 0 0 L 0 L 0 0 L 0⎞
⎜ ⎟
⎜0 0 L 0 1 1 L 1 L 0 0 L 0⎟
⎜ ⎟
⎜M M M M M M M M M M M M M⎟
⎜ ⎟
0 0 L 0 0 0 L 0 L 1 1 L 1⎟
M= ⎜
⎜1 0 L 0 1 0 L 0 L 1 0 L 0⎟
⎜ ⎟
⎜0 1 L 0 0 1 L 0 L 0 1 L 0⎟
⎜ ⎟
⎜M M M M M M M M M M M M M⎟
⎜ ⎟
⎝0 0 L 1 0 0 L 1 L 0 0 L 1⎠

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ă


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 r

∑ a ik = ∑ b jh .
k =1 h =1

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ă.
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 = 1, m , j = 1, n . Fie X = (xij), i = 1, m , j = 1, n , 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:
Bj
B1 B2 B3 B4 D
Ai
A1 3 1 2 4 20
A2 2 5 1 6 10
A3 7 3 3 1 30
N 12 9 18 21
Programare liniară

3 4
Problema este echilibrată: ∑ a i = ∑ b j = 60 .
i =1 j =1

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
1≤j≤n
î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.
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 = min ci1 şi se ia xl1 = min(al, b1), înlocuindu-se
1≤ i ≤ m

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 = min cij şi se ia xkp = min(ak, bp), iar ak şi bp se
1≤ i ≤ m
1≤ j≤ n

î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.
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:
m n
[min]f(X) = ∑∑ c x
i =1 j=1
ij ij (1’)

∑x
j =1
ij = a i , i = 1, m (2’a)

∑x
i =1
ij = b j , j = 1, n (2’b)

xij ≥ 0, i = 1, m , j = 1, n (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 = 1, m şi fiecărei

restricţii de tipul (2’b) variabila vj, j = 1, n .


Cum fiecare variabilă apare o singură dată în (2’a) şi o singură dată
în (2’b), duala va avea forma:
m n
[max]g = ∑a u + ∑b v
i =1
i i
j=1
j j (5)
Modele matematice în economie

ui + vj ≤ cij, i = 1, m , j = 1, n (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 = 1, m , j = 1, n .
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 = 1, m , j = 1, n , î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.
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 = 1, m şi vj, j = 1, n , completăm

matricea cu cantităţile c’ij = ui + vj şi o notăm C’ = (c’ij), i = 1, m , j = 1, n ,


numind-o matricea costurilor calculate (spre a o deosebi de matricea
costurilor reale C = (cij), i = 1, m , j = 1, n , dată iniţial).

Pasul 4. Determinăm matricea ∆ = (∆ij), i = 1, m , j = 1, n , cu

∆ij = c’ij – cij. Poate apărea una din situaţiile:

a) ∆ij ≤ 0, (∀) i = 1, m , (∀) j = 1, n , 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ă ∆ i 0 j0 = max ∆ij, cu ∆ij > 0, (i0, j0) ∉ D (D fiind
i, j

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
x i 0 j0 = θ > 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ă
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 = 1, m , (∀) j = 1, n .
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 = 1, m ,

j = 1, n sunt:

⎛ 3 1 − 3 − 5⎞ ⎛ 0 0 − 5 − 9⎞
⎜ ⎟ ⎜ ⎟
C’ = ⎜ 7 5 1 − 1 ⎟ şi ∆ = ⎜ 5 0 0 − 7⎟
⎜9 7 3 1 ⎟⎠ ⎜2 4 0 0 ⎟⎠
⎝ ⎝
Î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
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:

⎛3 1 2 0 ⎞ ⎛ 0 0 0 −1⎞
⎜ ⎟ ⎜ ⎟
C = ⎜ 2 0 1 − 1⎟ şi ∆ = ⎜ 0 − 5 0 − 7⎟
⎜4 2 3 1 ⎟ ⎜ − 3 −1 0 0 ⎟
⎝ ⎠ ⎝ ⎠

Deoarece toate elementele matricei ∆ sunt mai mici sau egale cu


zero, X2 este soluţia optimă şi costul total corespunzător este 101.
Modele matematice în economie

Practic este preferabil să se expună calculele sub formă de tabele.


Pentru problema rezolvată mai sus, tabelele sunt:
vj
3 1 -3 -5 ∆
ui
12 8 0 3 1 -3 -5 0 0 -5 -9 12-θ 8+θ
X1 1 9 4 7 5 1 -1 5 0 0 -7 θ 1-θ 9
9 21 6 9 7 3 1 2 4 0 0 9 21
vj
f1 = 106 3 1 2 0 θ=1
ui
11 9 0 3 1 2 0 0 0 0 -4
X2 1 9 -1 2 0 1 -1 0 -5 0 -7
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.
Programare liniară

vj
3 1 2 0 ∆
ui
2 9 9 0 3 1 2 0 0 0 0 -4
X3 10 -1 2 0 1 -1 0 -5 0 -7
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ă max ∆ij = ∆pq =∆rs, ∆ij > 0, p, r ∈ ⎨1, ..., m⎬, q, s ∈⎨1, ..., n⎬,
i, j

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 = 1, m

bj(ε) = bj, j = 1, n − 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.
Modele matematice în economie

Exemplu
Fie problema T, echilibrată:
Bj
B1 B2 B3 D
Ai
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.
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
B1 B2 B3 D
Ai
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
4 2 -1 ∆
ui
5 7 0 4 2 -1 0 0 -2 5-θ 7+θ
X1 5 10 3 7 5 2 4 0 0 θ 5-θ 10
2 3 7 5 2 3 3 0 2
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 = 1, m , j = 1, n

iar condiţia de optim este aceeaşi ∆ij ≤ 0, (∀)i = 1, m , j = 1, n .


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ă.
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
B1 B2 B3 D
Ai
A1 2 3 1 15
A2 4 1 0 9
N 7 11 8

Rezolvare
3 2
Deoarece N = ∑ b j = 26 şi D =
j=1
∑a
i =1
i = 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.
Modele matematice în economie

Avem acum de rezolvat următoarea problemă T modificată:


Bj
B1 B2 B3 D
Ai
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
2 3 1 ∆
ui
5 2 8 0 2 3 1 0 0 0 5+θ 2-θ 8
X1 9 -2 0 1 -1 -4 0 -1 9
2 -2 0 1 -1 0 1 -1 2-θ θ
vj
f1 = 33 2 2 1 θ=2
ui
7 8 0 2 2 1 0 -1 0
X2 9 -1 1 1 0 -3 0 0
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
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:


m n
f(X) = ∑∑ c x
i =1 j=1
ij ij .

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 = 1,4 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
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 = 1,4 . Beneficiul unei unităţi de
produs Pi va fi bi – ci; atunci beneficiul total va fi:
4
f = ∑ (b
i =1
i − ci ) x i , ş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 = 1,4 .

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.
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 = 1,3 .
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 = 1,3 .

3. Să se rezolve grafic problema:


[min]f(x) = x1 + 2x2
-x1 + x2 ≥ 2
x1 + 2x2 ≤ 4
5x1 – 3x2 ≤ 15
x1, x2 ≥ 0
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

(d1)

A (d3)

2
B

3 4 x1
(d2)

Mulţimea soluţiilor posibile este porţiunea haşurată. Soluţia optimă


⎛ 42 5 ⎞ ⎛ 21 25 ⎞
se va găsi în unul din vârfurile A(0, 2), B ⎜ , ⎟ , C ⎜ , ⎟ . Şi cum:
⎝ 13 13 ⎠ ⎝ 2 2⎠
f(A) = 0 + 2 ⋅ 2 = 4
42 5
f(B) = + 2⋅ =4
13 13
21 25 71
f(C) = + 2⋅ = = 35, 5.
2 2 2
42
[min]f(x) = 4 în A când x1 = 0 şi x2 = 2 sau în B când x1 = şi
13
5 ⎛ 42 5 ⎞
x2 = . Adică problema are ca soluţii optime X1 = (0, 2) şi X2 = ⎜ , ⎟ .
13 ⎝ 13 13 ⎠
Atunci orice combinaţie liniară convexă de forma:
X = λX1 + (1 - λ)X2, (∀) λ∈[0,1]
Programare liniară

este tot soluţie optimă, deci problema are o infinitate de soluţii optime date
⎛ 42 − 42λ 5 + 21λ ⎞
de: X = ⎜ , ⎟ , (∀)λ∈[0,1], obţinute prin înlocuirea lui
⎝ 13 13 ⎠
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:
21 25
[max]f = 35,5 în x1 = şi x2 = , deci soluţia unică este
2 2
⎛ 21 25 ⎞
X = ⎜ , ⎟.
⎝ 2 2⎠

4. Fie sistemul de inecuaţii:


x1 + 2x2 – 3x3 ≤ 3
2x1 – x2 – 6x3 ≥ 4

xj ≥ 0, j = 1,3 .
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 = 1,5 .
Modele matematice în economie

Matricea sistemului este:


a1 a2 a3 a4 a5
⎛1 2 − 3 1 0 ⎞
A = ⎜⎜ ⎟⎟
⎝ 2 − 1 − 6 0 − 1⎠

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 α
⎛ 1 2 − 3 1 0 0⎞
A = ⎜⎜ ⎟⎟
⎝ 2 −1 − 6 0 −1 1⎠

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. a1 a2 a3 a4 a5 α b Soluţia
princ.
a4 x4 1 2 -3 1 0 0 3 X1 = (0,0,0,3,0,4)T
α y 2 -1 -6 0 -1 1 4
a4 x4 0 5/2 0 1 1/2 -1/2 1 X2= (2,0,0,1,0,0)T
a1 x1 1 -1/2 -3 0 -1/2 1/2 2
a2 x2 0 1 0 2/5 1/5 -1/5 2/5 X3 = (11 , 2 ,0,0,0,0) T
a1 x1 1 0 -3 1/5 -2/5 2/5 11/5 5 5
a2 x2 0 1 0 2/5 1/5 -1/5 2/5 X4 = (0, 2 ,− 11 ,0,0,0) T
a3 x3 - 0 1 -1/15 2/15 -2/5 -11/15 5 15
1/3

X1 nu e soluţie pentru că y = 4 şi contrazice ipoteza în care a fost


introdus (y = 0).
Programare liniară

11
X4 nu este soluţie posibilă pentru că x3 = - < 0.
15
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 = 1,5
[max]f(x) = 15x1 + 20x2 + 0(x3 + x4 + x5)
Modele matematice în economie

b) Matricea tehnologică extinsă este:


a1 a2 a3 a4 a5
⎛3 8 1 0 0⎞
⎜ ⎟
A = ⎜7 3 0 1 0⎟
⎜1 0 0 0 − 1⎟⎠

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)
Programare liniară

Inegalităţile date sunt verificate de punctele din regiunea haşurată ale


⎛ 96 105 ⎞ ⎛ 21 ⎞
cărei vârfuri A(1, 0), B(3, 0), C ⎜ , ⎟ , D ⎜1, ⎟ sunt cele 4 soluţii
⎝ 47 47 ⎠ ⎝ 8⎠
posibile de bază ale problemei.
3540 135
Cum f(A) = 15; f(B) = 45; f(C) = = 79,5; f(D) = = 67,5
47 2
rezultă că soluţia optimă este în C şi:
3540 96 105
[max]f(x) = , cu x1 = şi x2 = .
47 47 47
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 = 1,5 , y ≥ 0
[max]f(x) = 15x1 + 20x2 + 0(x3 + x4 + x5) – My
a1 a2 a3 a4 a5 α
⎛3 8 1 0 0 0⎞
⎜ ⎟
A = ⎜7 3 0 1 0 0 ⎟ şi B = ⎨a3, a4, α⎬.
⎜1 0 0 0 −1 1 ⎟⎠

15 20 0 0 0 -M
B CB XB θ
a1 a2 a3 a4 a5 α
a3 0 24 3↓ 8 1 0 0 0 8
a4 0 21 7 3 0 1 0 0 3 I0
←α -M 1 1 0 0 0 -1 1 1
fj -M -M 0 0 0 M -M
∆j = cj - fj 15+M 20 0 0 -M 0
←a3 0 21 0 8↓ 1 0 3 -3 21/8
0 14 0 0 1 7 -7 14/3 I1
a4 3
a1 15 1 1 0 0 0 -1 1 -
fj 15 15 0 0 0 -15 15
∆j = cj - fj 0 20 0 0 15 -M-15
Modele matematice în economie

a2 20 21/8 0 1 1/8 0 3/8↓ -3/8 7


←a4 0 49/8 0 0 -3/8 1 47/8 -47/8 49/47 I2
a1 15 1 1 0 0 0 -1 1 -
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 20 105/47 0 1 7/47 3/47 0 0
a5 0 49/47 0 0 -3/47 8/47 1 -1 I3
a1 15 96/47 1 0 -3/47 8/47 0 0
fj 3540/47 15 20 95/47 60/47 0 0
∆j = cj - fj 0 0 -95/47 -60/47 0 -M

T
3540 ⎛ 96 105 ⎞
Deci [max]f(x) = ,X= ⎜ , ,0 ⎟ .
47 ⎝ 47 47 ⎠
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
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 = 1,6 şi i se aplică algoritmul simplex:

6 10 8 0 0 0
B CB UB θ
a1 a2 a3 a4 a5 a6
a4 0 20 2 2↓ 2 1 0 0 10
←a5 0 18 3 2 1 0 1 0 9
a6 0 1 3 -1 -1 0 0 1 -
gj 0 0 0 0 0 0 0
∆j = c j - g j 6 10 8 0 0 0
←a4 0 2 -1 0 1↓ 1 -1 0 2
a2 10 9 3/2 1 1/2 0 1/2 0 18
a6 0 10 9/2 0 -1/2 0 1/2 1 -
gj 90 15 10 5 0 5 0
∆j = c j - g j -9 0 3 0 -5 0
a3 8 2 -1 0 1 1 -1 0
a2 10 8 2 1 0 -1/2 1 0
a6 0 11 4 0 0 1/2 0 1
gj 96 12 10 8 3 2 0
∆j = c j - g j -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.
Modele matematice în economie

7. Să se determine planul optim de transport pentru următoarea


problemă:
Bj
B1 B2 B3 B4 D
Ai
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
4 3
Deoarece N = ∑ b j = 80, iar D =
j=1
∑a
i =1
i = 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
B1 B2 B3 B4 B5 D
Ai
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
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
-1 -2 1 2 0 ∆
ui
15 5 10 0 -1 -2 1 2 0 -4 -4 0 0 0 15 5+θ 10-θ
X1 20 0 -1 -2 1 2 0 -5 -5 -2 0 0 20
10 15 15 3 2 1 4 5 3 0 0 0 0 3 10 15 15-θ θ
f1 = 175 vj
-1 -2 1 2 0 θ = 10
ui
15 15 0 -1 -2 1 2 0 -4 -4 0 0 0
X2 20 0 -1 -2 1 2 0 -5 -5 -2 0 0
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:
Bj
B1 B2 B3 B4 D
Ai
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
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
1 2 1 0 ∆
ui
4 2 0 1 2 1 0 0 0 -2 -4 4-θ 2+θ
X1 4 4 1 2 3 2 1 -2 0 0 1 4-θ 4+θ
4 6 1 2 3 2 1 2 1 0 0 θ 4-θ 6
vj
f1 = 42 1 2 3 2 θ=4
ui
0 6 0 1 2 3 2 0 0 0 -2 0 6
X2 8 -1 0 1 2 1 -4 -2 0 1 8-θ θ
4 0 6 -1 0 1 2 1 0 -1 0 0 4 0+θ 6-θ
vj
f2 = 34 1 2 3 1 θ=6
ui
0 6 0 1 2 3 1 0 0 0 -3
X3 2 6 -1 0 1 2 0 -4 -2 0 0
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.
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:

Bj
B1 B2 B3 D
Ai
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.
Bj
B1 B2 B3 D
Ai
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
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
3 3 4 ∆
ui
5 10 0 3 3 4 -2 0 0
X1 10 2 5 5 6 0 -3 -3
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:
Bj
B1 B2 B3 D
Ai
A1 5 4 2 90
A2 2 - - 70
A3 3 1 6 140
N 50 60 40
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:

Bj
B1 B2 B3 B4 D
Ai
A1 5 4 2 0 90
A2 2 M M 0 70
A3 3 1 6 0 140
N 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
2 1 2 0 ∆
ui
40 50 0 2 1 2 0 -3 -3 0 0
X1 50 20 0 2 1 2 0 0 1-M 2-M 0
60 80 0 2 1 2 0 0 0 -4 0
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.
4 TEORIA JOCURILOR

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
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.
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)
a b a b a b a b

a b a b
1 1 1 1

a b
2 2

0
1

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
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) (a, b, a)
(1, -1) (-1, 2)
A2 = (a, b) (a, a, b) (a, b, b)
(2, 1) (3, 1)
A3 = (b, a) (b, a, a) (b, b, a)
(-2, 1) (2, 3)
A4 = (b, b) (b, a, b) (b, b, b)
(1, -3) (1, 2)
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 B1 = (a) B2 = (b)
A
A1 = (a, a) 2 4
A2 = (a, b) -1 5
A3 = (b, a) 1 -2
A4 = (b, b) 3 -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
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:

⎛ a11 L a1n ⎞
⎜ ⎟
A= ⎜ M M M ⎟ sau A = (aij), i = 1, m , j = 1, n .
⎜a ⎟
⎝ m1 L a mn ⎠
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 P 1, notată
A = ⎨A1,..., Am⎬;
b) mulţimea strategiilor pure ale jucătorului P 2, notată
B = ⎨B1,...,Bn⎬;

c) funcţia de câştig f: A × B → ℝ, definită prin f(Ai, Bj) = aij,

i = 1, m , j = 1, n .
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 = 1, m , j = 1, n .
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).
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:
P2
(S) (V)
P1
(S) 1 -1
(V) -1 1

2.1 Jocuri cu punct şa

Fie un joc G = (A, B, f), cu matricea A = (aij), i = 1, m , j = 1, n .


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 = min aij, i = 1, m .
1≤ j≤ n

Dintre cele m strategii pure, P1 va alege acea strategie Ai care dă cea


mai mare valoare a lui αi. Notând:
α = max αi = max min aij
i i j

α se va numi valoarea inferioară a jocului şi se mai notează v G .


Modele matematice în economie

Strategia care asigură lui P1 un câştig egal cu v G 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 = max aij, j = 1, n .
1≤ i ≤ m

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
β = min βj = min max aij
j j i

β se va numi valoarea superioară a jocului şi se mai notează cu v G .

Strategia care asigură lui P2 o pierdere egală cu v G se numeşte


strategie minimax.
Exemplu
Fie jocul caracterizat de matricea:
B
A B1 B2 B3 B4
A1 0 1 -2 2
A2 1 0 3 2
A3 2 4 -3 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 = min aij, i = 1,3 , obţinem:
1≤ j≤ 4

α1 = min⎨0,1,-2,2⎬ = -2
Teoria jocurilor

α2 = min⎨1,0,3,2⎬ = 0
α3 = min⎨2,4,-3,3⎬ = -3
Valoarea inferioară a jocului este:
v G = max αi = max⎨-2,0,-3⎬ = 0 = α2.
1≤ i ≤ 3

Determinăm βj = max aij, j = 1,4 . Obţinem:


1≤ i ≤ 3

β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:
v G = min βj = min⎨2,4,3⎬ = 2 = β1.
1≤ j≤ 4

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 0 1 -2 2 -2
A2 1 0 3 2 0
A3 2 4 -3 3 -3
βj 2 4 3 3 0
2

Dacă într-un joc avem:


vG = vG = 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
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 1 6 0 3 0
A2 3 3 5 6 3
A3 2 1 0 9 0
A4 3 4 5 7 3
βj 3 6 5 9 α=3
β=3

Observăm că α = v G = 3 = v G = β

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.
Teoria jocurilor

Exemplu
Fie jocul cu matricea:
B
A B1 B2 B3 B4 B5
A1 4 -1 2 1 3
A2 3 -2 0 -1 2
A3 1 2 0 -1 -2
A4 2 -6 3 1 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:
⎛ −1 1 3 ⎞
⎜ ⎟
A = ⎜ 2 −1 − 2⎟ .
⎜− 6 1 0 ⎟⎠

Î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ă
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:
m
a) X = ⎨x ⎪ x = (x1, ..., xm), xi ≥ 0, i = 1, m , ∑x
i =1
i = 1⎬, cu

xi = P(Ai), i = 1, m reprezentând probabilitatea de alegere a


strategiei Ai, iar X este mulţimea strategiilor mixte pentru P1;
n
b) Y = ⎨y ⎪ y = (y1, ..., yn), yj ≥ 0, j = 1, n , ∑y
j =1
j = 1⎬ unde

yj = P(Bj), j = 1, n , este probabilitatea de alegere a strategiei Bj,


iar Y mulţimea strategiilor mixte pentru P2;
Teoria jocurilor

c) ϕ: X × Y → ℝ, cu:
m n
ϕ(x, y) = ∑∑ a x y
i =1 j =1
ij i j dacă P1 foloseşte strategia mixtă

x = (x1, ..., xm), iar P2 foloseşte strategia mixtă y = (y1, ..., yn).
Dacă introducem variabila aleatoare:
⎛a a 2 j L a mj ⎞
(x, j): ⎜⎜ 1 j ⎟ , valoarea medie a acesteia o notăm:
⎝ x1 x 2 L x m ⎟⎠
m
ϕ(x, j) = ∑a i =1
ij xi ş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:
⎛a a i 2 L a in ⎞
(i, y): ⎜⎜ i1 ⎟ va avea valoarea medie:
⎝ y1 y 2 L y n ⎟⎠
n
ϕ(i, y) = ∑a y
j =1
ij j ş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ă:
m n m n
ϕ(x, y) = ∑∑ a ijx i y j = ∑ x iϕ(i, y) = ∑ y jϕ( x, j) , de unde se vede
i =1 j=1 i =1 j=1

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 Γ = max min ϕ(x, y)
x∈X y∈Y

v Γ = min max ϕ(x, y)


y∈Y x∈X
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:
max min f(x, y) şi min max f(x, y), atunci
x∈X y∈Y y∈Y x∈X

max min f(x, y) ≤ min max f(x, y). (1)


x∈X y∈Y y∈Y x∈X

Demonstraţie:
Notăm g(x) = min f(x, y), (∀) x ∈ X şi h(y) = max f(x, y), (∀) y ∈Y.
y∈Y x∈X

Din definiţia extremelor, avem:


g(x) ≤ f(x, y), (∀) y ∈Y şi (∀)x ∈ X
Atunci:
max g(x) ≤ max f(x, y) = h(y), (∀) y ∈Y, şi deci:
x∈X x∈X

max g(x) ≤ min h(y).


x∈X y∈Y

Revenind la semnificaţiile lui g şi h, rezultă relaţia (1).


Consecinţă 1. Pentru orice joc matriceal G = (A, B, f) există v G şi

v G şi v G ≤ v G .

Demonstraţie:
Existenţa celor două valori, v G şi v G 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 v G ≤ v G .


Teoria jocurilor

Teorema 2
În ipotezele teoremei 1, o condiţie necesară şi suficientă ca
max min f(x, y) = min max f(x, y). (2)
x∈X y∈Y y∈Y x∈X

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 min f(x, y) şi fie y0 ∈ Y punctul care
y∈Y

minimizează expresia max f(x, y), adică:


x∈X

min f(x0, y) = max min f(x, y)


y∈Y x∈X y∈Y

max f(x, y0) = min max f(x, y).


x∈X y∈Y x∈X

De aici şi din relaţia (2) rezultă că:


min f(x0, y) = max f(x, y0) = w.
y∈Y x∈X

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 min f(x0, y) ≥ w.
y∈Y

Analog, din f(x, y0) ≤ w, (∀) x ∈ X, rezultă că şi max f(x, y0) ≤ w,


x∈X

deci max f(x, y0) ≤ w ≤ min f(x0, y), (∀) x ∈ X, (∀) y ∈ Y.


x∈X y∈Y

Dar min max f(x, y) ≤ max f(x, y0) ≤ w


y∈Y x∈X x∈X
Modele matematice în economie

max min f(x, y) ≥ min f(x0, y) ≥ w


x∈X y∈Y y∈Y

şi de aici, în baza tranzitivităţii relaţiei „≤”, rezultă că:


min max f(x, y) ≤ max min f(x, y).
y∈Y x∈X x∈X y∈Y

Această relaţie, împreună cu relaţia (1), implică


w = max min f(x,y) = min max f(x,y), fapt ce încheie demonstraţia.
x∈X y∈Y y∈Y x∈X

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 v G = v G = 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 = 1, m ,

j = 1, n , 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 = max min aij = min max aij
i j j i

adică elementul aiojo este cel mai mic din linia i0 şi în acelaşi timp cel mai
mare din coloana j0.
Strategiile A i 0 şi B j0 corespunzătoare punctului şa sunt strategii

optime.
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 = 1, m , j = 1, n şi fie Γ = (X, Y, ϕ) jocul mediat


corespunzător. Atunci există expresiile:
v Γ = max min ϕ(x, y) şi v Γ = min max ϕ(x, y) şi v Γ = v Γ .
x∈X y∈Y y∈Y x∈X

Demonstraţie:
Să demonstrăm existenţa valorilor v Γ şi v Γ .

Pentru orice y = (y1, ..., yn) ∈ Y funcţia


m n
ϕ(x, y) = ∑∑ a x y
i =1 j =1
ij i j este funcţie de x = (x1, ..., xm) ∈X,

continuă şi liniară. Într-adevăr:


n n
ϕ(x, y) = x1 ∑ a1 j y j + ... + x m ∑ a mj y j , deci este mărginită şi îşi atinge
j =1 j =1

marginile pe X.
Deci există max ϕ(x, y) pentru orice y ∈Y, iar această funcţie este
x∈X

liniară în y ∈ Y, deci este şi continuă. Cum Y este o parte închisă a lui ℝn,
rezultă că există max min ϕ(x, y).
x∈X y∈Y

Analog se arată că există min max ϕ(x, y) şi existenţa e demonstrată.


y∈Y x∈X

Din teorema 1, relaţia (1) putem scrie că


max min ϕ(x, y) ≤ min max ϕ(x, y) (4)
x∈X y∈Y y∈Y x∈X

adică v Γ ≤ v Γ .
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 = 1, m , j = 1, n şi x = (x1, ..., xm), y = (y1, ..., yn)
îndeplinesc condiţiile:
m n
xi ≥ 0, ∑x
i =1
i = 1, yj ≥ 0, ∑y
j=1
j = 1, atunci există o pereche de

asemenea vectori x, y pentru care numai una din următoarele situaţii este
adevărată:
m
i) ∑a x
i =1
ij i ≥ 0, j = 1, n ;

n
ii) ∑a
j=1
ij y j ≤ 0, i = 1, m .

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 = 1, n , de unde:
n
ϕ(x, y) = ∑ (a
j=1
1j x 1 + ... + a mj x m ) y j ≥ 0, (∀) y ∈ Y, deci

min ϕ(x, y)≥0, de unde rezultă că şi max min ϕ(x, y)≥0.


y∈Y x∈X y∈Y

Dacă situaţia (ii) din lemă este adevărată, există y = (y1, ..., yn) ∈ Y
astfel încât
ai1y1 + ... + ainyn ≤ 0, i = 1, m , de unde:
m
ϕ(x, y) = ∑ (a
i =1
y + ... + a in y n ) x i ≤ 0, (∀) x ∈ X, deci şi
i1 1

max ϕ(x, y) ≤ 0, de unde rezultă că şi min max ϕ(x, y) ≤ 0.


x∈X y∈Y x∈X
Teoria jocurilor

Cum numai una dintre cele două situaţii din lemă are loc, niciodată
nu se va verifica relaţia
max min ϕ(x, y) < 0 < min max ϕ(x, y) (5)
x∈X y∈Y y∈Y x∈X

Fie Gk = (A, B, fk) având matricea Ak = (aij – k); i = 1, m , j = 1, n ,

k ∈ℝ şi jocul mediat corespunzător Γk = (X, Y, ϕk), ϕk fiind câştigul mediu


în jocul mediat cu matricea Ak, adică:
m n m n m n
ϕk(x, y) = ∑∑ (a ij − k )x i y j =∑ ∑ a ijx i y j − k ∑∑ x i y j .
i =1 j=1 i =1 j=1 i =1 j=1

Cum ∑∑ x y
i j
i j = 1, obţinem:

ϕk(x, y) = ϕ(x, y) – k (6)


Pentru jocul Γk, rezultă din (5) că nu poate avea loc inegalitatea:
max min ϕk(x, y) < 0 < min max ϕk(x, y)
x∈X y∈Y y∈Y x∈X

sau ţinând seama de (6) nu poate avea loc relaţia


max min ϕ(x, y) – k < 0 < min max ϕ(x, y) – k
x∈X y∈Y y∈Y x∈X

care se mai scrie:


max min ϕ (x, y) < k < min max ϕ(x, y), (∀) k ∈ℝ.
x∈X y∈Y y∈Y x∈X

Negarea acestei ultime relaţii implică:


max min ϕ(x, y) ≥ min max ϕ(x, y) sau
x∈X y∈Y y∈Y x∈X

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 = 1, m , j = 1, n fără punct şa este dată de valoarea vΓ = v Γ = v a

jocului mediat Γ = (X, Y, ϕ) asociat lui.


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) = max min ϕ(x, y) = min max ϕ(x, y).
x∈X y∈Y y∈Y x∈X

Teorema 4 [6]
Dacă G = (A, B, f) şi Γ(X, Y, ϕ) jocul mediat asociat, atunci:

v G ≤ vΓ ≤ vΓ ≤ v G

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
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 a 12 ⎞
A = ⎜⎜ 11 ⎟⎟ .
⎝ a 21 a 22 ⎠
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.
Modele matematice în economie

Sau matriceal:
⎛ v⎞
AyT = ⎜⎜ ⎟⎟ şi xA = (v, v). (8)
⎝ v⎠
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:
1
v= .
JA −1J T
Atunci, din (8’) vom avea:
JA −1
x= .
JA −1J T
Prima relaţie din (8) se mai scrie: AyT = vJT, de unde:
A −1J T
yT = A-1(vJT) = .
JA −1J T
Dacă A este singulară (A-1 nu există), echivalentele formulelor de
mai sus vor fi ([16]):
JA * A * JT |A|
x= T
; y T
= T
; v= , (9)
JA * J JA * J JA * J T
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ă.
Teoria jocurilor

Exemplu
Să se determine soluţia jocului matriceal:
⎛ 2 1⎞
A = ⎜⎜ ⎟⎟ .
⎝ 0 3⎠
Rezolvare
⎛ 3 − 1⎞
Jocul nu are punct şa. Matricea A* = ⎜⎜ ⎟⎟ , ⎪A⎪ = 6,
⎝0 2 ⎠
⎛ 3 − 1⎞ ⎛ 3 − 1⎞ ⎛1⎞ ⎛ 2 ⎞
JA* = (1,1) ⎜⎜ ⎟⎟ = (3, 1); A*JT = ⎜⎜ ⎟⎟ ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ ;
⎝ 0 2 ⎠ ⎝ 0 2 ⎠ ⎝1⎠ ⎝ 2 ⎠
⎛ 2⎞
JA*JT = (1, 1) ⎜⎜ ⎟⎟ = 4.
⎝ 2⎠
Introducând rezultatele obţinute în (9) avem:
⎛3 1⎞ ⎛1 1⎞ 3
x = ⎜ , ⎟, y = ⎜ , ⎟ , v = .
⎝ 4 4⎠ ⎝ 2 2⎠ 2
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
= 1, m , j = 1, n , pentru jocul Γ = (X, Y, f), soluţia şi valoarea jocului se
determină ([9], [21]) cu ajutorul formulelor:
JrA * J r (A*)T |A|
x= T
, y = * T
, v= (9’)
JrA * Jr JrA Jr J r A * J Tr
Î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;
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 ...a ⎞
A = ⎜⎜ 11 1n ⎟⎟
⎝ a 21 ...a 2 n ⎠
şi x = (x1, x2) e strategia jucătorului P1, atunci acesta urmăreşte să
maximizeze funcţia v(x) – valoarea jocului.
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:
⎛ − 2 4 − 4⎞
A = ⎜⎜ ⎟⎟ .
⎝ 8 − 6 16 ⎠
Rezolvare
Strategiile lui P1 verifică sistemul:
-2x1 + 8x2 ≥ v
4x1 – 6x2 ≥ v
-4x1 + 16x2 ≥ v
x1 +x2 = 1
x1, x2 ≥ 0, v – oarecare.
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 = -2+10x2

v
4
v = -4+20x2

1 M(0,3; 1)

0 1 x2

-1

v = 4-10x2
-2

-4
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
⎛− 2 4 ⎞
A0 = ⎜⎜ ⎟⎟ . Într-adevăr,
⎝ 8 − 6⎠
⎛ − 6 − 4⎞ ⎛ − 6 − 4⎞
A *0 = ⎜⎜ ⎟⎟ , ⎪A0⎪ = - 20, JA*0 = (1,1)⎜⎜ ⎟⎟ = (-14, -6).
⎝ − 8 − 2⎠ ⎝ − 8 − 2⎠
⎛ − 6 − 4 ⎞⎛1⎞ ⎛ − 10 ⎞ ⎛ − 10 ⎞
A*0 J T = ⎜⎜ ⎟⎟⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ ; JA *0 JT = (1,1) ⎜⎜ ⎟⎟ = - 20.
⎝ − 8 − 2 ⎠⎝1⎠ ⎝ − 10 ⎠ ⎝ − 10 ⎠
JA*0 1
x= * T
= − (-14, -6) = (0,7; 0,3).
JA 0 J 20

| A 0 | − 20
v= = = 1.
JA *0 J T − 20

A*0 J T 1 ⎛ − 10 ⎞ ⎛ 0,5 ⎞
yT = = − ⎜⎜ ⎟ = ⎜ ⎟ de unde y = (0,5; 0,5; 0).
* T
JA 0 J 20 ⎝ − 10 ⎟⎠ ⎜⎝ 0,5 ⎟⎠
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 = 1, m , j = 1, n de


valoare v, având jocul mediat corespunzător Γ = (X, Y, ϕ).
Modele matematice în economie

Dacă jucătorul P1 foloseşte strategiile Ai, cu probabilităţile xi,


i = 1, m , poate spera la un câştig egal cel puţin cu valoarea v a jocului,

pentru orice strategie Bj, j = 1, n , 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 = 1, m .

Dacă jucătorul P2 foloseşte strategiile Bj cu probabilităţile yj, j = 1, n ,


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 = 1, n .

Sistemul (I) corespunde condiţiei ϕ(x, j) ≥ v, j = 1, n , 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.
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 = ( a ij )

cu a ij = aij + k > 0, (∀)i = 1, m , j = 1, n şi k > 0.

xi yj
Notăm Xi = , i = 1, m , Yj = , j = 1, n .
v v
Condiţiile ca xi şi respectiv yj să fie probabilităţi, devin:
1
X1 + ...+ Xm =
v
1
Y1 + ...+ Yn =
v
Deoarece jucătorul P1 urmăreşte obţinerea celei mai mari valori a
1
câştigului v, deci a celei mai mici valori a lui , el îşi propune să obţină
v
minf = X1 + ... + Xm.
Jucătorul P2 urmăreşte obţinerea celei mai mici pierderi v, adică cea
1
mai mare valoare a lui , deci îşi propune să obţină maxg = Y1 + ...+ Yn.
v
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:
1
[min]f = = X1 + ...+ Xm
v
a11X1 + ... + am1Xm ≥ 1

(I) ∶
a1nX1 + ... + amnXm ≥ 1

Xi ≥ 0, i = 1, m
Modele matematice în economie

1
[max]g = = Y1 + ...+ Yn
v
a11Y1 + ... + a1nYn ≤ 1

(II) ∶
am1Y1 + ... + amnYn ≤ 1

Yj ≥ 0, j = 1, n
Prin rezolvarea uneia dintre cele două duale se obţin strategiile mixte
optime ale ambilor jucători precum şi valoarea jocului v:
1 1
v= = .
[min]f [max]g
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 = 1,3 şi Bj, j = 1,3 , 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:
Bj
B1 B2 B3
Ai
A1 1 -1 0
A2 -1 1 -1
A3 0 1 1

Să se determine strategia firmei A în faţa concurentei B.


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.
y
y1 y2 y3 αi
x
x1 1 -1 0 -1
x2 -1 1 -1 -1
x3 0 1 1 0
0
βj 1 1 1
1

α = 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 = 1,3

xi 1
sau cu notaţiile Xi = , i = 1,3 şi [min]f =
v v
Modele matematice în economie

1
[min]f = = X1 + X2 + X3
v
X1 – X2 ≥ 1
(I) -X1 + X2 + X3 ≥ 1
-X2 + X3 ≥ 1
Xi ≥ 0, i = 1,3

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 = 1,3

yj 1
Cu notaţiile Yj = , j = 1,3 şi [max]g = , avem:
v v
1
[max]g = = Y1 + Y2 + Y3
v
Y1 – Y2 ≤ 1
(II) -Y1 + Y2 - Y3 ≤ 1
Y2 + Y3 ≤ 1
Yj ≥ 0, j = 1,3

Se rezolvă prin algoritmul simplex al doilea model, aducând


problema la forma standard.
Teoria jocurilor

Y1 – Y2 + Y4 = 1
-Y1 + Y2 – Y3 + Y5 = 1
Y2 + Y3 + Y6 = 1
Yj ≥ 0, j = 1,6
1
[max]g = = Y1 + Y2 + Y3 + 0(Y4 + Y5 + Y6)
v
1 1 1 0 0 0
B CB YB θ
a1 a2 a3 a4 a5 a6
←a4 0 1 1↓ -1 0 1 0 0 1
a5 0 1 -1 1 -1 0 1 0 -
a6 0 1 0 1 1 0 0 1 -
gj 0 0 0 0 0 0 0
∆j = cj - gj 1 1 1 0 0 0
a1 1 1 1 -1 ↓ 0 1 0 0 -
a5 0 2 0 0 -1 1 1 0 -
←a6 0 1 0 1 1 0 0 1 1
gj 1 1 -1 0 1 0 0
∆j = cj - gj 0 2 1 -1 0 0
a1 1 2 1 0 1 1 0 1
a5 0 2 0 0 -1 1 1 0
a2 1 1 0 1 1 0 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
1 1
Atunci v = = .
[max]g 3
1 2 1 1 1
y1 = vY1 = ⋅ 2 = , y2 = vY2 = ⋅ 1 = , y3 = vY3 = ⋅ 0 = 0
3 3 3 3 3
1 1 1 1 2
x1 = vX1 = ⋅ 1 = , x2 = vX2 = ⋅ 0 = 0, x3 = vX3 = ⋅ 2 = .
3 3 3 3 3
Firma A va avea strategia mixtă
Modele matematice în economie

1 2
x = ( , 0, ), adică va trebui să producă 33, 33% produse din
3 3
primul sortiment iar restul 66,66% din al treilea sortiment. Acest plan de
1
producţie îi asigură firmei A un câştig, fără nici un risc, de în vreme ce
3
1
concurenta ei, firma B, va avea o pierdere de .
3
Î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.
1
Pasul 5. Determinăm: v = , xi = vXi, i = 1, m şi yj = vYj,
[max]g

j = 1, n , 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.
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 = 1, m , j = 1, n , 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 = min ⎨aij⎬ şi Mi = max ⎨aij⎬, i = 1, m .
j j

Fiecărei strategii Ai îi asociem expresia:


αMi + (1 - α)mi, i = 1, m .
Modele matematice în economie

Strategia optimă va fi cea care corespunde la:


max [αMi + (1 - α)mi]
i

Î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 = 1,4 şi în orice stare Bj, j = 1,4 a naturii este:

B1 B2 B3 B4
A1 2 4 3 3
A2 3 2 3 2
A3 1 5 2 1
A4 3 3 2 3

Să se determine în funcţie de α strategia optimă a lui P1.


2
Pentru α = care este strategia optimă?
3

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 2 4 3 3 2 4 2α+2
A2 3 2 3 2 2 3 α+2
A3 1 5 2 1 1 5 4α+1
A4 3 3 2 3 2 3 α+2
Teoria jocurilor

Ca să determinăm max [αMi + (1 - α)mi], ştiind că α ∈ [0,1],


i

observăm că α + 2 ≤ 2α + 2, (∀)α ∈ [0,1]. Merită studiate cazurile:


1
a) 4α + 1 < α + 2, de unde α < ;
3
1 1
b) α + 2 ≤ 4α + 1 < 2α + 2, de unde ≤α< ;
3 2
1
c) 2α + 2 ≤ 4α + 1, de unde α ≥ .
2
1
Deci pentru α ∈ [0, ), 2α + 2 este cea mai mare valoare şi cum ea
3
corespunde strategiei A1, aceasta este strategia optimă.
1 1
Pentru α ∈ [ , ), tot 2α + 2 este valoarea maximă deci A1 e
3 2
strategie optimă.
1
Pentru α ∈ [ , 1], 4α + 1 e valoarea maximă şi A3 este strategia
2
optimă.
2 1
În particular α = ∈ [ , 1], deci A3 este strategia optimă.
3 2

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
1
starea Bj este , (∀) j = 1, n .
n
Modele matematice în economie

Dacă jucătorul P1 va alege strategia Ai, câştigul său va fi


n
1
n
∑a
j=1
ij , care este valoarea medie a variabilei aleatoare

discrete cu repartiţia:
⎛ a i1 a i 2 L a in ⎞
⎜1 1 1 ⎟⎟ .
⎜ L
⎝n n n⎠
P1 va alege strategia pentru care câştigul său mediu este maxim:
⎧1 n ⎫
max ⎨ ∑ a ij ⎬ .
1≤ i ≤ m n
⎩ j=1 ⎭
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 = 1, n şi
n

∑y
j=1
j =1, câştigul mediu al statisticianului P1 când foloseşte strategia Ai va

fi, conform formulei din paragraful 2.2:


n
ϕ(i, y) = ∑a y
j =1
ij j , iar câştigul mediu va fi maxim pentru strategia

corespunzătoare valorii:
max ϕ(i, y).
1≤ i ≤ m

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.
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:
1 2 4 2
, , , .
9 9 9 9
Rezolvare
1 4
a) Ataşăm matricei jocului coloana ∑ a ij :
n j=1

1 4
B1 B2 B3 B4 ∑ a ij
n j=1
A1 2 4 3 3 1
⋅12
4
1
A2 3 2 3 2 ⋅10
4
1
A3 1 5 2 1 ⋅9
4
A4 3 3 2 3 1
⋅11
4

1 4 1
Deci max ⎨
1≤i ≤ 4

4 j=1
a ij ⎬ este
4
⋅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 = 1,4 . Obţinem:
1 2 4 2 1
ϕ(1, y) = ⋅2 + ⋅4 + ⋅ 3 + ⋅3 = ⋅28;
9 9 9 9 9
Modele matematice în economie

1 2 4 2 1
ϕ(2, y) = ⋅3 + ⋅2 + ⋅ 3 + ⋅2 = ⋅23;
9 9 9 9 9
1 2 4 2 1
ϕ(3, y) = ⋅1 + ⋅5 + ⋅ 2 + ⋅1 = ⋅21;
9 9 9 9 9
1 2 4 2 1
ϕ(4, y) = ⋅3 + ⋅3 + ⋅ 2 + ⋅3 = ⋅23.
9 9 9 9 9
1
Cea mai mare valoare este ⋅ 28 şi corespunde lui ϕ(1, y), deci A1
9
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 = 1, m , j = 1, n , se formează o nouă
matrice R = (rij), numită matricea regretelor, unde elementul:
rij = max akj – aij, i = 1, m , j = 1, n , adică rij este dat de diferenţa
1≤ k ≤ m

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:
min ⎨ max rij⎬, adică linia pe care cel mai mare regret este minim.
1≤ i ≤ m 1≤ j≤ n

Exemplu
Pentru acelaşi joc din ultimele două exemple, aplicând criteriul
regretelor, să se determine strategia ce va fi aleasă de P1.
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 max rij
j

A1 1 1 0 0 1
A2 0 3 0 1 3
A3 2 0 1 2 2
A4 0 2 1 0 2

Atunci min ⎨ max rij⎬ = min⎨1, 3, 2, 2⎬ = 1, ce corespunde strategiei


i j

A1, deci P1 alege această strategie.

Criteriul lui Wald

Dacă jocul are punct şa, statisticianul P1 alege strategia Ai


determinată de condiţia:
max ( min aij).
i j

Dacă jocul nu are punct şa, se determină strategia mixtă


x = (x1, ..., xm) pentru care:
⎧m ⎫
min ⎨∑ a ij x i ⎬ , este maximă.
j
⎩ i =1 ⎭
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),
Modele matematice în economie

de unde rezultă că P1 poate alege oricare dintre strategiile sale A1, A2 sau
A 4.
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 = 1,4 , unde aij este câştigul

obţinut de patron când aplică strategia Ai, i = 1,4 şi cererea este în starea Sj,

j = 1,4 . Obţinem astfel:


Cererea pieţei
Cantitatea S1:20 S2:30 S3:40 S4:50
achiziţionată
A1:20 2000 2000 2000 2000
A2:30 1500 3000 3000 3000
A3:40 1000 2500 4000 4000
A4:50 500 2000 3500 5000
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:
⎛ 0 500 2000 3000 ⎞
⎜ ⎟
⎜ 500 0 1000 2000 ⎟
R= ⎜
1000 500 0 1000 ⎟
⎜ ⎟
⎜1500 1000 500 0 ⎟⎠

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.
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 = 1,2 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 = 1, m , j = 1, n . În vederea unei scrieri compacte a


Modele matematice în economie

elementelor care definesc un joc de acest tip, apelăm la o reprezentare


matriceală ca cea de mai jos:
P2
B1 ... Bj ... Bn
P1
A1 .
∶ .
Ai (aij, bij)
.
∶ .
Am

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 = 1, m , j = 1, n 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
A1 (3,0) (1,2)
A2 (1,4) (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.
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.
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.
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 (4,0) (2,1) (0,4) (1,1)
A2 (0,1) (2,0) (3,3) (5,2)
A3 (2,4) (1,3) (1,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.
Modele matematice în economie

Se obţine aşadar, după procedura de marcare, următorul tabel:


B1 B2 B3 B4
A1 (4,0) (2,1) (0,4) (1,1)
A2 (0,1) (2,0) (3,3) (5,2)
A3 (2,4) (1,3) (1,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 ⎬,
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
A1 (2,0) (2,1) (4,2)
A2 (3,4) (1,2) (2,3)
A3 (1,3) (0,2) (3,0)
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
A1 (2,0) (4,2)
A2 (3,4) (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.
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*) ≥ minf
B ∈B
1(Ai, Bj) pentru orice strategie Ai ∈ A.
j

De aici rezultă imediat:


maxminf
A ∈A B ∈B
1(Ai, Bj) ≤ f1(A*, B*).
i j

Pentru jucătorul P2, obţinem folosind din nou definiţia punctului de


echilibru: f2(A*,B*) ≥ f2(A*, Bj) ≥ minf
A ∈A 2
i
(Ai, Bj), (∀) Bj ∈ B, deci
f2(A*,B*) ≥ maxminf
B ∈B A ∈A
2(Ai, Bj).
j i

În concluzie, într-un joc cu sumă arbitrară, strategiile maximin îşi


pierd din importanţă.
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
A1 (2,1) (0,2)
A2 (1,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:
m
x = (x1, ..., xm), unde xi ≥ 0, i = 1, m şi ∑x
i =1
i = 1.
Teoria jocurilor

Mulţimea tuturor acestor strategii o notăm prin X. Analog vom


considera:
n
Y = ⎨y = (y1,..., yn) ⏐ yj ≥ 0, ∑ y = 1⎬
j =1
j 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,
m n
prin: ϕ1(x, y) = ∑∑ a x y
i =1 j =1
ij i j ;

m n
ϕ2(x, y) = ∑∑ b x y
i =1 j=1
ij i j ; ϕi: X × Y → ℝ, i = 1,2 ,
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:
m ⎛ n ⎞
ϕ1(x, y) = ∑ ⎜⎜ ∑ a ij y j ⎟⎟ xi.
i =1 ⎝ j=1 ⎠
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
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:
n n
Imax = ⎨K ⏐ ∑ a kj y j ≥ ∑ a ij y j , (∀) i = 1, m ⎬.
j=1 j=1

Să alegem un K0 ∈ Imax. Fie x = (x1, ..., xm) o strategie mixtă a lui P1


şi să presupunem că există l ∈ 1, n \ Imax astfel încât xl > 0. Notăm cu x’

strategia mixtă obţinută din x prin asocierea probabilităţii x K 0 + xl la

strategia A K 0 şi a unei probabilităţi nule la Al. Atunci vom avea:

⎛ n ⎞ n n
ϕ1(x, y) = ∑ i⎜∑ x ⎜ a y ⎟
ij j ⎟ + x K0 ∑ K0 j j
a y + x l ∑ a lj y j <
i ≠ K 0 ,l ⎝ j=1 ⎠ j =1 j=1

⎛ n ⎞ n n
< ∑ ⎜ ∑ ij j ⎟ K 0 l ∑

i ≠ K 0 , l ⎝ j =1
a y ⎟ + ( x + x ) a y
K0 j j + 0 ⋅ ∑ a lj y j = ϕ1 ( x ' , y) , de
⎠ j =1 j=1

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 = x i0
m
i =1
care asignează probabilităţi nenule numai acelor strategii Ah, cu

h ∈ I0. De aici rezultă:


⎛ n ⎞ ⎛ ⎞ n n
ϕ1 ( x 0 , y) = ∑ x ⎜⎜ ∑ a
0
h hj y j ⎟⎟ = ⎜⎜ ∑ x 0h ⎟⎟ max ∑ a ij y j = max ∑ a ij y j , şi
h∈I 0 ⎝ j =1 ⎠ ⎝ h∈I 0 ⎠ i =1, m j=1 i =1, m
j =1

mai departe:
m ⎛ n ⎞ m n
ϕ1(x, y) = ∑ x i ⎜ ∑ ij j ⎟
⎜ a y ⎟ ≤ ∑ x i max
i =1, m
∑ a ij y j = ϕ1(x0, y), oricare ar
i =1 ⎝ j=1 ⎠ i =1 j =1

fi strategia mixtă x ∈X. Deci x0 este răspuns optim al lui P1 la strategia y.


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:
3
- dacă q ∈ [0, ), cel mai bun răspuns al lui P1 este A2;
4
3
- dacă q = , atunci A1 şi A2 sunt răspunsuri la fel de bune;
4
3
- dacă q ∈ ( , 1], cel mai bun răspuns al lui P1 este A1.
4
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:
2
- pentru p ∈ [0, ), răspunsul optim al lui P2 este B1;
3
Teoria jocurilor

2
- pentru p = , P2 poate răspunde atât cu B1, cât şi cu B2;
3
2
- pentru p ∈ ( , 1], răspunsul optim al lui P2 este B2.
3
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.
3
I. Dacă q* ar aparţine intervalului [0, ), atunci răspunsul optim
4
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ă
3
strategie este B1, corespunzând lui q = 1. Cum 1 ∉ (0, ], acest
4
caz nu e compatibil cu existenţa unui punct de echilibru.
3
II. Dacă q* ∈ ( , 1], cel mai bun răspuns al lui P1 este A1, pe care
4
î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
3
avem q = 0. Dar 0 ∉ ( , 1] şi concluzia e identică celei de la
4
punctul precedent.
3
III. În cazul q* = , ca răspuns optim al jucătorului P1 putem lua
4
orice strategie mixtă (r, 1 – r) pe ⎨A1, A2⎬, r ∈ [0, 1], conform
2 2
cu propoziţia 4.4. Dar situaţiile r ∈ [0, ) şi r ∈ ( , 1] conduc
3 3
la valori ale răspunsurilor corespunzătoare lui q = 1 şi q = 0,
3 2
respectiv, ambele diferite de . Pentru r = , răspunsul optim
4 3
Modele matematice în economie

fiind orice strategie mixtă (q, 1 – q) pe ⎨B1, B2⎬, în particular


3 1 2
( , ), rezultă că putem alege p* = . În concluzie, punctul de
4 4 3
echilibru al jocului, în strategii mixte, este:
2 1 3 1
(x*,y*) = (( , ), ( , )).
3 3 4 4
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) i =1, m , aij = f1(Ai, Bj), Ai ∈A, Bj ∈ B.
j=1, n
Teoria jocurilor

Asemănător, C2 va desemna matricea câştigurilor jucătorului P2:


C2 = (bij) i =1, m
, bij = f2(Ai, Bj), Ai ∈ A, Bj ∈ B.
j=1, n

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 Tn = 1 (1)
sinonime cu faptul că suma probabilităţilor (xi)i∈1, m (respectiv (yj)j∈1, n ) 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 ≤ Φ 1T , C T2 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Φ 1T ⇔ x(Φ 1T - C1yT) = 0

yC T2 xT = yΦ T2 ⇔ y(Φ T2 - C T2 xT) = 0 (3)


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
A1 (4,0) (2,1) (8,6)
A2 (6,12) (2,10) (4,9)

Cele două matrici de câştiguri ale jucătorilor sunt:


⎛ 4 2 8⎞ ⎛ 0 1 6⎞
C1 = ⎜⎜ ⎟⎟ şi C2 = ⎜⎜ ⎟⎟
⎝ 6 2 4⎠ ⎝12 10 9 ⎠
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 + y 2 + y 3 = 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 = 1,2 , respectiv µj, j = 1,3 .
Teoria jocurilor

Obţinem:
x1 + x2 = 1 y1 + y 2 + y 3 = 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ă.
Modele matematice în economie

Să considerăm matricea sistemului liniar (I), în care fiecare coloană


este notată cu ak, k = 1,6 :
a1 a2 a3 a4 a5 a6
⎛1 1 0 0 0 0⎞
⎜ ⎟
⎜ 0 12 − 1 1 0 0⎟
⎜ 1 10 − 1 0 1 0⎟
⎜ ⎟
⎜ 6 9 −1 0 0 1 ⎟⎠

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 = ⎨a k 1 , a k 2 , a k 3 , a k 4 ⎬.

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:

1 1 0 0
0 12 − 1 0
det[a1, a2, a3, a5] = = 9 ≠ 0, rezultă că
1 10 − 1 1
6 9 −1 0

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
Teoria jocurilor

Se deduce uşor că x3 = 12x2, x2 = 2x1. Cum x1 + x2 = 1, rezultă


1 2
x1 = , x2 = , x3 = 8 şi µ2 = 1.
3 3
1 2
Soluţia de bază va fi deci (x, µ)1 = ( , ,8,0,1,0), având toate
3 3
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
⎛ 1 1 1 0 0 0⎞
⎜ ⎟
⎜ 4 2 8 −1 1 0⎟
⎜ 6 2 4 −1 0 1⎟
⎝ ⎠

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:
2 1 16
(y, θ)2 = ( , 0, , , 0, 0), (y, θ)3 = (0,0,1,8,0,4),
3 3 3
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) 0 0 1/3 2/3 *
(2,1) 0 0 1 0 *
(3,1) 0 0 0 1 *
(1,2) 0 0 1/3 2/3 *
(2,2) 0 0 1 0 *
(3,2) 0 0 0 1 *
(1,3) 0 4 1/3 2/3 -
(2,3) 0 4 1 0 *
(3,3) 0 4 0 1 -
(1,4) 2 0 1/3 2/3 -
(2,4) 2 0 1 0 -
(3,4) 2 0 0 1 *
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
1
perechea (1, 4) avem θ1 = 2 ≠ 0 şi x1 = ≠ 0, ş.a.m.d..
3
Cel de-al doilea tabel se prezintă astfel:
(x,y) µ1 µ2 µ3 y1 y2 y3 */-
(1,1) 0 1 0 0 1 0 -
(1,2) 0 1 0 2/3 0 1/3 *
(1,3) 0 1 0 0 0 1 *
(1,4) 0 1 0 1 0 0 *
(2,1) 6 5 0 0 1 0 -
(2,2) 6 5 0 2/3 0 1/3 -
(2,3) 6 5 0 0 0 1 *
(2,4) 6 5 0 1 0 0 -
(3,1) 0 2 3 0 1 0 -
(3,2) 0 2 3 2/3 0 1/3 -
(3,3) 0 2 3 0 0 1 -
(3,4) 0 2 3 1 0 0 *

Am marcat cu * cuplul de strategii (1, 2), pentru că avem:


2 1
µ1y1 = 0 ⋅ = 0, µ2y2 = 1 ⋅ 0 = 0 şi µ3y3 = 0 ⋅ = 0. În schimb
3 3
cuplul (3, 2) va fi marcat cu – (respins), deoarece µ1y1 = µ2y2 = 0, însă
1
µ3y3 = 3 ⋅ = 1 ≠ 0.
3
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):
Modele matematice în economie

⎛⎛ 1 2 ⎞ ⎛ 2 1 ⎞⎞
⎜⎜ ⎜ , ⎟, ⎜ ,0, ⎟ ⎟⎟ ; ((1, 0), (0,0,1)); ((0,1), (1, 0,0)).
⎝⎝ 3 3 ⎠ ⎝ 3 3 ⎠⎠
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 = 1,2 ca diferenţa a două
variabile cărora li se impune să ia valori nenegative:
ϕi = ϕ’i - ϕ”i, ϕ’i ≥ 0, ϕ”i ≥ 0, i = 1,2 ;

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 64 = 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ă
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
A1 (1,2) (2,-2) (3,1)
A2 (2,2) (4,-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.
Modele matematice în economie

Dacă însă analizăm jocul:

B1 B2
A1 (3,2) (9,1)
A2 (2,8) (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:
Teoria jocurilor

u* = max min ϕ1(x,y),


x∈X y∈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* = max min ϕ2(x,y).
y∈Y x∈X

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
A1 (1,2) (3,8)
A2 (2,0) (4,5)
A3 (3/2,6) (5,3)
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
3
(1, 2) şi, mai departe, W12 = (3, 8), W21 = (2, 0), W22 = (4, 5), W31 = ( , 6),
2
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,
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)C 11 y1 + (x1, x2, x3) C 12 y2

unde y = (y1, y2), y1, y2 ≥ 0, y1 + y2 = 1, iar C 11 şi C 12 sunt respectiv prima şi


a doua coloană a matricei de câştiguri a jucătorului P1, notată C1. Concret,
vom avea:
3
min ϕ1(x, y) = min⎨x1 + 2x2 + x3, 3x1 + 4x2 + 5x3⎬ =
y∈Y 2
3
= x1 + 2x2 + x3 (x1, x2, x3 ≥ 0)
2
Cum X = ⎨(x1, x2, x3)⎪x1, x2, x3 ≥ 0, x1 + x2 + x3 = 1⎬ este un simplex

în ℝ3, vom găsi:


3
u* = max min ϕ1(x, y) = max (x1 + 2x2 + x3) = 2, care se atinge în
x∈X y∈Y x∈X 2
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:
min ϕ2(x, y) = min⎨2y1 + 8y2, 5y2, 6y1 + 3y2⎬.
x∈X
Modele matematice în economie

Dar y2 = 1 – y1, deci vom calcula:


min⎨-6y1 + 8, -5y1 + 5, 3y1 + 3⎬ pentru y1 ∈ [0, 1].
1
Expresia acestuia este egală cu 3y1 + 3, dacă y1 ∈ [0, ] şi egală cu
4
1
-5y1 + 5, dacă y1 ∈ [ , 1]. În final, avem:
4
1 15
v* = max min ϕ2(x, y) = 3 ⋅ +3= .
y∈Y x∈X 4 4
Soluţia jocului cooperativ dat, în sensul lui Nash, va fi o pereche
15
( u , v ) din S, cu proprietatea ( u , v ) ≥ (2, ) şi care maximizează expresia
4
(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.
15
Cum coeficientul unghiular al dreptei care uneşte (2, ) cu un
4
(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:
5−3
α1 = = -2.
4−5
Teoria jocurilor

15
Unind punctul (2, ) cu (5, 3) se obţine o dreaptă cu panta egală
4
15
3−
cu: 4 = - 1 . Asemănător, dreapta care trece prin punctele (2, 15 ) şi
5−2 4 4
5
(4, 5) are panta egală cu . Aşadar, făcându-l pe (u, v) să varieze în
8
interiorul lui [W32W22] obţinem o dreaptă cu panta β care parcurge
1 5
intervalul (- , ). Cum opusul lui α1 nu se găseşte în această plajă de
4 8
1 5
valori (2 ∉ (- , )), rezultă că ( u , v ) nu aparţine interiorului segmentului
4 8
menţionat.
Continuând analiza cu punctele din interiorul segmentului [W22W12],
8−5
constatăm că panta dreptei – suport a acestuia este α2 = = -3. Dacă
3−4
15 17
unim pe (2, ) cu (3, 8) obţinem o dreaptă având panta egală cu . Deci,
4 4
atunci când (u, v) variază între capetele W22 şi W12, dreapta care îl uneşte cu
5 17
(u*,v*) are panta β ∈ ( , ).
8 4
5 17
În acest caz, - α2 = 3 ∈ ( , ) şi rămâne să îl determinăm pe
8 4
( u , v ) ca un punct situat între W22 şi W12.
Dreapta care trece prin punctele (4, 5) şi (3, 8) are ecuaţia:
v−5 u −4
= ⇔ v = -3u + 17. Ea se va intersecta cu o dreaptă care
3 −1
15
trece prin (2, ), de pantă egală cu β2 = 3, în ( u , v ).
4
Modele matematice în economie

Rezultă sistemul de ecuaţii:


15
v- = 3(u – 2)
4
v = - 3u + 17
9 77
de unde, prin eliminarea lui v, găsim 6u = 17 + şi deci u = ≈ 3.208,
4 24
77 9 59
iar v = 3 ⋅ - = = 7.375.
24 4 8
Soluţia de tip Nash a jocului cooperativ considerat mai sus este
77 59
perechea de câştiguri ( u , v ) = ( , ).
24 8
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:
77 29 59 15 29
-2= ; − =
24 24 8 4 8
29 29
Raportul lor (în ordinea P2 / P1) este ÷ = 3, deci coincide cu
8 24
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 ).
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.
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ă.
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) ∑x
i∈N
i = v(N) şi

b) xi ≥ v(⎨i⎬), (∀) i ∈ N, se numeşte imputaţie.


Evident, din a) şi b), rezultă că:

v(N) ≥ ∑ v({}i ) .
i∈N

Definiţia 5: Un joc v se numeşte esenţial, dacă

v(N) > ∑ v({}i )


i∈N
ş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 π.
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 = 1, n , din câştigul total v(N), cu proprietăţile:

a1) pentru orice suport S al lui v avem: ∑ ϕ [v] = v(S) ;


i∈S
i

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:
( t − 1)!(n − t )!
ϕi[v] = ∑ [v(T) − v(T − {}
i )] (3)
T⊂ N n!
i∈T

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:
( t − 1)!(n − t )!
ϕi[v] = ∑
T⊂ N n!
(4)
i∈T
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 = 1,4 , 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:
2!1! 1
ϕ1 = = .
4! 12
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⎬.
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:
(2 − 1)! (4 − 2)! 1
= .
4! 12
Pentru ⎨1, 2, 3⎬, t = 3, n = 4, i = 2, obţinem:
(3 − 1)! (4 − 3)! 1
= .
4! 12
Iar pentru ⎨1, 2, 4⎬, t = 3, n = 4, i = 2, aceeaşi valoare ca mai sus,
1
adică . Atunci:
12
1 1 1 1
ϕ2 = + + = .
12 12 12 4
Procedând similar vom obţine:
1 5
ϕ3 = şi ϕ4 = .
4 12
Astfel valoarea Shapley este vectorul:
1 1 1 5
ϕ=( , , , ).
12 4 4 12
Observaţie: ϕ este o imputaţie deoarece satisface condiţiile
definiţiei 4.
d) Valoarea Shapley nu concordă cu vectorul voturilor dat de
1 1 3 2
( , , , ) ale cărui componente sunt proporţionale cu numărul
10 5 10 5
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
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:
1 1 1
ϕ = (0, , , ).
3 3 3

6. Probleme

1. Să se stabilească valoarea jocului şi strategiile pure optime pentru


jocul:
B
B1 B2 B3 B4 αi
A
A1 -4 4 2 11 -4
A2 8 6 5 7 5
A3 -1 0 1 -4 -4
βj 8 6 5 11

Rezolvare
Luând αi = min aij, i = 1,3 , βj = max aij, j = 1,4 , completăm
1≤ j≤ 4 1≤ i ≤ 3

coloanele αi, respectiv βj. Şi deoarece α = max αi = 5 = α2, iar β = min βj =


1≤ i ≤ 3 1≤ j≤ 4

= 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.
Modele matematice în economie

2. Să se rezolve jocul de ordinul 2 × 2 cu matricea:


⎛ −1 1⎞
A = ⎜⎜ ⎟⎟ , pe cale matriceală.
⎝ 6 0⎠

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:
⎛ 0 − 1⎞ ⎛ 0 − 1⎞
A* = ⎜⎜ ⎟⎟ , JA* = (1, 1) ⎜⎜ ⎟⎟ = (-6, -2);
⎝ − 6 − 1⎠ ⎝ − 6 − 1⎠
⎛ 0 − 1⎞ ⎛1⎞ ⎛ − 1 ⎞ ⎛1⎞
A*JT = ⎜⎜ ⎟⎟ ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ , JA*JT = (-6, -2) ⎜⎜ ⎟⎟ = -8
⎝ − 6 − 1 ⎠ ⎝1⎠ ⎝ − 7 ⎠ ⎝1⎠
rezultă că:
JA * 1 ⎛3 1⎞
x= T
= − (−6,−2) = ⎜ , ⎟
JA * J 8 ⎝ 4 4⎠
A * JT 1 ⎛ −1⎞ ⎛ 1/ 8 ⎞ 1 7
yT = = − ⎜⎜ ⎟⎟ = ⎜⎜ ⎟⎟ , de unde y = ( , )
JA * J T
8 ⎝ − 7 ⎠ ⎝ 7 / 8⎠ 8 8
|A| −6 3
v= = = .
JA * J T
−8 4

3. Să se rezolve pe cale grafică jocul a cărui matrice este:


⎛ 6 − 2⎞
⎜ ⎟
⎜5 1 ⎟
⎜3 4 ⎟
⎜ ⎟
⎜ −1 5 ⎟
⎜ 2 − 2⎟
⎝ ⎠
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,
⎛ 6 − 2⎞
⎜ ⎟
⎜5 1 ⎟
A= ⎜ .
3 4 ⎟
⎜ ⎟
⎜ −1 5 ⎟
⎝ ⎠
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 (d4) 5
M 4
(d3)
3

(d2)
1 y2
-1
-2
(d1)
Modele matematice în economie

unde am asociat fiecărei inegalităţi (i), dreapta di, i = 1,4 , 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
2 3
de unde y2 = , y1 = iar v = 3, 4, deci y2 şi v satisfac restricţiile 2 şi 3 cu
5 5
egalităţi. Teorema ecarturilor ne spune că atunci componentele x2 şi x3 din
problema duală vor fi pozitive.
3 2
Deci strategia lui P2 este y = ( , ).
5 5
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:
⎛5 1⎞
A1 = ⎜⎜ ⎟⎟ .
⎝ 3 4⎠
Determinarea strategiei lui P1 o vom face cu ajutorul formulelor (9)
din 2.3.a, unde:
⎛ 4 − 1⎞ ⎛ 4 − 1⎞
⎪A1⎪ = 17; A 1* = ⎜⎜ ⎟⎟ ; JA 1* = (1,1) ⎜⎜ ⎟⎟ = (1, 4);
⎝ − 3 5 ⎠ ⎝− 3 5 ⎠
Teoria jocurilor

⎛1⎞
JA 1* JT = (1, 4) ⎜⎜ ⎟⎟ = 5 deci:
⎝1⎠
JA1* 1 1 4 1 4
x= * T
= (1, 4) = ( , ), deci x2 = , x3 = şi strategia lui
JA1 J 5 5 5 5 5
1 4
P1 este x = (0, , , 0).
5 5

4. Să se determine prin metodele cunoscute valoarea jocului şi


strategiile jucătorilor pentru cazul în care matricea plăţilor este:

⎛4 0 − 2 − 1⎞
⎜ ⎟
⎜1 3 4 5⎟
⎜2 .
3 1 1⎟
⎜ ⎟
⎜ −1 1 2 3 ⎟⎠

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:
⎛ 4 0 − 2⎞
⎜ ⎟
A = ⎜1 3 4 ⎟ .
⎜2 3 1 ⎟
⎝ ⎠

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ă).
Modele matematice în economie

Obţinem:
B1 B2 B3 αi
A1 4 0 -2 -2
A2 1 3 4 1
A3 2 3 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;
⎛− 9 − 6 6 ⎞

⎜ ⎟
A = ⎜ 7 8 − 18 ⎟
⎜ − 3 − 12 12 ⎟
⎝ ⎠
JA ∗ = (− 5,−10, 0 ); A ∗ J T = (− 9, − 3, − 3); JA ∗ J T = −15

JA ∗ 1 ⎛1 2 ⎞
x= ∗ T
= − (− 5; − 10, 0 ) = ⎜ , , 0 ⎟
JA J 15 ⎝3 3 ⎠
A∗J∗ 1 ⎛3 1 1⎞
J= ∗ T
= − (− 9, − 3, − 3) = ⎜ , , ⎟
JA J 15 ⎝5 5 5⎠
A − 30
v= ∗ T
= =2
JA J − 15
Aplicăm procedeul din observaţia mai sus citată şi verificăm criteriul
lui Neumann, astfel:
⎛ 4 0 − 2⎞
⎛1 2 ⎞ ⎜ ⎟
x A = ⎜ , , 0 ⎟ ⋅ ⎜1 3 4 ⎟ = (2, 2, 2 ) = 2J
⎝3 3 ⎠ ⎜ ⎟
⎝2 3 1 ⎠
Teoria jocurilor

⎛ 4 0 − 2 ⎞ ⎛ 3 / 5⎞ ⎛ 2 ⎞
⎜T ⎟ ⎜ ⎟ ⎜ ⎟
A y = ⎜1 3 4 ⎟ ⋅ ⎜1 / 5 ⎟ = ⎜ 2 ⎟ = 2 J T
⎜ 2 3 1 ⎟ ⎜1 / 5 ⎟ ⎜ 2 ⎟
⎝ ⎠ ⎝ ⎠ ⎝ ⎠

Deci x şi y sunt o soluţie a jocului cu v = 2 .


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
y = (y1 , y 2 , y 3 ) , va fi:

4 y1 − 2y 3 ≤ v
y 1 + 3y 2 + 4 y 3 ≤ v
2 y 1 + 3y 2 + y 3 ≤ v
y1 + y 2 + y 3 = 1; y j ∈ [0,1], j = 1,3 .

Cum v ∈ (1,3) deci este pozitiv, împărţim relaţiile de mai sus prin v
şi notăm:
yj
Yj = , j = 1,3
v
Deoarece P2 urmăreşte să facă minim v, atunci va dori să facă maxim
1
şi obţinem:
v
1
[max]g = = Y1 + Y2 + Y3
v
4Y1 − 2Y3 ≤ 1
Y1 + 3Y2 + 4Y3 ≤ 1
2Y1 + 3Y2 + Y3 ≤ 1
Yj ≥ 0 , j = 1,3

Aducem problema la forma standard şi aplicăm algoritmul simplex.


Modele matematice în economie

4Y1 − 2Y3 + Y4 = 1
Y1 + 3Y2 + 4Y3 + Y5 = 1
2Y1 + 3Y2 + Y3 + Y6 = 1
Yj ≥ 0 , j = 1,6

1
[max]g = = Y1 + Y2 + Y3 + 0 (Y4 + Y5 + Y6 ) .
v

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:


1 1
max g = = , de unde v = 2 .
v 2
2
Y1 = 1 / 3 , Y3 = 1 / 6 de unde y1 = v Y1 = 2 ⋅ 1 / 3 = ;
3
y 3 = v Y3 = 2 ⋅ 1 / 6 = 1 / 3 , deci strategia lui P2 va fi :
⎛ 2 1⎞
y = ⎜ ,0, ⎟
⎝ 3 3⎠
Teoria jocurilor

1 1
X1 = , X 2 = , X 3 = 0 de unde :
6 3
1 1 2 ⎛1 2 ⎞
x 1 = vX1 = 2 = ; x 2 = ; x 3 = 0 şi x = ⎜ , , 0 ⎟ .
6 3 3 ⎝3 3 ⎠

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

⎛1 2 ⎞
Obţinem aceeaşi valoare v = 2 şi x = ⎜ , , 0 ⎟ .
⎝3 3 ⎠
3 1 1
Dar Y1 = , Y2 = , Y3 = , ce conduce la:
10 10 10
3 1 1 ⎛3 1 1⎞
y1 = , y 2 = , y 3 = , adică y = ⎜ , , ⎟ soluţie găsită şi prin
5 5 5 ⎝ 5 5 5⎠
metoda a).
Dar dacă o problemă de programare liniară are două soluţii optime:
⎛ 2 1⎞ ⎛ 3 1 1⎞
y′ = ⎜ , 0, ⎟ şi y′′ = ⎜ , , ⎟ ea va avea o infinitate de soluţii optime, date
⎝ 3 3 ⎠ ⎝5 5 5⎠
de combinaţia liniară convexă de y' şi y''. Deci P2 are o infinitate de strategii
date de:
⎛2 1⎞ ⎛3 1 1⎞
y = λy ′ + (1 − λ ) y ′′ = λ⎜ , 0, ⎟ + (1 − λ ) ⎜ , , ⎟ =
⎝3 3⎠ ⎝ 5 5 5⎠
⎛ 9 + λ 1 − λ 3 + 2λ ⎞
=⎜ , , ⎟, 0 ≤ λ ≤ 1.
⎝ 15 5 15 ⎠
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 3 -1 0 7
A2 6 8 3 5
A3 2 5 1 3

Rezolvare
Determinăm valoarea inferioară şi valoarea superioară ale jocului:
αi = min aij şi v G = max αi = α
1≤ j≤ 4 1≤ i ≤ 3

βj = max aij şi v G = min βj = β


1≤ i ≤ 3 1≤ j≤ 4

Avem:
B
B1 B2 B3 B4 αi
A
A1 3 -1 0 7 -1
A2 6 8 3 5 3
A3 2 5 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 = v G .

β1 = max⎨3, 6, 2⎬ = 6; β2 = max⎨-1, 8, 5⎬ = 8;
Teoria jocurilor

β3 = max⎨0, 3, 1⎬ = 3; β4 = max⎨7, 5, 3⎬ = 7;

β = min⎨6, 8, 3, 7⎬ = 3 = v G .

Cum vG = v G = 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 0 -5 2
A2 -2 2 -1
A3 1 -1 1

Rezolvare
Determinăm vG şi v G pentru a vedea dacă jocul are punct şa. Avem:
B
A B1 B2 B3 αi
A1 0 -5 2 -5
A2 -2 2 -1 -2
A3 1 -1 1 -1
βj 1 2 2

vG = maxαi = max⎨-5, -2, -1⎬ = -1


v G = minβj = min⎨1, 2, 2⎬ = 1

Din vG ≠ v G 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.
Modele matematice în economie

E suficient să adunăm 2 la elementele matricei iniţiale şi avem:


⎛ 2 − 3 4⎞
⎜ ⎟
A = ⎜ 0 4 1 ⎟ = (aij + 2).
⎜ 3 1 3⎟
⎝ ⎠

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 = 1,3
yj 1
Cu v > 0, Yj = şi = [max]g, avem:
v v
1
[max]g = = Y1 + Y2 + Y3
v
2Y1 – 3Y2 + 4Y3 + Y4 = 1
4Y2 + Y3 + Y5 = 1
3Y1 + Y2 + 3Y3 + Y6 = 1
Yj ≥ 0, j = 1,6 .

Rezolvăm problema aplicând algoritmul simplex.


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:


1 1
[max]g = = , de unde v = 2
v 2
y1 1 1 1 1 1
Y1 = = , de unde y1 = 2 = ; Y2 = , de unde y2 = ,
v 4 4 2 4 2
y3 = 0;
1 x1 1 1 1 2
X2 = = , de unde x2 = 2 = ; X3 = , de unde x3 = ;x1 = 0
6 v 6 3 3 3
1 2 1 1
deci: x = (0, , ), y = ( , ,0) iar v = v - 2 = 2 – 2 = 0.
3 3 2 2
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]:
Modele matematice în economie

Cantitatea Preţ
Iarna necesară unitar
în tone u.m./t
Uşoară 4 70
Obişnuită 5 75
Grea 6 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 uşoară obişnuită grea
Cantitatea S1:4t S2:5t S3:6t
contractată
A1:4t -240 -315 -400
A2:5t -300 -300 -380
A3:6t -360 -360 -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
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:
⎛ 0 15 40 ⎞
⎜ ⎟
R = ⎜ 60 0 20 ⎟ .
⎜120 60 0 ⎟
⎝ ⎠
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.


Modele matematice în economie

e) În ipoteza că stările Si, i = 1,3 , sunt egal probabile, vom calcula

cheltuielile medii pentru fiecare strategie Ai, i = 1,3 . Astfel:


1 1 1 955
ϕ(1, y) = (-240) + (-315) + (-400) = -
3 3 3 3
980 1080
ϕ(2, y) = - şi ϕ(3, y) = - .
3 3
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 = min aij şi
1≤ j≤ 3

Mi = max aij, apoi coloana elementelor αMi + (1 - α)mi, astfel:


1≤ j≤ 3

Si
S1 S2 S3 mi Mi αMi+(1-α)mi
Ai
A1 -240 -315 -400 -400 -240 160α-400
A2 -300 -300 -380 -380 -300 80α-380
A3 -360 -360 -360 -360 -360 -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.
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
B1 B2 B3 B4
P1
A1 (5,4) (3,1) (9,0) (4,2)
A2 (2,7) (3,4) (1,3) (0,1)
A3 (6,8) (1,3) (0,2) (3,5)
A4 (3,2) (4,7) (2,4) (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 (5,4) (3,1) (4,2)
A3 (6,8) (1,3) (3,5)
A4 (3,2) (4,7) (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 (5,4) (3,1) (4,2)
A3 (6,8) (1,3) (3,5)
A4 (3,2) (4,7) (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ă
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 (4,5) (3,4)
A2 (2,6) (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:
max min aij = max⎨min⎪⎨4,3⎬, min⎨2,5⎬⎬ = max⎨3,2⎬ = 3
i =1, 2 j=1, 2

max min bij = max⎨min⎪⎨5,6⎬, min⎨4,7⎬⎬ = max⎨5,4⎬ = 5


i =1, 2 j=1, 2

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 (1,0) (1,2) (0,1)
A2 (0,3) (0,1) (2,0)
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.
2
Cazul p + q = nu face deosebire între A1 şi A2 ca replici optime
3
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
1 1 1
r< şi B2, pentru r > . În cazul r = , se reţin ca cel mai bun răspuns
2 2 2
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*:
1
I. Dacă r* ∈ [0, ), răspunsul optim al lui P2 este B1, căruia i-ar
2
corespunde ca strategie mixtă valorile p* = 1, q* = 0, ceea ce
2
înseamnă că p* + q* = 1 > şi, în replică, am avea strategia
3
optimă A1 a lui P1. Cum A1 poate fi identificată cu strategia
mixtă (1, 0), rezultă r* = 1, contrazicând ipoteza iniţială;
Modele matematice în economie

1
II. În cazul r* = , orice strategie mixtă a lui P2 de forma
2
(λ, 1-λ, 0), 0 ≤ λ ≤ 1 este un răspuns optim. Discuţia continuă ca
1
mai înainte şi se ajunge la concluzia r* = 1 ≠ ;
2
1
III. Dacă r* ∈ ( , 1), replica cea mai bună a lui P2 este B2; ei îi
2
2
corespund valorile p* = 0, q* = 1 şi cum p* + q* > , răspunsul
3
1
optim al lui P1 e din nou A1. Obţinem, ca mai sus, r*= 1∉( ,1);
2
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.
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 1 1 (s1,s2)
( s1, s1)
2 2 1 1
A2 ( s2, s2)
(s2,s1) 2 2

1 1
Ţinând seama de ipotezele s1 < s2 şi s2 < s1, vom putea scrie:
2 2
1
f1(A1, B2) = s1 > s2 = f1(A2, B2)
2
1
f2(A1, B2) = s2 > s1 = f2(A1, B1)
2
de unde rezultă că (A1, B2) este punct de echilibru Nash.
Asemănător, obţinem relaţiile:
1
f1(A2, B1) = s2 > s1 = f1(A1, B1)
2
1
f2(A2, B1) = s1 > s2 = f2(A2, B2)
2
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.
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:
1 1
ys1 + (1 – y)s1 = s1 - ys1, sau
2 2
1 1 1
ys2 + (1 – y) s2 = s2 + ys2, după cum foloseşte strategia pură
2 2 2
A1 sau A2.
1 1 1
Din inegalitatea s1 - ys1 > s2 + ys2, rezultă că pentru
2 2 2
⎡ 2s − s ⎞
y ∈ ⎢0, 1 2 ⎟⎟ cel mai bun răspuns al lui P1 la strategia mixtă a lui P2 este
⎣ s1 + s 2 ⎠
⎛ 2s − s
A1, iar pentru y ∈ ⎜⎜ 1 2 ,1] , acesta este A2 (să observăm că s1 < 2s2 e
⎝ s1 + s 2
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:
⎛ ⎛ 2s1 − s 2 2s 2 − s1 ⎞ ⎛ 2s1 − s 2 2s 2 − s1 ⎞ ⎞
⎜⎜ ⎟⎜ ⎟⎟
⎜ ⎜ s + s , s + s ⎟, ⎜ s + s , s + s ⎟ ⎟ .
⎝ ⎝ 1 2 1 2 ⎠ ⎝ 1 2 1 2 ⎠⎠
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
2s1 − s 2
buzunar); dacă valoarea generată se găseşte în intervalul (0, ),
s1 + s 2
atunci el va alege strategia A1(B1), altfel va juca A2(B2).
BIBLIOGRAFIE

1. ALLEN, R.G.D. Analiză matematică pentru


economişti, Bucureşti, Editura
Ştiinţifică, 1971

2. BAZ, D., Matematici aplicate în economie,


COZMA, C., Bucureşti, Lito ASE, 1981
POPESCU, O.

3. BAZ, D., Matematici aplicate în economie,


BUTESCU, V., (Vol. I, II), Bucureşti, Universitatea
STREMŢAN, N. „Dimitrie Cantemir”, 1997

4. BERGE, C. Teoria grafurilor şi aplicaţiile ei,


Bucureşti, Editura Tehnică, 1969

5. BOLDUR – LĂŢESCU, G., Cercetare operaţională cu aplicaţii în


SĂCUIU, I., economie, Bucureşti, Editura
ŢIGĂNESCU, E. Didactică şi Pedagogică, 1979

6. BURLACU, V., Matematici speciale aplicate în


SĂCUIU, I. economie, (Vol. II), Bucureşti, Lito
ASE, 1983

7. CENUŞĂ, GH., Matematici pentru economişti,


RAISCHI, C., Bucureşti, Editura Cison, 2000
BAZ, D. ş.a.

8. CENUŞĂ, GH., Matematici pentru economişti.


FILIP, A., Culegere de probleme, Bucureşti,
BAZ, S. ş.a. Editura Cison, 2000

9. CIUCU, G., Teoria jocurilor, Bucureşti, Editura


IOSIFESCU, M. ş.a. Tehnică, 1965

10. DANI, E. Metode numerice în teoria jocurilor,


Cluj – Napoca, Editura Dacia, 1983
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., Introduction to Operations Research,


LIEBERMAN, G. 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., Metoda drumului critic, Bucureşti,


DESBAZEILLE, G. Editura Tehnică, 1971

16. OWEN, G. Teoria jocurilor, Bucureşti, Editura


Tehnică, 1974

17. POPESCU, O., Matematici aplicate în economie,


BAZ, D., Bucureşti, Editura Didactică şi
BEGANU, G. ş.a. Pedagogică, 1993

18. POPESCU, O., Matematici aplicate în economie.


BAZ, D., Culegere de probleme, Bucureşti,
BEGANU, G. ş.a. 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., Modele matematice de organizare şi


DINESCU, C., conducere a producţiei, (Vol. I, II),
SĂVULESCU, B. Bucureşti, Editura Didactică şi
Pedagogică, 1974

21. VRĂNCEANU, GH., Probleme de cercetare operaţională,


MITITELU, Şt. Bucureşti, Editura Tehnică, 1978

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