1 / 30

Heuristike zasnovane na lokalnom pretra živanju

Heuristike zasnovane na lokalnom pretra živanju. MPIO, Beograd, 2012. 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

abel
Download Presentation

Heuristike zasnovane na lokalnom pretra živanju

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. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Heuristikezasnovanenalokalnompretraživanju MPIO, Beograd, 2012.

  2. 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.

  3. 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.

  4. 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, prema nekom kriterijumu, sused koji predstavlja sledeće rešenje. • Ukoliko se 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 zaustavljaprinailaskuprvoglokalnogminimumakoji ne morabitiglobalni minimum, a to zavisiodpočetnogrešenja

  5. Šema lokalnog pretraživanja Inicijalizacija:Izabratipočetnorešenje x1 ∈ X; x* = x1, f* =f(x1) Iterativni korak: n = 1, 2, . . . U okolini N( xn) trenutnog rešenja naći sledeće rešenje xn+1 , prema nekom kriterijumu izbora. 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.

  6. Efikasnost lokalnog pretraživanja zavisi od 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

  7. Simulirano kaljenje (Simulated annealing) • opštaheuristikazarešavanjeproblemakombinatorneoptimizacije (metaheuristika) • ime je dobilazboganalogijesa procesomkaljenja metalaizčije se simulacijeirazvila • metodapokušavapronaćiglobalni optimum, ili mu se bar približiti, u zatomprostorukonfiguracija

  8. Šema simuliranog kaljenja Inicijalizacija: Izabrati početno rešenje x1 ∈ X x* = x1, f* =f(x1) Iterativni korak: n = 1, 2, . . . 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 f (x) < f*, tadax* = x, f* =f(x) Ako je f (x) > f(xn), izabratislučajanbroj p uniformnona[0,1] Ako je p ≤pn, tadaxn= x Ako je p > pn, tadaxn+1 = x Kraj:Ako je zadovoljenkriterijumzaustavljanjastaje se , a x* se uzimazaaproksimacijuoptimalnogrešenja.

  9. 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 • Tabuvremeje brojiteracijazavremekojih je rešenjesadržano u tabulistizabranjeno.

  10. Š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*;

  11. 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 nekog Klasičnaimplementacijaaspiracijskefunkcijeponištavapotezutabu status ukolikotajpotezvodi do rešenjakoje je boljeoddosadanajboljegpronađenogrešenja. Predloženodaaspiracijskafunkcija ne poklanjauopštepažnjuvrednostifunkcijeciljavećdavršiulogudiversifikacijerešenja (npr. potezzadovoljavaaspiracijskufunkcijuukoliko vodi na lokacijukoja nije bilaokupiranaunutarzadnjiht iteracija)

  12. Tabu pretraživanje Najčešćiuslovizaustavljanjasu: • nakonfiksnogbrojaiteracija (ilifiksnogvremenaprocesora), • nakonodređenogbrojaiteracijabeznapretka u minimizaciji/maksimizacijifunkcije, • nakonštofunkcijadostignenekuunapreddefinisanu vrednost, • kombinacije gore navedenihuslova.

  13. Tabu pretraživanje Veličinatabu liste? • ukoliko je listapremala, možedoći do ciklinkogponavljanjapoteza, • u slučajudaje onaprevelika, zanimljivipotezimogubitiodbačeni • Premadosadašnjimistraživanjima, veličinatabuliste je proporcionalnaveličiniproblemakoji se rešava • Međutim, pojavljivanjecikličnihponavljanjapotezanijenužnou direktnojvezisaveličinomtabuliste. • Predloženo jedaveličinatabuliste ne budekonstantnavećda se slučajnomenjaunutarnekogintervalasaodređenomfrekvencijom.

  14. Tabu pretraživanje Prilikomdefinisanjalistezabranjenihpotezaprimenjuju se dva pristupa. 1. pristup: Zabranjujuse potezizamenedvejedinkekojesu bile zamenjenetokomzadnjihs iteracija (s je dužina tabu liste). Pogodniji za tabu liste fiksne dužine 2. pristup: Za svakujedinkuisvakulokacijuzapisujezadnjaiteracijakada je tajedinkabilanatojlokaciji. Potez se proglašavatabupotezomukoliko se njimeobejedinkedodjeljujenalokacijekojesuzauzimaleu ne viseodposlednjihs iteracija. Pogodniji za tabulistekoja je promenjiveveličine.

  15. Reaktivno tabu pretraživanje • Reactive tabu search • Modifikacija tabu pretraživanja • Predložena je da bi se izbeglezavisnostitabu search algoritamaodspoljnihfaktora (veličinatabuliste, odabiraspiracijskefunkcije) • Glavna osobina: automatski seobavljajumodifikacijeparametara u potrazizaštoboljimrešenjem

  16. Reaktivno tabu pretraživanje Osobine: • pored standardnihelemenatatabu pretraživanja definiše se automatizovano prilagođavanjeveličinelistezabranjenih poteza u skladusatrenutnimstanjempretraživanja. • Pored toga se definišeinačindiversifikacijepretraživanjakadastandardnimehanizamtabu-search procedure zakaže. • Reaktivnitabu-search algoritam se u praksipokazaosuperiornijim, iakosuzahtevizamemorijskeresuresepunoveći • u sebiimaugrađenmehanizamdugotrajnememorijekoja se iskorišćavazapraćenjenapredovanjaalgoritma, uočavanjegraničnih kola ihaotičnihatraktora.

  17. Metoda promenljivih okolina • 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ćavanjemrastojanje u odnosunaistumetriku.

  18. Metoda promenljivih okolina • U trenutkukada se dođe do nekoglokalnogoptimumaizvrši se slučajnopomeranje u tekućojokolini do nekogrešenja (kojemožebitiiveomaloše) • iz tog rešenjalokalnimpretraživanjempokušava sepronalaženjenekogdrugoglokalnogekstremuma. • Ovimpomeranjem, do rešenjakoje se nalazirelativnodalekoodtrenutnog, postiže se sistematičnopretraživanjeprostorarešenjaisprečavakonvergencijametode ka lošijemlokalnomekstremumu. • U slučajevimakadapomeranjenijedovelo do boljegrešenja, zadržavanje u trenutnonajboljemrešenjusmanjujemogućnostnepotrebnogširenjapretraživanjananoveoblastiprostoradopustivihrešenja.

  19. Metoda promenljivih okolina VNS metaheuristikaje zasnovana je na tri činjenice: • lokalni minimum u odnosunajednuokolinu ne morabitiilokalni minimum u odnosunanekudruguokolinu; • globalni minimum je lokalni minimum u odnosunasveokoline; • zavećinuproblemalokalniminimumi u odnosunarazneokolinesumeđusobnobliski. Ove tri činjenicemogu se iskoristitina tri različitanačina: deterministički,stohastičkiilikombinovano.

  20. Metoda promenljivog spusta • Variable Neighborhood Descent, VNDS • determinističkavarijanta • Sastoji se u odabiru kmaxokolina, Nk, k = 1, 2, ..., kmax, odredise početnorešenje x istartuje LS procedura u odnosunasvakuodokolina, a počevodizabranogrešenja x. • Ukoliko je kmax = 1, reč je o običnomlokalnompretraživanju.

  21. Grafički prikaz VNDS

  22. Šematski prikaz VNDS

  23. Redukovana metoda promenljivih okolina • Reduced Variable Neighborhood Search, RVNS • Stohastički pristup • metoda se sastoji u sistematskojpromeniokolinaiizborujednogslučajnogrešenja u svakojodokolina. • Koraciodlučivanjabaziranisuna tom jednomslučajnomrešenju • koracisuutolikojednostavnijišto ne postojiproceslokalnogpretraživanja

  24. Šematski prikaz RVNS

  25. 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

  26. (Osnovna) metoda promenljivih okolina • (Basic) Variable Neighborhood Search, VNS • Kombinacijaprethodnadvaprincipa • Sastoji se usistematskoj (determinističkoj) promeniokolina, slučajnimizborompočetnogrešenja u tekućojokoliniiprimenom LS procedure počevod tog, slučajnogrešenja • najrasprostranjenijavarijantametodepromenljivihokolinajerobezbeđujevišepreduslovazadobijanjekvalitetnijihkonačnihrešenja.

  27. (Osnovna) metoda promenljivih okolina Osnovnikoraci VNS metodesadržanisu u petlji u okvirukoje se: • menjaindeksokoline k, • određujeslučajnorešenjeiz k-okoline, • izvršava se proceduralokalnogpretraživanja • proveravakvalitetdobijenoglokalnogminimuma. Ovikoraci se ponavljajusvedok ne budezadovoljennekikriterijumzaustavljanja: • maksimalnodozvoljeno CPU vreme, • maksimalanbrojiteracija • maksimalanbrojiteracijaizmeđu dvepopravke • Kombinacija gore navedenog

  28. (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 mogurazlikovatipoosnovurastojanja (brojatransformacija) ilipoosnovumetrike (vrstetransformacija). • Važno je napomenutidaokolinezarazmrdavanje (izborslučajnogrešenja) ilokalnopretraživanje ne morajubitiistogtipa

  29. Šema metode promenljivih okolina

More Related