Documente Academic
Documente Profesional
Documente Cultură
dk a
i 1
i
d
k 1
k
bj d
k 1
k
b
j 1
j
cik 0 , qkj 0 , ai 0 , dk 0 , bj 0 , i = 1, 2, …, m ; k = 1, 2, …, p; j = 1, 2, …, n;
m p n
Se presupune ca problema este echilibrată: a d
i 1
i
k 1
k = b
j 1
j
1
Se notează cu Xik cantitatea ce se transportă din depozitul iniţial Ai în depozitul intermediar Dk şi
cu Ykj cantitatea ce se transportă din depozitul intermediar Dk la centrele de consum Bj ,
i = 1, 2, …, m ; k = 1, 2, …, p; j = 1, 2, …, n.
c ik q kj
Ai , ai Dk , dk Bj , bj
X ik Ykj
X
k 1
ik ai , i = 1, 2, …, m;
m
X
i 1
ik d k , k = 1, 2, …, p;
n
Y
j 1
kj d k , k = 1, 2, …, p; (4.22)
p
Y
k 1
kj b j , j= 1, 2, …, n;
X ik 0 , Ykj 0 , i = 1, 2, …, m; k = 1, 2, …, p; j= 1, 2, …, n;
m p n p
f cik . X ik
i 1 k 1
q
j 1 k 1
kj .Ykj
min f
X
k 1
ik ai , i = 1, 2, …, m;
m
X
i 1
ik d k , k = 1, 2, …, p; (4.23)
X ik 0 , , i = 1, 2, …, m; k = 1, 2, …, p;
m p
f1 cik . X ik
i 1 k 1
min f 1
n
Y
j 1
kj d k , k = 1, 2, …, p;
p
Y
k 1
kj b j , j= 1, 2, …, n; (4.24)
Ykj 0 , k = 1, 2, …, p; j= 1, 2, …, n;
n p
f2 = q
j 1 k 1
kj .Ykj
min f2
2
Problema de transport cu centre intermediare neechilibrată are modelul matematic cu
inegalităţi, similar celui din relaţiile (4.1), (4.2), (4.3), (4.4).
Rezolvarea problemei de transport din relaţiile (4.22) constă în determinarea soluţiei
optime pentru problemele de transport (4.23) şi (4.24).
Costul minimal problemei (4.22) va fi: min f = min f 1 + min f2
Pe calculator se pot utiliza pentru rezolvarea problemei de transport cu centre intermediare
programele:
- Qsb - modulul Transshipment problem;
- Dsspom - modulul Transportation Method;
sau cu alte programe.
Observaţie
Deci,
f [ fmin , fmax ]
c ik t kh qh j
Ai , ai X ik
Dk , dk Eh , eh Bj , bj
Z kh Yh j
3
50, 80, 120, 60, 90. Costul unitar de transport din depozitul Ai în depozitul intermediar Dk este
cik , iar costul transportului din depozitul intermediar Dk în centrul de consum Bj este qkj .
Costurile unitare de transport date de matricile C şi Q, oferta 1, oferta 2, cererea1 şi cererea 2
sunt sintetizate în tabelele nr.4.29 şi nr.4.30. Să se determine ce cantitate se transportă din
depozitele iniţiale Ai în depozitele intermediare Dk şi din depozitele intermediare Dk la centrele
de consum Bj , i = 1, 2, 3, 4 ;
k = 1, 2; j = 1, 2, 3, 4, 5, astfel încât costul total al transportului să fie minim.
C cik , Q qkj , i = 1, 2, 3, 4; k = 1, 2; j = 1, 2, 3, 4, 5.
Tabelul nr.4. 29
Dk D1 D2 Oferta 1
Ai ai
A1 5 7 100
A2 8 6 80
A3 9 4 190
A4 10 5 30
Cererea 1 250 150 S = 400
dk
c ik q kj
A1 , A2 , A3 , A4 D1, D2 B1 , B2 , B3 , B4 , B5
X ik Ykj
Xik 0 , Ykj 0 , i = 1, 2, 3, 4; k = 1, 2; j = 1, 2, 3, 4, 5
f = f1 + f2
min f
4
notaţiile sunt:
f1 = 5.X11 + 7.X12 + … + 5.X42
f2 = 3.Y11 + 6.Y12 + … + 5.Y25
min f = min f1 + min f2
Rezolvarea problemei de transport cu centre intermediare se reduce la două probleme de
transport clasice de minimizare cu funcţiile obiectiv f1 şi f2 .
5
Tabelul nr.4.31
Dk D1 D2 Oferta 1
Ai ai
A1 5 7 100
100 0
A2 8 6 80
80 0
A3 9 4 190
40 150
A4 10 5 30
30 0
Cererea 1 250 150 S = 400
dk
min f1 = 2400 u. m.
Tabelul nr.4.32
Bj B1 B2 B3 B4 B5 Oferta 2
Dk dk
D1 3 6 5 7 9 250
50 80 120 0 0
D2 2 8 4 3 5 150
0 0 0 60 90
Cererea 2 50 80 120 60 90 S = 400
bj
min f2 = 1860 u. m.
min f = min f1 + min f2 = 2400 + 1860 = 4260 u. m.
6
Tabelul nr.4.31,A
Dk D1 D2 Oferta 1
Ai ai
A1 5 7 100
0 100
A2 8 6 80
30 50
A3 9 4 190
190 0
A4 10 5 30
30 0
Cererea 1 250 150 S = 400
dk
max f1 = 3250 u. m.
Tabelul nr.4.32 A
Bj B1 B2 B3 B4 B5 Oferta 2
Dk dk
D1 3 6 5 7 9 250
0 0 100 60 90
D2 2 8 4 3 5 150
50 80 20 0 0
Cererea 2 50 80 120 60 90 S = 400
bj
max f2 = 2550 u. m.
max f = max f1 + max f2 = 3250 + 2550 = 5800 u.m.
deci,
f [ fmin , fmax ]
rezultă:
f [4260 , 5800 ] ,
evident că este dorită şi preferată soluţia optimă min f = 4260 u. m.
7
Se notează cu gij cantitatea maximă ce se poate transporta din Ai în Bj . Ce cantitate trebuie
transportată din fiecare depozit şi fiecare produs la fiecare punct de consum, astfel încât costul
total al transportului să fie minim.
Pentru rezolvare, se notează cu Xijk cantitatea din produsul Pk transportată din Ai în Bj .
Modelul matematic este în relaţiile (4.25).
Schematic:
cijk , g ij
Aik , aik X ijk
Bjk , bjk
j 1
Xijk = aik , i = 1, 2, . . ., m; k = 1, 2, . . ., p;
i 1
Xijk = bjk , j = 1, 2, . . ., n; k = 1, 2, . . . p;
p
k 1
Xijk gij , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
min f(X)
care este modelul problemei de transport tridimensională ce se rezolvă cu algoritmul de transport
tridimensional.
Trebuie să fie îndeplinite condiţiile (4.25a).
m n
aik bjk , k = 1, 2, . . . , p;
i 1 j 1
p n
aik gij , i = 1, 2, . . . , m;
k 1 j 1
(4.25a)
m p
g
i 1
ij bjk , j = 1, 2, . . . , n;
k 1
m p n p m n
O altă rezolvare a problemei date de relaţiile (4.25) este prin transformarea problemei de
transport tridimensională, deci cu trei indici, într-o problemă de programare liniară, în care
variabilele vor avea un indice.
Astfel, se poate nota (sau altfel):
X111 = X111, X112 = X112 etc., iar la întrebarea programului Qsb:
Do you want to use default variable names (X1, X2, ..., Xn) (Y/N)?
Se va răspunde N, apoi când apare mesajul:
Enter the variable names using ...
Se vor introduce numele variabilelor: X111, X112, X113 etc.
8
Sau se notează:
Tabelul nr. 4.32 P1. Oferta ai1 , cererea bj1 si costurile de transport cij1 pentru produsul P1
Bj B1 B2 B3 B4 Oferta
Ai produsului
P1
ai1
A1 3 6 1 2 100
A2 2 4 3 1 180
A3 1 2 3 5 150
bj1
9
Tabelul nr. 4.32.P2. Oferta ai2 , cererea bj2 si costurile de transport cij2 pentru produsul P2
Bj B1 B2 B3 B4 Oferta
Ai produsului
P2
ai2
A1 1 2 1 3 120
A2 2 1 3 4 140
A3 5 2 3 1 145
bj2
Soluţia 1
Sunt 24 variabile si 26 restrictii. Se rezolva cu programul Qsb, modulul linear programming (sau
alt program),. Se poate rezolva şi cu programul Qsb, modulul integer linear programming.
Modelul matematic:
X111 + X121 + X131 + X141 >= 100
X211 + X221 + X231 + X241 >= 180
X311 + X321 + X331 + X341 >= 150
X112 + X122 + X132 + X142 >= 120
X212 + X222 + X232 + X242 >= 140
X312 + X322 + X332 + X342 >= 145
X111 + X112 60
X121 + X122 35
X131 + X132 80
10
X141 + X142 45
X211 + X212 80
X221 + X222 90
X231 + X232 80
X241 + X242 70
X311 + X312 40
X321 + X322 110
X331 + X332 70
X341 + X342 75
11
Solutia optima:
Min f = 1405
X111 = 0 ; X121 = 0 ; X131 = 55 ; X141 = 45 ;
X211 = 50 ; X221 = 0 ; X231 = 60 ; X241 = 70 ;
X311 = 40 ; X321 = 110 ; X331 = 0 ; X341 = 0 ;
12
13
14
15
16
Se rezolva analog cu programul Qsb, modulul integer linear programming.
Soluţia defavorabilă:
17
f [1405, 2490]
Soluţia defavorabilă:
Max f = 2490
X111 = 35 ; X121 = 25 ; X131 = 0 ; X141 = 40 ;
X211 = 55 ; X221 = 80 ; X231 = 45 ; X241 = 0 ;
X311 = 0 ; X321 = 5 ; X331 = 70 ; X341 = 75 ;
Soluţia 2
Din cauza erorilor de trunchiere, aproximare, rotunjire, nu se obţine întotdeauna soluţia
optimă când restricţiile sunt cu egalităţi sau problema nu are soluţie. Se înlocuiesc egalităţile cu
inegalităţi duble cu valori din vecinătatea lui aik , respectiv bjk . Se elimină erorile de rotunjire,
considerând:
aik [aik – 0.1, aik + 0.1] , bjk [ bjk – 0.1, bjk + 0.1]
Se rezolvă cu programul Qsb (sau alt program), modulul integer linear programming.
18
X311 + X321 + X331 + X341 150.1
X311 + X321 + X331 + X341 149.9
X111 + X112 60
X121 + X122 35
X131 + X132 80
X141 + X142 45
X211 + X212 80
X221 + X222 90
X231 + X232 80
X241 + X242 70
X311 + X312 40
19
X321 + X322 110
X331 + X332 70
X341 + X342 75
20
Etc.
21
funcţia f2 - timpul total de transport, care se va minimiza;
funcţia f3 - cantitatea de produse care se transportă, care se va maximiza.
Se notează cu:
Xijk cantitatea din produsul Pk transportată din Ai în Bj ;
tij timpul total de transport din Ai în Bj ;
gij cantitatea maximă ce se poate transporta din Ai în Bj ;
ijk factor de transformare a produselor pentru a se putea aduna;
X = ( Xijk ) ;
unde i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . , p.
Modelul matematic corespunzător este dat de relaţiile (4.27).
m
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.27)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f 1( X ) =
i 1 j 1 k 1
cijk . X ijk
m n p
f2(X) =
i 1 j 1 k 1
t ij . X ijk
m n p
f3(X) =
i 1 j 1 k 1
ijk . X ijk
min f1(X)
min f2(X)
max f3(X)
Trebuie să fie îndeplinite condiţiile (4.28).
m n
aik bjk , k = 1, 2, . . . , p;
i 1 j 1
p n
aik gij , i = 1, 2, . . . , m;
k 1 j 1
(4.28)
m p
gij bjk , j = 1, 2, . . . , n;
i 1 k 1
m p n p m n
22
Rezolvarea se poate face prin maximizarea utilităţii globale.
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.37)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f 1( X ) =
i 1 j 1 k 1
cijk . X ijk
m n p
f2(X) =
i 1 j 1 k 1
t ij . X ijk
m n p
f3(X) =
i 1 j 1 k 1
ijk . X ijk
min f1(X)
min f2(X)
max f3(X)
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.38)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f 1( X ) =
i 1 j 1 k 1
cijk . X ijk
23
min f1(X)
cu soluţia optimă X*1 ;
m
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.39)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f2(X) =
i 1 j 1 k 1
t ij . X ijk
min f2(X)
cu soluţia optimă X*2 ;
m
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.40)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f3(X) =
i 1 j 1 k 1
ijk . X ijk
max f3(X)
cu soluţia optimă X*3.
Pentru fiecare funcţie obiectiv fk(X) se determină soluţia pesimă (nonoptimă, opusă
valorii optime, cea mai defavorabilă) X-k a problemei de transport cu o funcţie obiectiv,
k = 1, 2, 3.
m
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.41)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f 1( X ) = i 1 j 1 k 1
cijk . X ijk
24
max f1(X)
cu soluţia pesimă X-1 ;
m
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.42)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f2(X) =
i 1 j 1 k 1
t ij . X ijk
max f2(X)
cu soluţia pesimă X-2 ;
m
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X
j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.43)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
m n p
f3(X) =
i 1 j 1 k 1
ijk . X ijk
min f3(X)
cu soluţia pesimă X-3.
Se notează: Ok = Optimum fk(X) = fk(X*k)
Pk = Pesim fk(X) = fk(X-k)
k = 1, 2, 3.
Deci: O1 = min f1(X) = f1(X*1)
O2 = min f2(X) = f2(X*2)
O3 = max f3(X) = f3(X*3)
P1 = max f1(X) = f1(X-1)
P2 = max f2(X) = f2(X-2)
P3 = min f3(X) = f3(X-3)
Etapa 2.
Pentru valorile optime şi pesime ale funcţiilor obiectiv se dau utilităţile acestor valori de către
decident în tabelul nr. 4.43.
25
Valoarea optimă Ok are utilitatea Uk , k = 1, 2, 3.
Valoarea pesimă Pk are utilitatea U3+k , k = 1, 2, 3.
Tabelul nr. 4.43 Utilităţile valorilor optime şi pesime
Ok / Pk O1 O2 O3 P1 P2 P3
Uk U1 U2 U3 U4 U5 U6
X
i 1
ijk bjk , j = 1, 2, . . . , n; k = 1, 2, . . . , p;
X j 1
ijk aik , i = 1, 2, . . . , m; k = 1, 2, . . . , p;
26
p
X
k 1
ijk gij , i = 1, 2, . . . , m; j = 1, 2, . . . , n; (4.44)
Xijk 0 , i = 1, 2, . . . , m; j = 1, 2, . . . , n; k = 1, 2, . . . . , p;
U1 U 4 m n p
U 4 .O1 U 1 .P1
F(X) = (
O1 P1
.
i 1 j 1 k 1
cijk . X ijk +
O1 P1
) +
U2 U5 m n p
( . t ij . X ijk +
O2 P2 i 1 j 1 k 1
U .O U 2 .P2 U U6 m n p
U 6 .O3 U 3 .P3
+ 5 2 )+( 3 . . X ijk + )
O2 P2 O3 P3 i 1 O3 P3
ijk
j 1 k 1
Max F(X)
Observaţie.
27