You are on page 1of 32

Optimizacija prometnih procesa

Heuristike P4
Prof. dr. sc. Tonči Carić
Juraj Fosin, dipl. ing.
Heuristike
 Sadržaj
 Heuristike
 Strategije pretrage
 Lokalnom optimum
 Pohlepna “greedy” heuristika
 Lokalna pretraga “Local search”
 Diversifikacija i intenzifikacija
 Simulirano kaljenje
 SA (oponašanje prirode)
 Diversifikacija i intenzifikacija
 Algoritam simuliranog kaljenja
 Mravlje kolonije
 Primjer pronalaženja minimalnog puta
 Feromon traga
 Algoritam „Metoda mravlje kolonije”
Što je dobro, što loše, a što još gore?

 George Pólya (1887-1985)


 u poznatoj knjizi „How to Solve It” (1945)
 Mađarski matematičar
 1914 - 1940 ETH Zürich
 1940 - 1953 Stanford University

Heurističko mišljenje je dobro po sebi.


Loša je
mješavina heurističkog mišljenja i rigoroznog dokaza.
Još je gore
„prodavati“ heurističko mišljenje kao rigorozan dokaz.

3
Heuristike
 Heuristike su tehnike rješavanja problema koje se temelje na
iskustvu.

 Obilježja heurističkih metoda:


 u pravilu nije moguće odrediti koliko su rješenja dobivena
heurističkim metodama, udaljena od optimalnih rješenja
problema
 često pronalaze prihvatljiva rješenja problema u praksi
 rješavaju problem značajno brže u usporedbi s egzaktnim
metodama
 Problemi za koje možemo dokazati da su NP teški
problemi, danas se u pravilu rješavaju heuristikama jer
trenutno ne postoji bolji pristup.
Pristupi rješavanju problema
kombinatorne optimizacije

(za npr. VRP)

5
Heuristike
 Neka je
 A algoritam koji daje dopustiva rješenja za bilo koji
 primjerak I
 optimizacijskog problema P

 Neka je
 F*(I) vrijednost funkcije cilja za optimalno rješenje od I
 Neka je F(I) vrijednost funkcije cilja za dopustivo rješenje od I koje daje A

 Kažemo da je A heuristika ukoliko nam nije poznata nikakva


teoretska granica “dobrote” (relativna ili apsolutna
pogreška) od A
 znači nije nam poznata nikakva gornja ograda za razliku ili kvocijent od
F(I) i F*(I) koja bi vrijedila za svaki I
 najčešće postoje rezultati eksperimenta koji pokazuju da za mnoge
primjerke I heuristika daje F(I) koji je blizu F*(I)
Strategije Pretrage

 Heuristike su obično zasnovane na nekoj intuitivno


prihvatljivoj strategiji
 za koju je lako provjeriti da u većini slučajeva daje dobre
rezultate

 Dvije jednostavne strategiju su:


 pohlepni pristup
 lokalna pretraga
Pohlepna “greedy” heuristika
 Pohlepni pristup
 konstruira rješenja u nizu koraka (faza)
 u svakom koraku biramo mogućnost koja je “lokalno
optimalna” u nekom smislu
 nadamo se da ćemo doći do “globalnog optimuma”

 Kada pohlepni pristup primijenimo na NP teški problem


ponekad je moguće dobiti “približni” algoritam
9
Lokalna pretraga “Local search”
 Lokalna pretraga (traženje) je heuristička strategija za
rješavanje problema
 zahtijeva da u svakom trenutku raspolažemo jednim dopustivim
rješenjem problema
 tekuće rješenje nastoji se poboljšati
 promatramo okolinu (susjedstvo) tekućeg rješenja
 skup dopustivih rješenja koja su blizu tekućem u smislu da se mogu
dobiti jednostavnom transformacijom tekućeg
 biramo najbolje rješenje iz okoline ili bar rješenje koje je bolje od
tekućeg
 izabrano rješenje proglašava se novim tekućim
 postupak se nastavlja dok god je moguće, tj. sve dok ne
dobijemo tekuće rješenje u čijoj okolini nema boljeg rješenja
Lokalnom optimum
 Glavni nedostatak lokalne pretrage je što može zastati u
lokalnom optimumu
lokalni optimum globalni optimum

 Za vođenje lokalne pretrage nužno je osigurati mehanizam


bijega iz lokalnog optimuma
Metaheuristički pristup rješavanju
problema na grafu
 Ne garantiraju pronalazak optimalnog rješenja

 Pronalaze prihvatljivo rješenje u kratkom vremenu

 Generalno primjenjive

 Glavne značajke
 Mehanizam diversifikacije
 Mehanizam intenzifikacije

12
Diversifikacija i intenzifikacija
 Diversifikacija
 Nastoji se istražiti što veći prostor rješenja

 Intenzifikacija
 Iskoristiti pojedino područje u potrazi za lokalnim optimumima

 Glavni problem metahuristika upravo je u balansu ova dva


mehanizma (metode traže podešavanja)
 Nije dobro previše se zadržavati u pojedinom području pretrage, a s
druge strane nije dobro ni prebrzo napuštati pojedino područje bez da
se pronađe najmanji lokalni ekstrem

13
Simulirano kaljenje
 Algoritam simuliranog kaljenja, baziran je na analogiji
između
 simulacije kaljenja metala i
 problema kombinatoričke optimizacije

 Kaljenje predstavlja proces u kojemu se materija zagrije


do maksimalne temperature (temp.taljenja)

 Na visokim temperaturama unutarnja struktura metala je


stohastički organizirana
Simulirano kaljenja

15
Simulirano kaljenja

 Što je veća temperatura, brže je i gibanja atoma

 Brzim spuštanjem temperature atomi ostaju zarobljeni u položaju u


kojem su se zatekli
 Formiraju nestabilne strukture koje predstavljaju
 energetski lokalni optimum

 Sporim hlađenjem moguće je dobiti


 Savršenu kristalnu strukturu metala bez nepravilnosti kada atomi imaju
dovoljno vremena da strukturu formiraju
 energetski globalni optimum

16
Usporedba

17
Diversifikacija i intenzifikacija
 Temperatura se koristi kao parametar za reguliranje
mehanizama
 Diversifikacija
 Veća temperatura znači bolje istraživanje cjelokupnog prostora
rješenja
 prihvaćanje i lošijih rješenja koji udaljuju pretragu od postojećeg susjedstva

 Intenzifikacija
 Manja temperatura znači bolje pretraga lokalnog susjedstva
 rijetko se prihvaćaju lošija rješenja i teži se lokalnom optimumu

18
SA (oponašanje prirode)

 Proces zagrijavanja dopušta slučajno gibanje atoma

 Naglo hlađenje sprječava proces dosezanja potpune termalne


ravnoteže atoma.

 Ako se krutina hladi polagano, daje se atomima dovoljno vremena da


oni postignu minimalno energetsko stanje formirajući pravilnu
kristalnu rešetku

 Simulirano kaljenje koristi stohastički pristup vođenja pretrage

 Ova metoda dopušta da se pretraga nastavi u smjeru susjednih


rješenja, iako funkcija cilja u tom smjeru daje lošije rezultate.
SA (vjerojatnost prihvaćanje rješenja)

4.2.1

f ( x ) f ( xt )

t
pt  e 4.2.2
SA (raspored hlađenja)
 Zakonitost po kojoj se mijenja Θt naziva se raspored hlađenja
 Uobičajeno je da je Θt ima padajući trend u svakoj slijedećoj
iteraciji

 Temperatura Θt se u početku postavlja na neku početnu


vrijednost Θ1>0 ovisno o početnom rješenju
 tako da u
 početku izvršavanja algoritma vjerojatnost prihvaćanja lošijeg rješenja
bude visoka,
 a na kraju izvršavanja jaka niska

 Jedan od rasporeda hlađenja je geometrijsko pravilo


 Svakih T slijedećih koraka Θt se množi sa faktorom α (0<α<1)
 tako da se vjerojatnost prihvaćanja lošijeg rješenja smanjuje s
vremenom
SA (kriterij zaustavljanja pretrage)

 Kriteriji zaustavljanja najčešće su:


 promjena ciljne funkcije Δf1 ispod π1% nakon k1 uzastopnih
ciklusa od T iteracija
 broj pomaka koji se prihvaćaju manji je od π1% od T za k2
uzastopnih ciklusa
 ukupno je izvršeno k3 ciklusa od T iteracija
Algoritam simuliranog kaljenja

f ( x ) f ( xt )

t
pt  e

23
Mravlje kolonije

24
Primjer pronalaženja minimalnog puta

Ant Algorithms – (L. Gamberdella - www.idsia.ch)


Stigmergija
 temelji se na principima

STIGMERGIJE

 mehanizam neizravne komunikacije između jedinki iste vrste


putem tragova koji ostavljaju u svojoj okolini

 takav oblik komunikacije omogućava postizanje kompleksnih,


samoorganiziranih ponašanja unatoč nedostatku sposobnosti
planiranja, inteligencije i pamćenja kod samih jedinki

26
Feromon

 Mravi, termiti, pčele (insekti) komuniciraju neizravno


putem kemijske supstance feromona

 Insekti su sposobni otpuštati i detektirati različite vrste


feromona

 „Feromon traga” mrave potiče da slijede označeni put

27
Feromon traga
 Prvi mravi kojim samostalno pronađu hranu, pri povratku u
gnijezdo ostavljat će jači feromonski trag ovisno o kvaliteti i
količini hrane koju su pronašli

 Kada ostali mravi naiđu na jaku koncentraciju feromona postoji


velika vjerojatnost da će započeti slijediti trag

 Budući da se kraćim putem hrana brže transportira, na njemu


će se vremenom pojaviti veća koncentracija feromona

 Velika većina mravi će u konačnici prometovati istim najkraćim


putem

28
Algoritam mravlje kolonije
 umjetni mravi (softverski agenti) za razliku od mravlje
jedinke u prirodi ima mogućnost:
 pamćenja
 i odlučivanja na temelju
 „viđenja okoline”
 mogu određivati udaljenosti između lokacija
 mogu na kraju putovanja rekonstruirati cijeli put
 feromonski trag se pamti u matrici

 Pronalazak hrane i vraćanje u gnijezdo predstavljaju


konstruiranje izvedivog rješenja
 uspostavljanje najkraćeg puta predstavlja pronalazak
optimalnog rješenja
29
Algoritam „Metoda mravlje kolonije”
 skica algoritma za TSP
 inicijalizacija n umjetnih mrava
 izračun matrice udaljenosti i vremena udaljenosti između
gradova
 konstruiranje n različitih inicijalnih rješenja pomoću neke
heurističke metode
 konstruirana rješenja koriste se za inicijalizaciju matrice
feromona
 umjetni mravi konstruiraju svoja rješenja oslanjajući na
feromon i „viđenje” situacije i prethodnih rješenja
 ukoliko mrav pronađene globalno najbolje rješenje, rješenje se
sprema u varijablu smin

30
Algoritam „Metoda mravlje kolonije”

simulira isparavanje feromona


u cijeloj matrici

dodavanje feromona na
bridovima koji su korišteni u
konstruiranim novim
rješenjima

31
Akumuliranje feromona
TSP problem R112

1. iteracija 50. iteracija 100. iteracija

Korišteni materijali iz magistarskog rada


„Metaheurističke metode rješavanja problema usmjeravanja vozila s vremenskim prozorima”,
kolege Ante Galića 2012 godina.
32

You might also like