Sunteți pe pagina 1din 14

Programarea liniar

Problema dual
Problema dual este o problem de programare liniar. Existena ei presupune existena
unei alte probleme de programare liniar numit problema primal, mpreun cu care formeaz
cuplul primal dual. Pentru a vedea cum arat problema dual trebuie s cunoatem cum arat
problema primal i care este legtura dintre ele.
A cunoate cum arat problema primal nseamn a ti:
1. Dac problema este de maxim sau de minim;
2. Care sunt necunoscutele problemei, adic vectorul variabilelor:
xT = (x1,x2, ,xn)
3. Care sunt coeficienii funciei obiectiv, adic elementele vectorului:
cT = (c1,c2, ,cn)
4. Care sunt termenii liberi ai restriciilor, adic elementele vectorului:
bT = (b1,b2, ,bm)
5. Care sunt coeficienii combinaiei liniare din fiecare restricie, adic elementele matricei:
a 11

a 21
A=

a m1

a 12

a 1n

a 2n


a 22

a m2

a mn

6. Care este natura fiecrei restricii, adic dac:


ai1x1 + ai2x2 + + ainxn bi sau ai1x1 + ai2x2 + + ainxn bi sau ai1x1 + ai2x2 + + ainxn = bi
7. Care este restricia de semn a fiecrei variabile, adic dac:
xj 0 sau xj 0 sau xj oarecare
Problema dual se construiete folosind elementele problemei primale i o serie de reguli,
cte una pentru fiecare din cele ase componente ale unei probleme de programare liniar, listate
mai sus.
n acest scop vom nota elementele problemei duale cu:

uT = vectorul variabilelor problemei duale;


c TD = vectorul coeficienilor funciei obiectiv ai problemei duale;
b TD = vectorul termenilor liberi ai restriciilor din problema dual;
AD = matricea coeficienilor combinaiilor liniare din restriciile problemei duale;

i vom introduce noiunile de restricie concordant i restricie neconcordant:


54

Programarea liniar

O restricie se numete concordant dac:

Este de tipul:
Este de tipul:

ai1x1 + ai2x2 + + ainxn bi ntr-o problem de minim sau


ai1x1 + ai2x2 + + ainxn bi ntr-o problem de maxim.

O restricie se numete neconcordant dac:

Este de tipul:
Este de tipul:

ai1x1 + ai2x2 + + ainxn bi ntr-o problem de maxim sau


ai1x1 + ai2x2 + + ainxn bi ntr-o problem de minim.

O restricie de tipul: ai1x1 + ai2x2 + + ainxn = bi nu este nici concordant nici


neconcordant.
n aceste condiii, problema dual va avea componentele:
Duala va fi o problem de minim dac primala este de maxim i reciproc;
uT = (u1, u2, um), deci duala va avea m variabile, numr egal cu numrul de restricii
al primalei, fiecare variabil ui fiind asociat unei restricii i a primalei;
T
cT
D = b , deci coeficienii funciei obiectiv a dualei sunt termenii liberi ai restriciilor
primalei;
b TD = cT, deci termenii liberi din restriciile dualei sunt coeficienii funciei obiectiv a
primalei.
AD = AT, deci restriciile dualei se obin nmulind fiecare coloan a matricei primalei
cu vectorul variabilelor dualei. n acest mod i variabilelor primalei li se asociaz cte
o restricie a dualei;
restricia j a dualei va fi:
concordant
dac xj 0
neconcordant
dac xj 0
egalitate
dac xj oarecare
variabila ui va fi:
ui 0
dac restricia corespunztoare din primal este concordant
ui 0
dac restricia corespunztoare din primal este neconcordant
ui oarecare
dac restricia corespunztoare din primal este egalitate
Din cele de mai sus se observ c, pentru a scrie restricia j a dualei, avem nevoie de:
coloana coeficienilor corespunztori variabilei j din matricea problemei primale pentru a
scrie termenul stng al restriciei:
a1ju1 + a2ju2 + + amjum
restricia de semn a variabilei xj pentru a stabili natura restriciei;
coeficientul lui xj din funcia obiectiv a primalei, care va fi termenul liber al restriciei;
Pentru o ct mai bun ilustrare a modului n care se gsete duala unei probleme vom da
cteva exemple.

55

Bazele cercetrii operaionale


Exemplul 1. Ne propunem s construim duala problemei urmtoare:
(max) f = 2x1 5x2 + 4x3
x1 x 2 4 x 3 7
x 5x 3x 6
2
1
3

x1 2 x 3 3

x 3 2 x1 5 x 2 8
x1 0, x2 oarecare, x3 0
Conform regulilor de mai sus vom avea:
duala este de minim deoarece primala este de maxim;
variabilele dualei vor fi:
u1
u2
u3
u4

corespunztoare restriciei:
corespunztoare restriciei:
corespunztoare restriciei:
corespunztoare restriciei:

x1 x2 + 4x3 7
x2 5x1 + 3x3 = 6
x1 + 2x3 3
x3 + 2x1 - 5x2 8

funcia obiectiv a dualei va fi produsul dintre termenii liberi ai restriciilor primalei cu


variabilele corespunztoare din dual: g = 7u1 + 6u2 + 3u3 + 8u4
duala va avea 3 restricii, cte variabile are primala, ele obinndu-se astfel:

prima restricie (asociat variabilei x1)


termenul stng al restriciei se obine nmulind coeficienii variabilei x 1 din cele 4
restricii ale primalei cu variabilele corespunztoare acestora din dual:

u1 5u2 + u3 + 2u4
termenul liber al restriciei va fi coeficientul lui x1 din funcia obiectiv a primalei,
adic b1 = c1 = 2
deoarece variabila corespunztoare acestei restricii, x1, este negativ, restricia va fi
neconcordant i deoarece duala este problem de minim rezult c va fi cu .

n concluzie, prima restricie va fi: u1 5u2 + u3 + 2u4 2


a doua restricie (asociat variabilei x2)
termenul stng al restriciei se obine nmulind coeficienii variabilei x 2 din cele 4
restricii ale primalei cu variabilele corespunztoare acestora din dual:

-u1 + u2 - 5u4
termenul liber al restriciei va fi coeficientul lui x2 din funcia obiectiv a primalei,
adic b2 = c2 = -5
deoarece variabila corespunztoare acestei restricii, x2, este oarecare, restricia va fi
o egalitate.

n concluzie, a doua restricie va fi: -u1 + u2 - 5u4 = -5


a treia restricie (asociat variabilei x3)
56

Programarea liniar

termenul stng al restriciei se obine nmulind coeficienii variabilei x 3 din cele 4


restricii ale primalei cu variabilele corespunztoare acestora din dual:
4u1 +3u2 + 2u3 - u4
termenul liber al restriciei va fi coeficientul lui x3 din fiuncia obiectiv a primalei,
adic b3 = c3 = 4
deoarece variabila corespunztoare acestei restricii, x3, este pozitiv, restricia va fi
concordant i deoarece duala este problem de minim rezult c va fi cu .

n concluzie, a treia restricie va fi: 4u1 + 3u2 + 2u3 - u4 4


restriciile de semn ale variabilelor dualei vor fi:

u1 0, deoarece restricia corespunztoare este neconcordant;


u2 oarecare, deoarece restricia corespunztoare este egalitate;
u3 0, deoarece restricia corespunztoare este concordant;
u4 0, deoarece restricia corespunztoare este neconcordant.

n final, problema dual este:


(min) g = 7u1 + 6u2 + 3u3 + 8u4
u 1 - 5u 2 u 3 2u 4 2

- u 1 u 2 - 5u 4 - 5
4u 3u 2u - u 4
1
2
3
4

u1 0, u2 oarecare, u3 0, u4 0
Exemplul 2. Considerm o unitate economic care fabric produsele P1, P2 i P3. Pentru
obinerea lor se utilizeaz trei resurse: fora de munc, mijloacele de munc i materii prime. n
tabelul de mai jos se dau consumurile specifice i cantitile disponibile din cele trei resurse,
precum i preurile de vnzare ale celor trei produse.
Produse
Resurse
Fora de munc
Mijloace de munc
Materii prime
Pre de vnzare
(uniti monetare)

P1

P2

P3

1
2
4

3
5
1

4
1
2

Disponibil
(uniti fizice)
15
10
25
_

Dorim s producem acele cantiti xi din fiecare produs pentru care:


1. se utilizeaz n ntregime fora de munc;
2. se produce cel puin o unitate din produsul de tipul P2;
3. se obine valoarea maxim a vnzrilor.
Modelul matematic pe baza cruia se stabilete programul optim de producie are forma:

57

Bazele cercetrii operaionale


(max) f = 3x1 + 2x2 + 6x3

x1 3 x 2 4 x3 15

2 x1 5 x 2 x3 10
4 x1 x 2 2 x3 25

x2 1

xj 0 (j = 1,2,3)
Duala sa va fi:
(min) g = 15u1 + 10u2 + 25u3 + u4
u1 2u 2 4u 3 3

3u1 5u 2 u 3 u 4 2
4u u 2u 6
1
2
3

u1 oarecare, u2 0, u3 0, u4 0
Se remarc faptul c, ntr-o problem economic, nenegativitatea variabilelor primalei (xj0)
impune ca n dual toate restriciile s fie concordante.
Exemplul 3.
Primala

Duala

(min) f = 4x1 + 3x2


x1 4 x 2 56
x 3 x 43
2
1
x1 2 x 2 31

x1 x 2 20
2 x x 30
2
1
3x1 x 2 41

5 x1 x 2 65

(max) g = 56u1 + 43u2 + 31u3 + 20u4 + 30u5 + 41u6 + 65u7


u1 u 2 u 3 u 4 2u 5 3u 6 5u 7 4

4u1 3u 2 2u 3 u 4 u 5 u 6 u 7 3
uI 0 (i = 1,7)

x1, x2 0
Corespondena care exist ntre problema primal i problema dual, att sub aspect
matematic, ct i economic, va fi lmurit de observaiile i teoremele de mai jos:
Lema 1. Duala problemei duale este problema primal.
Demonstraia acestei leme este uoar, fcndu-se pe baza simetriilor care se observ n
construcia dualei i va fi lsat n seama cititorului, semnificaia ei fiind c operaia de trecere la
dual este o operaie involutiv (adic e o transformare f cu proprietatea: (f f )(x) = x) i, deci,
perechea primal-dual formeaz un cuplu n care fiecare este duala celeilalte. Din aceast cauz
vom vorbi de cuplul primal-dual fr a mai specifica expres care este primala i care duala.
Observaia 1. Dac o problem este la forma canonic atunci i duala sa este o problem la
forma canonic.
58

Programarea liniar
Observaia 2. Dac o problem este la forma standard atunci duala sa nu este la forma
standard.
Lema 2. Dac P1 i P2 sunt dou probleme de programare liniar echivalente atunci i dualele
lor sunt de asemenea echivalente. Vom nelege, n aceast afirmaie, prin probleme echivalente,
dou probleme care se pot obine una din cealalt prin transformri elementare. Aceste transformri
realizeaz un izomorfism ntre mulimile soluiilor celor dou probleme i un homeomorfism ntre
funciile lor obiectiv.
Teorema fundamental a dualitii.
Rezolvarea celor dou probleme din cuplul primal-dual poate duce doar la unul din
urmtoarele trei rezultate:
Dac una din cele dou probleme are soluie optim finit atunci i cealalt are soluie
optim finit i valorile funciilor obiectiv corespunztoare celor dou soluii sunt egale;
Dac una din cele dou probleme are optim infinit atunci cealalt nu are soluii
admisibile.
Dac una din cele dou probleme nu are soluii admisibile atunci cealalt are optim
infinit sau nu are soluii admisibile.
Rezolvare. Presupunem c cele dou probleme au fost aduse la forma canonic:
Primala

Duala

(max) cTx
Ax b
x0

(min) bTu
ATu c
u0

Aceast presupunere nu va afecta rezultatul, deoarece, dac nu erau deja aa, noile probleme
sunt echivalente cu cele iniiale. n continuare, pentru rezolvarea acestei teoreme demonstrm
urmtoarea lem:
Lema 3. Dac exist soluii admisibile pentru fiecare problem atunci pentru orice x soluie
admisibil a primalei i orice u soluie admisibil a dualei avem:
cTx bTu
Demonstraie: Avem:
ATu c (ATu)T cT uTA cT
u TA cT

x0

De asemenea:

Ax b

Obinem:

u0u 0
T

u T Ax c T x

u T Ax u T b b T u

1
b T u u T Ax c T x b T u c T x q.e.d.

59

Bazele cercetrii operaionale


Pentru a demonstra teorema, presupunem c am rezolvat una din cele dou probleme,
aceasta fiind considerat ca fiind primala. Avem trei variante:
1. Problema are optim finit. Fie n acest caz fie x B o soluie de baz a primalei sub forma
T
standard, care d optimul problemei, adic cTxB = max c x . Toi j corespunztori acestei baze
x admisibila

vor fi pozitivi i innd cont de expresia lui j, rezult:


c BT B-1A cT AT( c BT B-1)T c

relaie care spune c vectorul cu m componente u * = ( c TB B-1)T este o soluie de baz admisibil a
problemei duale (primala fiind la forma standard, variabilele dualei pot avea orice semn).
Avem, conform lemei 3: cTxB uTb pentru orice soluie admisibil a problemei duale. Pe de
alt parte cTxB = cTB-1b = (u*)Tb de unde rezult c pentru orice soluie admisibil a problemei duale
se verific:
(u*)Tb uTb
care este echivalent cu faptul c u* este soluia de optim a dualei i c f(xB) = g(u*).
2. Problema are optim infinit. n acest caz, dac duala ar avea soluii admisibile u, g(u) ar fi
un majorant pentru mulimea {f(x)/ x admisibil}, n contradicie cu ipoteza de optim infinit.
3. Problema nu are soluii. n acest caz, dac duala ar avea optim finit ar rezulta, conform
celor artate n varianta 1, c primala are optim finit, n contradicie cu ipoteza.
n concluzie, deoarece cele trei variante acoper toate situaiile posibile, toate ducnd la unul
din rezultatele afirmate ca posibile n teorem i innd cont de faptul c nu a avut importan care
problem a fost aleas spre rezolvare, teorema este demonstrat.
Teorema ecarturilor complementare.
*
*
*
*
*
*
Fie x* = x1 , x 2 ,..., x n i u* = u1 , u 2 ,..., u m dou soluii admisibile ale primalei, respectiv
dualei, scrise sub forma canonic. Atunci ele sunt soluii optime ale celor dou probleme dac i
numai dac verific sistemul:

*
*

u
b

i i aij x j 0 i 1, m

j 1

sau, matricial
m

aij ui* c j x*j 0 j 1, n



i 1

(u * ) T (b Ax * ) 0

* T
*
[(u ) A c] x 0

Demonstraie.
Presupunem c x* i u* sunt soluiile optime ale celor dou probleme. Atunci:
Ax * b

u* 0

(u*)T(b Ax*) 0

60

Programarea liniar
AT u * c

x* 0

(( u*)TA - c)(x*) 0

cum (u*)Tb = cx* (conform teoremei fundamentale)


(u*)T(b Ax*) + (( u*)TA - c)(x*) = (u*)Tb (u*)T Ax* + ( u*)TA x* - cx* = 0
(u*)T(b Ax*) = (( u*)TA - c)(x*) = 0

Dac (u*)T(b Ax*) = (( u*)TA - c)(x*) = 0 (u*)T(b Ax*) + (( u*)TA - c)(x*) = 0 (u*)Tb =
cx* ( conform teoremei fundamentale) x* i u* sunt soluiile optime ale celor dou probleme.
Teorema ecarturilor complementare d o caracterizare pentru optimalitatea soluiilor
primalei i dualei, dac ele exist. Sistemul din teorem se obine aplicnd metoda multiplicatorilor
lui Lagrange pentru extreme cu legturi, n cazul particular al unei probleme de programare liniar.
Aceast teorem nu reprezint o modalitate practic de a rezolva cele dou probleme dect
n anumite cazuri simple, rezolvarea sistemului fiind mai grea, n cazul problemelor liniare, dect
rezolvarea cu algoritmul simplex al fiecrei probleme, dar, pe baza ei, se poate gsi soluia uneia din
probleme dac se cunoate soluia celeilalte sau se poate verifica dac o soluie a unei probleme este
optim, introducnd-o n sistem, gsind celelalte necunoscute i verificnd c ele formeaz o soluie
admisibil a dualei.
Observaia 3. Demonstrarea teoremei fundamentale s-a fcut gsind efectiv soluia optim a
dualei, considerndu-se c primala a fost rezolvat cu algoritmul simplex. Ea este c TB B-1 i, pentru
gsirea practic a acesteia, trebuie cunoscut B-1. Matricea B-1 nu apare explicit n rezolvarea
problemei cu algoritmul simplex, dar se poate demonstra c este format din coloanele din tabelul
simplex al soluiei optime corespunztoare poziiilor care formau baza soluiei iniiale. c TB B-1
reprezint chiar zj corespunztoare acestor coloane din ultimul tabel, deci putem formula rezultatul:
soluia dualei este format din valorile zj ale tabelului soluiei optime, corespunzoare
vectorilor coloan ai bazei iniiale
Introducerea dualitii este motivat din mai multe puncte de vedere:
1. Teoretic. Una din problemele centrale ale programrii matematice este caracterizarea
situaiilor n care exist optimul unei probleme i gsirea unor metode prin care s recunoatem
optimalitatea unei soluii. Teorema fundamental a dualitii i teorema ecarturilor complementare
reprezint rezultate chiar n acest sens, n care se folosete dualitatea.
2. Practic. Rezultatele obinute mai sus contureaz faptul c putem rezolva o problem
rezolvnd problema dual a acesteia sau cunoscnd soluia dualei. n unele cazuri, rezolvarea dualei
este mult mai uoar dect rezolvarea primalei, de exemplu cnd numrul de restricii al primalei
este mai mare dect numrul de variabile al acesteia sau cnd primala necesit mai multe variabile
suplimentare dect duala. Astfel, pentru exemplul 3 de mai sus, rezolvarea primalei duce la opt
iteraii cu tabele cu 7 linii i 16 coloane, iar rezolvarea dualei la 5 tabele cu 2 linii i 9 coloane. n
alte cazuri, soluiile dualei sunt deja cunoscute, gsirea soluiilor primalei revenind la a rezolva
sistemul din teorema ecarturilor complementare, dup ce au fost nlocuite soluiile celei duale.
3. Economic. n cele mai multe probleme economice, a cror rezolvare se face printr-un
model de programare liniar, soluia dualei aduce o serie de informaii suplimentare despre
61

Bazele cercetrii operaionale


problema studiat. Semnificaia economic a soluiei dualei depinde de specificul problemei i
trebuie gsit de la caz la caz. Expunem n continuare interpretarea economic a variabilelor i
soluiilor dualei n cazul unei probleme de producie.
n paragrafele precedente s-a demonstrat c, prin rezolvarea unei probleme de programare
liniar, se obine att soluia optim a problemei iniiale ct i a problemei duale. Corespondena
dintre problema iniial i dual se reflect n coninutul economic al parametrilor inclui n soluia
problemei duale. Semnificaia economic a indicatorilor u i este determinat de natura problemei
economice i de tipul restriciilor problemei primale.
ntr-o problem sub form canonic, n care se cere maximizarea funciei obiectiv,
restriciile pot fi interpretate ca inecuaii ce se refer la resurse i, de aceea, interpretarea
variabilelor ui este mai simpl.
Vom analiza modelul de programare liniar al problemelor de mai jos:
Exemplul 1: O unitate economic fabric produsele P 1, P2 i P3 utiliznd trei resurse: fora
de munc, mijloace de munc i materii prime. Consumurile specifice, cantitile disponibile din
fiecare resurs i preurile de vnzare ale produselor sunt date n tabelul de mai jos:
Produse
Resurse
Fora de munc
Mijloace de munc
Materii prime
Pre de vnzare
(uniti monetare)

P1

P2

P3

1
2
4

3
5
1

4
1
2

Disponibil
(uniti fizice)
15
10
25

Modelul matematic pe baza cruia se stabilete programul optim de producie, avnd drept
criteriu de eficien valoarea maxim a produciei, are forma:
(max) f = 3x1 + 2x2 + 6x3

x 1 3x 2 4x 3 15

2x 1 5x 2 x 3 10
4x 1 x 2 2x 3 25
x1, x2, x3 0
Utiliznd regulile de trecere la dual, rezult urmtoarea problem dual:
(min) g = 15u1 + 10u2 + 25u3

u 1 2u 2 4u 3 3

3u 1 5u 2 u 3 2
4u 1 u 2 2u 3 6
u1, u2, u3 0
Dup rezolvarea cu algoritmul simplex se obine soluia optim a celor dou probleme n
ultimul tabel simplex, dat n continuare:

62

Programarea liniar

cB

xB

x3

x1

x6

zj

xB
20
7
25
7
35
7
195
7

3
x1
0
1
0
3
0

2
x2
1
7
17
7

-9
57
7
43
7

6
x3
1
0

0
s1
2
7
1

0
6
0

0
s2
1
7
4
7

-2

9
7
9
7

6
7
6
7

0
s3
0
0
1
0
0

Exemplul 2: Activitatea unei ntreprinderi industriale se concretizeaz n fabricarea


produselor omogene P1, P2, P3 i P4, ale cror costuri unitare de producie sunt: c 1 = 4, c2 = 3, c3 = 7
respectiv c4 = 2 uniti monetare. Pentru desfurarea procesului de producie este necesar ca din
produsul P1 s se asigure un stoc de cel puin 5 uniti i, n plus, cte cel puin 2 uniti pentru
fiecare pies P3 (produsul P1 intr n componena produsului P3). n anul de baz, volumul
produciei realizate de ntreprindere a fost de 20 uniti. n urma analizei desfacerilor s-a ajuns la
concluzia c cererea este n cretere. De asemenea, ntreprinderea i propune ca n perioada de plan
s obin un beneficiu total cel puin egal cu cel din perioada de baz, care a fost de 100 u.m..
Beneficiul unitar corespunztor celor 4 produse s-a estimat a fi de 2, 5, 8 respectiv 3 u.m..
Modelul matematic corespunztor problemei primale i respectiv problemei duale are forma:
Primal

Dual

(min) f = 4x1 + 3x2 + 7x3 + 2x4

(max) g = 5x1 + 20x2 + 100x3

n condiiile

n condiiile

x 1 2x 2 5

x 1 x 2 x 3 x 4 20
2x 1 5x 2 8x 3 3x 4 100

u1 u 2 2u 3 4
u 2 5u 3 3
- 2u u 8u 7
3
1 2
u

3u

2
3 2

x1, x2, x3, x4 0

u1 oarecare, u2,u3 0 i u4 0

Exemplul 3: Considerm problema dat n exemplul 1 creia i atam dou modificri:


1. fora de munc trebuie folosit n ntregime;
2. volumul produciei planificate al produsului P2 trebuie s fie cel puin egal cu o unitate
fizic;
Cuplul de probleme primal-dual va avea forma:

63

Bazele cercetrii operaionale


Primal

Dual

(max) f = 3x1 + 2x2 + 6x3

(min) g = 15u1 + 10u2 + 25u3 + u4

x 1 3x 2 4x 3 15
2x 1 5x 2 x 3 10
4x x 2x 25
3
1 2
x2 1

u 1 2u 2 4u 3 3

3u 1 5u 2 u 3 u 4 2
4u 1 u 2 2u 3 6
u1 oarecare, u2, u3 0, u4 0

x1, x2, x3 0
Se constat ca, n funcia obiectiv a problemei duale, apar cantitile disponibile din cele trei
resurse, nmulite cu mrimile u1, u2, i respectiv u3. ntruct resursele reprezint valori de
ntrebuinare diferite, cantitile bi nu se pot nsuma dect dac indicatorii ui evalueaz resursele n
aceeai unitate de msur. Dup cum se vede din aceste model, valoarea indicatorilor u i depinde de
cantitatea de resurse disponibile, de structura consumurilor directe din resursa respectiv i de
structura matematic a modelului.
Conform teoremei ecarturilor complementare, resurselor utilizate n ntregime le corespund
evaluri ui strict pozitive, iar resurselor excedentare le corespund indicatori u i = 0. Un produs Pj va
aprea n soluia optim, (xj > 0) numai atunci cnd costul su unitar de producie, obinut prin
evaluarea resurselor consumate cu ajutorul indicatorilor u i, nu depete preul unitar de producie
cj, adic atunci cnd:
m

u i a ij = cj

(R)

i 1

Ideea enunat mai sus se confirm i n cazul exemplelor analizate. Astfel, n exemplul 1,
produsul P2 nu apare n soluia optim (x2 = 0) deoarece costul su de producie depete preul
unitar de realizare:
a12u1 + a22u2 + a32u3 > c2
adic: 3

9
6
+ 5
+ 10 = 8,1 > 2.
7
7

Celelalte dou produse intr n programul optim, ntruct este satisfcut relaia (R). Deci,
fabricarea unui produs care nu figureaz n programul optim este neeficient din punctul de vedere
al folosirii resurselor.
Prin urmare, pentru o problem de programare liniar scris sub forma canonica, n care se
urmrete maximizarea funciei f (x), mrimea ui reprezint valoarea ultimei uniti folosite n
producie din resursa Ri.
Avnd n vedere c max[f(x)] = min [g(u)], rezult c, dac, cantitatea disponibil din
resursa Ri crete cu o unitate, atunci valoarea funciei obiectiv crete cu u i, deci ui msoar creterea
valorii funciei obiectiv determinat de creterea cu o unitate a cantitii disponibile bi.
Aceste evaluri obinute dintr-un program optim au fost denumite n literatura de
specialitate "preuri umbr" sau "evaluri obiectiv determinate".
Preul umbr ui arat cu ct se modific funcia obiectiv a problemei duale 1, atunci cnd
termenul liber al restriciei Ri se "relaxeaz" cu o unitate. A "relaxa" are semnificaia de a spori
cantitatea disponibil bi a unei resurse deficitare sau, pentru restriciile de tip calitativ cu limit
1

Dar i a problemei primale, ntruct f(x) i g(u) sunt legate prin teorema dualitii

64

Programarea liniar
n

inferioar impus ( a ij x j bi), de a reduce nivelul termenului liber b i. Este evident c, dac o
j1

resurs nu este utilizat n ntregime pentru satisfacerea programului optimal xB ( a ij x j < bi),
j1

atunci ui = 0 iar funcia obiectiv nu este afectat de sporirea cantitii disponibile bi. n cazul
restriciilor de tip calitativ, acestea nu constituie un "loc ngust" pentru programul optimal xB dac i
n

numai dac

a ij x j > bi, ca urmare ui = 0 iar funcia obiectiv nu este influenat de reducerea 2


i 1

nivelului pentru indicatorul bi.


Pentru o problem scris sub form canonic, n care se cere minimizarea funciei f(x),
restriciile se refer, aa cum s-a artat, la caracteristici economice crora li se impun limite
inferioare sau la indicatori calitativi cu limit inferioar stabilit; n acest caz preul umbr u i
msoar creterea costului total al produciei, a cheltuielilor de munc, a cheltuielilor cu fondurile
fixe etc., determinat de creterea cu o unitate a componentei bi a vectorului termenilor liberi.
Astfel, daca la exemplul 2 planul de producie prevede o cretere a volumului produciei de la 20
uniti la 21 uniti, atunci costul total al produciei va crete cu u2 uniti.
n cazul problemelor de programare liniar care conin restricii neconcordante i egaliti, la
interpretarea preturilor umbr trebuie s se in seama de natura economic a funciei obiectiv i de
semnul variabilei ui. Pentru a elucida acest aspect, ne vom referi la modelul matematic ce rezult
din exemplul 3.
Soluiile optimale ale problemei primale i duale sunt:
xB = (x1, x2, x3, x4, x5, x6) = (8/7, 1, 19/7, 0, 14, 0)
uB = (u1, u2, u3, u4) = (9/7, 6/7, 0, 43/7).
Se constat imediat c valoarea funciei obiectiv f(xB) = g(uB) = 152/7 este mai mic dect
cea obinut prin rezolvarea modelului din exemplul 1, cu f(x) = 195/7 152/7 = 43/7 uniti
monetare3. Aceast diferen apare datorit introducerii restriciei x2 > 1, al crei pre umbr este u4
= 43/7. Prin urmare variabila u 4 arat cu ct scade valoarea funciei obiectiv f(x) atunci cnd
nivelul minim impus variabilei x2 este mai mare cu o unitate.
n sfrit variabila u1 = 9/7, care este ataat unei restricii sub form de egalitate, arat c
sporirea cu o unitate a nivelului forei de munc disponibile conduce la creterea valorii produciei
cu 9/7 uniti monetare.
Rezult c preurile umbr aduc informaii suplimentare pentru analiza eficienei economice
a resurselor i a diferiilor indicatori economici sau tehnici care apar n restriciile unei probleme de
programare liniar. Pe baza lor se pot fundamenta deciziile privind alocarea judicioas a resurselor,
se pot stabili msuri de stimulare a consumului raional al resurselor, se determin ct mai corect
nivelul minim i maxim al diferiilor indicatori tehnici i economici de care depinde structura
planului optim.
Soluia optim obinut prin utilizarea datelor iniiale poate constitui un punct de plecare
pentru analiza economic privind alocarea eficient a resurselor. Vom ilustra acest aspect folosind
modelul matematic elaborat n cadrul exemplului 1.
n tabelul de mai jos se dau soluiile optime ale cuplului primal-dual, pentru diferite valori
ale primei resurse (b2 = 10, b3 = 25).
Variaia termenului liber bi trebuie interpretat ca o modificare bi, n condiiile n care celelalte restricii nu se
modific. Vezi exemplul 1.
3
Reamintim c exemplul 3 s-a obinut din exemplul 1 ca urmare a unor transformri. Precizm c, n soluiile optime
ale ambelor modele, prima restricie se verific cu egalitate. De aceea, diferena dintre cele dou soluii este determinat
numai de restricia x2 > 1.
2

65

Bazele cercetrii operaionale

Variabile
u4
x1
u5
x2
u6
x3
u1
x4
u2
x5
u3
x6
f(x)

15
3
25/7
57/7
0
6
20/7
9/7
0
6/7
0
0
5
195/7

Cantitatea disponibil din prima resurs (b1)


16
26
36
40
3
3
3
3
24/7
2
4/7
0
57/7
57/7
57/7
57/7
0
0
0
0
6
6
6
6
22/7
6
62/7
10
9/7
9/7
9/7
9/7
0
0
0
0
6/7
6/7
6/7
6/7
0
0
0
0
0
0
0
0
5
5
5
5
204/7
42
55
60

41
3
0
30
0
6
10
0
1
6
0
0
5
60

Se observ c ntre anumite limite de variaie ale primei resurse, preurile umbr au aceeai
valoare. Pentru valori mai mari dect 40 uniti, preurile umbr au o alt valoare, deoarece, n acest
caz, prima resurs i a treia devin excedentare. Valoarea funciei de eficien va crete cu u 1b1,
unde b1 reprezint sporul disponibilului din prima resurs. Pentru b1 > 40 preul umbr al resursei
a doua este u2 = 6, deci valoarea funciei eficien va crete cu 6 uniti, atunci cnd b 2 crete cu o
unitate. Aste informaii sunt utile pentru fundamentarea planului de producie aprovizionare cu
diverse resurse.
La interpretarea influenei pe care variaia cantitii disponibile b i o are asupra preurilor
umbr, trebuie s se in seama c b i este o variabil continu. Din aceast cauz u i se definete
astfel:4
F
b i

ui =

Este clar c ui va avea o alt valoare cnd b i crete (scade) peste o anumit limit (de
exemplu bi > 40).
Dup cum s-a artat mai nainte, n cadrul algoritmului simplex se stabilete activitatea cea
mai eficient ak, prin folosirea criteriului de intrare:
Zk = min (zj cj) la problemele de maxim
Zk = max (zj cj) la. problemele de minim
Avnd n vedere relaia formulele de calcul ale lui Z i uB, rezult c:
m

zj =

c i y ij
i 1

u i a ij
i 1

j JS

unde yij reprezint elementele coloanei j din tabelul simplex corespunztor unei soluii de baz. n
4

F este o funcie de tip Lagrange, obinut din problema standard de programare liniar astfel:
m

F = f(x) +

uiRi (x)

i 1

unde Ri(x) reprezint restriciile problemei de programare liniar iar ui, 1 i m sunt multiplicatorii lui Lagrange.

66

Programarea liniar
cea de a doua sum a relaiei precedente se evalueaz coeficienii consumurilor directe,
corespunztori activitii aj, prin preurile umbr ataate celor m restricii i, de aceea, mrimea
rezultat poate fi interpretat ca un pre umbr al produsului sau activitii j. Trebuie precizat c,
pentru fiecare baz, vom dispune de un vector u = (u 1, u2, ... , um) care se refer la fluxurile intrri ieiri corespunztoare soluiei de baz. De aceea, evalurile privind eficiena economic a
activitilor aj (j JS = indicii variabilelor secundare), fcute cu ajutorul indicatorilor u i, sunt
valabile numai pentru baza considerat.
Concluziile obinute pe baza analizei corespondenei biunivoce dintre problema primal i
cea dual ne permit s nelegem sensul economic al criteriului de intrare n baz.
Pentru problemele n care se cere maximizarea funciei f(x), indicatorii zj reprezint costul
unitar de fabricaie al produsului j, rezultat din evaluarea coeficienilor a ij prin preurile umbr
ataate restricii1or. Rezult c, prin calcularea diferenei j, se compar acest cost unitar cu
coeficientul cj (pre unitar, beneficiu unitar etc.) din funcia obiectiv. Dac exist diferene negative
(j < 0) nseamn c, la activitile respective, preul umbr al produsului j (costul unitar de
fabricaie exprimat n indicatori ui) este mai mic dect venitul realizat i de aceea activitatea a j este
eficient. Aa se explic faptul c va intra n baz vectorul a k ce corespunde diferenei zj minime.
n momentul n care toate diferenele sunt pozitive (zj 0) rezult c nu mai exist activiti
eficiente i prin urmare soluia de baz analizat este optim.
n cazul problemelor de minim, indicatorii zj se pot interpreta ca venituri, exprimate n
preurile umbr ale restriciilor, ce se obin prin realizarea unei uniti din produsul j. Prin urmare,
dac exist diferene pozitive (zj > 0), activitile aj corespunztoare sunt eficiente, deoarece se
realizeaz un venit unitar mai mare dect costul unitar de fabricaie (z j > cj). De aceea, va intra n
baz activitatea ak, corespunztoare diferenei maxime, iar soluia de baz se consider optim
atunci cnd toate diferenele zj sunt nepozitive (zj 0).

67

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