Sunteți pe pagina 1din 11

Probleme de transport

Unitatea de nvare nr. 14


Probleme de transport.

Cuprins Pagina

Obiectivele unitii de nvare nr. 14 2


14.1 Probleme de transport 2
14.2 Lucrare de laborator 9
Lucrare de verificare unitatea de nvare nr. 14 10
Rspunsuri i comentarii la ntrebrile din testele de autoevaluare 11
Bibliografie unitatea de nvare nr. 14 11

1
METODE NUMERICE Curs i aplicaii
Probleme de transport

OBIECTIVELE unitii de nvare nr. 14


Principalele obiective ale Unitii de nvare nr. 14 sunt:

Aplicarea algoritmului rezolvrii problemelor de transport


Transpunerea enunului unei probleme practice n modelul
matematic necesar aplicrii algoritmului problemei de transport

14.1 Probleme de transport

Problema de transport reprezint un caz particular de model de programare liniar i datorit


formei sale particulare, rezolvarea acesteia se face cu algoritmi specifici.
Presupunem c un produs este disponibil n m puncte (depozite, porturi, productori)
A1 , A2 ,..., Am n cantitile a1 , a2 ,..., am uniti de produs. Acest produs este cerut n alte n puncte
(consumatori, magazine) B1 , B2 ,..., Bn n cantitile b1 , b2 ,..., bn uniti de produs. Se cunosc costurile
unitare de transport de la fiecare centru productor la fiecare centru consumator n funcie de distane,
mijloace de transport. Se noteaz cu cij costul unitar de transport de la Ai la B j .
Se pune problema s determinm un plan de transport de la centrele productoare la centrele
consumatoare astfel nct cantitile necesare n centrele consumatoare s fie asigurate n cea mai mare
msur, iar cheltuielile totale de transport s fie minime.

Bj B1 B2 .... Bn disponibil
Ai
A1 c11 c12 .... c1n a1
A2 c21 c22 .... c2n a2
: : : : : :
Am cm1 cm 2 .... cmn am
necesar b1 b2 .... bn

n condiiile problemei ai > 0, b j > 0, cij 0 pot aprea situaiile:


m n
1) Dac ai = b j atunci spunem c problema este echilibrat;
=i 1 =j 1
m n
2) Dac ai > b j , adic disponibilul este mai mare dect cererea, se adaug o coloan, adic
=i 1 =j 1

un centru fictiv de consum Bn +1 , care s absoarb diferena, iar toate costurile unitare de
transport pentru acest centru sunt nule.

2
METODE NUMERICE Curs i aplicaii
Probleme de transport

m n
3) Dac ai < b j , adic cererea total este mai mare dect disponibilul, se adaug o linie,
=i 1 =j 1

adic un depozit fictiv Am +1 , avnd diferen de resurs, iar toate costurile unitare de transport
de la acest depozit sunt nule.

Obiectivul problemei este minimizarea cheltuielilor totale de transport i a penalitilor pltite


consumatorilor.
Vom nota cu xij cantitatea de produs ce se transport din depozitul Ai spre consumatorul B j .
Pentru calcularea cheltuielilor totale de transport, trebuie fcut suma produselor dintre cantitile xij
expediate de la sursa Ai la destinaia B j i costurile unitare de transport cij .
Modelul matematic al problemei de transport echilibrate este:
m n

min( cij xij )


=i 1 =j 1

n
= xij a= i, i 1, m
(1) j =1 ,
m
= xij b= j, j 1, n
i =1

xij 0, i= 1, m, j= 1, n
i este caracterizat de urmtoarele:
- este un model de programare liniar cu m+n restricii i m*n variabile;
m n
- numai m+n-1 restricii sunt liniar independente datorit relaiei ai = b j ceea ce nseamn
=i 1 =j 1

c o soluie admisibil de baz a problemei conine cel mult m+n-1 componente strict pozitive.
De aici, o soluie admisibil care conine exact m+n-1 componente strict pozitive se numete
nedegenerat, iar n cazul n care conine mai puin de m+n-1, degenerat.
- sistemul de restricii este compatibil adic totdeauna exist cel puin o soluie admisibil, de
ai b j
=
exemplu: xij m
= , i 1,=
m , j 1, n ;
ai
i =1

- problema de transport admite soluie optim finit deoarece xij min{ai , b j } .

Rezolvarea problemei de transport are urmtoarele etape:


- determinarea unei soluii admisibile de baz iniial;
- testarea optimalitii unei soluii;
- mbuntirea soluiei.

Metode de determinare a unei soluii admisibile de baz: Au la baz aceleai principii dar difer
prin modul de alegere a ordinii n care se atribuie valori pozitive variabilelor x pq din baz.
Presupunem ca am ales x pq . I se atribuie valoarea x pq = min {a p , bq } . Avem trei cazuri:

3
METODE NUMERICE Curs i aplicaii
Probleme de transport

1) a p < bq , deci x pq = a p i toate celelalte variabile din linia p vor lua valoarea zero. Se nlocuiete bq
cu b=
'
q bq a p i se alege alt variabil de baz din tabela redus (fr linia p).
2) a p > bq , deci x pq = bq i toate celelalte variabile din coloana q vor lua valoarea zero. Se nlocuiete
a p cu a=
'
p a p bq i se scoate din calcule coloana q.
3) a p = bq i tabela se reduce la alegere cu linia p sau coloana q. Dac de exemplu se suprim linia p,
atunci bq devine zero. Se obine o soluie degenerat de baz.
Soluia determinat cu ajutorul algoritmului expus este o soluie de baz. Componentele nebazice
nu se completeaz n tabel cu zero, csuele corespunztoare rmnnd libere, pentru a nu se confunda
componentele nebazice cu eventualele componente bazice nule. Metoda general este particularizat
prin fixarea unei reguli de alegere a variabilelor care intr n baz.
Metoda colului de nord-vest: Regula dup care se decide intrarea n baz a variabilelor este c la
fiecare pas al algoritmului intra n baz variabila situat n csua din colul de N-V al tabelei. Metoda
nu ine seama de costurile unitare de transport, ci numai de cantitile disponibile i necesare.

Metoda elementului minim pe matrice: La fiecare pas al algoritmului intra n baz variabila x pq dac
c pq = min {cij } . Rezult de cele mai multe ori soluii iniiale mai bune, cu costuri totale de transport
i, j

mai mici, dect cele obinute prin metoda colului de N-V. Dac la un moment dat exist dou sau mai
multe csue crora le corespunde acelai cost unitar minim de transport, o vom completa pe aceea
pentru care cantitatea ce urmeaz a fi transportat este mai mare.

Metoda elementului minim pe coloan: ncepnd cu prima coloan intr n baz variabila x p1 dac
c p1 = min {ci1} pn se satisface ntreaga cerere a primului centru consumator. Se trece la coloana a
i

doua. Din coloana j intr n baz variabila x pj pentru care c pj = min {cij } .
i

Metoda distributiv-modificat de obinere a soluiei optime: Conform teoremei fundamentale a


dualitii, o soluie X a problemei de transport (1) va fi optim odat cu soluia modelului dual
corespunztor ei. Primelor m restricii din problema primal le atam variabilele duale ui , i = 1, m i
urmtoarelor n restricii variabilele duale v j , i = 1, n . Variabilele duale sunt oarecare pentru c ele
corespund unor ecuaii n problema primal. Modelul dual se scrie sub forma:
m n

sup( a u
i i + bjv j )

=i 1 =j 1
ui + v j cij
(2)
i 1,=
= m , j 1, n

ui , v j oarecare

4
METODE NUMERICE Curs i aplicaii
Probleme de transport

Introducnd variabilele ecart de compensare, pentru a transforma inegalitile n egaliti, n cele m*n
restricii ale dualei i presupunnd c X este o soluie admisibil de baz nedegenerat a modelului
primal, atunci din teorema ecarturilor complementare, variabilele ecart din modelul dual ce corespund
variabilelor strict pozitive din modelul primal, trebuie s fie nule, deci variabilele duale verific
sistemul de ecuaii: ui + v j = cij . Acesta este un sistem nedeterminat de m+n-1 ecuaii cu m+n
necunoscute, care se rezolv atribuind unei variabile o valoare arbitrar dup care rezolvarea
sistemului va conduce la soluia modelului dual.

Criteriul de introducere a unui vector n baz: A introduce un vector n baz nseamn a face o csu
care este liber n vechea soluie admisibil de baz s devin csu ocupat n noua soluie admisibil
de baz, mbuntit.

Criteriul de eliminare a unui vector din baz: Se scrie mai nti n matricea ce coninea vechea soluie,
o valoare (nedeterminat) n csua ce urmeaz a fi ocupat, apoi pornind din aceasta csua se
determin un circuit ale crui vrfuri se afl numai n csue ocupate i care merge alternativ pe linii i
coloane. Vrfurile se marcheaz cu +,-,+,-,...ncepnd cu csua n care am trecut , indiferent de
sensul de parcurgere ales. Se determin valoarea lui ca fiind egal cu cea mai mic valoare marcat
cu -, pentru ca noua soluie s aib tot componente nenegative. Valoarea se adun la toate
componentele soluiei marcate cu + i se scade din toate componentele marcate cu -, celelalte
componente rmnnd neschimbate. Componenta care a devenit zero iese din baz. Se obine o nou
soluie admisibil de baz, mai bun dect precedenta.

Exemplu:
B1 B2 B3 B4
A1 8 3 5 2 10
A2 4 1 6 7 15
A3 1 9 4 3 25
5 10 20 15 50

1) Se observ c adunnd valorile de pe ultima linie i de pe ultima coloan obinem acelai


rezultat 50, ceea ce nseamn c problema este echilibrat.
2) Se determin o soluie iniial de baz prin metoda colului de N-V, astfel: colul situat n N-V
este completat cu min(5,10)=5. Pe prima coloan, jos, se scade valoarea 5 i rmne 0 ,celelalte
csue rmn necompletate, iar pe prima linie rmne 5. Urmtorul col de N-V este pe linia 1
i coloana 2 i vom alege min(10,5)=5 i aa mai departe pn se ajunge la ultima csu de pe
linia 3 i coloana 4 cu aceeai valoare de completat, i anume, 15.

5 5 10 5 0
5 10 15 10 0
10 15 25 15 0

5
METODE NUMERICE Curs i aplicaii
Probleme de transport

5 10 20 15 50
0 5 10 0
0 0

Putem calcula la acest moment costul pentru cazul soluiei iniiale de baz:
CI = 5 8 + 5 3 + 5 1 + 10 6 + 10 4 + 15 3 = 205
3) Se rezolv sistemul liniar ui + v j =
cij pentru csuele ocupate, dnd uneia dintre variabile o
valoare arbitrar, de obicei se consider u1 = 0 i se determin celelalte.

v1 v2 v3 v4 u1 + v1 =
u1 + v2 =
u1 5 5 10 u2 + v2 =
u2 5 10 15 u2 + v3 =
u3 10 15 25 u3 + v3 =
5 10 20 15 50 u3 + v4 =

4) Pentru variabilele nebazice, csue neocupate, se calculeaz diferenele ui + v j cij . Dac aceste
diferene sunt toate 0 , atunci soluia obinut este optim i problema s-a terminat. Dac nu,
se determin cea mai mare valoare obinut la calculul acestor diferene i acolo unde a fost
gsit se va trece n tabel +.
u1 + v3 c13 = 0 + 8 5 = 3
u1 + v4 c14 =5 x14
u2 + v1 c21 =
2
u2 + v4 c24 =2
u3 + v1 c31 =
2
u3 + v2 c32 =10
Deci, pe poziia (1,4) se trece + i de aici se ncepe formarea circuitului, x14 va fi noua variabil de
baz i prin construcia circuitului vom vedea care valoare iese din baz.

v1 v2 v3 v4

u1 5 5 + 10
u2 5 10 15
u3 10 15 25
5 10 20 15 50

5) Pornind de la csua marcat cu + i mergnd pe linii i coloane obinem elementele care


formeaz circuitul:+,5,5,10,10,15 i marcm valorile alternnd semnele
+,-,+,-,+....
6
METODE NUMERICE Curs i aplicaii
Probleme de transport

5 5- +
5+ 10-
10+ 15-

6) Pentru celulele marcate cu se determin


cea mai mic valoare trecut n aceste csue, adic min(5,10,15)=5 i astfel se obine = 5 .
7) Noua soluie de baz se obine scznd din cantitile csuelor marcate cu i adunnd la
cantitile csuelor notate cu + i avem noul tabel:

5 5
10 5
15 10

Putem calcula acum costul CII = 5 8 + 5 2 + 10 1 + 5 6 + 15 4 + 10 3 = 180 care se observ ca este


mai mic dect costul pentru soluia iniial de baz.
8) Se reia algoritmul de la pasul 3 pentru noua soluie:
3) Se rezolv sistemul:
u1 + v1 =8 u1 =0 v1 =8
u1 + v4 =
2 v4 = 2
u2 + v2 =
1 u3 = 1

u2 + v3 =
6 v3 = 3
u3 + v3 =
4 u2 = 3
u3 + v4 =
3 v2 = 2
4) Se calculeaz diferenele:
u1 + v2 c12 =5
u1 + v3 c13 =2
u2 + v1 c21 =
7
u2 + v4 c24 =2 5 5
10 5
u3 + v1 c31 =8 x31
+ 15 10
u3 + v2 c32 =10

x31 intr n baz

5- 5+
10 5

7
METODE NUMERICE Curs i aplicaii
Probleme de transport

5) Circuitul +,5,5,10 + 15 10-

6) min(5,10)
= = 5.

7) Noua soluie:

10
CIII = 10 2 + 10 1 + 5 6 + 5 1 + 15 4 + 5 3 = 140
10 5
5 15 5

8) Repetm algoritmul:
3) Rezolvm sistemul:
u1 + v4 =
2 u1 =0 v4 =2
u2 + v2 =
1 v2 = 2
u2 + v3 =
6 u2 = 3

u3 + v1 =
1 v1 = 0
u3 + v3 =
4 v3 = 3
u3 + v4 =
3 u3 = 1
u1 + v1 c11 =8 < 0
u1 + v2 c12 =5 < 0
u1 + v3 c13 =2 < 0
4) Se calculeaz diferenele:
u2 + v1 c21 =1 < 0
u2 + v4 c24 =8 < 0
u3 + v2 c32 =10 < 0
Se observa c toate diferenele sunt negative, atunci putem spune c ultimul cost este costul optim, deci
CIII = 140 i se obine pentru:

8
METODE NUMERICE Curs i aplicaii
Probleme de transport

x14 = 10
x22 = 10
x23 = 5
x31 = 5
x33 = 15
x34 = 5

14.2 Lucrare de laborator

S se rezolve problema de transport:

B1 B2 B3 Disponibil
F1 6 8 3 60
F2 4 5 1 40
F3 2 7 9 100
Necesar 70 80 50

Notm cu xij cantitatea de marf din csua (i, j ) . Atunci problema se transform n:
min (6 x11 + 8 x12 + 3 x13 + 4 x21 + 5 x22 + x23 + 2 x31 + 7 x32 + 9 x33 )

x11 + x12 + x13 60


x21 + x22 + x23 40

x31 + x32 + x33 100

x11 + x21 + x31 = 70


x12 + x22 + x32 = 80

x13 + x23 + x33 = 50


x 0
ij
f = [6 8 3 4 5 1 2 7 9]
1 1 1 0 0 0 0 0 0 60

0 0 0 1 1 1 0 0 0 40
0 0 0 0 0 0 1 1 1 100
A= ; b= .
1 0 0 1 0 0 1 0 0 70

0 1 0 0 1 0 0 1 0 80
0 1 50
0 1 0 0 1 0 0
Astfel problema devine problem de programare liniar. Soluia este:
X: 10 50
40
70 30

f min = 780u.m.

9
METODE NUMERICE Curs i aplicaii
Probleme de transport

S se rezolve problemele de transport:

a) B1 B2 B3 B4 Disponibil
F1 7 3 5 8 30
F2 1 4 6 7 60
F3 2 6 1 5 50
F4 5 9 7 4 80
Necesar 30 55 70 60

b)
B1 B2 B3 B4 Disponibil
F1 6 5 4 9 35
F2 4 3 7 5 50
F3 2 6 7 5 55
F4 4 6 3 8 70
Necesar 25 70 90 85

De reinut!
Paii necesari aplicrii algoritmului de rezolvare a problemelor de transport.

Test de autoevaluare
S se rezolve problema:
B1 B2 B3 Disponibil
F1 4 1 3 60
F2 2 5 6 40
F3 1 7 4 100
Necesar 70 20 50

Lucrare de verificare la Unitatea de nvare nr. 14


S se rezolve problema:
B1 B2 B3 Disponibil
F1 3 8 3 60
F2 4 5 6 40
F3 9 7 4 60
Necesar 60 80 50

10
METODE NUMERICE Curs i aplicaii
Probleme de transport

Rspunsuri i comentarii la ntrebrile din testele de


autoevaluare
X: 20 40
40 f min = 250u.m.
70 10 20

Concluzii

Concurena din ce n ce mai dur care i face simit prezena n toate


domeniile activitii economice impune sistemelor de conducere o analiz cu
instrumente tiinifice a tuturor alternativelor existente, cutnd acea variant
de aciune care s conduc la o activitate economic eficient. Pe aceast linie
se nscrie i activitatea din domeniul transporturilor, care are ca obiect de studiu
circulaia mrfurilor i ca obiectiv principal, accelerarea vitezei de circulaie a
mrfurilor i reducerea la maximum a cheltuielilor de transport, transbordare,
descrcare.

Bibliografie

1. Constantinescu Eliodor, Mihai Bogdan, Matlab. Caiet de laborator, Editura


Crizon, Constana, 2008
2. Pelican Elena, Analiz numeric. Complemente, exerciii i probleme.
Programe de calcul, Editura MatrixRom, Bucureti, 2006

11
METODE NUMERICE Curs i aplicaii