You are on page 1of 15

Lavoslav aklovi

Matematiko modeliranje
Poglavlje:

Transportni problem
http://www.math.hr/~caklovic/modeliranje/
Email:caklovic@math.hr

1Distribucija doputena isljkuivo u PDF-formatu

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

je sume trokova na pojedinanim dionicama transporta. Pretpostavlja se


da su nakon transporta ispranjena sva skladita kod proizvoaa i da su svi
trgovci dobili traenu robu tj.
xi1 + xi2 + ..... + xin = ai , i = 1, ..., m
(5.2)

x1j + x2j + ..... + xmj = bj , j = 1, ..., n


m
X

ai =

i=1

n
X

bj .

j=1

1.1. Primarni problem. U primarnom problemu minimiziramo cijenu


transporta z(X)
P
z(X) = i,j cij xij min
(PP)
xij 0, uz uvjete (5.2).
Varijablu X nazivamo primarnom varijablom ili transportom. Transport
koji zadovoljava uvjete 5.2 nazivamo dopustivim transportom. Svako rjeenje primarnog problema nazvat emo optimalnim transportom.
Prve probleme tog tipa rjeavao je francuski matematiar Monge u XVIII
stoljeu ali su njegovi rezultati zaboravljeni i kasnije ponovo otkriveni pa
opet zaboravljeni. Problem koji je on rjeavao nije bio diskretan i stoga je
koristio metode analize. Diskretni modeli pojavili su se negdje oko 1941.
godine i slobodno se moe rei da su do dana dananjeg centralni problemi
primjenjene optimizacije. Problem (PP) prvi je rjeavao F. Hitchcook (1941)
u radu [3].
Transportni problem spada u jednu iru klasu problema koji se rjeavaju slavnom simpleks metodom. Takoer bi ga mogli rjeavati Ford
Fulkersonovom metodom ali je on sam dovoljno interesantan i specifian te
sugerira i posebnu metodu rjeavanja. Kao i dosadanji problemi koje smo
47

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.

Dualni problem je sada maksimizirati:


P
P
z 0 (u, v) = i ui ai + j vj bj max
(DP)
uz uvjete (5.4).
Varijable u, v nazivamo dualnim varijablama ili taksama. Takse koje zadovoljavaju uvjete 5.4 nazivamo dopustivim taksama. Svako rjeenje dualnog
problema zvat emo optimalnom taksom.
Iznose ui i vj moemo shvaati i kao interventne dravne takse za spreavanje monopola u sluaju smanjene konkurencije. Drava intervenira na
tritu s niskim cijenama ui i vj i tako sprjeava umjetno podizanje cijena.
Danas je to esta situacija u sferi prijenosa informacija putem raznih mrea
(mobilna telefonija, intenet,. . . ).
Zadatak 28. Uvjeti (5.2) nisu nezavisni. Naite matricu sistema i dokaite da je njen rang m + n 1.
Zadatak 29. Zapiite matricu sistema nejednakosti (5.4) i uoite da je
to transponirana matrica od matrice iz sistema (5.2) .
2. Dualnost
2.1. Slaba dualnost. S pozicije konkurencije prirodno je uvjet (5.4)
forsirati do jednakosti ui + vj = cij gdje god je to mogue, zasigurno tamo
gdje je xij > 0. Svih mn prethodnih jednakosti ne moe biti zadovoljeno jer
imamo samo m + n nepoznanica. Prema tome, vrijedi nejednakost z 0 z
jer je primarni transport skuplji na svakoj dionici zasebno. Preciznije:
P
P
z 0 (u, v) = i ui ai + j vj bj
P
P
P
P
= i ui ( j xij ) + j vj ( i xij )
(5.5)
P
= i,j (ui + vj )xij
P
i,j cij xij = z(X)
Slaba dualnost izraava injenicu da je zarada konkurencije manja ili jednaka
od cijene primarnog transporta i to je bila posljedica nejednakosti (5.4).

2. DUALNOST

49

2.2. Jaka dualnost. Da li je mogue postii jednakost u (5.5) i koja bi


bila ekonomska interpretacija? Oito je da jednakost vrijedi ako i samo ako
je
(ui + vj )xij = cij xij , i, j,
odnosno ako i samo ako vrijedi implikacija
xij > 0 ui + vj = cij

(5.6)

Za konkurenciju to znai da nije u mogunosti vie zaraditi jer je postigla


maksimalnu moguu zaradu. S pozicije prijevoznika iz primarnog problema
to znai da je konkurent iscrpio sve mogunosti za organizaciju jeftinijeg
prijevoza. Ova druga konstatacija nije sasvim evidentna i predmet je interesa
sljedeeg teorema. Uvjet (5.6) nazivamo uvjetom optimalnosti.
Teorem 5.1 (Teorem dualnosti). Neka je X dopustivi transport i u, v
dopustive takse. Tada je ekvivalentno:
i) X je optimalni transport primarnog problema (PP) i u, v su optimalne takse dualnog problema (DP).
ii) Cijena transporta jednaka je zaradi konkurencije tj. z(X) = z 0 (u, v).
iii) Vrijedi uvjet optimalnosti (5.6)
Dokaz. Dokazati emo ekvivalenciju i) ii) i ekvivalenciju ii) iii).
ii) = i) Pretpostavimo da je z(X) = z 0 (u, v). Zbog slabe dualnosti je
z 0 (u0 , v 0 ) z(X) = z 0 (u, v) z(X 0 )
za svaki dopustivi transport X 0 i svake dopustive takse u0 , v 0 . Iz prethodne
nejednakost slijedi da je z(X) z(X 0 ) za svaki dopustivi transport X 0 ,
odnosno da je X optimalni transport. Na isti nain su i u, v optimalne
takse.
i) = ii) Zbog slabe dualnosti je z 0 (u, v) z(X 0 ) za svaki dopustivi
transport X 0 pa je evidentno z(X) z(X 0 ). Na isti nain se dokae i da su
u, v dopustive takse.
ii) = iii) U formuli (5.5) dakle pretpostavljamo da stoji jednakost. To
znai je
X
X
(ui + vj )xij =
cij xij
i,j

i,j

odnosno
X

(cij ui vj )xij = 0.

i,j

Kako je svaki sumand nenegativan (dopustivost dualnih varijabli) i njihova


suma je jednaka nuli to moe biti ispunjeno samo ako je svaki sumand jednak
nuli odnosno ako vrijedi (5.6).
iii) = ii) slijedi direktno iz formule (5.5).

50

5. TRANSPORTNI PROBLEM

x x
x x

x x

x x x x
x x x

Tablica 3.1. Forma nedegeneriranog baznog transporta.

3. Algoritam za rjeavanje transportnog problema


Od algoritma za optimizaciju oekujemo da:
- polazi od nekog transporta;
- testira transport na optimalnost i pronalazi bolji ako ovaj nije optimalan.
Teorem dualnosti daje odgovor na pitanje optimalnosti i posluiti e kao
test za zaustavljanje.
3.1. Raunanje poetnog transporta. Opisat emo algoritam poznat pod nazivom metoda sjevero-zapadnog ugla. Osnovna ideja metode je
da se matrica transporta popunjava poevi od gornjeg lijevog (sjeverozapadnog) ugla i to na taj nain da se ispazni prvo skladite ili zadovolji prvi
naruilac; ovisno o tome koji je broj vei a1 ili b1 . Ako je a1 > b1 zadovoljit
emo zahtjev prvog kupca iz prvog skladita. To znai da prvi stupac izgleda

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;

3. ALGORITAM ZA RJEAVANJE TRANSPORTNOG PROBLEMA

51

Test optimalnosti: Testirati primarne i dualne varijable na optimalnost;


Optimizacija: Ako transport nije optimalan nai novi transport s
manjom cijenom.
3.2.1. Test optimalnosti. Za test optimalnosti potrebno je provjeriti
uvjete
(Slaba Dualnost)

ui + vj cij za svaki i = 1, . . . , m; j = 1, . . . , m,

(Jaka Dualnost)

xij > 0 ui + vj = cij .

Uvjet jake dualnosti, zbog svog oblika (jednadba) mogue je ugraditi u


algoritam, tako da za test optimalnosti ostaje samo provjeriti slabu dualnost.
3.2.2. Odreivanje dualnih varijabli. Broj jednadbi u implikaciji Jaka
Dualnost ovisi o broju netrivijalnih dionica u transportu X. Broj nepoznanica je uvijek isti i iznosi m + n, to vodi na zakljuak da broj netrivijalnih
dionica ne bi smio biti vei on m + n. U sluaju da je taj broj vei od m + n
moglo bi se desiti da sistem jednadbi nema rjeenja zbog preodreenosti.
Finija analiza (v. zadatak 38 na stranici 58.) pokazuje da sistem
ui + vj cij

za i = 1, . . ., m; j = 1, . . ., n

ima rang m + n 1, to znai da dualne varijable nisu jednoznano odreene


tim sistemom. To nas meutim ne treba zabrinjavati jer se dualne varijable
uvijek javljaju unutar sume ui + vj . Jedinstvenost emo osigurati uvjetom
u1 = 0.
Dopustivi transport X nazivamo baznim transportom ako ima najvie
m + n 1 netrivijalnih komponenata. Bazni transport je nedegeniran ako
je sistem jednadbi
()

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.

3. ALGORITAM ZA RJEAVANJE TRANSPORTNOG PROBLEMA

53

ii) iii) Dovoljno je dokazati da je graf povezan. U suprotnom, postoji


K 2 komponenti povezanosti grafa s vrhovima
Ik P
{1, . . ., m}, Jk
P
{1, . . ., n},P
k = 1, . . . ,P
K tako da vrijedi k #Ik = m,
k #Jk = n i za
svaki k je iIk ai = jJk bj i restrikcija transporta na k-tu komponentu
je nedegenerirani transport.
Zbog i) ii) u svakoj komponenti ima #Ik + #Jk 1 lukova i ukupan
broj lukova u grafu transporta iznosi
K
X

(#Ik + #Jk 1) = m + n K,

k=1

to je u suprotnosti s pretpostavkom s ii).

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

Drugi korak: Izaberi takse ui i vj , s u1 = 0, tako da je ui + vj = cij


na rutama koje koristi transport iz prvog koraka.
Trei korak: Testiraj da li je ui + vj cij i na prostalim rutama.
Ako da Stop . Inae, nai dionicu i, j s najveom razlikom ui +
vj cij .
etvrti korak: Pronaenom dionicom poslati koliinu robe s i prilagoditi transporte na prijanjim dionicama na xij s tako da budu
zadovoljene sve narudbe bj s isporukama ai .
Peti korak: Odaberi s tako da je poiljka xij s = 0 na jednoj od
starih dionica, s tim da ne postane negativna na preostalim. Ponovi
Drugi korak.
Ilustrirajmo algoritam na sljedeem primjeru. Podaci su:
Primjer 5.5.
Proizvodnja: Potranja:
a1 = 4
a2 = 7

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

x11 x12 x13

x21 x22 x23

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 .

Cijena polaznog transporta je z(X) = 5 2 + 3 2 + 4 1 + 3 6 = 38.


Dualne takse odredit emo iz sistema jednadbi . Zaokruene cijene u
matrici cijena odgovaraju netrivijalnim komponentama transporta xij > 0:

3. ALGORITAM ZA RJEAVANJE TRANSPORTNOG PROBLEMA

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

U prvom retku desno u1 + v3 = 2 je vee od c13 = 1. To samo znai da


na prvi izbor transporta nije optimalan. Da bi pronali jeftiniji transport
otvaramo novu dionicu x13 i aljemo s jedinica robe tom jedinicom. Podatak
x13 je sada jednak s. Treba korigirati dobavu od ostalih proizvoaa; u ovom
sluaju x23 postaje 6 s. To poveava x22 za s i smanjuje x12 za s i time su
promjene zavrene:
X 2
3
6
4

2 2s

0 1+s 6s

Trenutano je otvoreno pet dionica, ali izborom s = 2 opet e biti koritene


samo etiri,
X 2 3 6
4

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

Slaba dualnost je zadovoljena jer je ui + vj cij za svaki i, j pa teorem


dualnosti garantira optimalnost novog transporta X i dualnih taksi u, v.
Cijena novog transporta je z(X) = 5 2 + 1 2 + 4 3 + 3 4 = 36, a zarada
konkurenta je z 0 (u, v) = 4 0 + 7 2 + 5 2 + 3 2 + 6 1 = 36. Dakle, dualnost
je postignuta.
Teorem 5.6. Ako je transport u svakom koraku algoritma nedegeneriran
onda algoritam zavava u konano mnogo koraka.
Dokaz. Dovoljno je vidjeti da je pad cijene transporta u koraku optimizacije strogo vei od nule. Kako se radi o diskretnim vrijednostima, a cijena
transporta je omeena odozdo to dokazuje tvrdnju.

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

Taj je transport degeneriran i nije teko vidjeti da je cijena tog transporta


minimalna i iznosi z(X) = 3. Dakle, taj je transport optimalan.
Na algoritam ga medjutim ne moe prepoznati kao takvog jer nije u
stanju izraunati dualne varijable koje su nune za testiranje optimalnosti.
Zbog degeneriranosti imamo m + n 2 = 4 jednadbe za odrediti m + n = 6
dualnih varijabli. Upravo ta neodreenost zbunjuje algoritam. Pogledajmo
detaljnije raun u ovom sluaju. Sistem jednadbi () odreen je tabelom
ui + vj
u1
u2
u3

v1 v2 v3
0

0
0 3

Nula u gornjem lijevom kutu daje u1 = v1 = 0. Donji desni blok u matrici


jednoznano odredjuje dualne varijable v2 i v3 ako specificiramo vrijednost
za u2 . Ovisno o toj vrijednosti algoritam moe i ne mora prepoznati taj
transport kao optimalan.
Za vrijednost u2 = 0 dobivamo v2 = 0, u3 = 0, v3 = 3 te (0, 0, 3) za prvi
redak matrice (ui + vj ) i (0, 0, 0) za prvi stupac. Algoritam bi ustanovio

4. DEGENERACIJA.

57

da je 3 = u1 + v3 > c13 = 2 i traio novi transport s netrivijalnom dionicom


x13 = 1 =: s. Novi transport je
X
1
3
2

1
0
0
1

4
0
3
1

1
1
0
0

i cijena transporta je porasla na z(X) = 7.


Za vrijednost u2 = 1 dobije se v2 = 1, u3 = 1, v3 = 2 te (0, 1, 2) za
prvi redak matrice (ui + vj ) i (0, 1, 1) za prvi stupac. Slaba dualnost je sada
zadovoljena jer je ui + vj cij i, j to pokazuje da je polazni transport
optimalan.
Iz primjera se vidi da u sluaju degeneracije transporta nije priori jasno
to initi. U praktinim situacijama moe se desiti da je transportni problem
degeneriran ali algoritam do rjeenja doe preko nedegeneriranih transporta
i spomenuta potekoa ne doe do izraaja.
4.1. Razrjeenje degeneracije. U principu postoje dva mogua izlaska iz spomenutih potekoa u primjeni algoritma.
Jedan je lokalnog karaktera, to znai da kod nailaska na degenerirani
transport pametnim izborom novih dionica traimo transport s niom (ili
istom) cijenom koji vodi k rjeenju. Takav pristup razrjeenju degeneracije
zahtijeva dodatno obogaivanje koraka optimizacije algoritma.
Drugi mogui izlaz je zadanom problemu pridruiti novi transportni problem koji nije degeneriran tj. nema degeneriranih transporta i ima isto rjeenje kao polazni problem. Na prvi pogled taj je pristup kompleksan jer
zahtjeva provjeravanje degeneriranosti problema tj. provjeravanje svakog dopustivog transporta, to je absurdno u svakom pogledu.
Srednji put izgleda najrazumniji. On kombinira oba pristupa i tek kod
nailaska na degenerirani transport definira novi transportni problem koji proiruje stari i novi transport, s istom cijenom, koji je nedegeneriran i ukljuuje u sebi stari transport. Ilustrirajmo to na primjeru.
Primjer 5.8. Pretpostavimo da smo tokom rjeavanja transportnog problema naili na transport iji je graf sastavljen od dvije (ili vie) komponente
povezanosti tj. ima m + n 2 (ili manje) netrivijalne dionice kao na skici.
... SKICA ...
Sada kreiramo novi problem na taj nain da izmislimo novog trgovca s potranjom od toliko jedinica robe koliko ukupno ima skladita i kapacitet
svakog skladita poveamo za jedan. Cijena dostave do novog trgovca neka
je jednaka nuli. Time smo kreirali novi problem i novi transport koji je nedegeneriran jer je graf novog transporta stablo. Sada moemo primijeniti na
algoritam.
Sada moemo formulirati poopenje teorema 5.6. Dokaz ostavljamo itaocu.
Teorem 5.9. Uz nadopunu algoritma kao u gornjem primjeru postupak
zavrava u konano koraka.

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

s m blok-stupaca. U prvom blok-retku sve su matrice tipa mn, a u drugom


blok-retku se ponavlja jedinina matrica reda n.
Gaussovom metodom eliminacije lako se sada izrauna rang matrice.
Prvo ponitimo sve jedinine matrice u drugom blokretku (osim na mjestu
2, 1) dodavanjem prvog blok-stupca preostalim blok-stupcima mnoei ga
prije toga s brojem 1. Sada je lako uoiti da je prvi redak zavisan od
posljednjih n dok su ostali retci linearno nezavisni.
Zadatak 39. Za raun ranga matrice A iz prethodnog zadatka iskoristite
tvrdnju da je rang matrice incidencije usmjerenog grafa jednak broju vrhova
umanjenom za 1.
Uputa. Iskoristite trik iz dokaza teorema 5.4.

Zadatak 40. Dokaite da je svaki transport transportnog problema s


podacima a1 = 2, a2 = 4, b1 = b2 = b3 = 2 degeneriran.
Uputa. Zbog propozicije 5.3 je transportni problem degeneriran. Treba
pokazati da ne postoji transport s etiri netrivijalne dionice.

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.

Zadatak 43. Dokaite da se svaki transport moe zapisati kao konveksna


kombinacija baznih transporta.
P
P
Zadatak 44. Rijeite transportni problem ako je i ai > j bj , tj. ako
na skladitima ima vie robe nego se potrauje.
Uputa. Izmislite fiktivnog trgovca koji e preuzeti sav viak robe i proirite
matricu cijena tako da dostava tom trgovcu bude besplatna.

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

You might also like