Professional Documents
Culture Documents
Transpcaklovic PDF
Transpcaklovic PDF
Matematiko modeliranje
Poglavlje:
Transportni problem
http://www.math.hr/~caklovic/modeliranje/
Email:caklovic@math.hr
Transportni problem
1. Formulacija problema
Transportnu mreu, jednako kao i sparivanje, moemo modelirati na bipartitnom grafu. Spojnice povezuju m proizvoaa s n prodajnih mjesta
i cij su zadane cijene prijevoza jedinine robe od i-tog proizvoaa do jtog trgovca. Maksimalne mogunosti proizvoaa, ponuda, su a1 , ...., am ,
a zahtjevi prodaje, potranja b1 , ...., bn jedinice robe. Nepoznanice su veliina poiljke xij 0 na dionici transporta od proizvoaa i do trgovca j.
Za razliku od problema maksimalnog toka ovdje su odreene cijene umjesto
kapaciteta u transportnoj mrei. Cijena (troak) ukupnog prijevoza
X
(5.1)
z(X) =
cij xij
i,j
ai =
i=1
n
X
bj .
j=1
48
5. TRANSPORTNI PROBLEM
promatrali, i transportni problem ima dualnu formulaciju. Od metode rjeavanja je stoga prirodno zahtijevati da istodobno rjeava i primarnu i dualnu
zadau kao to je to bilo kod sparivanja i mrenih tokova.
1.2. Dualni problem. Dualni problem opisuje ponaanje drugih sudionika na tritu i posljedica je trine konkurencije. Konkurent nudi uslugu
prijevoza i za tu uslugu trai od proizvoaa i novani iznos ui po jedinici
preuzete robe, a od trgovca j trai novani iznos vj po jedinici isporuene
robe. U sluaju da on preuzima cijelu distribuciju njegova zarada je
m
n
X
X
(5.3)
z 0 (u, v) =
ui ai +
vj bj .
i=1
j=1
Ako su ui i vj veliki, tj. ako konkurent eli lako zaraditi onda se moe desiti
da nije konkurentan i gubi posao. Nuni uvjet za konkurentnost je sljedei
zahtjev:
(5.4)
ui + vj cij za svaki i, j.
2. DUALNOST
49
(5.6)
i,j
odnosno
X
(cij ui vj )xij = 0.
i,j
50
5. TRANSPORTNI PROBLEM
x x
x x
x x
x x x x
x x x
b1 x12
0
0
Sada odreujemo x12 (opet od sjeverozapadnog ugla) na isti nain. Ako je
a1 < b1 onda emo prvo isprazniti skladite 1 pa prvi redak izgleda
a1 0 0 0 0
x21
nakon ega se odreuje x21 (opet od sjeverozapadnog ugla) na isti nain.
U sluaju da je a1 = b1 ostatak prvog retka i ostatak prvog stupca ispunjeni su nulama i matrica transporta e biti blok dijagonalna matrica.
Takav je transport degeneriran i stvara potekoe u raunu koje emo naknadno raspraviti. Za sada pretpostavljamo da niti u jednom trenutku ne
ispraznimo istodobno skladite i zadovoljimo naruioca osim na kraju, tj. na
mjestu (m, n). Dobivena matrica transporta ima tono m + n 1 element
razliit od nule i ima formu kao u tabeli 3.1.
3.2. Korak optimizacije. U koraku optimizacije imamo tri zadatka:
Odreivanje dualnih varijabli: Za zadani transport X odrediti
dualne varijable u, v;
51
ui + vj cij za svaki i = 1, . . . , m; j = 1, . . . , m,
(Jaka Dualnost)
za i = 1, . . ., m; j = 1, . . ., n
ui + vj = cij , xij 6= 0
u uvjetu jake dualnosti maksimalnog ranga tj. ranga m+n1. Ako se dogodi
da sistem jednadbi () ima rang manji od m + n 1 takav transport zvati
emo degeneriranim transportom. Primijetimo da u sistemu jednadbi ()
ima toliko jednadbi koliko X ima netrivijalnih komponenata.
Lema 5.2. Ako je X nedegenerirani bazni transport onda su inducirane
dualne varijable u, v jednoznano odreene uz uvjet u1 = 0. Tada je zadovoljen i uvjet optimalnosti i vrijedi
z 0 (u, v) = z(X)
Dokaz. Znog nedegeneriranosti X sistem jednadbi () ima jedinstveno
rjeenje, a zbog njegove bazinosti u (5.5) imamo jednakost lijeve i desne
strane, tj. z 0 (u, v) = z(X).
Pitanjem egzistencije baznog transporta bavit emo se kasnije. Za sada
pretpostavljamo da je polazni transport nedegenerirani bazni transport. Rjeavanjem sistema jednadbi () s dodatnim uvjetom u1 = 0 jednoznano su
odreene dualne varijable koje emo zvati dualnim varijablama induciranim
transportom X. Ako transportni problem ima bar jedan degenerirani transport takav emo problem zvati degeneriranim. Degeneracija problema
stvara potekou u odreivanju induciranih dualnih varijabli ako naiemo
52
5. TRANSPORTNI PROBLEM
na degenerirani transport. Stoga je opravdano pitanje da li je mogue a priori ustanoviti degeneriranost problema. O tome govori sljedea propozicija.
Propozicija 5.3. Transportni problem je degeneriran ako i samo ako
postoje (strogi) podskupovi I {1, . . ., m}, J {1, . . ., n} tako da je
X
X
ai =
bj .
iI
jJ
Dokaz. Nunost. Pretpostavimo da postoje I i J s navedenim svojstvom. Renumeracijom moemo postii da su to poetni indeksi tj. da
i0
/ I i0 > i, i I i j 0
/ J j 0 > j, j J. Tada metoda sjeverozapadnog ugla daje transport ija je matrica, gledana kao blok matrica,
A 0
X=
,
0 B
gdje je A tipa card(I) card(J). U obje matrice ima najvie m + n 2
netrivijalnih matrinih elemenata pa je transport degeneriran.
Dovoljnost. Neka je X degenerirani bazni transport. U terminima grafa
tog transporta postoji najvie m + n 2 bridova u grafu s m + n vrhova. To
znai da je graf nepovezan. Uoimo jednu komponentu povezanosti i indekse
polazita lukova u toj komponenti skupimo
u skup
P
P I, a indekse dolazita u
skup J. Tada I i J zadovoljavaju iI ai = jJ bj jer se permutacijom
redaka i stupaca matrica X moe svesti na blok matricu.
Teorem 5.4. Neka je X bazni transport. Tada je ekvivalentno:
i) X je nedegeneriran.
ii) X ima tono m + n 1 netrivijalnih komponenti.
iii) Pripadni graf od X je stablo.
Dokaz. i) ii) Neka je X nedegenirani transport. Ako X ima manje
od m+n1 netrivijalnih komponenata onda sistem () nuno ima rang manji
od m + n 1 jer ima manje od m + n 1 jednadbi pa je X degeneriran to
je u kontradikciji s pretpostavkom.
iii) ii) Ako je pripadni graf stablo onda u tom grafu ima tono m +
n 1 spojnica koje korespondiraju netrivijalnim komponentama transporta.
iii) i) Sistem jednadbi () uz zamjenu ui ui moemo pisati kao
ui + vj = cij
za svaki luk (i, j) grafa. Drugim rijeima, ako s A oznaimo matricu incidencije grafa, onda je sistem jednadbi () ekvivalentan s
u
A
=c
v
gdje je c stupac cijena koje odgovaraju lukovima grafa a vorove smo numerirani tako da prvo dolaze skladita, a zatim trgovci.
Ako je graf stablo onda je r(A) = m + n 1 to znai da sistem () ima
rang m + n 1 pa je X nedegeneriran.
Ako je X nedegenerirani transport tada je r(A) = m + n 1 to povlai
da je graf povezan i u njemu ima bar m + n 1 lukova. Meutim, X je bazni
transport pa zakljuujemo da ima tono m+n1 netrivijalnih komponenata.
Dakle, graf je stablo.
53
(#Ik + #Jk 1) = m + n K,
k=1
3.2.3. Optimizacija. Neka je X nedegenerirani bazni transport i u, v varijable inducirane tim transportom. Prema teoremu dualnosti je X optimalan
ako je zadovoljena slaba dualnost jer je jaka dualnost zadovoljena po konstrukciji. U suprotnom, X nije optimalan i elimo konstruirati novi transport
s manjom cijenom. U tu svrhu uoimo dionicu (i, j) na kojoj je naruena
slaba dualnost, tj.
ui + vj cij > 0.
Trenutani transport ima trivijalnu komponentu na toj dionici. Naruena
slaba dualnost, ekonomski gledano, kae da je konkurencija skuplja na toj
dionici i otvaranjem transpota na njoj dovelo bi primarnog transportera
u prednost. Hoe li ukupna cijena transporta pasti ovisi i o organizaciji
prijevoza na preostalim dionicama. Cijena z(X) novog transporta e pasti u
odnosu na staru cijenu ako se smanji razlika
X
(5.7)
z(X) z 0 (u, v) =
(cij ui vj )xij
i,j
uz nepromijenjene dopustive takse. Tehniki gledano, reorganizacija transporta je sljedea. Cilj nam je otvoriti novu dionicu od i-tog skladita
do j-tog trgovca s koliinom robe s. Trenutano je skladite prazno jer je
transport X ispraznio sva skladita, pa je potrebno s jedinica robe vratiti od
j-tog trgovca natrag u neko skladite, recimo k-to, koje mu je robu isporuilo.
Sada k-to skladite treba isprazniti poveanjem transporta na dosadanjoj
dionici (k, l), l 6= j. Istiemo zahtjev na dosadanjoj dionici jer su sve
takve saturirane i njihov doprinos (cij ui vj )xij u razlici 5.7 ne ovisi o
xij i jednak je nuli. Trgovac l ima sada vika robe koju treba vratiti u neko
skladite, itd.. . . Pitanje je sljedee: Da li je mogue zatvoriti put i vratiti
se natrag u skladite i koristei samo saturirane dionice starog transporta.
Odgovor je povrdan i posljedica je leme ?? jer je graf pridruen transportu
X stablo. Dodavanje novog luka (i, j) tom stablu generira ciklus u kojem su
svi lukovi osim (i, j) iz stabla, to jest saturirani. S ciljem ubrzanja algoritma
dionicu (i, j) emo birati tako da je
ui + vj cij = max(uk + vl ckl ).
k,l
Algoritam:
Prvi korak: Zadovoljiti zahtjeve bj od proizvoaa ai s najvie m +
n 1 netrivijalnih dionica xij > 0.
54
5. TRANSPORTNI PROBLEM
Cijene:
b1 = 2
b2 = 3
b3 = 6
5 3 1
8 4 3
U primjeru je m + n 1 = 4. Pogledajmo prvo kako radi algoritam sjeverozapadnog ugla za odreivanje polaznog transporta. Podatke upisujemo u
matricu transporta
X
u kojoj je suma elemenata po retcima jednaka ai , a suma po stupcima je jednaka bj . Za poetak promatrajmo bilo koje etiri poiljke koje zadovoljavaju
taj uvjet. Sada odredimo x11 = 2 u sjeverozapadnom uglu:
X 2
2 x12 x13
0 x22 x23 ,
a zatim
X 2
0 x22 x23 ,
i napokon
X 2 3 6
4
2 2 0
0 1 6 .
55
v1 = 5 v2 = 3 v3 = 2
C=
5
3
1
8
4
3
u1 = 0
u2 = 1
Ako odaberemo u1 = 0 preostale etiri takse je jednostavno odrediti. Napomenimo da je uvjet optimalnosti zadovoljen zbog leme 5.2 pa ostaje jo
samo provjeriti da li je ui + vj cij na svim dionicama. U ovom sluaju to
nije:
(cij ) =
5
3
1
8
4
3
usporedimo s (ui + vj ) =
5
3
2
6
4
3
2 2s
0 1+s 6s
2 0 2
0 3 4 .
Konkurencija preispituje svoje takse i trai mogunost da ih smanji kako bi
bila konkurentna. Na novim dionicama opet se rjeava sistem ():
v1 = 5 v2 = 2 v3 = 1
C=
5
8
1
4
3
3
u1 = 0
u2 = 2
1
3
56
5. TRANSPORTNI PROBLEM
Ako s X i X 0 oznaimo stari i novi transport tada je, prema koraku etiri
i pet algoritma, novi transport nastao is starog dodavanjem ciklusa stablu
transporta X u kojem su sve dionice (ciklusa) saturirane, osim novo otvorene
dionice (i, j). Pad cijene transporta je
z(X) z(X 0 ) = s cij cjk + ckl + crs csi
= s cij vj uk + uk + vl + ur + vs vs ui
= s cij vj ui ,
to je strogo negativno prema koraku tri algoritma.
4. Degeneracija.
Opisani algoritam za rjeavanje transportne zadae polazi od nedegeneriranog baznog transporta koji jednoznano odreuje inducirane dualne
varijable. Ako to nije sluaj, znai da je polazni transport degeneriran. Evo
primjera takvog transporta i potekoa koje on uzrokuje.
Primjer 5.7. Nai optimalni transport ako je zadana matrica cijene
0 2 2
C= 5 0 5
5 0 3
Zalihe su a1 = 1, a2 = 3, a3 = 2 i potranja b1 = 1, b2 = 4, b3 = 1. Metoda
sjeverozapadnog ugla daje polazni transport:
X0
1
3
2
1
1
0
0
4
0
3
1
1
0
0
1
v1 v2 v3
0
0
0 3
4. DEGENERACIJA.
57
1
0
0
1
4
0
3
1
1
1
0
0
58
5. TRANSPORTNI PROBLEM
5. Zadaci i nadopune
Zadatak 30. Pitanje se odnosi na primjer 5.5 iz teksta. Za koju cijenu
c13 bi transport dobiven pomou metode sjeverozapadnog ugla bio optimalan?
Zadatak 31. Ako bi cijena c21 bila 4 umjesto 8, zbog kojeg razloga bi
algoritam izabrao dionicu x12 kao novu? Odredite vrijednost od s u tom
koraku? Da li je novi transport optimalan?
Zadatak 32. Pretpostavimo da su zaliha i narudba a1 = 8, a2 = 5, b1 =
1, b2 = 6, b3 = 6. Naite (na sjeverozapadu) etiri dionice koje zadovoljavaju
uvjete transporta.
9 3 6
Zadatak 33. Neka je matrica cijene C =
.
3 1 2
Naite one cijene za koje je ui +vj = cij na dionicama iz prethodnog zadatka.
Da li je ui + vj cij na svim dionicama? Ako nije, koju novu dionicu treba
otvoriti? Dovrite problem!
Zadatak 34. Rijeite 3 3 transportni problem za
1
3
4 5 1
a = 5 , b = 4 , cij = 4 4 6 .
7
5
6 4 5
Zadatak 35. Pretpostavimo da su ukupne zalihe a1 = 4, a2 = 8 takve
da prelaze zahtjeve b1 = 2, b2 = 3, b3 = 6. Uvedite fiktivni zahtjev b4 = 1
s cijenama transporta c14 = c24 = 0. Koje je optimalno rjeenje s cijenama
kao u tekstu.
Zadatak 36. Ako je matrica cijena 44 jedinina matrica, i ai = bj = 1
za sve i i j, kolika je minimalna cijena transporta?
Zadatak 37. Neka su sve zalihe i narudbe ai = bi = 1, i sve cijene cij
imaju vrijednost 0 ili 1. Objasnite zato transportni problem tada postaje
problem sparivanja. Da li sparujemo jedinice u C ili neto drugo?
Zadatak 38. Dokaite da su matrica sistema (5.2) i matrica sistema
ui + vj = cij medjusobno transponirane. Njihov je rang m + n 1.
Uputa. Nepoznanice xij svrstajmo u niz x11 , x12 , . . . , x1n , x21 , . . . , xm1 ,
. . . , xmn . Matrica sistema je sada
5. ZADACI I NADOPUNE
59
1 1 1 0 0 0
0 0 0
0 0 0 1 1 1
.
.
.
.
.
.
0 0 0 0 0 0
A=
1
1
1
1
.
.
.
.
.
.
0 0 0
1 1 1
Zadatak 41. Naite sve bazne transporte u prethodnom zadatku i dokaite da ih ima tono tri. Koji su to?
Zadatak 42. Dokaite da je skup svih transporta konveksan skup.
Uputa. Skup svih transporta je skup rjeenja sistema linearnih nejednadbi xij 0 i sistema jednadbi 5.2 koji je konveksan kao presjek konveksnih skupova.
Bibliografija
[1] N. Antoni and M. Vrdoljak. Mjera i intregral. PMFMatematiki odjel, Zagreb, 2001.
[2] H. Brezis. Analyse fonctionnelle, Thorie et application. Collection Mathmatiques
appliques pur la matrise (Sous la direction de P. G. Ciarlet et J. L. Lions). Masson,
Paris, 1983.
[3] F. Hitchcook. The distribution of a produce from several sources to numerous localities.
Journal of Mathematical Physics, 20:224230, 1941.
[4] S. Kurepa. Konano dimenzionalni vektorski prostori i primjene. Tehnika knjiga, Zagreb, 1967.
[5] S. Kurepa. Matematika analiza. Drugi dio. Funkcije jedne varijable. Tehnika knjiga,
Zagreb, 1971.
[6] L. Lovsz and M. D. Plummer. Matching Theory, volume 29 of Annals of Discrete
Mathematics. NorthHolland, 1986.
[7] A. Rapoport. Decision Theory and Decision Behaviour, Normative and Descriptive
Approaches, volume 15 of Series B: Mathematical and Statistical Methods. Kluwer,
Dordrecht, The Netherlands, 1989.
[8] L. aklovi. Zbirka zadataka iz linearne algebre. kolska knjiga, Zagreb, 1989.
115