Usporedba%20heuristickih%20algoritama%20za%20rje - PowerPoint PPT Presentation

About This Presentation
Title:

Usporedba%20heuristickih%20algoritama%20za%20rje

Description:

Usporedba heuristi kih algoritama za rje avanje optimizacijskih problema Tomislav Novak voditelj: doc.dr.sc. Domagoj Jakobovi Sadr aj heuristi ki algoritmi ... – PowerPoint PPT presentation

Number of Views:124
Avg rating:3.0/5.0
Slides: 30
Provided by: Tomi48
Category:

less

Transcript and Presenter's Notes

Title: Usporedba%20heuristickih%20algoritama%20za%20rje


1
Usporedba heuristickih algoritama za rješavanje
optimizacijskih problema
  • Tomislav Novak
  • voditelj doc.dr.sc. Domagoj Jakobovic

2
Sadržaj
  • heuristicki algoritmi
  • penjanje uzbrdo
  • simulirano kaljenje
  • tabu pretraživanje
  • genetski algoritam
  • problem naprtnjace
  • problem trgovackog putnika
  • usporedba razlicitih implementacija

3
Heuristicki algoritmi
  • velikih broj problema za koje ne postoji
    ucinkovito rješenje (klasa NP)
  • npr. problem trgovackog putnika
  • heuristicki algoritmi najcešce daju dobra
    rješenja u prihvatljivom vremenu, no ne može se
    dokazati da ce uvijek biti tako
  • aproksimacijski algoritmi

4
Heuristicki algoritmi
  • optimizacijski problem uredena cetvorka (I, f,
    m, g), gdje je
  • I skup instanci problema
  • za instancu x iz skupa I, f(x) je skup mogucih
    rješenja (prostor rješenja)
  • za instancu x i rješenje y iz skupa f(x), m(x,y)
    je mjera tog rješenja
  • g je funkcija cilja (min ili max)
  • susjedstvo rješenja, N(y)

5
Penjanje uzbrdo
  • pocetak slucajno odabrano rješenje problema y
  • u svakoj iteraciji to se rješenje poboljšava
    zamjenjuje se s najboljim y iz N(y)
  • primjer pronalaženja maksimuma funkcije

6
Penjanje uzbrdo - primjer
  • pocetno rješenje x -2

7
Penjanje uzbrdo - primjer
  • prelazak u tocku x -1

8
Penjanje uzbrdo - primjer
  • konacno, pronaden je optimum u tocki x 0

9
Penjanje uzbrdo primjer
  • primjer funkcije s dva ekstrema

10
Penjanje uzbrdo primjer
  • pronaden je lokalni ekstrem, koji u ovom slucaju
    nije i globalni

11
Simulirano kaljenje
  • poboljšanje u odnosu na penjanje uzbrdo
  • inspiracija proces kaljenja u metalurgiji
  • mogucnost prelaska u lošije rješenje s odredenom
    vjerojatnošcu, najcešce
  • parametri
  • temperatura
  • brzina hladenja a

12
Simulirano kaljenje - pseudokod
13
Tabu pretraživanje
  • memorijska struktura (tabu lista) sadrži
    rješenja koja nisu dopuštena
  • najcešce su to prethodno posjecena rješenja
    (izbjegavanje ciklusa)
  • tzv. aspiracijski kriterij ukoliko je rješenje
    bolje od trenutno najboljeg, ono se dopušta bez
    obzira na tabu listu

14
Genetski algoritam
  • algoritam koji oponaša mehanizme prirodne
    selekcije
  • jedinka potencijalno rješenje genom
    racunalna reprezentacija jedinke (najcešce niz
    nula i jedinica)
  • kroz niz generacija vrše se genetske operacije
    selekcija, mutacija, rekombinacija

15
Problem naprtnjace
  • neka je S skup predmeta, a C kapacitet naprtnjace
  • definira se
  • težina predmeta w(x)
  • vrijednost predmeta p(x)

16
Problem naprtnjace
  • cilj odabrati podskup P predmeta iz S tako da se
    maksimizira
  • pod uvjetom da je

17
Problem naprtnjace
  • iscrpno pretraživanje O(2N)
  • dinamicko programiranje O(NW), prostorne
    složenosti O(W)

18
Problem naprtnjace
  • rješenje je predstavljeno vektorom x (x1,
    x2,...,xn)
  • xi jednako je jedinici ukoliko je u rješenju
    sadržan predmet s indeksom i
  • rješenja x i x su susjedna ako postoji samo
    jedan j takav da je xj ? xj

19
Problem naprtnjace rješenje tabu pretraživanjem
  • tabu lista sadrži indekse predmeta koje nije
    moguce dodavati ili uklanjati iz trenutnog
    rješenja
  • u svakoj iteraciji radi se jedno od sljedeceg
  • odabire se onaj indeks j koji nije na tabu listi,
    za koji je xj 0 te je omjer pj/wj maksimalan
    xj se postavi na 1
  • u protivnom, odabire se indeks j takav da je xj
    1, a pj/wj minimalno xj se postavi na 0

20
Problem naprtnjace rješenje tabu pretraživanjem
(primjer)
Težina Vrijednost
1. 3 5
2. 2 3
3. 2 3
21
Problem naprtnjace usporedba rezultata
  • tablica prikazuje prosjecan rezultat izvršavanja
    heuristickih algoritama na problemu naprtnjace

W N opt. HC SA TS GA
4 3 6 5.7 6 6 6
100 10 2677 1594.8 2677 2469.4 2546.2
100 20 2748 1940.2 2748 2687.8 2748
1000 30 2562 1452.5 2541 2538.8 2545
1000 50 4533 2392.9 4293.4 4335.6 4358.8
22
Problem trgovackog putnika
  • u potpunom grafu G (V, E) traži se Hamiltonov
    ciklus (ciklus koji prolazi svim vrhovima grafa)
    najmanje duljine

23
Problem trgovackog putnika
  • iscrpna pretraga O(N!)
  • dinamicko programiranje O(N22N)

24
Problem trgovackog putnika
  • rješenje oznacimo vektorom v (v1, v2, ..., vn)
    koji predstavlja redosljed obilaska vrhova
  • susjedno rješenje v je svako rješenje koje se
    može dobiti iz v odabirom bilo koja dva vrha te
    zamjenom redosljeda obilaska ta dva vrha
  • dobrota rješenja duljina puta

25
Problem trgovackog putnika
  • pocetno rješenje pohlepnim algoritmom
  • genetski algoritam križanje s jednom tockom
    prekida nije moguce

26
Problem trgovackog putnika usporedba rezultata
  • tablica prikazuje prosjecan rezultat izvršavanja
    penjanja uzbrdo i simuliranog kaljenja na
    problemu trgovackog putnika

N opt. HC SA
4 12 12 12
4 195 195 195
6 179 179 179
6 223 252 223
10 172 228 174.2
20 207 305 239.4
27
Zakljucak
  • velik broj problema cije se optimalno rješenje ne
    može pronaci u razumnom vremenu (npr. problem N
    kraljica, ispitivanje izomorfnosti grafova, n-SAT
    itd.)
  • zadovoljavajuce i ono rješenje koje je približno
    jednako optimalnom
  • heuristicki algoritmi pametni nacin pretrage
    prostora problema u ogranicenom vremenu

28
Zakljucak
  • kljucni dio konstrukcije algoritma definicija
    zapisa rješenja
  • velik utjecaj parametara (npr. temperature kod
    SA, velicine tabu liste kod TS itd.), koji se
    podešavaju ovisno o instanci problema
  • primjenjivost na velikom broju optimizacijskih
    problema
  • uz dobru implementaciju i zapis rješenja mogu
    dati iznenadujuce dobre rezultate

29
Literatura
  1. T.H.Cormen, C.E.Leiserson, R.L.Rivest, C.Stein
    Introduction to Algorithms, The MIT Press, 2001.
  2. A. Nakic Heuristicki algoritmi za 0-1 problem
    naprtnjace, http//e.math.hr/heuristicki/
  3. M. Golub Genetski algoritam, http//www.zemris.fe
    r.hr/golub/ga/ga.html (10.3.2008.), Fakultet
    elektrotehnike i racunarstva, 2004.
  4. J.S.Cameron An Overview Of Artificial Life With
    A Focus On Gen etic Algorithm And Genetic
    Programming, http//www.alesdar.org/oldSite/IS/
    (10.3.2008.)
  5. C. Nilsson Heuristics for the Traveling Salesman
    Problem, http//www.ida.liu.se/TDDB19/reports_200
    3/htsp.pdf (10.3.2008.)
  6. S.Jayaswal A Comparative Study of Tabu Search
    and Simulated Annealing for Traveling Salesman
    Problem, http//www.eng.uwaterloo.ca/sjayaswa/pro
    jects/MSCI703_project.pdf (10.3.2008.)
  7. CodeProject Genetic Algorithms and the Traveling
    Salesman Problem, http//www.codeproject.com/KB/re
    cipes/tspapp.aspx (10.3.2008.)
Write a Comment
User Comments (0)
About PowerShow.com