Sunteți pe pagina 1din 9

CAPITOLUL I

PROGRAMARE LINIARA
1. Forma general a unei probleme de programare liniar
Problemele de maxim i de minim apar frecvent n cele mai diferite
domenii ale matematicilor pure sau aplicate.n domeniul economic, asemenea
probleme sunt foarte naturale. Astfel, firmele ncearc s maximizeze
profiturile sau s minimizeze costurile. Experii n planificare macroeconomic
se preocup de maximizarea bunstrii unei comuniti economico-sociale.
Consumatorii doresc s cheltuiasc venitul lor ntr-un mod care s le
maximizeze satisfacia (de natur material dar i spiritual etc.)
Programarea liniar se ocup de o clas special de probleme de
optimizare care apar deseori n aplicaiile economice. Aceste probleme constau
n maximizarea sau minimizarea unei funcii liniare, numit funcie obiectiv,
ale crei variabile trebuie s satisfac:
un sistem de relaii date sub forma unor ecuaii i / sau inecuaii
liniare nestricte, denumite generic restricii;
cerina de a lua numai valori numerice nenegative (0).
1.1 Exemple
1) Problema firmei. Considerm un sistem de producie, de exemplu o
firm, care produce n bunuri G1,G2,...,Gn utiliznd pentru aceasta m categorii
de resurse R1,R2,...,Rm (materii prime, for de munc, capaciti de producie,
combustibili i energie etc.). Adoptm ipoteza c tehnologia de transformare a
resurselor n bunuri este liniar n sensul c:
Pentru fiecare bun, consumul dintr-o anumit resurs este direct
proporional cu cantitatea produs.
Consumurile dintr-o resurs sau alta nu se condiioneaz reciproc.
Fie atunci aij cantitatea din resursa i utilizat pentru producerea unei uniti din
bunul Gj. Fie deasemeni bi cantitatea disponibil din resursa Ri i cj preul (sau
profitul) unitar al bunului Gj.

I. PROGRAMARE LINIARA

Preul unui bun nu depinde de cantitatea produs i nici de situaia


vnzrilor celorlalte bunuri.
Problema const n determinarea unui program de fabricaie care s
maximizeze venitul (sau profitul) firmei.
S notm cu xj cantitatea din bunul Gj care urmeaz a fi produs.
Problema enunat mai nainte devine:
S se gseasc valorile numerice x1,x2,...,xn care maximizeaz funcia:

f = c1 x1 + c2 x 2 +...+ cn x n
cu satisfacerea restriciilor:

a11 x1 + a12 x 2 + L + a1n x n b1


a x +a x +L+ a x b
21 1
22 2
2n n
2

LLLLLL

a m1 x1 + a m2 x 2 + L + a mn x n bm
i a condiiilor de nenegativitate:

x1 0 , x 2 0 , L x n 0
Observaie: Ipotezele de liniaritate fcute nu sunt verificate
ntotdeauna n practic. Raiunea lor este dubl:

conduc la modele matematice n general simple;


pe baza modelelor liniare se pot formula concluzii calitative i
legiti economice care i menin valabilitatea - n anumite limite - i ntr-un
context neliniar.
2) Problema dietei a devenit o ilustrare clasic a programrii liniare,
fiind ntlnit n mai toate textele de specialitate. Ea se ocup cu hrnirea unei
colectiviti, s zicem un grup de militari, n cel mai economic mod cu condiia
satisfacerii anumitor cerine de nutriie. Mai concret, este vorba de a prepara un
aliment complex pornind de la n sortimente de hran F1,F2,...,Fn. Un numr de
elemente sau principii nutritive N1,N2,...,Nm - proteine, glucide, grsimi

1. Forma general a unei probleme de programare liniar

calciu,etc. sunt avute n vedere n sensul c alimentul combinat trebuie


s
conin cel puin b1,b2,...,bm uniti specifice din fiecare. S presupunem
cunoscute urmtoarele:
cantitatea aij din principiul nutritiv Ni coninut ntr-o unitate din
tipul de hran Fj;
preul unitar cj al tipului de hran Fj.
Notm cu x1,x2,...,xn cantitile din felurile de hran F1,F2,...,Fn care
trebuie cumprate n vederea elaborrii dietei. Formal, x1,x2,...,xn vor trebui
determinate astfel nct:
costul f = c1 x1 + c2 x 2 +...+ cn x n al alimentelor cumprate s fie
minim.
amestecul s conin principiile nutritive N1,N2,...,Nm n cantiti cel
puin egale cu b1,b2,...,bm, adic:
a11 x1 + a12 x 2 + ... + a1n x n b1
a x + a x + ... + a x b
22 2
2n n
2
21 1
................................
a x + a x + ... + a x b
m2 2
mn n
m
m1 1
x1 0, x 2 0,..., x n 0
Din nou au fost tacit utilizate ipotezele de liniaritate ntlnite i n modelul
precedent.
1.2 Soluii admisibile ale unei probleme de programare liniar

Considerm o problem de programare liniar (P) cu m restricii


egaliti i/sau inegaliti nestricte , n variabile i cu funcia obiectiv f. Un
ansamblu de n valori numerice care satisfac restriciile se va numi soluie a
programului (P). Dac n plus sunt verificate i condiiile de nenegativitate,
ansamblul se numete soluie admisibil. O soluie admisibil care
maximizeaz sau minimizeaz - dup caz - funcia obiectiv se va numi soluie
optim. Notnd cu A mulimea soluiilor admisibile , problema (P) se scrie:

I. PROGRAMARE LINIARA

S se determine x A cu proprietatea: f(x ) = max sau min f ( x )


xA
Este posibil ca (P) s aibe soluii dar nici una din ele s fie admisibil:
A = . Spunem n acest caz c problema (P) este incompatibil .Chiar dac
A , este posibil ca funcia obiectiv s fie nemrginit pe A , adic s
existe
un ir de soluii admisibile dealungul cruia funcia obiectiv s tind spre +
sau -, dup caz. n aceast situaie vom spune c (P) are optim infinit.Dac
(P) are (cel puin) o soluie optim, zicem c (P) are optim finit.
Deoarece eventualele restricii inegaliti sunt nestricte mulimea A
este inchis (n topologia uzual a spaiului Rn), adic o dat cu un ir
convergent de puncte conine i limita acestuia. Aceast proprietate este
esenial pentru existena unei soluii optime a problemei (P)! Conform unui
rezultat clasic al analizei matematice, dac A este mrginit, atunci f i
atinge efectiv extremele pe A, i deci (P) are optim finit. n consecin, dac
(P) are optim infinit, cu siguran A este nemrginit. Reciproca nu este n
general adevrat: este posibil ca A s fie nemrginit i totui (P) s aibe
optim finit.
1.3 Forma canonic a unei probleme de programare liniar

O restricie a unei probleme (P) de programare liniar se zice


concordant dac este o inegalitate de tipul "" cnd funcia obiectiv se
maximizeaz i de tipul "" cnd funcia obiectiv se minimizeaz.O restricie
inegalitate care nu este concordant se va numi neconcordant. Restriciile
egaliti nu fac obiectul acestei clasificri.
Spunem c o problem de programare liniar este n form canonic
dac toate restriciile ei sunt inegaliti concordante.
n consecin, o problem n form canonic de maximizare arat astfel:
n
aij x j bi i = 1,..., m

j =1

x j 0 j = 1,..., n

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

Ax b

sau matricial x 0
(max) f = cx

unde:

1. Forma general a unei probleme de programare liniar

a11
a
21
A=
M

a m1

a12
a 22
M
a m2

L a1 n
b1
b

L a 2n
2

b=
M
L M

L a mn
bm
c = [c1 c 2 L c n ]

x1
x
2
x=
M

x n

O problem n form canonic de minimizare se va scrie:


n
a ij x j bi

j =1

xj 0

n
(min) f = c j x j
j =1

Ax b

x0
(min) f = cx

De exemplu, problema firmei (1.1, exemplul 1)) este o form canonic de


maximizare n timp ce problema dietei (1.1, exemplul 2)) este o form
canonic de minimizare.
Orice problem de programare liniar se poate pune sub o form
canonic de maximizare sau minimizare, fr modificarea mulimii soluiilor
admisibile, observnd c:
o egalitate se poate nlocui cu dou inegaliti de sens contrar;
o restricie neconcordant devine concordant prin nmulire cu -1;
putem schimba sensul optimizrii funciei obiectiv, graie formulei
generale:
min f ( x ) = max [ f ( x )]
xA
xA

(1.3.1)

n consecin, putem face anumite raionamente teoretice pe o form canonic,


ca de exemplu n teoria dualitii liniare, fr ca prin aceasta s restrngem
generalitatea.
Exemplul 1.3.1

I. PROGRAMARE LINIARA

(max) f = 2 x1 3x 2 + 4 x 3
x 3x + 5x = 3
1
2
3

5
3 x1 + x 2
2x +
x 3 10
1

x1 0, x 2 0, x 3 0

Programul (P)

(min)( f ) = 2 x 1 + 3 x 2 4 x 3

x1 3x 2 + 5 x 3 3

x1 + 3x 2 5 x 3 3

5
3x1 + x 2

2 x1
x 3 10

x 1 0 , x 2 0, x 3 0

Forma canonic de minimizare


a programului (P)

1.4 Forma standard a unei probleme de programare liniar

Spunem c o problem de programare liniar este n form standard


dac toate restriciile ei sunt egaliti. Importana acestei forme particulare
rezult din faptul c metoda de rezolvare a problemelor de programare liniar
care va fi expus mai departe cere ca problema s fie n aceast prezentare.
n consecin, o problem (P) care are i restricii inegaliti va fi
nlocuit - n vederea rezolvrii ei - cu o alta n care toate restriciile sunt
egaliti. Noua problem, numit forma standard a problemei (P) i notat
(FSP), se construiete astfel:
O restricie inegalitate din problema original (P) de tipul ""
(respectiv de tipul "") se transform n egalitate prin adugarea (respectiv
prin scderea) unei variabile nenegative din membrul su stng.
Restriciile inegaliti nu se modific.
Noile variabile introduse nu apar n funcia obiectiv a problemei
originale (alternativ, spunem c ele apar cu coeficieni nuli)
Exemplul 1.4.1

(max) f = 7 x1 + 9 x 2 + 8 x 3
5x + 2 x x 4
1
2
3

( P ) 3 x1 + x 2 + x 3 = 5

x1 + 2 x 2 + 3 x 3 9

x1 0, x 2 0, x 3 0

(max) f = 7 x1 + 9 x 2 + 8 x 3

=4
5 x1 + 2 x 2 x 3 x 4

=5
( FSP ) 3x1 + x 2 + x 3

x 1 + 2 x 2 + 3x 3
+ x5 = 9

x j 0, j = 1,...,5

1. Forma general a unei probleme de programare liniar

Problema care apare n acest context este aceea de a explica modul n care se
obine soluia optim a problemei (P) dac se cunoate soluia optim a formei
sale standard (FSP).
Se poate arta uor c ntre mulimile de soluii admisibile AP ,ale problemei
(P) i AFSP, ale problemei (FSP), exist o coresponden bijectiv care
conserv soluiile optime. Vom arta cum funcioneaz aceast coresponden
pe exemplul precedent.
Notnd-o cu , aceasta va asocia unei soluii admisibile x = ( x1 , x 2 , x 3 )
a problemei (P) vectorul:
( x ) = ( x1 , x 2 , x 3 , 5x1 + 2 x 2 x 3 4, 9 x1 2 x 2 3x 3 )
care prin construcie se dovedete a fi o soluie admisibil a problemei (FSP).
Reciproc, unei soluii admisibile x~ = ( x~1 , x~2 , x~3 , x~4 , x~5 ) a problemei (FSP)
corespondena invers -1 i asociaz vectorul ( x~1 , x~2 , x~3 ) care satisface n mod
clar restriciile problemei originale (P). Dac x este soluia optim a
problemei (P) atunci ( x ) este soluia optim a problemei (FSP) i reciproc,
dac cunoatem soluia optim x~ a problemei (FSP) , 1 ( x~) reprezint
soluia optim a problemei (P).
n problemele concrete, variabilele de abatere au interpretri
economice precise aa c n analiza soluiei optime valorile lor vor fi luate n
considerare laolalt cu valorile variabilelor originale. Astfel, n problema
firmei (1.1, exemplul1)) variabilele de abatere xn+1, xn+2,...,xn+m definite prin:
n

x n +i = bi aij x j
j =1

i = 1,...,m

reprezint cantiti de resurse neconsumate i prin urmare cunoaterea


valorilor lor n soluia optim ofer indicaii utile n analiza modului n care
sunt utilizate resursele firmei: materii prime, capaciti de producie, for de
munc, etc.
n problema dietei (1.1,exemplul 2)) variabilele de abatere:
n

x n +i = aij x j bi
j =1

i = 1,..., m

reprezint cantitile de principii nutritive cu care sunt depite nivelele


minimale specificate n reet.

I. PROGRAMARE LINIARA

1.5 Rezolvarea grafic a problemelor de programare liniar

S considerm problema:
(max) f = 3x1 + 4 x 2
3x + 4 x 12
1
2

x1 + x 2 6
2x + x 2
1
2

x1 0 , x 2 0
Identificm x1 , x2 cu abscisa, respectiv ordonata unui punct din planul raportat
la un sistem ortogonal de axe. Este cunoscut faptul c mulimea punctelor din
plan ale cror coordonate satisfac prima restricie coincide cu unul din
semiplanele determinate de dreapta d1 de ecuaie -3x1+4x2=12. Mai precis,este
vorba de semiplanul care conine originea (0,0) , deoarece coordonatele
acesteia satisfac evident prima restricie. n mod analog, urmtoarele restricii
sunt verificate n semiplanele determinate de dreapta d2 de ecuaie x1+x2=6 i
respectiv d3 de ecuaie -2x1+x2=2 i care conin originea. n fine, condiia x10
are loc n semiplanul din dreapta axei verticale, n timp ce condiia x20 are
loc deasupra axei orizontale.
Soluiile admisibile ale problemei se identific cu punctele comune
celor cinci semiplane. Acestea formeaz interiorul i frontiera poligonului
OABCD din figura 1.5.1.
x2

f=24
f= 22 27
C

f=12

B
d1
A

d2
O

x1

D
d3

1. Forma general a unei probleme de programare liniar

Figura 1.5.1

Funcia obiectiv determin - pentru f variabil - o mulime de drepte


paralele care intersecteaz sau nu mulimea A. Astfel punctele situate pe
dreapta 3x1+4x2=12 reprezint diferite combinaii ale mrimilor x1, x2 care dau
funciei obiectiv f aceeai valoare 12. ntruct aceast dreapt taie A, rezult
c problema are soluii admisibile - chiar o infinitate - care ofer funciei
obiectiv valoarea 12. Dreapta 3x1+4x2=24 nu mai taie A i deci nici o soluie
admisibil a problemei nu este capabil s asigure funciei obiectiv valoarea
24. Conchidem c maximul funciei f este undeva ntre 12 i 24. Se observ
uor c acest maxim se atinge n vrful C al frontierei lui A. Punctul C
este
intersecia dreptelor d1 i d2 i deci coordonatele sale, care reprezint soluia
optim a problemei, se determin rezolvnd sistemul format din ecuaiile celor
dou drepte. Se gsete x1* = 127 , x 2* = 307 maximul lui f fiind 22 27 . Soluia
optim satisface cu egalitate primele dou restricii i cu inegalitate strict pe
ceea de a treia.
n mod asemntor se arat c dac funcia de maximizat ar fi fost
f = - x1+x2 atunci optimul ar fi fost atins n vrful B de coordonate x1=4/5,
x2=18/5 .

Examinnd acest exemplu putem trage urmtoarele concluzii:


1. Mulimea A este convex, adic o dat cu dou puncte conine i
segmentul care le unete. O consecin intuitiv a acestei proprieti este c
soluia optim, dac exist, se gsete undeva pe frontiera lui A .
2. Frontiera lui A este un contur poligonal cu un numr finit de
vrfuri i o soluie optim se gsete neaprat ntr-unul din ele.
Aceste concluzii, care se confirm pe orice alt problem n dou sau
trei variabile (mulimea soluiilor admisibile putnd fi vizualizat n planul
R2 sau spaiul R3) au constituit sursa ntregii teorii a programrii liniare.

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