Explorați Cărți electronice
Categorii
Explorați Cărți audio
Categorii
Explorați Reviste
Categorii
Explorați Documente
Categorii
Capitolul 1
MS - Cursul 1
MS - Cursul 1
Condiiile n care se desfoar o anumit activitate economic analizat conduc la un sistem de relaii - ecuaii sau inecuaii - care conin variabilele problemei i coeficienii tehnologici care o caracterizeaz. Aceste relaii reprezint restriciile problemei. Scopul studiului este optimizarea unui anumit rezultat dependent de variabilele problemei. n formularea problemelor de programare matematic, obiectivul apare sub forma unei funcii, denumit funcie obiectiv (scop), ale crei valori maxime sau minime sunt cutate.
MS - Cursul 1 Cap.1. Programare liniar 4
Restriciile problemei i funcia obiectiv, cu anumite condiii impuse variabilelor, constituie modelul matematic al problemei. Dac att funcia obiectiv ct i restriciile sunt funcii liniare, atunci modelul este o problem de programare liniar.
MS - Cursul 1
S se ntocmeasc programul (planul) optim de producie al firmei astfel nct profitul total realizat s fie maxim. Elaborarea modelului matematic al problemei: Se noteaz cu xj (j = 1,..., n) cantitatea din produsul Pj ce urmeaz a fi produs. Funcia obiectiv este profitul total, care trebuie maximizat: [max] f = c1 x1 + c2 x2 + L + cn xn Restriciile problemei se datoreaz limitrii resurselor. Consumul din fiecare resurs Ri (i = 1,..,
MS - Cursul 1 Cap.1. Programare liniar 7
Condiiile asupra variabilelor sunt de nenegativitate: xj 0 (j =1,, n). Modelul matematic al problemei are forma:
[max] f = c1 x1 + c2 x2 + L + cn xn a11 x1 + a12 x2 + L + a1n xn b1 LLLLLLLLLLL am1 x1 + am 2 x2 + L + amn xn bm x 0, x 0, ..., x 0 2 n 1
MS - Cursul 1 Cap.1. Programare liniar
Exemplu. Problem de utilizare a capacitii utilajelor O firm realizeaz n tipuri de produse care pot fi fabricate pe m utilaje, care au capaciti de producie limitate pe o anumit perioad. Se cunosc: procentul aij din capacitatea utilajului i (i = 1,..., m) necesar pentru fabricarea unei uniti din produsul j (j = 1,..., n); profitul unitar cj al produsului j. S se stabileasc un program de fabricaie care s permit utilizarea optim a capacitii disponibile a celor m utilaje.
MS - Cursul 1 Cap.1. Programare liniar 9
Elaborarea modelului matematic: Variabilele problemei sunt cantitile de produse fabricate n perioada considerat. Se noteaz cu xj (j = 1,, n) numrul de produse de tipul j. Funcia obiectiv este profitul total obinut de firm pentru cele n tipuri produse; funcia trebuie maximizat:
[max] f = c j x j
j =1 n
aij x j 1,
j =1
MS - Cursul 1
i = 1, m
10
MS - Cursul 1
11
Funcia liniar z este funcia obiectiv a problemei; ea trebuie minimizat sau maximizat. Celelalte relaii constituie sistemul de restricii ale problemei. n fiecare relaie apare doar unul din simbolurile " ", " ", " = ". Membrul stng al fiecrei relaii este o funcie liniar n variabilele x1 , x2 ,..., xn . Definiie. O problem de programare liniar (PL) const n optimizarea (minimizarea sau maximizarea) unei funcii liniare, cu respectarea unor restricii (egaliti i/sau inegaliti) liniare.
MS - Cursul 1 Cap.1. Programare liniar 13
Definiie. O problem de PL are forma standard dac toate restriciile sunt ecuaii i toate variabilele sunt supuse condiiei de nenegativitate. Problema de PL n forma standard scris explicit: [min] ([max]) z = c1 x1 + c2 x2 + L + cn xn a11x1 + a12 x2 + L a1n xn = b1 LLLLLLLLLLL am1 x1 + am 2 x2 + L amn xn = bm x 0, x 0, ..., x 0 2 n 1
MS - Cursul 1
14
Observaie. Din punct de vedere algebric, sistemul de restricii (ecuaii liniare) Ax = b poate fi: incompatibil, compatibil unic determinat sau compatibil nedeterminat. Evident, numai ultimul caz prezint interes practic, pentru c doar atunci se pune efectiv problema de a alege dintre mai multe soluii pe cea mai bun. Definiie. O restricie a unei probleme PL se numete concordant dac este o inegalitate de tipul " " cnd funcia obiectiv este minimizat i este de tipul " " cnd funcia este maximizat.
MS - Cursul 1 Cap.1. Programare liniar 16
Definiie. O problem de PL are forma canonic dac toate restriciile sunt concordante i toate variabilele sunt supuse condiiei de nenegativitate. O problem de PL de minimizare, n form canonic, se scrie explicit, respectiv, matriceal:
min c T x Ax b x0
17
O problem de PL de maximizare, n form canonic, se scrie explicit, respectiv, matriceal: max z = c1 x1 + c2 x2 + L + cn xn T max c x L a x a x a x b + + 11 1 12 2 1 1 n n Ax b LLLLLLLLLLL x0 am1 x1 + am 2 x2 + L amn xn bm x j 0 , j = 1, n
MS - Cursul 1
18
Definiie. O problem de PL are forma mixt dac toate restriciile sunt fie ecuaii, fie inegaliti concordante i toate variabilele sunt supuse condiiei de nenegativitate:
min (max) c T x A1x b1 A2 x = b2 x0
MS - Cursul 1
19
Orice problem de PL n forma general poate fi adus la forma standard, canonic sau mixt cu urmtoarele transformri echivalente: a) sensul unei inegaliti se schimb prin nmulire cu -1; b) transformarea unei inegaliti ntr-o egalitate se realizeaz prin introducerea unei variabile, numit variabil de compensare (abatere sau ecart), y 0, astfel nct:
T a x + y = T a x y0
MS - Cursul 1
T a x y= T a x y0
20
cu dou inegaliti
aT x T - a x
x= yz x arbitrar y, z 0
f) transformarea operatorului maxim n minim (sau invers) se realizeaz prin schimbarea semnelor coeficienilor din funcia obiectiv:
n min ci xi = max ci xi i =1 i =1 Observaii: 1) Variabilele de compensare nu apar i n expresia funciei obiectiv a problemei (coeficienii lor n funcia obiectiv sunt nuli).
n
MS - Cursul 1 Cap.1. Programare liniar 22
2) n problemele de PL cu semnificaie economic concret, variabilele de compensare introduse primesc, la rndul lor, interpretri economice precise; se motiveaz astfel includerea acestor variabile n setul variabilelor iniiale. Rezolvarea unei probleme de PL const n determinarea valorilor variabilelor care satisfac restriciile problemei i care optimizeaz funcia obiectiv.
MS - Cursul 1
23
Soluie. Problema din enun este n forma general. Forma standard a problemei se obine prin introducerea variabilelor de compensare x4 i x5, nenegative, n ultimele dou restricii:
MS - Cursul 1 Cap.1. Programare liniar 24
Forma canonic de minimizare a problemei se obine prin transformarea primei restricii a problemei originale n dou inegaliti de tipul " ":
MS - Cursul 1
25
min (3 x1 5 x2 + 2 x3 ) x1 + 4 x2 + 3 x3 15 - x1 4 x2 3 x3 15 2x x 1 2 1 3 x2 x3 7 x1 , x2 , x3 0
MS - Cursul 1
26
MS - Cursul 1
27
MS - Cursul 1
Relaia (1) exprim matematic funcia obiectiv z i arat evaluarea volumului activitilor desfurate la nivelurile xj, prin intermediul coeficienilor cj, ce pot fi costuri unitare n cazul problemelor de minim, sau profituri unitare, n cazul problemelor de maxim. Relaiile (2)-(4) constituie sistemul de restricii ale problemei, exprim diverse cerine tehnico-economice de desfurare a activitii, de plan, de pia etc. Ele sunt scrise cu ajutorul coeficienilor tehnicoeconomici aij, constani ntr-un interval de timp determinat. Termenii liberi bi cuantific, dup caz, resursele
MS - Cursul 1 Cap.1. Programare liniar 29
disponibile materiale, financiare, de capaciti de producie sau normative minimale, capacitatea minim de absorbie a pieii etc. Restriciile (2) coreleaz volumul consumului activitilor cu cel al disponibilului din fiecare resurs. Restriciile (3) impun un volum al activitilor peste limitele minimale. Restriciile (4) impun realizarea strict a unui plafon prestabilit. Relaiile (5) exprim condiiile de nenegativitate impuse variabilelor xj i au ca sens economic nivelul de desfurare al activitilor.
MS - Cursul 1 Cap.1. Programare liniar 30
MS - Cursul 1
31
(*)
Vom nota mulimea soluiilor posibile ale problemei (*) prin: P = {x R n Ax = b, x 0} Observaie: Evident, prezint interes practic situaia n care mulimea P .
Definiie. Soluia posibil x1 este mai bun dect soluia posibil x2, dac z(x1) z(x2) cnd pentru funcia obiectiv z se cere minimul, respectiv, z(x1) z(x2) cnd pentru funcia obiectiv z se cere maximul.
MS - Cursul 1 Cap.1. Programare liniar 33
Definiie. Vectorul xRn se numete soluie de baz pentru sistemul de ecuaii Ax = b dac: a) x este soluie a sistemului Ax = b; b) coloanele din matricea A corespunztoare componentelor nenule ale lui x formeaz o mulime liniar independent. Definiie. O soluie de baz x* este soluie optim a unei probleme de PL dac z(x*) are cea mai mic valoare posibil n cazul unei probleme de minimizare, respectiv, cea mai mare valoare posibil n cazul unei probleme de maximizare.
MS - Cursul 1 Cap.1. Programare liniar 34
o soluie de baz nedegenerat, deoarece verific sistemul de restricii, condiiile de nenegativitate i are m = 3 componente 2 strict pozitive; f ( x ) = 274 / 7 .
x = (17 / 3, 25/6, 0, 5/2) este o soluie de baz nedegenerat optim; f ( x 3 ) = f min = 71 / 3.
3 T
MS - Cursul 1
37
Mulimea programelor (soluiilor admisibile) P este o mulime convex i nchis. Frontiera sa este compus din toate punctele ale cror coordonate satisfac, cu egalitate, cel puin una dintre restricii.
Definiie. Vectorul x P se numete vrf (punct de extremum) al mulimii P dac x nu poate fi scris ca o combinaie liniar convex nebanal de vectori din P, adic / (0,1) astfel nct / x1, x2P, x1 x2, 1 2 x = x + (1 - ) x . Teorem. O soluie posibil este soluie de baz dac i numai dac este vrf pentru mulimea P.
MS - Cursul 1 Cap.1. Programare liniar 38
Definiie. Se numete baz a unei probleme de PL n forma standard un grup de m coloane din matricea A liniar independente. Definiie. Baza B care satisface condiia B 1b 0 se numete baz primal admisibil.
MS - Cursul 1
39
Exemplu. Fie restricia 2x + 3y 12 i semispaiul nchis format din punctele care satisfac restricia. Punctul O (0, 0) nu aparine dreptei 2x + 3y = 12, iar coordonatele sale verific inegalitatea. Ca urmare, semispaiul conine originea O:
MS - Cursul 1
42
Exemplu. Fie restricia 4x + 2y + 5z 20 ce definete un semispaiu nchis n R3. Acesta se poate reprezenta n spaiul tridimensional prin trasarea planului 4x + 2y + 5z = 20. Punctul origine O verific restricia.
MS - Cursul 1
43
Ecuaia hiperplanului x + y = k reprezint o dreapt numit i curb de nivel a funciei obiectiv. Din geometria analitic se tie c distana d de la origine la dreapta de nivel x + y = k este d = k / 2. Deci, valoarea maxim a lui k se obine atunci cnd d are valoarea maxim. Deoarece soluia optim satisface att sistemul de restricii, ct i ecuaia curbei de nivel, este necesar ca
MS - Cursul 1 Cap.1. Programare liniar 46
dreapta s aib un punct n comun cu poligonul. Punctul respectiv are coordonatele (2, 3).
Soluia (soluiile) de baz optim a problemei se alege dup compararea valorilor funciei obiectiv calculate pentru soluiile de baz. Observaii: 1) Soluia optim a unei probleme de PL este chiar unul din vrfurile poligonului reprezentnd mulimea soluiilor posibile P. 2) n cazul n care curbele de nivel sunt drepte paralele cu una din laturile poligonului soluiilor admisibile, soluiile optime ale problemei sunt n numr infinit; din punct de vedere geometric, ele sunt punctele de pe acea latur a poligonului.
MS - Cursul 1 Cap.1. Programare liniar 49
Soluie. Condiiile de nenegativitate ale variabilelor implic utilizarea primului cadran al sistemului de axe x1Ox2 pentru reprezentarea grafic a dreptelor (obinute din cele patru restricii ale problemei):
MS - Cursul 1 Cap.1. Programare liniar 50
(d1 ) : 3 x1 + 2 x2 = 21 (d 2 ) : x1 + x2 = 8 (d3 ) : x1 =6 (d 4 ) : x2 = 7
i a dreptei (curba de nivel) (d): 5x1 + 4 x2 = 20. Intersecia celor patru semiplane este reprezentat prin mulimea haurat din figur i este mulimea P a soluiilor admisibile (posibile). Cel puin unul din vrfurile acestui poligon convex, O(0, 0), A(6, 0), B(6, 3/2), C(5, 3), D(1, 7), E(0, 7) este soluie optim a problemei. Pentru a-l determina se nlocuiesc, pe rnd, coordonatele acestor
MS - Cursul 1 Cap.1. Programare liniar 51
MS - Cursul 1
52
puncte n expresia funciei obiectiv z. Avem: z(O) = 5 0 + 4 0 = 0 z(A) = 5 6 + 4 0 = 30 z(B) = 5 6 + 4 3/2 = 36 z(C) = 5 5 + 4 3 = 37 z(D) = 5 1 + 4 7 = 33 z(E) = 5 0 + 4 7 = 28 Valoarea maxim se obine pentru punctul C(5, 3). Prin urmare, soluia optim a problemei * * este x1 = 5, x 2 = 3. Valoarea corespunztoare a funciei obiectiv este z* = z max = 37.
MS - Cursul 1 Cap.1. Programare liniar 53
[max] z = 5 x + 3 y x + 2y 4 3x + 2 y 9 x 0, y 0
[min] z = 5 x + 3 y x + 2y 4 3x + 2 y 9 x 0, y 0
Pentru problema de maximizare, curbele de nivel au n comun cu tronsonul soluiilor admisibile un segment, orict de mare ar fi distana de la origine la respectivele drepte. Funcia obiectiv poate lua valori orict de mari, are valoarea optim infinit. Pentru problema de minimizare, valoarea
MS - Cursul 1 Cap.1. Programare liniar 54
minim se obine cnd distana de la origine la curbele de nivel este minim, n punctul (0, 2).