Sunteți pe pagina 1din 46

PROGRAMARE LINIAR

#1. Scurt istoric.


Progamarea liniar, ca disciplin matematic, a aprut la mijlocul
secolului nostru, primele lucrri fiind publicate de L. Kantorovici (1939) i F.
Hitchcock (1941).
Primele probleme rezolvate se refereau la organizarea optim a
transporturilor maritime, necesitile de aprovizionare a frontului, planificarea
misiunilor aviaiei de bombardament.
n 1947 G. Dantzig i J. Von Newmann creeaz metoda simplex care
st la baza rezolvrii problemelor de programare liniar. Ulterior programarea
liniar a cunoscut un mare avnt prin lucrrile unor matematicieni i
economiti ca T. Koopmans, L. Ford, D. Fulkerson, W. Cooper, H. Kuhn,
gsindu-i un cmp foarte larg de aplicaii n economie.
Necesitile reale ale vieii economice au condus la apariia i
dezvoltarea altor tipuri de programri, cum ar fi:
programarea ptratic,
programarea convex,
programarea n numere ntregi,
programarea stohastic,
programarea dinamic,
toate acestea fiind nglobate n termenul generic de programare matematic.

#2. Exemple de probleme de programare liniar


a) Problema planului optim de producie.
Fie mainile M1 , M 2 ,..., M n care fabric sau consum produsele

P1 , P2 ,..., Pm , n cantiti date pe unitatea de timp, anume aij din Pi


pentru maina M j , 1 i m, 1 j n . (Dac M j produce n unitatea de
timp cantitatea aij din Pi atunci aij 0 , dac consum atunci aij 0 , iar
dac aij 0 ,

M j nu produce i nu consum Pi ). Producia (respectiv


consumul) produsului Pi nu trebuie s fie sub limita (respectiv s depeasc)
bi , bi 0 (respectiv bi dac bi 0 ) pentru 1 i m .

96

M j , iar c j beneficiul
obinut prin funcionarea lui M j n unitatea de timp, 1 j n . Un sistem
Fie x j timpul de funcionare al mainii

de numere reale x1 , x2 ,..., xn constituie un plan optim de producie, dac


maximizez beneficiul total adic funcia:
n

f c j x j n condiiile restrictive:
j 1

a x
ij

bi , 1 i m i x j 0 .

j 1

Dac c j reprezint costul funcionrii mainii

M j n unitatea de
n

timp, atunci se va cere minimizarea funciei de cost f c j x j .


j 1

b) Problema dietei (a amestecului).


S se determine cantitile
alctuind o diet

x1 ,..., xn

x j din alimentele

Aj , 1 j n ,
n

astfel nct costul acesteia f c j x j s fie


j 1

minim, unde c j reprezint costul unitar al alimentului A j , dac se mai


cunoate componena n substane nutritive

S1 , S 2 ,..., S m (cum ar fi:

glucide, lipide, vitamine) a alimentelor A j , 1 j n , dat prin matricea:

ij 1i m
1 j n

unde

aij este cantitatea de substan Si coninut n unitatea din

A j i se cere ca fiecare diet s conin cel puin cantitile bi din


substana Si , 1 i m . Deci, matematic problema se transcrie:
alimentul

97

min

jx j

in conditiile restric

j1

ij x j

bi , 1 i m

j1

j 1,2,..., n

c) Problema folosirii optime a resurselor.


O unitate economic trebuie s produc produsele

P1 , P2 ,..., Pn
avnd la dispoziie cel mult cantitile b1 , b2 ,..., bm din resursele
R1 , R2 ,..., Rm . tiind c producerea unei uniti din produsul Pj necesit
cantitatea aij din resursa Ri i c prin livrarea unei uniti din acelai produs
se obine beneficiul C j , 1 i n se cere s se determine cantitile
x1 , x 2 ,..., x n din produsele P1 , P2 ,..., Pn astfel ca beneficiul s fie
maxim. Deci:

max

in conditi

j 1

ij

bi , 1 i m

j 1
j

j 1, 2,..., n

d) Problema de transport.
Se dau depozitele

D1 , D2 ,..., Dn , avnd disponibil o marf n


cantitile b1 , b2 ,..., bn ; consumatorii C1 , C2 ,..., Cm solicitnd marfa
n cantitile b'1, b'2, ..., b'm; i costul unitar cij de transport al mrfii de la
depozitul Di la consumatorul C j .
Se cere s se gseasc un sistem de numere nenegative
xij , i 1,2,..., n; j 1,2,..., m unde x ij este cantitatea de marf

transportat de la

Di la C j , care s fac minim costul de transport, adic


98

funcia f cij xij i s nu depeasc disponibilul din nici un


i 1 j 1

depozit, adic:

ij

bi , i 1,..., n i s satisfac mcar cererea fiecrui

j 1

consumator, adic:

x
i 1

ij

b 'j , j 1,..., m

Sistemul xij , i 1,2,..., n; j 1,2,..., m care ndeplinete aceste


condiii se numete program de transport. Evident, existena unui program de
transport impune condiia ca disponibilul total s depeasc sau s fie mcar
egal cu cererea total, adic:

i 1

j 1

bi b' j

Dac restriciile problemei sunt date ca egaliti atunci i relaia (1)


devine egalitate, i n acest caz problema de transport se numete echilibrat.
n caz contrar spunem c avem o problem de transport neechilibrat.
Datele problemei de transport pot fi nscrise ntr-un tablou de forma:
Consumatori

C1

C2

... Cm

c11
c21

cn1

c12
c22

cn 2

...
...

...

b'1

b'2

... b'm

Tabelul (T)
Disponibil

Depozite

D1
D2

Dn
Cerere

c1m
c2 m

cnm

b1
b2

bn

#3. Noiuni generale privind problema programrii liniare


Exemplele prezentate conduc la rezolvarea unor probleme matemetice
asemntoare. Forma standard a unei probleme de programare liniar de
minim (sau program liniar de minimizare) se prezint astfel:

99

min f c j x j in conditiile restrictive

j 1

2 PL min

a x b , 1 i m, b 0

ij j

j 1

x j 0, 1 i n

iar a unui program liniar de maximizare:

max f

c x in conditiile
j j

j 1

PL max n
aij x j bi , 1 i m, bi 0
j 1
x j 0, 1 j n

Condiiile restrictive se mai numesc i restriciile programului liniar.


Dac notm:

x1, x2 ,.. , xn X; aij 1im A


T

1 jn

b1 , b2 ,..., bm T

L;

c1 , c2 ,..., cn C
100

atunci

PL min se transcrie matriceal astfel:

2 '

min f x C T X
A X L

X 0

iar PL max :
max f x C T X
A X L
3 '

X 0

Evident c sistemul de restricii A X L poate fi:


incompatibil
compatibil unic determinat (numai n cazul m n )
compatibil nedeterminat.
Ultimul caz intereseaz cel mai mult pentru c aici se pune problema
de a alege dintre mai multe soluii pe cea mai bun.
Pentru modelele de PL care nu au forma standard exist modaliti de
construire a unor forme standard echivalente. Acestea sunt prezentate n II.5.
S presupunem c rangul lui A este m.Dac notm coloanele matricei A
j
cu a , 1 j n atunci restriciile problemei se transcriu:

a 1 x1 a 2 x2 ... a n xn L

Definiia II.3.1. Un vector X R n , ale crui componente satisfac


restriciile unei probleme de programare liniar, se numete program admisibil
(sau soluie admisibil, sau soluie posibil)
Definiia II.3.2 Un program admisibil X care minimizeaz (sau
maximizeaz, n funcie de problem) funcia liniar asociat acelei probleme
se numete program optim (sau soluie optim).

X x1 , x2 ,..., xn se numete
program de baz dac vectorii coloan a j , corespunztori componentelor x j
Definiia

nenule

II.3.3.Un

program

0 , sunt liniar independeni.

Deoarece rang
nenule;

Am

un program de baz are cel mult m componente

Definiia II.3.4. Dac un program de baz are exact m componente


nenule (m= rang A), atunci programul de baz se numete nedegenerat. n caz
contrar, degenerat.

101

Definiia II.3.5. Matricea B de tipul m x m format din coloanele lui A


corespunztoare componentelor nenule ale unui program de baz nedegenerat
X se numete baz a programului X.
Exemplul II.3.1. Problema de programare liniar:

min 2 x1 3x2 3x3 x4


x x x x 2
1 2
3
4

x1 x2 3x3 x4 4

x j 0,

1 j 4.

se transcrie matriceal astfel:


min ( 2 -3 -3 1 ) . ( x1 x2 x3 x4 )T

1 1 1 1
1 1 -3 1

X 0,

x1

x2

x3

x4

2

4

rang A = 2

Sistemul liniar de restricii se transcrie i sub forma:

1
1
1
1
2
x1 x2 x3 x4
1
1
3
1
4

a1

a2

a3

a4

Programe ale problemei sunt de pild:

102

3
3
5



0
1
1
X1 ; X2 ; X3
0
0
1



1
0
1
primele dou fiind i programe de baz nedegenerate cu bazele
1 1
1 1
2
B1
; respectiv B
(sau cu notaiile anterioare
1
1 1
1

B1 a1 , a 4 ; B 2 a1 , a 2 .

Valorile funciei obiectiv, corespunztoare celor trei programe sunt:


X 3 nu este de baz deoarece
vectorii coloan corespunztori componentelor nenule, respectiv:
a 1 , a 2 , a 3 , a 4 sunt liniar dependeni.

f X 1 7, f X 2 3, f X 3 5. Programul

0
, dei verific sistemul de restricii nu este program
1

0
admisibil deoarece nu are toate componentele nenegative.
Notm cu P mulimea soluiilor posibile ale unei probleme PL - min.
n
Deci P x R AX L, X 0 i notm cu P mulimea programelor
optime ale acestei probleme:
Vectorul X 4

P X P C T X C T X ; X P

Teorema II.3.1. Mulimile P i P sunt convexe.


Demonstraie: S demonstrm c P este convex, adic
X , Y P si 0,1 avem X + 1- Y P si X + 1- Y 0
Faptul c X + 1- Y 0 este evident.
Deoarece X P A X L siY P implic AY = L . Deci:

A X 1 Y A X 1 AY L 1 L L .
Deci:
Pentru

X 1 Y P
a

demonstra

este

convex,

X , Y P deci C T X C T Y min C T X i 0 1. Avem:

X P

103

fie

C T X 1 Y C T X 1 C T Y min C T X
XP

1 min C X min C X
T

XP

XP

Deci X 1 Y este optim.


Teorema II.3.2. Dac o problem de programare liniar admite
programe atunci admite i programe de baz.
Teorema II.3.3. Dac un program liniar are optim, atunci are i un
program optim de baz.
lem:

Pentru demonstraia acestor dou teoreme avem nevoie de urmtoarea


Lema

II.3.1.

Oricare

ar

fi

sistemele

de

numere

reale:

x i x i 0, 1 i n si y i 1 i n, y i nu toate nule se poate determina

xi yi 0
numr
astfel
nct
pentru
orice
, , 1 i n i pentru cel puin un indice j, 1 j n , s avem

un

x j y j 0 sau x j y j 0
Demonstraia

lemei.

Grupm

1,2,...,n dup semnul


i y 0 . Cum nu toi yi

indicii

yi astfel nct I1 i yi 0 si I 2
i
sunt nuli, 1 i n , avem I 1 I 2 . Dac I 1 si I 2 comparm
rapoartele xi / yi cu i I1 i apoi pe cele cu i I 2 . Gsim r I1 i s I 2
numerelor

astfel nct:

xr
xi
min
y r i I 1 y i

xr
xi
max
y r i I 2 y i

Vom lua min , iar j astfel:

xr
luam j r si vom avea x r y r 0 cci = =
yr

-x s
- dac luam j s si vom avea x s y s 0 cci = =

ys

- dac

104

xi
vom avea n ambele cazuri
i I 2
yi
1 i n si , .

Observnd c min

xi yi 0

Dac I 1 si I 2 lum
.
Demonstraia lemei este ncheiat.

iar dac I 1

si I 2 lum

Demonstraia teoremei II.3.2. Vom demonstra c un program de baz


este un program admisibil cu un numr minim de componente nenule.
Fie X programul admisibil cu numrul minim de componente nenule.
Fie r numrul componentelor sale nenule. (Orice alt program admisibil va
avea cel puin r componente nenule).
Dac r = 0 atunci X = 0 este program de baz. Dac r > 0, fie

, xi2 ,..., xir componentele strict pozitive ale lui X. (restul sunt nule).

i1

a i1 , a i2 ,..., a ir sunt liniar independeni atunci X este program de baz.


S presupunem prin reducere la absurd c a i1 , a i2 ,..., a ir sunt liniar
dependeni , adic exist yi1 , yi2 ,..., yir R nu toi nuli astfel nct:
Dac

yi1 a i1 yi2 a i2 ... yir a ir 0

(5)

Considernd Y R n cu y i 0 pentru

i 1,2,..., n i1 , i2 ,... , ir si y i y ik pentru i i1 , i 2 ,..., ir ; k 1,2,... , r .


atunci folosind (5) putem scrie

A X Y AX AY AX L R

(6)

i1

A Y 0 . Atunci:

Acum

,..., xir

aplicm

si y

i1

lema

II.3.1.

pentru

sistemele

,..., yir . Deci exist 0 astfel nct, pentru un

, s avem xi k yi k 0,1 k r , si xi j yi j 0

pentru mcar un j 1,2,..., r . Atunci X Y devine un program


admisibil dar cu cel mult r 1 componente nenule, contrar ipotezei. Deci
relaia (5) nu este posibil, rezult c X este program de baz.
Demonstraia teoremei II.3.3. Fie X P un program optim pentru
PL - min care are un numr minim r de componente nenule. Dac r = 0 atunci
i
i
i
X 0 este program optim de baz. Dac r > 0, fie a 1 , a 2 ,..., a r
coloanele lui A corespunztoare celor r componente nenule din

105

X . Dac

aceste coloane sunt liniar independente atunci X este program optim de


baz. Presupunem prin absurd c aceste coloane ar fi liniar dependente. Cu
aceleai notaii ca n demonstraia precedent gsim un Y R n satisfcnd

AY 0.

C T Y 0 am putea alege un 0 , astfel nct


X Y P si C T Y 0; atunci

Dac

C T X Y C T X C T Y C T X contrar faptului c X este

C TY 0 .
Atunci alegnd un , astfel ca X Y P s aib cel mult

program optim; deci

r-1 componente nenule gsim c X Y P 0 ceea ce contrazice faptul c r


este numrul minim de componente nenule pentru un program optim. Deci
X este program optim de baz.
n concluzie, un program optim de baz este un program optim cu un
numr minim de componente nenule.
Teoremele II.3.2. i II.3.3. reduc cutarea soluiei optime a unei
probleme de programare liniar printre programele de baz, al cror numr
este finit. Cu algoritmul simplex se pornete de la un program de baz care nu
este optim i se construiete un alt program de baz n care funcia obiectiv s
aib o valoare mai mic sau mai mare, dup cum este un PL - min sau PL max.

# 4. Algoritmul simplex
Se consider problema de programare (2) i un program de baz
nedegenerat X . Dup unele renumerotri i rearanjri putem considera

X x1 , x2 ,..., xm ,0,0,...,0

; deci variabilele

x1 , x2 ,..., xm sunt

principale iar xm 1 ,..., xn secundare, iar vectorii coloan


formeaz

baza

programului

de

baz

a1 , a 2 ,..., a m
X . Fie

N a m 1 , a m 2 ,..., a n .

Mai notnd:

x1
x m 1
c1
c m 1

X p ; X s ; C p ; C s problema (2) poate fi

xm
xn
cm
cn

scris:

106

min f X CpT X p CsT X s

B X p N Xs L

X 0

nmulind BX p NX s L la stnga cu

B 1 obinem:

E X p B N Xs B L

care reprezint transcrierea sistemului de restricii n baza B, cci dac scriem


m

a j zij a i , 1 j n (exprimarea vectorilor coloan n funcie de


i 1

vectorii bazei B) vom avea:

z ij

ij

pentru 1 i, j m si z ij 0 pentru m + 1 j n. Corespunztor

programului

X problema (2) devine:


m

f X ci xi

i1

x i zij x j xi

Deci

jm1

x sunt componentele vectorului L n baza B.

L B X B1L X iar zij 1im B1 N


m1 jn

Deci relaia (8) devine:

10
11

X p B 1 NX s X de unde
X p X B 1 NX s i atunci

f X C Tp X p CsT X s C Tp X B 1 NX s CsT X s C Tp X CsT C Tp B 1 N

sau explicit:

12

f X ci x i
i 1

c c z

j m 1

107

i 1

j ij

xj

Notnd:

c x
i 1

13

i i

c z

Z si
n

f X Z

Z j , m 1 j n atunci:

i ij

i 1

Zj xj

j m 1

T
1
Observm c Z f X si Z Cp B L.
Acum putem asocia problemei PL- min urmtorul tabel:

Cp

c1
a1

vectorii
bazei

(S)

Cj Z j

c2
a2

cn
an

z11

z12

zm1

zm2

z1ncomponentele

...

nenule ale lui

...

.................................
........

Teorema II.4.1. Dac

zmm

f X

X este un program de baz nedegenerat pentru

PL - min i n tabelul asociat (S) avem

c j Z j 0 m 1 j n

atunci

X este program optim.


Demonstraie: Din (13) avem:
n

cj Zj x j f X

f X f X

j m1

X. Deci

pentru orice program admisibil

X este optim.

Teorema II.4.2. Dac X este un program de baz nedegenerat i n


tabelul simplex asociat (S) exist un t, m 1 t n, astfel nct

ct Zt 0 si zit 0 1 i m

, atunci PL - min nu are optim finit.

Demonstraie: Fie: X x1 , x 2 ,..., x n unde:


T

108

x t ,
xi

xi

R
zit ;

1 i m

x j 0;

m 1 j n, j t

x j 0 1 j n.

Astfel avem
Pentru
n

j 1

1 i m avem:
m

a ij x j

j 1

a ij x j

a ij x j

j m 1
n

j 1

aij z jt ait
ij
j
jh h

j 1
h m1
j 1
m
m
m
n

aij x j
aij
z jh x h ait ait
a ij x j
h m1

j 1
j 1
j 1
m

(folosind (9))

a x

j 1

a ij x j z jt a it

aij x j

aij z jh x h

j 1

x a

h m1

h ih

Deci
m

j 1

aij x j

xh

h m1

(renot m pe h cu j)

a
j 1

a
j 1 h m1

aij z jh
j 1

ij x j

x a

j m1

a
j 1

j m1

j 1

din definirea lui X .

0 si ct Zt 0 atunci f X

a
j 1

ij x j

, adic

funcia obiectiv nu are optim finit.


Teorema II.4.3. Dac X este un program de baz nedegenerat pentru
PL - min, iar n tabelul simplex asociat (S) exist un t,
m 1 t n cu c t Z t 0 i cel puin un indice i, 1 i m , astfel nct

zit 0 , atunci alegnd s, 1 s m , dup criteriul:

xs
min i / 1 i m, zit 0
zst
zit

109

ij x j

ij

c j x j c j Z j x j c j x j ct Zt

14

ij

ij z jh x h

f X

Deoarece

j 1

X este soluie admisibil. Avem:

j 1

h m1 j 1

a ij x j

bi

se poate substitui n baza B vectorul a s cu vectorul a t , obinnd o baz B' ,


corespunztoare unui program de baz X ' care amelioreaz valoarea funciei
obiectiv.

z st 0, folosind lema substituiei rezult c


t sistemul de vectori nou obinut
, este o baz.
a

Demonstraie. Deoarece
nlocuind a s n B cu

B'

Soluia de baz corespunztoare lui B' este dat tot de lema substituiei:

15

' xs
xi xi zit , 1 i m, i s
zst
x s' 0

' xs
xt 0
zst
x 'j 0, m 1 j n, j t

cu toate componentele nenegative (pentru 1 i m, i s dac


atunci

x i'

xi

zit 0

x s

zit , deci o sum de numere nenegative; iar dac zit 0


z st

xi xs
i innd seama de (14) nseamn c xi' este
avem x zit
zit zst
'
i

produs de dou numere nenegative).

Deci X ' x1' , x2' ,..., xn'


pentru

X ' este:

f X ' f X

este o soluie de baz. Valoarea funciei obiectiv

c j Z j x 'j f X ct Z t x t' f X .
j m1

Acum putem prezenta algoritmul simplex pentru o problem PL - min


n form standard.
-Pasul 10: Se gsete un program de baz nedegenerat X cu baza B; se
construiete tabelul simplex (S).
-Pasul 2 : Se verific dac diferenele c j Z j 0 pentru orice j ,1 j n
. Dac DA se trece la pasul 5; dac NU, dintre toate diferenele

110

cj Z j ,

negative, se alege cea mai mic. Indicele j corespunztor s-l notm cu t.


(Dac exist mai muli t se alege primul de la stnga la dreapta). Vectorul a t
va intra n baz. Se cerceteaz dac zit 0 pentru
trece la pasul 4, dac NU, se trece la pasul 3.

1 i m.

Dac DA, se

xi

xs
min
/ 1 i m, zit 0 .
-Pasul 3 : Se alege s, astfel nct
zst
zit

Vectorul a s va iei din baz. Elementul zst devine pivot. Se construiete un

nou tabel simplex folosind regula dreptunghiului:


a) se mparte linia pivotului la pivot.
b) n coloana pivotului, elementele zsj cu j t se nlocuiesc cu 0

z 'ij zij

c) elementele zij , cu i s, j t se nlocuiesc cu

zit zsj
.
zst

Se obine un alt program de baz X ' cu baza B' i o nou valoare a funciei
obiectiv.
Se revine la pasul 2 cu B B ' i X X '
-Pasul 40 .Concluzie: PL - min nu are optim finit I algoritmul se oprete.
-Pasul 5 .Concluzie: PL - min are optim X iar valoarea minim f X
". STOP.
Exemplul II.4.1. Fie problema:

min f 5x1 7x2 9x3 2x4 x5


3x 1 2 x 2 x 3 5x 4 3x 5 7

2 x 1 x 2 x 3 3x 4 x 5 4

x j 0 j 12, ,.. ,5

Alegem X 1,2,0,0,0 T . Avem:

3
2
1
5
3
a1 ; a 2 ; a 3 ; a 4 ; a 5
2
1
1
3
1
Coordonatele vectorilor

Pentru

a afla

a 1 si a 2 n baza B sunt

a3
1, 2 R
111

, deci:

, respectiv

.
0
1
se procedeaz astfel: punem

coordonatele lui

a 3 1a 1 2 a 2 ,

B a1 , a 2

3 2 1 3 1 2 2 1
1 2
2 1 1 2 1 2 1

ceea ce ne d

1 1, 2 1 . Deci

1
1
4
5
. Analog se gsesc: a B , a B

1
1
3
Aadar tabelul simplex corespunztor bazei B are forma:
3

n baza B, a B

a1
a2

cj Z j

5
a1

7
a2

9
a3

2
a4

1
a5

-1

0
0

1
0

-1
11

1
-10

3
-15

Deci a intr n baz,


pivotajul i obinem:
5
1

a1
a5

cj Z j

1/3

2/3 4/3

0
0

1/3 -1/3 1/3


5
6
-5

1
0

Intr n baza

a 4 i iese a 1 .

2
1

3/ 4
1 / 4

15/4

i am obinut

0,0,0,5 / 4,1 / 4 T

19

a 2 iese din baz, z 25 - pivot. Se execut

a4
a5
cj Z j

1/ 4
1/ 4

25/4

5/ 3
2/3

1/ 2
1 / 2

17/2

1
0

5 / 3
0

X ' 0
0

2 / 3

f X ' 9

0 5/ 4
1 1/ 4

11 / 4

c j Z j 0 1 j 5. Deci programul optim este


11

.
4
Algoritmul se aplic i problemelor PL - max n forma
standard cu observaia c max f min f . De asemenea algoritmul se
cu min f =

112

aplic i n cazul n care funcia obiectiv are forma f

c x
j

, R ,

j 1

deoarece punctele de extrem ale acesteia sunt aceleai cu punctele de extrem


n

ale funciei: g

jxj.

j 1

# 5. Tratarea problemelor de programare liniar care nu au forma


standard. Metoda bazei artificiale.
Dac

sistemul de restricii conine inecuaii de forma :

aij x j bi sau
aij x j bi , 1 i m atunci acestea se transform n

j 1
j 1

egaliti dac se adaug (respectiv se scade) n primul membru o necunoscut


auxiliar yi , y i 0, numit i variabil de egalizare sau de compensare.
n

Deci:

aij x j yi bi (respectiv

j 1

ij x j

yi bi ).

j 1

Dac o component a termenului liber bi , i 1,2, ... , m este


negativ atunci se nmulete egalitatea sau inegalitatea respectiv cu -1.
Dac nu toate componentele lui X R n sunt constrnse s fie
nenegative atunci facem substituirea acestora cu variabile ce satisfac condiia
'
'
de nenegativitate astfel: dac x j 0 atunci punem: x j x j cu x j 0; dac

x j este liber, neconstrns atunci punem: x j x 'j x ''j cu x 'j , x ''j 0.


Aceste substituii se nlocuiesc att n funcia obiectiv ct i n
restriciile problemei.
Exemplul II.5.1. Problema:

max f 2 x1 x 2
2x x 4
1
2

x1 x 2 4
x 2 0,

x1 R

se transform n:

113

'

''

min f 2 x1 2 x1 x 2
2 x ' 2 x '' x y 4
1
1
2
1

P '

x1' x1'' x 2 y 2 4

x1' , x1'' , x 2 , y1 , y 2 0
care este o problem standard PL - min. Se rezolv problema (P') i apoi se
reine soluia pentru problema (P).
n cazul n care nu dispunem de un program de baz se utilizeaz
metoda celor dou faze pentru determinarea unui astfel de program.
Faza I: Programului liniar:

min f c j x j

j1

n
PL min a j x j bi , 1 i m
j1

x j 0, 1 j m

16

i se asociaz programul liniar auxiliar, cu variabilele artificiale

x1a , x2a ,..., xma :

min g xia

i 1

17

a
PL min aij x j xi bi , 1 i m
j 1

x j 0, xia 0, 1 j n, 1 i m.

Sistemul de restricii este un sistem de m ecuaii cu n + m necunoscute.


T
Se observ c 0,0, ... ,0, b1 , b2 , ... , bm este o soluie de baz pentru

PL min cu care se poate pleca n algoritmul simplex. Deoarece funcia

114

obiectiv g este pozitiv, vom gsi cu certitudine un program optim de baz


pentru care min g 0 . Dac min g = 0 atunci componentele x ia n
programul optim de baz pentru (17) sunt nule i eliminndu-se aceste
zerouri, corespunztoare variabilelor xia din acest program optim de baz al
a

PL min , se obine un program de baz X

pentru (16).
Faza a II-a: n continuare se aplic algoritmul simplex pentru (16) cu
programul de baz X0. Dac min g > 0 atunci (16) nu are soluii admisibile.
Exemplul II.5.2.

min f x1 6 x 2

2x x x 3
1 2 3

x1 3 x 2 x 4 4

xi 0
Faza I:

i 1,2,3,4

min g x a x a

2 x1 x 2 x 3 x1 3

PL min

x 3x x x a 4
1 2 4 2

x 0 i 1,2,3,4, x a , x a 0
i
1 2
Care are soluia de baz 0,0,0,0,3,4 T . Aplicm algoritmul simplex:
0
0
0
0
1
1
a1 a 2
a3
a 4 a5
a6
1
a5
2
1
-1
0
1
0
3
1
a6
1
0
-1
0
1
4
3
-3 -4
1
1
0
0
7
1
a5
0
-1
1/3
1
-1/3
5/3
5/3
0
a2
1/3 1
0 -1/3 0
1/3
4/3
-5/3 0
1 -1/3 0
4/3
5/3
0
a1
1
0 -3/5 1/5 3/5 -1/5
1

115

a2

Am obinut

0
0

1
0

programul

1/5 -2/5 -1/5


0
0
1
optim

de baz

2/5
1

1
0

1,1,0,0,0,0 T pentru

a
PL min cu min g 0 . Faza nti s-a ncheiat.

Faza a II-a. Reinem ca program de baz

1,1,0,0 T (componentele

corespunztoare, respectiv, lui x1 , x2 , x3 , x4 , din programul optim de baz


obinut la faza I) pentru problema iniial i aplicm algoritmul simplex.

#.6. Eliminarea degenerrii


Este posibil ca dup cteva iteraii n aplicarea algoritmului simplex s
revenim la una din bazele prin care am trecut deja, i atunci procesul continu
la infinit fr a conduce la o soluie. Aceast situaie se numete ciclare.
Aceast situaie poate aprea atunci cnd problema de programare liniar
admite soluii de baz degenerate (vezi definiia II.3.4.). Nu ntotdeauna
degenerarea implic neaprat ciclare. n practic, ciclarea apare foarte rar.
Pentru nlturarea degenerrii se folosete aa numita "tehnic a
perturbrii cu ".
Fie o problem PL - min i X un program de baz degenerat. Deci

X are r componente nenule, r m . Fie

X x1 , x 2 , ... , x r , 0, ... ,0

Aceasta nseamn c n iteraia algoritmului simplex care conduce la


obinerea lui

i
X s-a ntlnit situaia: min z 1 i m, zit 0 se atinge
it

n mai multe puncte (pentru mai muli indici i). Fie s i u indicii pentru care
avem

xs xu

.
zst zut

Se pune ntrebarea cum alegem n acest caz pivotul (linia pivotului)?


Vom nlocui X cu:
n

(18)

X X a j unde 0 este un numr


j

j 1

foarte mic, iar a j , 1 j n sunt vectorii coloan ai sistemului de restricii.

116

Deci

j 1

a j este o combinaie liniar de vectorii a j cu coeficienii

, 2 , 3 ,..., n .
Componentele lui

X vor fi:
n

xk xk j zkj , 0, 0

(19)

j 1

Observaie: Aici prin j nelegem puterea a j a a lui


diferit de rdcinile ecuaiei:

xs xu

zst
zut

(20)

. Dac alegem

atunci pentru acest vom avea:

xs

(21)

zst

mprind (19) la

zut

zst dac k s i la zut dac k = u obinem:

xs

(22)

zst

zst

xu

(23)

zut

zut

n 1
n

zsj
zst


n 1

zuj
zut

Din relaiile (22) i (23), comparnd coeficienii lui

j
, obinem compararea

celor dou linii, care este o comparare lexicografic: dac j este primul indice
pentru

care

x
i

min

zit

zsj zuj

zst zut

atunci

1 i m, zit 0

se atinge pentru

xs xu

zst
zut

adic

i s . Deci pivotul va fi

zst ,iar linia s este linia pivotului.

Fcnd 0 se revine la problema iniial.

xs
xu

n practic, dac am ajuns la un pas n care avem:


se
zst zut
procedeaz astfel:

117

1 Se mpart elementele de pe linia s la zst i cele de pe linia u la zut . Se

formeaz dou linii de rapoarte.

2 Se compar rapoartele corespunztoare de pe cele dou linii. Linia pe care

apare primul raport mai mic se alege ca linie pivot.


Exemplul II.6.1. Fie situaia:

2
1
1

2
a1

1
a2

1
a3

4/5

2/5

-3

a1
a

cj z j

1
a4
12 / 5
6/5
8

14

12 / 5
3
4/ 5
6/ 5
3
2/5

mprim prima linie la 4/5 i cea de-a doua la 2/5. Obinem:


5/ 4

5/ 2

Primul raport mai mic apare pe linia a doua, deci

#.7. Algoritmul simplex dual


Problemei de programare liniar:

(24)

min f X C T X

A X L

X 0

i se asociaz problema:

118

z24 este pivotul.

1
max g Y LT Y

y
2

AT Y C
unde Y

Y0

(25)

ym

Problema (24) se va numi primal iar problema (25) duala problemei


(24) i reciproc.
Exemplul II.7.1

min f x1 2 x2 2 x3

x1 2 x2 x3 x4 1

2 x1 x2 x3 x4 2

x1 x2 x3 x4 1
xi 0,
i 12, ,3,4
Folosind tabelul:

Y
y1
y2
y3

gsim duala:

x3

x2

1
2

2
1

1
1

1
1

1
2

119

x4

x1

max g Y y1 2 y2 y3
y1 2 y2 y3 1

2 y1 y2 y3 2
y1 y2 y3 2

y1 y2 y3 0

yi 0, i 1,2,3
Teorema II.7.1. Fie X o soluie posibil pentru problema (24) i Y o
soluie posibil pentru problema (25). Atunci f X g Y
Demonstraie: Din AX L, nmulind la stnga cu

Y T 0 obinem:

Y T A X Y T L LT Y g Y
Pe de alt parte: A T Y C X T A T Y X T C C T X f X
Dar cum Y T A X A X T Y X T A T Y ajungem la concluzia
g Y f X .

Teorema II.7.2. Dac (24) are optim finit atunci (25) are optim finit i
avem max g Y min f X sau C T X LT Y unde X este o
soluie optim pentru (24) iar Y o soluie optim pentru (25).

Demonstaie: Din teorema II.7.1. pentru orice pereche de programe


duale X,Y, avem g Y f X . Deci are loc i max g Y f X . Cum f
este o funcie liniar, deci continu, atunci min f X exist i are loc
max g Y min f X .
Pe de alt parte folosind (13) i teorema II.4.1. avem
min f X f X Z C Tp B 1 L .
Se
demonstreaz
c

Y B 1 C p 0 este un program optim pentru duala (25). Atunci:

min f X C Tp B 1 L B 1 C p

L Y T L LT Y g Y max g Y .

Teorema II.7.3. (teorema ecarturilor complementare)


Fie X,Y soluii ale problemelor (24), respectiv (25). Atunci X,Y sunt
soluii optime dac i numai dac au loc relaiile:
Y T L AX 0;

X T AT Y C 0

120

Demonstraie. Avem:

LT Y Y T L Y T AX X T A T Y X T C C T X

Folosind teoremele II.7.2. i II.7.1. obinem c X,Y sunt programe


optime dac i numai dac LT Y C T X ceea ce conduce la:

Y T L Y T A X X T AT Y X T C

sau: Y L AX 0;
T

X T A T Y C 0.

Dualitatea se folosete cel mai frecvent n cazul n care problema


primal necesit calcule multe:
Exemplul II.7.2.

min f 3x1 x2

2 x1 x2 1

x1 x2 1
3x1 2 x2 3.

2 x1 3x2 1

xi 0, i 1,2
Pentru a rezolva aceast problem cu algoritmul simplex trebuie
introduse patru variabile de egalizare, dar scriind problema dual:

max g y1 y 2 3 y 3 y 4
2 y y 3y 2 y 3
1 2
3
4

y1 y 2 2 y 3 3 y 4 1

yi 0

i 1,4

aceasta necesit numai dou variabile de egalizare. Obinem:


1
1

1
4

121

0
5

0
a

0
0

a5
a6

0
3

a5
a3

1
1 2
-1
-1 -3
1/2 -1/2 0

3
-1
-5/2

0
1
0
0
1 -3/2

1/2
1/2

3/2
7/2

0
0

1/2
1/2

1
0

1/2
3/2

3
1

0
3/ 2
1/ 2
-3/2

deci max g 3 / 2 min f .


Pentru a putea formula duala unei probleme de minim am vzut c
restriciile trebuie s aib forma (24). n acest caz, restriciile " " sunt numite
concordante, iar cele " " neconcordante. Pentru problema primal de maxim,
restriciile " " sunt cele concordante iar " " cele neconcordante.
n caz c nu au aceast form pot fi aduse la forma (24) dup
urmtoarele reguli:
modelul dat
numr de variabile
numr de restricii
minim
maxim
termeni liberi ai restriciilor
coeficienii funciei obiectiv
coloanele matricii restriciilor
restricie concordant
restricie neconcordant
restricie egalitate
variabil nenegativ
variabil nepozitiv
variabil liber
Exemplul II.7.3.

modelul dual
numr de restricii
numr de variabile
maxim
minim
coeficienii funciei obiectiv
termenii liberi ai restriciilor
liniile matricii restriciilor
variabil nenegativ
variabil nepozitiv
variabil liber
restricie concordant
restricie neconcordant
restricie egalitate

122

min f 3x1 2 x2 x3 x4
2 x1 x2 x3 x4 5

x1 2 x2 x3 2 x4 10

x1 x2 2 x3 x4 10
x1/2 0, x3 0, x4 R
Duala va fi:

max g 5y1 10 y2 10 y3
2 y1 y2 y3 3

y1 2 y2 y3 2
y1 y2 2 y3 1

y1 2 y2 y3 1
y1 0, y2 0, y3 R
#.8 Problema transportului
O problem de transport, echilibrat, corespunztoare tabelului (T)
(vezi II.2), are forma:

123

min f X

n m

c x

26

1 i n

27

ij ij

i 1 j 1

x b ,

j 1

j 1

ij

PT : xij b 'j , 1 j m

28

j 1

b 'j

i 1

xij 0

29

i , j

numit i forma standard.


n cazul n care avem

i 1

i 1

bj' bi , atunci n tabelul (T)


n

'
introducem coloana (m+1)-a cu b
m1
m

iar in cazul c

'
bn
1

j 1

b b i c
i 1

j 1

'
j

i ,m1 0

1 i n;

b b
j 1

'
j

i 1

b 'j

introducem linia (n+1)-a cu

si

c n 1, j 0 1 j m

i 1

Din (27) i (28) avem m n relaii cu m n necunoscute. Din (29)


rezult c ntre ecuaiile (27) i (28) mai exist cel puin o relaie i atunci
rangul matricii sistemului (27) + (28) este ce mult m n 1
Definiia II.8.1. Dac rangul matricii sistemului (27)+(28) este m+n-1,
iar un program de baz are exact m+n-1 componente pozitive (restul nule)
atunci programul se numete nedegenerat.

124

O problem de transport se poate rezolva prin metoda simplex dar


exist i metode specifice.
Pentru nceput vom prezenta dou metode specifice pentru obinerea
unui program de baz; n cazul unui exemplu concret:
1* - Metoda colului N-V (nord-vest)
2* - Metoda elementului minim din linie sau coloan.
Problem: Din trei depozite D1 , D2 , D3 trebuie transportat acelai
tip de marf la trei magazine C1 , C2 , C3 . Costurile unitare de transport,
disponibilul (D) i necesarul (N) sunt date n tabelul:

C1
D1
D2
D3
N

C2
5

80

110

C3

3
1
3
100

100
120

70

Observm c problema este echilibrat.


Metoda

1 .n colul din N-V se trece


min 100,80 80. Deoarece necesarul N1 s-a epuizat se

min D1 , N 1
trece 0 (sau se las libere, sau se haureaz) celelalte csue de pe prima
coloan. Iar D1 devine 100 80 20 . Obinem tabelul:

D1
D2
D3
N
Cu coloanele

C1
80

C2

C3

D
20

///////////

120

///////////

70
110

100

C2 , C3 rmase procedm la fel. n colul N-V (csua (1,2) din

tabel) nscriem min D1 , N 2 min 20,110 20. Deoarece disponibilul

D1 s-a epuizat se trece 0 n restul csuelor de pe prima linie; iar necesarul


N 2 a devenit 110 20 90 . Obinem tabelul:

125

D1
D2
D3
N

C2

C3

80

20

///////////

///////////

120

///////////

70
90

100

Cu csuele rmase libere se procedeaz ca mai sus i se obine, n


final, programul de baz:
80
20
0
0
90
30
0
0
70
care este nedegenerat (are m n 1 componente; n cazul de fa m=3, n=3).
Metoda

2 Metoda minimului pe linie:

c11 2. n csua
respectiv , trecem min N 1 , D1 min 80,100 80 . Deoarece N 1 s-a
epuizat haurm celelalte csue ale coloanei C1 ; iar D1 a devenit 100Cutm costul minim din prima linie; l gsim pe poziia

20=80.
Tabelul s-a transformat n:

C1
D1
D2
D3
(N)

C2

C3

80
///////////
///////////

D
20
120
70

110

100

C2 i C3 cutm din nou cel


mai mic cost de pe prima linie: gsim c13 3 . n csua corespunztoare
trecem min D1 , N 3 min 20,100 20. Deoarece D1 s-a epuizat,
haurm csuele libere din prima linie, iar N 3 a devenit 100-20=80. Obinem
n tabelul rmas, compus din coloanele

tabelul:

D1
D2
D3

C1

C2

C3

80
///////////
///////////

///////////

20

D
120
70

126

(N)

110

80

n continuare procedm la fel i obinem programul de baz:


80
0
20
0
110 10
0
0
70
care este diferit de cel obinut prin metoda colului N-V. Lucrurile se petrec la
fel dac cutm costul minim de transport de pe o coloan.
De regul n rezolvarea unei probleme de transport, dup ce i s-a
determinat un program de baz, se folosete duala sa:

i 1

j 1

max g bi ui b 'j v j

n m

u v c

PT :

i 1 j 1

ij

u , v R,
i j

1 i n, 1 j m

Conform teoremelor dualitii avem:


g Y f X
pentru orice pereche de soluii duale X,Y.

max g Y min f X
n cazul n care avem optim.

'
gY
nlocuind n
valorile bi , 1 i n i b j , 1 j m cu
expresiile date de modelul primal ((27), respectiv (28)), gsim:

x u x v u v x

30

ij i

ij j

i 1 j 1

j 1 i 1

Inegalitatea g Y f X devine:
n

u v x c x

31

ij

i 1 j 1

ij

i 1 j 1

unde xij 0

ij ij

i 1 j 1

sau:
n

u v

32

cij xij 0, xij 0.

i 1 j 1

Dac

este

optim

finit

pentru

problema

primal

avem

max g Y min f X i inegalitatea (32) se transform n egalitate. Cum


xij 0 i , j ajungem la concluzia:

33

ui v j cij 0 dac xij 0.

127

Tot de aici reiese c dac pentru un xij 0 avem ui v j cij 0 atunci


X nu este optim.
Cum x ij 0 sunt n numr de m+n-1 atunci (33) reprezint m+n-1
relaii cu m+n necunoscute ( ui sunt n numr de n, iar v j n numr de m).
innd seama i de forma sistemului (33) este suficient s facem u1 0
pentru a obine restul necunoscutelor.
Condiia ca X s fie optim revine la faptul c ui v j cij 0 pentru

xij nebazici.
Notnd ui v j C0 i cij C0 0 condiia ca X s fie optim devine

0 0 pentru xij nebazici. Dac nu toi 0 0 pentru xij nebazici, se trece


la mbuntirea programului:

0 0 0 .
Se alege crs C0 min
i, j

xrs corespunztoare, nebazic se introduce n baz. Pe linia r,


dintr-un xrk bazic trebuie sczut un x rs , pentru a nu modifica disponibilul
Dr i atunci pe coloana k, la un x pk bazic trebuie adugat xrs pentru a nu
modifica necesarul N k i n consecin pe linia p la un x ps trebuie sczut xrs
pentru a nu modifica disponibilul Ds .
Notnd xrs , se formeaz astfel un ciclu:
Variabila

x ps

x pk

x rk

Alegnd min x ps , xrk se obine o nou soluie de baz. Se calculeaz


din nou C0 , 0 , .a.m.d., pn n momentul n care nu mai avem 0 0 .
Toate aceste rezultate se pun ntr-un tabel specific pe care l prezentm
n contextul problemei exemplu anterioare.

X0

C0
v1

v2

v3

ui
0

///

///

-3

-1

///

///

Ciclul

u1
u2

80

20
90

30

128

-1
5

20-

90+

30-

70

u3

-1

///

X avem programul de baz determinat cu metoda colului NV. Corespunztor acestuia sistemul ui v j cij 0 devine:
n caseta

u v 2
1
1

u1 v2 5

u2 v 2 2

u2 v 3 1

u3 v 3 3

Punnd u1=0 obinem v1 2 , v 2 5, u2 3, v 3 4 , u3 1 valori pe


care le-am trecut n prima coloan, respectiv prima linie din caseta C . Apoi
csuele din aceast caset, corespunztoare programului de baz se haureaz,
iar celelalte se completeaz cu valorile C corespunztoare. Se calculeaz
valorile 0 cij C0 care au fost trecute n csuele corespunztoare.

Observm c 13 1 0 , deci X nu este soluie optim i trebuie


mbuntit.
Formm ciclul cu i gsim min 20,30 20. Scriem un
nou tabel cu noua soluie gsit pe care am notat-o

C0

X1
v1
u1
u2
u3

X1 .

v2

80
110

Am obinut

vj

20

ui
0

////

////

////

10

-2

////

////

////

70

////

v3

0 0 i , j

////
////

nebazici, deci soluia X1 este optim.

Observm c ea coincide cu soluia de baz determinat cu ajutorul metodei


costului minim pe linie.
Propunem spre rezolvare urmtoarele probleme de transport:

129

1.

C1
5
1
7
10

D1
D2
D3
(N)

C2
6
3
1
30

C3
2
4
3
5

C4
5
2
4
15

(D)
15
25
20

Observaie: Soluia de baz obinut cu metoda colului N-V este:


10

X N V 0

25

0 care are 5 componente nenule.

15

Cum m+n-1=3+4-1=6 rezult c X N V este degenerat. Se caut alt soluie


de baz cu metoda costului minim pe linie, obinndu-se:
0

10

10

10

20

2.

D1
C1
C2
C3
D

D2
3
2
5

30

10

1
6

D3
2
3

D4
5
2

1
10

60

50
20

80

Observaie: Mai nti trebuie transpus acest tabel. Se va gsi soluia de baz:
30 0
0

0 10 0

.
0
0 10

20 10 50
3.

D1
D2
N

C1
2
4

C2
3
5

30

10

C3

50
30

2
40
130

4.
D1
D2
D3
(N)

C1

C2

C3

5
3
5
40

2
4
4
10

1
2
3
30

20
40
40

Observaie: Deoarece (D) > (N) problema este neechilibrat. Introducem un


consumator fictiv:

D1
D2
D3
N

C1
5
3
5
40

C2
2
4
4

C3

C4

0
0
0
20

20

2
3

10

30

40
40

Probleme de programare liniar propuse spre rezolvare:


I. S se rezolve urmtoarele probleme puse sub forma standard:

max f x 3x1 x2
2 x 3x x 4
1
2
3

1.)

Sol.

5x1 2 x2 x4 12

xi 0 i 1,4.
44 4

;
;0;0
19 19

X optim

max f

131

136
19

min f x x1 2 x 2 2 x 3
2 x1 x 2 x 3 x4 1

x1 2 x2 2 x 3 x5 2

2.)

3 x1 x2 x 3 x6 4

Sol: X optim 5,0,11,0,19 ,0

xi 0

i 1,6

min f 27

min f x x 4 2 x5 3x 6
x1 x 4 2 x 5 x 6 3

x 2 3x 4 x5 x 6 4

3.)

x 3 x 4 3x5 2 x 6 1

Sol:

X optim 0,0,0,2 ,7,11

min f 47

max f x 3x1 2 x2 4 x3 2 x4
x1 2 x2 x3 2 x4 x5 2

x1 3x2 x3 x4 x6 1

4.)

x1 x2 4 x3 x4 x7 2

xi 0 i 1,7

Sol: X optim 0,0,0,1,4,0,3 ;


T

max f 2.

132

xi 0

min f x 3x1 x 2 2 x 3 x 7 4
x1 2 x 2 3 x 3 x 4 x 7 1

x1 x 2 x 3 x 5 x 7 2

5.)

Sol: nu are optim finit

x1 x 2 2 x 3 x 6 2 x 7 3

xi 0

II. S se aduc la forma standard i apoi s se rezolve problemele:

max f x 3x1 2 x 2 4 x 3
x 2x x 5
1
2
3

6.)

Sol: nu are optim finit

x1 4 x 2 x 3 1

xi 0
max f x 7 x1 4 x 2
x x 1
1 2

7.)

x1 2 x 2 4

Sol: X optim 2 ,1,2,0,0

x1 2
T

max f 18

133

x1,2 0

min f x 2 x1 3x 2 x 4
x1 2 x 2 3x 3 x 4 1

x1 x 2 x 3 x 4 2

8.)

Sol: X optim 8,11,0,5

x1 x 2 2 x 3 2 x 4 3

xi 0

i 1,4

max f x y z
2x y 3

2y z 3

9.)

Sol: X optim 1,1,1

x 2z 3

x, y, z 0
max f x y z
x y 1

y z 1

10.)

Sol: X optim

xz 1

x, y, z 0

134

1 1 1
; ;
2 2 2

min f x 2 x1 x 2 x 3
x x x 1
1
2
3

11.)

2 x2 x3 4

Sol: nu exist minim

xi 0 i 1,3

max f x 2 x1 x 2
2 x1 x 2 4

12.)

Sol: X optim 4,0

x1 x 2 4

x R, y 0
min f 2 x1 3x 2 2 x 3
x1 x 2 x 3 1

x1 2 x 2 3x 3 4

13.)

2 x1 x 2 2 x 3 3
xi 0

i 1,3

135

min f x x1 2 x 2 x 3
x x 2x 1
1
2
3

Sol: X optim 0,0,1 / 2 T

14.)

x1 x 2 x 3 4

x1 , x 2 0

x3 R

max f x x1 2 x 2 3x 3
x x x 6
1
2
3

15.)

2 x1 3 x 2 x 3 6

x1 2, x 2 3, x 3 0
Indicaie:

Se

face

mai

nti
schimbarea
de
T
Sol: X optim 2,3,1 .

x x1 2, x x2 3
'
1

'
2

variabile:

III. Folosind metoda celor dou faze s se rezolve programele liniare:

min f x x1 3x 2 2 x 3 x 4 2 x5
2x x 2x x x 1
1
2
3
4
5

16.)

3 x1 x 2 x 3 2 x 4 2 x 5 3

Sol: X optim 0,0,5 / 3,7 / 3,0

xi 0

136

i 1,5

min f x 3x1 x 2 x 3 x 4
x1 x 2 x 3 x 4 x 5 1

2 x1 x 2 x 3 2 x 4 x 5 2

17.)

2 x1 x 2 x 3 x 4 4

xi 0

Sol: X optim 1,1,1,0

min f 1

min f x 2 x1 3x 2
x1 x 2 1

Sol: X optim 1,0

x1 x 2 2

18.)

x1 2 x 2 1

x1/ 2 0

max f x x1 x 2 x 3
x 3x 5x 2
1
2
3

19.)

3 x1 2 x 2 2 x 3 2

xi 0
2 4
; ;0
7 7

Sol: X optim

137

i 1,3

min f x 2 x1 x 2 x 3
x x x 2
1
2
3

20.)

2 x1 x 2 x 3 3

xi 0

IV. S se transcrie matematic i apoi s se rezolve urmtoarele probleme:


21.)
O main care lucreaz 25 de ore pe sptmn produce trei articole.
Beneficiul obinut n urma vnzrii acestor articole este de 40 lei/buc pentru
primul articol, respectiv 120 lei/buc pentru al doilea articol i 30 lei/buc pentru
ultimul articol. ntr-o or maina poate realiza 50 buc din primul articol sau
25 buc din al doilea articol sau 75 buc din al treilea articol. Cererea
sptmnal nu depete 1000 buc din primul articol, 500 buc din al doilea
articol, 1500 buc din al treilea articol. Cum trebuie repartizat producia celor
trei articole pentru ca ntreprinderea s-i asigure un beneficiu maxim:
Rspuns: Fie x1 , x 2 , x 3 cantitile din cele trei articole ce trebuiesc produse.
Atunci avem de rezolvat problema:

max f 40 x1 120 x 2 30 x 3

x1 1000
x 500
2

x 3 1500

50

x1

1
25

x2

1
75

x 3 25

x1 , x 2 , x 3 0
1

x1 reprezint numrul de ore pe sptmn n care maina produce


50
cantitatea x1 din primul articol).
22.)
O fabric de zahr trebuie s produc ntre 1 noiembrie - 28 februarie.
Livrrile de zahr se fac lunar, dup contract: n noiembrie 20.000 t, n
(

138

decembrie 30.000 t, n ianuarie 50.000 t i n februarie 40.000 t. Producia


excedentar a unei luni poate fi livrat luna urmtoare, suportnd cheltuielile
de depozitare de 2.000 lei/ton pe lun. Capacitatea lunar de producie a
fabricii este: 55.000 t n noiembrie, 40.000 t n decembrie, 25.000 t n
ianuarie, 50.000 t n februarie. Preurile de cost sunt: 140.000 lei/ton n
noiembrie, 160.000 lei/ton n decembrie, 150.000 lei/ton n ianuarie,
170.000 lei/ton n februarie.
S se stabileasc nivelul de producie lunar astfel nct contractele s fie
satisfcute cu cheltuieli minime.
Rspuns. Vom presupune c producia se termin fr stoc.
Fie x1 , x2 , x3 , x4 cantitile de zahr ce trebuiesc produse respectiv n
lunile: noiembrie, decembrie, ianuarie, februarie. Avem:

x i 0 i 1,4
x1 55000

x 2 40000

x 3 25000

x 50000
4

x 20000
1

x 3 x1 x 2 50000 50000
x 4 x1 x 2 x 3 100.000 40.000

x x 20000 30000
2
1

x1 20000 - reprezint excedentul din noiembrie.)

Considernd cheltuielile de producie i cele de depozitare n mii lei


funcia obiectiv devine:
f x 140 x1 160 x 2 150 x 3 170 x 4 2 x1 20000 2 x1 x 2 50000

2 x1 x 2 x 3 100000

Deci avem de calculat minimul funciei:

f x 146 x1 164 x 2 152 x 3 170 x 4 340000.

23.)
Un atelier de construcii metalice dispune de evi cu lungimea de 5m,
din care trebuie s taie cel puin 35 evi n lungime de 2m, 25 evi de 2,5m i

139

10 evi de 3m lungime. Cum trebuie procedat astfel ca s se realizeze


consumuri minime de material?
Rspuns: Exist patru variante de a tia o eav de 5m lungime n buci
cu lungimile specificate:
v1 :

5 2 2 1

v2 :

5 2 ,5 2,5

v3 :

5 3 2

v4 :

5 2 2 ,5 0,5

Observm c la prima variant se pierde 1m de eav, la cea de-a patra


0,5m iar la variantele a II-a i a III-a nimic. Notnd cu x1 , x2 , x3 , x4
numrul evilor de 5m care se taie respectiv dup variantele
avea:

v1 , v2 , v3 , v4 vom

min f x1 0,5 x 4 .
2 x1 x 3 x 4 35

2 x 2 x 4 25

x 3 10

xi 0

Vom obine

i 1,4

x1 0, x2 5, x3 10, x4 15

24.)
Fiecare animal dintr-o ferm are nevoie de o cantitate minim de
principii nutririve pe zi care depinde de specie, vrst, scop urmrit n
alimentaie.
Principiile nutritive se afl n diferite proporii n produsele ce compun
raia furajer. Folosind datele din tabelul de mai jos s se determine cantitatea
x din alimentul A1 i cantitatea y din alimentul A2 exprimate n kilograme, ce
trebuie s intre n compoziia raiei furajere a unui animal astfel nct costul ei
s fie minim.
Denumirea
principiilor nutritive

Coninutul
n
principii
nutritive al alimentelor (kg)

P1

0,1

A1

Cantitile minime
prescrise (kg)

A2
0

140

0,4

P2
P3
P4
Costul (lei/kg)

0
0,1
0,2
240

0,1
0,2
0,1
80

0,6
2
1,7

Indicaie: problema se transcrie matematic astfel:


0,1x 0,4

0,1 y 0,6

0,1x 0,2 y 2

0,2 x 0,1 y 1,7

Se gsete

x, y 0
min f 240 x 80 y

141

x 4, y 9

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