Documente Academic
Documente Profesional
Documente Cultură
B
arb
acioru Iuliana Carmen
CURSUL 12
Cursul 12
Cuprins
2 Programare liniar
a
2.1 Modelul matematic al unei
probleme de programare liniar
a . . . . . . . . . . . . .
2.2 Forme de prezentare a modelului matematic . . . . . .
2.3 Clasicarea solutiilor unei probleme de
programare liniar
a. Propriet
ati . . . . . . . . . . . . .
2.4 Metode pentru obtinerea unui program de baz
a si a
ortonormate . . . . . . . . . . . . . . . . . . . . . . . .
2.5 Algoritmul simplex . . . . . . . . . . . . . . . . . . . .
2.6 Metode pentru obtinerea unui program de baz
a initial
2.7 Dualitatea n programarea liniar
a. . . . . . . . . . . .
2.8 Algoritmul simplex dual . . . . . . . . . . . . . . . . .
2.9 Algoritmul simplex revizuit . . . . . . . . . . . . . . .
2.10 Modele liniare de tip transport . . . . . . . . . . . . .
2.10.1 Probleme standard de transport . . . . . . . .
2.10.2 Generaliz
ari ale problemei transporturilor . . .
2.10.3 Probleme de transport cu capacit
ati limitate .
2.10.4 Probleme de transport cu centre intermediare .
Index
5
. . . . . . .
. . . . . . .
6
6
. . .
unei
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
baze
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. 6
. 6
. 6
. 6
. 6
. 6
. 6
. 6
. 6
. 7
. 15
17
Cursul 12
Cursul 12
Capitolul 2
Programare liniar
a
2.1
2.2
2.3
Clasicarea solu
tiilor unei probleme de
programare liniar
a. Propriet
a
ti
2.4
Metode pentru ob
tinerea unui program de baz
a
2.5
Algoritmul simplex
2.6
Metode pentru ob
tinerea unui program de baz
a
ini
tial
2.7
2.8
2.9
2.10
2.10.1
2.10.2
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
2.10.3
j2N
i2M
i2M j2N
xij = ai ; i 2 M
(10.15)
xij = bj ; j 2 N
(10.16)
xij
ij ;
i 2 M; j 2 N
(10.17)
a sunt satisf
acute conditiile:
Problema (10.14)-(10.17) admite solutii dac
X
X
ai 0; bj 0; ij 0;
ai =
bj
(10.18)
X
i2M
ij
bj ; j 2 N
(10.19)
ij
ai ; i 2 M
(10.20)
i2M
i2M
j2N
restrictiile, deci:
xpq = min fap ; bq ;
pq g
Dac
a pq < ap si pq < bq , variabila xpq nu este considerat
a variabil
a de
baz
a.
Dac
a pq = ap < bq sau
a de baz
a. De
pq = bq < ap , xpq este variabil
asemenea xpq apartine bazei dac
a min fap ; bq ; pq g este ap sau bq .
7
Cursul 12
Vectorul x determinat prin acest algoritm nu constituie totdeauna o solutie.
Se poate ntmpla ca unele diponibilit
ati s
a nu e complet epuizate si unele cereri
s
a nu e integral satisf
acute din cauza conditiilor xij
ij .
Dac
a sunt satisf
acute conditiile (10.18)-(10.20), problema admite solutii.
O solutie realizabil
a de baz
a se poate determina prin modicarea vectorului
x .
Pentru expunerea modului n care trebuie modicat x , s
a admitem c
a n
depozitul k a r
amas neexpediat
a o cantitate de marf
a K si c
aP
n punctele
P de
consum h si l mai sunt necesare cantit
atile H si L. Deoarece
ai =
bj ,
i2M
j2N
vom avea H + L = K.
Algoritmul pentru transformarea vectorului x ntr-o solutie realizabil
a de
baz
a const
a n:
pasul 1 : se completeaz
a linia k cu o celul
a n care variabila este xk;0 = K si
coloanele h si l cu cte o celul
a cu x0;h = H; x0;l = L. Se nlocuiesc costurile
cij prin dij = 0 si se atribuie celulelor ad
augate costurile dk;0 = 1; d0;h =
1; d0;l = 1 ;
pasul 2 : se calculeaz
a multiplicatorii simplex din sistemul de ecuatii:
uk = 1; vh = 1; vl = 1
ui + vj
pasul 3 : se caut
a solutia pentru care suma:
= xk;0 + x0;h + x0;l
este minim
a.
Dac
a min 6= 0 , problema (10.14)-(10.17) nu are solutii realizabile, deci
nu sunt satisf
acute conditiile (10.18)-(10.20).
Dac
a min = 0, solutia care s-a determinat este o solutie realizabil
a de
baz
a pentru problema (10.14)-(10.17).
Revenim la problema initial
a, stergnd din tabel celulele ad
augate si
nlocuind dij prin cij .
8
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
Criteriu de optimalitate.
Fie x solutia realizabil
a de baz
a obtinut
a n pasul 3.
Se calculeaz
a multiplicatorii simplex din sistemul:
cij = ui + vj
si costurile comparative:
cij = cij
(ui + vj )
cij
cij
ij
(10.21)
ij
adic
a dac
a toate costurile comparative asociate variabilelor cu valori nule sunt
negative, iar cele asociate variabilelor care nu apartin bazei si au valori egale
cu capacitatea maxim
a a rutei sunt nepozitive. Exemplele (2.10.1) si (2.10.2)
sunt exemple de organizare optim
a a transporturilor n cazurile n care rutele au
capacit
ati limitate.
O alt
a metod
a de optimizare a transporturilor cu capacit
ati limitate, care va
expus
a ulterior, se bazeaz
a pe transformarea problemei ntr-o problem
a cu trei
indici.
Cursul 12
nelimitata. Daca o ruta (r; p) nu poate folosita,
rp
= 0:
Tabelul 10.20
C1
C2
50
D1
100 100
10
12
150
vj
100
15
150
8
ai
C4
100
100 +
..
.
..
.
100
15
150 200
D3
bj
50
10
D2
C3
12
50
ui
50
5
..
.
..
.
150 +
50
8
10
300
200
7
500
0
100
10
200
0
Solu
tie: Se veric
a n primul rnd dac
a problema admite solutii realizabile,
3
4
P
P
adic
a dac
a
bj si
ai : n exemplul din tabelul 10.20, ecare
ij
ij
i=1
j=1
linie si coloan
a are cel putin un ij > M; M ind un num
ar pozitiv, arbitrar de
mare, deci este asigurat
a existenta solutiilor realizabile. Pentru obtinerea solutiei
initiale avem:
min cij
= c14 = 5
14 g
= c21 = 6;
x21 = 150
deci x14 apartine bazei.
Pentru a marca deosebirea dintre variabilele cu valori nenule care apartin bazei
si cele care nu fac parte din baz
a, acestea din urm
a vor trecute n tabel cu cifre
barate. Cel mai mic cost din tabelul 10.20 n care s-a suprimat prima coloan
a
este c13 = c24 = 7; deci x13 = 100 (nu apartine bazei) si x24 = 150 (apartine
bazei). Eliminnd din tabel coloana a patra, g
asim c22 = c33 = 10 si x22 = 100
(nu apartine bazei), iar x33 = 100 (apartine bazei), c23 = 12; deci x23 = 100:
Prin aceast
a atribuire este satisf
acut
a integral cererea n C3 ; dar concomitent
este lichidat si disponibilul din D2 : Aceast
a situatie face ca solutia obtinut
a s
a e
10
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
degenerat
a. ntr-adev
ar, dup
a ultima atribuire, x13 = 50 se g
aseste o solutie care
contine n baz
a cinci valori nenule, n timp ce dimensiunile tabelului cer o solutie
cu sase variabile de baz
a. Deoarece att n linia a doua, ct si n coloana a treia
variabilele au valori diferite de zero, nu se poate aplica metoda perturbatiilor
pentru completarea solutiei de baz
a si aceasta se completeaz
a transformnd una
din variabilele x13 ; x22 n variabil
a de baz
a. Vom alege pe x13 marcnd aceast
a
decizie prin bararea valorii ei. Se observ
a c
a s-a ajuns la o solutie realizabil
a, deci
vom testa optimalitatea ei calculnd multiplicatorii simplex si costurile comparative. Atribuind lui v3 valoarea zero, ceilalti multiplicatori simplex se calculeaz
a
cu usurinta. Valorile lor au fost trecute n tabelul 10.20.
Calculnd costurile comparative, le mention
am numai pe acelea care arat
a c
a
solutia nu este optim
a. Astfel avem:
c14 = 5
c32 = 15
(7
(10 + 8) =
3 < 0; x23 = 0
C2
C3
Disponibil
C4
ai
ui
D1
50
D2
150 200
100 100
12
15
150
6
150
17
D3
50
10
6
15
100 100
7
100
10
100
12
50 50
150
50
10
200
2
500
0
100
2
Necesar
bj
vj
300
12
200
7
Se observ
a c
a nu poate lua dect valoarea zero, deoarece x13 este la limita
superioar
a.
Modicarea f
acut
a astfel nu schimb
a planul transporturilor, iar din punct de
vedere matematic const
a numai n transformarea variabilei x14 n variabil
a apartinnd
11
Cursul 12
bazei si a lui x13 n variabil
a la limita superioar
a.
Costurile comparative asociate solutiei din tabelul 10.21 satisfac conditiile de optimalitate, deci soluta este optim
a. Observnd c
a c32 = 0 si x32 = 0; putem
c
auta o alt
a solutie optim
a care, evident, va conduce la aceeasi valoare a functiei
obiectiv, dar din tabelul 10.21 se constat
a c
a ciclul care trebuie format are un
vrf de ordin par n x14 , variabil
a a c
arei valoare este la limita superioar
a, deci
nu poate lua dect valoarea zero.
n concluzie problema admite o singur
a solutie optim
a.
Exemplul 2.10.2 Ne propunem sa rezolvam problema de transport cu capacitati
limitate pe unele rute, datele ind continute n tabelul 10.22.
Tabelul 10.22
C1
C2
50
50
C3
C4
Disponibil
ai
ui
D1
D2
D3
D4
10
150
8
50
5
70 100
50 50
120
30 30
50 100
400
180
50
180
100 100
1
200
150
Necesar
bj
300
100
vj
Solu
tie: Construind solutia initial
a n acest tabel, se ajunge la urm
atoarea
situatie: n depozitul D3 r
amn 70 de unit
ati neexpediate, n timp ce C2 si C3
sunt aprovizionate sub necesar, cu 50 si respectiv 20 de unit
ati.
Pentru transporturile necesare se construieste tabelul 10.23, care se obtine din
tabelul 10.22 ad
augnd liniei a treia o celul
a cu variabila x3;0 si coloanelor doi si
trei celulele cu variabilele x0;2 si x0;3 .
Toate costurile cij ; i = f1; :::; 4g ; j = f1; :::; 4g se nlocuiesc prin dij = 0; i
= f1; :::; 4g ; j = f1; :::; 4g iar costurile corespunz
atoare celulelor ad
augate sunt
d3;0 = d0;2 = d0;3 = 1.
Folosind acest tabel se caut
a
min fx3;0 + x0;2 + x0;3 g
12
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
n tabelul 10.23 s-au construit dou
a cicluri, din care rezult
a c
a, lund
20, se obtine min fx3;0 + x0;2 + x0;3 g = 0.
= 50; ' =
Tabelul 10.23
C1
C2
C3
50
50..
.
D3
70- -'
D4
30
30 : : :
180
0
150
1
300
1
200
vj
100
100
bj
50
0
..
100
.
70+'
..
.
150+
..
.
2.0
..
2 0
..
.
..0
.
D2
..
.
..
. 50
0
ui
20
..
.
D1
ai
C4
' 50
50
120
..
.
..
.
50 + ' 100
400
1
50
180
100
1
C2
..
D2
D3
D4
bj
vj
..
.
200
..
.
..
.
1.6
..
8
15
200
8
C4
15
14
50
50
8. 2
C3
..
.
..
.
..5
.
..
.
100 +
90 100
30 50
30 30
70 100
180
50
6
150
1
120
100
3
300
13
ui
50
100
ai
400
0
180
2
Cursul 12
Vom considera c
a x32 = 100 apartine bazei. Lund u3 = 0, se calculeaz
a
multiplicatorii simplex si costurile comparative.
S-au nscris n tabelul 10.24 numai costurile comparative care indic
a posibilit
atile
de mbun
at
atire a solutiei. Deoarece c1;1 = 8 , se ia x1;1 = dar, formnd ciclul,
se observ
a c
a = 0, deoarece valoarea variabilei x3;2 nu poate m
arit
a. Aceast
a
iteratie introduce n baz
a variabila x11 cu valoarea zero si transform
a din nou pe
x32 n variabil
a la limita superioar
a.
Solutia din tabelul 10.25 nu este optim
a i printr-o nou
a iteratie se obtine solutia
din tabelul 10.26 care satisface criteriul de optimalitate, deci nu mai poate
mbun
at
atit
a.
Tabelul 10.25
C1
D1
C2
0+
D2
16
D3
D4
bj
vj
ai
ui
50
3
3 5
200
C4
50
50
C3
90 100
3
100 100
30 30
15
16
200
2
150
3
30
50
70 +
100
120
5
400
50
180
2
180
300
100
3
Tabelul 10.26
D1
D2
D3
D4
bj
C1
C2
30
20 50
170
5
200
vj
C4
30
90 100
50
100 100
30 30
100 100
180
2
150
0
ui
50
ai
C3
300
2
3
50
400
9
180
4
2
100
14
3
120
5
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
2.10.4
cantitatea transportat
a din Pi n Dk ;
k2P
i2M
j2N
k2P
xik
0; ykj
(10.22)
k2P j2N
xik = ai ; i 2 M
(10.23)
xik = dk ; k 2 P
(10.24)
ykj = dk ; k 2 P
(10.25)
ykj = bj ; j 2 N
(10.26)
0; i 2 M; k 2 P; j 2 N
dac
a s-au notat cu cik si qkj costurile de transport ale unei unit
ati de produs
respectiv din Pi n Dk si din Dk n Bj . Problema are solutii dac
a sunt satisf
acute
conditiile:
X
X
X
ai =
dk =
bj
(10.27)
ai 0; dk 0; bj 0;
i2M
15
k2P
j2N
Cursul 12
Variabilele xik si ykj sunt independente, astfel, problema de transport cu
centre intermediare se descompune n dou
a probleme succesive:
XX
min
cik xik
i2M k2P
min
qkj ykj
k2P j2N
Capacit:
G1
G2
G3
G4
G5
G6
G7
G8
silozuri
^{n mii tone
S1
////
////
////
10
S2
////
////
S3
////
////
7,5
Produse
1,5
2,5
3,5
(mii tone)
Tabelul 10.28
Capacit:
Silozuri
mori
S1
S2
S3
M1
15,5
M2
10
Capacitate
siloz
10
7,5
16
mori
Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen
P
atratele hasurate n tabelul 10.27 arat
a c
a productia unor gospod
arii nu poate
transportat
a n anumite silozuri.
De exemplu gospod
ariile G7 si G8 nu pot expedia gru n silozul S1 .
Numerele nscrise n p
atratele tabelelor reprezint
a costul transportului a 1 000 t
de la o surs
a la o destinatie, unitatea monetar
a ind 10 000 lei.
Fie xij ; i = 1; :::8; j = 1; 2; 3 variabilele care reprezint
a cantit
atile transportate
din Gi n Sj si yjk ; j = 1; 2; 3; k = 1; 2 variabilele care reprezint
a cantit
atile
transportate din Sj n Mk .
Modelul problemei este de forma (10.22)-(10.26), conditiile (10.27) sunt ndeplinite si solutia se obtine rezolvnd cele dou
a probleme de transport ale c
aror
date sunt continute n tabelele 10.27 si 10.28. Costurile asociate variabilelor care
trebuie s
a ia valori nule n solutie indc
a transporturile pe acele rute nu sunt
ng
aduite se noteaz
a cu M , M ind un num
ar pozitiv arbitrar de mare.
Solutia optim
a a problemei de transport gospod
arii-silozuri este dat
a n tabelul
10.29, costul corespunz
ator ind C1 = 31; 5:
Solutia optim
a a problemei de transport silozuri-mori se obtine foarte usor, costul
minim ind C2 = 125. Costul minim de transport al ntregii productiii de gru
la mori este C = C1 + C2 = 216; 5.
Tabelul 10.29
G1
S1
S2
S3
G2
G3
M
G4
G5
G6
G7
G8
2;5
5;5
5
3;5
3
1
3
2
3,5
3
1;5
3
3;5
2
M
0;5
4
2,5
0;5
M
1,5
17
10
8
7,5
Index
Criteriu
de optimalitate, 9
Modele
liniare de tip transport, 6
Probleme de transport
cu capacitati limitate, 7
cu centre intermediare, 15
18