Sunteți pe pagina 1din 9

Metode de optimizare

Metode de programare Programare liniara


-Referat-

Obiectul optimizarii
Un manager va dori sa aleaga acea varianta al activitatii sale care va fi cel mai performanta in
atingerea obiectivelor sale. In judecarea eficientei diferitelor decizii posibile se iau in considerare
anumite criterii pentru masurarea performantei activitatii in dezbatute. Literatura (Bonini et all,
1997) indica urmarirea acestor etape: stabilirea criteriului de eficienta, selectarea unei multimi
alternative posibile, determinarea unui model care sa fie folosit si a valorilor parametrilor
procesului si, ultima etapa, determinarea alternativei care optimizeaza criteriul prestabilit.
Anumite atribute ale problemei trebuie ignorate pentru a se putea ajunge la o decizie. Decidentul
trebuie sa identifice factorii cei mai relevanti pentru problema, astfel ca, abstractia si
simplificarea sunt pasi necesari in rezolvarea problemelor.
In sfera productiei, a industiei, a face cel mai bine posibil este sensul unei atitudini normale,
insa aceasta este supusa relativitatii, in raport cu restrictiile impuse din exterior sau acceptate de
bunavoie (Cohen, 2000). Pentru un inginer, a face cel mai bine posibil este un obiectiv
permanent si subinteles atunci cand se concepe o cladire, se dimensioneaza o instalatie, s.a.m.d.;
acest obiectiv cade insa sub incidenta altor factori, ca bugetul investitiei, probleme legate cu forta
e munca, materie prima, etc.
Optimizarea isi propune sa reflecte conceptul de cel mai bine posibil in sfera economica, si nu
numai. In problemele tehnice, alegerile posibile nu se limiteaza la un numar redus de alternative,
ci reprezinta adesea un continuu, astfel ca enumerarea exhaustiva a posibilitatilor este de
neconceput. Se urmareste, deci gasirea unui algoritm mai performant pentru a determina cu
precizie matematica solutia optima. Se optimizeaza o functie obiectiv care cuantifica produsul
unui proces economic sau profitul rezultat in urma aplicarii sistemului.
Conceptul de optimizare este bine incetatenit ca principiul de baza in analiza problemelor
complexe de decizie sau alocare. Folosirea optimizarii se bazeaza pe concentarea atentiei asupra
unui obiectiv conceput sa cuantifice performanta si calitatea deciziei intr-o problema ce necesita
deretminarea valorilor unui numar mare de variabile interconectate. Acest obiectiv este
maximizat sau minimizat, supus unor restictii care sa limiteze alegerea variabilelor de decizie.
Daca un aspect al problemei poate fi identificat si caracterizat ca obiectiv, atunci optimizarea
poate sa ofere un cadru adecvat pentru o astfel de analiza. Formularea problemei implica
intotdeauna gasirea unui echilibru intre construirea unui model suficient de complec pentru a
descrie cat mai bine problema si usurinta de rezolvare a acesteia.
Dupa ce decidentul a identificat factorii critici ai problemei concrete pe care o are de rezolvat,
acestia trebuie combinati in mod logic formandu-se astfel modelul. Un nmodel este reprezentarea
simplificata a unei probleme reale; prin modelare, fenomenului natural complex i se reproduce
comportarea esentiala cu mai putine variabile si un numar mai redus de legaturi intre acestea.
avantajele unui astfel de model sunt urmatoarele: economia de timp in concepere, poate fi
inteleasa realitatea de catre decident si modelul poate fi modificat repede si eficient.
2

Un model cat mai apropiat de realiate cere un timp axcesiv in constructie; decidentul doreste ca
modelul simplificat sa prezica rezultate rezonabile si sa fie consistent cu actiunea efectiva. Dupa
ce modelul a fost construit se pot obtine concluziile prin intermediul actiunilor logice. Decidentul
isi bazeaza actiunile sau deciziile pe aceste concluzii; daca deducerea concluziilor din modelul
abstract este corecta si daca variabilele importante au fost abstractizate, atunci solutia modelului
ar servi ca o solutie efectiva pentru problema empirica.
Termenul de optimizare poate fi considerat sinonim cu termenul programare cand se face
referire la planificarea optimala. Cand variabilele sunt supuse unor restrictii (relatii) avem
programe cu restrictii; in lipsa restrictiilor putem spune ca avem programe fara restrictii
(Luenberger, 1989). Problemele fara restrictii par lipsite de proprietati structurale astfel incat
aplicabilitatea lor in probleme practice este redusa.
Metode de programare liniara
Programarea liniara se ocupa de o clasa speciala de probleme de optimizrare care apar deseori in
aplicatiile econimice. Aceste probleme constau in maximizarea sau minimizarea unei functii
liniare, numita functie obiecti, ale carei variabile trebuie sa satisfaca: un sistem de relatii date sub
forma unor ecuatii si/sau inecuatii liniare nestricte, denumite generic restictii, precum si cerinta
de a lua numai valori numerice negative.
Problemele de maxim si de minim apar frecvent in cele mai diferite domenii ale matematicii pure
sau aplicate. In domeniul economic, asemenea probleme sunt foarte naturale, incat se incearca
maximizarea profiturilor si minimizarea costurilor.
Un exemplu de programare liniara este problema firmei. Consideram un sistem de productie,
care produce n bunuri G1, G2,...,Gn utilizand pentru aceasta m categorii de resurse R1, R2,...,Rm
(materii prime, forta de munca, capacitati de productie, combustibili si energie, etc.). Adoptam
ipoteza ca tehnologia de transformare a resurselor in bunuri este liniara in sensul ca:

pentru fiecare bun, consumul dintr-o anumita resursa este direct proportional cu cantitatea
produsa
consumurile dintr-o resursa sau alta nu se conditioneaza reciproc
atunci, fie aij cantitatea din resursa i utilizata pentru producerea unei entitati din bunul Gi, si
bi cantitatea disponibila din resursa Ri si cj la pretul (sau profitul) unitar al bunului Gj.
pretul unui bun nu depinde de cantitatea produsa si nici de situatia vanzarilor celorlalte
bunuri.

Problema consta in determinarea unui program de fabricatie care sa maximizeze venitul sau
profitul firmei
Se noteaza cu xj cantitatea din bunul Gj care urmeaza a fi produsa. Problema enuntata mai
inainte devine: sa se gaseasca valorile numerice x1,x2,,...,xn care maximizeaza functia:
3

f=c1x1+c2x2+...+cnxn

cu satisfacerea conditiilor:

a11 x 1+ a12 x 2 ++a 1n x n b1


a21 x 1 +a22 x 2 ++ a2 n x 2 b 2

am 1 x 1 +am 2 x 2+ +amn x n bm

si a conditiilor de negativitate:

x 1 0, x 2 0, , x n 0

Ipotezele de liniaritate facute nu sunt verificate intotdeauna in practica. Ratiunea lor este dubla:
conduc la modele matematice in general simple, pe baza modelelor liniare se pot formula
concluzii calitative si legitati economice care isi mentin valabilitatea in anumite limite si intrun context neliniar.

Deoarece eventualele restrictii inegalitati sunt nestricte, multimea A este inchisa (in topologia
uzuala a spatiului Rn), adica o data cu un sir convergent de puncte contine si limita acestuia.
Aceasta proprietate este esentiala pentru existenta unei solutii optime a problemei (P). Daca A
este marginita, atunci f isi atinge efectiv extremele pe A, si deci (P) are optim finit. In consecinta,
daca (P) are optim infinit, cu siguranta A este nemarginita. Reciproca nu este general adevarata:
este posibil ca A sa fie nemarginita si totusi (P) sa aiba optim finit.
Forma caninica a unei probleme de programare liniara. O restrictie a unei probleme (P) de
programare liniara se considera concordanta daca este o inegalitate de tipul cand functia
obiectiv se maximizeaza, si de tipul cand functia obiectiv se minimizeaza. O restrictie
inegalitate care nu este concordanta se va numi neconcordanta. Restrictiile egalitati nu fac
obiectul acestei claificari.
Spunem ca o problema de programare liniara este in forma canonica daca toate restrictiile ei
sunt inegalitati concordante. In consecinta, o problema in forma canonica de maximizare arata
astfel:

aij x j bi ,i=1, , m
j=1

x j 0 , j=1, ,n
n

( max ) f = c j x j

sau matricial

Ax b
x 0 unde :
( max )=cx

j=1

a11 a 12
A= a21 a 22

am1 am 2

] [] []

a 1n
b1
x1
a 2n b= b2 x= x 2 c= c c c
[ 1 2
n]

amn
bm
xn

O problema in forma canonica de maximizare se va scrie:

aij x j bi
j=1

xj 0
n

( min ) f = c j x j

Ax b
x0
( min ) f =cx

j=1

Orice problema de programare liniara se poate pune sub o forma canonica de maximizare sau
minimizare, fara modificarea multimii solutiilor admisibile, observand ca: o egalitate se poate
inlocui cu doua inegalitati de sens contrar, o restrictie neconcordanta devine concordanta prin
inmultire cu -1 si putem schimba sensul optimizarii functiei obiectiv datorita formulei generale:
min f ( x )= max [f ( x ) ]
. In consecinta, putem face rationamente teoretice pe o forma
x A
xA
canonica fara ca prin aceasta sa restrangem generalitatea.
Utilizarea optima a resurselor
Resursele pe care le are la dispozitie o entitate economica producatoare (materie prima, forta
dem unca, masini-unelte, resurse financiare, etc) sunt in cantitati limitate. Fie i numarul de ordine
al resursei si bi cantitatea disponibila din resursa i. Cu ajutorul acestor resurse se pot desfasura
mai multe activitati (procese de productie). Fie j numarul de ordine al activitatii desfasurate si xj
nivelul (necunoscut) la care trebuie sa se desfasoare aceasta activitate. De exemplu, pentru
procesul de productie j, care consta in fabricarea unui anumit produs, se noteaza cu xj cantitatea
ce va fi produsa. Fie aij cantitatea din resursa i necesara producerii unei unitati din produsul j. Se
presupune ca aij nu depinde decat de tipul resursei (i) si de tipul produsului realizat (j) si nu de
cantitatile produse, ceea ce constituie evident o simplificare a situatiei reale.
Cu aceste notatii se pot determina marimile urmatoare: cantitatea din resursa i folosita pentru
producerea cantitatii xi care este aijxj; cantitatea totala din resursa i folosita pentru productia totala
a x +a x + +a x n .
formata din n produse: i 1 1 i2 2

Deoarece nu se poate consuma din resursa i mai mult decat cantitatea de care dispune, trebuie
respectate conditiile: ai 1 x 1 +a i2 x 2+ +a x n b i , ( ) 1 i m ,
n

sau

a ij x j b i , i {1,2, , m}
j=1

, xj reprezentand cantitatea ce trebuie produsa din sortimentul


x j 0, j {1,2, , m } .

j, care nu poate fi un numar negativ,

Sistemul de inecuatii liniare prezentat poate avea o infinitate de solutii, o solutie sau nici una.
Pentru problemele corect puse, cel mai frecvent este cazul cu o infinitate de solutii. Adoptarea
unei variante de plan (luarea unei decizii) se face pe baza unui criteriu economic, ca de exemplu
venitul realizat sau profitul sa fie maxim. Daca se noteaza cu cj pretul de vanzare al unei entitati
din produsul j si cu dj costul unitar pentru acelasi produs (se presupune, pentru simplificarea
problemei, ca atat pretul de vanzare cat si costul nu depind de cantitatea produsa, ceea ce nu
n

reprezinta intr-adevar o realitate economica), atunci venitul total va fi:

c jxj
j=1

, iar

cheltuielile de productie
n

j=1

j=1

j=1

djxj
j=1

c j x j d j x j= ( c j d j ) x j

, si deci profitul obtinut va fi:

Problema se pune acum de a determina acea varianta de plan, adica acea solutie a sistemului de
inegalitati de mai sus, pentru care profitul este o valoare maxima. In acest moment, din acea
problema economica s-a obtinut urmatoarea problema matematica:

max ( c j d j ) x j
j=1
n

a ij x j b i

Aceasta este problema de programare liniara, sau program liniar.

j=1

x j 0

Problema de transport
Se consudera ca exista m centre de aprovizionare (depozite) si n centre de consum (puncte de
lucru, uzine, etc). Se pune problema sa se determine un plan de transport pentru un produs
omogen care se afla in cantitatea ai la depozitul i (1im) si este cerut in cantitatea bj la centrul j
(1jm). Se noteaza cu xij cantitatea necunoscuta ce va fi transportata de la depozitul i la centrul
6

de consum j si cu cij constul transportului unei unitati din produsul considerat de la depozitul i la
centrul j (pentru simplificare se presupune ca acest cost unitar nu depinde de cantitatea
transportata pe ruta respectiva). Se pot exprima atunci urmatoarele marimi:

cantitatea ceruta de la depozitul i la toate cele n centre de consul


ai= xi 1 + x i 2+ + x =cantitatea aflata la depozituli
,

cantitatea transportata de la toate cele m depozite la centrul de consum j


b j=x 1 j + x 2 j ++ x mj=necesarul lacentrul de consum j ,

costul transportului de la toate cele m depozite la toate cele n centre de consul este
m

cij x ij .
i=1 j=1

Pentru a efectua transportul este necesar ca

i=1

j=1

a i = b j

egalitate numita si conditia de

balansare sau de echilibru.


Sistemul de ecuatii de mai sus are o infinitate de solutii; dintre acestea trebuie alese cele
care dau costului total de transport valoarea minima. Se obtine astfel un program liniar:

min c ij x ij
i=1 j=1

x ij=ai , 1 i m
j=1
m

care se numeste program de transport

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

x ij 0, 1 i m ,1 j n ,

Programe liniare de acelasi tip pot sa apara si in urmatoarea situatie: trebuie aprovizionat un
grup de uzine dirijate de un centru comun, avand la dispozitie m centre de aprovizionare, n
puncte de consum si se cere determinarea unui plan de transport (xij), 1im, 1jn, care sa
minimizeze cheltuielile totale de transport:
m

min c ij x ij , conditiile
i=1 j=1

x ij=ai ,1 i m
j=1
m

xij=b j , 1 j n
i=1

x ij 0,1 i m , 1 j n

unde ai, 1im, sunt capacitatile centrelor de depozitare, bj, 1jn, sunt cantitatile necesare
uzinelor, iar cij este costul unitar de transport de la depozitul i la uzina j. Pentru a avea
solutii trebuie ca

i=1

j=1

ai b j

Problema se poate pune si invers, considerand problema unui plan de transport de la mai
multe uzine i la punctele de desfacere j. Daca ai, 1im, reprezinta capacitatile de productie
a uzinelor, bj, 1jn, capacitatile de depozitare ale punctelor de desfacere, se obtine un
model similar in care grupurile de ecuatii exprimate anterior isi schimba sensul.
Gestionarea optima a unui depozit
Sa consideram problema functionarii unui depozit care cumpara si vinde un anumit produs
cu scopul maximizarii profitului pe o anumita durata de timp. Depozitul are o anumita
capacitate fixa S si un cost unitar de stocare h. Pretul produsului fluctueaza de-a lungul
perioadei de analiza, dar pe durata unei unitati de timp, pretul de achizitie si pretul de
vanzare sunt aceleasi. Depozitul este initial gol si trebuie sa ramana gol la sfarsitul
perioadei de analiza.
In modelarea problemei, fie: xi stocul din depozit de la inceputul perioadei i, di cantitatea
achizitionata in perioada i, bi cantitatea vanduta in perioada i si pi pretul pentru perioada i.
n

Daca sunt n intervale de timp, avem:

x i+ 1=xi + di bi , i=1,n1
x n+ d nb n=0
xi + di S
x 1=0, x i , d i , bi 0

max ( pi bihxi )
i=1

se obtine astfel o problema de programare liniara.

Bibliografie
*
Modele si algoritmi de optimizare, Romica Trandafir, Editura Agir, seria Matematica,
Bucuresti, 2004
**
Cercetari operationale I Programare liniara, Probleme de optimizare in retele de
transport si distributie, Teoria jocurilor strategice, Nica V., Ciobanu Gh., Mustata F., Maraciune
V., Editura Matrix Rom, Bucuresti, 1998
***

http://www.ase.ro/upcpr cursul nr. 2 Programare liniara

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