Documente Academic
Documente Profesional
Documente Cultură
Metode Mat - C2
Metode Mat - C2
Schematic avem:
c ij
Ai , ai Bj , bj
X ij
j 1
Xij ai , i = 1, 2, . . ., m; (4.1)
i 1
Xij bj , j = 1, 2, . . ., n; (4.2)
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n; (4.3)
m n
f(X) =
i 1 j 1
cij . Xij (4.4)
min f(X)
1
Inegalităţile (4.1) arată că totalul livrărilor fiecărui furnizor să se încadreze în disponibil
(ofertă). Inegalităţile (4.2) arată că cererea fiecărui consumator trebuie să fie acoperită
(satisfăcută) de totalul cantităţilor primite. Relaţiile (4.4) reprezintă costul total al transportului.
O condiţie necesară şi suficientă pentru existenţa unei soluţii a problemei de transport
neechilibrate din relaţiile (4.1) – (4.4) este dată de relaţia (4.5), adică oferta este mai mare sau
egală cu cererea.
m n
ai b j
i 1 j 1
(4.5)
m n
ai bj
i 1 j 1
(4.6)
Tabelul nr.4.1
Bj B1 B2 ... Bn Disponibil
Ai (Oferta)
ai
A1 c11 c12 ... c1n a1
A2 c21 c22 ... c2n a2
... ... ... ... ... ...
Am cm1 cm2 ... cmn am
Necesar b1 b2 ... bn m
(Cererea) a
i 1
i
bj n
b
j 1
j
Tabelul problemei de transport, tabelul nr.4.1, poate cuprinde în fiecare celulă (i, j), costul
unitar cij care se scrie în celula (i, j) în partea stânga sus, sau variabila Xij sau valoarea X ij a
variabilei Xij scrise în partea dreapta jos a celulei (i, j).
cij
Xij
C cij , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
2
X11 + X12 + … + X1n = a1
X21 + X22 + … + X2n = a2
...
Xm1 + Xm2 + … + Xmn = am
X11 + X21 + … + Xm1 = b1 (4.7)
X12 + X22 + … + Xm2 = b2
...
X1n + X2n + … + Xmn = bn
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
sau
j 1
Xij = ai , i = 1, 2, . . ., m; (4.8)
i 1
Xij = bj , j = 1, 2, . . ., n; (4.9)
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n; (4.10)
m n
f(X) =
i 1 j 1
cij . Xij (4.11)
min f(X)
ai >
i 1
b
j 1
j
m n
ai <
i 1
b
j 1
j
n m
am+1 = b - a
j 1
j i
i 1
3
şi ale cărui costuri unitare sunt nule, cm+1 , j = 0 , j = 1, 2..., n.
Matricea problemei de transport (4. 8) – (4. 11) în forma standard este A,
Teoremă
Problema de transport în forma standard (4.8) – (4.11) este degenerată dacă şi numai dacă
există mulţimile de indici A şi B,
A {1, 2, …, m) , B {1, 2, …, n} ,
astfel încât:
a b
iA
i
jB
j
4
Metodei perturbării
j 1
Xij = ai , i = 1, 2, . . ., m;
i 1
Xij = bj , j = 1, 2, . . ., n; (4.16)
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
m n
f(X) =
i 1 j 1
cij . Xij
min f(X)
b j = bj , j = 1, 2, …, n – 1
bn = bn + m. ,
unde > 0 , este număr real pozitiv şi mic,
10 p
0< <
2.m
p - reprezintă ordinul de mărime al celei mai semnificative cifre a datelor ai , i = 1, 2, …, m
(p = 2 pentru sute, p = 3 pentru mii etc.).
Se utilizează apoi algoritmul potenţialelor pentru rezolvarea problemei de transport din
relaţiile (4.17).
j 1
Xij = a i , i = 1, 2, . . ., m;
i 1
Xij = b j , j = 1, 2, . . ., n; (4.17)
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
m n
f(X) =
i 1 j 1
cij . Xij
min f(X)
5
Xmin = ( Xijmin ) , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
şi valoarea minimă a funcţiei obiectiv este fmin , apoi se consideră problema de transport
(4.8) – (4.11), dar de maximizare cu aceleaşi date, dar se cere max f, cea mai defavorabilă şi
nedorită, i se determină soluţia optimă
Xmax = ( Xijmax ) , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
cu valoarea maximă a funcţiei obiectiv fmax , se obţine intervalul de încadrare a costului total al
transportului f. Rezultă:
f [ fmin , fmax ]
Evident că este preferabilă soluţia optimă fmin , dar în situaţia cea mai nefavorabilă costul
total al transportului este fmax .
Exemplul nr. 4.1.
Un produs se află în diverse cantităţi în depozitele A1, A2, A3 şi trebuie transportat în
punctele de consum B1, B2, B3 , B4. Oferta, cererea şi costurile unitare de transport sunt date în
tabelul nr. 4. 2.
Tabelul nr.4. 2.
Ai B1 B2 B3 B4 Oferta
Bj ai
A1 3 2 1 1 140
A2 2 1 3 1 180
A3 1 2 3 1 80
Cererea 90 110 115 85 S = 400
bj
Ce cantitate trebuie transportată din fiecare depozit în fiecare punct de consum, astfel încât
costul total al transportului să fie minim.
Se vor scrie ecuaţiile problemei de transport de minimizare, se va determina o soluţie de
bază prin cele patru metode prezentate şi soluţia optimă. Se vor considera şi probleme concrete
cu determinarea costurilor unitare de transport cij . (Laborator)
Modelul matematic:
X11 + X12 + X13 + X14 = 140
X21 + X22 + X23 + X24 = 180
X31 + X32 + X33 + X34 = 80
X11 + X21 + X31 = 90
X12 + X22 + X32 = 110
X13 + X23 + X33 = 115
X14 + X24 + X34 = 85
Xij 0 , i = 1, 2, 3; j = 1, 2, 3, 4;
f = 3.X11 + 2.X12 + 1.X13 + 1.X14 + 2.X21 + 1.X22 + 3.X23 + 1.X24 +
+ 1.X31 + 2 .X32 + 3.X33 + 1.X34
min f
6
Se rezolvă cu programul QSB, rezultând soluţia optimă din tabelul nr. 4.3.
7
Se va determina cu programul Qsb soluţia defavorabilă, considerând pentru problema de
transport dată de tabelul nr.4. 2 obiectivul max f. Soluţia problemei de transport de maximizare
în acest caz este în tabelul nr. 4.4 şi max f = 920 u. m.
8
Evident că este preferabilă soluţia optimă fmin = 410 unităţi monetare, dar în situaţia cea
mai nefavorabilă costul total al transportului este fmax = 920 unităţi monetare (u.m.).
Se poate utiliza şi programul DSSPOM pentru a determina min f.
Tabelul nr.4.5
Bj B1 B2 ... Bn Disponibil
Ai (Oferta)
ai
A1 C11 c12 ... c1n a1
A2 C21 c22 ... c2n a2
... ... ... ... ... ...
Am cm1 cm2 ... cmn am
Necesar b1 b2 ... bn m
(Cererea) a
i 1
i
bj n
b
j 1
j
Problema de transport neechilibrată, cu cererea mai mică decât oferta, se echilibrează prin
introducerea unui consumator fictiv Bn+1 care ar avea nevoie de cantitatea de produs bn+1 din
relaţia (4.18), iar costurile sale unitare de transport sunt zero.
m n
bn+1 = ai b j
i 1 j 1
(4.18)
ci, n+1 = 0 , i = 1, 2, …, m.
Practic, la tabelul nr. 4.5 al problemei neechilibrate se mai adaugă o coloană pentru
consumatorul fictiv, rezultând tabelul nr. 4.6.
9
Tabelul nr. 4.6.
Bj B1 B2 ... Bn Bn+1 Disponibil
Ai (Oferta)
ai
A1 C11 c12 ... c1n 0 a1
A2 C21 c22 ... c2n 0 a2
... ... ... ... ... … ...
Am cm1 cm2 ... cmn 0 am
Necesar b1 b2 ... bn bn+1 m n 1
(Cererea)
i 1
a i
=
j 1
bj
bj
Se determină soluţia optimă a problemei de transport modificată şi echilibrată dată de tabelul
nr. 4.6, iar soluţia optimă a problemei de transport iniţiale neechilibrate, cu cererea mai mică decât
oferta, se obţine renunţând la consumatorul fictiv Bn+1, adică se taie coloana sa din tabelul soluţiei
optime.
Exemplul nr. 4.2. Cererea < Oferta
Se consideră problema de transport de minimizare dată în tabelul nr. 4.7 , cu cererea mai
mică decât oferta.
Tabelul nr.4.7
Ai B1 B2 B3 B4 Oferta
Bj ai
A1 2 1 3 2 150
A2 1 2 3 1 150
A3 3 2 1 2 200
Cererea 90 75 95 140 500
bj 400
Pentru echilibrarea problemei de transport din tabelul nr.4.7 se introduce un consumator fictiv
B5, rezultând tabelul nr. 4.8, care ar avea nevoie de cantitatea
b5 = 500 – 400 = 100, iar costurile sale unitare de transport sunt zero, ci5 = 0, i = 1, 2 , 3.
Tabelul nr.4.8
Ai B1 B2 B3 B4 B5 Oferta
Bj ai
A1 2 1 3 2 0 150, 50, 0
0 50 0 0 100
A2 1 2 3 1 0 150, 60, 0
90 0 0 60 0
A3 3 2 1 2 0 200, 105, 80,
0 25 95 80 0 0
Cererea 90 75 95 140 100 S = 500
bj 0 25 0 80 0
0 0
10
Valoarea funcţiei obiectiv f pe soluţia de bază din tabelul nr.4.8 este f = 455 u. m.
Se determină o soluţie de bază prin metoda costului minim pe linie.
Variabilele de bază sunt: VB = {X12 , X15 , X21 , X24 , X32 , X33 , X34 }
m + n - 1 = 3 + 5 – 1 = 7 , sunt şapte variabile pozitive, deci este soluţie de bază nedegenerată.
Se rezolvă cu programul Qsb, rezultând soluţia optimă din tabelul nr. 4.9.
Deci, depozitul A1 va vinde doar 75 unităţi de produs din 150 disponibile, depozitul A2 va vinde
tot ce poate oferi : 150 unităţi de produs, iar depozitul A3 va vinde 175 unităţi de produs din 200
disponibile.
min f = 480 u.m.
11
Tabelul nr.4.11
Bj B1 B2 ... Bn Disponibil
Ai (Oferta)
ai
A1 C11 c12 ... c1n a1
A2 C21 c22 ... c2n a2
... ... ... ... ... ...
Am cm1 cm2 ... cmn am
Necesar b1 b2 ... bn m
(Cererea) a i 1
i
bj n
b
j 1
j
Problema de transport neechilibrată, cu cererea mai mare decât oferta, se echilibrează prin
introducerea unui depozit fictiv Am+1 care ar avea de oferit cantitatea de produs am+1 din relaţia
(4.19) , iar costurile sale unitare de transport sunt zero.
n m
am+1 = b a
j 1
j
i 1
i (4.19)
cm+1, j = 0 , j = 1, 2, …, n.
Practic, la tabelul nr. 4.11 al problemei neechilibrate, cu cererea mai mare decât oferta, se
mai adaugă o linie pentru depozitul fictiv Am+1 ca în tabelul nr. 4.12.
(Cererea) ai = bj
i 1 j 1
bj
Se determină soluţia optimă a problemei de transport echilibrată dată de tabelul nr.4.12, iar
soluţia optimă a problemei de transport iniţiale neechilibrate din tabelul nr.4.11 , cu cererea mai
mare decât oferta, se obţine renunţând la depozitul fictiv Am+1, adică se taie linia sa din tabelul
soluţiei optime.
12
Tabelul nr.4.13
Ai B1 B2 B3 B4 Oferta
Bj ai
A1 4 2 3 1 150
A2 2 5 1 3 175
A3 3 1 2 4 125
Cererea 100 120 140 165 450
bj 525
13
Tabelul nr.4.15
Ai B1 B2 B3 B4 Oferta
Bj ai
A1 4 2 3 1 150
0 0 0 150
A2 2 5 1 3 175
35 0 140 0
A3 3 1 2 4 125
5 120 0 0
Cererea 100 120 140 165
bj
min f = 495 u. m.
Consumatorul B1 primeşte 35 unităţi de produs, deşi avea nevoie de 100; consumatorul B2
primeşte 120 unităţi de produs, exact cât are nevoie; consumatorul B3 primeşte 140 unităţi de
produs, exact cât are nevoie; consumatorul B4 primeşte 150 unităţi de produs, deşi avea nevoie
de 165.
j 1
Xij = ai , i = 1, 2, . . ., m;
i 1
Xij = bj , j = 1, 2, . . ., n;
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n; (4.20)
m n
f(X) =
i 1 j 1
cij . Xij
max f(X)
14
m n
ai bj
i 1 j 1
(4. 21)
Observaţie.
Xmax = ( Xijmax ) , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
şi valoarea maximă a funcţiei obiectiv este fmax , apoi considerăm problema de transport de
minimizare obţinută din relaţiile (4.20), dar se cere min f şi i se determină soluţia optimă (de
minimizare, nedorită)
Xmin = ( Xijmin ) , i = 1, 2, . . ., m; j = 1, 2, . . ., n;
cu valoarea minimă a funcţiei obiectiv fmin , se obţine intervalul de încadrare a profitului total f,
f [ fmin , fmax ]
Evident că este preferabilă soluţia optimă fmax , dar în situaţia cea mai nefavorabilă
profitul (venitul) total este fmin .
15
Tabelul nr.4.39
Pj P1 P2 ... Pn Capacitatea maximă de
Fi producţie
(Disponibil, Oferta)
ai
F1 c11 c12 ... c1n a1
F2 c21 c22 ... c2n a2
... ... ... ... ... ...
Fm cm1 cm2 ... cmn am
Necesar b1 b2 ... bn m
(Cererea) a
i 1
i
bj n
b
j 1
j
j 1
Xij = ai , i = 1, 2, . . ., m;
i 1
Xij = bj , j = 1, 2, . . ., n;
Xij 0 , i = 1, 2, . . ., m; j = 1, 2, . . ., n; (4.33)
m n
f(X) =
i 1 j 1
cij . Xij
max f(X)
unde: ai 0 , bj 0 , cij 0 , X = ( Xij ) , i = 1, 2,..., m ; j = 1, 2,...,n;
Problema concretă
max f = 2195 u. m.
Dacă în problema de transport din tabelul nr. 4.23 se va considera min f, se va determina
soluţia pesimă, cea mai defavorabilă şi nedorită, cu cel mai mic profit în condiţiile date (prin
calcul sau cu programul Qsb), din tabelul nr. 4.26 şi min f = 925 u. m.,
17
Tabelul nr.4.26
2 3 1 4 3
55 0 120 0 0
1 2 4 3 1
75 70 0 0 80
4 2 1 2 4
0 20 0 180 0
deci,
f [ fmin , fmax ]
rezultă:
f [ 925 , 2195 ] ,
Există situaţii practice în care anumite rute între furnizori şi consumatori nu pot fi folosite
la un moment dat, numindu-le rute interzise sau blocate, dar trebuie rezolvată problema de
transport. Rezolvarea problemei de transport cu rute interzise (blocate) se face cu problema de
transport de minimizare clasică, obişnuită, dar se modifică costurile unitare de transport ale
rutelor interzise (blocate), atribuindu-le valori mai mari decât toate costurile cij pentru ca
algoritmul să ocolească rutele interzise. De exemplu, dacă din depozitul Ak nu se poate
transporta în punctul de consum Br , se va atribui lui ckr o valoare mare care verifică: ckr > cij ,
i = 1, 2, …, m ; j = 1, 2, …, n. Variabila Xkr nu va fi de bază nici în soluţia de bază iniţială, nici
pe parcursul iteraţiilor algoritmului.
Observaţie
Dacă sunt verificate inegalităţile:
1 m
ak > . ai
2 i 1
1 n
br > . b j
2 j 1
, atunci ruta Ak , Br nu poate fi evitată oricât de mare ar fi valoarea ckr atribuită costului unitar
corespunzător. Trebuie căutat încă un furnizor sau consumator pentru rezolvarea problemei.
Exemplul nr. 4.4.
Se consideră problema de transport de minimizare dată în tabelul nr.4.7 , pe care o
reluăm în tabelul nr.4.16, considerând că ruta de la A1 la B3 este interzisă. Se va atribui un
cost mai mare lui c13 decât toate costurile din tabel, de exemplu se pune c13 = 12 în tabelul
nr. 4.17 .
18
Tabelul nr.4.16
Ai B1 B2 B3 B4 Oferta
Bj ai
A1 3 2 1 1 140
A2 2 1 3 1 180
A3 1 2 3 1 80
Tabelul nr.4. 17
Ai B1 B2 B3 B4 Oferta
Bj ai
A1 3 2 12 1 140, 55, 0
0 55 0 85
A2 2 1 3 1 180, 125, 115,
10 55 115 0 0
A3 1 2 3 1 80, 0
80 0 0 0
Cererea 90 110 115 85 S = 400
bj 10 55 0 0
0 0
Se determină o soluţie de bază în tabelul nr.4.17 prin metoda costului minim pe ansamblu
matrice. Variabilele de bază sunt: VB = {X12 , X14 , X21, X22 , X23 , X31}, deci X13 nu este
variabilă de bază. Valoarea funcţiei obiectiv f pe soluţia de bază este f = 695 u.m. Se rezolvă
problema de transport din tabelul nr.4.17 cu programul Qsb şi rezultă că soluţia de bază din
tabelul nr. 4.17 este optimă. Ruta din A1 la B3 este evitată, nu este folosită, min f = 695 u. m.
Laborator: se vor face diverse modificări ale coeficienţilor problemelor de transport şi
rezolvarea problemelor respective. Se pot analiza şi rezolva probleme concrete propuse de
studenţi.
19