heuristike zasnovane na lokalnom pretra ivanju
Download
Skip this Video
Download Presentation
Heuristike zasnovane na lokalnom pretra živanju

Loading in 2 Seconds...

play fullscreen
1 / 38

Heuristike zasnovane na lokalnom pretra živanju - PowerPoint PPT Presentation


  • 115 Views
  • Uploaded on

Heuristike zasnovane na lokalnom pretra živanju. MPIO MF, Beograd, 201 3/14. Heurističke metode. Namenjene su za rešavanje raznih optimizacijskih problema prilagođene su svojstvima i specifičnostima problema koji se rešava Najpre je potrebno definisati prostor rešenja za dati problem

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Heuristike zasnovane na lokalnom pretra živanju' - olga-watkins


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
heuristi ke metode
Heurističke metode
  • Namenjene su za rešavanje raznih optimizacijskih problema
  • prilagođene su svojstvima i specifičnostima problema koji se rešava
  • Najpre jepotrebnodefinisatiprostorrešenjazadati problem
  • Zatim se odaberepočetnorešenje, pa se nakon toga prostorrešenjapretražuje u potrazizaštoboljimrešenjima
  • Razlikameđuheurističkimalgoritmima je u tome nakojinačinobavljaju to pretraživanje.
lokalno pretra ivanje
Lokalno pretraživanje
  • opšti heuristički pristup
  • često se primenjuje u kontinualnoj i diskretnoj optimizaciji.
  • lokalno pretraživanje nastoji pronaći optimalno/najbolje rešenje smanjujući prostor pretraživanja
  • Svakom elementu x iz prostora dopustivih rešenja X pridružuje se neki podskup N(x) X koji se naziva okolina od x, a njeni članovi yN(x) su susedi od x.
lokalno pretra ivanje1
Lokalno pretraživanje
  • Za početno rešenje bira se proizvoljna tačka iz prostora dopustivih rešenja.
  • U svakoj iteraciji pretražuje se okolina trenutnog rešenja i u njoj nalazi, sused koji je prema nekom kriterijumu boljiodtekućeg rešenja, i predstavlja sledeće rešenje.
  • Ukoliko se takav sused ne može pronaći, pretraživanje staje i za aproksimaciju optimalnog rešenja uzima se ono za koje je vrednost funkcije cilja najmanja.
  • Osnovninedostataklokalnogpretraživanja je što se (obično) zaustavljaprinailaskuprvoglokalnogminimumakoji ne morabitiglobalni minimum
  • Uspeh zavisiodpočetnogrešenja, strukture okoline i kako pretražujemo okolinu
ema lokalnog pretra ivanja
Šema lokalnog pretraživanja

Inicijalizacija:Izabratipočetnorešenje x1 ∈ X;

x* = x1, f* =f(x1)

Iterativni korak: n = 1, 2, 3, . . .

U okolini N( xn ) trenutnog rešenja naći sledeće rešenje xn+1 , prema zadatom kriterijumu

Ako je f ( xn+1 ) < f* , tada x* = xn+1 i f* =f(xn+1) (ako je problem tipa min)

Kraj: Akokriterijumizboranijezadovoljannizajednogsusedaizokoline N(xn) ili je zadovoljennekidrugikriterijumzaustavljanjametodastaje, a x* se uzimazaaproksimacijuoptimalnogrešenja.

slide6

Efikasnost lokalnog pretraživanja zavisi od početnog rešenja, strukture okolina koje se koriste, kao i od kriterijuma koji se koristi u svakoj iteraciji za izbor sledećeg rešenja.

  • Pri definisanju okoline treba težiti da budu zadovoljeni sledeći uslovi:
  • Okolina svake tačke treba da bude simetrična
  • Okolina ne treba da bude ni suviše velika, ni suviše mala
  • Polazeći od proizvoljne tačke prostora X, nizom uzastopnih pomaka možemo doći do bilo koje druge tačke ovog prostora
  • Pomak treba da obezbedi što jednostavnije i brže generisanje susednih rešenja
iterirano lokalno pretra ivanje
Iterirano lokalno pretraživanje
  • Iterated Local Search (ILS)
  • Kvalitet rešenja dobijenog LS između ostalog zavisi od početnog rešenja u čijoj okolini tražimo poboljšanje
  • Kako poboljšati performanse LS?
  • Strategija 1: Multistart pristup (Multistart Local Search-MLS)

Početno rešenje se bira na slučajan način, a zatim vrši LS u njegovoj okolini.

Izbori početnog rešenja u svakoj iteraciji su međusobno nezavisni

iterirano lokalno pretra ivanje1
Iterirano lokalno pretraživanje
  • Kako poboljšati performanse LS?
  • Strategija 2: Unaprediti MLS

Rešenje dobijeno kao rezultat u jednoj MLS iteraciji uzeti kao početno rešenje za narednu iteraciju

ili

Perturbaciju rešenja dobijenog kao rezultat u jednoj MLS iteraciji uzeti kao početno rešenje za narednu iteraciju

Perturbacija se vrši u skladu sa prethodnim iskustvom (istorijom pretraživanja)

Ovaj drugi pristup se naziva Iterated Local Search ILS

iterated local search
Iterated Local Search
  • Perturbacija rešenja
  • Značajne promene tekućeg rešenja (za razliku od standardne LS)
  • Veliki slučajni pomaci od tekućeg rešenja, koji nas vode u udaljene regione pretraživačkog prostora

- Moguća strategija: jedan deo rešenja se zadrži a drugi značajnije promeni

  • Kriterijum prihvatanja novog rešenja

- uslovi koje novo rešenje (lokalni optimum) mora zadovoljiti da bi zamenio tekuće rešenje

- Najčešćevrednost funkcije cilja

iterated local search1
Iterated Local Search

Za Local Seach u šemi ILS može se koristiti bilo koja deterministička ili stohastička S-heuristika (tabu seach, simulated annealing, VNS,...)

P-heuristike?

tabu pretra ivanje
Tabu pretraživanje
  • Tabu search se bazira na principu lokalnog pretraživanja
  • Važna komponenta je tzv. adaptivna memorija, tj. pamćenje nekih podataka o prethodnim fazama procesa pretraživanja, koji utiču na izbor sledećih tačaka u ovom procesu.
  • Kadapronađemopotencijalnorešenje,označimo gakaotabu (zabranjeno) kako se više ne bi vraćalinanjega.
  • Sva rešenjaoznačenakaotabupamte se u takozvanojtabulisti TL
  • TabuvremeTV je brojiteracijazavremekojih je rešenjesadržano u tabulistizabranjeno.
ema tabu pretra ivanja
Šema Tabu pretraživanja

Inicijalizacija:

odaberipočetnorešenje

postavi: x= x0, x*=x0 , f*= f( x0 ), TL=∅ ;

Pretraga:

dok (uslov_zaustavljanjanijezadovoljen) radi

{

odaberinajboljedozvoljenorešenje x\' iz N(x);

postavi x= x\';

ako je f(x) < f*, ondapostavi f* = f(x), x* = x;

stavi x u TL na TV iteracija;

}

vratirešenje x*;

tabu pretra ivanje1
Tabu pretraživanje
  • U TLse smeštaju potezi a ne ikontekst u kojem je tajpotezzabranjen,
  • Moguć je gubitak dela pretraživačkog prostora
  • Uvodi se aspiracijskafunkcijapomoćukoje se poništavatabu status nekogpoteza

Klasičnaimplementacijaaspiracijskefunkcijeponištava nekompotezutabu status ukolikotajpotezvodi do rešenjakoje je boljeod dosadanajboljegpronađenogrešenja.

Predloženodaaspiracijskafunkcija ne poklanjauopštepažnjuvrednostifunkcijeciljavećdavršiulogudiversifikacijerešenja

(npr. potezzadovoljavaaspiracijskufunkcijuukoliko vodi na lokacijukoja nije bilaokupiranaunutarzadnjiht iteracija)

tabu pretra ivanje2
Tabu pretraživanje

Najčešćiuslovizaustavljanjasu:

• nakonfiksnogbrojaiteracija (ilifiksnogvremenaizvršavanja),

• nakonodređenogbrojaiteracijabeznapretka u

minimizaciji/maksimizacijifunkcije,

• nakonštofunkcijadostignenekuunapreddefinisanu (optimalnu) vrednost,

• kombinacije gore navedenihkriterijuma.

tabu pretra ivanje3
Tabu pretraživanje

Dužinatabu liste?

  • Strategija 0: konstantna?
  • ukoliko je listapremala, možedoći do cikličkogponavljanjapoteza,
  • u slučajudaje onaprevelika, perspektivni potezimogubitiodbačeni
  • Strategija 1: dužina tabulistejeproporcionalna dimenzijiproblemakoji se rešava
  • Na nekim problemima eksperimentalnoje pokazanopojavljivanjecikličnihponavljanjapotezanijenužnou direktnojvezisaveličinomtabuliste.
  • Strategija 2: dužina tabuliste nijekonstantnaveć se slučajnomenjaunutarnekogintervalasaodređenomfrekvencijom.
  • Strategija 3?
tabu pretra ivanje4
Tabu pretraživanje

Prilikomdefinisanjalistezabranjenihpoteza (tabu liste) najčešće se

primenjujudvapristupa.

1. pristup:

Zabranjujuse potezizamenedvejedinkekojesu bilezamenjene

tokomzadnjihs iteracija (s je dužina tabu liste).

Pogodniji za tabu liste fiksne dužine

2. pristup:

Za svakujedinkuisvakupoziciju (lokaciju)zapisujezadnjaiteracija

kadaje tajedinkabilanatojpoziciji. Potez se proglašavatabupotezom

ukoliko senjimeobejedinkedodjeljujenapozicije kojesuzauzimale u

ne više odposlednjihsiteracija.

Pogodniji za tabulistekoje supromenjivedužine.

reaktivno tabu pretra ivanje
Reaktivno tabu pretraživanje
  • Reactive tabu search
  • Modifikacija tabu pretraživanja
  • Predložena je da bi se izbegle prevelikezavisnostitabu search algoritamaodfaktora/parametara (dužinatabuliste, odabiraspiracijskefunkcije, tabu vreme, itd)
  • Glavna osobina: automatski seobavljajumodifikacijeparametara u potrazizaštoboljimrešenjem
reaktivno tabu pretra ivanje1
Reaktivno tabu pretraživanje
  • pored standardnihelemenatatabu pretraživanja

definiše se automatizovanoprilagođavanjedužinetabu listezabranjenih poteza u skladusatrenutnimstanjempretraživanja.

  • definišese inačindiversifikacijepretraživanjakadastandardnimehanizamtabu-search pretraživanjazakaže.
  • imaugrađenmehanizamdugotrajnememorije(long term memory) koja se iskorišćavazapraćenjenapredovanjaalgoritma, uočavanjegraničnihslučajeva, ciklusaistohastičkih elemenata.
  • Reaktivnitabu-search algoritam se u praksipokazaosuperiornijim, iakosuzahtevizamemorijskeresurseznatnoveći
simulirano kaljenje simulated annealing sa
Simulirano kaljenjeSimulated Annealing (SA)
  • (meta)heuristikazarešavanjeproblemakombinatorneoptimizacije
  • ime je dobilazboganalogijesa procesomkaljenja metalaizčije se simulacijeirazvila
  • metodapokušavapronaćiglobalni optimum, ili mu se bar približiti, u zatomprostorukonfiguracija
  • dozvoljeni su potezi koji vode ka lošijem rešenju
ema simuliranog kaljenja
Šema simuliranog kaljenja

Inicijalizacija: Izabrati početno rešenje x0 ∈ X, početnu temp. T,

Šemu hlađenja Tn, n=0,1,2,..(To=T)

x* = x0 , f* =f(x0)

Iterativni korak:n = 0,1, 2, . . .

Pri temperaturi Tn određen broj puta realizujemo sledeći ciklus:

Na slučajan način izabrati rešenje x u okolini N(xn )trenutnog rešenjaxn

Ako je f (x) ≤f(xn) , tadaxn+1 = x(za problem tipa min)

Ako je pritomf (x) < f*, tadax* = x, f* =f(x)

Akoje f (x) > f(xn), izabratinaslučajannačinbrojp uniformnona[0,1]

Akoje p ≤pn=pn(Tn, ∆f), tada ostajemo uxni pokušavamo ponovo

sa pretragom u okolini N(xn )

Akoje p > pn(Tn, ∆f), tadaxn+1 = x

Kraj:Ako je zadovoljenkriterijumzaustavljanja(npr. Tn <eps, n=nmax)

stajese, a x*se uzimazaaproksimacijuoptimalnogrešenja.

metoda promenljivih okolina variable neighborhood search vns
Metoda promenljivih okolinaVariable Neighborhood Search-VNS
  • zasnivanalokalnompretraživanju, pričemu se u svakojiteracijimoževršitiprestruktuiranjeokolinetrenutnogrešenja
  • Osnovnaidejametode je sistematskapromenaokolinaunutarlokalnogpretraživanja

Okoline se mogu menjati:

  • promenommetrike u odnosunakoju se defnišeokolina,
  • povećavanjemrastojanjau odnosunaistumetriku.
metoda promenljivih okolina
Metoda promenljivih okolina
  • Prilikomrealizacije VNS-a menjamookolinetekućeg rešenja u kojima se krećemo u potrazi za boljim rešenjem
  • Zasvakuizabranuokolinu tekućeg lokalnog optimuma

1) Izvršise slučajnopomeranje u tekućojokolini do nekogrešenja (kojemožebitiiveomaloše)

Faza “razmrdavanja” - SHAKING PHASE

2) Iztog novog rešenjalokalnimpretraživanjempokušava sepronalaženjeboljeg lokalnog optimuma

Faza lokalne pretrage – LOCAL SEARCH PHASE

  • U svakoj iteraciji menja se tekuća okolina po nekom pravilu
metoda promenljivih okolina1
Metoda promenljivih okolina
  • SHAKE: pomeranjemdo rešenjakoje se nalazirelativnodalekoodtrenutnog lokalnog optimuma, postiže se sistematičnopretraživanjeprostorarešenjaisprečavakonvergencijametode ka lošijemlokalnomoptimumu.
  • LOCAL SEARCH: U slučajevimakadapomeranjenijedovelo do boljegrešenja, zadržavanje u trenutnonajboljemrešenjusmanjujemogućnostnepotrebnogširenjapretraživanjananoveoblastiprostoradopustivihrešenja.
metoda promenljivih okolina2
Metoda promenljivih okolina

VNS metaheuristikaje zasnovana je na tri činjenice:

1) lokalniminimum u odnosunajednuokolinu ne morabitiilokalni minimum u odnosunanekudruguokolinu

2) globalniminimum je lokalni minimum u odnosunasveokoline

3) zavećinuproblemalokalniminimumi u odnosunarazneokolinesumeđusobnobliski.

Ove tri činjenicemogu se iskoristitina tri različitanačina: deterministički,stohastičkiilikombinovano.

metoda promenljivog spusta
Metoda promenljivog spusta

Variable Neighborhood Descent, VNDS

  • Determinističkavarijanta
  • Nemamo SHAKE fazu
  • Sastoji se u odabiru kmaxokolina, Nk, k = 1, 2, ..., kmax, odredise početnorešenje x istartujeLOCAL SEARCH u odnosunasvakuodokolina, a počevodizabranogrešenja x.
  • Ukoliko je kmax = 1, reč je o običnomlokalnompretraživanju.
redukovana metoda promenljivih okolina
Redukovana metoda promenljivih okolina

Reduced Variable Neighborhood Search, RVNS

  • Stohastički pristup
  • Nema LOCAL SEARCH fazu
  • Sastoji se u odabiru kmaxokolina, Nk, k = 1, 2, ..., kmax koje se sistematski menjaju iizborujednogslučajnogrešenja u svakojodokolina.
  • Koraciodlučivanjabaziranisuna tom jednomslučajno izabranomrešenju
redukovana metoda promenljivih okolina1
Redukovana metoda promenljivih okolina
  • RVNS je izuzetnokorisnakodprimeravelikihdimenzijajer se izbegavasloženaidugotrajna LS procedura.
  • Ova metodaveomaličina Monte-Carlo metodu, mada je doneklesistematičnija. Dok Monte-Carlo biraslučajnorešenje u celomprostorupretraživanja, RVNS se u svakomkorakuograničavananeku, strogodefinisanuokolinu.
  • Ipak, obziromnastepenslučajnosti, najboljirezultati se postižukombinacijomovemetodesanekomdrugomvarijantom.
  • Na primer, RVNS se koristizadobijanjepočetnogrešenja, a zatim se primenjujenekavarijantakojasistematičnopretražujeokolinetakodobijenogpočetnogrešenja
osnovna metoda promenljivih okolina
(Osnovna) metoda promenljivih okolina

(Basic) Variable Neighborhood Search, VNS

  • Kombinacijaprethodnadvaprincipa
  • Najrasprostranjenijavarijantametodepromenljivihokolinajerobezbeđujevišepreduslovazadobijanjekvalitetnijihkonačnihrešenja
  • Sastoji se usistematskojpromeniokolina, slučajnimizborompočetnogrešenja u tekućojokoliniiprimenom LS procedure počevodnovoizabranogrešenja
osnovna metoda promenljivih okolina1
(Osnovna) metoda promenljivih okolina

Osnovnikoraci VNS metodesadržanisu u petlji u okvirukoje se:

  • menjaindeksokoline k,
  • određuje naslučajan načinrešenjeizk-te okoline (Shake),
  • izvršavaproceduralokalnogpretraživanja (Local Search)
  • proveravakvalitetdobijenoglokalnogminimuma.

Ovikoraci se ponavljajusvedok ne budezadovoljennekikriterijumzaustavljanja:

  • maksimalnodozvoljeno CPU vreme,
  • maksimalanbrojiteracija
  • maksimalanbrojiteracijaizmeđu dvepopravke
  • kombinacija gore navedenog
osnovna metoda promenljivih okolina2
(Osnovna) metoda promenljivih okolina
  • Početnorešenje u okolini k generiše se naslučajannačinkako bi se obezbedilopretraživanjerazličitihregionaprilikomsledećegrazmatranjaokoline k.
  • Okoline se mogurazlikovati

- naosnovurastojanja (brojatransformacija nad rešenjem)

- na osnovumetrike (vrstetransformacija nad rešenjem)

  • Okolinezarazmrdavanje (izborslučajnogrešenja) ilokalnopretraživanje ne morajubitiistogtipa