Heuristike zasnovane na lokalnom pretra ivanju
This presentation is the property of its rightful owner.
Sponsored Links
1 / 38

Heuristike zasnovane na lokalnom pretra živanju PowerPoint PPT Presentation


  • 55 Views
  • Uploaded on
  • Presentation posted in: General

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

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


Heuristike zasnovane na lokalnom pretra ivanju

Heuristikezasnovanenalokalnompretraživanju

MPIO

MF, Beograd, 2013/14.


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.


Heuristike zasnovane na lokalnom pretra ivanju

  • 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


Ema ils

Šema ILS


Princip ils

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


Ema simuliranog kaljenja1

Šema simuliranog kaljenja


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.


Grafi ki prikaz vnds

Grafički prikaz VNDS


Ematski prikaz vnds

Šematski prikaz VNDS


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


Ematski prikaz rvns

Šematski prikaz RVNS


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


Ema osnovne metode promenljivih okolina

Šema (osnovne) metode promenljivih okolina


  • Login