You are on page 1of 107

SVEUČILIŠTE U ZAGREBU

FAKULTET PROMETNIH ZNANOSTI


ZAVOD ZA TRANSPORTNU LOGISTIKU

dr. sc. Ratko Stanković, doc.


dr. sc. Jasmina Pašagić Škrinjar, prof.

LOGISTIKA I TRANSPORTNI MODELI


Autorizirana predavanja

Zagreb, studeni 2015.

1
Sadržaj
 1. Uvod ............................................................................................................................. 4
 2. Elementi logističkih sustava......................................................................................... 5
 3. Osnovni pojmovi o modelima ...................................................................................... 7
3.1. Pojam modela općenito ....................................................................................... 7
3.2. Vrste modela ....................................................................................................... 7
3.3. Primjena matematičkih modela u logistici ......................................................... 7
 4. Optimiranje i postupak modeliranja ............................................................................. 9
 5. Osnovna načela modeliranja ...................................................................................... 12
 6. Rješavanje logističkih problema matematičkim modeliranjem ................................. 14
6.1. Primjena linearnoga programiranja .................................................................. 14
6.2. Analiza osjetljivosti matematičkoga modela .................................................... 15
6.3. Primjer rješavanja logističkoga problema optimiranjem linearnoga modela ... 19
 7. Problem alokacije resursa .......................................................................................... 22
7.1. Primjer problemskoga zadatka alokacije resursa u planiranju proizvodnje ..... 22
7.1.1. Logički opis problema .......................................................................... 23
7.1.2. Matematički model problema ............................................................... 24
7.1.3. Optimalno rješenje problema ................................................................ 25
7.1.4. Analiza osjetljivosti .............................................................................. 26
7.2. Problem operativnoga planiranja ...................................................................... 28
7.2.1. Primjer problemskoga zadatka operativnoga planiranja ....................... 29
7.2.2. Logički opis problema .......................................................................... 29
7.2.3. Matematički model problema ............................................................... 31
7.2.4. Optimalno rješenje problema ................................................................ 32
 8. Transportni problem ................................................................................................... 35
8.1. Matematički model transportnoga problema .................................................... 36
8.2. Primjer osnovnoga transportnoga problema ..................................................... 37
8.2.1. Logički opis problema .......................................................................... 38
8.2.2. Rješivost problema ............................................................................... 38
8.2.3. Matematički model problema ............................................................... 39
8.2.4. Optimalno rješenje problema ................................................................ 39
 9. Lokacijski problem .................................................................................................... 43
9.1. Primjer osnovnoga lokacijskoga problema....................................................... 44
9.1.1. Logički opis problema .......................................................................... 46

2
9.1.2. Rješivost problema ............................................................................... 47
9.1.3. Matematički model problema ............................................................... 48
9.1.4. Optimalno rješenje problema ................................................................ 49
9.2. Prošireni lokacijski problem ............................................................................. 52
 10. Problem distribucijske mreže .................................................................................... 56
10.1. Primjer problema distribucijske mreže ............................................................. 57
10.1.1. Rješivost problema .............................................................................. 59
10.1.2. Matematički model problema ............................................................. 59
10.1.3. Optimalno rješenje problema .............................................................. 61
10.2. Uvođenje cross docking terminala u distribucijsku mrežu ............................. 64
10.2.1. Matematički model distribucijske mreže s XD terminalom ............... 66
10.2.2. Optimalno rješenje problema .............................................................. 67
 11. Heurističke metode .................................................................................................... 70
11.1. Pojam heuristike ............................................................................................. 70
11.2. Primjena heurističkih metoda ......................................................................... 72
11.2.1. Problem trgovačkoga putnika .............................................................. 74
11.2.2. Problem naprtnjače.............................................................................. 77
11.2.3. Problem kineskoga poštara ................................................................. 78
11.3. Klasifikacija heurističkih metoda ................................................................... 78
11.4. Opće heuristike – metaheuristike .................................................................... 80
11.4.1. Princip lokalnoga pretraživanja........................................................... 80
11.4.2. Simulirano kaljenje ............................................................................. 83
11.4.3. Tabu pretraživanje ............................................................................... 85
11.4.4. Genetski algoritam ............................................................................. 87
11.4.5. Mravlja kolonija .................................................................................. 89
11.5. Zadatci za vježbu ............................................................................................ 91
 LITERATURA .................................................................................................................. 95
 POPIS TABLICA.............................................................................................................. 96
 POPIS SLIKA ................................................................................................................... 97
 POPIS PRILOGA.............................................................................................................. 99

3
1. Uvod

Većina logističkih problema koji se pojavljuju u planiranju i upravljanju logističkim


procesima opskrbnoga lanca mogu se svesti na probleme optimiranja, tj. riječ je o problemima
koji imaju više mogućih (izvedivih) rješenja, od kojih treba odabrati ono koje je prema
usvojenom kriteriju (ili više usvojenih kriterija) najbolje uvažavajući pritom postavljena
ograničenja.
Opskrbni lanac pritom treba razumjeti kao logistički sustav koji omogućuje zadovoljenje
potreba potrošača (kupaca) ostvarujući pritom komercijalnu dobit. Struktura opskrbnoga lanca
obuhvaća međudjelovanje uključenih subjekata kao što su: kupci, dobavljači sirovina i
repromaterijala, proizvođači finalnih proizvoda, distributeri (veletrgovci), maloprodajni
trgovci, logistički operateri, prijevoznici... To se međudjelovanje očituje u odvijanju tokova
roba, informacija i financijskih sredstava između pojedinih faza opskrbnoga lanca i unutar njih.
Optimalno rješenje logističkoga problema koji je matematički opisan (postoji matematički
model problema) može se dobiti primjenom egzaktnih metoda, primjerice grafičkom metodom
ili simpleks metodom, odnosno, ako bi to iziskivalo neprihvatljivo puno vremena, primjenom
heurističkih algoritama, primjerice tabu algoritma, simuliranoga kaljenja, genetskoga
algoritma, mravlje kolonije. Oni daju rješenja za koja se ne može sa sigurnošću tvrditi kako su
optimalna, ali su moguća (izvediva) s obzirom na zadana ograničenja.
Tematske su cjeline strukturirane tako da se uz teorijske osnove studentima omogući
usvajanje što više praktično primjenjivih znanja i vještina, korisnih sa stajališta budućega
zaposlenja. U tom će smislu biti obrađeni primjeri osnovnih logističkih problema, a pritom će
se razvijeni matematički modeli optimirati primjenom MS Excel programskoga alata Solver,
koji je dio standardnoga uredskoga programskoga paketa MS Office (tematske cjeline
predavanja popraćene su predlošcima MS Excel tablica koje se koriste za laboratorijske vježbe).
Potrebno je naglasiti kako postoje i napredniji programski alati od Solvera, te kako znanja i
vještine usvojene njegovom primjenom trebaju poslužiti kao osnova za daljnje izučavanje
modela i metoda rješavanja logističkih problema, što podrazumijeva korištenje sofisticiranijih
programskih alata.

4
2. Elementi logističkih sustava

Logistički sustavi općenito se mogu definirati kao sustavi prostorno-vremenske


transformacije dobara, a procesi koji se u njima odvijaju kao logistički procesi1. Sa stajališta
gospodarskih subjekata logistički sustav uključuje logističke procese i resurse (infrastrukturu,
opremu, radnu snagu) koji su potrebni za odvijanje logističkih procesa2.
Logistički procesi omogućuju tokove dobara koji povezuje sustave pripreme i proizvodnje
dobara sa sustavima uporabe, odnosno potrošnje dobara. To su, primjerice, transport i prekrcaj,
koji su usmjereni na odvijanje tokova dobara, zatim obrada i ispunjavanje narudžba, koji su
usmjereni na odvijanje tokova informacija, te pakiranje i skladištenje, koji su usmjereni na
olakšavanje odvijanja tokova dobara.
Logistički je sustav, koji se razmatra u okviru ovih nastavnih materijala, opskrbni lanac. S
obzirom na faze opskrbnoga lanca logistički se procesi mogu promatrati u okviru odgovarajućih
funkcionalnih cjelina (skupina) koje su sljedeće:
 logistika nabave − bavi se tokovima materijala (sirovina, poluproizvoda, pomoćnoga
materijala...) od dobavljača do mjesta proizvodnje;
 logistika proizvodnje − bavi se tokovima materijala unutar poduzeća (između
skladišta i proizvodnih pogona te unutar skladišta i proizvodnih pogona);
 logistika distribucije − bavi se tokovima roba između proizvodnje i tržišta
(maloprodajne mreže odnosno kupaca).
Osim logističkih procesa koji omogućuju odvijanje tokova dobara od dobavljača,
odnosno proizvođača prema kupcima, opskrbni lanac obuhvaća i logističke procese koji
omogućuju zadovoljenje potreba kupaca nakon prodaje (servisna mreža i rezervni dijelovi,
povrat i zamjena proizvoda…) te zbrinjavanje otpadnoga materijala i ambalaže. Logistički
procesi koji omogućuju tokove povrata dobara od kupaca prema dobavljačima, odnosno
specijaliziranim centrima za zbrinjavanje promatraju se u okviru povratne logistike.
Tokove materijalnih dobara prati i razmjena informacija u logističkom sustavu.
Informacije se razmjenjuju prije, tijekom i nakon završenoga toka materijalnih dobara. One ga
inicijaliziraju, prate, opisuju, slijede i kontroliraju, stoga se procesi tokova informacija također
svrstavaju u logističke procese. Osim navedenih tokova materijalnih dobara i informacija, u
strukturi logističkoga sustava odvijaju se i financijski tokovi, no njih se u kontekstu ovoga
predmeta neće razmatrati.
Tokovi roba, informacija i financijskih sredstava u sustavu opskrbnoga lanca kao
logističkoga sustava par excellence općenito nisu samo serijski usmjereni od faze nabave prema
fazi potrošnje, kako to sugerira pojam lanac, već je riječ o mnoštvu jednosmjernih i
dvosmjernih, serijskih i paralelnih veza između nositelja pojedinih faza (različitih gospodarskih
subjekata), kako je prikazano na Slici 1.

1
Segetlija, Z. 2006. Distribucija. Ekonomski fakultet. Osijek. 181−184.
2
Ghiani, G.; Laporte, G.; Musmanno, R. 2013. Introduction to Logistics Systems Management. Second
Edition. John Wiley & Sons Ltd. Chichester. West Sussex. p. 2.
5
Stoga se može reći kako bi primjereniji naziv za takav logistički sustav bio opskrbna mreža,
no zbog uvažavanja općeprihvaćenoga nazivlja i konzistentnosti izlaganja primjenjivat će se
naziv opskrbni lanac (engl. Supply Chain).

Slika 1. Struktura opskrbnoga lanca


Izvor: Prilagodili autori prema: Simchi-Levi, D.; Kaminsky, P.; Simchi-Levi, E. 2004. Managing the Supply
Chain. McGraw Hill. New York. p. 2.

Opskrbni se lanac može promatrati sa stajališta pojedinoga gospodarskoga subjekta,


primjerice poduzeća koje se sastoji od više geografski disperziranih poslovnih jedinica u kojima
se sirovine, poluproizvodi i gotovi proizvodi nabavljaju, proizvode i distribuiraju. Tada je riječ
o unutarnjim robnim, informacijskim i financijskim tokovima tvrtke.

6
3. Osnovni pojmovi o modelima

3.1. Pojam modela općenito

Model se općenito može definirati kao predložak, obrazac, uzorak, prikaz, plan ili opis
stvarnoga predmeta, pojave, stanja, zbivanja, sustava ili koncepta, odnosno kao
pojednostavljeni sažetak stvarnosti koji pomaže u daljnjem istraživanju.
Prednost je rada na modelu u odnosu na stvarni sustav u tome što se očekivani rezultati
izgrađivanja ili modificiranja nekoga sustava kvantificiraju na modelu bez da se izgrađuje,
odnosno modificira stvarni sustav. U pojedinim slučajevima modificiranje stvarnoga sustava
nije moguće (primjerice u astronomiji i meteorologiji), nije dopušteno (primjerice u medicini)
ili iziskuje prevelike troškove, odnosno utrošak vremena (primjerice u industriji).

3.2. Vrste modela

Podjela modela može se izvesti prema različitim kriterijima, a najopćenitija je podjela


prema načinu opisivanja (prikaza) predmeta modeliranja. Prema načinu opisivanja predmeta
modeliranja razlikuju se sljedeće vrste modela:
 fizički modeli – uvijek uključuju određenu metričku transformaciju (uvećano ili
umanjeno mjerilo), daju statični prikaz realnoga sustava, primjerice maketa, globus,
prikaz građe atoma, heliocentrični sustav Nikole Kopernika i sl.;
 analogni modeli – predstavljaju sličan skup važnih karakteristika realnoga sustava,
primjerice laboratorijske životinje, mehanizmi, grafikoni, crteži i sl., koji omogućuju
dinamički prikaz realnoga sustava;
 simbolički modeli – imaju najšire područje primjene; realni sustav prikazuju uporabom
simbola, primjerice: matematički izrazi (matematički model), riječi i znakovi
(deskriptivni model), notni zapis (partitura) i sl.
Predmetom su zanimanja ovih nastavnih materijala matematički modeli, stoga se ostale
vrste modela neće dalje razmatrati.

3.3. Primjena matematičkih modela u logistici

Matematički modeli u biti su sustavi matematičkih izraza (jednadžba i/ili nejednadžba)


koji opisuju predmet modeliranja, a sam pojam matematički model može se definirati kao:
 matematički opis predmeta modeliranja (sustava, procesa, zbivanja, problema...), bilo
da je riječ o postojećem predmetu modeliranja ili o nečemu što se tek treba izgraditi ili
što bi moglo nastati;
 apstraktni prikaz realnoga sustava korištenjem matematičkoga jezika koji predstavlja
postojeće spoznaje o tom sustavu u primjenjivoj formi.

7
Prema namjeni razlikuju se dvije vrste matematičkih modela3:
1. Modeli optimiranja − primjenjuju se u cilju postizanja maksimalne ili minimalne
vrijednosti neke veličine (maksimizacija dobiti, učinkovitosti odnosno minimizacija
troškova, potrebnih radnih sati...).
2. Modeli predviđanja − primjenjuju se s ciljem opisivanja i predviđanja stanja
(događaja) koja se očekuju pod određenim uvjetima (predviđanje potražnje, rokova
izvršenja pojedinih aktivnosti...).
Izlazni podatci dobiveni na modelu predviđanja (odziv modela) mogu se koristiti kao
ulazni podatci za modele optimiranja kada je potrebno kvantificirati očekivane promjene.
Logistički su sustavi dinamički sustavi složeni od velikoga broja elemenata i njihovih
interakcija, od kojih su mnoge nelinearne i nedeterminističke te se kod modeliranja uvode
određena pojednostavljenja kako bi se promatrani sustavi mogli matematički opisati.
Primjerice, isključuju se pojedini elementi sustava koji nisu važni za promatrani problem,
zanemaruje se stohastična sastavnica relacija, dinamičke se veličine smatraju stalnima i sl., no
pojednostavljenja su dopuštena samo u granicama unutar kojih ne mogu bitno utjecati na
rezultat.
U svrhu rješavanja logističkih problema primjenjuju se dvije kategorije modela,
deskriptivni i normativni, kako je prikazano na Slici 2.

Modeli logističkih
sustava

Deskriptivni Normativni
modeli modeli

Slika 2. Modeli logističkih sustava


Izvor: Izradili autori

Deskriptivni modeli primjenjuju se u svrhu opisivanja, analiziranja i objašnjavanja


funkcionalnih odnosa elemenata logističkih sustava, a uključuju sljedeće:
▪ predviđanje potražnje tržišta, predviđanje ulaznih troškova (sirovina, repromaterijala...)
i drugih čimbenika na temelju podataka iz prethodnih razdoblja;
▪ definiranje promjena logističkih i drugih troškova kao funkcije određenih utjecajnih
čimbenika;
▪ definiranje međuzavisnosti odvijanja proizvodnih aktivnosti i trošenja resursa;

3
Lawrence, J. A.; Pasternack, B. A. 2002. Applied Management Science. John Wiley & Sons. New Jersey.
p. 8.

8
▪ simuliranje funkcioniranja opskrbnoga lanca ili samo određenoga dijela kao funkcije
njegovih parametara i strategije.
Normativni modeli primjenjuju se u svrhu donošenja odluka u sklopu projektiranja,
izvedbe i nadzora, odnosno poboljšavanja pojedinih podsustava opskrbnoga lanca. Pojam
normativni ovdje se odnosi na definiranje norme (standarda) koja se želi postići. Normativni su
modeli modeli optimiranja, odnosno matematički modeli. Izrada matematičkoga modela
podrazumijeva postojanje deskriptivnoga modela i važnih podataka kao ulaznih veličina, a
njihova kvaliteta izravno utječe na kvalitetu rješenja koje je dobiveno optimiranjem.

4. Optimiranje i postupak modeliranja

Optimiranje se općenito može definirati kao postupak određivanja najpovoljnijega rješenja


nekoga problema uz zadana ograničenja i usvojene kriterije optimalnosti, kako je simbolički
prikazano na Slici 3.

Slika 3. Postupak optimiranja


Izvor: Izradili autori

Primjenom matematičkoga nazivlja postupak optimiranja može se definirati kao


određivanje skupa vrijednosti varijabla odlučivanja (promjenjivih veličina) kojima se postiže
optimalna vrijednost funkcije cilja (prema usvojenom kriteriju optimalnosti) uz zadana
ograničenja (uvjete). Svrha optimiranja jest maksimizirati korisnost (radni učinak, dobit...)
odnosno minimizirati utrošak resursa uz zadana ograničenja.
Funkcija cilja jest matematički opis postavljenoga cilja koji predstavlja kriterij
optimalnosti, a postavljena ograničenja određuju skup mogućih ili izvedivih rješenja, tj.
kvantitativno područje dopuštenih vrijednosti varijabla odlučivanja.
Optimalno rješenje pritom je najbolje (najpovoljnije) rješenje promatranoga problema s
obzirom na zadana ograničenja i usvojeni kriterij optimalnosti. Kriterija optimalnosti može biti
više, a ovisno o promatranom problemu to može biti minimizacija ili maksimizacija, odnosno
minimizacija jednih veličina uz istodobnu maksimizaciju drugih veličina.

9
Treba napomenuti kako se svi problemi ne mogu rješavati optimiranjem. Primjeri
logističkih problema koji se mogu rješavajti optimiranjem:
▪ odrediti plan proizvodnje tako da se ostvari najveća dobit;
▪ rasporediti posao tako da se utroši najmanje radnoga vremena;
▪ odrediti najkraći put na transportnoj mreži;
▪ odrediti raspored dostave tako da transportni troškovi budu minimalni;
▪ odrediti lokacije i kapacitete LDC-a tako da potražnja bude zadovoljena, a troškovi
distribucije minimalni;
▪ ostali logistički problemi kod kojih se rješenje može svesti na minimizaciju ili
maksimizaciju neke veličine, uz uvažavanje određenih ograničenja.
Kako bi se mogla izvesti kvantitativna analiza nekoga sustava iz realnoga svijeta, potrebno
je izraditi matematički model toga sustava. Sam je postupak modeliranja osjetljiv i zahtijeva
određeno iskustvo, a ponekad i intuiciju.
Pristup rješavanju problema matematičkim modeliranjem sastoji se od četiri osnovna
koraka4, kako je shematski prikazano na Slici 4.

1. Definiranje
problema

2. Izrada matematičkog
modela

3. Rješavanje problema
na modelu

4. Interpretacija
rezultata

Slika 4. Pristup problemu


Izvor: Izradili autori

Rješavanje problema primjenom matematičkoga modeliranja rijetko kada prolazi kao


jednosmjeran sekvencijalni proces. Model je u pravilu potrebno revidirati, promijeniti neke
pretpostavke ili ulazne podatke, radi postizanje veće sličnosti s predmetom modeliranja. Nužno
je stoga vraćanje na prethodne korake i ponavljanje pojedinih procesa u sklopu testiranja
modela.

4
Ibidem. p. 9.
10
Može se reći kako gotovo i nema sustava, procesa ili zbivanja u realnom svijetu koje bi se
moglo potpuno vjerno prenijeti u matematički model. Kod izrade modela zanemaruju se mnoge
informacije i međusobne zavisnosti (interakcije elemenata realnoga sustava). U model se unose
samo one veličine i one relacije koje se smatraju važnima za dobivanje optimalnoga rješenja
problema zbog kojega se model izrađuje.
Veze i zavisnosti u realnom svijetu najčešće su nelinearne i nedeterminističke. Međutim,
podatci o realnom svijetu nikada nisu potpuno točni. Bitno je kod izrade modela procijeniti ili
kvantitativnim metodama odrediti točnost podataka kako bi se onda prema tomu uvela
odgovarajuća pojednostavljenja na modelu.
Postupak modeliranja shematski je prikazan na Slici 5. Sastoji se od sljedećih osnovnih
koraka:
1. Analizom realnoga sustava dobivaju se informacije (struktura, ulazni podatci,
funkcionalni odnosi) potrebne za formulaciju modela.
2. Odabranim postupcima na modelu (tehnike modeliranja) dobiva se odziv, odnosno
zaključci o ponašanju modela.
3. Zaključke izvedene na modelu treba interpretirati s obzirom na primijenjene tehnike
modeliranja, kako bi bili primjenjivi u realnom sustavu.
4. Interpretirane zaključke zatim treba usporediti sa zaključcima do kojih se dolazi
analizom realnoga sustava bez korištenja modela (strelica u suprotnom smjeru). Tek se
nakon toga mogu formulirati elementi za donošenje stvarne odluke.

Formulacija
Realni
MODEL
sustav

Dedukcija

Zaključci o Interpretacija
realnom Zaključci o
sustavu modelu

Slika 5. Postupak modeliranja


Izvor: Izradili i prilagodili autori prema Pašagić, H. 1998. Matematičko modeliranje i teorija grafova. FPZ.
Zagreb. p. 15.

Insuficijentnost modela u odnosu prema realnom sustavu, tj. njegova nepotpunost,


odnosno nemogućnost da u potpunosti obuhvati sve značajke i funkcije realnoga sustava,
uvjetovana je granicama postojećih spoznaja o predmetu modeliranja, uvođenjem
pojednostavljenja, kvalitetom ulaznih podataka te subjektivnim iskustvom i intuicijom
istraživača.

11
5. Osnovna načela modeliranja

Tijekom povijesti razvoja i primjene metoda operacijskih istraživanja od II. svjetskoga


rata, kada su postavljeni temelji te matematičke discipline, do danas usvojena su osnovna načela
prema kojima treba provoditi postupak modeliranja5:
1. Izraditi najjednostavniji model koji zadovoljava postavljene zahtjeve. Ne treba
izgrađivati pretjerano složene matematičke strukture u težnji za obuhvaćanjem svih
stajališta promatranoga problema ili za impresioniranjem korisnika. Preporučljiv je
postupak pojednostavljenja sve dok rješenje ne postane matematički izvodivo, a nakon toga
slijedi obogaćivanje modela sve dok je to i dalje matematički izvodivo.
2. Ne prilagođavati problem tehnici rješavanja. Pri analizi i snimanju stanja u realnom
sustavu treba paziti kako se podsvjesno ne bi iskrivila slika u nastojanju svođenja problema
na oblik koji se može riješiti nekom od već poznatih tehnika. Ne svodi se svaki problem na
optimiranje niti zahtijeva rješavanje metodama operacijskih istraživanja.
3. Izvođenje zaključaka mora biti rigorozno. U izradi modela ne smiju se dogoditi logičke
pogreške. U suprotnom se ne može znati jesu li pogrešne pretpostavke ili postupci. Može
se izvesti analogija s računalnim programom koji je formalno ispravan, no zbog ugrađene
logičke pogreške daje krive rezultate.
4. Testirati model prije praktične primjene. Model se može testirati na povijesnim, već
obrađenim podatcima. Ako takvi nisu dostupni, ulazne podatke treba generirati i na taj
način provjeriti ispravnost reakcije modela. Točnost reakcije modela ima smisla
poboljšavati sve dok ne postane mjerljiva s točnošću ulaznih podataka. Primjenjivost
gotovo svakoga modela s vremenom zastarijeva.
5. Kritički sagledati rezultate dobivene primjenom modela. Kako je i najsloženiji model
samo pojednostavljena slika stvarnosti, rezultate koji se dobivaju njegovom obradom treba
usporediti s iskustvenim (povijesnim) podatcima. Ako ne djeluju logično, što je ponekad
slučaj, treba utvrditi zašto je tomu tako. Na taj se način provodi kontrola, a istodobno se
upotpunjuju saznanja o modelu.
6. Model ne može dati rješenje problema za koji nije projektiran. S obzirom na cilj koji
se želi postići kod izrade modela, pojedini se elementi realnoga sustava smatraju važnima,
a neki se zanemaruju. Ukoliko se izmijeni cilj, ne može se očekivati kako će postojeći
model biti odgovarajući.
7. Model primjenjivati u granicama problema za koje je namijenjen. Jednom izrađeni
model i ugrađeni postupci za njegovo rješavanje i tumačenje mogu, uz određene izmjene,
biti primjenjivi za različite klase problema. Međutim, ukoliko se ispravno ne uoče razlike,
primjena će neodgovarjućega modela dovesti do pogrešnih zaključaka.
8. Sama izrada modela može donijeti nove spoznaje. Izrada modela zahtijeva racionalnu
analizu stvarnosti. Pritom se mogu otkriti određene nelogičnosti koje su do tada bile
prikrivene. Kao primjer može se navesti slučaj iz prakse kada se tijekom izrade modela
proizvodnje utvrdilo kako postoje artikli čija je prodajna cijena niža od izravnih troškova

5
Načela kojih se pri modeliranju treba pridržavati u svojim radovima spominju brojni autori te su ovdje
izdvojene osnove u kojima se većina autora slaže.
12
proizvodnje. Prije izrade modela te se artikle, zbog njihove relativno visoke prodajne
cijene, smatralo profitabilnima.
9. Model ne može biti bolji od ulaznih podataka. Kvaliteta rezultata dobivenih primjenom
modela ne može biti bolja od kvalitete ulaznih podataka. Ni model ni računalo ne mogu
generirati nova saznanja, odnosno informacije. Privid generiranja podataka može se dobiti
korištenjem ekspertnih sustava, međutim, riječ je o kvalitetnim informacijama koje su bile
inicijalno unesene pri izradi modela. Analizom podataka čija je priroda stohastička
neizvjesnost se može kompenzirati, ali ne i ukloniti. Obogaćivanje modela stoga neće
donijeti očekivane učinke ako se ne poboljša kvaliteta ulaznih podataka.
10. Model nije zamjena za odlučivanje. Operacijska istraživanja pružaju informacije koje
pomažu pri donošenju odluke, no osim kod rutinske primjene, ne predstavljaju i samu
odluku. Općenito, postoje stajališta realnoga sustava koja nisu obuhvaćena modelom, bilo
zbog toga što ih se ne može kvantificirati ili zbog toga što ovise o okruženju pa je njihovo
pojavljivanje nepredvidivo.

13
6. Rješavanje logističkih problema matematičkim modeliranjem

Većina logističkih problema koji se pojavljuju u planiranju i upravljanju logističkim


procesima mogu se svesti na probleme optimiranja, tj. riječ je o problemima koji imaju više
mogućih (izvedivih) rješenja, od kojih treba odabrati ono koje je prema usvojenom kriteriju (ili
više usvojenih kriterija) najbolje, uvažavajući pritom postavljena ograničenja.
Optimalno rješenje logističkoga problema koji je matematički opisan može se dobiti
primjenom egzaktnih metoda ili, ukoliko bi to iziskivalo neprihvatljivo puno vremena,
primjenom heurističkih algoritama koji daju rješenja za koja se ne može sa sigurnošću tvrditi
da su optimalna, no može se potvrditi njihova izvedivost s obzirom na zadana ograničenja.
Na primjerima osnovnih logističkih problema bit će prikazana praktična primjena modela
linearnoga programiranja u određivanju optimalnih rješenja tih problema. Optimalna će
rješenja biti generirana postupkom optimiranja matematičkih modela linearnoga programiranja
primjenom MS Excel programskoga alata Solver. Iako postoje napredniji programski alati od
Solvera, isti je primijenjen zbog svoje dostupnosti (nije potrebna nikakva dodatna instalacija
izvan standardnoga programskoga paketa MS Office), a znanja i vještine usvojene njegovom
primjenom mogu poslužiti kao osnova za daljnje izučavanje modela i metoda rješavanja
logističkih problema korištenjem sofisticiranijih programskih alata.

6.1. Primjena linearnoga programiranja

Problemi optimiranja, na kakve se mogu svesti mnogi logistički problemi, učinkovito se


rješavaju linearnim programiranjem, odnosno pomoću modela linearnoga programiranja.
Ovakav pristup rješavanju problema uključuje sljedeće pretpostavke:
▪ Traži se maksimum ili minimum funkcije cilja.
▪ Varijable odlučivanja (argumenti funkcije cilja) međusobno su neovisne, a njihov je
utjecaj na vrijednost funkcije cilja zbrojiv.
▪ Relacije između vrijednosti funkcije cilja i varijabla odlučivanja, kao i relacije
ograničenja mogu se izraziti linearnim jednadžbama ili nejednadžbama (radi
dobivanja konačnoga rješenja u nejednadžbama nije dopušteno < i >, nego samo ≤ i
≥).
▪ Ulazni su podatci konstante unutar promatranoga područja, odnosno razdoblja
definirane s određenom točnošću (u prihvatljivim granicama tolerancije).
Matematički modeli linearnoga programiranja ili linearni modeli (Slika 6.) imaju gore
navedena svojstva, a sastoje se od sljedećih triju sastavnica:
▪ varijabla odlučivanja
▪ funkcije cilja
▪ ograničenja.

14
MODEL

VARIJABLE OPTIMALNO
ODLUČIVA
NJA RJEŠENJE

OGRANIČE
Ulazne veličine NJA Interpretacija
(UVJETI)

FUNKCIJA
CILJA

Slika 6. Matematički model linearnoga programiranja


Izvor: Izradili autori

Varijable odlučivanja u linearnim su modelima kontinuirane. Kako neki problemi


zahtijevaju cjelobrojne varijable ili u posebnom slučaju binarne varijable, kod rješavanja se
primjenjuju sljedeće opcije:
 Koriste se kontinuirane varijable, a kod interpretacije rezultata dopušteno je
zaokruživanje (realni brojevi → cijeli brojevi) jer su vrijednosti koje kontinuirane
varijable mogu poprimiti dovoljno velike te se odstupanja nalaze u granicama točnosti
ulaznih podataka (zaokruživanje ne može dovesti do grube pogreške).
 Neke od varijabla odlučivanja moraju biti cjelobrojne i/ili binarne, dok za ostale ne
postoji to ograničenje te se uz kontinuirane koriste i cjelobrojne, odnosno binarne
(diskretne) varijable. Takvi se modeli nazivaju modeli mješovitoga cjelobrojnoga
programiranja, engl. Mixed Integer Programing Models (MIP Models).
 Sve varijable odlučivanja moraju biti cjelobrojne, odnosno binarne te se primjenjuju
modeli cjelobrojnoga programiranja, engl. Integer Programming Models (IP Models),
odnosno modeli binarnoga cjelobrojnoga programiranja, engl. Binary Integer
Programming Models (BIP Models).

6.2. Analiza osjetljivosti matematičkoga modela

Nakon što je na matematičkom modelu određeno optimalno rješenje problema, postavljaju


se pitanja u kojoj je mjeri to rješenje osjetljivo na:
 promjene jednoga ili više ulaznih podataka (parametara modela);
 dodavanje ili isključivanje ograničenja;
 dodavanje ili isključivanje varijabla...
Analiza osjetljivosti proces je variranja parametara modela unutar dopuštenoga područja i
promatranje zavisnih promjena u odzivu modela kako bi se promjene u izlaznim veličinama
modela mogle kvalitativno i kvantitativno dodijeliti odgovarajućim izvorima promjena.
Analiza osjetljivosti također je i metoda za provjeru kvalitete modela kojom se može
prikazati osjetljivost modela na nepreciznost, odnosno na stohastičku sastavnicu vrijednosti
ulaznih podataka.
15
Najvažniji su razlozi zbog kojih se provodi analiza osjetljivosti matematičkoga modela
sljedeći:
 stohastična sastavnica ulaznih podataka – neki od ulaznih podataka nisu sa sigurnošću
utvrđeni (poznati), nego su procijenjeni, odnosno izračunani na temelju određenih
pokazatelja, s određenom vjerojatnošću;
 nepreciznost ulaznih podataka dobivenih mjerenjem, odnosno ispitivanjem na
odabranom uzorku;
 dinamično okruženje realnoga sustava kod izrade modela pojednostavljeno je prikazano
kao statično, tj. zanemarene su moguće dinamične promjene ulaznih veličina i relacija
unutar modela;
 provođenje što ako analize (engl. What If Analysis) – želi se vidjeti što bi bilo, odnosno
kakav bi bio odziv modela ukoliko bi se promijenili određeni parametri.
Umjesto višestrukoga ponovnoga rješavanja problema s promijenjenim parametrima
modela analizom osjetljivosti dobivaju se informacije o:
 kvantitativnom području promjena koeficijenata funkcije cilja koje ne utječu na
optimalno rješenje, samo se mijenja vrijednost funkcije cilja;
 utjecaju jedinične promjene parametara desne strane ograničenja na vrijednost funkcije
cilja i odnosnom kvantitativnom području.
U tom se smislu utvrđuje osjetljivost optimalnoga rješenja dobivenoga optimiranjem
modela na promjene:
 pojedinoga koeficijenta u funkciji cilja – određuje se područje optimalnosti, tj.
raspon vrijednosti za svaki koeficijent funkcije cilja unutar kojega se optimalno rješenje
ne mijenja (ostali koeficijenti pritom ostaju nepromijenjeni);
 pojedinoga parametra na desnoj strani ograničenja – ako je riječ o vezanom
ograničenju, optimalno se rješenje mijenja, a kvantificira se rezultirajuća promjena
vrijednosti funkcije cilja prema jediničnoj promjeni parametra na desnoj strani
ograničenja; ta se promjena naziva dualna cijena ili cijena u sjeni, engl. Shadow Price
koja vrijedi unutar određenoga intervala vrijednost, koji se naziva područje izvedivosti,
engl. Range of Feasibility; promjenom parametra desne strane ograničenja izvan
područja izvedivosti mijenja se dualna cijena ili ograničenje postaje nevezano (više ne
određuje vrijednost funkcije cilja).

Primjer: Određivanje maksimalne vrijednosti linearne funkcije s ograničenjima primjenom


grafičke metode i analiza osjetljivosti optimalnoga rješenja.
Funkcija cilja:
Max F = 40x1 + 60x2 . (6.1.)
Ograničenja:
x1 + x2 ≤ 200 (6.2.)
2x1 + x2 ≤ 300 (6.3.)
x2 ≤ 150 (6.4.)
x1, x2 ≥ 0. (6.5.)

16
Postupak određivanja optimalnoga rješenja grafičkom metodom prikazan je na Slici 7., a
sastoji se od sljedećih koraka:
1. Nacrtati grafove ograničenja kako bi se odredilo područje izvedivosti koje
predstavlja poligon s vrhovima u točkama (0,0), (150,0), (100,100), (50,150) i
(0,150). Navedene točke nazivaju se točke ekstrema.
2. Uzeti proizvoljnu vrijednost funkcije cilja i nacrtati njezin graf. Vrijednost funkcije
mora biti takva da graf prolazi kroz područje izvedivosti, primjerice:
40x1 + 60x2 = 2400.
3. Graf funkcije cilja translatirati u smjeru povećanja vrijednosti funkcije, najdalje
dok još dira područje izvedivosti (u jednoj od točaka ekstrema).
4. Koordinate najdalje točke ekstrema područja izvedivosti predstavljaju optimalne
vrijednosti varijabla, tj. optimalno rješenje (x1 = 50, x2 = 150).
5. Uvrštavanjem optimalnoga rješenja u matematički izraz funkcije cilja dobiva se
njezina maksimalna vrijednost (max F = 11 000).

x2

300
x 1 , x2 ≥ 0
(pvi
(prvikvadrant)
kvadrant)
200

x2 ≤ 150
(50,150)
100

40

60 100 200 300 x1

Slika 7. Grafička metoda


Izvor: Izradili autori

Optimalno rješenje ovoga problema može se dobiti i pomoću MS Excel programskoga alata
Solver, koji osim toga omogućuje i generiranje rezultata analize osjetljivosti.
Primjena MS Excel programskoga alata Solver bit će podrobnije opisana i demonstrirana
na više primjera u sljedećim točkama, a ovdje su za potrebe razmatranja analize osjetljivosti,
optimalnoga rješenja, u Tablici 1. prikazani samo rezultati analize osjetljivosti (engl. Sensitivity
Report), generirani primjenom spomenutoga programskoga alata.

17
Tablica 1. Rezultati analize osjetljivosti
Adjustable Cells
Final Reduced Objective Allowable Allowable
Cell Name Value Cost Coefficient Increase Decrease
$B$7 Optimalno rješenje x1 50 0 40 20 40
$C$7 Optimalno rješenje x2 150 0 60 1E+30 20

Constraints
Final Shadow Constraint Allowable Allowable
Cell Name Value Price R.H. Side Increase Decrease
$D$3 1. ograničenje lijeva strana 200 40 200 25 50
$D$4 2. ograničenje lijeva strana 250 0 300 1E+30 50
$D$5 3. ograničenje lijeva strana 150 20 150 50 50

Cell Name Cell Value Formula Status Slack


$D$3 1. ograničenje lijeva strana 200 $D$3<=$F$3 Binding 0
$D$4 2. ograničenje lijeva strana 250 $D$4<=$F$4 Not Binding 50
$D$5 3. ograničenje lijeva strana 150 $D$5<=$F$5 Binding 0

Izvor: izradili autori

Objašnjenje Tablice 1.

Adjustable Cells: Mijenjanje koeficijenata funkcije cilja


(konstante uz varijable, engl. Objective Coefficient: C1 = 40, C2 = 60)
Vrijednost pojedinoga koeficijenta funkcije cilja može se mijenjati unutar područja
optimalnosti (između Allowable Increase i Allowable Decrease), a da optimalno rješenje ostaje
nepromijenjeno, mijenja se samo vrijednost funkcije cilja. Ako koeficijent poprimi vrijednosti
izvan toga područja, mijenja se i optimalno rješenje. Tako je područje optimalnosti:
- za koeficijent C1 interval vrijednosti od 0 do 60 (C1 - 40 = 0; C1 + 20 = 60);
- za koeficijent C2 interval vrijednosti od 40 do +∞ (C2 - 20 = 40; C2 + ∞ = +∞).

Constraints: Mijenjanje parametra desne strane ograničenja


engl. Constraint Right Hand Side (200, 300, 150).
Određuje se utjecaj jedinične promjene desne strane pojedinoga ograničenja na promjenu
vrijednosti funkcije cilja, tj. dualna cijena, engl. Shadow Price.
 Prvo ograničenje ispunjeno je, engl. Binding, što znači da je lijeva strana nejednadžbe
jednaka desnoj strani, engl. Final Value = Constraint R. H. Side (200 = 200). Jedinična
promjena vrijednosti funkcije cilja (dualna cijena, engl. Shadow Price) iznosi 40 unutar
područja izvedivosti, tj. intervala vrijednosti parametra desne strane ograničenja između
Allowable Increase (25) i Allowable Decrease (50), odnosno između 225 i 150 (200 +
25 = 225; 200 - 50 = 150).
Povećanjem vrijednosti parametra desne strane ograničenja preko 225 ograničenje
prestaje biti ispunjeno, tj. više ne određuje funkciju cilja. Smanjenjem vrijednosti ispod
150 mijenja se iznos jedinične promjene funkcije cilja (dualna cijena).
18
 Drugo ograničenje nije ispunjeno, engl. Not Binding, što znači da lijeva strana
nejednadžbe, engl. Final Value, nije jednaka desnoj strani, engl. Constraint R. H. Side
(250 < 300).
Povećanje vrijednosti parametra desne strane ograničenja stoga nema utjecaja na
vrijednost funkcije cilja, tj. ne ograničava funkciju cilja, odnosno nije ispunjeno, engl.
Not Binding (Allowable Increase = +∞). Smanjenje vrijednosti parametra desne strane
ograničenja također nema utjecaja na vrijednost funkcije cilja, ali samo do 250, kada
ovo ograničenje postaje ispunjeno, engl. Binding (Allowable Decrease = 50).
 Treće ograničenje ispunjeno je, engl. Binding, što znači da je lijeva strana nejednadžbe
jednaka desnoj strani, engl. Final Value = Constraint R. H. Side (150 = 150). Jedinična
promjena vrijednosti funkcije cilja (dualna cijena, engl. Shadow Price) iznosi 20 unutar
područja izvedivosti, tj. intervala vrijednosti parametra desne strane ograničenja između
Allowable Increase (50) i Allowable Decrease (50), odnosno između 200 i 100 (150 +
50 = 200; 150 - 50 = 100).
Povećanjem vrijednosti parametra desne strane ograničenja preko 200 ograničenje
prestaje biti ispunjeno, tj. više ne određuje funkciju cilja. Smanjenjem vrijednosti ispod
100 mijenja se iznos jedinične promjene funkcije cilja (dualna cijena).

6.3. Primjer rješavanja logističkoga problema optimiranjem linearnoga modela

Problem naprtnjače (engl. backpack problem, knapsack problem) jedan je od najpoznatijih


(i najjednostavnijih) logističkih problema iz klase NP-problema6 koji se može svesti na problem
kombinatoričkoga optimiranja. Pri rješavanju koristi se sljedeće svojstvo NP-problema:
valjanost rješenja može se provjeriti u polinomnom vremenu7.
Problem naprtnjače pojavljuje se u mnogim realnim situacijama, kako u svakodnevnom
životu, tako i u poslu. Može se razjasniti sljedećom situacijom:
Operativac je upućen na izvršenje određenoga zadatka, a u svojoj naprtnjači može ponijeti
stvari koje će mu pri tome najviše koristiti (odnosno za koje postoji najveća vjerojatnost da će
mu trebati). Na raspolaganju ima veći broj različitih stvari od kojih svaka ima određenu
korisnost i zauzima određeni prostor u naprtnjači.
Treba odlučiti koje stvari ponijeti sa sobom tako da uzme najkorisnije (ostvari ukupno
najveću korist), a da ne prekorači kapacitet naprtnjače (ne može ponijeti više stvari nego što
stane u naprtnjaču).
U različitim realnim situacijama korisnost se može odnositi na različite veličine
(komercijalna vrijednost robe, komercijalna dobit, vjerojatnost potrebe, uporabna vrijednost...),
a naprtnjača može biti, primjerice, kapacitet prijevoznoga sredstva, kontejnera, skladišta ili
nekoga drugoga ograničenoga resursa.

6
NP-problemi (ili problemi klase NP) problemi su za koje je moguće definirati nedeterminističke Turingove
strojeve koji ih rješavaju u polinomnom vremenu.
7
Cf. infra točku 11.1. Pojam heuristike
19
Problem naprtnjače i njegovo rješavanje svođenjem na problem optimiranja, kako bi se do
rješenja došlo optimiranjem matematičkoga modela, prikazani su na sljedećem primjeru
problemskoga zadatka.
Primjer problema naprtnjače
Neka je dano n predmeta Pi , svaki od njih mase mi i vrijednosti vi , i = 1, ... , n. Treba
odabrati koje predmete ukrcati u prijevozno sredstvo kapaciteta M tako da njihova ukupna
vrijednost bude najveća, a da ukupna masa ne prelazi kapacitet prijevoznoga sredstva.
Kapacitet prijevoznoga sredstva iznosi M = 900 kg, a mase i vrijednosti predmeta prikazani
su u Tablici 2.

Tablica 2. Ulazni podatci problema naprtnjače


P1 P2 P3 P4 P5 P6 P7 P8 P9 P10 P11 P12 P13 P14 P15
Masa (kg) 70 73 77 80 82 87 90 94 98 106 110 113 115 118 120
Vrijednost 135 139 149 150 156 163 173 184 192 201 210 214 221 229 240

Izvor: izradili autori

Logički opis problema

Funkcija cilja: maksimizirati ukupnu vrijednost ukrcanih predmeta


Varijable odlučivanja: koje predmete ukrcati, uređena n-torka X = (x1, ... , xn) ϵ {0,1}
binarna varijabla xi: 1 = DA (ukrcan), 0 = NE (nije ukrcan)
Ulazne veličine: broj predmeta n = 15
masa predmeta mi
vrijednost predmeta vi
Ograničenja (uvjeti): kapacitet prijevoznoga sredstva M = 900 kg

Matematički model problema

Funkcija cilja
n
max F   xi  vi
i 1 (6.6.)
Ograničenje
n

x m
i 1
i i M
(6.7.)
gdje je: vi = vrijednost predmeta Pi
mi = masa predmeta Pi
M = kapacitet prijevoznoga sredstva
n = ukupan broj predmeta (n = 15)
xi = varijabla odlučivanja, član uređene n-torke X = (xi, ... , xn) ϵ {0,1}
tumači se: 1 = predmet je ukrcan, 0 = predmet nije ukrcan
20
Optimalno rješenje problema

Svaka uređena n-torka X = (x1, ... , xn) ϵ {0,1} koja zadovoljava ograničenje:
n

x m
i 1
i i M

moguće je ili izvedivo rješenje problema, dok je optimalno rješenje u ovom slučaju ono
koje daje najveću vrijednost funkcije cilja (max F).
Optimalno rješenje problema dobiveno primjenom MS Excel programskoga alata Solver
prikazano je u Tablici 3.

Tablica 3. Optimalno rješenje problema naprtnjače

Izvor: izradili autori

Matematičke izraze modela predstavljaju MS Excel formule zapisane u odgovarajućim


ćelijama MS Excel tablice, kako je navedeno u Tablici 4. Ulazni podatci modela (konstante)
također su zapisani u MS Excel tablici, u ćelijama od B2 do P2 (mase predmeta), od B3 do P3
(vrijednosti predmeta), te u D6 (kapacitet prijevoznoga sredstva), onako kako su zadani.

Tablica 4. Zapisi matematičkih izraza modela problema naprtnjače u MS Excel tablici


Matematički
Excel formula Ćelija
izraz
(6.6) = SUMPRODUCT(B4:P4; B3:P3) B8
(6.7) = SUMPRODUCT(B4:P4; B2:P2) B6

Izvor: izradili autori

Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options
programskoga alata Solver, s upisanim podatcima, prikazan je u Prilogu 1. Kako predmetom
ovoga izlaganja nisu karakteristike programskoga alata, neće se dalje objašnjavati značenje
pojednih parametara i opcija8.

8
Značenje pojedinih parametara i opcija podrobno je opisano u pratećoj dokumentaciji programskoga paketa,
a osnovna su objašnjenja dostupna pod opcijom < Help >.
21
7. Problem alokacije resursa

U realnim logističkim sustavima pojedini resursi mogu predstavljati ograničenje pri


ispunjavanju postavljenih zahtjeva, bez obzira na to dijele li različiti procesi iste resurse ili
pojedini procesi zahtijevaju više različitih resursa, primjerice:
▪ ograničeni kapacitet skladišta uvjetuje način i raspored smještaja robe, kao i tehnologiju
komisioniranja;
▪ količina robe koja se može transportirati ograničena je kapacitetom (nosivošću)
transportnoga sredstva, odnosno voznoga parka;
▪ volumen i struktura proizvodnje ograničena je raspoloživom radnom snagom i/ili
opremom (kapacitetom proizvodnih linija);
▪ ograničenja opreme u određenom dijelu proizvodne linije stvaraju usko grlo;
▪ ograničena količina određenoga sastojka, sirovine ili repromaterijala...

Optimalno rješenje u takvim slučajevima znači alokaciju (raspoređivanje i dodjeljivanje)


raspoloživih resursa tako da ukupni rezultat cjeline sustava bude najbolji. Pritom treba voditi
računa o sljedećem pravilu:
...optimum cjeline sustava ne mora biti zbroj optimuma pojedinih njegovih dijelova...
Kako zbog nedostatnih resursa nije moguće zadovoljiti potrebe svih procesa, procesi koji
manje pridonose ukupnom rezultatu žrtvuju se u korist onih koji pridonose više, ali samo do te
mjere da funkcioniranje cjeline sustava ne bude ugroženo. U tom smislu treba razmotriti
sljedeća pitanja:
 Kako definirati kriterije optimalnosti s obzirom na cilj koji se želi postići?
 Kako definirati funkcionalne odnose odvijanja procesa i trošenja (iskorištenja) resursa?
 Kako identificirati ograničene resurse, odnosno uska grla?
 Kako vrednovati rezultate procesa, odnosno doprinos pojedinih procesa ukupnom
rezultatu?
Odgovori na ova pitanja određuju alokaciju resursa u danom slučaju. Primjenom
matematičkih modela linearnoga programiranja, odnosno modela alociranja resursa može se
u tom smislu optimirati funkcioniranje logističkoga sustava kao cjeline. Rješavanje problema
alokacije resursa optimiranjem matematičkoga modela prikazano je na sljedećem primjeru
problemskoga zadatka.

7.1. Primjer problemskoga zadatka alokacije resursa u planiranju proizvodnje


Prilagodili autori prema Shapiro, J. F. 2001. Modeling the Supply Chain. Wadsworth Group. Thomson
Learning Inc. Duxbury. p. 65.

Tvrtka proizvodi (sklapa) tri vrste računala: desktop (DT), laptop (LT) i workstation (WS).
Nakon sklapanja i testiranja računala se pakiraju i stavljaju u prodaju. Ograničeni su resursi
22
raspoloživost pogona za sklapanje i kapacitet linija za testiranje, dok ostale aktivnosti (nabava,
pakiranje, distribucija...) nisu ograničene. Treba alocirati ove resurse i odrediti tjedni plan
proizvodnje DT/LT/WS (koliko komada pojedine vrste računala proizvesti) tako da dobit na
kraju radnoga tjedna bude najveća, uz zadana ograničenja i ulazne veličine.
Za sljedeći radni tjedan raspoloživo je:
▪ 800 radnih sati prvoga pogona, u kojem se sklapaju DT-i i WS-i
▪ 520 radnih sati drugoga pogona, u kojemu se sklapaju LT-i
▪ 240 radnih sati A-linije za testiranje DT-a i LT-a
▪ 280 radnih sati B-linije za testiranje WS-a.
Jedinična dobit po vrstama računala iznosi:
▪ 100 €/DT
▪ 110 €/LT i
▪ 160 €/WS.
Norma za sklapanje računala iznosi:
▪ 2 radna sata/DT
▪ 2 radna sata/LT i
▪ 4 radna sata/WS.
Norma za testiranje računala iznosi:
▪ 1 radni sat/DT
▪ 1 radni sat/LT i
▪ 2 radna sata/WS.
Kako se ovdje razmatra isključivo problem planiranja proizvodnje u užem smislu, ostali
podsustavi koji utječu na proizvodnju, ali sami nisu dio proizvodnje (nabava, prodaja), mogu
se zanemariti. Stoga se pretpostavlja kako stalno postoji dovoljna zaliha sastavnica potrebnih
za sklapanje računala te kako se sva proizvedena računala mogu prodati.

7.1.1. Logički opis problema

Logički opis problema prethodi izradi matematičkoga modela. Sadrži funkcionalni prikaz
strukture postavljenoga zadatka koji odgovara strukturi matematičkoga modela linearnoga
programiranja, kako slijedi:
 Funkcija cilja sadrži kriterij optimalnosti:
−maksimizirati dobit radnoga tjedna.
 Varijable odlučivanja promjenjive su veličine čije vrijednosti treba odrediti radi
dobivanja optimalnoga rješenja problema, odnosno optimalne vrijednosti funkcije cilja:
−broj desktopa koje treba sklopiti (nDT)
−broj laptopa koje treba sklopiti (nLT)
− broj workstationa koje treba sklopiti (nWS).

23
 Ograničenja određuju kvantitativno područje dopuštenih vrijednosti varijabla
odlučivanja, odnosno područje izvedivosti:
−raspoloživost prvoga pogona za sklapanje (800 radnih sati, odnosno 20 radnika za
40-satni radni tjedan);
−raspoloživost drugoga pogona za sklapanje (520 radnih sati, odnosno 13 radnika za
40-satni radni tjedan);
−kapacitet A-linije za testiranje (240 radnih sati, odnosno 6 radnika za 40-satni radni
tjedan);
−kapacitet B-linije za testiranje (280 radnih sati, odnosno 7 radnika za 40-satni radni
tjedan).
 Ulazne veličine podatci su dobiveni analizom realnoga sustava:
−jedinična dobit po računalu: 100 €/DT, 110 €/LT i 160 €/WS;
− norma za sklapanje računala: 2 sata/DT, 2 sata/LT, 4 sata/WS;
−norma za testiranje računala: 1 sat/DT, 1 sat/LT, 2 sata/WS.
 Pojednostavljenja uvedena u skladu s promatranim problemom:
−stalno je raspoloživa dovoljna količina sastavnica za potrebe proizvodnje;
−sva proizvedena računala mogu se prodati.

7.1.2. Matematički model problema

Matematički model izvodi se iz logičkoga opisa problema, a sastoji se od istih elementa


zapisanih matematičkim izrazima (linearnim jednadžbama i nejednadžbama), kako slijedi:

Funkcija cilja:
max F = 100nDT + 110nLT + 160nWS. (7.1.)
Ograničenja:
2nDT + 4nWS ≤ 800 prvi pogon za sklapanje (7.2.)
2nLT ≤ 520 drugi pogon za sklapanje (7.3.)
nDT + nLT ≤ 240 A − linija za testiranje (7.4.)
2nWS ≤ 280 B − linija za testiranje (7.5.)
nDT ≥ 0, nLT ≥ 0, nWS ≥ 0 varijable su nenegativne9 (7.6.)
gdje je:
nDT = broj desktopa koje treba sklopiti
nLT = broj laptopa koje treba sklopiti
nWS = broj workstationa koje treba sklopiti.

9
Ovo je ograničenje stavljeno iz logičkih razloga. Proizvesti se može niti jedno, jedno ili više računala.
Negativna vrijednost ovdje ne bi imala smisla jer se ne može proizvesti negativan broj računala.
24
Svako je rješenje (nDT, nLT, nWS) koje zadovoljava postavljena ograničenja (matematički
izrazi od 7.2. do 7.6.) moguće ili izvedivo rješenje, a takvih rješenja ima više.
Optimalno rješenje jedno je od mogućih rješenja, u ovom slučaju ono koje daje najveću
vrijednost funkcije cilja (matematički izraz 7.1.).
Za rješavanje je problema optimiranjem matematičkoga modela primjenom MS Excel
programskoga alata Solver bitno uočiti sljedeća svojstva toga modela:
1. Model ima jednu funkciju cilja.
2. Varijable odlučivanja (argumenti funkcije cilja) međusobno su neovisne, a njihov se
učinak na vrijednost funkcije cilja zbraja.
3. Relacije između vrijednosti funkcije cilja i njezinih argumenata (varijabla odlučivanja),
kao i relacije ograničenja linearne su.
4. Varijable odlučivanja mogu poprimiti bilo koju nenegativnu cjelobrojnu vrijednost, pri
čemu je kod tumačenja dopušteno zaokruživanje (realni brojevi → cijeli brojevi) jer su
vrijednosti koje varijable mogu poprimiti dovoljno velike, te se odstupanja nalaze u
granicama točnosti ulaznih podataka (zaokruživanje ne može dovesti do grube
pogreške).

7.1.3. Optimalno rješenje problema

Tjedni plan proizvodnje koji daje najveću dobit (max F = 48.800,00 €), odnosno optimalno
rješenje problema (nDT = 0, nLT = 240, nWS = 140) dobiveno optimiranjem matematičkoga
modela primjenom MS Excel programskoga alata Solver prikazano je u MS Excel tablici na
Slici 8.

Slika 8. Optimalno rješenje problema alokacije resursa


Izvor: izradili autori

Ulazni podatci modela (konstante) zapisani su u MS Excel tablici (Slika 8.), u ćelijama od
B2, C3 i D2 (norma za sklapanje), B4, C4 i D5 (norma za testiranje), B6 do D6 (jedinična dobit)
te u G2 do G5 (kapaciteti pogona za sklapanje i linija za testiranje), onako kako su zadani.

25
Matematički izrazi koji čine strukturu modela (od 7.1. do 7.5.) također su, u obliku MS
Excel formula, upisani u odgovarajuće ćelije MS Excel tablice prikazane na Slici 8., kako je
navedeno u Tablici 5.

Tablica 5. Zapisi matematičkih izraza modela u MS Excel tablici


Matematički
Excel formula Ćelija
izraz
(7.1.) = B6*B7 + C6*C7 + D6*D7 B9
(7.2.) = B2*B7 + D2*D7 E2
(7.3.) = C3*C7 E3
(7.4.) = B4*B7 + C4*C7 E4
(7.5.) = D5*D7 E5

Izvor: izradili autori

Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options
programskoga alata Solver, s upisanim podatcima, prikazan je u Prilogu 2.
Iako se ovaj primjer odnosi na planiranje proizvodnje, stoga je samo neizravno povezan s
problematikom transporta (preko logistike nabave i logistike distribucije), odabran je jer se na
njemu može dobro prikazati praktična primjena analize osjetljivosti.

7.1.4. Analiza osjetljivosti

Nakon dobivanja optimalnoga rješenja analiza osjetljivosti provedena je istim


programskim alatom, a rezultati (engl. Sensitivity Report) su prikazani u MS Excel tablici na
Slici 9.
Osim samoga ispitivanja osjetljivosti modela na promjene ulaznih veličina, analiza
osjetljivosti ima praktičnu primjenu koja je prikazana u ovom primjeru u vidu generiranja
sljedećih informacija:
▪ koliko treba povećati prodajnu cijenu desktop računala da bi njihova proizvodnja
postala isplativa;
▪ isplati li se i pod kojim uvjetima zaposliti dodatne radnike u pogonima za sklapanje,

odnosno na linijama za testiranje kako bi se povećao njihov kapacitet.

26
Slika 9. Rezultati analize osjetljivosti, engl. Sensitivity Report
Izvor: Izradili autori

Funkcija cilja:
▪ Final Value predstavlja vrijednosti varijabla odlučivanja u optimalnom rješenju (tjedni plan
proizvodnje: broj komada desktopa, laptopa i workstationa).
▪ Reduced Cost predstavlja minimalan iznos za koji treba povećati koeficijent uz varijablu
odlučivanja čija je optimalna vrijednost jednaka nuli da se optimalno rješenje promijeni
tako da ista varijabla bude veća od nule.
▪ U ovom slučaju to je jedinična dobit na desktopima (DT) koju treba povećati za najmanje
10 ako bi njihova proizvodnja postala isplativa.
▪ Objective Coefficient predstavlja koeficijente uz varijable odlučivanja, tj. jediničnu
dobit po desktopu/laptopu/workstationu (ulazne veličine).
▪ Allowable Increase predstavlja maksimalno povećanje jedinične dobiti kod kojega
optimalno rješenje ostaje nepromijenjeno: <10/desktop, +∞/laptop, +∞/workstation.
▪ Allowable Decrease predstavlja maksimalno smanjenje jedinične dobiti kod kojega

optimalno rješenje ostaje nepromijenjeno: -∞/desktop, <10/laptop, <160/workstation.

Ograničenja:
▪ Final Value predstavlja utrošak resursa: 560 sati u prvom pogonu (neispunjeno
ograničenje), 480 sati u drugom pogonu (neispunjeno ograničenje), 240 sati na A-liniji
(ispunjeno ograničenje) te 280 sati na B-liniji (ispunjeno ograničenje).
Iz toga proizlazi kako linije za testiranje predstavljaju usko grlo, tj. kako njihov kapacitet
ograničava proizvodnju, odnosno ukupnu dobit (maksimalnu vrijednost funkcije cilja).

27
▪ Shadow price (dualna cijena) predstavlja povećanje vrijednosti funkcije cilja, u ovom
slučaju ukupne dobiti radnoga tjedna, uz jedinično povećanje kapaciteta resursa:

- svaki dodatni sat na A-liniji za testiranje povećava ukupnu dobit za 110 €;


- svaki dodatni sat na B-liniji za testiranje povećava ukupnu dobit za 80 €;
- dodatni sati u pogonu za sklapanje ne utječu na dobit jer ograničenja nisu ispunjena.

Iz toga proizlazi kako se ulaganje u povećanje kapaciteta A-linije za testiranje isplati ako
je cijena dodatnoga radnoga sata manja od 110 €, a u povećanje kapaciteta B-linije ako je
cijena dodatnoga radnoga sata manja od 80 €.
Ulaganje u povećanje kapaciteta pogona za sklapanje neovisno o povećanju kapaciteta
linija za testiranje nije isplativo jer njihov kapacitet ne ograničava proizvodnju.
▪ Allowable Increase/Decrease predstavlja područje izvedivosti, tj. raspon promjena
kapaciteta resursa (prvi pogon, drugi pogon, A-linija, B-linija) unutar kojega vrijede
navedene dualne cijene.

7.2. Problem alokacije resursa u operativnom planiranju

Operativno planiranje projekcija je bliske budućnosti poslovanja poduzeća (od šest


mjeseci do godine dana) kojom se nastoje odrediti buduće poslovne aktivnosti radi postizanja
najboljih poslovnih rezultata u određenom planskom razdoblju.
U domeni logistike to je planiranje eksploatacije postojećih (raspoloživih) resursa radi
zadovoljenja očekivanih (predviđenih) logističkih zahtjeva uz najpovoljniji omjer
uloženo/dobiveno. Obuhvaća sve faze opskrbnoga lanca radi koordinacije odgovarajućih
subjekata (dobavljač, proizvođač, distributer, maloprodaja, logistički operater...), a uključuje
donošenje odluka glede:
▪ alokacije raspoloživih kapaciteta proizvodnih pogona (radne snage i opreme), skladišta,
voznoga parka;
▪ angažiranja vanjskih dobavljača (podizvođača, kooperanata, logističkih operatera...);
▪ određivanja transportnih rješenja i rokova isporuke;
▪ upravljanja zalihama.
Problemi su operativnoga planiranja u osnovi problemi alokacije resursa te se stoga mogu
svesti na probleme optimiranja. Primjena matematičkih modela linearnoga programiranja za
njihovo rješavanje uključuje definiranje elemenata koji su sljedeći:
 funkcija cilja – maksimizirati dobit na kraju planskoga razdoblja, što se postiže
povećavanjem prihoda i/ili smanjivanjem troškova;
 varijable odlučivanja – proizvodnja, zalihe, zadovoljenje potražnje;
 ograničenja – raspoloživi resursi (infrastruktura, oprema, radna snaga,
repromaterijal...), način eksploatacije resursa, zahtjevi kupaca/korisnika;
 ulazni podatci – očekivana potražnja, materijalni troškovi, troškovi rada, norme za
obavljanje pojedinih operacija, troškovi zaliha...

28
7.2.1. Primjer problemskoga zadatka operativnoga planiranja
Prilagodili autori prema Chopra, S.; Meindl, P. 2004. Supply Chain Management. Pearson Education Inc.
New Jersey. p. 211.

Tvornica sklapa gotov proizvod od standardiziranih sastavnica koje isporučuju različiti


dobavljači. U tu svrhu raspolaže dostatnom opremom i infrastrukturom, a ograničavajući je
čimbenik proizvodnje raspoloživa radna snaga (riječ je o radno intenzivnoj djelatnosti).
Potražnja tržišta nije stalna, no uglavnom je podložna predvidivom trendu te se s velikom
sigurnošću može predvidjeti. Problem kolebanja potražnje može se rješavati na sljedeće načine:
▪ stvaranjem zaliha tijekom mjeseci manje potražnje (proizvodnja se ne mijenja)
▪ povećanjem proizvodnje tijekom mjeseci veće potražnje (razina zaliha se ne mijenja)
▪ prolongiranjem rokova isporuke (ispunjenja narudžba)
▪ kombiniranjem prethodnih načina,
uz uvjet da sve narudžbe moraju biti ispunjene do kraja planskoga razdoblja, tj. ne smije
ostati neisporučene robe za sljedeće plansko razdoblje.
Kako bi se optimalno iskoristili raspoloživi resursi i zadovoljila potražnja tržišta, tvornica
mora napraviti odgovarajući operativni plan. Ciljem je operativnoga plana maksimalna dobit
planskoga razdoblja.
Kako je prodajna cijena unaprijed ugovorena (ne može se mijenjati), na povećanje dobiti
može se utjecati smanjivanjem troškova. Maksimalna dobit postiže se minimizacijom
troškova. Za potrebe razmatranja ovoga primjera određeno je plansko razdoblje od šest
mjeseci.

7.2.2. Logički opis problema

Funkcija cilja

Minimizirati ukupni trošak planskoga razdoblja (čime se maksimizira dobit, uz


pretpostavku fiksne cijene proizvoda). Obuhvaća troškove redovitoga i prekovremenoga rada,
troškove preraspodjele radnika, troškove zaliha, troškove neispunjenih narudžba i troškove
materijala.

Varijable odlučivanja

Promjenjive veličine koje određuju vrijednost funkcije cilja. Vrijednosti tih promjenjivih
veličina treba odrediti tako da vrijednost funkcije cilja bude minimalna uz postavljena
ograničenja:
Rm = broj radnika u mjesecu m, m = 1, . . . , 6
PRm = povećanje broja radnika u mjesecu m, m = 1, . . . , 6
(dodatni broj radnika angažiranih na početku mjeseca m)
SRm = smanjenje broja radnika u mjesecu m, m = 1, . . . , 6
(broj radnika raspoređenih na druge poslove početkom mjeseca m)
Km = broj komada proizvedenih u mjesecu m, m = 1, . . . , 6
(proizvodnja u mjesecu m)
29
Zm = zalihe na kraju mjeseca m, m = 1, . . . , 6
Nm = neispunjene narudžbe na kraju mjeseca m, m = 1, . . . , 6
(broj komada koji još nisu isporučeni po primljenim narudžbama u mjesecu m)
PSm = broj prekovremenih sati u mjesecu m, m = 1, . . . , 6.

Ograničenja

Operativni plan (kvantitativno područje dopuštenih vrijednosti varijabla odlučivanja) mora


zadovoljavati sljedeća ograničenja:
1. Broj radnika može se u svakom mjesecu promijeniti (povećati ili smanjiti) najviše za
20 % od inicijalnoga broja radnika (na početku planskoga razdoblja).
2. Proizvodnja je ograničena raspoloživom radnom snagom (rad u redovitom radnom
vremenu i prekovremeni rad).
3. Broj neispunjenih narudžba u svakom mjesecu ne smije prijeći razinu zaliha tekućega
mjeseca, s tim da na kraju planskoga razdoblja ne smije ostati neispunjenih narudžba
(sva potražnja mora biti zadovoljena).
4. Minimalna razina zaliha u svakom mjesecu iznosi 1 000 komada.
5. Svaki radnik smije raditi najviše 12 prekovremenih sati u mjesecu.
6. Ukupna potražnja (potražnja tekućega mjeseca i neispunjenje narudžbe iz prethodnoga
mjeseca) u svakom mjesecu može se zadovoljiti iz tekuće proizvodnje i prethodno
stvorenih zaliha, s tim da se u svakom mjesecu mogu stvarati zalihe (proizvoditi više od
potražnje), a dio primljenih narudžba može se prebaciti u sljedeći mjesec (kao
neispunjene narudžbe).

Ulazni podatci

Početno stanje Stanje zaliha 1 200 komada


Broj radnika 100
Prognoza potražnje 1. mjesec 4 000 komada
2. mjesec 6 200 komada
3. mjesec 6 800 komada
4. mjesec 6 400 komada
5. mjesec 4 800 komada
6. mjesec 3 800 komada
Troškovi Preraspodjela radnika 200,00 €/radnik
Redoviti rad 500,00 €/mjesec
Prekovremeni rad 5,00 €/sat
Držanje zaliha 2,00 €/komad/mjesec
Neizvršene narudžbe 10,00 €/komad
Materijal 10,00 €/komad
Norma 4 sata/komad
EXW cijena 50,00 €/komad
Minimalna zaliha 1 000 komada

30
7.2.3. Matematički model problema

Funkcija cilja
6 6 6 6 6 6
min F   200PRm  SRm    500Rm   5PS m   2Z m  10 N m  10Km
m 1 m 1 m 1 m 1 m 1 m 1 (7.7.)
1. 2. 3. 4. 5. 6.

obuhvaća sljedeće elemente:


 troškove preraspodjele radnika
 troškove rada u redovitom radnom vremenu
 troškove prekovremenoga rada
 troškove zaliha
 troškove neispunjenih narudžba
 troškove materijala.

Ograničenja

1. Broj radnika
Rm  Rm1  PRm  SRm ; PRm , SRm  20  m  1,...,6 i R0  100
, (7.8.)
odnosno u formi varijable na lijevoj strani, konstanta na desnoj strani:
Rm  Rm1  PRm  SRm  0 ; PRm , SRm  20  m  1,...,6 i R0  100
. (7.9.)
Broj radnika Rm u mjesecu m jednak je broju radnika Rm-1 u mjesecu m-1 umanjenom za
SRm (smanjenje broja radnika u mjesecu m) odnosno uvećanom za PRm (povećanje broja
radnika u mjesecu m).
R0 je inicijalni broj radnika (na početku planskoga razdoblja).

2. Proizvodnja
1
Km  40Rm  PS m  m  1,...,6
4 , (7.10.)
odnosno u formi varijable na lijevoj strani, konstanta na desnoj strani:
1
40Rm  PS m  Km  0  m  1,...,6
4 . (7.11.)
31
Proizvodnja Km u mjesecu m ograničena je raspoloživim brojem radnih sati (redovitih i
prekovremenih) u mjesecu m.
S obzirom na normu (4 sata/komad) svaki radnik može proizvesti 40 jedinica proizvoda
mjesečno u redovitom radnom vremenu te po jedan proizvod za svaka četiri prekovremena
sata.

3. Neispunjene narudžbe
N m  Zm  m  1,...,6 ; N 6  0 , (7.12.)
odnosno u formi varijable na lijevoj strani, konstanta na desnoj strani:
Zm  N m  0  m  1,...,6 ; N 6  0 . (7.13.)
Količina neispunjenih narudžba ne smije prijeći razinu zaliha u tekućem mjesecu, s tim da
na kraju planskoga razdoblja ne smije ostati neispunjenih narudžba.

4. Minimalna razina zaliha


Zm  1000  m  1,...,6
. (7.14.)

5. Prekovremeni sati
PSm  12 Rm  m  1,...,6
, (7.15.)
odnosno u formi varijable na lijevoj strani, konstanta na desnoj strani:
12Rm  PSm  0  m  1,...,6
. (7.16.)

6. Zadovoljenje potražnje
Zm1  Km  Pm  N m1  Zm  N m  m  1,...,6
, (7.17.)
odnosno u formi varijable na lijevoj strani, konstanta na desnoj strani:
Zm1  Km  Pm  N m1  Zm  N m  0  m  1,...,6
. (7.18.)
Ukupna potražnja koju treba zadovoljiti u mjesecu m jednaka je zbroju potražnje Pm u
mjesecu m i neispunjenih narudžba Nm-1 iz prethodnoga mjeseca m-1. Ta se ukupna
potražnja može zadovoljiti iz proizvodnje Km tekućega mjeseca i zaliha prethodnoga
mjeseca Zm-1 ili se dio može prebaciti u sljedeći mjesec kao neispunjene narudžbe Nm
tekućega mjeseca. U mjesecu m može se proizvoditi i više nego što je potrebno za
zadovoljenje ukupne potražnje u tom mjesecu radi stvaranja zaliha Zm.

7.2.4. Optimalno rješenje problema


Optimalno je rješenje ovoga problema ono koje zadovoljava sva ograničenja uz najmanje
operativne troškove (min F = 761.788,00 €). Optimalne vrijednosti varijabla odlučivanja,
dobivene optimiranjem matematičkoga modela primjenom MS Excel programskoga alata
Solver, prikazane su u MS Excel tablici na Slici 10. u ćelijama od B6 do H11.

Inicijalne vrijednosti varijabla odlučivanja (početak planskoga razdoblja) zapisane su u


retku od B5 do G5, a predviđena je potražnja po mjesecima zapisana u stupcu od I6 do I11.
32
Slika 10. Optimalno rješenje problema operativnoga planiranja
Izvor: Izradili autori

Matematički izrazi koji čine strukturu modela (funkcija cilja, ograničenja) također su u
obliku MS Excel formula upisani u odgovarajuće ćelije MS Excel tablice, koja je prikazana na
Slici 10. Matematički izrazi modela, odgovarajuće MS Excel formule i ćelije u koje su određene
formule upisane navedene su u Tablici 6. Matematički izrazi 7.12. i 7.14. mogu se svesti na
neposredno uspoređivanje vrijednosti u odnosnim ćelijama te su stoga upisani izravno u
dijaloški okvir Solver Parameters, koji je prikazan u Prilogu 3.
Tablica 6. Zapisi matematičkih izraza modela u MS Excel tablici
Matematički
Excel formula Ćelija
izraz
= B6*200 B15:B20
= C6*200 C15:C20
= D6*500 D15:D20
= E6*5 E15:E20
(7.7.)
= F6*2 F15:F20
= G6*10 G15:G20
= H6*10 H15:H20
= SUM(B15:H20) I21
(7.9.) = D6-D5-B6+C6 K6:K11
(7.11.) = 40*D6+E6/4-H6 L6:L11
(7.16.) = 12*D6-E6 M6:M11
(7.18.) = F5+H6-I6-G5-F6+G6 N6:N11

Izvor: izradili autori

33
U MS Excel tablici koja je prikazana na Slici 10. dodatno je napravljen izračun mjesečnih
troškova (stupac I15:I20), mjesečnih prihoda (stupac K15:K20) i mjesečne dobiti (stupac
L15:L20) te ukupnoga troška (I21) koji odgovara vrijednosti funkcije cilja, ukupnoga prihoda
(K21) i ukupne dobiti (L21) za cijelo plansko razdoblje.
Mjesečni prihod izračunava se kao umnožak jedinične prodajne cijene i potražnje tekućega
mjeseca, umanjene za neispunjene narudžbe tekućega mjeseca i uvećane za neispunjene
narudžbe prethodnoga mjeseca, kako slijedi:
𝑃𝑟𝑖ℎ𝑜𝑑 𝑚𝑗𝑒𝑠𝑒𝑐𝑎 𝑚 = 50 ∙ (𝑃𝑚 − 𝑁𝑚 + 𝑁𝑚−1 ), (7.19.)
odnosno u obliku MS Excel formule upisane u ćeliju K15:
= 50*(I6-G6+G5), kopirano u sljedeće ćelije stupca do K20.

Mjesečna dobit izračunava se kao razlika između mjesečnoga prihoda i mjesečnoga troška,
kako slijedi:
𝐷𝑜𝑏𝑖𝑡 𝑚𝑗𝑒𝑠𝑒𝑐𝑎 𝑚 = 𝑃𝑟𝑖ℎ𝑜𝑑 𝑚𝑗𝑒𝑠𝑒𝑐𝑎 𝑚 − 𝑇𝑟𝑜š𝑎𝑘 𝑚𝑗𝑒𝑠𝑒𝑐𝑎 𝑚, (7.20.)
odnosno u obliku MS Excel formule upisane u ćeliju L15:
= K15-I15, kopirano u sljedeće ćelije stupca do L20.

Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options
programskoga alata Solver, s upisanim podatcima, prikazani su u Prilogu 3.

34
8. Transportni problem

Transportni je problem problem određivanja rasporeda transporta određenoga


transportnoga supstrata (homogenih jedinica tereta, primjerice paleta, kartona…) iz n izvora u
kojima se supstrat nalazi u m odredišta čiju potražnju za supstratom treba zadovoljiti, koristeći
raspoložive transportne putove po kriteriju najmanjih transportnih troškova ili najkraćega
transportnoga puta.
Raspored transporta određuje iz kojega se izvora transportira koja količina supstrata u
koje odredište i kojim transportnim putom. U osnovnom transportnom problemu poznati
(zadani) su kapaciteti i lokacije izvora, potražnja odredišta, raspoloživi transportni putovi (veze
između izvora i odredišta), jedinični transportni troškovi, odnosno duljine transportnih putova.
Osnovni oblik problema može biti dodatno složen, primjerice uvođenjem kapaciteta
transportnih sredstava, odnosno propusnosti transportnih putova i/ili vremenskih prozora kod
izvora odnosno kod odredišta.
Ukoliko je ukupna potražnja odredišta jednaka ukupnom kapacitetu izvora, problem se
naziva zatvorenim, no u praksi se često pojavljuju i situacije u kojima kapaciteti premašuju
potražnju odnosno potražnja nadmašuje kapacitete pa potražnju nije moguće zadovoljiti.
Transportni problem može se svesti na problem optimiranja radi aproksimiranja
matematičkim modelom linearnoga programiranja. U tom smislu pojedine elemente
transportnoga problema predstavljaju odgovarajući elementi transportnoga modela, kako
slijedi:
 funkcija cilja predstavlja ukupne transportne troškove, odnosno transportni put koji
treba minimizirati;
 varijable odlučivanja predstavljaju raspored transporta, tj. količine supstrata koje se
transportiraju iz određenoga izvora u određeno odredište po transportnom putu koji
povezuje određeni izvor s određenim odredištem;
 ograničenja predstavljaju uvjete koji moraju biti ispunjeni: potražnja odredišta mora
biti zadovoljena, kapaciteti izvora ne mogu biti prekoračeni, transport se može odvijati
po raspoloživim transportnim putovima;
 ulazni podatci poznate su (zadane) veličine transportne mreže: kapaciteti izvora,
potražnja odredišta, jedinični transportni troškovi.
Transportni modeli vrsta su modela mreže koja se sastoji od čvorova (izvori odnosno
odredišta) i lukova (transportni putovi) koji povezuju te čvorove. Transportni model prikazuje
razdiobu transportnih (robnih) tokova unutar transportne mreže, tj. između čvorova čije su
funkcije i lokacije poznate (zadane). Ovdje treba razmotriti sljedeća pitanja:
 Iz kojih izvora opskrbljivati koja odredišta?
 Kako kvantitativno odrediti razdiobu transporta?
 Koje transportne putove odabrati?
Odgovori na ova pitanja određuju suprastrukturno rješenje transportne mreže u danom
slučaju. Primjenom transportnih modela može se u tom smislu optimirati funkcioniranje
transportne mreže kao cjeline.

35
Optimalno rješenje transportnoga problema jest povezivanje izvorišnih čvorova
(proizvodni pogoni, distribucijski centri...) i odredišnih čvorova (skladišta, prodajna mjesta...)
transportnim putovima tako da potražnja bude zadovoljena, a trošak transporta minimalan.

8.1. Matematički model transportnoga problema

Matematička formulacija transportnoga problema, tj. transportni model sastoji se od


elemenata matematičkoga modela linearnoga programiranja, kako je opisano u prethodnoj točki
(funkcija cilja, ograničenja, varijable odlučivanja, ulazni podatci), zapisanih matematičkim
izrazima kako slijedi:

funkcija cilja
n m
min F   tij  qij (8.1.)
i 1 j 1

ograničenja
n

q
i 1
ij  pj  j  1,..., m (8.2.)

q
j 1
ij  ki  i  1,..., n (8.3.)

qij  0  i  1,..., n ; j  1,..., m (8.4.)

gdje je:
tij = jedinični transportni trošak na relaciji od izvora i do odredišta j
qij = količina robe koja se iz izvora i transportira do odredišta j
m = ukupan broj odredišta čiju potražnju treba zadovoljiti
n = ukupan broj izvora
ki = kapacitet izvora i
pj = potražnja odredišta j.

Jednadžba (8.1.) predstavlja funkciju cilja, tj. ukupni transportni trošak na razini cijele
mreže kao zbroj produkata količine robe i jediničnoga transportnoga troška na svim relacijama
transportne mreže.
Jednadžba (8.2.) predstavlja ograničenje koje određuje kako potražnja svih odredišta mora
biti zadovoljena, nejednadžba (8.3.) predstavlja ograničenje koje određuje kako ukupna
količina robe koja se transportira iz pojedinoga izvora ne može biti veća od njegovoga
kapaciteta, a nejednadžba (8.4.) predstavlja uvjet nenegativnosti varijable odlučivanja
(transport negativne količine robe nema logičkoga smisla).

36
8.2. Primjer osnovnoga transportnoga problema
Prilagodili autori prema Chopra, S.; Meindl, P. 2004. Supply Chain Management. Pearson Education Inc.
New Jersey. p. 119.

Iz logističko-distribucijskih centara (LDC-a) na trima lokacijama (Budimpešta, Rijeka i


Zagreb) distributer opskrbljuje prodajna mjesta u pojedinim gradovima na svom tržištu.
Minimalna je količina robe koja se isporučuje jedna paleta.
Transportna je mreža zadana geografskim rasporedom tržišta i cestovnom infrastrukturom,
a zajedno je s mjesečnom potražnjom prodajnih mjesta u pojedinim gradovima prikazana
zemljovidom na Slici 11. Transparentni krugovi predstavljaju gravitacijske zone pojedinih
gradova, a promjeri krugova proporcionalni su potražnji prodajnih mjesta u određenoj
gravitacijskoj zoni.

Slika 11. Transportna mreža


Izvor: Izradili autori

Ulazni podatci problema, odnosno poznate (zadane) veličine: jedinični transportni troškovi
(€/paleta), potražnja po gradovima (paleta/mjesec) i kapaciteti LDC-a po lokacijama
(paleta/mjesec) prikazani su u Tablici 7.

37
Tablica 7. Ulazni podatci problema
Transportni troškovi (€/paleta)
Kapacitet
Od / Do Budapest Szeged Ljubljana Maribor Osijek Rijeka Sarajevo Split Šibenik Zadar Zagreb
LDC-a
Budapest 7 21 49 49 38 63 70 67 65 63 42 2.000
Rijeka 63 70 23 29 44 7 48 29 28 26 21 1.200
Zagreb 42 49 22 24 31 21 32 26 24 23 7 2.200
Potražnja
800 300 500 400 300 600 400 500 300 400 700 200
(paleta)

Izvor: izradili autori

Za razdoblje od jednoga mjeseca treba odrediti raspored transporta (koje će se količine


robe transportirati iz kojih LDC-a u koje gradove) tako da potražnja bude zadovoljena, a
transportni troškovi minimalni.

8.2.1. Logički opis problema

Logički opis problema prethodi izradi matematičkoga modela. Sadrži funkcionalni prikaz
strukture postavljenoga zadatka koji odgovara strukturi matematičkoga modela linearnoga
programiranja, kako slijedi:
 funkcija cilja sadrži kriterij optimalnosti:
− minimizirati transportne troškove (min F);
 varijable odlučivanja promjenjive su veličine čije vrijednosti treba odrediti radi
dobivanja optimalnoga rješenja problema, odnosno minimalne vrijednosti funkcije cilja:
− raspored transporta;
 ograničenja određuju kvantitativno područje dopuštenih vrijednosti varijabla
odlučivanja, odnosno područje izvedivosti:
− potražnja prodajnih mjesta u svakom gradu mora biti zadovoljena;
− iz svakoga izvora (LDC-a) ukupno se može transportirati najvište toliko robe koliki
je njegov kapacitet;
 ulazne veličine podatci su dobiveni analizom realnoga sustava, a prikazani su u Tablici
6.:
− jedinični transportni troškovi od svakoga LDC-a do svakoga grada (€/paleta);
− potražnja prodajnih mjesta u svakom gradu (paleta/mjesec);
− kapaciteti LDC-a (paleta/mjesec).

8.2.2. Rješivost problema

Prije nego se pristupi izradi matematičkoga modela problema, treba provjeriti je li problem
rješiv, tj. je li moguće pronaći rješenje koje zadovoljava postavljena ograničenja. U svezi s tim
ovaj je problem rješiv ukoliko se raspoloživim kapacitetima LDC-a može zadovoljiti potražnja
svih prodajnih mjesta ili, drugim rječima, problem je rješiv ukoliko je ukupni kapacitet svih
LDC-a veći ili jednak ukupnoj potražnji prodajnih mjesta.

38
Uvjet rješivosti ovoga problema matematički se može izraziti na sljedeći način:

Neka je:
n
K   ki (8.5.)
i 1
m
P   pj (8.6.)
j 1
gdje je:
n = ukupan broj LDC-a (n = 3)
ki = kapacitet LDC-a na lokaciji i
K = ukupan kapacitet svih LDC-a u mreži
m = ukupan broj gradova koje treba opskrbiti (m = 11)
pj = potražnja u gradu j
P = ukupna potražnja tržišta

uvjet rješivosti glasi: KP (8.7.)

Ukupni kapacitet svih LDC-a u mreži iznosi K = 5 400 paleta/mjesec. Ukupna potražnja
svih prodajnih mjesta na tržištu iznosi P = 5 200 paleta/mjesec. Kako je 5 400 > 5 200, problem
je rješiv.

8.2.3. Matematički model problema

Matematički model problema izrađuje se na temelju logičkoga opisa problema uz


korištenje ulaznih podataka. Sastoji se od istih elementa prikazanih u Točki 8.1., pri čemu su
izvorišni čvorovi LDC-i, a odredišni čvorovi prodajna mjesta u gradovima koje treba opskrbiti.
Ulazni podatci koje treba uvrstiti u model (broj LDC-a, broj gradova, kapaciteti LDC-a,
potražnja prodajnih mjesta u gradovima, transportni troškovi) prikazani su u Tablici 7.

8.2.4. Optimalno rješenje problema

Mjesečni raspored transporta koji zadovoljava postavljena ograničenja uz najmanje


transportne troškove, odnosno optimalno rješenje problema dobiveno je optimiranjem
matematičkoga modela primjenom MS Excel programskoga alata Solver, kako slijedi:
 LDC u Budimpešti opskrbljuje prodajna mjesta Budimpešte (800 paleta), Szegeda (300
paleta), Maribora (400 paleta) i Osijeka (300 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 1800 paleta
mjesečno, što je manje od njegovoga kapaciteta (2 000 paleta mjesečno), tj. kapacitet
nije u potpunosti iskorišten.

39
 LDC u Rijeci opskrbljuje prodajna mjesta Ljubljane (500 paleta), Rijeke (600 paleta) i
Splita (100 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 1 200 paleta
mjesečno, što je jednako njegovom kapacitetu (1 200 paleta mjesečno), tj. kapacitet je
iskorišten u potpunosti.
 LDC u Zagrebu opskrbljuje prodajna mjesta Sarajeva (400 paleta), Splita (400 paleta),
Šibenika (300 paleta), Zadra (400 paleta) i Zagreba (700 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 2 200 paleta
mjesečno, što je jednako njegovom kapacitetu (2 200 paleta mjesečno), tj. kapacitet je
iskorišten u potpunosti.
 Ukupni mjesečni transportni trošak na razini cijele transportne mreže iznosi: min.
F = 106 000 00 €/mjesec.
Navedeno je optimalno rješenje prikazano u tabličnoj formi, u polju B10:L1210 MS Excel
tablice na Slici 12.

Slika 12. Optimalno rješenje transportnoga problema


Izvor: Izradili autori

Ulazni podatci modela (konstante) zapisani su u MS Excel tablici (Slika 12.), u polju
B3:L5 (jedinični transportni troškovi), retku B6:L6 (potražnja prodajnih mjesta) te stupcu
M3:M5 (kapaciteti LDC-a), onako kako su zadani.
Matematički izrazi koji čine strukturu modela (od 8.1. do 8.4.) također su, u obliku MS
Excel formula, upisani u odgovarajuće ćelije MS Excel tablice prikazane na Slici 12., kako je
navedeno u Tablici 8.

10
Ovo je standardna MS Excel notacija koja znači da se radi o dijelu tablice (dvodimenzionalnom polju)
omeđenom stupcima B i L, odnosno redovima 10 i 12. Dakle, sadržane su sve ćelije počevši od B10 do
uključivo L12.
40
Tablica 8. Zapisi matematičkih izraza transportnoga modela u MS Excel tablici

Matematički izraz Excel formula Ćelije

(8.1.) = SUMPRODUCT(B10:L12;B3:L5) B9
lijeva strana kopirano u
= SUM(B10:B12)
jednadžbe (8.2.) B13:L13
lijeva strana kopirano u
= SUM(B10:L10)
nejednadžbe (8.3.) M10:M12
 Make Unconstrained Variables Non-Negative
(8.4.)
(Dijaloški okvir Solver Parameters)
Izvor: izradili autori

Desne su strane matematičkih izraza ograničenja (8.2. i 8.3.) konstante te se u dijaloški


okvir Solver Parameters upisuju reference na ćelije u kojima su upisane vrijednosti tih
konstanta (B6:L6 = potražnja prodajnih mjesta, odnosno M3:M5 = kapaciteti LDC-a).
Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options
programskoga alata Solver, s upisanim podatcima, prikazan je u Prilogu 4.
Optimiranjem transportnoga (matematičkoga) modela dobiveno je optimalno rješenje
transportnoga problema, tj. mjesečni raspored transporta koji uz zadana ograničenja i ulazne
podatke daje najmanje transportne troškove. Grafički prikaz dobivenoga optimalnoga
rješenja transportnoga problema nalazi se na zemljovidu na Slici 13.
Strelice predstavljaju veze između izvora (LDC-a) i odredišta (gradova) robnih tokova
(strelice ne pokazuju stvarne transportne putove, nego samo simbolički povezuju izvor i
odredište − transport robe odvija se po cestovnoj infrastrukturi koja povezuje određeni LDC i
određeni grad). Debljina je strelice proporcionalna količini robe koja se transportira na
transportnoj relaciji koju određena strelica predstavlja.

41
600

400

Slika 13. Grafički prikaz optimalnoga rješenja transportnoga problema


Izvor: Izradili autori

42
9. Lokacijski problem

Lokacijski je problem problem određivanja broja i lokacija izvorišnih čvorova te


rasporeda transporta određenoga supstrata (homogenih jedinica tereta, primjerice paleta,
kartona…) iz n izvora, u kojima se supstrat nalazi, u m odredišta, čiju potražnju za supstratom
treba zadovoljiti koristeći raspoložive transportne putove po kriteriju najmanjih troškova.
Troškovi se ovdje odnose ne samo na transportne troškove, već i na troškove infrastrukture
(izvorišnih čvorova: proizvodnih pogona ili LDC-a iz kojih se generiraju transportni tokovi).
Osim što se u obzir uzimaju i troškovi infrastrukture, lokacijski se problemi od transportnih
problema razlikuju po tome što broj i lokacije izvorišnih čvorova nisu poznati, već ih treba
odrediti.
Broj i lokacije izvorišnih čvorova predstavljaju izbor lokacija u transportnoj mreži iz
kojih se može transportirati supstrat radi zadovoljenja potražnje odredišta. Pritom svaka
lokacija (čvor na transportnoj mreži) ima svoju potražnju kao odredište, no istodobno može
imati i funkciju izvora iz kojega se može zadovoljiti potražnja određene lokacije i drugih
lokacija (čvorova na transportnoj mreži) onoliko koliko to kapacitet izvora na određenoj
lokaciji omogućuje. Primjerice, potražnja prodajnih mjesta u nekom gradu može biti
zadovoljena otvaranjem LDC-a u tom gradu ili iz LDC-a koji je otvoren u nekom drugom gradu.
Prema tomu, svaki je čvor na transportnoj mreži ujedno i potencijalna lokacija LDC-a.
Raspored transporta određuje iz kojega se izvora (lokacije na kojoj je otvoren LDC)
transportira koja količina supstrata u koje odredište i kojim transportnim putom.
U osnovnom lokacijskom problemu poznati (zadani) su kapaciteti i troškovi potencijalnih
izvora, potražnja odredišta, raspoloživi transportni putovi (veze između izvora i odredišta),
jedinični transportni troškovi, odnosno duljine transportnih putova. Osnovni oblik problema
može biti dodatno zakompliciran, primjerice mogućnošću određivanja kapaciteta izvora,
uvođenjem kapaciteta transportnih sredstava, odnosno propusnosti transportnih putova i/ili
vremenskih prozora kod izvora odnosno kod odredišta.
Lokacijski problem može se svesti na problem optimiranja radi aproksimiranja
matematičkim modelom linearnoga programiranja. U modelu se koriste stalne varijable
(raspored transporta) i binarne varijable (broj i lokacije izvorišnih čvorova). U tom smislu
pojedine elemente lokacijskoga problema predstavljaju odgovarajući elementi lokacijskoga
modela, kako slijedi:
 funkcija cilja predstavlja ukupne troškove opskrbe odredišta (troškovi infrastrukture i
transportni troškovi) koje treba minimizirati;
 varijable odlučivanja predstavljaju broj i lokacije izvorišnih čvorova te raspored
transporta, tj. količine supstrata koje se transportiraju iz određenoga izvora u određeno
odredište po transportnom putu koji povezuje određeni izvor s određenim odredištem;
 ograničenja predstavljaju uvjete koji moraju biti ispunjeni: potražnja odredišta mora
biti zadovoljena, kapaciteti izvora ne mogu biti prekoračeni, transport se može odvijati
po raspoloživim transportnim putovima;
 ulazni podatci poznate su (zadane) veličine transportne mreže: potencijalne lokacije i
kapaciteti izvora, potražnja odredišta, troškovi infrastrukture i jedinični transportni
troškovi.

43
Lokacijski modeli također su vrsta modela mreže koja se sastoji od čvorova (izvori
odnosno odredišta) i lukova (transportni putovi) koji povezuju te čvorove. Lokacijski model
prikazuje broj i lokacije izvora te razdiobu transportnih (robnih) tokova unutar transportne
mreže. Ovdje treba razmotriti sljedeća pitanja:
 Kako odrediti broj i lokacije izvora?
 Iz kojih izvora opskrbljivati koja odredišta?
 Kako kvantitativno odrediti razdiobu transporta?
 Koje transportne putove odabrati?
Odgovori na ova pitanja određuju infrastrukturno i suprastrukturno rješenje transportne
mreže u danom slučaju. Primjenom lokacijskih modela može se optimirati funkcioniranje
transportne mreže kao cjeline.
Optimalno rješenje lokacijskoga problema može se dobiti optimiranjem matematičkoga
modela problema, a obuhvaća sljedeće elemente:
▪ određivanje broja i lokacija izvorišnih čvorova;
▪ povezivanje izvorišnih čvorova (proizvodni pogoni, LDC-i...) i odredišnih čvorova
(skladišta, prodajna mjesta...) transportnim putovima;
▪ određivanja količina supstrata kojima se iz pojedinoga izvora zadovoljava potražnja
odredišta, odnosno količina supstrata koje se transportiraju na pojedinom
transportnom putu,
tako da se potražnja odredišta zadovolji uz najmanje troškove i da se pritom ne prekorače
kapaciteti izvora.

9.1. Primjer osnovnoga lokacijskoga problema


Prilagodili autori prema Chopra, S.; Meindl, P. 2004. Supply Chain Management. Pearson Education Inc.
New Jersey. p. 111.

Distributer opskrbljuje prodajna mjesta u 11 gradova. Geografski raspored tržišta, cestovna


infrastruktura i mjesečna potražnja prodajnih mjesta u pojedinim gradovima prikazani su
zemljovidom na Slici 14. Transparentni krugovi predstavljaju gravitacijske zone pojedinih
gradova, a promjeri krugova proporcionalni su potražnji prodajnih mjesta u određenoj
gravitacijskoj zoni.
Treba odrediti broj i lokacije LDC-a te raspored transporta tako da se potražnja prodajnih
mjesta u svim gradovima zadovolji uz najmanje troškove i da se pritom ne prekorače kapaciteti
LDC-a.
Svaki je grad potencijalna lokacija LDC-a, s tim da se na svakoj lokaciji može otvoriti
samo jedan ili niti jedan LDC. Najveći je mogući broj LDC-a koji mogu biti otvoreni u
transportnoj mreži jednak broju gradova.

44
Slika 14. Geografski raspored tržišta
Izvor: Izradili autori

Ulazni podatci problema, odnosno poznate (zadane) veličine jesu: fiksni troškovi LDC-a
(€/mjesec)11, jedinični transportni troškovi (€/paleta)12, potražnja po gradovima (paleta/mjesec)
i kapaciteti LDC-a po potencijalnim lokacijama (paleta/mjesec). Prikazani su u Tablici 9.

11
Fiksni su troškovi LDC-a troškovi najma skladišnoga prostora, lizing, odnosno amortizacija opreme (viličari,
regali, IT i ostala skladišna oprema), troškovi radne snage, troškovi režija…). Ovi se troškovi pojavljuju ukoliko
se na nekoj lokaciji otvori LDC, a njihov je iznos stalan (ne mijenja se).
12
Jedinični transportni troškovi prikazani su na temelju tarifa logističkih operatera.
45
Tablica 9. Ulazni podatci osnovnoga lokacijskoga problema
Transportni troškovi (€/paleta) LDC
Fiksni
Od / Do Budapest Szeged Ljubljana Maribor Osijek Rijeka Sarajevo Split Šibenik Zadar Zagreb Kapacitet
trošak
Budapest 7 21 49 49 38 63 70 67 65 63 42 20.000 1.800
Szeged 21 7 84 70 35 70 70 77 73 70 49 18.000 1.800
Ljubljana 49 84 7 21 42 23 55 49 45 42 22 22.000 1.800
Maribor 49 70 21 7 49 29 55 49 45 42 24 20.000 1.800
Osijek 38 35 42 49 7 44 38 70 66 63 31 12.000 1.800
Rijeka 63 70 23 29 44 7 48 29 28 26 21 14.000 1.800
Sarajevo 70 70 55 55 38 48 7 30 40 50 32 12.000 1.800
Split 67 77 49 49 70 29 30 7 17 29 26 14.000 1.800
Šibenik 65 73 45 45 66 28 40 17 7 28 24 14.000 1.800
Zadar 63 70 42 42 63 26 50 29 28 7 23 14.000 1.800
Zagreb 42 49 22 24 31 21 32 26 24 23 7 18.000 1.800
Potražnja
800 300 500 400 300 600 400 500 300 400 700
(paleta)

Izvor: izradili autori

9.1.1. Logički opis problema

Logički opis problema prethodi izradi matematičkoga modela. Sadrži funkcionalni prikaz
strukture postavljenoga zadatka koji odgovara strukturi matematičkoga modela linearnoga
programiranja, kako slijedi:
 Funkcija cilja sadrži kriterij optimalnosti:
- minimizirati troškove opskrbe prodajnih mjesta koji se sastoje od fiksnih troškova
LDC-a i varijabilnih troškova transporta (min F).
 Varijable odlučivanja promjenjive su veličine čije vrijednosti treba odrediti radi
dobivanja optimalnoga rješenja problema, odnosno minimalne vrijednosti funkcije cilja:
- broj i lokacije LDC-a
- raspored transporta.
 Ograničenja određuju kvantitativno područje dopuštenih vrijednosti varijabla
odlučivanja, odnosno područje izvedivosti:
- potražnja prodajnih mjesta u svakom gradu mora biti zadovoljena;
- na svakoj lokaciji može se otvoriti samo jedan ili niti jedan LDC;
- iz svakoga izvora (LDC-a) ukupno se može transportirati najvište toliko robe koliki
je njegov kapacitet.
 Ulazne veličine podatci su dobiveni analizom realnoga sustava, a prikazani su u Tablici
9:
- fiksni troškovi LDC-a;
- jedinični transportni troškovi od svake potencijalne lokacije LDC-a do svakoga
grada (€/paleta);
- potražnja prodajnih mjesta u svakom gradu (paleta/mjesec);
- kapaciteti LDC-a na svim potencijalnim lokacijama (paleta/mjesec).

46
9.1.2. Rješivost problema

Prije nego se pristupi izradi matematičkoga modela problema, treba provjeriti je li problem
rješiv, tj. je li moguće pronaći rješenje koje zadovoljava postavljena ograničenja. U svezi s tim
ovaj je problem rješiv ukoliko se raspoloživim kapacitetima LDC-a može zadovoljiti potražnja
svih prodajnih mjesta ili, drugim rječima, problem je rješiv ukoliko je ukupni kapacitet svih
LDC-a koji mogu biti otvoreni u transportnoj mreži veći ili jednak ukupnoj potražnji prodajnih
mjesta.

Uvjet rješivosti ovoga problema matematički se može izraziti na sljedeći način:

Neka je:
n
K max   li  ki ; li  1  i  1,..., n (9.1.)
i 1
m
P   pj (9.2.)
j 1

gdje je:

li = lokacijska varijabla (binarna), poprima vrijednost 1 ako je LDC otvoren


na lokaciji i odnosno 0 ako LDC nije otvoren na lokaciji i
n = ukupan broj potencijalnih lokacija LDC-a (n = 11)
ki = kapacitet LDC-a na lokaciji i
Kmax = ukupan kapacitet svih LDC-a koji mogu biti otvoreni u transportnoj mreži
m = ukupan broj gradova koje treba opskrbiti (m = 11)
pj = potražnja u gradu j
P = ukupna potražnja tržišta (prodajnih mjesta u svim gradovima),

uvjet rješivosti glasi:

K max  P (9.3.)

Ukupan kapacitet svih LDC-a koji mogu biti otvoreni u transportnoj mreži (svaki je grad
potencijalna lokacija) iznosi Kmax = 19 800 paleta/mjesec.
Ukupna potražnja svih prodajnih mjesta na tržištu iznosi P = 5 200 paleta/mjesec. Kako je
19 800 > 5 200, problem je rješiv.

47
9.1.3. Matematički model problema

Matematički model problema izrađuje se na temelju logičkoga opisa problema uz


korištenje ulaznih podataka. Sastoji se od istih elementa zapisanih matematičkim izrazima na
sljedeći način:

funkcija cilja
n n m
min F   li  fti   tij  qij (9.4.)
i 1 i 1 j 1

ograničenja
n

q
i 1
ij  pj  j  1,..., m (9.5.)

q
j 1
ij  li  ki  i  1,..., n (9.6.)

li  0,1  i  1,..., n (9.7.)

qij  0  i  1,..., n ; j  1,..., m (9.8.)

gdje je:
li = lokacijska varijabla (binarna), poprima vrijednost 1 ako je LDC otvoren na
lokaciji i odnosno 0 ako LDC nije otvoren na lokaciji i
fti = fiksni trošak LDC-a na lokaciji i
tij = jedinični transportni trošak od LDC-a na lokaciji i do prodajnih mjesta u
gradu j
qij = količina robe koja se iz LDC-a na lokaciji i transportira do prodajnih mjesta
u gradu j
m = ukupan broj gradova čija prodajna mjesta treba opskrbiti (m = 11)
n = ukupan broj potencijalnih lokacija LDC-a (n = 11)
ki = mjesečni kapacitet LDC-a na lokaciji i
pj = mjesečna potražnja prodajnih mjesta u gradu j.

Jednadžba (9.4.) predstavlja funkciju cilja, tj. ukupni trošak opskrbe prodajnih mjesta na
razini cijele mreže. Sastoji se od fiksnih troškova LDC-a (zbroj fiksnih troškova na svim
lokacijama na kojima je otvoren LDC) i varijabilnih troškova transporta (zbroj produkata
količine robe i jediničnoga transportnoga troška na svim transportnim relacijama).
Ograničenja predstavljaju matematički izrazi od (9.5.) do (9.8.). Jednadžba (9.5.)
predstavlja ograničenje koje određuje kako potražnja prodajnih mjesta u svim gradovima mora
biti zadovoljena, nejednadžba (9.6.) predstavlja ograničenje koje određuje kako se sa svake
lokacije može transportirati najviše toliko robe koliki je kapacitet LDC-a otvorenoga na
određenoj lokaciji (ukoliko na nekoj lokaciji nije otvoren LDC, s te se lokacije ne može
transportirati roba), izraz (9.7.) određuje kako se na svakoj potencijalnoj lokaciji može otvoriti

48
samo jedan ili niti jedan LDC, a nejednadžba (9.8.) predstavlja uvjet nenegativnosti (transport
negativne količine robe nema logičkoga smisla).

9.1.4. Optimalno rješenje problema

Optimalan broj i lokacije LDC-a te mjesečni raspored transporta koji zadovoljava


postavljena ograničenja uz najmanje troškove opskrbe prodajnih mjesta, odnosno optimalno
rješenje problema dobiveno je optimiranjem matematičkoga modela primjenom MS Excel
programskoga alata Solver, kako slijedi:
 LDC u Budimpešti opskrbljuje prodajna mjesta Budimpešte (800 paleta) i Szegeda
(300 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 1 100 paleta
mjesečno, što je manje od njegovoga kapaciteta (1 800 paleta mjesečno), tj. kapacitet
nije u potpunosti iskorišten.
 LDC u Rijeci opskrbljuje prodajna mjesta Ljubljane (500 paleta) i Rijeke (600 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 1 100 paleta
mjesečno, što je manje od njegovoga kapaciteta (1 800 paleta mjesečno), tj. kapacitet
nije u potpunosti iskorišten.
 LDC u Splitu opskrbljuje prodajna mjesta Sarajeva (400 paleta), Splita (500 paleta) i
Šibenika (300 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 1 200 paleta
mjesečno, što je manje od njegovoga kapaciteta (1800 paleta mjesečno), tj. kapacitet
nije u potpunosti iskorišten.
 LDC u Zagrebu opskrbljuje prodajna mjesta Maribora (400 paleta), Osijeka (300
paleta), Zadra (400 paleta) i Zagreba (700 paleta).
Ukupna količina robe koja se transportira iz ovoga LDC-a iznosi iznosi 1 800 paleta
mjesečno, što je jednako njegovom kapacitetu (1 800 paleta mjesečno), tj. kapacitet je
u potpunosti iskorišten.
 Ukupni mjesečni trošak opskrbe prodajnih mjesta na razini cijele transportne mreže
iznosi: min. F = 147.200,00 €/mjesec.
Navedeno optimalno rješenje prikazano je u tabličnoj formi, u polju B18:M28 MS Excel
tablice na Slici 15.

49
Slika 15. Optimalno rješenje osnovnoga lokacijskoga problema
Izvor: Izradili autori
Ulazni podatci modela (konstante) zapisani su u MS Excel tablici (Slika 15.), u polju
B3:L13 (jedinični transportni troškovi), retku B14:L14 (potražnja prodajnih mjesta), stupcu
M3:M13 (fiksni mjesečni troškovi LDC-a na potencijalnim lokacijama) te stupcu N3:N13
(kapaciteti LDC-a na potencijalnim lokacijama), onako kako su zadani.
Matematički izrazi koji čine strukturu lokacijskoga modela (od 9.4. do 9.8.) također su, u
obliku MS Excel formula, upisani u odgovarajuće ćelije MS Excel tablice prikazane na Slici 15.,
kako je navedeno u Tablici 10.
Tablica 10. Zapisi matematičkih izraza lokacijskoga modela u MS Excel tablici

Matematički izraz Excel formula Ćelije


= SUMPRODUCT(M18:M28;M3:M13) +
(9.4.) E31
SUMPRODUCT(B18:L28;B3:L13)
lijeva strana kopirano u
= SUM(B18:B28)
jednadžbe (9.5.) B29:L29
lijeva strana kopirano u
= SUM(B18:L18)
nejednadžbe (9.6.) O18:O28
desna strana kopirano u
= M18*N3
nejednadžbe (9.6.) N18:N28
M18:M28 = binary
(9.7.)
(Dijaloški okvir Solver Parameters)
 Make Unconstrained Variables Non-Negative
(9.8.)
(Dijaloški okvir Solver Parameters)
Izvor: izradili autori
50
Desna je strana jednadžbe (9.5.) konstanta te se u dijaloški okvir Solver Parameters upisuju
reference na ćelije u kojima su upisane vrijednosti te konstante (B14:L14 = potražnja prodajnih
mjesta).
Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options
programskog alata Solver, s upisanim podatcima, prikazan je u Prilogu 5.
Optimiranjem je lokacijskoga (matematičkoga) modela dobiveno optimalno rješenje
lokacijskoga problema, tj. broj i lokacije LDC-a te mjesečni raspored transporta koji uz zadana
ograničenja i ulazne podatke daje najmanje troškove opskrbe prodajnih mjesta. Grafički se
prikaz dobivenoga optimalnoga rješenja lokacijskoga problema nalazi na zemljovidu na Slici
16.
Lokacije na kojima su otvoreni LDC-i označene su na zemljovidu, a strelice predstavljaju
veze između izvora (LDC-a) i odredišta (gradova) robnih tokova (strelice ne pokazuju stvarne
transportne putove, nego samo simbolički povezuju izvor i odredište − transport robe odvija se
po cestovnoj infrastrukturi koja povezuje određeni LDC i određeni grad). Debljina je strelice
proporcionalna količini robe koja se transportira na transportnoj relaciji koju određena strelica
predstavlja.
LDC-i opskrbljuju prodajna mjesta gradova u kojima su otvoreni, kao i prodajna mjesta u
drugim gradovima na koje pokazuju strelice ucrtane na zemljovidu.

Slika 16. Grafički prikaz optimalnoga rješenja osnovnoga lokacijskoga problema


Izvor: Izradili autori
51
9.2. Prošireni lokacijski problem

U primjeru osnovnoga lokacijskog problema (cf. Točku 10.1.) kapaciteti LDC-a koji mogu
biti otvoreni na potencijalnim lokacijama bili su zadani. U nastavku je taj problem proširen tako
da kapaciteti LDC-a nisu zadani, već ih treba odrediti izborom između dvaju tipova LDC-a (Tip
A i Tip B) različitih kapaciteta i odnosnih fiksnih troškova.
Lokacijski model (matematički model linearnoga programiranja) koji je primijenjen u
rješavanju osnovnoga lokacijskoga problema (cf. supra Točku 9.1.3.) potrebno je izmijeniti i
dopuniti kako bi obuhvatio dodatne elemente proširenoga lokacijskoga problema, vezane uz
izbor kapaciteta LDC-a. U skladu s tim treba prilagoditi formulacije i ulazne podatke koji se
unose u MS Excel tablicu koja se koristi za rješavanje problema pomoću MS Excel
programskoga alata Solver.
Ulazni podatci proširenoga lokacijskoga problema (potražnja po gradovima, jedinični
transportni troškovi, fiksni troškovi i kapaciteti pojedinoga tipa LDC-a za svaku potencijalnu
lokaciju) prikazani su u Tablici 11.
Tablica 11. Ulazni podatci proširenoga lokacijskoga problema
Transportni troškovi (€/paleta) LDC Tip A LDC Tip B
Fiksni Fiksni
Od / Do Budapest Szeged Ljubljana Maribor Osijek Rijeka Sarajevo Split Šibenik Zadar Zagreb Kapacitet Kapacitet
trošak trošak
Budapest 7 21 49 49 38 63 70 67 65 63 42 20.000 1.800 26.000 3.200
Szeged 21 7 84 70 35 70 70 77 73 70 49 18.000 1.800 23.400 3.200
Ljubljana 49 84 7 21 42 23 55 49 45 42 22 22.000 1.800 28.600 3.200
Maribor 49 70 21 7 49 29 55 49 45 42 24 20.000 1.800 26.000 3.200
Osijek 38 35 42 49 7 44 38 70 66 63 31 12.000 1.800 15.600 3.200
Rijeka 63 70 23 29 44 7 48 29 28 26 21 14.000 1.800 18.200 3.200
Sarajevo 70 70 55 55 38 48 7 30 40 50 32 12.000 1.800 15.600 3.200
Split 67 77 49 49 70 29 30 7 17 29 26 14.000 1.800 18.200 3.200
Šibenik 65 73 45 45 66 28 40 17 7 28 24 14.000 1.800 18.200 3.200
Zadar 63 70 42 42 63 26 50 29 28 7 23 14.000 1.800 18.200 3.200
Zagreb 42 49 22 24 31 21 32 26 24 23 7 18.000 1.800 23.400 3.200
Potražnja
800 300 500 400 300 600 400 500 300 400 700
(paleta)

Izvor: izradili autori

Matematički model proširenoga lokacijskoga problema sastoji se od sljedećih elemenata


zapisanih sljedećim matematičkim izrazima:

funkcija cilja
n n m
min F   lAi  ftAi  lBi  ftBi    tij  qij (9.9.)
i 1 i 1 j 1

ograničenja
n

qi 1
ij  pj  j  1,..., m (9.10.)
m

q
j 1
ij  lAi  kAi  lBi  kBi  i  1,..., n (9.11.)

lAi , lBi  0,1  i  1,..., n (9.12.)

lAi  lBi  1  i  1,..., n (9.13.)

qij  0  i  1,..., n ; j  1,..., m (9.14.)


52
gdje je:

lAi = lokacijska varijabla (binarna), poprima vrijednost 1 ako je LDC Tipa A


otvoren na lokaciji i odnosno 0 ako LDC Tipa A nije otvoren na lokaciji i
ftAi = fiksni trošak LDC-a Tipa A na lokaciji i
lBi = lokacijska varijabla (binarna), poprima vrijednost 1 ako je LDC Tipa B
otvoren na lokaciji i odnosno 0 ako LDC Tipa B nije otvoren na lokaciji i
ftBi = fiksni trošak LDC-a Tipa B na lokaciji i
tij = jedinični transportni trošak od LDC-a na lokaciji i do prodajnih mjesta u
gradu j
qij = količina robe koja se iz LDC-a na lokaciji i transportira do prodajnih mjesta
u gradu j
m = ukupan broj gradova čija prodajna mjesta treba opskrbiti (m = 11)
n = ukupan broj potencijalnih lokacija LDC-a (n = 11)
kAi = mjesečni kapacitet LDC-a Tipa A na lokaciji i
kBi = mjesečni kapacitet LDC-a Tipa B na lokaciji i
pj = mjesečna potražnja prodajnih mjesta u gradu j.

Ulazni podatci proširenoga lokacijskoga modela zapisani su u MS Excel tablici prikazanoj


na Slici 17. na sljedeći način:
▪ u polju B3:L13 prikazani su jedinični transportni troškovi (€/paleta);
▪ u retku B14:L14 prikazana je mjesečna potražnja prodajnih mjesta (paleta);
▪ u stupcu M3:M13 prikazani su fiksni mjesečni troškovi LDC-a Tipa A na
potencijalnim lokacijama (€);
▪ u stupcu N3:N13 prikazani su mjesečni kapaciteti LDC-a Tipa A na potencijalnim
lokacijama (paleta);
▪ u stupcu O3:O13 prikazani su fiksni mjesečni troškovi LDC-a Tipa B na potencijalnim
lokacijama (€);
▪ u stupcu P3:P13 prikazani su mjesečni kapaciteti LDC-a Tipa B na potencijalnim

lokacijama (paleta).

53
Slika 17. Optimalno rješenje proširenoga lokacijskoga problema
Izvor: Izradili autori

Matematički izrazi koji čine strukturu proširenoga lokacijskoga modela (od 10.9. do
10.14.) također su upisani u odgovarajuće ćelije MS Excel tablice prikazane na Slici 17, kako
je navedeno u Tablici 12.

Tablica 12. Zapisi matematičkih izraza proširenoga lokacijskoga modela u MS Excel tablici

Matematički izraz Excel formula Ćelije


= SUMPRODUCT(M18:M28;M3:M13) +
(9.9.) SUMPRODUCT(N18:N28;O3:O13) + E31
SUMPRODUCT(B18:L28;B3:L13)
lijeva strana kopirano u
= SUM(B18:B28)
jednadžbe (9.10.) B29:L29
lijeva strana kopirano u
= SUM(B18:L18)
nejednadžbe (9.11.) Q18:Q28
desna strana kopirano u
= M18*N3+N18*P3
nejednadžbe (9.11.) P18:P28
M18:N28 = binary
(9.12.)
(Dijaloški okvir Solver Parameters)
lijeva strana kopirano u
= M18+N18
nejednadžbe (9.13.) O18:O28
 Make Unconstrained Variables Non-Negative
(9.14.)
(Dijaloški okvir Solver Parameters)
Izvor: izradili autori
54
Desna je strana jednadžbe (9.10.) konstanta te se u dijaloški okvir Solver Parameters
upisuju reference na ćelije u kojima su upisane vrijednosti te konstante (B14:L14 = potražnja
prodajnih mjesta).
Desna je strana nejednadžbe (9.13.) konstanta čija vrijednost iznosi 1, a upisana je izravno
u dijaloški okvir Solver Parameters. Time se zajedno s (9.12.) osigurava ispunjenje ograničenja
koje određuje da se na svakoj potencijalnoj lokaciji može otvoriti samo jedan ili niti jedan LDC,
bilo Tipa A ili Tipa B.
Optimalno rješenje proširenoga lokacijskoga problema, odnosno optimalne vrijednosti
varijabla odlučivanja dobivene optimiranjem proširenoga lokacijskoga modela MS Excel
programskim alatom Solver prikazane su u polju B18:L28 (raspored transporta) te u stupcima
M18:M28 (lokacije na kojima je otvoren LDC Tipa A) i N18:N28 (lokacije na kojima je otvoren
LDC Tipa B). Problem je riješen otvaranjem LDC-a na trima lokacijama uz sljedeći raspored
transporta:
1. LDC Tipa A na lokaciji Budapest, iz kojega se opskrbljuju prodajna mjesta Budapesta
(800 paleta) i Szegeda (300 paleta).
2. LDC Tipa A na lokaciji Split, iz kojega se opskrbljuju prodajna mjesta Sarajeva (400
paleta), Splita (500 paleta) i Šibenika (300 paleta).
3. LDC Tipa B na lokaciji Zagreb, iz kojega se opskrbljuju prodajna mjesta Ljubljane
(500 paleta), Maribora (400 paleta), Osijeka (300 paleta), Rijeke (600 paleta), Zadra
(400 paleta) i Zagreba (700 paleta).
Kapaciteti LDC-a nisu u potpunosti iskorišteni, a mjesečni troškovi opskrbe prodajnih
mjesta prema ovom rješenju iznose: min. F = 146 500 00 €.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options
programskoga alata Solver, s upisanim podatcima, prikazan je u Prilogu 6.

55
10. Problem distribucijske mreže

Pri rješavanju lokacijskoga problema u prethodnoj točki korišteni su matematički modeli


linearnoga programiranja (lokacijski modeli) koji predstavljaju samo dio distribucijske mreže,
tj. izlazne robne tokove iz LDC-a prema prodajnim mjestima, dok su ulazni tokovi (doprema
robe do LDC-a) i logističke operacije13 u samim LDC-ima zanemareni.
Model distribucijske mreže dobiven je proširenjem lokacijskoga modela dodatnim
elementima:
▪ varijabilnim troškovima LDC-a (troškovi obavljanja logističkih operacija)
▪ troškovima dopreme robe do LDC-a,
kako bi se obuhvatili robni tokovi fizičke distribucije robe od mjesta proizvodnje odnosno
mjesta preuzimanja robe14 s ciljem postizanja višega stupnja sličnosti s funkcioniranjem
realnoga sustava.
Problem distribucijske mreže također se može svesti na problem optimiranja radi
aproksimiranja matematičkim modelom linearnoga programiranja. U matematičkom modelu
koriste se stalne varijable (raspored distribucije) i binarne varijable (broj, kapaciteti i lokacije
LDC-a). U tom smislu, pojedine elemente problema predstavljaju odgovarajući elementi
modela distribucijske mreže koji su sljedeći:
 funkcija cilja predstavlja logističke troškove distribucije (fiksni i varijabilni troškovi
LDC-a te transportni troškovi dopreme robe do LDC-a i dostave do prodajnih mjesta)
koje treba minimizirati;
 varijable odlučivanja predstavljaju broj, kapacitet i lokacije LDC-a te raspored
distribucije, tj. količine supstrata koje se dopremaju do pojednoga LDC-a i dostavljaju
prodajnim mjestima;
 ograničenja predstavljaju uvjete koji moraju biti ispunjeni: potražnja prodajnih mjesta
mora biti zadovoljena, kapaciteti LDC-a ne mogu biti prekoračeni, transport se može
odvijati po raspoloživim transportnim putovima;
 ulazni podatci poznate su veličine distribucijske mreže: potencijalne lokacije i mogući
kapaciteti LDC-a, potražnja prodajnih mjesta, fiksni i varijabilni troškovi LDC-a,
jedinični transportni troškovi dopreme robe do LDC-a i dostave do prodajnih mjesta.
Optimalno rješenje problema distribucijske mreže može se dobiti optimiranjem
matematičkoga modela distribucijske mreže, a obuhvaća sljedeće elemente:
▪ određivanje broja, kapaciteta i lokacija LDC-a;
▪ povezivanje čvorova distribucijske mreže (mjesto preuzimanja robe, LDC, prodajno
mjesto) transportnim putovima;
▪ određivanja količina supstrata koje se dopremaju u LDC-e i dostavljaju prodajnim

13
Operativne aktivnosti fizičke distribucije robe koje se obavljaju u LDC-ima, primjerice iskrcaj robe,
smještaj robe u skladištu, komisioniranje, ukrcaj robe…
14
INCOTERMS 2010. International Chamber of Commerce. Paris. 2010.
56
mjestima po pojedinim transportnim putovima, tako da se potražnja prodajnih mjesta
zadovolji uz najmanje logističke troškove te da se pritom ne prekorače raspoloživi
kapaciteti LDC-a.

10.1. Primjer problema distribucijske mreže


Prilagodili autori prema Stanković, R. 2009. Utjecaj logističkoga operatera na oblikovanje distribucijskih
mreža. Doktorska disertacija. FPZ. Zagreb. p. 91.

Distributer treba zadovoljiti potražnju za određenim proizvodom na svom segmentu tržišta


uz minimalne troškove distribucije. Robu preuzima na paritetu CIF europska luka15. Riječ je o
proizvodu koji se proizvodi u tvornicama na Dalekom istoku, odakle se pomorskim
kontejnerskim prijevozom doprema do europske luke Hamburg, odnosno alternativno do luka
Kopar i/ili Rijeka. Kontejneri se kopnenim prijevozom dopremaju do LDC-a u unutrašnjosti te
se nakon iskrcaja robe prazni kontejneri vraćaju u luku.
Tvornice isporučuju proizvod koji još nije spreman za isporuku kupcima, već se u LDC-
ima obavljaju završne logističke operacije (sortiranje, kontrola, prepakiravanje,
deklariranje…). Nakon toga roba se dostavlja do prodajnih mjesta gdje je dostupna kupcima.
Geografski raspored tržišta, cestovna infrastruktura i potražnja u pojedinim gradovima
prikazani su zemljovidom na Slici 18., na kojoj su radijusi kružnica proporcionalni veličini
potražnje u gravitacijskoj zoni određenoga grada, a na potencijalnim lokacijama LDC-a
kružnice su transparentno ispunjene.

15
Ibidem
57
Slika 18. Geografski raspored tržišta
Izvor: Izradili autori

Minimalna je količina robe koja se dostavlja prodajnim mjestima jedna paleta. Ukupna je
količina robe koja se doprema u pojedini LDC jednaka ukupnoj količini robe koja se iz toga
LDC-a dostavlja prodajnim mjestima16.
Treba odrediti broj, kapacitete i lokacije LDC-a te raspored transporta, odnosno dostave
tako da se potražnja prodajnih mjesta u svim gradovima zadovolji uz najmanje logističke
troškove distribucije, a da se pritom ne prekorače zadana ograničenja.
Inicijalnom je selekcijom određeno pet potencijalnih lokacija LDC-a. To su gradovi
Ljubljana, München, Prag, Stuttgart i Zagreb, s tim da se na svakoj lokaciji može otvoriti samo
jedan ili niti jedan LDC (Tipa A ili Tipa B).

Ulazni podatci problema, odnosno poznate veličine: fiksni troškovi LDC-a (€/mjesec)17,
jedinični varijabilni troškovi LDC-a (€/paleta)18, jedinični transportni troškovi dopreme robe

16
Pojednostavljenje problema, u stvarnosti se u LDC-ima drži određena količina lokalnih zaliha radi sigurnosti
opskrbe prodajnih mjesta, odnosno naknadnih izmjena narudžba.
17
Fiksni su troškovi LDC-a troškovi najma skladišnoga prostora, lizing, odnosno amortizacija opreme (viličari,
regali, IT i ostala skladišna oprema), troškovi radne snage, troškovi režija… Ovi se troškovi pojavljuju
ukoliko se na nekoj lokaciji otvori LDC, a njihov iznos ovisi samo o lokaciji i kapacitetu LDC-a
18
Varijabilni troškovi LDC-a ovise o ostvarenom prometu određenoga LDC-a. To su troškovi potrošnoga
materijala i dodatne radne snage, a njihov jedinični iznos ovisi o lokaciji i kapacitetu LDC-a.
58
do LDC-a, odnosno dostave do prodajnih mjesta (€/paleta)19, potražnja po gradovima
(paleta/mjesec) i mogući kapaciteti LDC-a po potencijalnim lokacijama (paleta/mjesec)
prikazani su u Tablici 13.

Tablica 13. Ulazni podatci problema distribucijske mreže


Jedinični transportni trošak (€/paleta) LDC tip A LDC tip B
Trošak
Budim Fiksni Varijabilni Fiksni Varijabilni dopreme
Od / Do Beč Bratislava Ljubljana München Nürnberg Prag Stuttgart Zagreb Kapacitet Kapacitet
pešta trošak trošak trošak trošak
Beč 7 21 28 35 38 45 35 52 35 24.000 2,20 1800 31.200 1,76 3200 14,00
Ljubljana 35 38 42 7 42 63 63 77 21 22.000 2,00 1800 28.600 1,60 3200 8,00
München 38 40 45 42 7 21 35 21 56 26.000 2,20 1800 33.800 1,76 3200 12,00
Prag 35 38 45 63 35 56 7 56 63 22.000 1,80 1800 28.600 1,44 3200 12,00
Zagreb 35 38 35 21 56 80 63 80 7 18.000 1,80 1800 23.400 1,44 3200 8,00
Potražnja
500 300 600 400 700 400 500 700 500
(paleta)

Izvor: izradili autori

10.1.1. Rješivost problema

Problem je rješiv ukoliko je moguće pronaći rješenje koje zadovoljava sva postavljena
ograničenja. Ovaj je problem rješiv ukoliko se raspoloživim kapacitetima LDC-a može
zadovoljiti potražnja svih prodajnih mjesta, odnosno problem je rješiv ukoliko je ukupni
kapacitet svih LDC-a koji mogu biti otvoreni u distribucijskoj mreži veći ili jednak ukupnoj
potražnji svih prodajnih mjesta.
Matematička formulacija uvjeta rješivosti ne razlikuje se od lokacijskoga problema
(matematički izrazi 9.1., 9.2. i 9.3.), s tim da se u izračun uzimaju veći kapaciteti LDC-a na
svim potencijalnim lokacijama (Tip B, ki = 3 200 paleta/mjesec).
Ukupni kapacitet svih LDC-a koji mogu biti otvoreni u distribucijskoj mreži (na svim
potencijalnim lokacijama) iznosi Kmax = 16 000 paleta/mjesec. Ukupna potražnja svih prodajnih
mjesta na tržištu iznosi P = 4 600 paleta/mjesec. Kako je 16 000 > 4 600, problem je rješiv.

10.1.2. Matematički model problema

Matematički model problema distribucijske mreže sastoji se od sljedećih elementa


zapisanih matematičkim izrazima:

funkcije cilja (10.1.)


n n n m
min F   lAi   ftAi  rpi  d i  vtAi    lBi   ftBi  rpi  d i  vtBi    tij  qij
i 1 i 1 i 1 j 1
m
rpi   qij  i  1,..., n
j 1

19
Jedinični transportni troškovi prikazani su na temelju tarifa logističkih operatera.
59
(10.1.1.)

ograničenja (10.2.)
n

q
i 1
ij  pj  j  1,..., m

q
j 1
ij  lAi  kAi  lBi  kBi  i  1,..., n (10.3.)

lAi , lBi  0,1  i  1,..., n (10.4.)

lAi  lBi  1  i  1,..., n (10.5.)

qij  0  i  1,..., n ; j  1,..., m (10.6.)

gdje je:
lAi = lokacijska varijabla (binarna), poprima vrijednost 1 ako je LDC Tipa A otvoren na
lokaciji i odnosno 0 ako LDC Tipa A nije otvoren na lokaciji i
ftAi = fiksni trošak LDC-a Tipa A na lokaciji i
vtAi =jedinični varijabilni trošak LDC-a Tipa A na lokaciji i
lBi = lokacijska varijabla (binarna), poprima vrijednost 1 ako je LDC Tipa B otvoren na
lokaciji i odnosno 0 ako LDC Tipa B nije otvoren na lokaciji i
ftBi = fiksni trošak LDC-a Tipa B na lokaciji i
vtBi =jedinični varijabilni trošak LDC-a Tipa B na lokaciji i
di = jedinični transportni trošak dopreme robe do LDC-a na lokaciji i
tij = jedinični transportni trošak dostave robe od LDC-a na lokaciji i do prodajnih mjesta
u gradu j
qij = količina robe koja se iz LDC-a na lokaciji i dostavlja prodajnim mjestima grada j
rpi = realizirani promet LDC-a na lokaciji i
m = ukupan broj gradova čija prodajna mjesta treba opskrbiti (m = 11)
n = ukupan broj potencijalnih lokacija LDC-a (n = 11)
kAi = mjesečni kapacitet LDC-a Tipa A na lokaciji i
kBi = mjesečni kapacitet LDC-a Tipa B na lokaciji i
pj = mjesečna potražnja prodajnih mjesta u gradu j.

Jednadžba (10.1.) predstavlja funkciju cilja, tj. ukupne logističke troškove na razini cijele
distribucijske mreže. Sastoji se od fiksnih i varijabilnih troškova LDC-a te transportnih troškova
dopreme robe do LDC-a i dostave do prodajnih mjesta.
Ograničenja predstavljaju matematički izrazi od (10.2.) do (10.6.). Jednadžba (10.2.)
predstavlja ograničenje koje određuje kako potražnja prodajnih mjesta u svim gradovima mora
biti zadovoljena, nejednadžba (10.3.) predstavlja ograničenje koje određuje kako se sa svake

60
lokacije može distribuirati najviše toliko robe koliki je kapacitet LDC-a otvorenoga na
određenoj lokaciji (ukoliko na nekoj lokaciji nije otvoren LDC, s te se lokacije ne može
distribuirati roba), izraz (10.4.) određuje kako su lokacijske varijable binarne, a nejednadžba
(10.5.) kako se na svakoj potencijalnoj lokaciji može otvoriti samo jedan ili niti jedan LDC te
nejednadžba (10.6.) predstavlja uvjet nenegativnosti (distribucija negativne količine robe nema
logičkoga smisla).

10.1.3. Optimalno rješenje problema

Optimalan broj, kapaciteti i lokacije LDC-a te mjesečni raspored distribucije koji


zadovoljava postavljena ograničenja uz najmanje logističke troškove, odnosno optimalno
rješenje problema dobiveno je optimiranjem matematičkoga modela, definiranoga u
prethodnoj točki, primjenom MS Excel programskoga alata Solver, kako slijedi:
 LDC Tipa B na lokaciji München opskrbljuje prodajna mjesta Beča (288 paleta),
Bratislave (184 palete), Budimpešte (28 paleta), Münchena (700 paleta), Nürnberga
(400 paleta), Praga (500 paleta) i Stuttgarta (700 paleta).
Ukupna količina robe koja se distribuira iz ovoga LDC-a iznosi iznosi 2 800 paleta
mjesečno, što je manje od njegovoga kapaciteta (3 200 paleta mjesečno), tj. kapacitet
nije u potpunosti iskorišten.
 LDC Tipa A na lokaciji Zagreb opskrbljuje prodajna mjesta Beča (212 paleta),
Bratislave (116 palete), Budimpešte (572 paleta), Ljubljane (400 paleta) i Zagreba (500
paleta).
Ukupna količina robe koja se distribuira iz ovoga LDC-a iznosi iznosi 1 800 paleta
mjesečno, što je jednako njegovom kapacitetu (1 800 paleta mjesečno), tj. kapacitet je
u potpunosti iskorišten.
 Ukupni logistički troškovi distribucije na razini cijele distribucijske mreže iznose: min.
F = 216 779 00 €/mjesec.
Navedeno je optimalno rješenje problema distribucijske mreže grafički prikazano
zemljovidom na Slici 19.

61
Slika 19. Grafički prikaz optimalnoga rješenja problema distribucijske mreže
Izvor: Izradili autori

Optimalno rješenje problema distribucijske mreže generirano pomoću MS Excel


programskoga alata Solver prikazano je u polju B12:L16 MS Excel tablice na Slici 20.

Slika 20. Prikaz optimalnoga rješenje problema distribucijske mreže u MS Excel tablici
Izvor: Izradili autori

62
Ulazni podatci modela (konstante) zapisani su u MS Excel tablici (Slika 31.), u polju B3:J7
(jedinični transportni troškovi), retku B8:J8 (potražnja prodajnih mjesta), stupcu K3:K7 (fiksni
mjesečni troškovi LDC-a Tipa A), stupcu L3:L7 (jedinični varijabilni troškovi LDC-a Tipa A),
stupcu M3:M7 (kapaciteti LDC-a Tipa A) te u stupcu N3:N7 (fiksni mjesečni troškovi LDC-a
Tipa B), stupcu O3:O7 (jedinični varijabilni troškovi LDC-a Tipa B), stupcu P3:P7 (kapaciteti
LDC-a Tipa B) i u stupcu Q3:Q7 (jedinični troškovi dopreme robe do LDC-a), onako kako su
zadani.
Matematički izrazi koji čine strukturu modela distribucijske mreže (od 10.1. do 10.6.)
također su, u obliku MS Excel formula, upisani u odgovarajuće ćelije MS Excel tablice
prikazane na Slici 20., kako je navedeno u Tablici 14.

Tablica 14. Zapisi matematičkih izraza modela distribucijske mreže u MS Excel tablici

Matematički izraz Excel formula Ćelije


= SUMPRODUCT(K12:K16;K3:K7) +
SUMPRODUCT(K12:K16;L3:L7;O12:O16) +
SUMPRODUCT(L12:L16;N3:N7) +
(10.1.) E19
SUMPRODUCT(L12:L16;O3:O7;O12:O16) +
SUMPRODUCT(O12:O16;Q3:Q7) +
SUMPRODUCT(B3:J7;B12:J16)
lijeva strana kopirano u
= SUM(B12:B16)
jednadžbe (10.2.) B17:J17
lijeva strana kopirano u
= SUM(B12:J12)
nejednadžbe (10.3.) O12:O16
desna strana kopirano u
= K12*M3 + L12*P3
nejednadžbe (10.3.) N12:N16
K12:L16 = binary
(10.4.)
(Dijaloški okvir Solver Parameters)
lijeva strana kopirano u
= K12 + L12
nejednadžbe (10.5.) M12:M16
 Make Unconstrained Variables Non-Negative
(10.6.)
(Dijaloški okvir Solver Parameters)
Izvor: izradili autori

Desna je strana jednadžbe (10.2.) konstanta te se u dijaloški okvir Solver Parameters


upisuju reference na ćelije u kojima su upisane vrijednosti te konstante (B8:J8 = potražnja
prodajnih mjesta).
Desna je strana nejednadžbe (10.5.) konstanta čija vrijednost iznosi 1, a upisana je izravno
u dijaloški okvir Solver Parameters. Time se zajedno s (10.4.) osigurava ispunjenje ograničenja
koje određuje da se na svakoj potencijalnoj lokaciji može otvoriti samo jedan ili niti jedan LDC,
bilo Tipa A ili Tipa B.
Dijaloški okvir Solver Parameters i pripadajući dijaloški okvir Options programskoga alata
Solver prikazani su u Prilogu 7.

63
10.2. Uvođenje cross docking terminala u distribucijsku mrežu

Analizom20 je optimalnoga rješenja problema distribucijske mreže, opisanoga u prethodnoj


točki, dobivena struktura logističkih troškova, kako je prikazano na Slici 21.
Najveći udio u logističkim troškovima imaju transportni troškovi dostave robe od LDC-a
do prodajnih mjesta (50 %), stoga mogućnost daljnje racionalizacije logističkih troškova treba
tražiti ponajprije u tom segmentu. U svezi s tim u nastavku je razmotrena opcija uvođenja XD
(engl. Cross Docking) terminala u postojeću distribucijsku mrežu s LDC-ima na dvije lokacije
(München i Zagreb) kako bi se konsolidacijom robnih tokova postiglo smanjenje jediničnih
transportnih troškova.

Slika 21. Rezultati analize optimalnoga rješenja distribucijske mreže


Izvor: Izradili autori

Prema dobivenom rasporedu distribucije prodajna mjesta Beča, Bratislave i Budimpešte


opskrbljuju se iz oba izvora (LDC-a u Münchenu i LDC-a u Zagrebu), dok se prodajna mjesta
u ostalim gradovima opskrbljuju samo iz jednoga izvora. U svezi s tim u nastavku će biti
razmotrena mogućnost konsolidacije robnih tokova prema spomenutim gradovima
otvaranjem XD terminala na pogodnoj lokaciji. U XD terminalu konsolidirala bi se roba iz
LDC-a u Münchenu i Zagrebu (ulazni tok) za prodajna mjesta u Beču, Bratislavi i Budimpešti
(izlazni tok), kako je prikazano na Slici 22.

20
Podatci iz MS Excel tablice u kojoj je dobiveno optimalno rješenje problema (cf. Sliku 20.) korišteni su
kao ulazni podatci za analizu.
64
Slika 22. Konsolidacija robnih tokova u XD terminalu
Izvor: Izradili autori

Uzevši u obzir geografski raspored i mogućnost cestovnoga povezivanja LDC-a i prodajnih


mjesta, odlučeno je da se XD terminal otvori u krugu CCG-a21, gdje je dostupna sva potrebna
logistička infrastruktura. Usluge preuzimanja robe u LDC-ima, cross dockinga i dostave do
prodajnih mjesta obavlja logistički operater prema dogovorenoj tarifi.
Na taj su način stvorene pretpostavke za smanjenje transportnih troškova jer se isporuke
za prodajna mjesta u sva tri grada objedinjavaju u LDC-ima, tj. pošiljke se ne isporučuju
odvojeno po gradovima, već se kao konsolidirane pošiljke dopremaju u XD terminal.
U XD terminalu konsolidirane se pošiljke iz oba LDC-a rastavljaju te ponovno
konsolidiraju za dostavu po gradovima. Time se postiže okrupnjavanje transportnoga supstrata
u ulaznom toku i u izlaznom toku zbog čega se smanjuju jedinični transportni troškovi22 na
određenim relacijama.
Uvođenjem XD terminala u distribucijsku mrežu omogućeno je da se iz LDC-a, osim
izravnih isporuka roba za prodajna mjesta u Beču, Bratislavi i Budimpešti, isporučuje preko
XD terminala. Kako bi se utvrdilo je li ova opcija povoljnija, potrebno je matematički model
distribucijske mreže (cf. supra Točku 10.1.2.) proširiti dodatnim elementima, odnosno
matemačkim izrazima vezanima uz uvođenje XD terminala te na taj način formulirati
matematički model prikazan u sljedećoj točki.

21
Cargo Centar Graz, robno transportni centar smješten 20-ak km južno od Graza.
22
Primjenjuje se tarifa logističkoga operatera formirana prema očekivanom prometu.
65
10.2.1. Matematički model distribucijske mreže s XD terminalom

U nastavku su prikazani samo dodatni elementi kojima se proširuje prvobitni matematički


model distribucijske mreže prikazan u Točki 10.1.2.

Dodatni elementi funkcije cilja

UTXD  tuXDi  quXDi za i  3, 5 (10.7.)

ITXD  tiXD j  qiXD j za j  1, 2, 3 (10.8.)

Dodatna ograničenja

 quXD   qiXD
i j za i  3, 5 j  1, 2, 3 (10.9.)

lAi  lBi  0 za i  1, 2, 4 (10.10.)

lAi  1 za i  5 (10.11.)

lBi  1 za i  3 (10.12.)

gdje su:
UTXD = transportni troškovi ulaznoga toka (doprema robe iz LDC-a do XD terminala)
ITXD = transportni troškovi izlaznoga toka (dostava robe iz XD terminala do prodajnih
mjesta)
tuXDi = jedinični transportni trošak od LDC-a na lokaciji i do XD terminala
quXDi = količina robe koja se iz LDC-a na lokaciji i doprema u XD terminal
tiXDj = jedinični transportni trošak od XD terminala do prodajnih mjesta u gradu j
qiXDj = količina robe koja se iz XD terminala dostavlja prodajnim mjestima u gradu j.

Matematički model distribucijske mreže s XD terminalom formuliran je proširivanjem


pvobitnoga matematičkoga modela distribucijske mreže (cf. supra Točku 10.1.2.) tako da se
transportni troškovi ulaznoga i izlaznoga toka XD terminala (10.7. i 10.8.) dodaju funkciji cilja
(10.1.), a dodatna su ograničenja sljedeća:
 (10.9.) određuje da je ukupna količina robe koja se iz LDC-a doprema u XD terminal
jednaka ukupnoj količini robe koja se iz XD terminala dostavlja prodajnim mjestima
(ulazni je tok po količini jednak izlaznom);
 (10.10.) određuje da na lokacijama Beč, Ljubljana i Prag nije otvoren LDC;

66
 (10.11.) određuje da je na lokaciji München otvoren LDC tipa B, a (10.12.) da je na
lokaciji Zagreb otvoren LDC tipa A;
Ostala ograničenja matematičkoga modela distribucijske mreže od (10.2.) do (10.6) ostaju
nepromijenjena.

10.2.2. Optimalno rješenje problema

Kako su broj, kapaciteti i lokacije LDC-a u distribucijskoj mreži prethodno već određeni,
optimalno rješenje odnosi se samo na mjesečni raspored distribucije koji zadovoljava
postavljena ograničenja uz najmanje logističke troškove. Dobiveno je optimiranjem
matematičkoga modela koji je definiran u prethodnoj točki primjenom MS Excel programskoga
alata Solver, kako slijedi:
 LDC Tipa B na lokaciji München opskrbljuje prodajna mjesta Ljubljane (98 paleta),
Münchena (700 paleta), Nürnberga (400 paleta), Praga (500 paleta) i Stuttgarta (700
paleta). Osim toga, 402 palete konsolidirane robe šalju se u XD terminal radi opskrbe
prodajnih mjesta Beča, Bratislave i Budimpešte.
Ukupna količina robe koja se distribuira iz ovoga LDC-a iznosi 2 800 paleta mjesečno,
što je manje od njegovoga kapaciteta (3 200 paleta mjesečno), tj. kapacitet nije u
potpunosti iskorišten.
 LDC Tipa A na lokaciji Zagreb opskrbljuje prodajna mjesta Ljubljane (302 palete) i
Zagreba (500 paleta). Osim toga, 998 paleta konsolidirane robe šalje se u XD terminal
radi opskrbe prodajnih mjesta Beča, Bratislave i Budimpešte.
Ukupna količina robe koja se distribuira iz ovoga LDC-a iznosi iznosi 1 800 paleta
mjesečno, što je jednako njegovom kapacitetu (1 800 paleta mjesečno), tj. kapacitet je
u potpunosti iskorišten.
 Ukupni logistički troškovi distribucije na razini cijele distribucijske mreže iznose: min.
F = 200 636 00 €/mjesec.
Navedeno optimalno rješenje bolje je od prethodnoga (216.779,00 €/mjesec), tj. logistički
troškovi distribucije manji su za 7,4 % kada se u distribucijsku mrežu uvede XD terminal.

Može se reći kako to nije značajno poboljšanje, no ovaj je primjer ponajprije poslužio za
prikaz mogućnosti matematičkoga modeliranja i optimiranja matematičkoga modela pomoću
programskoga alata. Grafički se prikaz dobivenoga optimalnoga rješenja nalazi na zemljovidu
na Slici 23.

67
Slika 23. Grafički prikaz optimalnoga rješenja distribucijske mreže s cross docking
terminalom
Izvor: Izradili autori

Optimalno rješenje problema distribucijske mreže s XD terminalom generirano


pomoću MS Excel programskoga alata Solver prikazano je u MS Excel tablici na Slici 24.

Slika 24. Optimalno rješenje distribucijske mreže s cross docking terminalom


Izvor: Izradili autori
68
Ulazni podatci modela (konstante) dopunjeni su jediničnim transportnim troškovima
ulaznoga toka XD terminala (ćelije B6 i B8) te izlaznoga toka XD terminala (ćelije C3, D3 i
E3), a zapisani su u MS Excel tablici prikazanoj na Slici 36.
Matematički izrazi koji čine strukturu modela distribucijske mreže s XD terminalom
također su, u obliku MS Excel formula, upisani u odgovarajuće ćelije MS Excel tablice
prikazane na Slici 24., kako je navedeno u Tablici 15.

Tablica 15. Zapisi matematičkih izraza modela distribucijske mreže s XD terminalom u


MS Excel tablici

Matematički izraz Excel formula Ćelije


= SUMPRODUCT(L14:L18;L4:L8) +
SUMPRODUCT(L14:L18;M4:M8;P14:P18) +
SUMPRODUCT(M14:M18;O4:O8) +
(10.1.) dopunjeno s SUMPRODUCT(M14:M18;P4:P8;P14:P18) +
F21
(10.7.) i (10.8.) SUMPRODUCT(P14:P18;R4:R8) +
SUMPRODUCT(C4:K8;C14:K18) + B6*B16
+ B8*B18 +
SUMPRODUCT(C3:E3;C13:E13)
kopirano u
= SUM(C13:C18)
lijeva strana C19:E19
jednadžbe (10.2.) kopirano u
= SUM(F14:F18)
F19:K19
kopirano u
= SUM(C14:K14)
lijeva strana P14, P15, P17
nejednadžbe (10.3.) kopirano u
= SUM(B16:K16)
P16, P18
desna strana kopirano u
= L14*N4 + M14*Q4
nejednadžbe (10.3.) O14:O18
L14:M18 = binary
(10.4.)
(Dijaloški okvir Solver Parameters)
lijeva strana kopirano u
= L14 + M14
nejednadžbe (10.5.) N14:N18
 Make Unconstrained Variables Non-Negative
(10.6.)
(Dijaloški okvir Solver Parameters)
lijeva strana
= B16 + B18 B19
jednadžbe (10.9.)
desna strana
= SUM(C13:E13) P13
jednadžbe (10.9.)
Izvor: izradili autori

Jednadžbe (10.10.), (10.11.) i (10.12.) upisane su izravno u dijaloški okvir Solver


Parameters pod Subject to the Constraints ($N$14:$N$15 = 0, $N$17 = 0, $L$18 = 1, $M$16
= 1), kako je prikazano u Prilogu 8. Pripadajući je dijaloški okvir Options također prikazan u
Prilogu 8.

69
11. Heurističke metode

Iako su u početku podcjenjivane, heurističke su metode danas postale jedan od uobičajenih


načina, a ponekad i jedini način za rješavanje mnogobrojnih i raznovrsnih složenih realnih
problema u mnogim područjim, pa tako i u logistici i u prometu. Pritom je presudnu ulogu imao
nagli razvoj informacijsko-komunikacijske tehnologije koji je omogućio obavljanje velikoga
broja računskih operacija nad velikim brojem podataka u razumnom (praktično prihvatljivom)
vremenu, pa time i rješavanje problema velikih dimenzija.
Osim toga, od sredine 80-ih godina prošloga stoljeća intenzivno se razvija i široko
primjenjuje čitav niz sistematiziranih heurističkih metoda, tzv. umjetne inteligencije koje daju
opća načela za rješavanje problema neovisno o posebnosti njihove strukture. Uspjeh koje su
ove metode pokazale u praksi još je više popularizirao heuristički pristup u tretiranju
optimizacijskih zadaća i njihovoj daljnjoj primjeni, kao i stvaranju novih heurističkih
koncepata.
Zajedno s razvojem informacijskih znanosti, umjetne inteligencije i informacijsko-
komunikacijskih tehnologija započelo se u okviru operacijskih istraživanja23 razvijati
heurističke metode ili heuristike koje su se pokazale učinkovite u rješavanju problema
kombinatorne optimizacije (kombinatorna optimizacija čini posebno poglavlje Operacijskih
istraživanja). Heuristike ne koriste klasično formalizirane matematičke postupke utemeljene na
teoriji, zato njihova primjena pri rješavanju problema ne garantira pronalaženje optimalnoga
rješenja, no može se sa sigurnošću potvrditi njihova izvedivost s obzirom na postavljena
ograničenja. Međutim, ove metode omogućuju implementaciju različitih zdravorazumskih
pravila koja često oponašaju proces ljudskoga razmišljanja oslanjajući se na pozitivno ljudsko
iskustvo i intuiciju. Zbog toga inteligentno koncipirane heuristike mogu osigurati rješenje vrlo
blisko optimalnom.

11.1. Pojam heuristike

Logistički problemi koji se pojavljuju u planiranju i upravljanju logističkim procesima i


opskrbnim lancima najčešće se mogu svesti na probleme kombinatorne optimizacije koji imaju
više izvedivih (mogućih) rješenja, tj. skup izvedivih rješenja. U tom skupu treba pronaći
optimalno rješenje, tj. ono koje je najbolje prema usvojenom kriteriju optimalnosti uz
uvažavanje postavljenih ograničenja.
To su najčešće problemi velikih dimenzija, slabo strukturirani, za koje je nemoguće doći
do egzaktnoga rješenja u praktično prihvatljivom vremenu, pa su heurističke metode jedne od
najprihvatljivijih metoda za rješavanje takvih logističkih problema. Optimalno rješenje
pojedinoga problema najčešće se pokušava dobiti primjenom matematičkih modela. U
problemima gdje ulazni podatci nisu konstante, već ovise o vremenu ili nekom stohastičkom
čimbeniku, nije moguće izraditi reprezentativan matematički model. Ponekad je zbog
složenosti podataka problem velikih dimenzija te matematički model daje optimalno rješenje,
ali u predugom vremenskom razdoblju. Heurističke metode pomažu u kratkom vremenu doći
do rješenja koje možda nije optimalno, ali je blizu optimumu.

23
Cook, W. J. i dr. 1998. Combinatorial Optimization. John Wiley&Sons.
70
Pojam heuristika dolazi od starogrčke riječi heuriskein, što znači „naći” ili „otkriti”.
(Čuveni Arhimedov uzvik „Eureka” predstavlja prošlo vrijeme ovoga glagola.)
Heurističke metode redovito se upotrebljavaju i u svakodnevnom životu. Pri odlasku na
posao nastoji se odabrati najbolja varijanta. Hoće li se ići tramvajem, automobilom ili pješice?
Odlučuje se i kojim je putom najbolje krenuti. Odluke se donose bez proračuna i mjerenja
situacije na terenu. Ponekad su dostupni samo djelomični podatci, primjerice, informacija
dobivena preko radija da je na glavnoj ulici zastoj zbog prometne nesreće. Pomoću podataka i
prethodnoga iskustva nastoji se „od oka” procijeniti optimalno rješenje. Kad se nešto kupuje,
odlučit će se prema (vizualno procijenjenoj) kvaliteti, cijeni, imenu proizvođača, vlastitom
estetskom kriteriju itd.
Odluke se donose u svakodnevnom životu pomoću grubih procjena koje se ne mogu
nazvati „metodama”. Ukoliko se slični pristup želi automatizirati za rad na računalu, mora se
definirati sustavni postupak koji tada ipak postaje metodom. Programi još daleko zaostaju za
ljudskim mozgom jer moraju raditi po unaprijed definiranim pravilima. Istina je kako postoje
programi koji mogu mijenjati svoja pravila.
Heurističke metode i metode umjetne inteligencije posebno su prikladne za rješavanje slabo
definiranih problema koji se ne mogu dobro matematički formulirati, a pomažu i pri rješavanju
logističkih problema ovoga tipa. Upotrebljavaju se i za dobro definirane probleme koji bi se u
teoriji mogli rješavati egzaktnim matematičkim metodama, ali se od toga odustaje zbog
nedostatka ili nepouzdanosti podataka. Od matematičkih metoda – egzaktnih metoda isto će se
odustati ako je vrijeme izvođenja programa za korisnika neprihvatljivo.
Heuristika kao opći pojam danas se najčešće definira na sljedeći način:
Heuristika je tehnika koja pokušava naći neka „dobra” rješenja problema (tj. takva
dopustiva rješenja problema koja su dovoljno bliska njegovom optimumu) u okviru razumnoga
vremena, pri čemu se ne garantira kako će pronađeno rješenje biti optimalno, niti se može
odrediti njegova bliskost optimalnom rješenju.
Zato pri kreiranju heurističkih metoda za rješavanje pojedinačnih problema nije potrebno
krenuti od precizno definiranih matematičkih modela, niti od njima odgovarajućih teorijskih
rezultata koji garantiraju dobivanje optimalnih rješenja ili konvergenciju k tim rješenjima.
Međutim, heurističke metode dozvoljavaju da se na vrlo slobodan način, korištenjem
zdravorazumske logike, intuicije i prethodne prakse u rješavanju problema, formuliraju
najrazličitija inteligentna pravila koja, primijenjena u procesu nalaženja rješenja, mogu
osigurati da rješenja budu dovoljno blizu optimumu. Drugim riječima, pri formiranju neke
heuristike treba težiti implementaciji takvih pravila koja omogućuju njeno „dobro” prosječno
ponašanje.
Heuristički algoritmi trebaju imati još jednu važnu osobinu – trebaju raditi u razumnom
vremenu, tj. biti računski učinkoviti. Računska složenost nekoga algoritma obično se mjeri
ukupnim brojem „elementarnih operacija” (zbrajanje, oduzimanje, množenje, dijeljenje,
uspoređivanje dvaju brojeva, izvršavanje instrukcije grananja) koje je potrebno obaviti „u
najgorem slučaju” kako bi se došlo do rješenja problema.
Neka je, na primjer, broj čvorova u određenoj mreži jednak n. Broj čvorova n najčešće je
pokazatelj dimenzija razmatranoga problema. Neka je ukupan broj elementarnih operacija E
koje je potrebno obaviti pri primjeni određenoga algoritma jednak:
E = 4n4 + 5n3 + 2n +7 (11.1.)

71
Za veće vrijednosti n najveći utjecaj na ukupan broj elementarnih operacija ima n4.
Uobičajeno je reći kako je u ovakvom slučaju „računska složenost algoritma” proporcionalna
n4, odnosno „da je algoritam O(n4)”. Uz pretpostavku kako svaka elementarna operacija
zahtijeva jednu jedinicu vremena, može se reći kako algoritam zahtijeva O(n4) vremena. Jasno
je kako je sa stajališta računske složenosti algoritam utoliko „bolji” ukoliko zahtijeva obavljanje
manjega broja elementarnih operacija. Tako je, primjerice, algoritam koji zahtijeva O(n2)
vremena „bolji” od algoritma koji zahtjeva O(n3) vremena.
Pod „dobrim” se algoritmima, promatrano sa stajališta računske složenosti, smatraju tzv.
polinomski algoritmi. Polinomski su algoritmi oni algoritmi čija je računska složenost
proporcionalna ili ograničena polinomskom funkcijom reprezentanta dimenzije problema.
Tako su, primjerice, algoritmi koji zahtijevaju O(n2), O(n5) ili O(n6) vremena polinomski
algoritmi.
Pod „lošim” algoritmima podrazumijevaju se eksponencijalni (nepolinomski) algoritmi.
Eksponencijalni su, primjerice, algoritmi koji zahtijevaju O(3n) ili O(n!) vremena.
Kako bi heuristički algoritmi bili učinkoviti, trebaju biti polinomski kako bi u razumnom
vremenu mogli riješiti problem velikih dimenzija. Postoji još čitav niz osobina koje bi neka
heuristika trebala zadovoljavati. Ona treba biti jednostavna, kako bi bila razumljiva onima koji
ju koriste, i robusna, tj. ne bi trebala drastično mijenjati svoje ponašanje za male promjene
parametara problema. Treba, ako je potrebno, posjedovati mogućnost generiranja većega broja
„dobrih” rješenja kako bi korisnik mogao izabrati najprihvatljivije od njih u odnosu na neke
kriterije koje je teško formulirati. Treba imati i mogućnost interaktivnoga rada gdje korisnik
može interaktivno utjecati, u većoj ili manjoj mjeri, na proces dobivanja rješenja donoseći bitne
odluke u nekim koracima heuristike.

11.2. Primjena heurističkih metoda

Mnogi praktični optimizacijski problemi imaju kombinatornu prirodu, tj. mogu se


formulirati kao posebni slučajevi zadaća tzv. kombinatorne optimizacije. Ova se zadaća u
najopćenitijem obliku definira kao:
min f(x) ili max f(x), x  X , (11.2.)
gdje je X eksplicitno ili implicitno zadan skup s konačno ili prebrojivo mnogo elemenata,
a f je bilo kakva funkcija takva da f : X →R, gdje je R skup svih realnih brojeva. (Primjerice,
problem je trgovačkoga putnika tipičan primjer kombinatorne optimizacije.)
Znatan broj realnih zadaća tipa (11.2.) predstavlja slabo strukturirane probleme za koje je,
zbog njihove složenosti i nemogućnosti dovoljnoga stupnja njihove formalizacije, vrlo teško (a
ponekad i nemoguće) kreirati egzaktne algoritme rješavanja. Zato je jedini razumni način za
pronalaženje rješenja ovakvih problema primjena odgovarajućih dovoljno inteligentnih
heuristika.
Osim toga, postoji cijela jedna klasa dobro strukturiranih problema kombinatorne
optimizacije za koje postoje egzaktni algoritmi, no svi su oni neučinkoviti jer imaju
eksponencijalnu složenost (npr. 3n). Polinomski egzaktni algoritmi za ove probleme do danas
nisu pronađeni, pri čemu još nije dokazano postoje li oni ili ne postoje. Ovakva se klasa naziva
NP-klasom problema (nepolinomski problemi). Za učinkovito rješavanje problema iz klase NP
za sada se koriste pogodno definirane heurističke metode.

72
Heurističke procedure često se koriste i kao dio egzaktnih algoritama s ciljem ubrzavanja
procesa pronalaženja optimalnih rješenja.
Ljudi iz prakse vrlo često raspolažu ograničenim prostorom, vremenom i novčanim
sredstvima namijenjenima rješavanju problema, stoga nisu zainteresirani za pronalaženje
optimalnoga rješenja ukoliko je to pronalaženje dugo i skupo. Tada je najčešće njihovim ciljem
što brže i jeftinije generiranje jednoga ili više „zadovoljavajućih” rješenja, tj. rješenja koja
pretjerano ne odstupaju od nekih unaprijed zadanih kriterija. U tom se slučaju ovakva rješenja
prirodno dobivaju primjenom heuristika koje teže što boljem implementiranju zadanih kriterija.
Treba napomenuti kako nije uvijek lako procijeniti treba li neki realni problem rješavati
egzaktno ili heuristički. Naime, ako se pri njegovom egzaktnom rješavanju krene od
matematičkoga modela koji ne odražava dovoljno dobro realnost, tada se može očekivati kako
će optimalno rješenje dobiveno na takvom modelu biti daleko od stvarnoga optimalnoga
rješenja problema. S druge strane, heuristike su obično fleksibilnije od egzaktnih metoda i
sposobne su riješiti znatno kompliciranija i realnija ograničenja problema. Modeli od kojih one
polaze mogu se formulirati tako da puno vjernije odražavaju strukturu problema. Sada se
postavlja pitanje je li bolje egzaktno rješavati jedan nedovoljno precizno formuliran model ili
heuristički rješavati jedan model koji puno više odgovara stvarnosti. Odgovor na ovo pitanje
ovisi o iskustvu, intuiciji i procjeni ljudi koji problem rješavaju.
Problemi koji se rješavaju u procesima optimizacije transportnih i logističkih procesa
prilično su raznovrsni. Neki su od njih dobro definirani i imaju jedno ili nekoliko diskretnih
rješenja. Za neke se probleme rješenje može odrediti u prihvatljivom vremenu, dok bi kod
drugih vrijeme traženja točnoga rješenja i na najbržem računalu bilo prilično dugo te se mora
prihvatiti najbolje približno rješenje dobiveno u prihvatljivom roku.
Za dobro strukturirane probleme mogu se definirati matematički modeli koji se rješavaju
egzaktnim metodama. Ove metode uvijek polaze od precizno formuliranoga matematičkoga
modela koji dovoljno dobro odražava prirodu problema koji se rješava kao što je, primjerice,
transportni problem24. Ovaj je problem dobro strukturiran, može se napisati matematički model
koji dobro predstavlja realnu situaciju te postoje matematičke metode, tj. egzaktne metode koje
rješavaju ovakve i slične probleme. Transportni je problem ove vrste specijalni slučaj
linearnoga programiranja za koje su razvijene univerzalne metode.
Postavlja se pitanje: Što ako je problem velikih dimenzija i ako su cijene (troškovi), ponuda
i potražnja slučajne varijable? U navedenom primjeru ulazni podatci nisu promjenjivi u
vremenu, no ponekad je cijena transporta (transportni troškovi) promjenjiva te u tom slučaju
nije moguće problem riješiti pomoću matematičkoga modela linearnoga programiranja. Ako je
riječ o problemu velikih dimenzija, onda je upitna mogućnost izrade modela ili, ako i postoji
mogućnost izrade matematičkoga modela, vrijeme je potrebno za pronalazak optimalnoga
rješenja predugo za svakodnevnu provedbu optimizacije, koja se pojavljuje kod problema
distribucije.
Većina je realnih problema slabo strukturirana, tj. mogu imati složenu strukturu s velikim
brojem raznovrsnih ograničenja koja se često ne mogu u potpunosti matematički formulirati,
stoga se ne može formulirati precizan matematički model koji bi na zadovoljavajući način
predstavljao strukturu problema. Tipični su primjeri takvih problema problem određivanja
rasporeda sati u obrazovnoj ustanovi, problem traženja optimalnoga reda letenja za određenu
zračnu luku, optimiranje procesa ukrcajno-iskrcajnih manipulacija i sl.

24
Cf. supra točku 8. Transportni problem
73
Praktični problemi mogu sadržavati i elemente neodređenosti, neizvjesnosti i subjektivne
procjene, mogu zahtijevati nelinearnost nekih svojih zavisnosti ili zadovoljenje više od jednoga
cilja, što ih sve može učiniti izrazito teškima i za modeliranje i za rješavanje. Osim toga, kod
nekih dobro strukturiranih problema može se dogoditi da, u slučaju velikih dimenzija, egzaktne
metode ne mogu pronaći optimalno rješenje u razumnom vremenu.
Tipični su primjeri problema, čije bi rješavanje egzaktnim metodama zahtijevalo ogromne
računalne resurse te bi vrijeme obrade bilo neprihvatljivo veliko, problem trgovačkoga putnika,
problem naprtnjače i problem kineskoga poštara, koji su prikazani u nastavku.

11.2.1. Problem trgovačkoga putnika


Trgovački putnik želi obići određen broj gradova. Kojim redoslijedom trgovački putnik
treba obilaziti gradove tako da svaki grad obiđe barem jedanput te se po obilasku svih gradova
vrati u početni grad i pri tom prijeđe najmanji put? Navedeni je problem u literaturi poznat kao
problem trgovačkoga putnika.
S problemom trgovačkoga putnika susreće se pri obavljanju distribucije robe, sakupljanja
robe i sl. Pri rješavanju problema trgovačkoga putnika teži se pronaći najkraću rutu koja
započinje u određenom čvoru logističke mreže, prolazi kroz ostale čvorove mreže najmanje
jedanput i završava u početnom čvoru.
U problemu trgovačkoga putnika mogu postojati i stroži zahtjevi, tj. da se kroz svaki čvor
prođe točno jedanput. Jasno je kako se pri postavljanju ovakvoga zahtjeva pretpostavlja kako
je moguće pronaći takvu rutu.
Slučaj kada trgovački putnik mora posjetiti svaki čvor na transportnoj mreži točno
jedanput, pri čemu se vraća u početni čvor prešavši najmanju moguću udaljenost, obično se
naziva klasičnim problemom trgovačkoga putnika. Ako udaljenost između bilo kojih dvaju
gradova ne ovisi o pravcu putovanja od jednoga k drugom, ovaj se problem naziva simetrični
problem trgovačkoga putnika.
Problemu trgovačkoga putnika može se pridružiti težinski graf tako da svakom gradu
odgovara jedan čvor grafa, a svakom uređenom paru gradova (i,j), i ≠j, luk grafa usmjeren od
odgovarajućega čvora (grada) i do odgovarajućega čvora (grada) j, pri čemu je ovom luku
pridružena „težina” jednaka cij . Kako u slučaju simetričnoga problema trgovačkoga putnika
lukovi koji odgovaraju parovima gradova (i,j) i (j,i) imaju iste težine, oni se mogu zamijeniti
samo jednim neorijentiranim lukom {i,j} s težinom cij, pa tako pridruženi graf postaje
neorijentirani (Slika 25.). Primjerice, neorijentirani luk koji spaja čvorove 4 i 5, u oznaci {4,5},
ima težinu 7, što znači da je npr. udaljenost između gradova 4 i 5 u oba smjera jednaka 7.

74
Slika 25. Pridruženi graf za simetrični problem trgovačkoga putnika s n=5
Izvor: izradili autori
Problem je trgovačkoga putnika dobro strukturiran problem jer se može korektno
jednostavno matematički modelirati, ali je vrlo težak za egzaktno rješavanje. Naime, iako je
skup dopustivih rješenja ovoga problema konačan, broj njegovih članova može biti izrazito
velik, za n gradova on je jednak (n-1)!/2. Zato bi rješavanje problema potpunim pretraživanjem,
tj. generiranjem svih dopustivih putovanja trgovačkoga putnika i izborom najkraćega od njih
(Slika 26.) bilo za veliko n praktično neostvarivo u razumnom vremenu. U literaturi se navodi
podatak25 da ako bi za n = 20 računalo generiralo sva dopustiva rješenja problema za 1 sat, tada
bi mu za n = 22 trebalo 17,5 dana.

Broj gradova: 10 Broj gradova: 15


Broj mogućih rješenja: 181 440 Broj mogućih rješenja: 43 589 145 600
Provjera svih rješenja: ≈ 0.18 s Provjera svih rješenja: ≈ 12h i 40min
Slika 26. Ovisnost broja gradova i vremena izračuna
Izvor: Galić, A. 2012. Metaheurističke metode rješavanja problema usmjeravanja vozila s
vremenskim prozorima. Magistarski rad. FPZ.

Za problem trgovačkoga putnika razvijen je čitav niz polinomskih heurističkih metoda.


Ovdje će se ukratko razjasniti najjednostavnija od njih – metoda najbližega neposjećenoga
susjeda, koja je primijenjena na grafički interpretirani simetrični problem. Ova metoda,

25
Krčevinac S. i dr. 2006. Operaciona istraživanja 2. Fakultet organizacionih nauka. Beograd.
75
polazeći od nekoga čvora pridruženoga grafa, formira iterativno čvor po čvor, tako da se u
svakoj iteraciji kao sljedeći čvor bira najbliži neposjećeni susjed trenutnoga čvora.
Primjerice, kod grafa na Slici 27., ukoliko bi se krenulo od čvora 1, tada bi se među njemu
susjednim čvorovima 2, 3, 4 i 5 izabrao najbliži čvor 3 kao sljedeći čvor, dok bi se nadalje među
neposjećenim susjedima 2, 4 i 5 čvora 3 izabrao najbliži 4 kao sljedeći itd. Na taj bi se način
dobila tzv. Hamiltonova kontura ili Hamiltonov ciklus (1, 3, 4, 5, 2), označen lijevim crtežom
na Slici 27., čija je ukupna duljina 19 jer se iz točke 2 treba vratiti u točku 1. Hamiltonov ciklus
na grafu G ciklus je koji sadrži sve vrhove od G.
W. Hamilton 1856. godine postavio je problem trgovačkoga putnika (travelling salesman
problem). Kako je problem simetričan, istu ukupnu duljinu puta 19 imao bi obilazak u
suprotnom smjeru, tj. (2, 5, 4, 3, 1). Ukoliko se za početnu točku izabere čvor 3, tada se
metodom najbližega neposjećenoga susjeda dobije kontura (3, 1, 4, 5, 2) čija je ukupna duljina
18 (desni crtež Slike 27.). Ukoliko se uzme kontura (1, 4, 3, 5, 2), isto je ukupna duljina 18, to
su inače optimalne konture, tj. ne postoji bolja kontura s manjom ukupnom duljinom.
Konture se mogu prikazati kao uređeni skup (1, 3, 4, 5, 2) ili grafički kao Hamiltonova
kontura s težinama na lukovima − udaljenosti (Slika 27.).
1 4 2 3 4 2

1 4 4
1

5 5
3 7 1
3 7
2

4 4
Kontura x1 : f(x1) =19 Kontura x2: f(x2) = 18
Slika 27. Hamiltonove konture
izvor:izradili autori

Konture x1 i x2 na Slici 27. moguća su rješenja ili mogući obilasci, a svi obilasci, tj. sve
konture čine skup X tako da je x1  X, x2  X. Funkcija cilja za konturu x1 jest f(x1) = 19, za
x2 jest f(x2) = 18. Optimalno rješenje obično se piše sa zvjezdicom nad funkcijom cilja f(x2) =
f*(x) za x2  X.
I pored svoje krajnje jednostavnosti, ovakva se heuristika ne primjenjuje često u praksi jer
često daje rješenja koja su daleko od optimuma. Naime, iako je pravilo izbora najbližega susjeda
vrlo blisko uobičajenoj intuitivnoj logici, ono je ipak lokalnoga karaktera, pa njegova primjena
može u tijeku formiranja konture u nju uključiti i neki luk veće težine.
Što se tiče računske učinkovitosti, lako se dokazuje kako je izložena metoda polinomska.
Ukoliko se njenim elementarnim korakom smatra usporedba udaljenosti od trenutnoga čvora
do njemu susjednih neposjećenih čvorova, tada je u i-toj iteraciji broj ovih usporedba n – i,
i=1, 2,…,n – 1. Zato je ukupan broj elementarnih koraka tijekom rada metode jednak
n(n  1)
(n – 1) + (n - 2) + … + 1 = (11.3.)
2
Ovaj broj nije veći od n2, metoda ima polinomsku složenost O(n2).

76
Treba napomenuti kako danas postoje mnogo „inteligentnije” polinomske heurističke
metode koje, zahvaljujući primjeni složenijih logičkih pravila, osiguravaju pronalaženje
rješenja trgovačkoga putnika koja su u prosjeku vrlo bliska optimumu 26.
U različitim problemima u prometu, koji se mogu svesti na problem trgovačkoga putnika,
prijevozna sredstva (zrakoplovi, brodovi, kamioni…) mogu se promatrati u ulozi trgovačkoga
putnika koji obilazi zadana odredišta (čvorove). Pritom prijevozna sredstva mogu isporučivati
ili preuzimati robu, odnosno putnike ili se isporuke i preuzimanja mogu obavljati istodobno.
Mnoge tvrtke ovom problemu pristupaju intuitivno, no primjenom heurističkih metoda i GIS27
alata moguće je smanjiti transportne troškove.

11.2.2. Problem naprtnjače


Problem naprtnjače korišten je u vojsci SAD-a za određivanje sadržaja vojne naprtnjače.
Svakom je predmetu pridružena vjerojatnost da će biti potreban vojniku. Ukupan volumen i
ukupna masa bili su ograničenja. Isti problem javlja se i u transportu kod ukrcaja tereta u
prijevozno sredstvo, kod slaganja robe na palete ili kod pakiranja robe u kutije. Matematička
formulacija i prikaz rješavanja problema pomoću programskoga alata prikazani su u sastavu
točke 6.3.
Pri rješavanju problema naprtnjače heurističkim metodama obično se koristi koncept tabu
pretraživanja28. Ideja je te heuristike da se naprtnjača stalno „puni i prazni” tako da se u nju
doda predmet s najvećom vjerojatnošću potrebe, a kada to nije moguće zbog popunjenosti
kapaciteta, oduzme se predmet s najmanjim omjerom vjerojatnosti i mase, kako slijedi u
nastavku.
Neka je dano n predmeta s određenim vjerojatnostima potrebe i naprtnjača određenoga
kapaciteta W. U naprtnjaču treba staviti onu kombinaciju predmeta koja ima najveću
vjerojatnost potrebe, s tim da se ne prekorači kapacitet naprtnjače, kako slijedi:
poznato je:
vjerojatnost potrebe predmeta p0, p1, ... , pn-1
mase predmeta w0, w1, ... , wn-1
kapacitet naprtnjače W;
treba odrediti uređenu n-torku [x0, x1, ..., xn-1], xi ϵ {0, 1}, i = 0, 1,…, n-1 takvu da je:
P = ∑ xi pi → max
∑ wi xi ≤ W .

26
Reeves C. R. 1995. Modern Heuristics Techniques for Combinatorial Problems. McGraw-Hill Book
Company.
27
Geografski informacijski sustav (GIS) sustav je za upravljanje prostornim podatcima i osobinama
pridruženima njima. U najstrožem smislu to je računalni sustav sposoban za integriranje, spremanje, uređivanje,
analiziranje i prikazivanje geografskih informacija. U općenitijem smislu GIS je oruđe „pametne karte” koje
dopušta korisnicima stvaranje interaktivnih upitnika (istraživanja koja stvara korisnik), analiziranje prostornih
informacija i uređivanje podataka.
28
Cf. infra Točku 11.4.3. Tabu pretraživanje
77
Algoritam heuristike tabu pretraživanja za problem naprtnjače:
Ako postoji barem jedan i za koji vrijedi da je xi = 0 i nije u tabu listi, tada se među takvim
i-ovima pronađe onaj za kojega je pi → max te promijeni pripadni bit u 1 (xi stavlja se u
naprtnjaču),
inače se razmatraju i-ovi za koje je xi = 1, među njima se pronađe onaj za kojeg je pi →min
te se promijeni pripadni bit u 0 (xi vadi se iz naprtnjače).
Iterativni postupak prekida se kada algoritam više ne može naći bolje rješenje.

11.2.3. Problem kineskoga poštara

Jedan je od najpoznatijih i najviše izučavanih problema u problematici pokrivanja lukova


grafa problem kineskoga poštara. Naznačeni problem sastoji se u sljedećem:
Jedan je poštar odgovoran za raznošenje pošte u dijelu grada. On započinje s raznošenjem
pošte iz određenoga čvora u kojem je locirana pošta i tijekom radnoga vremena mora obići sve
ulice u promatranom dijelu grada najmanje jedanput, na završetku radnoga vremena vraća se u
poštu. Logično je da se postavi sljedeće pitanje: Koja je to ruta kojom se poštar treba kretati
tako da udaljenost koju prijeđe bude minimalna, pri čemu svaku ulicu treba obići najmanje
jedanput?
Prevedeno na terminologiju transportnih mreža ovo pitanje glasi: Koji je najkraći put kojim
se treba kretati kroz transportnu mrežu tako da se kroz sve lukove mreže prođe najmanje
jedanput i da se na kraju vrati u čvor iz kojega se krenulo? Ovaj je problem prvi put izučavao
Mei-Ko (1962.). Rad Mei-Koa objavljen je u časopisu Chiness Mathematics zbog čega je
naznačeni problem i nazvan problemom kineskoga poštara.
Rješavanje je problema kineskoga poštara povezano s definicijama Eulerovoga puta. Pod
Eulerovom rutom podrazumijeva se ciklus kojim se kroz svaku granu u mreži prolazi točno
jedanput. Eulerov je put put kojim se kroz svaki luk prolazi točno jedanput, pri čemu se put
ne završava u čvoru iz kojega je počeo.
Problem kineskoga poštara može se javljati na neorijentiranim, orijentiranim i mješovitim
mrežama.
U zavisnosti od logističko-transportnoga problema koji se razmatra, u ulozi poštara mogu
se podrazumijevati vozila za pranje ulica, vozila dostave, vozila za čišćenje ulica od snijega,
vozila za sakupljanje smeća u gusto naseljenim ulicama, vozila koja se koriste za popravke i
inspekciju komunalne infrastrukture (električna, vodovodna i kanalizacijska instalacija).

11.3. Klasifikacija heurističkih metoda

Jedna od uobičajenih klasifikacija heurističkih metoda obavlja se prema njihovom općem


pristupu rješavanju problema:
Konstruktivne metode – generiraju samo jedno dopustivo (izvedivo) rješenje problema
koje, primjenom odgovarajućih inteligentnih pravila, treba biti blisko optimumu. Pri tome se
mogu koristiti dva principa:
78
1. Princip proždrljivosti (engl. greedy), kod kojega se u svakoj iteraciji od trenutačno
mogućih izbora bira onaj koji je „najbolji” po nekom lokalnom kriteriju.
2. Princip gledanja unaprijed, koji u svakoj iteraciji među trenutačno mogućim izborima
prepoznaje one koji mogu dovesti do formiranja lošega krajnjega rješenja, zato se
ovakvi izbori izbjegavaju.
Primjerice, metoda najbližega neposjećenoga susjeda za problem trgovačkoga putnika, koji
je opisan ranije, predstavlja konstruktivnu heuristiku koja se temelji na principu proždrljivosti.
Konstruktivne metode najčešće se koriste za probleme kod kojih je relativno teško formirati
neko njegovo dopustivo rješenje.
Metode lokalnoga pretraživanja (ili sekvencijalne metode) – iterativno generiraju čitav
niz dopustivih rješenja problema težeći tomu da ona budu sve bolja i bolja. Pritom se u svakoj
iteraciji pretražuje „okolina” trenutnoga rješenja i u njoj se bira, prema nekom lokalnom
kriteriju, sljedeće rješenje u ovom nizu. Početno dopustivo rješenje može se uzeti iz prakse,
generirati slučajno ili formirati primjenom neke konstruktivne metode. (Princip će rada ovakvih
heuristika biti prikazan kod metodologije simuliranoga kaljenja i tabu pretraživanja).
Evolucijske metode – u svakoj iteraciji generiraju ne jedno, nego više dopustivih rješenja
problema koja čine tzv. „populaciju”, pri čemu se teži da svaka sljedeća formirana populacija
bude u prosjeku bolja od prethodne. (Genetski algoritmi, o kojima ćemo govoriti, podržavaju
baš ovakve metode.)
Metode dekompozicije – na heuristički način razbijaju problem na više potproblema manjih
dimenzija. Ovi se potproblemi potom rješavaju odvojeno, heuristički ili egzaktno, pri čemu se
vodi računa o njihovoj međusobnoj korelaciji. (Primjerice, pri rješavanju problema
pronalaženja tjednoga rasporeda sati, za koji je inače dokazano da je NP-problem, ovaj se
problem često heuristički razbija na problem dnevnih rasporeda manjih dimenzija.)
Induktivne metode – rješavaju veće i složenije probleme koristeći principe metoda
razvijenih za manje i jednostavnije probleme istoga tipa. Takve se metode često izvode iz
egzaktnih metoda koje uspješno rješavaju pojednostavljene modele grananja i ograđivanja kod
rješavanje linearnoga cjelobrojnoga programiranja u operacijskim istraživanjima. Ako se
ograniči vrijeme rada ove metode, može se dogoditi da pri velikim dimenzijama problema ona
u okviru raspoloživoga vremena ne dođe do optimalnoga rješenja. Zato se ovako ograničena
metoda može smatrati induktivnom heuristikom.
Treba napomenti kako, osim izloženih, postoji i čitav niz drugačijih heurističkih principa
koji također omogućuju pronalaženje dobrih rješenja problema. Naime, koncept heuristike
dozvoljava potpunu slobodu za uvođenje novih pristupa rješavanju, kao i za kombiniranje više
različitih pristupa u okviru jedne heuristike.
Može se navesti još jedna klasifikacija – podjela heurističkih metoda na specijalne
heuristike i opće heuristike:
▪ Specijalne heuristike dizajniraju se za posebne vrste optimizacijskih problema poštujući pri
tome svojstva i posebnosti ovih problema. Zato se njima mogu rješavati samo oni problemi
za koje su dizajnirani. U prvoj fazi razvoja heurističkoga pristupa intenzivno su razvijene
samo metode ovoga tipa, tako da danas za svaki problem s liste NP-složenih problema
postoji bar jedna posebna heuristika koja ga rješava.
▪ Opće heuristike heurističke su metode općega karaktera koje se mogu primijeniti na bilo
koji problem kombinatorne optimizacije, bez obzira na posebnost njegove strukture. Široka
primjena općih heuristika i njihova popularnost u praksi, kao i njihova velika

79
prilagodljivost različitim vrstama problema razlogom su zašto je ovim heuristikama
posvećena posebna pozornost 29, te su objašnjene u nastavku.

11.4. Opće heuristike – metaheuristike

Opće heuristike (u literaturi često nazivane i metaheuristikama) ponajprije su namijenjene


rješavanju problema kombinatorne optimizacije koji se u najopćenitijem slučaju mogu prikazati
kao:
min f(x), x  X , (11.4.)
gdje dopustivi skup, tj. prostor dopustivih rješenja X ima konačno mnogo elemenata. Ove
metodologije definiraju opći način rješavanja bilo kojega problema gornjega oblika, pri čemu
njihova konkretna interpretacija ovisi o prirodi i posebnosti strukture svakoga pojedinačnoga
problema.
Među općim heuristikama najčešće se koriste algoritimi: simulirano kaljenje, tabu
pretraživanje, promjenjive okoline, genetski algoritam. Prva tri temelje se na principu
lokalnoga pretraživanja, dok je posljedni evolucijskoga tipa. Ove heuristike, odnosno algoritmi
do sada su uspješno primijenjeni na skoro sve poznate NP-složene probleme, kao i na veliki
broj izrazito složenih realnih kombiniranih problema. Iako za sada ne postoje bitni teorijski
rezultati koji bi objasnili njihov uspjeh, popularnost ovih heurističkih pristupa može se
protumačiti time što se oni mogu vrlo lako prilagoditi različitim posebnostima zadaća koje
nameće praksa, dok je njihova implementacija na računalu vrlo jednostavna.
Zanimljivo je napomenuti kako većina postojećih općih heuristika, odnosno algoritama,
oponaša neke spontane optimizacijske procese koji se javljaju u prirodi. Tako se simulirano
kaljenje temelji na simulaciji termodinamičkoga procesa kaljenja, tabu pretraživanje sadrži
elemente umjetne inteligencije primjenjujući pretraživanje s nekom vrstom inteligentnoga
„pamćenja”, dok genetski algoritmi oponašaju proces prirodne selekcije jedinka u biološkim
sustavima.
Određivanje je najboljega heurističkoga algoritma za pojedini problem istraživački
zadatak. Analizirajući do sada izrađene metaheurističke algoritme za probleme koje susrećemo
u logistici i transportu, zaključujemo kako se najviše koristio algoritam po principu lokalnoga
pretraživanja. Specijalne heuristike kod lokalnoga se pretraživanja koriste za određivanje
početne točke prema kojoj formiramo okolinu.

11.4.1. Princip lokalnoga pretraživanja

Princip lokalnoga pretraživanja, primijenjen na rješavanje problema min f(x), x  X,


podrazumijeva definiranje strukture okoline u prostoru dopustivih rješenja X u okviru koje se
svakom x  X pridružuje neki podskup N(x)  X, x  N(x), koji se naziva okolinom dopustivoga
rješenja x, a njezini su članovi susjedi od x.

29
Voss S. i dr. 1999. Metaheuristics: Advances and Trends in Local Search Paradigms for Optimization.
Kluwer Academic Publishers.
80
U lokalnom pretraživanju kreće se od proizvoljne točke x1 iz skupa X kao od početnoga
rješenja pa se u svakoj iteraciji n pretražuje okolina N(xn) trenutnoga rješenja xn i u njoj nalazi,
prema nekom definiranom pravilu izbora, susjed koji predstavlja sljedeće rješenje: xn+1.
Ukoliko se takav susjed ne može naći, pretraživanje se zaustavlja i za aproksimaciju
optimalnoga rješenja problema min f(x), x  X uzima se, među generiranim rješenjima, ono
za koje je vrijednost funkcije cilja f(x) najmanja.
Jasno je kako učinkovitost jedne konkretne metode koja se temelji na prethodnom principu,
tj. vjerojatnost da se u razumnom vremenu dobije rješenje dovoljno blisko optimalnom, ovisi
ponajprije o načinu definiranja pojma „okolina”, kao i od tomu kako se formulira pravilo za
izbor sljedećega rješenja u svakom koraku metode.
Kod diskretnoga dopustivoga skupa X okolina N(x) nekoga dopustivoga rješenja x može
se u općem slučaju definirati kao skup svih onih elemenata y iz skupa X koji mogu biti
dobiveni izravno iz x primjenom neke, unaprijed zadane, modifikacije nazvane pomak iz x u y,
označen kao m(x,y). Kako bi neka struktura okoline osigurala učinkovitost lokalnoga
pretraživanja, intuitivno je jasno kako pri određivanju ove modifikacije treba težiti zadovoljenju
sljedećih uvjeta:
1. Okolina svake točke iz skupa X treba biti simetrična, tj. y  N(x) ako i samo ako
x  N(y).
2. Struktura okoline treba zadovoljiti uvjet dostižnosti, tj. da se, polazeći od bilo koje
točke prostora X, može nizom uzastopnih pomaka doći do bilo koje druge točke ovoga
prostora.
3. Pomak treba omogućiti što jednostavnije i brže generiranje susjednih rješenja, tj.
preporučljivo je da ova modifikacija bude polinomske složenosti.
4. Okolina ne treba biti ni pretjerano velika ni pretjerano mala kako bi se s jedne strane
mogla lakše odgovarajuće pretraživati, a s druge strane kako bi pružila dovoljno
mogućnosti da se pronađe sljedeća točka pretraživanja.

Okolina za problem trgovačkoga putnika


Problem trgovačkoga putnika može se shvatiti kao problem min f(x), x X, u kojem X
predstavlja skup svih Hamiltonovih kontura odgovarajućega grafa, a f(x) jest ukupna težina
konture x.
Pri heurističkom rješavanju simetričnoga problema trgovačkoga putnika često se razmatra
tzv. 2-okolina neke Hamiltonove konture x u pridruženom neorijentiranom grafu koja se
definira pomoću sljedeće modifikacije:
Iz konture x eliminiraju se dva njezina nesusjedna luka čime se ona razbija na dva puta.
Ovi se putovi zatim spajaju s dvama novim lukovima tako da se dobije nova Hamiltonova
kontura y.
Prethodna se modifikacija naziva 2-razmjena između x i y i ona predstavlja pomak m(x,y).
Kontura y smatra se susjedom konture x, dok sve konture koje se ovakvim pomakom mogu
generirati iz x čine 2-okolinu N(x), kako je prikazano na Slici 28.

81
1 2 1 2

6 3 6 3

5 4 5 4

Slika 28. 2-okolina za problem trgovačkoga putnika


Izvor: izradili autori
Struktura koja se temelji na 2-okolini očigledno zadovoljava uvjete 1., 2. i 3. Što se tiče
uvjeta 4., može se lako dokazati da je ukupan broj elemenata u takvoj okolini jednak
n(n  3)
, (11.5.)
2
gdje je n broj čvorova pridruženoga grafa. To znači da se ona može uspješno pretražiti, čak i u
(n  1)!
slučaju velikoga n (za razliku od cijeloga skupa X koji ima članova).
2
Pravila izbora sljedeće točke xn+1 u procesu lokalnoga pretraživanja mogu se definirati na
različite načine. Tako se kod klasičnih metoda spuštanja dozvoljavaju samo „silazeći” pomaci,
tj. pomaci u susjede koji poboljšavaju funkciju cilja jer se xn+1 bira tako da je
f(xn+1)  f(x). (11.6.)
Međutim, glavnim je nedostatkom pri primjeni metoda spuštanja problem pronalaženja
globalnih minimuma (u koje spada i problem min f(x), x  X) , zato što se često u procesu
pretraživanja ne mogu izbjeći zamke lokalnoga minimuma, iz kojih se ne može izvući
korištenjem samo silazećih pomaka. Primjerice, ako kod funkcije f(x), prikazane na Slici 29.,
metoda spuštanja pođe od točke x0 , pretraživanje će se završiti u lokalnom minimumu A i neće
moći dosegnuti globalni minimum B.

f(x)

x0 A B x

Slika 29. Zaglavljivanje u lokalnom minimumu


Izvor: izradili autori
Kod općih heuristika – simuliranoga kaljenja i tabu pretraživanja ovaj je nedostatak
riješen tako što one koriste lokalno pretraživanje, ali pri tome dozvoljavaju (na strogo
82
kontroliran način) i „uspinjuće” pomake, tj. pomake koji vode u susjede s lošijom (većom)
vrijednosti funkcije cilja. Algoritam promjenjivih okolina tijekom lokalnoga pretraživanja
koristi samo silazeće pomake, pri čemu se, ako se u nekoj iteraciji takvi pomaci ne mogu naći,
obavlja prestrukturiranje okoline trenutne točke i u tako formiranoj novoj okolini nastavlja se
pretraživanje (Slika 30.).

Slika 30. Pronalazak globalnoga optimuma


Izvor: Galić, A. 2012. Metaheurističke metode rješavanja problema usmjeravanja vozila s
vremenskim prozorima. Magistarski rad. FPZ.

11.4.2. Simulirano kaljenje


Simulirano kaljenje (SK) algoritam je opće heuristike koji kombinira princip
determinističke metode spuštanja s vjerojatnosnim pristupom. Naime, u svakoj iteraciji ovaj
algoritam na slučajan način generira nekoga susjeda iz okoline trenutne točke uzimajući ga kao
sljedeću točku pretraživanja, ne samo u slučaju poboljšanja, nego i u slučaju pogoršanja
funkcije cilja, ali s izvjesnom vjerojatnosti koja se kontrolirano mijenja tijekom iteracija. Na taj
se način mogu izbjeći zamke lokalnih minimuma te tako povećati mogućnost dobivanja
kvalitetnih rješenja.

Slika 31. Simulirano kaljenje


Izvor: izradili autori
83
Osnovni koncept simuliranoga kaljenja temelji se na algoritmima termodinamike koji su
kreirani za simulaciju procesa kaljenja (Slika 31.). Prvi su se ovakvi algoritmi javili 50-ih
godina prošloga stoljeća. Oni simuliraju proces kontroliranoga hlađenja (kaljenja) nekoga
rastopljenoga materijala do postizanja kristaliziranoga čvrstoga stanja. Pri ovoj se simulaciji
na slučajan način mijenja trenutna konfiguracija atoma materijala, što dovodi do promjene
njegove unutarnje energije.
Ako se energija smanjuje, nova se konfiguracija atoma prihvaća, a ako se energija
povećava, ova se konfiguracija prihvaća s određenom vjerojatnosti. Vjerojatnost se dobije
prema Boltzmanovom termodinamičkom zakonu. Ako je smanjenje unutarnje energije
dovoljno sporo, tada materijal teži, prema termodinamičkim zakonima, postići stanje
minimalne energije, tj. očvrsnuti u pravilnu kristalnu strukturu bez devijacija.
Tek je 80-ih godina prošloga stoljeća pokazano kako se osnovni principi na kojima se
zasniva simulacija kaljenja mogu primijeniti na rješavanje optimizacijskih problema, pri čemu
dopustivo rješenje odgovara jednoj mogućoj konfiguraciji atoma materijala, vrijednost funkcije
cilja njegovoj unutarnjoj energiji, a prijelaz u susjedno rješenje promjeni energetskoga stanja.
Od tada se ova metodologija pod nazivom simulirano kaljenje (engl. simulated annealing)
primjenjuje kao opći heuristički pristup za rješavanje problema oblika min f(x), x  X.
Proces kaljenja može se u najopćenitijem slučaju prikazati u vidu sljedećega algoritma:

Inicijalizacija. Izabrati početno rješenje x1  X

x* = x1 f* = f (x1 )

Iterativni korak. Za n = 1, 2…

▪ Na slučajan način naći neki x iz okoline N(xn ) trenutnoga rješenja


xn .
▪ Ako je f(x) ≤ f(xn ), tada je xn+1 = x.
▪ Ako je f(x)  f* , tada je x* = x , f* = f(x).
▪ Ako je f(x)  f(xn ), izabrati slučajan broj p uniformiran na [0,1].
▪ Ako je p ≤ pn , tada je xn+1 = x.
▪ Ako je p  pn , tada je xn+1 =xn .

Kraj. Ako je zadovoljen kriterij zaustavljanja, prekida se izvođenje daljnjih iteracija, a


x* se uzima za aproksimaciju optimalnoga rješenja.

Vrijednost pn predstavlja vjerojatnost prihvaćanja pogoršanja funkcije cilja u n-toj iteraciji.


U osnovnoj verziji simuliranoga kaljenja ova je vjerojatnost jednaka (po analogiji s procesom
kaljenja)
84
Pn = e –(f(x) – f(xn))/tn ,
gdje je tn vrijednost tzv. temperature u iteraciji n.

Primjena simuliranoga kaljenja za problem trgovačkoga putnika


Najjednostavnija varijanta algoritma simuliranoga kaljenja za rješavanje simetričnoga
problema trgovačkoga putnika (npr. duljina puta ne ovisi o smjeru kretanja po luku, ista je
udaljenost od čvora A do čvora B kao od B do A) mogla bi se temeljiti na sljedećem postupku:
 Početna Hamiltonova kontura x1 generira se slučajno ili se dobije primjenom neke od
mnogobrojnih specijalnih heuristika razvijenih za ovaj problem.
 Kako se svaka Hamiltonova kontura u grafu s n čvorova može predstaviti kao jedna
permutacija indeksa svih čvorova ovoga grafa, tj. brojeva od 1 do n, tada se slučajno
generiranje konture x1 svodi na slučajno pronalaženje neke ovakve permutacije.
 Kao okolina N(xn) trenutne konture xn može se koristiti 2-okolina. U tom se slučaju
slučajno generiranje nekoga susjeda x iz N(xn) može realizirati kako slijedi: ako je xn
predstavljeno permutacijom i1, i2, …, in indeksa čvorova grafa, tada se, primjenom
slučajnih brojeva [0,1], slučajno biraju dva nesusjedna člana i l i ik ove permutacije.
Tada se slučajni susjed x dobije eliminiranjem lukova {il, il+1} i {ik, ik+1} iz konture xn.

11.4.3. Tabu pretraživanje

Osnovni koncept tabu pretraživanja (TP) kao heuristički algoritam za rješavanje problema
min f(x), x X predložio je F. Glover (Glover) 1986. godine (pod nazivom tabu search) 30.
Tabu pretraživanje temelji se na principu lokalnoga pretraživanja i koristi, kao svoju
najvažniju sastavnicu, tzv. adaptivnu memoriju, tj. pamćenje nekih podataka o prethodnim
fazama procesa pretraživanja, koje potom utječu na izbor sljedećih točaka u ovom procesu.
Naime, u svakoj iteraciji n čuva se neka povijest H prethodnoga pretraživanja, tj. zapis koji
pamti izbrane karakteristike nekih od prethodno generiranih točaka.
Okolina N(xn) trenutne točke xn modificira se (smanjuje ili proširuje) u ovisnosti o povijesti
H i na taj način formira skup N(xn,H) svih kandidata za sljedeću točku pretraživanja xn+1.
N(xn,H) često se naziva i aktivnom okolinom točke xn u odnosu na povijest H. Kako ovaj skup
ponekad može biti pretjerano velik da bi se mogao učinkovito pretražiti, bira se njegov manji
podskup N/(xn). Sada se točka xn+1 određuje kao najbolja u ovom podskupu u odnosu na
funkciju cilja f(x), tj. vrijedi da je f(xn+1) ≤ f(x) za svako x  N/ (xn).

30
Fred, Glover. Principles of Tabu Search. Leeds School of Business. University of Colorado.
Fred.Glover@colorado.edu
85
Algoritam tabu pretraživanje može se u najopćenitijem obliku prikazati na sljedeći način:

Inicijalizacija.
Izabrati početno rješenje x1  X ;x* = x1 f* = f(x).
Iterativni korak. Za n = 1,2…
▪ Definirati aktivnu okolinu N(xn, H) točke xn u odnosu na povijest H.
▪ Definirati podskup N / (xn)  N(xn ,H).
▪ Odrediti xn+1 minimalizacijom funkcije f(x) na N / (xn).
▪ Ako je f(xn+1)  f(x*), tada je x* = x n+1 i f* = f(xn+1).
▪ Ažurirati povijest H.
Kraj. Ako je ispunjen kriterij zaustavljanja, prekida se izvođenje daljnjih iteracija, a
x* se uzima za aproksimaciju optimalnoga rješenja.

Najvažniji dio algoritma tabu pretraživanja predstavlja definiranje odgovarajuće adaptivne


memorije, tj. načina formiranja i ažuriranja povijesti H. U osnovnoj verziji tabu pretraživanja
koristi se samo jedan tip takve memorije – tzv. kratkoročna memorija, kod koje u svakoj
iteraciji H pamti karakteristike točaka generiranih u neposrednoj prošlosti. Takvo se H formalno
definira uvođenjem pojma tzv. tabu liste. Ako je pomak m(xn , x) iz tabu liste, tada x ne smije
biti kandidat za sljedeću točku xn+1 .
Procedura se zaustavlja ako je broj uzastopnih iteracija, u kojima nije bilo poboljšanja
trenutno najbolje vrijednosti f* funkcije cilja, veći od zadane vrijednosti.

Primjena tabu pretraživanja za problem trgovačkoga putnika


Na primjeru prikazanom na Slici 32. može se ilustrirati pristup tabu pretraživanja na
rješavanje simetričnoga problema trgovačkoga putnika koji koristi strukturu 2-okoline (druge
okoline).
1 2 1 2

6 3 6 3

5 4 5 4

kontura x kontura y

Slika 32. Definiranje tabu liste ispitivanjem novih lukova


Izvor: izradili autori

Pod atributom nekoga pomaka m(x,y) smatra se jedan od novih lukova uvedenih u konturu
y pri 2-razmjeni između kontura x i y. Na temelju ovoga atributa definira se tabu lista T.
86
Primjerice, pri 2-razmjeni između kontura x i y na Slici 32. uvedeni su novi lukovi {1,4} i
{2,5}. Ako bi se, pri tabu pretraživanju, prešlo iz x u y , onda bi u tabu listu ušao jedan od ovih
lukova pa bi u sljedećem pomaku bila zabranjena njegova eliminacija iz konture y, čime bi se
spriječilo moguće ponovno generiranje konture x. Dakle, uspostavljanjem novih lukova
proučava se dobiveni rezultat, tj. hoće li rezultat biti manji jer je funkcija cilja minimum. Ako
novonastali lukovi ne daju bolji rezultat, stavljaju se na tabu listu te na taj način izbjegavamo
ponavljanje ovoga ispitivanja i skraćujemo vrijeme ispitivanja optimalnoga rezultata.
Početno rješenje x1, kao i u slučaju algoritma simuliranoga kaljenja, može se dobiti na
slučajan način ili primjenom neke od odgovarajućih specijalnih heuristika.

11.4.4. Genetski algoritam

Prve ideje o genetskom algoritmu javile su se 70-ih godina prošloga stoljeća u okviru tzv.
teorije adaptivnih sustava, koja proučava modele učinkovitoga adaptivnoga ponašanja nekih
bioloških, specijalno genetskih sustava. Ovakvi su algoritmi prvobitno kreirani kako bi
simulirali proces genetske evolucije jedne populacije jedinka pod djelovanjem okruženja i
genetskih operatora. U ovom je procesu svaka jedinka okarakterizirana kromosomom koji
predstavlja njezin genetski kod. Jedinke iz populacije koje su u većoj mjeri prilagođene
okruženju međusobno se dalje reproduciraju (primjenom genetskih operatora na njihove
kromosome) i tako se stvara nova generacija jedinka koja je prilagođenija od prethodne.
Iako genetski algoritmi nisu prvobitno predviđeni za rješavanje optimizacijskih problema,
pokazano je da se oni mogu koristiti i za optimizaciju nelinearnih funkcija, a u skorije vrijeme
i kao opća heuristička metodologija za rješavanje problema min f(x), x  X . Tako primijenjen
genetski algoritam (GA), s obzirom da koristi analogiju s genetskim sustavima, dosta se
razlikuje od prethodno opisanih općih heuristika, a temelji se na sljedećim principima:
▪ Svakom rješenju iz prostora dopustivih rješenja X problema pridružuje se, na točno
definirani način, jedan niz konačne duljine nad nekom konačnom abecedom simbola koji
se naziva kod ovoga rješenja.
▪ Skup kodova svih dopustivih rješenja iz skupa X čini prostor kodiranih rješenja Xk. Sada
genetski algoritam realizira takav proces pretraživanja koji generira točke, ne izravno u
prostoru X, već u prostoru kodiranih rješenja Xk.
▪ Tumačeći neko rješenje iz skupa X kao jedinku, a njegov kod kao kromosom te jedinke,
genetski algoritam u svakoj iteraciji generira ne jednu točku, već skup više točaka iz
skupa Xk koji predstavlja populaciju.
Definiranje prostora kodiranih rješenja Xk ovisi u općem slučaju o konkretnom obliku
problema koji se rješava. Način kodiranja dopustivih rješenja, kao i abeceda simbola trebali bi
omogućiti da se, sa što manjim brojem simbola i što prirodnije, izraze glavne karakteristike
ovih rješenja. U osnovnoj verziji genetski algoritam koristi binarno kodiranje, odnosno brojeve
u binarnom sustavu, s elementima 0 i 1, tako je kod duljine četiri elementa npr. 1 010 ili duljine
šest elemenata 110 101.
U osnovnoj verziji genetskoga algoritma upotrebljavaju se dvije vrste operatora za
generiranje novih rješenja iz prostora mogućih rješenja: operatori križanja i operatori mutacije.
87
Operator križanja, po ugledu na istoimeni genetski proces, definira se u najopćenitijem
slučaju kao postupak u kojem se slučajno uzajamno razmjenjuju dijelovi kodova (kromosoma)
dvaju rješenja iz X-a (roditelja) i tako se dobiju kodovi dvaju novih rješenja (djeca). U Tablici
16. prikazan je operator križanja.

Tablica 16. Operator križanja


Broj točaka Roditelji Djeca
križanja
1 1001 1010 1001 1111
1100 1111 1100 1010

2 010 101 11 010 111 11


110 111 00 110 101 00

Izvor: izradili autori

Kod jedne točke križanja prvo dijete ima na prva četiri mjesta iste elemente kao prvi
roditelj, a drugo dijete ima na prva četiri mjesta iste elemente kao drugi roditelj. Kod dviju
točaka križanja prvo dijete ima prvu i treću skupinu elemenata istu kao prvi roditelj, a drugo
dijete isto ima prvu i treću skupinu elemenata istu kao drugi roditelj. Nadalje se generiranje
nastavlja tako da djeca imaju svoju djecu, tj. stvara se nova populacija.

Genetski algoritam za problem trgovačkoga putnika


Problem je trgovačkoga putnika jedan od prvih problema kombinatorne optimizacije na
koji je primijenjena metodologija genetskoga algoritma. U svim je takvim primjenama korišten
najprirodniji način kodiranja Hamiltonove konture u kojem joj se kao kod pridružuje njoj
odgovarajuća permutacija indeksa čvorova grafa.
Do sada je razvijen cijeli niz specijalnih operatora križanja koji generiraju djecu u vidu
permutacija, zamjena mjesta pojedinih elemenata.
Jedna je od njih međusobno preslikavanje dijela kodova. U Tablici 17. prikazano je
međusobno preslikavanje u kodovima roditelja za drugu skupinu kodova kod djece.

Tablica 17. Specijalni operatori križanja


Roditelji Djeca
31 472 65 27 613 45

24 613 57 36 472 51
Izvor: izradili autori
88
Drugi je skup kodova roditelja zamijenio mjesta kod djece, tako su dijelovi koda roditelja
zamijenili mjesta kod djece. Kod djece su prvi i treći kod njihovi specifični kodovi.

Slika 33. Specijalni operator križanja


Izvor: izradili autori

Na Slici 33. prikazane su Hamiltonove konture nastale iz dviju postojećih koje


predstavljaju roditelje te dviju novih koje predstavljaju djecu, nastale primjenom specijalnoga
operatora križanja.
Kod problema trgovačkoga putnika razvijeni su i posebni operatori mutacija koji
osiguravaju očuvanje permutacija. Takav je, primjerice, operator kod kojega dva slučajno
izabrana indeksa u permutaciji međusobno zamijene mjesta ili operator koji neki slučajno
izabrani indeks permutacije pomiče za slučajan broj pozicija nalijevo ili nadesno (Tablica 18.).

Tablica 18. Primjeri operatora mutacije


Operatori mutacije Kod Mutirani kod
Zamjena mjesta broja 3 i 6 2134567 2164537
Pomicanje 5 ispred 1 2134567 2513467
Izvor: izradili autori

11.4.5. Mravlja kolonija

Mravi, termiti, pčele i ose imaju svojstvo tzv. „kolektivne inteligencije”. Zadržimo se na
primjeru mrava. Mravi svakoga dana izlaze iz mravinjaka u potrazi za hranom. Prva su skupina
mrava „izviđači”. Oni lutaju nasumce i ostavljaju kemijski „feromonski trag” po kojem ih ostali
mogu slijediti. Onaj mrav koji prvi slučajno nađe hranu, vraća se u mravinjak udvostručujući
svoj trag. Ostali se mravi kreću po tom tragu i dodatno ga pojačavaju svojim tragom. Oni mravi
iz prve skupine koji nisu našli hranu ili su ju našli daleko od mravinjaka, vraćaju se kasnije.
Njihov je trag slabiji jer po njemu još nisu išli drugi mravi. S vremenom sve više mrava ide po

89
najjačem tragu do najboljega, tj. najbližega nalazišta hrane. Neki mravi u međuvremenu otkriju
kraći put do cilja koji po istom algoritmu prihvaćaju i ostali. Tragovi s vremenom isparavaju
pa se lošiji putovi kojima ide manje mrava postupno „zaboravljaju”. Tako kolonija mrava
zajednički nalazi optimalan put.
Ovaj je algoritam najprije vrlo uspješno simuliran na računalu. Kasnije je i poboljšan
napuštanjem algoritma s mravljom kolonijom jer kopiranje mrava nije bio cilj. U novije je
vrijeme još i poboljšan u kombinaciji s genetskim algoritmom, a potom još i matematičkim
metodama.
Mnogi se heuristički algoritmi mogu još više unaprijediti i ubrzati ukoliko se čovjeku
omogući donošenje odluke na kritičnim mjestima u algoritmu − „čovjek u petlji”. Stručnjak
može iskoristiti svoje znanje, iskustvo i intuiciju kako bi spriječio pretraživanje onih dijelova
područja u kojima je manja mogućnost postizanja optimuma31.

31
Pirlot, M. 1992. General local search heuristics in combinatorial optimization: Tutorial. Belgian Journal
of Operational Research 32. 7−67.
90
11.5. Zadatci za vježbu

1. ZADATAK

Za transportnu mrežu (mrežu s težinama na lukovima):

1. Zadaća: MINIMALNO POVEZIVANJE


Odrediti proizvoljni početni čvor te pronaći njemu najbliži susjedni čvor, te čvorove označiti –
podebljati. Odrediti čvor najbliži jednom od već dvaju označenih čvorova kao treći čvor.
Nastaviti proceduru traženja jednim od označenih čvorova. Nacrtati minimalno razapinjuće
stablo i izračunati težinsku funkciju kao zbroj težina označenih lukova.
2. Zadaća: Odrediti drugi čvor kao početni čvor i istim postupkom odrediti slijed čvorova.
Nacrtati minimalno razapinjuće stablo i izračunati težinsku funkciju kao zbroj težina
označenih lukova.
Odrediti koje je povezivanje bolje.

Rješenje: F(x) = 17
ZAKLJUČAK: Nije bitno koji je početni čvor. Udaljenost je uvijek ista.
3. Zadaća: TRAŽENJE HAMILTONOVOGA CIKLUSA
Odrediti početni čvor proizvoljno te pronaći njemu najbližega susjeda, zatim ovom najbližega
susjeda (čvor koji nismo još označili) i tako redom. Ispitati postoji li Hamiltonov ciklus
mijenjajući početni čvor.
Pokušati proizvoljnim povezivanjem susjednih čvorova odrediti Hamiltonov ciklus.

Rješenje: Nema Hamiltonovoga ciklusa po kriteriju najbližega neposjećenoga susjeda.

91
2. ZADATAK

Zadano je pet čvorova u pravokutnom koordinatnom sustavu:

C
3

B 11
11
11
10

8 E
10
11

10
A 4

6
D

1. Treba odrediti matricu rastojanja između parova čvorova.

2. Odrediti lokaciju dvaju gradskih logističkih terminala (hab centra) tako da se svaki
dobavljač/korisnik pridružuje samo jednom habu, tako da se sav transport od/do ne-hab
čvora obavlja isključivo preko jednoga haba, to je shema jednostruke alokacije.
Kriterij je minimalni ukupni prijeđeni put i minimalni trošak puta. Ista zadaća za shemu
višestruke alokacije koja dopušta svakom ne-hab čvoru da komunicira s jednim ili s
više habova.
U mreži prikazanoj na slici potrebno je uspostaviti dva hab čvora (p = 2), tako da
ukupni troškovi transporta budu što manji, pri čemu nema ograničenja kapaciteta
čvorova. Pritom se transport između svakoga para ne-hab čvorova mora odvijati preko
jednoga ili preko više hab čvorova (nije dopušten izravni transport dobavljač − kupac).
Neka je cijena transporta između ne-hab čvora i haba 1 novčana jedinica (n.j.), dok je
cijena transporta između habova 0,75 n.j. po jedinici količine robe.

92
Rješenje:
1.
0 8 10 6 10 
8 0 3 10 11 

10 3 0 11 11 
 
6 10 11 0 4 
10 11 11 4 0 

2. U mreži prikazanoj na slici potrebno je uspostaviti dva hab čvora (p = 2) tako da ukupni
troškovi transporta budu što manji, pri čemu nema ograničenja kapaciteta čvorova.
Pritom se transport između svakoga para ne-hab čvorova mora odvijati preko jednoga
ili više hab čvorova (nije dopušten izravni transport dobavljač − kupac). Neka je cijena
transporta između ne-hab čvora i haba 1 novčana jedinica (n.j.), dok je cijena transporta
između habova 0,75 n.j. po jedinici količine robe. Ako se usvoji koncepcija jednostruke
alokacije te se analiziraju sve moguće kombinacije izbora dvaju hab čvorova od skupa
pet čvorova, najbolje je rješenje da se habovi postave u čvor B i D ili C i D, slika 2b.
Tada su ukupni troškovi svih kombinacija transporta iz bilo kojega čvora ishodišta do
bilo kojega čvora odredišta najmanji:
AB + AD + AC + AE + BD + BC + BE + CD + CE + DE =

=13,5 + 6 + 16,5 + 10 + 7,5 + 3+ 11,5 + 10,5 + 14,5 + 4 = 97.

Isti se rezultat dobije ako su hab čvorovi C i D.

Shema jednostruke alokacije s neograničenim kapacitetom habova

93
3. Ako se usvoji koncepcija s višestrukom alokacijom, tada je optimalni izbor habova u
čvorovima C i D, ukupni su troškovi svih kombinacija transporta iz bilo kojega čvora ishodišta
do bilo kojega čvora odredišta najmanji.
Ukupni su troškovi svih kombinacija transporta sljedeći:

AB+AD+AC+AE+BD+BC+BE+CD+CE+DE =13 + 6 + 10 + 10 + 10 +3 + 14 + 8,25 +


11 + 4 = 89,25.
Vidi se da su kod višestruke alokacije ukupni jedinični troškovi manji jer ne-hab čvorovi
A, B i E mogu komunicirati preko haba C ili preko haba D u ovisnosti o tom koja je cijena
transporta povoljnija, ušteda je oko 8 %.

Shema višestruke alokacije s neograničenim


kapacitetom habova

94
LITERATURA

1. Chopra, S.; Meindl, P. 2004. Supply Chain Management. Pearson Education Inc. New
Jersey.
2. Cook, W. J. 1998. Combinatorial Optimization. DIMACS Special Year. American
Mathematical Society. Providence.
3. Galić, A. 2011. Usmjeravanje vozila s vremenskim prozorima. Magistarski rad. Fakultet
prometnih znanosti. Zagreb.
4. Ivaković, Č.; Stanković, R.; Šafran, M. 2010. Špedicija i logistički procesi. Fakultet
prometnih znanosti. Zagreb.
5. Krčevinac, S. i dr. 2006. Operaciona istraživanja 2. Fakultet organizacionih nauka.
Beograd.
6. Pašagić, H. 1998. Matematičko modeliranje i teorija grafova. FPZ. Zagreb.
7. Pirlot, M. 1992. General local search heuristics in combinatorial optimization: Tutorial.
Belgian Journal of Operational Research 32.
8. Reeves C. R. 1995. Modern Heuristics Techniques for Combinatorial Problems. McGraw-
Hill Book Company. New York.
9. Segetlija, Z. 2006. Distribucija. Ekonomski fakultet. Osijek.
10. Shapiro, J. F. 2001. Modeling the Supply Chain. Wadsworth Group. Thomson Learning
Inc. Duxbury.
11. Simchi-Levi, D.; Kaminsky, P.; Simchi-Levi, E. 2004. Managing the Supply Chain. Mc
Graw – Hill. New York.
12. Stanković, R. 2009. Utjecaj logističkoga operatera na oblikovanje distribucijskih mreža.
Doktorska disertacija. FPZ. Zagreb.
13. Šamanović, J. 1999. Logistički i distribucijski sustavi. Ekonomski fakultet. Split.
14. Voss, S. i dr. 1999. Metaheuristics: Advances and Trends in Local Search Paradigms for
Optimization. Kluwer Academic Publishers.

95
POPIS TABLICA

Redni broj
Naziv tablice Stranica
tabilce
1. Rezultati analize osjetljivosti 18
2. Ulazni podatci problema naprtnjače 20
3. Optimalno rješenje problema naprtnjače 21
Zapisi matematičkih izraza modela problema naprtnjače u MS
4. 21
Excel tablici
5. Zapisi matematičkih izraza modela u MS Excel tablici 26
6. Zapisi matematičkih izraza modela u MS Excel tablici 33
7. Ulazni podatci problema 38
Zapisi matematičkih izraza transportnoga modela u MS Excel
8. 41
tablici
9. Ulazni podatci osnovnoga lokacijskoga problema 46
10. Zapisi matematičkih izraza lokacijskoga modela u MS Excel tablici 50
11. Ulazni podatci proširenoga lokacijskoga problema 52
Zapisi matematičkih izraza proširenoga lokacijskoga modela u MS
12. 54
Excel tablici
13. Ulazni podatci problema distribucijske mreže 59
Zapisi matematičkih izraza modela distribucijske mreže u MS
14. 63
Excel tablici
Zapisi matematičkih izraza modela distribucijske mreže s XD
15. 69
terminalom u MS Excel tablici
16. Operator križanja 88
17. Specijalni operatori križanja 88
18. Primjeri operatora mutacije 89

96
POPIS SLIKA

Redni broj
Naziv slike Stranica
slike
1. Struktura opskrbnoga lanca 6
2. Modeli logističkih sustava 8
3. Postupak optimiranja 9
4. Pristup problemu 10
5. Postupak modeliranja 11
6. Matematički model linearnoga programiranja 15
7. Grafička metoda 17
8. Optimalno rješenje problema alokacije resursa 25
9. Rezultati analize osjetljivosti, engl. Sensitivity Report 27
10. Optimalno rješenje problema operativnoga planiranja 33
11. Transportna mreža 37
12. Optimalno rješenje transportnoga problema 40
13. Grafički prikaz optimalnoga rješenja transportnoga problema 42
14. Geografski raspored tržišta 45
15. Optimalno rješenje osnovnoga lokacijskoga problema 50
Grafički prikaz optimalnoga rješenja osnovnoga lokacijskoga
16. 51
problema
17. Optimalno rješenje proširenoga lokacijskoga problema 54
18. Geografski raspored tržišta 58
Grafički prikaz optimalnoga rješenja problema distribucijske
19. 62
mreže
Prikaz optimalnoga rješenja problema distribucijske mreže u MS
20. 62
Excel tablici
21. Rezultati analize optimalnoga rješenja distribucijske mreže 64
22. Konsolidacija robnih tokova u XD terminalu 65
Grafički prikaz optimalnoga rješenja distribucijske mreže s cross
23. 68
docking terminalom
Optimalno rješenje distribucijske mreže s cross docking
24. 68
terminalom
25. Pridruženi graf za simetrični problem trgovačkoga putnika s n=5 75
26. Ovisnost broja gradova i vremena izračuna 75
97
Redni broj
Naziv slike Stranica
slike
27. Hamiltonove konture 76
28. 2-okolina za problem trgovačkoga putnika 82
29. Zaglavljivanje u lokalnom minimumu 82
30. Pronalazak globalnoga optimuma 83
31. Simulirano kaljenje 83
32. Definiranje tabu liste ispitivanjem novih lukova 86
33. Specijalni operator križanja 89

98
POPIS PRILOGA

Redni broj
Naziv priloga Stranica
priloga
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
1. dijaloški okvir Options programskoga alata Solver, uz primjer u 100
Točki 6.3.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
2. dijaloški okvir Options programskoga alata Solver, uz primjer u 101
Točki 7.1.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
3. dijaloški okvir Options programskoga alata Solver, uz primjer u 102
Točki 7.2.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
4. dijaloški okvir Options programskoga alata Solver, uz primjer u 103
Točki 8.1.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
5. dijaloški okvir Options programskoga alata Solver, uz primjer u 104
Točki 9.1.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
6. dijaloški okvir Options programskoga alata Solver, uz primjer u 105
Točki 9.2.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
7. dijaloški okvir Options programskoga alata Solver, uz primjer u 106
Točki 10.1.
Dijaloški okvir Solver Parameters iz kojega se dalje otvara
8. dijaloški okvir Options programskoga alata Solver, uz primjer u 107
Točki 10.2.

99
Prilog 1. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 6.3.

100
Prilog 2. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 7.1.

101
Prilog 3. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 7.2.

102
Prilog 4. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 8.1.

103
Prilog 5. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 9.1.

104
Prilog 6. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 9.2.

105
Prilog 7. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 10.1.

106
Prilog 8. Dijaloški okvir Solver Parameters iz kojega se dalje otvara dijaloški okvir Options programskoga alata Solver, uz primjer u Točki 10.2.

107

You might also like