Sunteți pe pagina 1din 18

Cercetari operationale

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

Modelul matematic al unei


probleme de programare liniar
a

2.2

Forme de prezentare a modelului matematic

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

si a unei baze ortonormate

2.5

Algoritmul simplex

2.6

Metode pentru ob
tinerea unui program de baz
a
ini
tial

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


6
Generaliz
ari ale problemei transporturilor

2.10.2

Cercet
ari Opera
tionale B
arb
acioru Iuliana Carmen

2.10.3

Probleme de transport cu capacit


a
ti limitate

Fie ij cantitatea maxim


a dintr-un anumit produs care poate transportat
a
pe ruta (i; j). Modelul problemei de transport constrns
a s
a respecte limitarea
capacit
atii rutelor este:
2
3
XX
min 4
cij xij 5
(10.14)
X

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

Determinarea unei solu


tii realizabile de baz
a.
Pentru rezolvarea problemei de transport cu capacit
ati limitate se folosesc tabele
de aceeasi form
a cu cele utilizate n problemele standard de transport, dar n
ecare celul
a a tabelului se nregistreaz
a si ij , cantitatea maxim
a de produse
care poate transportat
a pe ruta (i; j). Pentru determinarea solutiei initiale se
alege cpq = min fcij g si se atribuie variabilei xpq valoarea maxim
a compatibil
a cu
(ij)

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

= dij pentru xij 2 B; i 6= k; j 6= h; l

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

pentru toti (ij) 2 B

si costurile comparative:
cij = cij

(ui + vj )

Solutia este optim


a dac
a:
cij

= 0 pentru toti 0 < xij <

cij

0 pentru toti xij = 0

cij

0 pentru toti xij =

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.

Exemplul 2.10.1 Se cere organizarea optima a transporturilor necesare aprovizionarii


centrelor Cj ; j = 1; :::; 4 cu o marfa depozitata n punctele Di ; i = 1; :::; 3, cunoscnd
ca pe unele rute capacitatea de transport este limitata. n tabelul 10.20 numerele
nscrise n coltul din dreapta sus a celulei (i; j) reprezinta capacitatea maxima a
transportului pe ruta (i; j) : De exemplu, 13 = 100 nseamna ca din depozitul
D1 nu pot expediate centrului C3 dect cel mult 100 de unitati. Daca unor ij
nu li se atribuie nici o valoare, capacitatea de transport pe acea ruta este practic
9

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

x14 = min fa1 ; b4 ;

14 g

= min f200; 200; 50g = 50

deci x14 nu este o variabil


a din baz
a. n continuare g
asim:
min cij
i6=1
j6=4

= 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

5) = 3 > 0; x14 ind la limita superioar


a,

(10 + 8) =

3 < 0; x23 = 0

deci solutia poate mbun


at
atit
a.
S
a admitem c
a vrem s
a mbun
at
atim solutia micsornd valoarea variabilei x14 : Ciclul transferului cantit
atilor transportate trebuie construit utiliznd numai variabile care apartin bazei. Acest ciclu, pentru exemplul studiat, este nscris n
tabelul 10.20.
Tabelul 10.21
C1

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

Solutia din tabelul 10.24 este realizabil


a si este o solutie de baz
a dac
a una din
variabilele la limita superioar
a este transformat
a n variabil
a de baz
a.
Tabelul 10.24
C1
D1

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

Probleme de transport cu centre intermediare

Sub acest titlu se trateaz


a problemele n care m
arfurile produse n unit
atile Pi ;
i = 1; :::; m sunt transportate n depozitele Dk ; k = 1; :::; p, care au sarcina de
a satisface cererile consumatorilor Bj ; j = 1; :::; n.
Depozitele Dk sunt numite centre intermediare. Problema const
a n determinarea planurilor de transport de la produc
ator la depozite si de la depozite la
consumatori astfel nct cheltuielile de transport necesare aprovizion
arii consumatorilor s
a e minime. Pentru formularea problemei folosim urm
atoarele notatii:
ai ; i 2 M = f1; :::; mg productia n Pi ;
dk ; k 2 P = f1; :::; pg capacitatea depozitului Dk ;
bj ; j 2 N = f1; :::; ng cererea consumatorului Bj ;
xik ; i 2 M; k 2 P

cantitatea transportat
a din Pi n Dk ;

ykj ; k 2 P; j 2 N cantitatea transportat


a din Dk n Bj :
Cu aceste notatii, problema se scrie:
2
3
XX
XX
min 4
cik xik +
qkj ykj 5
i2M k2P

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

pe multimea solutiilor nenegative a sistemului (10.23)-(10.24);


XX

min

qkj ykj

k2P j2N

pe multimea solutiilor nenegative a sistemului (10.25)-(10.26).


Exemplul 2.10.3 Productia de gru a opt gospodarii agricole dintr-o regiune se
depoziteaza n trei silozuri care vor alimenta doua mori. Se cere planul de repartizare a productiei gospodariilor n silozuri si planul de aprovizionare a morilor
astfel nct costul total al transporturilor ntregii productii de gru la mori sa e
minim.
Solu
tie: Datele numerice ale problemei sunt cele date n tabelele 10.27 si
10.28.
Tabelul 10.27
Gospod
arii
Silozuri

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

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