Documente Academic
Documente Profesional
Documente Cultură
Exist probleme economice echivalente care utilizeaz aceleai date de intrare pentru restriciile din modelele matematice i n care funciile economice se prezint fie sub forma unui maxim, fie sub forma unui minim. De exemplu, n problema nutriiei poate interesa ntocmirea unei raii alimentare ce trebuie s conin cantitatea necesar de uniti nutritive cu pre de cost minim, dar i problema stabilirii unei raii la un pre dat, care s cuprind un numr maxim de uniti nutritive. Pentru a stabili o raie este recomandat ca cele dou probleme duale s fie analizate economic dup rezolvarea lor matematic. Problema de baz a crei soluie se gsete prin metode de programare liniar este numit problema primal. Fiecrei probleme primale i corespunde o problem dual, care aduce unitii de decizie informaii adiionale. Natura problemei duale depinde de problema primal. Dac problema primal este o problem de maximizare, atunci duala ei va fi o problem de minimizare. Analog, dac primala este de minimizare, duala va fi de maximizare. Soluia optim nu trebuie s fie considerat ca un model de inteligen de nedepit, ea trebuie analizat i, eventual, ajustat de ctre manager, sftuit de specialiti, conform unor intercondiionri care nu au putut fi exprimate prin relaiile matematice din modelul rezolvat, dar cunoaterea ei este absolut necesar n luarea unor decizii justificate tiinific.
1. Analiza problemei primale Pentru a realiza analiza economic a operaiilor algoritmului simplex primal se va considera un model clasic de stabilire a unui program optim de fabricaie. Problema primal:
Elementele modelului Semnificaii economice
III.1.1 [max] f = 20 x1 + 10 x 2 + 12 x3
x1 + 2 x 2 680 u1 III.1.2 2 x1 + x 2 + 4 x3 800 u 2 5 x + 4 x + 2 x 900 u 2 3 3 1 III.1.3 x j 0, j = 1,3
x j , j = 1,3
Pj .
Disponibilul din resursa i . Cantitatea din resursa i care se consum pentru o unitate de produs
bi , i = 1,3
aij , i, j = 1,3
a
j =1
ij
x j bi
c j , j = 1,3
Pj .
Problema dual (semnificaiile economice ale relaiilor dualei depind de procesul modelat prin primal i tipul restriciilor primalei i vor fi deduse n paragraful 2):
cj
cB
0 0 0 B
20
10
12
Criterii
XB
680 800 900 0
a1
1 2 5 0 -20
a2
2 1 4 0 -10
a3
1 4 2 0 -12
a4
1 0 0 0
a5
0 1 0 0
a6
0 0 1 0
a4
a5 a6 fj f j cj
0 j ? NU
min ( f j c j ) = 20 = f 1 c1
deoarece va provoca cea mai mare cretere a funciei economice venit total, i anume:
Venit total T.III.1.2 2 Venit total T.III.1.1 1 Numr de uniti a noii variabile bazice Venit unitar
III.1.7
x1 .
c1 = f 1 c1
= 0+
900 c1 = 3600 5
Egalitatea c1 = f 1 c1 apare ca un caz particular cnd soluia de start este format numai din variabile de abatere. Criteriul de ieire din baz este invariabil la tipul de optim.
n cantiti egale cu 680, 800, respectiv 900, numrul maxim de produse P1 care pot fi fabricate este 180; resursa R3 este prima resurs care se consum prin introducerea lui P1 n programul de fabricaie.
T.III.1.2
c j 20 cB
0 0 20 B
10
12
Criterii
XB
500 440 180 3600
a1
0 0 1 20
a2
6/5 -3/5 4/5 16 6 9/8 -3/16 7/8 61/4 21/4
a3
-2/5 16/5 2/5 8 -4 0 1 0 12
a4
1 0 0 0 1 0 0 0
a5
0 1 0 0 1/8 5/16 -1/8 5/4 5/4
a6
-1/5
a4
a5
a1
-2/5 440/(16/5) (min) 1/5 4 4 -1/4 -1/8 1/4 7/2 7/2 180/(2/5)
fj f j cj
0 12 20
0 j ? NU
a4
0 0 1 20
a3
a1
fj f j cj
0 j ? DA
STOP
Informaiile coninute n ultima iteraie: Problema primal admite soluie optim finit ( f j c j 0, j = 1,6 ), nedegenerat ( X B > 0 ) i unic determinat (nu exist vector nebazic cu
de fabricaie este x1 = 125 , x3 = 137.5 . Prin programul optim, resursele R2 i R3 sunt consumate integral. Din resursa R1 rmne un stoc de 555 uniti. Calculm consumul din R1 :
* * x1 + 2 x 2 = 125 680 ,
i concluzionm c cele 555 uniti pot fi folosite pentru 4 125 noi programe, rmnnd un stoc de 55 uniti. Este posibil ca aceast imobilizare de fonduri fixe s mreasc cheltuielile totale de fabricaie. Produsul P2 este nerentabil n condiiile actuale. Venitul total este maxim i egal cu:
Veni total maxim Venit total + T.III.1.2 Numr de uniti a noii variabile bazice x3 .
f 3 c3 =
= 3600 +
440 4 = 4150 . 16 / 5
Dac problema primal admite soluie optim finit, atunci i duala sa admite soluie optim finit i:
U = c B
*
B
1 1/ 8 1/ 4 = (0 12 20 ) 0 5 / 16 1 / 8 = (0 5 / 4 7 / 2 ) , 0 1/ 8 1/ 4
elemente ce apar n linia f j n dreptul vectorilor ce au format prima baz. Mai mult, [min]g = [max] f = 4150 . Inversa bazei optime B 1 postoptimizare (vezi capitolul IV). este utilizat n procedura de
(u
* 1
* u2
* u3
f 4 c4
f 5 c5
f 6 c6
este
soluia
iteraia
doua,
construim
acelai
mod
vectorul
Cum u i 0, i = 1,5 i u 6 = 4 < 0 , soluia u 2 nu este admisibil pentru dual. Se tie c dac cX = Ub i soluia admisibil de baz X nu este optim, atunci U nu este soluie admisibil pentru dual, ceea ce tocmai am verificat. Efectund aceleai calcule cu elementele din tabelul optimal, gsim c U 3= U * , deoarece, n acest caz, X SAB este optim.
n continuare vom generaliza analiza economic a operaiilor necesare gsirii soluiei optime.
unic:
a11 a y1 j 21 ... a m1
Relaia III.1.8 exprim echivalena consumului: pentru a fabrica un produs Pj se consum din R1 , R2 ,..., Rm tot att ct s-ar consuma dac s-ar prelucra y1 j , y 2 j ,..., y mj uniti din P1 , P2 ,..., Pm .
c j este venitul unitar ateptat de la o unitate Pj . n expresia (c1 y1 j + ... + c m y mj ) c j , (c1 y1 j + ... + c m y mj ) este venitul total
ateptat din vnzarea a y1 j ,.., y mj uniti din P1 ,.., Pm , iar c j este venitul scontat din vnzarea unui produs Pj . Se vor analiza cele dou situaii posibile: S1) f j c j < 0 implic f j < c j , deci este rentabil producerea lui Pj . Pentru o rentabilitate maxim se alege
f k c k = min ( f j c j ) .
f j c j <0
Introducerea lui a k n baz este echivalent cu introducerea lui Pk n procesul de fabricaie; n acest mod se va produce cea mai mare cretere a lui f. S2) Dac f j c j , j , nici un produs din afara celor care au reprezentant n baz nu este rentabil a fi produs. Valoarea f k c k apare ca un venit marginal algebric corespunztor introducerii activitii Pk n programul de fabricaie.
(i ) ( i +1 f ( X SAB ) f ( X SAB ) ) :
f ( X (i +1) ) = f ( X (i ) ) l ( f k c k ) = f ( X ( 2 ) ) Se spune c [ l ( f k c k )] =
i=2
ak
x s i x k sunt:
y x s y lk xl y sk = x s xl sk y lk y lk x x x k := l sau y kl := l y kl xk x s :=
care nlocuit mai sus ne permite scrierea: pivot
as
xs
y sk
al
xl
y lk
Dac x k(i +1) = 1 x s(i ) scade cu y sk ; y sk apare ca o tax de substituire a activitii Pk de ctre activitatea Ps . Pentru problema considerat la iteraia 2 lum n discuie activitatea
P1 :
x1( 2 ) = 180 ;
s=1,
k=3
adic
125 = 180
2. Analiza economico-matematic a problemelor primal-dual Problema primal este calea original prin care se enun matematic problema propus a fi rezolvat.
Se consider m resurse, R1 , R2 ,..., Rm (materii prime, materiale, for de munc, capaciti de producie, etc) care particip la realizarea a n produse, P1 , P2 ,..., Pn . Notm cu c j venitul obinut n urma valorificrii unei uniti Pj , iar cu x j nivelul activitii Pj , j 1, n . Obiectivul problemei este:
III.2.1
[max] f = c j x j =
j =1 j =1
Numr de uniti Pj
a
j =1
ij
x j bi ,
i 1, m ,
adic,
Ct se consum din resursa Ri pentru o unitate din Pj
III.2.2
j =1
Numr de uniti
Pj
i 1, m .
Problema dual este unic determinat pentru o problem primal dat. Programul su liniar utilizeaz acealeai date de intrare, dar cu alte semnificaii algebrice. Obiectivul:
III.2.3
[min]g = u i bi =
i =1 i =1
ui
a u
i =1 ij
cj
, j 1, n ,
ceea ce nseamn
Ct se consum din Ri pentru o unitate de Pj . Venit ateptat de la o unitate Pj
III.2.4
i =1
ui
, j = 1, n .
u i 0 , i 1, m .
Dac problema primal admite soluie optim finit, atunci i duala are optim finit i III.2.5 [max ] f ( X * ) = [min ]g (U * ) .
j =1
i =1
Ri
u i*
Uniti monetare
Din cauza egalitii, variabila u i trebuie s aib semnificaia unui pre ataat resursei R i ; acesta va fi numit pre umbr sau pre intern sau pre de eficien. Explicitd relaia III.2.5, gsim
* * * * III.2.6 c1 x1 + ... + c n x n = [max ] f = [min ]g = b1u1 + ... + bi u i* + ... + bm u m ,
i =1
Din ultimele dou relaii, rezult semnificaia lui u i* : acesta arat cu ct crete valoarea optimal a programului primal dac disponibilul din resursa R i crete cu o unitate. Aceast valoare poate fi privit ca o evaluare
obiectiv determinat a unei uniti din resursa R i . Preurile umbr sunt costuri impuse sau de oportunitate ale factorilor de producie (resurse, n cazul considerat). Ei sunt indicatori cruciali pentru analiza programului optim i pentru modificarea lui n cazul redefinirii valorilor unor disponibile. Scrise ca un ir descresctor, valorile optimale ale variabilei duale indic ordinea de preferin n aprovizionarea suplimentar din cele m resurse; se poate astfel estima importana relativ a celor m resurse n realizarea scopului declarat. Resursele care sunt consumate prin programul optim au preuri umbr nenule, iar cele care nu sunt consumate integral au preuri umbr nule. Valorile u i* , i 1, m , depind de cantitile bi de resurse disponibile, de valoarea consumurilor specifice aij , j 1, n , i de tipul restriciilor primalei. n cazul u i* > 0 , i 1, m , ea va reprezenta aportul valoric (contribuia bneasc) la venitul total al unei uniti din resursa Ri i, n acelai timp, reflect deficitul relativ al resursei n raport cu eficiena sistemului, msurat prin venit. Din punct de vedere matematic, u1 ,..., u m sunt multiplicatorii lui Lagrange; ei dau informaii despre rata de cretere sau descretere a lui
f ( X ) la o cretere de o unitate a unui disponibil.
exprimat prin ele egaleaz valoarea maxim a funciei obiectiv f. Preurile umbr, ale cror valori sunt stabilite prin rezolvaea problemei primale, au o mare importan practic, deoarece indic cu ct va crete venitul firmei dac se decide mrirea produciei prin suplimentarea unor resurse.
i =1
Pj
ui
{AX
b X 0
Condiia necesar i suficient pentru ca un cuplu de soluii admisibile de baz X * i U * s fie optime este ca ele s satisfac simultan relaiile: III.2.9 III.2.10
U * ( AX * b) = 0 , X * (c U * A) = 0 .
T
III.2.11
Cazul 1 u i* > 0
a
j =1
ij
primala a fost rezolvat prin algoritmul simplex primal. Din tabelul final am extras baza optim: (a 2 f j c j = (0 0 5 3 5 0) .
* * * Pentru i = 1 relaia III.2.1 devine u1 ( x1 + 3x 2 700) = 0 . Soluiile
* * optime fiind cunoscute, se constat rapid c x1 + 3 x 2 700 = 0 i * u1 = 3 > 0 . Din interpretarea preului umbr u , rezult c, dac disponibilul
a1
a6 ) , B
3 / 8 1/ 8 0 = 1 / 8 3 / 8 0 i 5 / 8 1/ 8 1
(a 2
a1
a6 ) :
3 * u1 150 + 8 700 + {1,2,...} * * B 1 * X ( , u1 ) = B 900 = 250 u1 0 u1 2000 {1,...,400} 8 800 u * 400 5 * 1 u1 250 8 Pentru aceste valori ale lui , X ( ) este optimal. n aceste condiii,
Rezultatul obinut este foarte interesant deoarece s-a obinut un program de fabricaie cu consumul integral al tuturor resurselor, dac b1 crete cu 400 de uniti, iar b2 , b3 se menin. Valoarea maxim a funciei obiectiv va fi, n acest caz, [max ] f = 8200 u.m.
n
Cazul 2
a
j =1
ij
nu este complet utilizat, preul su umbr este nul. Pentru i = 3 , din III.2.11, rezult:
* * * * u 3 ( x1 + 2 x 2 + 2 x3 800) = 0 ,
unde
* * * x1 + 2 x 2 + 2 x3 = 550
reprezint
consumul din resursa R3 , iar 800 este disponibilul din aceeai resurs. Din relaia matriceal III.2.10, considerm produsul:
m x * c j aij u i* = 0 , j = 1, n , j i =1
III.2.12
Cazul 3 x * > 0 j
prelucrarea produsului Pj deoarece valoarea consumurilor unitare din cele m resurse calculate pe baza preurilor (umbr) interne nu depete venitul ateptat. Pentru j = 1 , se observ c
* * * * x1 [18 (u1 + 3u 2 + u 3 )] = 0 ,
a11 =1
a12 a13 = 3 =1
i =1
P1
= 0.
Cazul 4
a u
i =1 ij
* i
rentabil deoarece evaluarea resurselor consumate pentru o unitate Pj prin preurile umbr depete venitul ateptat de la o unitate Pj . Pentru cazul numeric menionat mai sus i i=3
,
avem:
* j
nivelul activitii
Pj
(numr de produse
Pj ) Ri
a u
j =1 ij
* i
a
i =1
ij
x * bi j
- ct va fi consumat din
* i
Ri , privit ca rata cu
care
RangA=m Cel mult m restricii ale dualei sunt verificate prin Programul optim prevede realizarea a cel mult m egalitate. activiti diferite. [max]f [min]g
g (U ) f ( X ) 0, X SAB , U SAB g (U ) f ( X ) g (U * ) f ( X ) g (U ) f ( X ) g (U ) f ( X * )
n finalul paragrafului revenim la problemele duale date de relaiile III.1.1-III.1.3, respectiv III.1.4-III.1.6, pentru a le analiza prin prisma teoremei ecarturilor complementare. Din teoremele fundamentale ale dualitii rezult c duala unei probleme ce admite soluie optim finit are, de asemenea, soluie optim finit i [max] f = [min]g . Soluia optim a dualei poate fi stabilit aplicnd metoda simplex sau o variant a acesteia. Rezolvarea dat n T.III.1.1-T.III.1.2 ne faciliteaz aflarea soluiei optime a dualei. Deoarece baza iniial a fost (a 4 a5 a 6 ) , soluia optim a dualei este dat de valorile f 4 , f 5 , f 6 din ultimul tabel simplex. Astfel,
* * u1 = 0 , u 2 =
5 * 7 , u 3 = , iar valoarea minim a funciei obiectiv din dual 4 2 5 7 + 900 = 4150 = [max] f . 4 2
275 2
i U * = 0
5 4
7 2
[ [ [
( ( (
( ( (
)]
)] )]
preul intern ce caracterizeaz resursa a doua (fondul de timp disponibil al seciei 2) este strict pozitiv, atunci aceast resurs este complet utilizat n programul optim de producie. Valoarea 5/4 d creterea lui [max] f = 4150 dac fondul de timp al seciei 2 crete cu o unitate. Dac problemele duale nu sunt simetrice, i n practic acest lucru este frecvent, u i* poate fi strict negativ, ceea ce nseamn c matricea disponibilului resursei i este nerentabil, deoarece duce la micorarea lui [max] f .
* * - n prima relaie avem x1 + 2 x 2 680 = 125 + 2 0 680 0 , de
* * unde rezult c u1 trebuie s fie 0, i, ntr-adevr, u1 = 0 . n acest caz,
interpretarea economic este urmtoarea: dac programul optim nu presupune epuizarea fondului de timp disponibil al seciei 1, atunci preul de eficien al resursei este nul. Eficiena mririi acestui fond este nul, n realitate ar provoca pierderi (resurs nestocabil). - n penultima relaie, 5 7 * * * * 10 2u1 + u2 + 4u3 0 2 0 + + 4 > 10 = c 2 x 2 = 0 . 4 2 Produsul de tip 2 nu intr n programul optim de fabricaie, deoarece valoarea timpilor de prelucrare la cele trei secii a unui produs de tipul 2, calculat pe baza preurilor interne optime, depete profitul su unitar. - Din antepenultima i ultima relaie rezult c este rentabil 275 prelucrarea a 125 produse de tipul 1 i a produse de tipul 2, pentru 2
c valorile timpilor de prelucrare obinute prin evaluarea acestora cu ajutorul preurilor interne nu depesc profiturile.
Un program de producie este optim sub aspectul profitului dac i numai dac exist un sistem de preuri interne (preuri umbr) care s egaleze profiturile cu cheltuielile, [max] f = [min]g . Preurile interne apar ca expresie a valorii resurselor luate n consideraie n modelul matematic. Valoriel lor optime sunt nule pentru resursele excedentare i nenule numai pentru resursele folosite integral n programul optim.
Se aplic algoritmul simplex primal pentru a stabili existena sau nonexistena soluiei optimale a primalei. Forma standard a sistemului de restricii pentru problema primal este urmtoarea:
x1 + x3 + x 4 + 2 x5 x 6 = 700 , x 2 + x 4 + x5 x 7 = 400
x 2 = 400
xi = 0
i 3,7
x3 = 700
xi = 0
i 4,7
iar
1 Problema cere minimizarea formei liniare f, i cum f ( X SAB ) este 2 1 mai apropiat de [min]f dect f ( X SAB ) , X SAB va fi soluia de start.
cj cB
2 20 B
20
11
12
xB
700 400 9400
a1
1 0 2
a2
0 1 20
a3
1 0 2 -1
a4
1 1 22 11
a5
2 1 24 12
a6
-1 0 -2 -2
a7
0 -1 -20 -20
a1 a2 fj
f j cj
cj
20
11
12
cB
12 20
xB
350 50 5200
a1
1/2 -1/2 -4 -6
a2
0 1 20 -1 2 10 -10
a3
1/2 -1/2 -4 -7 1 -1 1 -2
a4
1/2 1/2 16 5 0 1 11
a5
1 0 12 1 0 12
a6
-1/2 1/2 4 4 -1 1 -1 -1
a7
0 -1 -20 -20 1 -2 -10
a5
a2 fj
f j cj
12 11
a5
a4 fj
1 -1 1 -1
f j cj
iar [min]f=4700.
Din prima teorem fundamental a dualitii rezult c i duala acestei probleme are soluie optim finit i [min] f = [max]g = 4700. Soluia optim a dualei se citete n linia f j din ultimul tabel, n dreptul vectorilor ce au format prima baz. Aadar, soluia optim a dualei este:
* * u1 = 1 , u 2 = 10 .
Soluia optim a dualei poate fi determinat foarte uor folosind metoda grafic. Intersecia semiplanelor ale cror ecuaii sunt date de restriciile problemei va evidenia poligonul soluiilor admisibile: u1 2 d1 : u1 = 2 ; u 2 20 d 2 : u 2 = 20 ; u1 3 este eliminat de
u1 2 ;
u1 + u 2 11 d 3 : u1 + u 2 = 11 ; 2u1 + u 2 12 d 4 : 2u1 + u 2 = 12 .
d2 d1
D C B Figura III.3.1
d4
d3
u1
Coordonatele acestor puncte extreme mai au i alt semnificaie, i anume, sunt soluiile unor sisteme saturate de restricii ale dualei (sistemele saturate sunt formate din restricii verificate cu egalitate). De exemplu, B(2,8) verific sistemul saturat
u1 = 2 . 2u1 + u 2 = 12
Fie B o baz din tabelul simplex al primalei i J B mulimea indicilor variabilelor bazice: de exemplu, baza (a1
a 2 ) , J B = {1,2} . La aceast baz
se poate asocia un sistem saturat de 2 restricii ale dualitii (n general hiperplane) dup urmtorul procedeu:
Pasul 1 n tabelul cu baza (a1
j = 1 f1 = 2 ; j = 2 f 2 = 20 . a 2 ) se citesc f j , cu j J B .
citii la pasul
a 2 ) J B = {5,2} .
Se observ c soluia acestui sistem este soluia optim a dualei. n concluzie, exist o coresponden biunivoc ntre soluiile de baz ale problemei primale i vrfurile poliedrului soluiilor admisibile ale dualei, iar g = 700u1 + 400u 2 este o combinaie liniar pozitiv de vectori normali la dreptele intersectate n A. n general, exist un singur astfel de vrf, acesta reprezentnd chiar soluia optim.