Documente Academic
Documente Profesional
Documente Cultură
Cercetari Operationale PDF
Cercetari Operationale PDF
CHIRCOR MIHAEL
CERCETRI OPERAIONALE
FUNDAMENTAREA DECIZIILOR N
MANAGEMENTUL SISTEMELOR DE PRODUCIE
2004
CUPRINS
1. INTRODUCERE
1.1. Scurt istoric al evoluiei tiinei Cercetare Operaional 3
1.2. Teoria Deciziei i Cercetare Operaional 4
1.3. Modelarea matematic n Cercetarea Operaional 5
2. PROGRAMARE LINIAR 7
2.1. Probleme de programare liniar 7
2.1.1. Formularea problemei de programare liniar 7
2.1.2. Forme ale problemei de programare liniar 9
2.1.3. Modelul matematic al problemei de programare liniar 12
2.2. Consideraii generale privind problemele de programare liniar 16
2.2.1. Soluii i fundamente ale problemei de programare liniar 16
2.2.2. Baze ale problemei de programare liniar 20
2.2.3. Interpretarea geometric a problemei de programare liniar 22
2.3. Metoda Simplex 26
2.3.1. Fundamente teoretice n aplicarea metodei Simplex 26
2.3.2. Algoritmul simplex primal 28
2.3.3. Metode de determinare a unei soluii de baz iniiale 35
2.3.4. Interpretarea economic a algoritmului simplex primal 39
2.4. Dualitatea n programarea liniar 41
2.4.1. Problema dual. Fundamente teoretice 41
2.4.2. Algoritmul simplex dual 45
2.4.3. Interpretarea economic a dualitii 49
2
Cercetri operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
BIBLIOGRAFIE 131
3
4
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
CAPITOLUL 1
INTRODUCERE
1.1. Scurt istoric al evoluiei tiinei Cercetare Operaional
3
Introducere
Control
Fig.1.1.
4
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
5
Introducere
6
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
CAPITOLUL 2
PROGRAMAREA LINIAR
2.1. Probleme de programare liniar
a11 .........a1n
A Mm.n; A= ( ai,j ), i = 1,..,m, j= 1,...,n; A = (2.1)
a ..........a
m1 mn
b1
m
b2
b R ,b= (2.2)
.
b
m
7
Programare liniar
x1
x
x R ,x= 2
n
(2.3)
.
x
n
c1
c2
cj R, c Rn c = ; c T = (c1 c 2 ...c j ...c n ) (2.5)
.
c
n
Sintetiznd toate datele de mai sus, obinem urmtorul model (2.7, 2.8, 2.9)de
programare liniar.
Relaiile (2.7), (2.8) i (2.9) constituie mpreun modelul matematic al unei probleme
de programare liniar, avnd fiecare un rol specific:
8
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
n (2.7)
min(max) z = c j x j
x j =1
n
aij x j bi 1 i k
j n=1 (2.8)
aij x j bi k +1 i l
j =1
xj 0 1 j n (2.9)
n
2. relaiile (2.8) de tipul aij x j bi reprezint restricii ce coreleaz volumul consumului
j =1
activitilor cu cel al disponibilului pentru fiecare resurs; iar restriciile de tipul
n
aij x j bi impun un consum peste limitele minimale, sunt restricii tehnico-economice
j =1
de tip calitativ;
3. relaia (2.9) xj 0 j = 1,...,n, numit condiia de nenegativitate a variabilelor, asigur
obinerea unei soluii realizabile n practica industrial.
Decizia obinut cu ajutorul modelului nu poate fi recomandat nemijlocit pentru
realizare, deoarece modelul face abstracie de o serie de aspecte ale fenomenului studiat, cele
ce au la baz o serie de factori ce nu pot fi formalizai.
n practica industrial programarea liniar ofer soluii care pot motiva tiinific luarea
unor decizii de natur strategic, tactic sau a unor decizii cu coninut tehnico organizatoric.
9
Programare liniar
O problema de programare liniar este dat sub form standard dac toate restriciile
sale sunt date sub form de ecuaii (egaliti) i tuturor variabilelor li se impun condiii de
nenegativitate.
Problema de programare liniar dat n form standard se scrie n mod explicit (2.12):
n
max(min) z = c j x i
j =1
n
a ij x j = b i 1 i m (2.12)
j = 1
xj 0 1 j n
min(max)c T x c, x R n
Ax = b , unde A M ( R ) m ,n (2.13)
x0 b Rm
n
min(max) z = c j x i
j =1
n
a ij x j ( ) b i 1 i m (2.14)
j =1
xj 0 1 j n
Problema de programare liniar n form canonic poate fi scris i sub form
matricial (2.15) :
10
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
min(max)c T x C , x R n
Ax ()b unde A M m ,n (2.15)
x0 b Rm
x = x1 x 2 , unde x1 , x 2 0 (2.17)
x1 = x, unde x1 0 (2.18)
a T x b a T x y = b a T x b a T x + y = b
i (2.19)
x0 x, y 0 x0 x, y 0
unde y se numete variabil ecart.
Variabilele ecart nu apar n funcia obiectiv sau astfel spus apar n funcia obiectiv dar
cu coeficieni nuli:
e e
c j = 0 (unde c j = coeficieni ai variabilelor ecart).
n aplicaiile practice apar frecvent situaii n care modelul conine simultan restricii
de toate tipurile (concordante, neconcordante, egaliti), problema fiind dat n form
general, iar rezolvarea ei poate fi abordat fr a restrnge generalitate.
Exemplul 2.1
11
Programare liniar
max(3 x1 x 2 + 2 x3 )
3 x1 x 2 = 4 , (1)
x1 5 x 2 + 2 x3 3, ( 2)
x1 + 4 x3 2, ( 3)
2 x1 + 3 x 2 2 x 3 0 , (4 )
x1 , x 2 0, x3 , oarecare
pozitive: x3 = x4 x5. Pentru ca problema s aib forma standard, toate restriciile trebuie s
fie egaliti, de aceea n restriciile (2), (3) i (4) vom introduce variabilele de egalizare x6, x7,
x8. Forma standard va fi:
max(3 x1 x 2 + 2 x4 2 x5 )
3 x1 x 2 = 4 ,
x1 5 x 2 + 2 x4 2 x5 x6 = 3,
x1 + 4 x4 4 x5 x7 = 2,
2 x1 + 3 x 2 x 4 + x 5 + x 8 = 0 ,
x1 , x 2 ,..., x8 0
max(3 x1 x 2 + 2 x4 2 x5 )
3 x1 x 2 4 ,
3 x1 + x 2 4,
x1 + 5 x 2 2 x4 + 2 x5 3,.
x 4 x + 4 x 2,
1 4 5
2 x1 + 3 x 2 x 4 + x 5 0 ,
x1 , x 2 , x 4 , x 5 0
12
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
n
aij x j bi , i = 1, m (2.20)
j =1
xj 0 , j = 1, n (2.21)
Sistemul de inecuaii (2.20) i (2.21) poate avea o infinitate de soluii, deci putem
organiza procesul de producie pentru realizarea produsului P ntr-o infinitate de moduri dar
respectnd condiiile anterioare .
Acest fapt face evident imposibilitatea practic a managerului de a compara toate
variantele de plan posibile deci este necesar introducerea unui alt criteriu.
Adoptarea unei variante de plan (n fapt fundamentarea deciziei) se face, preferabil, pe
baza unui criteriu economic (cel mai uzual maximizarea profitului sau n alte cazuri
minimizarea costurilor). Aplicarea acestui criteriu economic, presupune cunoaterea profitului
total.
n
Deci : c j x j reprezint profitul total pentru produsele Pj
j =1
Funcia obiectiv (scop, eficien) va fi :
n
max f = c j x j (2.22)
j =1
n
max f = cjxj
j =1
aij x j bi (2.23)
xj 0
Problema de transport
Un produs omogen P este stocat n m depozite Di, n cantitile ai , i = 1, m i este cerut
de spre a fi transportat la n centre de consum Cj ,n cantitile bj, j = 1, n . Se cunosc costurile
cij pe unitatea de produs transportat de la centrul Di la centrul Cj . Se cere determinarea unui
plan de transport astfel nct costul total de transport s fie minim.
13
Programare liniar
x
j =1
ij = ai , i = 1, m (2.24)
x
i =1
ij = bj j = 1, n (2.25)
m n
a = b
i =1
i
j =1
j (2.26)
xij 0 (2.27)
m n
min cij xij (2.28)
i =1 j =1
m n
min( f ) = cij xij
i =1 j =1
n
xij = ai , i = 1, m
j =1 (2.29)
n
xij = bi , j = 1, n
j =1
x 0, i = 1, m, j = 1, n
ij
14
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
m n
min f = cij xij (2.30)
i =1 j =1
x
j =1
ij = bi , i = 1, m (2.31)
a x
i =1
ij ij t j , j = 1, n (2.32)
xij 0, i = 1, m, j = 1, n (2.33)
m n
min f = cij xij
i =1 j =1
n x = b , i = 1, m
j ij i
=1 (2.34)
m
aij xij t j , j = 1, n
i =1
xij 0, i = 1, m, j = 1, n
15
Programare liniar
O firm produce 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 necesar pentru producerea unei uniti din produsul j; profitul unitar cj al produsului j = 1, n .
S se stabileasc un program de fabricaie care s permit utilizarea optim a
capacitii disponibile a celor m utilaje.
n
max f = c j x j (2.35)
j =1
a
j =1
ij xij 1, i = 1, m (2.36)
x j 0, j = 1, n (2.37)
n
max f = j =1
cjxj
m
aij xij 1, i = 1, m (2.38)
j =1
x 0, j = 1, n
j
min(max)c T x C , x R n
Ax = b , unde A M m ,n (2.39)
x0 b Rm
16
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Soluie admisibil
Un vector x = ( x1 x 2 ... x n ) R n care satisface restriciile si condiia de
nenegativitate se numete soluie admisibil sau posibil a problemei de programare liniar.
Mulimea soluiilor admisibile, S, este:
{
S = x R n / Ax = b, x 0 } (2.40)
Soluie optimal
O soluie admisibil care face optim funcia z=min(max)c T x se numete soluie
optimal.
Este posibil ca problema de programare liniara s aib soluie optim unic, s aib
mai multe soluii optime sau s nu admit soluie optim.
Soluie grafic
Acest tip de soluie va fi studiat detaliat n paragraful 2.2.3.
Demonstraie:
min c T x
Ax = b . (2.41)
x 0
17
Programare liniar
x = ( x1 , x2 , x3 , xp , 0, 0 ,0)T (2.42)
x x
max ( i ), I 1 min ( i ), I 2
1 = iI1 yi 2 = iI 2 y i (2.44)
, I1 = + , I2 =
Definiia 2.1: Fie V un spaiu liniar peste corpul R i x, y doi vectori din V. Mulimea
vectorilor [x, y ] = {X V / X = (1 ) x + y,0 1 } se numete segment al lui V (unete
vectorul x cu vectorul y ).
Definiia 2.2: O mulime M de vectori din V se numete mulime convex dac () x, y
M i
18
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
() [ 0,1] , atunci [ x, y] M .
Deci se poate spune c mulimea M din V este convex, dac odat cu doi vectori x, y
M conine i segmentul determinat de aceti vectori.
Definiia 2.3: Vectorul X M se numete vrf sau punct extrem al mulimii M dac nu
exist vectorii x, y M astfel nct {X = (1 ) x + y,0 1 } . n caz contrar X se
numete punct interior mulimii M .
Teorema 2.2: Mulimea soluiilor admisibile ale unei probleme de programare liniar
este o mulime convex .
Demonstraie :
Fie mulimea soluiilor admisibile dat de relaia (2.40).
Fie dou soluii: x1 , x2 S. Atunci pentru [0,1] avem
Teorema 2.3: Orice soluie admisibil de baz a unei probleme de programare liniar
este vrf sau punct de extrem al mulimii soluiilor admisibile.
Demonstraie.
Presupunem c soluia admisibil de baz x are forma
x=(x1 x2 xm 0 0T.
Aceasta nseamn c xi 0 (i = 1, m), vectorii p1, p2, ,pm sunt liniar independeni i
x satisface sistemul de restricii, deci
x1 = x1' + (1 )x1' , x 2 = x 2' + (1 )x 2'' ,., x m = x m' + (1 )x m'' ,.., 0 = x n' + (1 )x n''
(
ns (0,1) , deci 1 > 0 , iar xi' 0 i = 1, n i xi'' 0 ) (i = 1, n) deoarece
x' , x' ' S , astfel c, din cele n m relaii se obin:
x m' +1 = 0 x n' = 0 ; x m'' +1 = 0 x n'' = 0 i deci vectorii x' , x' ' au formele:
19
Programare liniar
(
x' = x1' x 2' x m' 0 0 )
T
, (
x' ' = x1'' x 2'' x m'' 0 0 )
T
(2.47)
x1' = x1'' , x 2' = x 2'' , x m' = x m'' adic x' = x' ' (2.50)
Aceasta nseamn c nu exist vectorii x' , x' ' S astfel ca x = x'+(1 )x' ' (0,1)
prin urmare x este vrf sau punct de extrem n S.
Demonstraie:
Presupunem c se cere ca funcia obiectiv s fie minimizat.
~
Notam cu M = { xi , i I } mulimea punctelor extremale ale lui M i fie x1 punct
extrem pentru care c T x1 = min{c T xi } = z1
iI
Presupunem prin absurd c aceast afirmaie nu este adevrat, atunci exist x0
{ ~
}
M M astfel nct : c T x0 = z0 < z1, deoarece x0 nu este punct extrem atunci :
x0 = x
iI
i i , I 0 ,
iI
i =1 (2.51)
Consecin :
Dac funcia obiectiv ia aceeai valoare optim n mai multe puncte extremale, atunci
orice combinaie liniar convex a acestora este soluie optim a problemei de programare
liniar.
Fie problema de programare liniar n forma standard (2.13), n care matricea A are m
linii i n coloane, iar rang A = m < n. Ecuaiile ce compun sistemul liniar Ax = b sunt liniar
independente, iar sistemul are o infinitate de soluii.
Astfel, n matricea A exist cel puin un grup de m coloane liniar independente, care
formeaz o baz a spaiului Rm.
Definiiile ce urmeaz reprezint fundamente ce stau la baza rezolvrii modelelor de
programare liniar.
Definiia 2.5 Se numete baz a problemei de programare liniar n form standard un grup
de m coloane liniar independente.
20
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
[ ] [ ]
A = [B, S ] , cu B = a (i ) iI , S = a ( j ) j J (2.52)
unde prin I i J s-au notat mulimile de indici corespunztori coloanelor din baza B i,
respectiv, a celorlalte coloane:
{
I = i = 1, n a (i ) B } (2.53)
J = {1,2,..., n}/ I
xB
x = S , cu x B = [xi ]iI , xS = x j [ ] jJ
(2.54)
x
c B
c = S , cu c B = [ci ]iI , cS = c j [ ] jJ
(2.55)
c
B
[B, S ] x S = b Bx B + Sx S =b (2.56)
x
Matricea B fiind o baz a spaiului Rm este inversabil. Astfel prin nmulirea relaiei
(2.56) la stnga cu B-1 se obine forma explicit a sistemului de ecuaii:
x B = B 1b B 1 Sx S (2.57)
Notm cu:
B
x = B 1b (2.58)
y Bj = B 1a ( j ) , j = 1, n (2.59)
B
x B = x y Bj x Bj (2.60)
jJ
21
Programare liniar
B
xiB = x i y ijB x Bj , i I (2.61)
jJ
B
x B = x Rn (2.62)
0
B 1b 0 (2.63)
[ ' x
]
B
( )
z = c B c S S = c TB x B + c ST x S = c TB B 1b B 1 Sx S + c TS x S
x
(
z = c B B b c TB ' B 1 S c ST ' x S
T 1
) (2.64)
Notm cu:
B B
z = c TB x (2.65)
z Bj = c TB y Bj , j = 1, n (2.66)
B
z = z z iB c j x Bj ( ) (2.67)
jJ
B
Definiia 2.7. Constanta z din relaia (2.67) reprezint valoarea funciei obiectiv n soluia
asociat bazei B.
a12 x1 + a 22 x 2 b2
b) inegaliti : sau (2.68)
a 21 x1 + a 22 x 2 b2
z = max(2 x1 + x 2 )
2 x x 2
1 2
1x 2 x 2 2
x1 + x 2 5
x1 0 , x 2 0
i apoi se ia, n cadranul nti intersecia domeniilor ce reprezint soluiile, respectiv, ale celor
trei inecuaii, fig. 2.1.
Prin intersecia celor trei semiplane s-a obinut domeniul admisibil, ce este o mulime
convex. Coordonatele oricrui punct din acest domeniu satisfac toate restriciile i condiiile
de nenegativitate ale problemei. Conform teoremei 2.4, dac funcia obiectiv i atinge
valoarea maxim, atunci z ia valoarea maxim ntr-un vrf ( punct extrem al mulimii
convexe). Acestea sunt vrfurile poligonului, notate cu: O, A, B, C, D.
23
Programare liniar
x2
d1
C(1,4)
d2
(D
)
D(0,2)
B (4,1)
d3
0 A(2,0) x1
Fig.2.1
x 2 x2 = 2
B (d 2 ) (d 3 ) 1 B(4,1)
x1 + x2 = 5
2 x 2 x 2 = 2
C (d 1 ) (d 3 ) 1 C (1,4 )
x1 + x 2 = 5
Aflarea soluiei optime se bazeaz pe faptul c funcia obiectiv, avnd dou variabile se
poate reprezenta printr-o dreapt (D).
c1 z
(D): x 2 = x1 +
c2 c1
c1
care reprezint o mulime de drepte paralele ntre ele, avnd panta constant m =
c2
z
i ordonata la origine variabil, n = .
c1
n problemele de maxim vom alege poziia care are ordonata la origine astfel ca ea s
furnizeze valoarea maxim pentru z.
Analog pentru problemele de minim.
24
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Exemplul 2.3.
Pentru fabricarea a dou produse P1 i P2, o firm dispune de patru tipuri de resurse Ri
( )
1,4 . Cantitile de resurse Ri folosite pentru fabricarea fiecrei uniti din produsele P1 i P2,
n uniti convenionale (tone etc) sunt date n tabelul 2.1.
Se mai cunosc cantitile disponibile ale firmei din fiecare resurs Ri i = 1,4 i ( )
beneficiile pentru fiecare unitate din cele dou produse.
S se determine planul de producie astfel ca beneficiul total s fie maxim.
Tabelul 2.1
Resurse R1 R1 Disponibil
R1 2 2 12
R2 1 2 8
R3 4 0 16
R4 0 4 12
Beneficiu 2 um 3 um
2 x1 + 2 x 2 12
x + 2x 8
1 2
x1 0, x 2 0, z = 2 x1 + 3 x 2 = max
4
1 x 16
4 x 2 12
(d 1 )2 x1 + 2 x 2 = 12
(d )x + 2 x = 8
2 1 2
( )
d 3 4 x1 = 16
(d 4 )4 x 2 = 12
(D) 2x1 + 3x2 = z
x2
d3
(D
C(2,3) d4
)
D(0,3)
B(4,2)
d1 d2
0 A(4,0) x1
Fig.2.2
25
Programare liniar
x1 = 4; x2 = 2 f(x) = 14 = max
min c T x C , x R n
Ax = b , unde A M m ,n (2.71)
x0 b Rm
B
Fie B o baz primal admisibil extras din matricea A i x = B 1b o soluie de baz
iniial a problemei de programare liniar.
Pentru ordonarea i facilitarea calculelor se utilizeaz n aplicarea practic a
algoritmului tabele ce poart denumirea de tabele simplex.
Aceste tabele sunt tabele simple ce au m+1 linii i n+1 coloane i cuprind coeficienii
numerici al problemei (2.71) corespunztori bazei primal admisibile B (tab 2.2).
Tabelul conine n prima coloan, variabilele de baz (V.B.), n coloana a doua
valoarea variabilelor de baz (V.V.B), iar n urmtoarele n coloane vectorii y Bj , j = 1, n .
Pe ultima linie a tabelului se trece valoarea funciei obiectiv pentru baza B notat cu
B
z i diferenele z Bj c j , j = 1, n .
Acestui tabel se ataeaz o linie deasupra variabilelor x j i o coloan la stnga
coloanei V.B cu coeficienii corespunztori funciei obiectiv c j , j = 1, n .
26
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Tabelul 2.2
cl ... ck ... cj ... cn
B B
xi xl
min = (2.73)
i I + yikB ylkB
~
B B
se obine un nou program de baz x cel puin la fel de bun ca x , corespunztor unei noi
~ (l )
baze B care are aceleai coloane ca i B, cu excepia coloanei a ce se nlocuiete cu
(k )
coloana a .
Observaii:
~
Baza B este primal admisibil i verific toate teoremele anterioare.
Relaia (2.73) reprezint criteriul de ieire din baz i ne arat indicele l I + , al
coloanei a (l ) ce urmeaz s prseasc baza B.
27
Programare liniar
n cazul n care exist mai muli indici k J pentru care se ndeplinesc (2.72) i (2.73)
atunci se pot construi mai multe baze primal admisibile i fiecare dintre acestea modific
valoarea funciei obiectiv.
Pentru a obine mai repede optimul cutat este indicat a alege acel
indice pentru care se verific relaia.
B B
B xl xl
max (( z j c j ) B ) = ( z kB c ) (2.74)
j J ylk ylkB k
B B
max ( z j c j ) = z k ck (2.75)
j J
elementul de
transformat
y B
ij y ikB
y ijB y ikB
pivotul
Fig.2.3
28
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
{
Dac exist cel puin un indice j J + , J + = j J / z Bj c j > 0 } astfel nct
Acest algoritm are paii 1,2,5,6 identici cu algoritmul pentru probleme de minimizare.
Pasul 3 : Se analizeaz toate diferenele z Bj c j :
B
Dac toate diferenele z Bj c j 0 , j = 1, n atunci programul x este optim.
{
Dac exist cel puin un indice j J , J = j J / z Bj c j < 0 } astfel nct
29
Programare liniar
START
Construieste
tabel simplex
initial
Exista
valori pozitive (negative) pe Nu Indica
linia diferentelor? solutia optima STOP
Da
Determina
coloana pivotului
Exista Nu Indica
valori pozitive in coloana solutia optima STOP
pivotului?
Da
Determina
linia pivotului
Calculeaza un nou
tabel simplex
Fig.2.4
x1 x 2 4,
3 x x 18,
1 2
x1 + 2 x 2 6,
x , x 0
1 2
max (2 x1 + x 2 ).
Pentru a aplica algoritmul simplex, vom aduce mai nti problema la forma standard. n acest
scop introducem variabilele ecart x3, x4 i x5:
x1 x 2 + x3 = 4,
3 x x + x = 18,
1 2 4
1 x + 2 x 2 + x5 = 6,
x , x ,..., x 0
1 2 6
max(2 x1 + x 2 ).
Iteraia 1
Pasul 1 Fie B o baz admisibil a problemei format din coloanele matricii A i anume a3, a4
i a5:
1 0 0
3 4 5
(
B = a , a , a = 0 1 0 )
0 0 1
Pasul 2 Baza B este matricea unitate, astfel vom calcula urmtoarele elemente:
B
B 1 = B = I i x = B 1b = b = [4 18 6] ;
30
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
y Bj = B 1 a j = a j , elementele matricii A.
B
z Bj c j = c ' B 1a j c j = (0 0 0 ) a j c j = c j = (2 1 0 0 0)
B
z = c B B 1b = 0.
Cunoscnd toate aceste date, putem forma tabelul simplex iniial ( tab.2.3).
{ }
Pasul 3. Deoarece exist j J , J = j J / z Bj c j < 0 astfel nct z Bj c j < 0 , baza
iniial nu este optim.
Pasul 4 Se determin indicele k J + cu criteriul de intrare n baz
z kB ck = min ( z Bj c j ) =min ( 2,1 )=-2. Deci indicele k = 1, astfel variabila x1 va intra
j J
~
n noua baz B i ()k J + pentru care y kB > 0 .
Pasul 5: Se determina indicele l I cu criteriul de ieire din baz
xB xB
i l 4 18 4
min B = B = min , = ,
1 3 1
i I
yij ylk
y B >0
ik
deci indicele l = 3. Variabila x3 va prsi baza B. Pivotul este y31= 1
Pasul 6: Se nlocuiete n baza iniial B variabila x3 cu variabila x1 obinndu-se astfel o noua
~
baza B ceea ce nsemn c se vor transforma toate mrimile urmtorului tabel simplex cu
regula dreptunghiului.
Interaia 4 Deoarece z j c j 0 pentru toi j, baza actual este optim. Deci programul optim
42 36 14
al problemei noastre este x1 = , x2 = , x3 = , x 4 = 0 , x5 = 0 ( x 4 i x5 au valoarea
5 5 5
0, deoarece sunt variabile secundare).
Interpretare geometric.
31
Programare liniar
Tabelul 2.3
2 1 0 0 0
C B
V.B. V.V.B xl x2 x3 x4 x5
0 x3 4 1 -1 1 0 0
0 x4 18 3 -1 0 1 0
0 x5 6 -1 2 0 0 1
0 -2 -1 0 0 0
2 1 0 0 0
CB V.B. V.V.B xl x2 x3 x4 x5
2 x1 4 1 -1 1 0 0
0 x4 6 0 2 -3 1 0
0 x5 10 0 1
1 1 0
8 0 -3 2 0 0
2 1 0 0 0
CB V.B. V.V.B xl x2 x3 x4 x5
2 x1 7 1 0 -1/2 1/2 0
1 x2 3 0 1 -3/2 1/2 0
0 x5 7 0 0 5/2 -1/2 1
17 0 0 -5/2 -3/2 0
2 1 0 0 0
C B
V.B. V.V.B xl x2 x3 x4 x5
24 0 0 0 1 1
x2
42 36
C ,
5 5
(d2)
B(7,3)
D (0,3)
(d1)
O (0,0) A(4,0) x1
Fig.2.5
ns, dup cum se vede din figur, nu exist nici un program care s dea funciei
obiectiv valoarea z3 (dreapta 2x1 +x2 =z3 nu intersecteaz poligonul OABCD domeniul
soluiilor).
Cea mai mare valoare pe care o poate lua z pentru punctele din poligonul OABCD se
obine atunci cnd dreapta 2x1 +x2 = z trece prin punctul C. Valoarea lui z n acest caz este 2.
42/5 + 36/5 = 24.
32
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Cnd am aplicat algoritmul simplex, drept baz iniial am luat baza B = (a3, a4, a5).
Variabilele x1 i x2 sunt variabile secundare, deci au valoarea 0; reiese c ne-am gsit n
vrful O (0,0) al poligonului OABCD, iar valoarea funciei obiectiv era z = 0. n continuare,
variabila x1 intr n baz i am obinut programul x1 = 4, x2 = 0.
Geometric aceasta nseamn c din vrful O ne-am deplasat pn n vrful A (4,0) de-a
lungul muchiei OA. n continuare, din vrful A am ajuns n vrful B, mergnd pe muchia AB
(variabila x3 a pstrat tot valoarea 0, deci ne gseam pe dreapta d1). De aici am ajuns n vrful
optim C, urmnd muchia BC.
Valoarea funciei obiectiv a crescut de la 0 la 8, apoi la 17 (n vrful B) i, n sfrit, la
valoarea maxim 24.
Acest lucru este valabil i n cazul general: fiecrei baze admisibile a problemei adus
la forma standard i corespunde un vrf al domeniului soluiilor.
Concluzie: Fiecare iteraie simplex reprezint o deplasare de la un vrf al domeniului
soluiilor, pe o muchie, pn la un vrf, care confer funciei obiectiv o valoare mai bun.
Exemplul 2.5.
O companie produce trei tipuri de produse A, B, C. Fiecare dintre aceste produse
trebuie prelucrate tehnologic aceeai main unealt, timp de 2 ore, 3 ore respectiv 1 or.
Maina unealt este disponibil pentru perioada analizat, 400 ore.
Pentru produsele A i C se folosesc componente speciale, cte o bucat pentru fiecare
produs, firma avnd un stoc disponibil pe perioada analizat de 150 de uniti din aceste
componente. Tot pentru produsele A i C se utilizeaz un aliaj special: pentru o unitate din
produsul A se utilizeaz 2 kg de aliaj special, iar pentru o unitate din produsul C, 4 kg. Stocul
disponibil este de 200 kg din acest aliaj special.
Studiul de pia pentru produsul B arat c se pot vinde pe perioada analizat cel mult
50 de uniti din acest produs.
Beneficiul unitar al produselor A, B i C este respectiv: 8 um (uniti monetare), 5 um,
10 um.
Compania dorete s stabileasc planul de producie care maximizeaz beneficiul total
pe perioada analizat.
33
Programare liniar
2 x1 + 3 x 2 + x3 + x 4 = 400
x + x + x = 150
1 3 5
2
1 x + 4 x 3 + x6 = 200
x 2 + x7 = 50
xi 0 (i = 1,7)
f = min(8 x1 5 x 2 10 x3 )
Matricea coeficienilor tehnico - economici este:
2 3 1 1 0 0 0
1 0 1 0 1 0 0
A=
2 0 4 0 0 1 0
0 1 0 0 0 0 1
Se vor fabrica 100 uniti din produsul A, 50 uniti din produsul B, zero uniti din
produsul C.
Se va obine beneficiul maxim, egal cu 1050 uniti monetare.
Semnificaia variabilelor de compensare rezult din modul cum au fost introduse.
Verificnd restriciile iniiale ale problemei cu soluia optim x1 = 100, x2 = 50, x3 = 0 i
comparnd cu sistemul de restricii n care s-au introdus variabilele de compensare, rezult:
- orele de lucru pe main nu s-au folosit integral, rmnnd disponibile x4 = 50 ore;
- componentele nu s-au folosit integral, rmnnd x5 = 50 uniti.
- stocul de aliaj dup efectuarea prelucrrilor este nul x6 = 0
- este satisfcut condiia de vnzare pentru B, x7 = 0.
Tabelul 2.4
-8 -5 -10 0 0 0 0
C B
V.B. V.V.B xl x2 x3 x4 x5 x6 x7
0 x4 400 2 3 1 1 0 0 0
0 x5 150 1 0 1 0 1 0 0
0 x6 200 2 0 4 0 0 1 0
0 x7 50 0 1 0 0 0 0 1
0 8 5 10 0 0 0 0
-8 -5 -10 0 0 0 0
CB V.B. V.V.B xl x2 x3 x4 x5 x6 x7
C B
V.B. V.V.B xl x2 x3 x4 x5 x6 x7
0 x4 50 0 0 -3 1 0 -1 -3
0 x5 50 0 0 -1 0 1 -1/2 0
-8 x1 100 2 0 0 0
1 0 1/2
-5 x2 50 0 1 0 0 0 0 1
-1050 0 0 -6 0 0 -4 -5
34
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Algoritmul simplex necesit, pentru pornire, ca problema s fie dat n forma standard
i s aib o soluie admisibil de baz.
Prima dintre condiii se realizeaz folosind transformri utilizate n programarea
liniar.
Pentru cea de-a doua condiie alegerea la ntmplare a unei baze format din m vectori
ai matricei A, conduce la soluii de baz nerealizabile cu care algoritmul simplex nu poate
ncepe.
Gsirea unei baze pur i simplu prin ncercri repetate nu este indicat, aceast cutare
putnd dura foarte mult.
Rezolvarea problemei pleac de la observaia c singura baz pentru care calculul de
mai sus se poate face imediat este matricea unitate, caz n care soluia de baz
corespunztoare este chiar vectorul termenilor liberi.
Aceasta presupune ca problema s aib toi termenii liberi mai mari sau egali cu 0 i n
matricea A s existe toate coloanele matricei unitate.
n acest sens plecm de la observaia c existena unui vector din matricea unitate este
echivalent cu existena unei variabile care apare doar n ecuaia corespunztoare lui 1 din
acel vector, cu coeficientul 1. Acest lucru poate fi obinut n dou moduri:
1) Alegem o nou funcie obiectiv care s-i ating extremul printre soluiile
pozitive chiar pentru y = 0 i n momentul cnd am obinut soluia respectiv pornim cu
aceasta ca soluie iniial algoritmul simplex pentru fosta problem (Metoda celor dou
faze).
2) Adugm la vechea funcie obiectiv noi variabile y cu coeficieni alei astfel
nct aportul variabilelor la valoarea funciei s fie contrar scopului dorit (infinit pozitiv
ntr-o problem de minim i infinit negativ ntr-o problem de maxim) (Metoda
coeficienilor de penalizare)
Vom detalia n continuare cele dou metode:
max c T' x
A x = b (2.77)
x0
n care am aranjat deja ca toi termenii liberi s fie pozitivi .
Faza 1
Const n rezolvarea unei probleme de programare liniar auxiliar, asociat problemei
iniiale. Astfel construim problema:
f ( x a ) = min( x ma +1 + x ma + 2 + ... + x ma + n )
Ax + I m x a = b (2.78)
x ,xa 0
35
Programare liniar
1. minimul funciei f este strict pozitiv, aceasta fiind echivalent cu faptul c egalitatea Ax +
Imxa = b se poate obine doar pentru Imxa > 0 sau altfel spus Ax > b pentru orice x 0, deci
sistemul Ax = b nu are soluii admisibile i n concluzie problema iniial nu are soluie.
2. minimul funciei f este 0, n acest caz, soluia optim obinut verific Ax = b, fiind n
concluzie o soluie admisibil de baz a primei probleme.
Faza 2
ncepnd de la soluia gsit la Faza 1 se rezolv problema iniial cu algoritmul
simplex. Se ndeprteaz din tabelul simplex toate elementele corespunztoare variabilelor
artificiale (cu excepia celor care rmn n baz), introducnd coeficienii funciei obiectiv din
problema iniial.
Dezavantajul metodei const n faptul c tabelul simplex final de la faza 1 trebuie
modificat pentru a se obine tabelul simplex iniial de la faza 2, eliminndu-se coloanele
corespunztoare lui y i totodat nu vom avea n tabelele simplex ale problemei iniiale
inversa bazei (se gsea n dreptul coloanelor matricei unitate din prima faz) necesar n
anumite variante ale algoritmului simplex.
n care toi termenii liberi sunt pozitivi i matricea A nu conine nici un vector coloan unitar.
Construim problema:
f = max(c T x My)
A x + y = b (2.80)
x, y 0
n care M este o constant presupus foarte mare (mai mare dect orice constant care
ar putea apare n rezolvarea problemei).
Rezolvm problema cu algoritmul simplex pornind rezolvarea de la baza matrice
unitate, putnd ajunge la trei situaii:
1) problema are optim infinit, n acest caz, problema iniial are optim infinit ( nu
prezint interes din punct de vedere tehnico-economic).
2) problema are optim finit i n soluia de baz avem cel puin o variabil din
vectorul y. n acest caz problema iniial nu are soluii admisibile.
3) problema are optim finit i n soluia de baz nu avem nici o variabil din
vectorul y. n acest caz problema iniial are optim finit, soluia optim i maximul
funciei fiind aceleai cu cele ale problemei modificate.
Se remarc faptul c variabilele y nu au aceeai semnificaie economic ca celelalte
variabile, ele fiind introduse doar ca un artificiu de calcul pentru a putea porni algoritmul
simplex.
Observaii :
Dac matricea restriciilor conine vectori unitari, atunci numrul variabilelor
artificiale introduse este egal cu m, numrul vectorilor unitari, indiferent de tipul
funciei obiectiv.
36
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Exemplu 2.6
Un atelier de prelucrri mecanice fabric dou produse P1 i P2.
Din structura de dezagregarea produselor se deduce c pentru realizarea produsului P1
sunt necesare 3 componente de tip A i un component de tip B, iar pentru realizarea
produsului P2 sunt necesare 1 component de tip A i 4 componente de tip B.
Atelierul dispune n stoc de 10 componente de tip A. Contractele cu furnizorii
pentru componentele de tip B, arat c se poate realiza aprovizionarea cu acesta n cantitate de
cel puin dou componente B.
Beneficiul unitar pentru produsele P1 i P2 sunt de 2 um, respectiv de 3um.
Se dorete s se stabileasc planul de producie care s maximizeze beneficiul total.
f = max(2 x1 + 3 x 2 )
3 x1 + x 2 10
x1 + 4 x 2 2
x ,x 0
1 2
unde x1 , x 2 , reprezint numrul de produse de tip P1 respectiv P2.
Forma standard a problemei va fi:
(max ) f = 2 x1 + 3 x2
3 x1 + x 2 + x3 = 10
x1 + 4 x 2 x 4 = 2
x ,x ,x ,x 0
1 2 3 4
0 0 0 0 1
cB xB xB x1 x2 x3 x4 x5
0 x3 10 3 1 1 0 0
1 x5 2 1 4 0 -1 1
2 1 4 0 -1 0
0 0 0 0 1
cB xB xB x1 x2 x3 x4 x5
0 x3 19/2 11/4 0 1 1/4 -1/4
0 x2 1/2 1/4 1 0 -1/4 1/4
0 0 0 0 0 -1
37
Programare liniar
Am obinut optimul egal cu 0 n soluia de baz (x3,x2) care va fi soluia iniial pentru
algoritmul simplex aplicat problemei iniiale n a doua faz.
Eliminm din tabel coloana lui x5, nlocuim valorile coeficienilor funciei obiectiv i
deci i valoarea acesteia, valorile z Bj c j i rezolvm problema n continuare, plecnd de la
baza primal admisibil determinat, cu algoritmul simplex primal, obinnd tabelele de mai
jos:
2 3 0 0
cB xB xB x1 x2 x3 x4
0 x3 19/2 11/4 0 1 1/4
3 x2 1/2 1/4 1 0 -1/4
3/2 -5/4 0 0 -3/4
2 3 0 0
cB xB xB x1 x2 x3 x4
0 x3 4 0 -11 1 3
2 x1 2 1 4 0 -1
4 0 5 0 -2
2 3 0 0
cB xB xB x1 x2 x3 x4
0 x4 4/3 0 -11/3 1/3 1
2 x1 10/3 1 1/3 1/3 0
20/3 0 -7/3 2/3 0
2 3 0 0
cB xB xB x1 x2 x3 x4
0 x4 38 11 0 4 1
3 x2 10 3 1 1 0
30 7 0 3 0
2 3 0 0 -M
cB xB xB x1 x2 x3 X4 x5
0 x3 10 3 1 1 0 0
-M x5 2 1 4 0 -1 1
-2M -M -4M 0 M -M
-M-2 -4M-3 0 M 0
2 3 0 0 -M
cB xB xB x1 x2 x3 x4 x5
0 x3 19/2 11/4 0 1 -1/4
3 x2 1/2 1/4 1 0 -1/4 1/4
3/2 -5/4 0 0 -3/4 M+3/4
2 3 0 0 -M
cB xB xB x1 x2 x3 x4 x5
0 x3 4 0 -11 1 3 -3
2 x1 2 1 4 0 -1 1
4 0 5 0 -2 2+M
2 3 0 0 -M
cB xB xB x1 x2 x3 x4 x5
0 x4 4/3 0 -11/3 1/3 1 -1
2 x1 10/3 10/3 1 1/3 0 0
20/3 0 -7/3 2/3 0 M
2 3 0 0 -M
cB xB xB x1 x2 x3 x4 x5
0 x4 38 11 0 4 1 -1
3 x2 10 3 1 1 0 0
30 7 0 3 0 M
38
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
(max) z = c T x
Ax = b (2.81)
x0
yBj=B-1a(j) , j = 1, n (2.82)
deducem :
Relaia de mai sus are urmtoarea semnificaie din punct de vedere tehnico-economic,
fabricarea unei uniti de produs j este echivalent cu fabricarea cantitilor y1B, j , y 2Bj ,..., y mj
B
din produsele operaiilor de baz. Ca urmare, pentru fabricarea unei uniti din produsul j este
necesar a diminua producia operaiilor de baz cu cantitile y1Bj , y 2Bj ,..., y mj
B
.
39
Programare liniar
z Bj c j 0 , j = 1, n (2.86)
atunci programul de fabricaie curent este optim. Acesta este, criteriul de optimalitate al
algoritmului simplex.
Dac z Bj c j < 0 , atunci activitatea secundar j conduce la o majorare a profitului
realizabil prin programul curent, egal cu ( z Bj c j ) .
Dintre operaiile secundare j J rentabile n raport cu operaiile de baz se va alege
acea operaie k care asigur cea mai mare vitez de cretere a valorii curente a produciei (
interpretarea criteriului de intrare n baz).
O alt problem care se mai pune este stabilirea cantitii din produsul j care se poate
realiza n condiiile date.
Fabricarea unei cantiti din acest produs implic diminuarea produciei din
produsele operaiilor de baz astfel:
Evident, desfurarea unei activiti la un nivel negativ este lipsit de sens economic.
Astfel este necesar ca :
xiB
0 = min (2.89)
i yikB
y B >0
ik
xB
xl = xlB 0 ylkB = xlB l ylkB = 0 (2.90)
ylkB
40
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Problema dual
Dualitatea n programarea liniar ocup un rol important att din punct de vedere
teoretic ct i din punct de vedere practic. Pe teoremele de dualitatea se bazeaz muli
algoritmi de rezolvare a problemelor de programare liniar.
Fie problema de programare liniara dat sub forma general numit problema
primal :
(
max b u + b u + b u
1 1 2 2 3 3
)
a11 u1 + a 21 u 2 + a31 u 3 c1
a12 u1 + a 22u 2 + a32u 3 = c2 problema dual (2.92)
a13 u1 + a 23 u 2 + a33 u 3 c3
u1 0 ; u 2 arbitrar ; u 3 0
Observm c duala problemei dualei este chiar problema primal. Datorit legturii
strnse ce se stabilete ntre aceste probleme care sunt duale una celeilalte, vom spune ca
problema (2.91) i problema (2.92) formeaz un cuplu de probleme duale.
Problema dual se obine din problema primal folosind urmtoarele transformri :
- Termenii liberi din problema primal devin coeficieni ai funciei obiectiv din
problema dual.
- Coeficienii funciei obiectiv din problema primal devin termeni liberi n
problema dual.
- O problem de maximizare primal devine problem de minimizare dual.
- Matricea coeficienilor din problema dual este transpusa matricei coeficienilor
din problema primal
- Variabilele duale corespunztoare unor restricii concordante din problema primal
sunt nenegative, iar cele corespunztoare unor restricii primale neconcordante
sunt nepozitive.
- Variabilele primale negative le corespund n problema dual restricii concordante,
iar variabilelor primale pozitive le corespund n problema dual restricii
neconcordante.
41
Programare liniar
42
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Exemplul 2.8
2 x1 x3 x 4 5
x + 2 x x 10
2 3 4
x1 ,..., x 4 0
u1 1 -1 3 1 15
u2 2 0 -1 -1 5
u3 0 1 2 -1 10
x1 x2 x3 x4
Fundamente teoretice
Fr a restrnge din generalitate ne vom ocupa n continuare de cuplul de probleme
duale (2.91) - (2.92), prima fiind considerat problema primal, iar cea de-a doua, problema
dual.
Se noteaz
{
P = x R n Ax = b, x 0 } (2.93)
{ m T
D = u R A u c, u 0 } 2.94)
Mulimile soluiilor admisibile (sau programelor) ale problemei primale (2.91),
respectiv, duale (2.92).
Teorema 2.8. Dac x P i u D , atunci c T x b T u .
Propoziia 2.1. Dac L este o matrice antisimetric (LT = -L), atunci sistemul de inegaliti
liniare
43
Programare liniar
l t 0
(2.95)
t 0
L t > 0 (2.96)
Teorema 2.10. (Teorema fundamental a dualitii) Fie cuplul de probleme duale (2.91) -
(2.92). Atunci una i numai una din urmtoarele situaii este posibil :
a) Ambele probleme au soluii admisibile. n acest caz, ambele probleme au soluii
optime i valori optime ale funciilor obiectiv sunt egale.
b) Una din probleme are soluii admisibile, iar cealalt nu are (este incompatibil). n
acest caz, problema compatibil are optim infinit.
c) Nici una dintre probleme nu are soluii admisibile.
Teorema 2.11. (Teorema ecarturilor complementare). Fie cuplul de probleme duale canonice
(2.91) - (2.92). Atunci x P i u D sunt soluii optime pentru cele dou probleme dac i
numai dac:
( )
u T A x b = 0
(2.97)
T
(
u c AT u = 0 )
Exemplul 2.9
ntr-un atelier mecanic se produc dou de tipuri de piese P1, P2.
Timpii unitari de prelucrarea celor dou piese pe cele dou maini unelte M1, M2,
profitul unitar i disponibilul de timp al mainilor unelte sunt date n tabelul de mai jos:
P1 P2 Disponibil
resurse
M1 4 3 16sp
M2 1 2 6sp
Profit 3um 7um
unitar
f = max(3 x1 + 7 x 2 )
4 x + 3 x 16
1 2
x1 + 2 x 2 6
x1 , x 2 0
Mulimea soluiilor admisibile ale problemei (primale) este reprezentat n fig. 2.6.
* *
Problema admite soluia optim x1 = 0 , x 2 = 3 , pentru fiecare funcia obiectiv are
valoarea f max = 21 .
44
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
x2
d1
C(0,3)
B(14/5,8/5)
d2
0 A(4,0) x1
Fig.2.6
Problema dual este:
g = min(16 u 1 + 6 u 2 )
4u + u 3
1 2
3u 1 + 2u 2 7
u 1 , u 2 0
u2
d2
d1
0 A(0,3/4) B(0,7/2) u1
Fig.2.7
* *
Problema admite soluia optim u 1 = 0 , u 2 = 7 / 2 .Valoarea funciei obiectiv este
g min = 21 , evident aceeai ca i n cazul problemei primale.
Din cele artate se constat c prin rezolvarea uneia dintre cele dou probleme duale
se poate determina i soluia celeilalte. Tabelul simplex final corespunztor uneia dintre
probleme conine componentele soluiilor optime ale ambelor probleme.
Aceste rezultate teoretice se utilizeaz n practica industrial n cazul cnd planul de
producie conine o varietate mare de produse ce se fabric n aceleai condiii tehnico
economice.
min c T x
Ax = b (2.98)
x 0
unde x, c R , b R m , A M mn , cu rang A = m < n.
n
45
Programare liniar
max b T u
'
A u c (2.99)
u arbitrar
Definiia 2.9 O baz B format cu m coloane liniar independente a lui A se numete dual
admisibil dac sunt satisfcute condiiile
z Bj c j 0, j = 1, n (2.100)
u BT = c TB B 1 (2.101)
Teorema 2.12. (Teorema de optimalitate). Fie B o baz dual admisibil pentru problema
{ B
}
primal (2.98). Fie mulimea I _ = i I x i < 0 I_=, atunci soluia de baz asociat bazei
B
B, x = B 1b , este o soluie optim a problemei (2.98).
Teorema 2.14. (Teorema de mbuntire a soluiei) Fie B o baz dual admisibil pentru
problema primal (4.29), iar I_. Dac pentru orice i I _ exist j J astfel nct
y ijB < 0 , i dac se alege l I _ arbitrar, iar k J astfel nct s fie satisfcut condiia :
z Bj c j z kB c k
min B = (2.102)
j
ylj <0
B y lj y lkB
atunci matricea B obinut din B prin nlocuirea coloanei A(l) cu coloana A(k) este o baz
dual admisibil, iar programul dual asociat uB este cel puin la fel de bun ca programul uB
B B
Pasul 2. Se calculeaz x , z , y Bj , z Bj , c j , j = 1, n .
46
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
{}
min x i = x l
iI _
B B
Dac y ijB 0, j = 1, n , atunci STOP : problema nu are soluii; astfel se determin indicele
k J cu criteriul de intrare n baz:
z Bj c j z B c
=
k k
min B B
j
yljB <0
y lj y lk
Pasul 5. Fie baza B obinut din B prin nlocuirea coloanei A(l) cu coloana A(k).
Se trece la Pasul 2, nlocuind peste tot baza B cu baza B.
Algoritmul simplex dual poate fi exprimat sintetic sub forma schemei logice din
fig.2.8
START
Construieste
tabel simplex
initial
Exista Nu
variabile de baza cu valori Indica STOP
negative ? solutia optima
Da
Determina
linia pivotului
Exista Nu
valori negative in linia Nu exista STOP
pivotului? solutii
Da
Determina
coloana pivotului
Calculeaza un nou
tabel simplex
Fig.2.8
47
Programare liniar
Exemplul 2.10
max( 3 x1 2 x 2 )
x 2 x + 3x 4
1 2 3
2
1 x + x 2 x 3 2
x1 , x 2 , x3 0
max( 3x1 2 x 2 )
x + 2 x 3 x + x = 4
1 2 3 4
2 x1 x 2 + x3 + x5 = 2
x1 ,..., x5 0
Baza iniial B este matricea unitate format cu coloanele A(4), A(5) . Tabelul simplex asociat
are ca variabile de baz pe x4 i x5:
-3 -2 0 0 0
cB V.B. V.V.B. x1 x2 x3 x4 x5
0 x4 -4 -1 2 -1 1 0
0 x5 -2 -2 -1 1 0 1
0 3 2 0 0 0
z Bj c j 3 0 zB c
min = min , =0= 3 B 3 ;
y4B jj<0 1 1
B
j
y4B j < 0
y4 j y43
48
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
-3 -2 0 0 0
cB V.B. V.V.B. x1 x2 x3 x4 x5
0 x4 2 0 -5/3 1 -2/3 1/3
-3 x 5 2 1 -1/3 0 -1/3 -1/3
0 0 3 0 1 1
Teoretic. Una din problemele centrale ale programrii matematice este caracterizarea
situaiilor n care exist optimul unei probleme i gsirea unor metode prin care s
recunoatem optimalitatea unei soluii.
Teorema fundamental a dualitii i teorema ecarturilor complementare reprezint
rezultate chiar n acest sens, n care se folosete dualitatea.
Practic. Putem rezolva o problem rezolvnd problema dual a acesteia sau cunoscnd soluia
dualei.
n unele cazuri, rezolvarea dualei este mult mai uoar dect rezolvarea primalei, de
exemplu cnd numrul de restricii al primalei este mai mare dect numrul de variabile al
acesteia sau cnd primala necesit mai multe variabile suplimentare dect duala.
Economic. n cele mai multe probleme economice, a cror rezolvare se face printr-un model
de programare liniar, soluia dualei aduce o serie de informaii suplimentare despre problema
studiat.
Semnificaia economic a soluiei dualei depinde de specificul problemei i trebuie gsit de
la caz la caz.
Avnd n vedere c max[f(x)] = min [g(u)], rezult c, dac, cantitatea disponibil din
resursa Ri crete cu o unitate, atunci valoarea funciei obiectiv crete cu ui, deci ui msoar
creterea valorii funciei obiectiv determinat de creterea cu o unitate a cantitii disponibile
bi.
Aceste evaluri obinute dintr-un program optim au fost denumite n literatura de
specialitate "preuri umbr"(shadow price).
Preul umbr ui arat cu ct se modific funcia obiectiv a problemei duale, atunci cnd
termenul liber al restriciei Ri se "relaxeaz" cu o unitate. A "relaxa" are semnificaia de a
spori cantitatea disponibil bi a unei resurse deficitare sau, pentru restriciile de tip calitativ cu
n
limit inferioar impus ( a ij x j bi), de a reduce nivelul termenului liber bi.
j=1
Este evident c, dac o resurs nu este utilizat n ntregime pentru satisfacerea
n
programului optimal xB ( a ij x j < bi), atunci ui = 0 iar funcia obiectiv nu este afectat de
j=1
sporire a cantitii disponibile bi.
Preurile umbr (preuri duale) aduc informaii suplimentare pentru analiza eficienei
economice a resurselor i a diferiilor indicatori economici sau tehnici care apar n restriciile
unei probleme de programare liniar.
Pe baza lor se pot fundamenta deciziile privind alocarea judicioas a resurselor, se pot
stabili msuri de stimulare a consumului raional al resurselor, se determin ct mai corect
nivelul minim i maxim al diferiilor indicatori tehnici i economici de care depinde structura
planului optim.
49
Programare liniar
Soluia optim obinut prin utilizarea datelor iniiale poate constitui un punct de
plecare pentru analiza economic privind alocarea eficient a resurselor.
Pentru problemele n care se cere maximizarea funciei f(x), indicatorii zj reprezint
costul unitar de fabricaie al produsului j, rezultat din evaluarea coeficienilor aij prin preurile
umbr ataate restricii1or.
Rezult c, prin calcularea diferenei zj-cj, se compar acest cost unitar cu coeficientul
cj (pre unitar, beneficiu unitar etc.) din funcia obiectiv.
Dac exist diferene negative (zj-cj < 0) nseamn c, la activitile respective, preul
umbr al produsului j (costul unitar de fabricaie exprimat n indicatori ui) este mai mic dect
venitul realizat i de aceea activitatea aj este eficient.
Aa se explic faptul c va intra n baz vectorul a(k) ce corespunde diferenei (zj-cj)
minime.
n momentul n care toate diferenele sunt pozitive (zj-cj 0) rezult c nu mai exist
activiti eficiente i prin urmare soluia de baz analizat este optim.
n cazul problemelor de minim, indicatorii zj se pot interpreta ca venituri, exprimate n
preurile umbr ale restriciilor, ce se obin prin realizarea unei uniti din produsul j.
Prin urmare, dac exist diferene pozitive (zj-cj > 0), activitile aj corespunztoare
sunt eficiente, deoarece se realizeaz un venit unitar mai mare dect costul unitar de fabricaie
(zj > cj).
De aceea, va intra n baz activitatea ak, corespunztoare diferenei maxime, iar soluia
de baz se consider optim atunci cnd toate diferenele (zj-cj) sunt nepozitive .
Exemplul 2.11
O firm fabric trei tipuri de produse P1, P2, P3, utiliznd patru tipuri de resurse R1, R2,
R3, R4.
Procesul tehnologic de realizare a celor trei produse, timpul disponibil al fiecrei
resurse, cererea minim i maxim din fiecare produs conform studiului de marketing, precum
i profitul unitar sunt date n tabelul 2.5.
Tabelul 2.5
Produs Cerere Timp de prelucrare pe unitatea de Profitul
produs unitar
min max R1 R2 R3 R4 um/buc
SN 400 FU32 RU320 Banc de
control
P1 20 200 0.10 0.06 0.18 0.13 10
P2 0 100 0.12 0.05 0 0.10 12
P3 70 180 0.15 0.09 0.07 0.08 15
Timp disponibil pe resurs 36 30 37 38 -
50
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
f = max(10 x1 + 12 x 2 + 15 x3 )
0.1x + 0.12 x + 0.15 x 36
1 2 3
0.06 x1 + 0.05 x 2 + 0.09 x3 30
0.18 x1 + 0.07 x 2 37
0.13 x1 + 0.1x 2 + 0.08 x3 38
20 x1 200
0 x 2 100
70 x3 180
x1 , x 2 , x 3 0
x1 = 135
x 2 = 100
x3 = 70
F .O. = 3.600u.m
Din produsul P1 se produc 135 uniti, din produsul P2 se produc 100 uniti, din
produsul P3 se produc 70 uniti. n aceste condiii valoarea funciei obiectiv este de 3.600
uniti monetare.
Variabilele de compensare (ecart) arat utilizarea resurselor astfel:
x4 = 0, Y1 = 100 - pre umbr
0.1 135 + 0.12 100 + 0.15 70 = 36 = 36
Prima restricie este satisfcut cu semnul = ceea ce nseamn c resursa R1 este
utilizat n totalitate, deci R2 este o resurs rar resurs a crei lips / indisponibil ar limita
sau modifica.
n acelai timp dac n prima restricie mrim timpul disponibil cu o unitate (din 36u.t.
la 37u.t.), valoarea F.O. se modific n sens pozitiv tocmai cu valoarea preului umbr, deci
profitul va fi de 3.700 u.m.
x5 = 10.6 Y2 = 0 - pre umbr
0.06 135 + 0.05 100 + 0.09 70 = 19.4 < 30 cu 10.6 u.t.
A doua restricie este satisfcut cu semnul <, deci din resursa R2 rmne un timp
disponibil de 10.6 u.t. care nu este utilizat n procesul de producie, astfel resursa R2 nu este o
resurs rar ns lipsa ei poate limita producia, preul ei umbr fiind nul.
x6 = 5.7 Y3 = 0 - pre umbr
0.18 135 + 0.07 100 = 31.3 < 37 cu 5.7 u.t.
A treia restricie este satisfcut cu semnul <, deci din resursa R3 rmne un timp
disponibil de 5.7 u.t. care nu este utilizat n procesul de producie, astfel resursa R3 nu este o
resurs rar ns lipsa ei poate limita producia, preul ei umbr fiind nul.
x7 = 4.85 Y4 = 0 - pre umbr
0.13 135 + 0.1 100 + 0.08 70 = 33.15 < 38 cu 4.85 u.t.
A patra restricie este satisfcut cu semnul <, deci din resursa R4 rmne un timp
disponibil de 4.85 u.t. care nu este utilizat n procesul de producie, astfel resursa R4 nu este o
resurs rar ns lipsa ei poate limita producia, preul ei umbr fiind nul.
x8 = 65 Y5 = 0 - pre umbr
1 135 = 135 < 200 cu 65 uniti de produs P1.
51
Programare liniar
Restricia cinci este satisfcut cu semnul <, deci din produsul P1 rmn nevndute o
cantitate de 65 uniti de produs (u.p), astfel P1 nu este o resurs rar deci are preul umbr
nul.
x9 = 115 Y6 = 0 - pre umbr
1 135 = 135 > 20 cu 115 uniti de produs P1.
Restricia ase este satisfcut cu semnul >, deci produsul P1 are o cerere maxim de
115 u.p., astfel P1 nu este o resurs rar deci are preul umbr nul.
x10 = 0 Y7 = 0 - pre umbr
1 100 = 100 = 100
Restricia apte este satisfcut cu semnul = ceea ce arat c produsul P2 este vndut
n totalitate deci este o resursa rar, deci preul umbr ar trebui s fie nenul. El totui este
nul, lucru uor de explicat din teorema ecarturilor complementare: condiia necesar i
suficient ca dou soluii admisibile X,Y s fie soluii optime respectiv la problema primal i
dual este s fie simultan satisfcute relaiile:
Y T ( P0 AX ) = 0
T
(Y A C ) X = 0
Pentru ca un produs s fie zero este necesar ca un termen sa fie zero sau ambii egali cu
zero. Prin creterea cu o unitate a restriciei n loc de 100 s avem 101 valoarea funciei
obiectiv rmne aceeai F.O.=3.600u.m.
x11 = 110 Y8 = 0 - pre umbr
1 70 = 70 < 180 cu 110 uniti de produs P3
Restricia opt este satisfcut cu semnul <, deci din produsul P3 rmn nevndute o
cantitate de 110 uniti de produs (u.p), astfel P3 nu este o resurs rar deci are preul umbr
nul.
x12 = 0 Y9 = 0 - pre umbr
1 70 = 70 = 70
Restricia apte este satisfcut cu semnul = ceea ce arat c produsul P3 este vndut
n totalitate i cererea maxim este corect deci este o resursa rar, deci preul umbr ar
trebui s fie nenul.
El totui este nul, lucru uor de explicat din teorema ecarturilor complementare. Prin
creterea cu o unitate a restriciei n loc de 70 s avem 71 valoarea funciei obiectiv rmne
aceeai F.O.=3.600u.m.
n concluzie acelai plan de producie se putea face, cu acelai profit i dac restriciile
problemei erau urmtoarele:
f = max(10 x1 + 12 x 2 + 15 x3 )
0.1x + 0.12 x + 0.15 x 36
1 2 3
0.06 x1 + 0.05 x 2 + 0.09 x3 19.4
0.18 x1 + 0.07 x 2 31.3
0.13 x1 + 0.1x 2 + 0.08 x3 33.15
115 x1 135
0 x 2 100
65 x3 70
x1 , x 2 , x 3 0
52
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
CAPITOLUL 3
PROGRAMAREA LINIAR DE TIP TRANSPORT
3.1. Formularea unei probleme de transport
Tabelul 3.1
Pi
C1 C2 Cj Cn ai
Cj
P1 c11 c12 c1 j c1n a1
P2 c21 c22 c2 j c2 n a2
Pi ci1 ci 2 cij cin ai
Pm cm1 cm 2 cmj cmn am
bj b1 b2 b j bn
- fiecare centru productor aprovizioneaz cel puin un centru consumator i fiecare centru
consumator este aprovizionat de la cel puin un centru productor;
- pot exista perechi productor - consumator ntre care nu se poate face transfer;
- nu exist limitri n ceea ce privete cantitatea transportat pe fiecare rut;
- fiecrei rute i s-a asociat un cost care nu depinde de sensul de parcurgere.
Obiectivul problemei de transport este gsirea cantitilor care trebuie transportate pe
fiecare rut astfel nct s se asigure necesarul fiecrui centru consumator, n limitele
cantitilor aflate n centru productor, i aceasta cu costuri minime.
53
Programare liniar de tip transport
m n 1
min ci j xi j
i =1 j =1
n 1 _____
xi j a i , i 1, m
m j =1 (3.1)
_______
i =1 xi j b j , j 1, n 1
m, n 1
a i > b j , a i 0 , b j 0
i =1 j =1
Astfel n urma acestor transformri se va obine urmtorul model matematic echilibrat (3.2):
m n 1
min ci j xi j
i =1 j =1
n 1 _____
xi j = a i , i 1, m
j =1 (3.2)
m _______
xi j = b j , j 1, n 1
i =1
xi j 0
Orice problem poate fi transformat ntr-o problem de tipul (3.2). Acest caz este
foarte rar n practic, ns el este cel mai simplu din punct de vedere matematic i astfel va fi
ales pentru formalizarea problemei.
O astfel de problem se numete problem de transport echilibrat.
In practic pot exista urmtoarele cazuri:
m n
- Dac ai < b j , se poate aduga un depozit fictiv Pm+1 care are un disponibil
i =1 j =1
ai b j
xi j = n
(3.3)
a
i =1
i
Aplicarea algoritmului simplex este dificil n acest caz datorit numrului foarte mare
de necunoscute i a determinrii soluie admisibile de baz.
ntr-o problem de transport nu poate aprea dect varianta de optim finit, existnd
ntotdeauna soluii admisibile, iar minimul nu este posibil, innd cont c avem de
minimizat o funcie liniar cu toi coeficienii pozitivi pe o mulime de soluii cu toate
componentele pozitive.
54
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
m n
min( cij xij )
i =1 j =1
n x = a , i = 1, m
j ij i
=1 (3.4)
m
xij = b j , j = 1, n
i =1
0 xij ij , i = 1, m, j = 1, n
m n
ai = b j
i =1 j =1
ij ai , i = 1, m (3.5)
j =1
n
ij b j , j = 1, n
j =1
Tabelul 3.2
Pi / Cj Cl ... Cj ... Cn ai
55
Programare liniar de tip transport
m p
' '
p n
'' ''
min( c ik x ik + c kj x kj )
i =1 k =1 k =1 j =1
p
k xik' = ai , i = 1, m
=1
m
x ' = , k = 1, p
ik k
i =1 (3.6)
n ''
x kj = k , k = 1, p
j =1
n ''
k x kj = b j , j = 1, n
=1
xik' , x kj'' 0, i = 1, m, k = 1, p, j = 1, n
unde:
xik' - reprezint cantitatea ce urmeaz a fi transportat de la centrul productor i la centrul
intermediar k ;
cik' - costul unitar de transport dintre centrele i i k ;
x kj'' - cantitatea ce urmeaz a fi transportat de la centrul k la centrul consumator j ;
c kj'' - costul unitar de transport dintre centrele k i j.
Condiia necesar i suficient de existen a soluiilor pentru problema (3.6) este:
m p n
a =
i =1
i
k =1
k = bj
j =1
(3.7)
Avnd n vedere faptul c fiecare intermediar este att centru destinaie ct i centru
surs, se pot considera urmtoarele dou probleme de transport:
m p
' '
min(i cik xik )
=1 k =1
p
x ' = a , i = 1, m
ik i
k =1 (3.8)
m '
xik = k , k = 1, p
i =1
xik' 0, i = 1, m, k = 1, p
56
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
i
p n
'' ''
min( c kj x kj )
k =1 j =1
n x '' = , k = 1, p
j kj k
=1 (3.9)
p ''
x kj = b j , j = 1, n
k =1
x kj'' 0, k = 1, p, j = 1, n
( ) ( )
' ''
Se poate arta c x ik i x kj reprezint o soluie optim a problemei de transport cu
centre intermediare (3.6) dac i numai dac x ik ( ) este o soluie optim a problemei de
'
( )''
transport (3.8), iar x kj este o soluie a problemei de transport (3.9).
n consecin, rezolvarea problemei (3.6) este echivalent cu rezolvarea celor dou
probleme (3.8) i (3.9).
Probleme de repartiie
m n
min( cij xij )
i =1 j =1
n x a , i = 1, m
j ij i
=1 (3.10)
m
rij xij = b j , j = 1, n
i =1
xij 0, i = 1, m, j = 1, n
Soluia admisibile de baza iniiale, care are cel mult (m+n-1) componente nenule, este
o soluie nedegenerat. Dac numrul soluiilor este mai mic dect (m+n-1) soluia este
degenerat.
Aceast metod se mai numete Metoda diagonalei principale sau Metoda lui
Dantzing.
Metod nu ine cont de costurile de transport cij i numai de cantitile disponibile n
centrele productoare i cererea centrelor consumatoare.
57
Programare liniar de tip transport
Etapele metodei:
Se alege x11 = min (a1b1 ) ( (1,1) fiind colul stnga sus NV). Sunt posibile urmtoarele
cazuri:
1) min(a1 , b1 ) = a1 x11 = a1 , iar x1 j = 0, j = 1, n . Necesarul centrului C1 devine b1 a1 .
2) min(a1 , b1 ) = b1 x11 = b1 , iar xi1 = 0, i = 1, m . Disponibilul centrului P1 devine a1 b1 .
3) a1 = b1 x11 = a1 = b1 , iar x1 j = 0, j = 1, n i xi1 = 0, i = 1, m .
Se elimin de sus n jos sau de la stnga la dreapta prima linie respectiv prima coloan din
tabel. Urmtoarele componente strict pozitive ale soluiei de baz iniiale se determin n mod
analog, considernd colul NV rmas dup eliminarea anterioar.
Exemplul 3.1 :
Pentru problema de transport ale crei date sunt centralizate n tabelul 3.3 s se
determine soluia de baz iniial utiliznd metoda lui Dantzing.
Tabelul 3.3
Q1 Q2 Q3 Q4
P1 7 8 5 3 11
P2 2 4 5 9 11
P3 6 3 1 2 8
5 9 9 7 30
5 6 0 0 0 5 6 0 0 0
0 x 22 x 23 x 24 11 0 3 x 23 x 24 8
0 x 32 x33 x 34 8 0 0 x33 x34 8
0 3 9 7 0 0 9 7
58
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
5 6 0 0 0 5 6 0 0 0
0 3 8 0 0 0 3 8 0 0
0 0 x33 x34 8 0 0 1 7 0
0 0 1 7 0 0 0 0
tabelul 3.8 tabelul 3.9
( )
Se alege clk = min cij . Se determin x lk = min(al , bk ) Sunt posibile urmtoarele cazuri:
1) min(al , bk ) = al x lk = al , iar xlj = 0, j = 1, n . Necesarul centrului Cj devine bk al .
2) min(al , bk ) = bk x lk = bk , iar xik = 0, i = 1, m . Disponibilul centrului Pi devine al bk .
3) al = bk x lk = al = bk , iar xlj = 0, j = 1, n i xik = 0, i = 1, m .
Se elimin de sus n jos sau de la stnga la dreapta linia respectiv coloan din tabel.
Se determin n mod analog, considernd variabila de cost minim din subtabelul rmas dup
eliminarea anterioar.
Dac sunt mai multe costuri minime egale, atunci se ia n considerare mai nti variabile care
ia valoare maxim.
Generaliti
Rezolvarea problemei de transport prin metoda simplex este, n general, puin
eficient. Cteva dintre motive sunt urmtoarele:
- numrul mare de variabile, egal cu m, n
- absena unei baze iniiale. Varianta de rezolvare prin considerarea unor variabile
auxiliare pentru fiecare linie i coloan i aplicarea metodei celor dou faze este
laborioas;
- apariia frecvent a cazurilor de degenerare datorit numrului mare de elemente
ale matricei coeficienilor A egale cu 0 i 1 .
Metoda potenialelor reprezint o metod special de testare i mbuntire a soluiei unei
probleme de transport.
59
Programare liniar de tip transport
m n
max ai u i + b j v j
i =1 j =1
u i + v j cij , i = 1, m, j = 1, n (3.11)
ui arbitrar , i = 1, m
v j arbitrar , j = 1, n
(cij u i v j ) x ij = 0, i = 1, m, j = 1, n ) (3.12)
Pentru ca relaia de mai sus s fie satisfcut este suficient ca (u i , v j ) s fie soluii ale
sistemului
n care s-a notat mulimea de indici J = {(i, j ) xij este variabila de baz }.
Propoziia 3.1 Sistemul de ecuaii are o infinitate de soluii. Dac (ui0 , v 0j ) este o soluie
particular i k o constant oarecare, atunci orice soluie a sistemului este de forma:
u i = ui0 + k , i = 1, m
0 (3.14)
v j = v j k , j = 1, n
Pentru rezolvarea sistemului se poate fixa arbitrar una dintre necunoscute, fr a
influena optimalitatea soluie problemei de transport; de obicei se alege ui = 0 .
Observaie. Rezolvarea sistemului se poate efectua direct pe tabelul de rezolvare al
problemei. Valorile variabilelor ui i v j se nscriu la marginile tabelului ; din acest motiv ele
se mai numesc i valori marginale .
Algoritmul metodei potenialelor
60
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
Pasul 5. Se calculeaz criteriul de ieire din baz = x st = min{x ij (i, j ) este csu de rang
par n ciclu }i se determin variabila x st va iei din baz.
Observaii :
1) Soluia iniial de baz obinut la pasul 1 al algoritmului depinde de metoda folosit
pentru determinarea ei. Aceasta nu influeneaz, soluia optim a problemei, ci
eventual numrul de iteraii pentru obinerea soluiei optime.
3) Tabelele ce se vor construi la aplicarea algoritmului vor fi formate din csue (i, j) ce
pot avea una din configuraiile
cij
cij ij
+(-) xij xij=0
Prima indic o csu corespunztoare unei valori de baz ( xij > 0 ), iar cea de-a doua
o csu corespunztoare unei valori nebazice ( xij = 0 ) , pentru care se calculeaz valoarea
ij .
Simbolurile + sau apar dac csua face parte din ciclul construit la pasul 4 al
algoritmului. Simbolul + indic o csu de rang impar , iar simbolul indic o csu de rang
par.
Exemplul 3.2
Fie date trei fabrici productoare (P1, P2, P3) ale aceluiai produs, care trebuie s
aprovizioneze cu acest produs patru consumatori (C1, C2, C3, C4). n tabelul 3.10 sunt date
cantitile disponibile n centrele productoare (ai), cantitile necesare n centrele
consumatoare (bj) i costurile pe unitatea de transport.
S se determine planul optim de transport n condiiile costurilor minime.
61
Programare liniar de tip transport
Tabelul 3.10
Pi / Cj C1 C2 C3 C4 ai
P1 8 7 3 6 19
P2 4 6 7 3 20
P3 3 4 2 5 16
bj 15 12 14 14 55
3 4
Problema de transport este echilibrat deoarece ai = b j = 55 , iar pentru
i =1 j =1
rezolvarea ei se va aplica metoda potenialelor si pentru determinarea soluiei de baz se va
aplica metoda costului minim din tabel.
Iteraia 1.
Pasul 1. Prin metoda costului minimal se determin soluia de baz iniial iar calculele sunt
prezentate n tabelul 3.11:
Tabelul 3.11
7 12 0 0 19 12
6 0 0 14 20 6 0
2 0 14 0 16 2 0
15 12 14 14
13 0 0
7
0
62
Cercetri Operaionale- Fundamentarea deciziilor n managementul sistemelor de producie
{ }
Pasul 4. Se calculeaz lk = max ij / ()(i, j ) J = 13 = 4 variabila x13 va intra n baz
Se construiete ciclul : (1,3), (1,1), (3,1), (3,3), (1,3) care este indicat n tabelul 3.13.
Pasul 5. Se determin
{ }
= x st = min xij / (i, j )este casuta de ordin par = min{7,14} = x11 = 7 variabila x11 va
iei din baz.
Pasul 6. Se modific valorile csuelor din ciclul de mai sus:
x13 = 0 + 7 = 7, x11 = 7 7 = 0, x 31 = 2 + 7 = 9, x 33 = 14 7 = 7 .
Noua soluie de baz admisibil este nscris in tabelul 3.14
Tabelul 3.14
v1=4 v2=7 v3=3 v4=3
u1=0 8 -4 7 3 6 -3
7 12 7 0
u2=0 4 6 1 7 -4 3
6 0 0 14
u3=-1 3 4 2 2 5 -3
9 0 7 0
Iteraia 3 .
Rezultatele sunt consemnate n tabelul 3.15, deoarece ij < 0, (i, j ) J rezult c
soluia este optim .
Tabelul 3.15
v1=6 v2=7 v3=3 v4=5
u1=0 8 -2 7 3 6 -1
0 5 14 0
u2=-2 4 6 -1 7 -6 3
6 0 0 14
u3=-3 3 4 2 -2 5 -3
9 7 0 0
63
Elemente de teoria grafurilor
CAPITOLUL 4
ELEMENTE DE TEORIA GRAFURILOR
4.1. Fundamente n teoria grafurilor
Prin definiie un graf este o pereche (X, U ) unde mulimea X este numit mulimea
nodurilor (sau vrfurilor) iar mulimea U este mulimea muchiilor.
Notaii utilizate :
64