Sunteți pe pagina 1din 11

Metode de optimizare

1.3. Problema transporturilor


1.3.1. Formularea problemei Se cere organizarea transportului de la m centre de producie sau m furnizori, Fi, i=1,2,...,m, a unui produs, la n centre de desfacere sau beneficiari, Bj, j=1,2,...,n, cunoscndu-se urmtoarele date: disponibilul fiecrui furnizor; necesarul fiecrui beneficiar; costul unitar al transportului de la fiecare furnizor la fiecare beneficiar. Dac notm cu ai, i=1,2,...,m disponibilul la fiecare furnizor, cu bj, j=1,2,...,n, necesarul la fiecare beneficiar, datele problemei pot fi scrise n urmtorul tabel. Tabelul 1.7 Modelul problemei de transport Bj Fi F1 F2 .... Fm Necesar c11 c21 ....... cm1 b1 c12 c22 ....... cm2 b2 ....... ....... ....... ....... ........ c1n c2n ........ cmn bn bj a1 a2 ........ am ai B1 B2 ....... Bn Disponibil

Dac disponibilul la toi furnizorii este egal cu necesarul la toi beneficiarii, atunci problema este echilibrat.

ai = b j
i =1 j =1

(1.71)

Dac egalitate (1.67) nu este satisfcut atunci problema este neechilibrat. In continuare ne vom referi la problema echilibrat, urmnd ca n finalul paragrafului s revenim la modul de lucru n cazul problemelor neechilibrate. Transportul de la furnizorul Fi la beneficiarul Bj se face pe ruta FiBj. Vom avea n total mn rute. A organiza transportul nseamn a stabili cantitile ce sunt transportate pe fiecare rut

Tehnici de optimizare n energetic

Pag: 24

Metode de optimizare astfel nct costul total al transportului s fie minim. Dac notm cu xij cantitatea transportat pe ruta FiBj, necunoscutele problemei se pot trece n tabelul 1.8. Costul transportului Fi Bj este cij xij, iar costul total: z = cij xij
i =1 j =1 m n

(1.72)

Relaia (1.72) ne d funcia obiectiv a problemei de transport, o problem cu mn variabile. Restriciile problemei rezult din limitarea disponibilului la furnizori i al necesarului la beneficiari. Tabelul 1.8 Variabilele problemei de transport Bj Fi F1 F2 .... Fm Necesar x11 x21 ....... xm1 b1 x12 x22 ....... xm2 b2 ....... ....... ....... ....... ........ x1n x2n ........ xmn bn bj a1 a2 ........ am ai B1 B2 ....... Bn Disponibil

Modelul matematic al problemei de transport este: z = cij xij = min!


i =1 j =1 m n

x
j =1 m

ij

= ai , i = 1,2, ..., m = bj , j = 1,2, ..., n j = 1,2, ..., n

(1.73)

x
i =1

ij

xij 0, i = 1,2, ..., m,

Problema (1.73) este o problem de PL, dar cu un numr mare de variabile (mn).

1.3.2. Proprieti ale problemei de transport

Tehnici de optimizare n energetic

Pag: 25

Metode de optimizare a) Numrul de variabile de baz ale problemei de transport este m+n-1 ntr-adevr avem m+n restricii ns acestea nu sunt independente deoarece disponibilul este egal cu necesarul, rel. (1.71) i deci numrul de variabile independente va fi m+n-1. Dac numrul de variabile nenule este mai mic de m+n-1 atunci problema este degenerat. Modul de lucru n cazul problemelor degenerate este prezentat mai jos. b) Mulimea programelor problemei de transport nu este vid Dac se aleg variabilele xij cu relaiile: xij = unde S = ai = b j
i =1 j =1 m n

ai b j S

i = 1,2, ..., m j = 1,2, ..., n

(1.74)

(1.75)

se constat imediat c xij > 0 i n plus restriciile de tip egalitate sunt satisfcute:

xij =
j =1 m j =1 m

ai b j S ai b j S

= =

ai n b j = ai , i = 1,2, ..., m S j =1 bj S ai = b j ,
i =1 m

(1.76)

x
i =1

ij

=
i =1

j = 1,2, ..., n

1.3.3. Determinarea unui program iniial de baz Pentru determinarea unui program iniial exist mai multe procedee, unele mai eficiente i altele care conduc la o valoarea mai slab a funciei obiectiv. In continuare vom prezenta dou dintre acestea: metoda colului de nord-vest i metoda costurilor unitare minime. a) Metoda colului de nord-vest Const n atribuirea de valori variabilelor xij ncepnd cu colul de stnga sus al tabelului variabilelor problemei de transport, (tabelul 1.8), fr a ine seama de valoarea funciei obiectiv. Atribuirea se face pe criteriul asigurrii necesarului pentru beneficiari i consumrii disponibilului la furnizori. Vom arta modul de lucru pe baza unui exemplu: Tabelul 1.9

Tehnici de optimizare n energetic

Pag: 26

Metode de optimizare Exemplu pentru problema de transport Bj Fi F1 F2 F3 F4 Necesar 7 6 4 5 200 2 7 5 8 250 3 9 4 6 300 4 4 7 9 100 100 275 325 150 850 850 B1 B2 B3 B4 Disponibil

Determinarea soluiei se face n tabelul variabilelor: Tabelul 1.10 Determinarea unui soluii iniiale prin metoda colului de NV Bj Fi F1 F2 F3 F4 Necesar 100 100 200 175 75 250 250 50 300 100 100 100 275 325 150 850 850 B1 B2 B3 B4 Disponibil

Se observ c soluia are 4+4-1= 7 variabile de baz, iar valoarea funciei obiectiv este z=7100 + 6100 +7175 + 575 + 4250 + 650 + 9100=5100. b) Metoda costurilor unitare minime In acest caz atribuirea valorilor pentru variabilele xij se face ncepnd cu costurile unitare minime, urmrindu-se totodat respectarea restriciilor. In cazul unor costuri unitare egale se alege variabila care permite atribuirea unei cantiti mai mari. Pentru exemplul din tabelul 1.9 se obine programul iniial din tabelul 1.11. Tabelul 1.11 Determinarea unui program iniial prin metoda costurilor

Tehnici de optimizare n energetic

Pag: 27

Metode de optimizare unitare minime Bj Fi F1 F2 F3 F4 Necesar 25 25 150 200 100 150 250 300 300 100 100 100 275 325 150 850 850 Se obine funcia valoarea funciei obiectiv z=2100 + 625 + 7150 +4100 + 425 + 4300 + 5150 = 3850. Se constat o scdere a valorii funciei obiectiv fa de metoda colului de NV cu 24.51 %. 1.3.4. Rezolvarea problemei de transport Fie [X] un program de baz nedegenerat. Pentru a putea rezolva problema vom construi o alt problem, cu aceleai variabile, [X] dar cu costuri unitare nule pentru variabilele din baz, astfel nct pentru aceast problem, valoarea funciei obiectiv s fie zero. Prin variabilele din afara bazei vom putea ns observa uor cnd funcia descrete. Pentru construirea funciei obiectiv auxiliare, la costurile unitare cij, i=1,2,...,m, j=1,2,...,n, vom scdea variabile ui, i=1,2,...,m pe linii i variabile vj, j=1,2,...,n pe coloane, impunnd ca noile costuri unitare gij, i=1,2,...,m, j=1,2,...,n pentru variabilele din baz s fie nule. gij = cij ui v j , gij = 0, ij B rezultnd sistemul: cij ui v j = 0, ij B i m+n-1 ecuaii, pentru rezolvarea lui se adopt arbitrar, u1=0. Notnd cu Z funcia obiectiv auxiliar, expresia acesteia va fi: (1.74) i = 1,2, ..., m j = 1,2, ..., n (1.73) B1 B2 B3 B4 Disponibil

ntruct sistemul (1.74) are m+n necunoscute (variabilele ui, i=1,2,...,m, vj=1,2,...,n)

Tehnici de optimizare n energetic

Pag: 28

Metode de optimizare Z (([ X ]) = gij xij = cij ui v j xij = cij xij


i =1 j =1 n i =1 j =1 m i =1 j =1 n m n m n

ui xij v j xij =z([ X ]) ui ai v j b j


i =1 j =1 j =1 i =1 i =1 j =1

(1.75)

de unde rezult: z([ X ]) Z ([ X ]) = ui ai + v j b j = const.


i =1 j =1 m n

(1.76)

adic cele dou funcii obiectiv variaz n acelai sens, cresc i descresc simultan deoarece expresiile din (1.76) nu depind de variabilele xij, i=1,2,...,m, j=1,2,...,n. Deoarece funcia Z([X]) scade n fiecare iteraie simultan cu z([X]) rezult c rezolvarea sistemului (1.74) trebuie fcut n fiecare iteraie. a) Criteriul de optim Un program este optim, dac toi gij 0, i=1,2,...,m, j=1,2,...,n. ntr-adevr dac toi gij 0, ntruct gij=0 pentru ijB, rezult c introducerea n baz a unei variabile din afara bazei ar conduce la creterea funciei obiectiv Z([X]), respectiv z([X]). Introducerea n baz a unei variabile xhk B, modific programul [X] n [X'] iar funcia obiectiv auxiliar: Z ([ X ']) = Z ([ X ]) + ghk xhk > Z ([ X ]) b) Criteriul de intrare n baz Dac gij < 0, atunci programul [X] nu este optim i el se mbuntete prin intrarea n baz a unei variabile xij B, cu gij < 0. Pentru a micora la maxim funcia obiectiv, va intra n baz variabila ghk care satisface condiia: g hk = inf g ij
i, j g ij < 0

(1.77)

(1.78)

Funcia obiectiv se va modifica cu: z([ X ']) = z([ X ]) + ghk xhk < z([ X ]) c) Criteriul de ieire din baz Pentru a ne menine n mulimea programelor de baz, trebuie ca o variabil s iese din baz. Condiia de ieire este stabilit, ca i n cazul algoritmului simplex, din condiia ca variabilele rmase n baz s rmn pozitive i respectarea restriciilor de tip egalitate. Aplicarea acestei condiii impune ca suma variabilelor xij i,jB pe linia h i coloana k aferente variabilei care intr n baz xhk s rmn constant. ntruct modificarea unei variabile pe o (1.79)

Tehnici de optimizare n energetic

Pag: 29

Metode de optimizare linie sau o coloan conduce la modificri n ntreaga matrice a variabilelor, va trebui s gsim un lan nchis prin variabilele de baz n matricea [X] ncepnd cu poziia hk astfel nct valoarea adugat xhk s fie sczut pe linia h i coloana k i apoi succesiv pe ntreg lanul restriciile rmnd satisfcute. Pentru a nu se ajunge la valori negative ale variabilelor, valoarea cu care se intr n baz xhk va avea valoarea cea mai mic a variabilei din care se scade o valoare (din lanul nchis). Rezult c va iei din baz variabila xpq care satisface condiia: x pq = inf
i , jB i , jlan

{x }
ij

(1.80)

unde prin lan- s-a neles variabilele din lanul nchis din care se scade o valoare. Algoritmul pentru rezolvarea problemei de transport este urmtorul: 1. Se determin un program iniial de baz, de preferin prin metoda costurilor unitare minime. 2. Se rezolv sistemul de ecuaii (1.74) i se determin gij=cij - ui - vj, ijB. 3. Dac toi gij 0, i=1,2,...,m, j=1,2,...,n atunci programul curent este optim i algoritmul nceteaz. 4. Dac gij < 0 atunci programul nu este optim i intr n baz variabila xhk pentru care este satisfcut condiia (1.78). 5. Se formeaz un lan nchis n matricea variabilelor ncepnd cu xhk, marcnd pe fiecare linie i coloan semnul + (ncepnd cu xhk) i - astfel nct restriciile de tip egalitate s nu fie nclcate. Se determin variabila xpq ce va iei din baz cu ajutorul condiiei (1.80). 6. Se trece la pasul 2. Pentru exemplificare, vom arta modul practic de rezolvare n cazul problemei dat n tabelul 1.9. Se ntocmete un tabel de forma 1.12.

Tabelul 1.12 Rezolvarea problemei de transport [X] z([X])=5100 vj 7 [C] / [C*] 8 7 10

Tehnici de optimizare n energetic

Pag: 30

Metode de optimizare ui 100 100 + 0 + 175 75 -1 250 50 100 -3 -1 vj z([X])=4500 100 200 75 75 + ui 0 5 + 3 100 ui 100 200 150 175 125 + 25 75 + 0 0 3 5 4 9 5 11 8 7 6 9 7 6 6 7 2 5 4 9 1 7 7 2 3 1 4 4 4 5 vj 4 4 5 6 6 2 8 7 1 4 6 9 5 4 7 1 6 7 9 6 7 7 2 3 1 4 9 4 4 4 4 5 6 1 2 8 7 1 4 6 9 7 6 2 8 7 5 9 6 4 7 7 3 7 4 9 4 10

250 50 + z([X])=4125

z([X])=3975 ui 100 175 100 0 6

vj 7

2 2 0 3

1 4 1

-2

-2 4

Tehnici de optimizare n energetic

Pag: 31

Metode de optimizare 175 + 125 z([X])=3850 ui 100 50 125 25 150 300 100 0 5 3 4 4 4 5 8 6 6 5 9 3 7 1 6 7 5 9 6 4 7 2 2 3 1 4 4 -1 + 150 8 3 5 vj 4 3 5 1 8 7 2 1 -1 6 9 3 5 4 7 7 1

25 +

In partea stng a tabelului se trece matricea [X]., iar n partea dreapt matricea costurilor [C] i costurile c*ij=ui + vj, ijB. Costurile cij s-au trecut n partea superioar a csuelor, iar costurile c*ij n partea inferioar. Pentru variabilele din baz cele dou costuri sunt egale. diferena cij - c*ij = gij. Se observ c n prima iteraie se putea introduce n baz fie x22 (g22 = -6) sau x24 (g24 = -6) i s-a ales arbitrar x24. Csuele avnd chenarul cu linie dubl indic variabilele din baz, iar cele cu linie ngroat, variabilele xhk care intr n baz. n ultima iteraie gij 0, ijB, i deci soluia este optim. Valoarea ei (3850) este aceeai cu soluia iniial obinut prin metoda costurilor unitare minime, ns programul optim este puin diferit. Ajungerea la acelai program se poate face din ultimul tabel prin introducerea n baz a variabilei x44 pentru care g44 = 0, i deci funcia obiectiv nu se va modifica. Valoarea lui x44 trebuie s fie 25.

Tehnici de optimizare n energetic

Pag: 32

Metode de optimizare 1.3.5. Cazuri deosebite n problema transporturilor a) Problema de transport neechilibrat

ai b j
i =1 j =1

In cazul n care problema de transport este neechilibrat. Pentru echilibrare se procedeaz dup cum urmeaz:

1. Dac disponibilul este mai mare dect necesarul, adic se introduce un beneficiar fictiv Bn+1 care va avea ca necesar diferena: bn +1 = a i b j
i=1 j =1 m n

ai > b j
i =1 j =1

(1.81)

Pentru ca funcia obiectiv s nu fie influenat, costurile cin+1=0, i=1,2,...,m. ai < b j 2. Dac necesarul este mai mare dect disponibilul adic se i =1 j =1 introduce un furnizor fictiv Fm+1 care va avea ca disponibil diferena: a m+1 = b j ai
j=1 i =1 n m m n

(1.82)

Pentru ca funcia obiectiv s nu fie influenat, costurile cm+1j=0, j=1,2,...,n. La determinarea unui program iniial prin metoda costurilor unitare nu se ine seama de costurile nule introduse. b) Degenerarea n problema de transport Prezint n general un interes teoretic, fiind puin probabile n cazurile practice. Degenerarea poate apare atunci cnd o variabil din baz are valoarea zero. Aceast situaie poate apare n dou cazuri: - la determinarea unui program iniial de baz, cnd se poate ntmpla ca disponibilul rmas la un furnizor s egal cu necesarul de la beneficiarul curent, nainte de epuizarea tuturor furnizorilor i beneficiarilor; - n iteraii, cnd, aplicnd criteriul de ieire din baz, n lanul nchis exist dou variabile care ndeplinesc simultan condiiile de ieire din baz.

Tehnici de optimizare n energetic

Pag: 33

Metode de optimizare In ambele situaii, eliminarea degenerrii se face prin considerarea n baz a unei variabile cu valoarea zero. Pentru aceasta toate calculele se fac ca pentru o variabil din baz. c) Rute interzise Dac o rut FhBk este interzis (din diverse motive) este necesar ca xhk=0. Pentru ca aceast restricie s nu mpiedice aplicarea algoritmului, se impune de la nceput un cost ridicat al transportului pentru ruta respectiv: chk > max{cij }
i, j

(1.83)

Dac ruta apare ca interzis dup ultima iteraie, atunci se modific costul chk i se reia algoritmul din punctul curent. De remarcat c dac ah sau bk au valori mari, mai mari dect valoarea dat de (1.84), atunci ruta nu poate fi evitat: ah > 1 m ai 2 i =1 sau bk > 1 n bk 2 j =1 (1.84)

Tehnici de optimizare n energetic

Pag: 34

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