INF-MAT-5380

Like dokumenter
Tilfeldig søk Simulert størkning Terskelakseptanseteknikker. INF-MAT Geir Hasle - Leksjon 4 2

Del A: Diskret optimering og heuristiske metoder Leksjon 4. Sjefsforsker Geir Hasle SINTEF Anvendt matematikk, Oslo

INF-MAT-5380

INF-MAT-5380

!"!#$ INF-MAT Geir Hasle - Leksjon 2 2

INF-MAT Geir Hasle - Leksjon 3 2

INF-MAT-5380

INF-MAT

!"# $%&' P NP NP \ P. Finnes overalt. Er som regel ikke effektivt løsbare. Eksempler på NP-harde problemer

Hybrid med lokalsøk: Memetic algorithms

INF-MAT-5380

Del A: Diskret optimering og heuristiske metoder Leksjon 7

Oversikt. Heuristisk søk 1. Kombinatorisk optimering Lokalt søk og simulert størkning Populasjonsbasert søk. Prinsipper og metoder

Styrt lokalsøk (Guided Local Search, GLS)

INF-MAT-5380

Heuristisk søk 1. Prinsipper og metoder

!!!" " # $ Leksjon 1

Epost: Tlf. SINTEF Mob

INF-MAT Lokalsøk og meta-heuristikker i kombinatorisk optimering

Styrt lokalsøk (Guided Local Search, GLS)

Heuristiske søkemetoder II

INF Algoritmer og datastrukturer

Repetisjon og mer motivasjon. MAT1030 Diskret matematikk. Repetisjon og mer motivasjon

Løsningsforslag: Deloppgave om heuristiske søkemetoder ALGKON 2002, ordinær eksamen

INF Algoritmer og datastrukturer

Grafteori. MAT1030 Diskret Matematikk. Repetisjon og mer motivasjon. Repetisjon og mer motivasjon. Forelesning 23: Grafteori.

A study of different matching heuristics. Hovedfagspresentasjon Jan Kasper Martinsen

MAT1030 Diskret Matematikk

Løsningsforslag: Deloppgave om heuristiske søkemetoder, ALGKON 2003, kontinuasjonseksamen

Forelesning 23. MAT1030 Diskret Matematikk. Repetisjon og mer motivasjon. Repetisjon og mer motivasjon. Forelesning 23: Grafteori.

Eksamensoppgave i TDT4120 Algoritmer og datastrukturer

INF Algoritmer og datastrukturer

Dagens plan. INF Algoritmer og datastrukturer. Koding av tegn. Huffman-koding

Heuristiske søkemetoder I: Simulert størkning og tabu-søk

MAT1030 Forelesning 23

Oversikt. Branch-and-bound. Hvordan løse NP-hard kombinatorisk optimering? Eks: Eksakt Min Vertex cover. Mulige løsninger representert som søketre

IN Algoritmer og datastrukturer

INF Algoritmer og datastrukturer

Dagens plan: INF Algoritmer og datastrukturer. Grafer vi har sett allerede. Det første grafteoretiske problem: Broene i Königsberg

Grunnleggende Grafteori

LP. Leksjon 9: Kapittel 13: Nettverk strøm problemer, forts.2

Løsningsforslag: Deloppgave om heuristiske søkemetoder ALGKON 2002, kontinuasjonseksamen

Dynamisk programmering

MAT1030 Diskret matematikk

Overview. Heuristic search 1. Target function and optimization. Minimum vertex cover

MAT1030 Diskret matematikk

Løsningsforslag: Deloppgave om heuristiske søkemetoder, ALGKON 2003, ordinær eksamen

MAT Oblig 1. Halvard Sutterud. 22. september 2016

INF1020 Algoritmer og datastrukturer GRAFER

Biseksjonsmetoden. biseksjonsmetode. Den første og enkleste iterativ metode for ikke lineære likninger er den så kalt

TMA4140 Diskret Matematikk Høst 2016

MAT1030 Diskret Matematikk

Velkommen til plenumsregning for MAT1030. MAT1030 Diskret matematikk. Repetisjon: Algoritmer og pseudokode. Eksempel fra boka. Eksempel

Plenumsregning 1. Kapittel 1. Roger Antonsen januar Velkommen til plenumsregning for MAT1030. Repetisjon: Algoritmer og pseudokode

Løsningsforslag: Deloppgave om heuristiske søkemetoder ALGKON 2001, ordinær eksamen

Kapittel 5 - Advanced Hypertext Model Kapittel 6 - Overview of the WebML Development Process

MAT1030 Diskret matematikk

Kompleksitet. IN algoritmer og datastrukturer Plenumstime / repetisjon

Introduksjon. MAT1030 Diskret matematikk. Søkealgoritmer for grafer. En graf

MAT1030 Diskret matematikk

Introduksjon. MAT1030 Diskret Matematikk. Introduksjon. En graf. Forelesning 22: Grafteori. Roger Antonsen

MAT1140: Kort sammendrag av grafteorien

Kombinatorikk. MAT1030 Diskret Matematikk. Oppsummering av regneprinsipper

MAT1030 Diskret Matematikk

INF2820 Datalingvistikk V gang, Jan Tore Lønning

Dynamisk programmering

Innhold. Innledning 1

MAT1030 Plenumsregning 1

Disjunkte mengder ADT

Plenumsregning 1. MAT1030 Diskret Matematikk. Repetisjon: Algoritmer og pseudokode. Velkommen til plenumsregning for MAT1030

MAT1030 Diskret matematikk

Innledning. MAT1030 Diskret matematikk. Kapittel 11. Kapittel 11. Forelesning 33: Repetisjon

INF2820 Datalingvistikk V Gang 4.5 Jan Tore Lønning

INF1020 Algoritmer og datastrukturer GRAFER

Forelesning 25. MAT1030 Diskret Matematikk. Litt repetisjon. Litt repetisjon. Forelesning 25: Trær. Dag Normann

MAT1030 Diskret matematikk

Oppsummering. MAT1030 Diskret matematikk. Oppsummering. Oppsummering. Forelesning 23: Grafteori

PG4200 Algoritmer og datastrukturer forelesning 10. Lars Sydnes 21. november 2014

Korteste vei problemet (seksjon 15.3)

MAT1030 Diskret Matematikk

INF2820 Datalingvistikk V2016. Jan Tore Lønning

Øvingsforelesning Korteste vei: Alle til alle

INF Algoritmer og datastrukturer

Avsluttende eksamen i TDT4120 Algoritmer og datastrukturer

Dagens plan: INF Algoritmer og datastrukturer. Eksempel. Binære Relasjoner

INF Algoritmer og datastrukturer

Innhold uke 10. Objektorientert programmering i Python. Oblig 7 og 8. IN1000 Seminar! IN1000 Høst 2018 uke 10 Siri Moe Jensen

INF Algoritmer og datastrukturer

MAT1140: Kort sammendrag av grafteorien

GRAFER. Hva er en graf? Det første grafteoretiske problem: Broene i Königsberg. Grafer vi har sett allerede

MAT1030 Forelesning 22

Heuristiske søkemetoder III

Discrete Optimization Methods in Maritime and Road-based Transportation

Grafteori. MAT1030 Diskret Matematikk. Oppsummering. Oppsummering. Forelesning 24: Grafer og trær. Dag Normann

Kompleksitet og Beregnbarhet

MAT1030 Forelesning 22

KORTESTE STI. Vektede Grafer. Korteste Sti. Dijkstra s Algoritme. Vektet Urettet Graf

INF2820 Datalingvistikk V2012. Jan Tore Lønning

Det første grafteoretiske problem: Broene i Königsberg

Transkript:

INF-MAT-5380 http://www.uio.no/studier/emner/matnat/ifi/inf-mat5380/ Leksjon 4

Leksjon 3 - Oversikt Tilfeldig søk Simulert størkning Terskelakseptanse INF-MAT 5380 - Geir Hasle - Leksjon 4 2

SA - Oppsummering Inspirert av statistisk mekanikk - nedkjøling Metaheuristikk lokalsøk tilfeldig nedstigning tilfeldighet for å unngå lokalt optimum Enkel og robust metode, raskt å komme i gang Bevis for konvergens til globalt optimum I praksis: beregningskrevende finjustering kan gi gode resultater god der det er vanskelig å lage robuste heuristikker som baseres på problemstruktur INF-MAT 5380 - Geir Hasle - Leksjon 4 3

Leksjon 4 - Oversikt Tabusøk INF-MAT 5380 - Geir Hasle - Leksjon 4 4

Tabusøk (TS) - Bakgrunn Fred Glover 1986: Future paths for integer programming and links to artificial intelligence Pierre Hansen 1986: The Steepest Ascent/Mildest Descent Heuristic for Combinatorial Optimization Forskning innen diskret optimering operasjonsanalyse og kunstig intelligens Metoder som bryter barrierer, undersøker ubrukbare områder Surrogatføringer Kuttplanmetoder Læring, kognitiv vitenskap INF-MAT 5380 - Geir Hasle - Leksjon 4 5

Tabu (Taboo) Ladet med farlig, unaturlig kraft Bannlyst på grunn av moral, smak eller risiko Tabusøk: Styring av søk mot ellers utilgjengelige områder i søkerommet ved bruk av restriksjoner Prinsipper for intelligent problemløsning Strukturer som utnytter historie ( læring ) INF-MAT 5380 - Geir Hasle - Leksjon 4 6

Tabusøk - Hovedidéer Basert på lokalsøk Søker å unngå lokale optima ved å tillate ikke-forbedrende flytt Bruk av minne for å unngå løkker spre søket (diversifisering) Generell strategi for å styre nabolagssøk/ indre heuristikker Meta-heuristikk (Glover) INF-MAT 5380 - Geir Hasle - Leksjon 4 7

Grunnleggende Tabusøk Lokalsøk med Beste Nabo -strategi Alltid flytt til beste nabo ( aggressivt lokalsøk ) Fordel/ulempe? Men: noen naboer er tabu defineres av tabu-kriterier Men: noen er tilgjengelige (admissible) likevel bestemmes av admissibilitetskriterier typisk eksempel: beste løsning hittil Minne (korttids): Tabuliste INF-MAT 5380 - Geir Hasle - Leksjon 4 8

Lokale og globale optima Kostnad Løsningsrom INF-MAT 5380 - Geir Hasle - Leksjon 4 9

Taburestriksjoner defineres på egenskaper ved løsninger eller flytt - attributter hvor ofte eller hvor nylig - (frequency, recency) har denne attributten vært involvert i (å generere) løsning datastruktur: tabu-liste INF-MAT 5380 - Geir Hasle - Leksjon 4 10

Local_Search (S,f,N,strategy) incumbent:=current=init_solution(s) */ best solution until now local_optimum:=false while not local_optimum do od (current,incumbent,local_optimum):= Search_the_Neighborhood (current,n,f,strategy,incumbent) if local_optimum return incumbent INF-MAT 5380 - Geir Hasle - Leksjon 4 11

Search_the_Neighborhood (current,n,f,strategy,incumbent) best_neighbor:=current neighbors=n(current) for i in neighbors do if f(i) < f(best_neighbor) then best_neighbor:=i if f(i) < f(incumbent) then if strategy= First Accept then return (i,i,false) else incumbent:=i */ strategy is Best Accept fi fi od return (best_neighbor,incumbent,best_neighbor=current) */ (current,incumbent,local_optimum) INF-MAT 5380 - Geir Hasle - Leksjon 4 12

Lokalsøk: Traversering av nabolagsgrafen ik+ 1 Nσ( ik), k = 0, K N σ ( i ) 0 N σ ( i ) 1 i 1 i 0 i 2 Et flytt er prosessen å velge en gitt løsning i nabolaget til nåværende løsning - som nåværende løsning for neste iterasjon INF-MAT 5380 - Geir Hasle - Leksjon 4 13

Local_Search (S,f,N,Basic_Tabu_Search) incumbent:=current:=init_solution(s) */ best solution until now */ local_optimum:=false while not Stopping_Criterion() do od current:=search_the_neighborhood (current,n,f,basic_tabu_search,incumbent) if f(current) < f(incumbent) then incumbent:=current */ if local_optimum return incumbent return incumbent INF-MAT 5380 - Geir Hasle - Leksjon 4 14

Search_the_Neighborhood (current,n,f,strategy,incumbent) */ Assuming strategy=basic_tabu_search */ best_neighbor:=current best_acceptable_neighbor:=really_bad_solution() Neighbors=N(current) for i in Neighbors do if f(i) < f(best_acceptable_neighbor) and (not Tabu(i,Tabu_List) or Admissible(i)) then best_acceptable_neighbor:=i od Update_Tabu_List(best_acceptable_neighbor,Tabu_List) return best_acceptable_neighbor INF-MAT 5380 - Geir Hasle - Leksjon 4 15

Eksempel: TSP Representasjon: permutasjonsvektor Flytt: parvis bytte 5 ( i, j) i< j i, j [ 1, n] 1 2 3 4 5 6 7 2 3 1 7 6 4 INF-MAT 5380 - Geir Hasle - Leksjon 4 16

TSP-eksempel - Flytt Bytte i permutasjonsvektor 2 3 5 2 6 7 3 4 5 1 1 7 Flytt: Bytt(5,6) 6 5 4 2 3 7 2 5 7 3 4 6 1 1 6 4 INF-MAT 5380 - Geir Hasle - Leksjon 4 17

TSP-eksempel Antall flytt: Til hvert flytt: flyttverdi n 2 ik+ 1 Nσ( ik), k = 0, K = f( i ) f( i ), i N( i ) k+ 1 k+ 1 k k+ 1 k Valg av taburestriksjon attributt: de byer som inngår i flytt det er tabu å foreta flytt som involverer samme byer de siste k iterasjoner k=3 (tabu-varighet, tabu tenure ) Valg av aspirasjonskriterium beste løsning hittil INF-MAT 5380 - Geir Hasle - Leksjon 4 18

TSP-eksempel - Tabukriterier og datastruktur Attributt: paret av byer som er involvert i flyttet Tabu: flytt som involverer samme par Antall iterasjoner til flytt blir lovlig igjen (tabuvarighet): 3 Datastruktur: triangulær tabell, antall iterasjoner til trekk blir lovlig igjen Oppdateres for hvert flytt 2 3 4 5 6 7 1 0 2 0 0 0 0 2 0 3 0 0 0 3 0 0 0 0 4 1 0 0 5 0 0 6 0 INF-MAT 5380 - Geir Hasle - Leksjon 4 19

TSP-eksempel - Alternative tabukriterier/attributter ulovlig å operere på gitt(e) byer ulovlig å endre på byen med posisjon k i vektor kriterier knyttet til lenker mellom byer lenker som forekommer ofte i gode løsninger lengde på lenker - i forhold til gjennomsnitt for permutasjonsproblemer: attributter knyttet til forrige/neste virker ofte bra 2 3 5 7 1 2 3 4 5 6 7 2 4 7 3 5 6 1 1 6 4 INF-MAT 5380 - Geir Hasle - Leksjon 4 20

TSP-eksempel - Kandidatliste for flytt 1 2 3 4 5 6 7 2 4 7 3 5 6 1 Gjeldende løsning Verdi: 123 Bytt Verdi 3,1-2 2,3-1 3,6 1 7,1 2 6,1 4 Kandidatliste INF-MAT 5380 - Geir Hasle - Leksjon 4 21

TSP-eksempel -iterasjon 0 1 2 3 4 5 6 7 2 5 7 3 4 6 1 Gjeldende løsning Verdi: 234 2 3 4 5 6 7 1 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 4 0 0 0 5 0 0 6 0 Bytt Verdi 5,4-34 7,4-4 3,6-2 2,3 0 4,1 4 Tabu-liste Velger flytt Bytt(5,4) Kandidatliste INF-MAT 5380 - Geir Hasle - Leksjon 4 22

TSP-eksempel - iterasjon 1 (etter flytt (4,5)) Bytte Verdi 5,4-34 7,4-4 3,6-2 2,3 0 4,1 4 Kandidatliste 1 2 3 4 5 6 7 Gjeldende løsning 2 4 7 3 5 6 1 Verdi: 200 2 3 4 5 6 7 1 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 4 3 0 0 5 0 0 6 0 Tabu-liste INF-MAT 5380 - Geir Hasle - Leksjon 4 23

TSP-eksempel - iterasjon 2 Verdi: 200 1 2 3 4 5 6 7 2 4 7 3 5 6 1 Gjeldende løsning Bytte Verdi 3,1-2 2,3-1 3,6 1 7,1 2 6,1 4 Kandidatliste Velger flytt: (3,1) 2 3 4 5 6 7 1 0 0 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 4 3 0 0 5 0 0 6 0 Tabu-liste INF-MAT 5380 - Geir Hasle - Leksjon 4 24

TSP-eksempel - iterasjon 3 Verdi: 198 1 2 3 4 5 6 7 2 4 7 1 5 6 3 Gjeldende løsning Bytte Verdi 1,3 2 2,4 4 7,6 6 4,5 7 5,3 9 Tabu! Velger flytt: (2,4) (forverrende) Kandidatliste 2 3 4 5 6 7 1 0 3 0 0 0 0 2 0 0 0 0 0 3 0 0 0 0 4 2 0 0 5 0 0 6 0 Tabu-liste INF-MAT 5380 - Geir Hasle - Leksjon 4 25

TSP-eksempel - iterasjon 4 Verdi: 200 1 2 3 4 5 6 7 4 2 7 1 5 6 3 Gjeldende løsning Bytte Verdi 4,5-6 5,3-2 7,1 0 1,3 3 2,6 6 Tabu, men gir beste verdi hittil (194). Velger (4,5) Kandidatliste 2 3 4 5 6 7 1 0 2 0 0 0 0 2 0 3 0 0 0 3 0 0 0 0 4 1 0 0 5 0 0 6 0 Tabu-liste INF-MAT 5380 - Geir Hasle - Leksjon 4 26

Observasjoner I eksemplet forbys 3 av 21 flytt Strengere tabukriterium oppnås ved øke tabu-varighet styrke tabu-restriksjon Dynamisk tabu-varighet (Reaktivt Tabusøk) virker ofte bedre Tabu-liste krever plass I eksemplet: tabukriteriet basert på nærhet i tid Langtidsminne: frekvens INF-MAT 5380 - Geir Hasle - Leksjon 4 27

TSP-eksempel - Frekvensbasert langtidsminne Brukes typisk til å diversifisere (spre) søket Aktiveres f. eks. når det ikke er forbedrende flytt Vanlig å bruke straff for flytt som er utført ofte i langtidsstrategi for diversifisering Tabu-status (nærhet i tid) 1 2 3 4 5 6 7 1 2 2 3 3 3 4 1 5 1 5 4 4 6 1 2 7 4 3 Frekvens av flytt INF-MAT 5380 - Geir Hasle - Leksjon 4 28

Ideer bak Tabusøk Mindre vekt på randomisering (enn SA) Intelligent søk må baseres på mer systematisk styring Mer vekt på fleksible minnestrukturer Nabolag modifiseres på basis av minne (ekskludering av løsninger som er tabu, korttidsstrategi) Også tillegg av løsninger (eliteløsninger, gode lokale optima, gjerne brukt i langtidsstrategi) Bruk av historie for å modifisere evaluering av løsninger TS kan kombineres med straff for brudd på føringer (a la Lagrange-relaksering) INF-MAT 5380 - Geir Hasle - Leksjon 4 29

Ideer bak Tabusøk Aggressivt søk : velg god løsning i nabolag Store problemer, kostbar evaluering av løsninger: delta-evaluering approksimasjon av kostnadsfunksjon isolere gode kandidater i nabolag kandidatliste av trekk, utvides ved behov ovenstående er generelle teknikker i lokalsøk-baserte metoder! De fleste TS-implementasjoner er deterministiske Probabilistisk Tabusøk flytt velges probabilistisk, men basert på basale TS prinsipper De fleste TS-implementasjoner er enkle basalt TS med korttidshukommelse, statisk tabu-varighet INF-MAT 5380 - Geir Hasle - Leksjon 4 30

TS - Generell formulering Finn initiell løsning x Initialiser minne H Iterer inntil stoppkriterium er oppfylt: Finn kandidatliste Candidate_N(x) blant akseptable løsninger i N(x) Velg (med begrensete ressurser) den løsning i kandidatlisten som minimerer en utvidet kostnadsfunksjon c(h,x) Oppdater lokalsøk-strukturer og minnet H INF-MAT 5380 - Geir Hasle - Leksjon 4 31

Kritiske valg i TS Valg av nabolag N Definisjon av minnet H Hvordan kandidatlisten Candidate_N(x) bestemmes tabukriterium, attributt aspirasjonskriterium langtidsstrategi (inkludering av eliteløsninger) Evalueringsfunksjon c(h,x) Ofte implementeres kun grunnleggende tabusøk INF-MAT 5380 - Geir Hasle - Leksjon 4 32

Tabusøk - Attributter Attributt: Egenskap ved løsning eller flytt Kan baseres på ethvert aspekt av løsningen som endres ved flytt Utgangspunkt for definisjon av taburestriksjoner Ett flytt kan endre mer enn ett attributt INF-MAT 5380 - Geir Hasle - Leksjon 4 33

Eksempel: TSP 5 Attributt basert på kantene i turen A1: Kant legges til i løsningen A2: Kant fjernes fra løsningen Flytt av type Bytt: 4 kanter fjernes 4 kanter legges til Bytt(5,6) A1:(2,5),(5,7),(4,6),(6,1) A2:(2,6),(6,7),(4,5),(5,1) 6 2 3 7 1 5 4 2 3 7 1 4 6 INF-MAT 5380 - Geir Hasle - Leksjon 4 34

TS - Naturlige attributter Antar binær enkoding av løsning A1: x (k) m : 0->1 A2: x (k) n : 1->0 A3: A1 og A2 A4: Endring av objektiv f(x) A5: Endring av verdi på annen funksjon g(x) INF-MAT 5380 - Geir Hasle - Leksjon 4 35

Fra- og til-attributter Hvert attributt Ai kan relateres til de to løsninger som inngår i flyttet x (k) -> x (k+1) Bytt(5,6) i TSP med permutasjonsvektor A1:(2,5),(5,7),(4,6),(6,1) A2:(2,6),(6,7),(4,5),(5,1) x 2,5 (0,1),x 5,7 (0,1),x 4,6 (0,1),x 6,1 (0,1) x 2,6 (1,0),x 5,7 (1,0),x 4,5 (1,0),x 5,1 (1,0) INF-MAT 5380 - Geir Hasle - Leksjon 4 36

Bruk av attributter i taburestriksjoner Anta at flyttet x (k) -> x (k+1) involverer attributtet A Vanlig taburestriksjon: ikke lov å utføre flytt som reverserer status for A TSP-eksempelet: x 2,5 (0,1) x 2,5 (1,0) er tabu ( i noen iterasjoner) INF-MAT 5380 - Geir Hasle - Leksjon 4 37

TS - Naturlige Taburestriksjoner Antar binær enkoding av løsning R1: x (k) m : 1->0, der tidligere x (k-i) m : 0->1 R2: x (k) n : 0->1, der tidligere x (k-j) n : 1->0 R3: Minst en av R1, R2 R4: Både R1 og R2 R5: Som R4, men med tilleggskravet at den foregående endring skjedde samtidig (i=j) R6: Funksjonen g(x) får en verdi som er oppnådd tidligere R7: Funksjonen g(x) går fra verdi v 2 til v 1 der g(x) er endret fra verdi v 1 til v 2 i en tidligere iterasjon INF-MAT 5380 - Geir Hasle - Leksjon 4 38

Taburestriksjoners rolle Vanlig: Unngå reverserende flytt Alternativt: unngå repetisjon av stier i søkerommet R1: x (k) m : 1->0, der tidligere x(k-i) m : 1->0 Taburestriksjoner aktiveres kun dersom betingelse om nærhet i tid (eller hyppighet) er oppnådd Tabu-status for et attributt: attributtet er tabu-aktivt dersom betingelsene om nærhet eller frekvens er oppfylt ellers tabu-inaktivt Unngå av sykler i søkerommet kan kreve avanserte tabukriterier ikke nødvendigvis et mål INF-MAT 5380 - Geir Hasle - Leksjon 4 39

Bestemmelse av tabuvarighet Statisk t=7 t= n der n er mål for problemstørrelse Dynamisk t [5,11] t [.9 n, 1.1 n] Avhengighet av attributt TSP-eksempel kant-attributt, tabukriterier for kant inn og ut færre kanter inne enn ute samme tabuvarighet vil være ubalansert INF-MAT 5380 - Geir Hasle - Leksjon 4 40

Aspirasjonskriterier Når kan taburestriksjoner ignoreres? Kan være viktig for ytelse Klassisk aspirasjonskriterium: Aksepter tabu flytt som gir beste løsning hittil Andre muligheter: kriterier basert på grad av endring grad av brukbarhet Influens av flytt: Grad av strukturell endring av løsning avstandsmål for løsninger Eksempel: Hamming-avstand Flytt med høy influens kan være viktige å forfølge når søket er nær et lokalt optimum INF-MAT 5380 - Geir Hasle - Leksjon 4 41

Eksempler på aspirasjonskriterier Enkelt: Hvis alle trekk er tabu - velg det som er minst tabu Basert på objektiv: f(x) < f(x incumbent ) Basert på søkeretning: forbedrende vs. forverrende trekk Basert på influens: f.eks. Hamming-avstand INF-MAT 5380 - Geir Hasle - Leksjon 4 42

Frekvensbasert minne Komplementært til korttidsminne Brukes i langtidsstrategier i søket Frekvenstellere residens-basert transisjons-basert TSP-eksempel hvor ofte har en gitt kant vært med i løsningen? (residens-basert frekvensmål) hvor ofte har kantens status vært endret? (transisjons-basert frekvensmål) INF-MAT 5380 - Geir Hasle - Leksjon 4 43

Intensifisering og diversifisering Intensifisering: Aggressiv prioritering av gode løsningsattributter i ny løsning kort sikt: basert direkte på attributtene lengre sikt: bruk av eliteløsninger, deler av eliteløsninger (vokabularer) Diversifisering: Spredning av søk, ved at en prioriterer flytt som gir løsninger med nye sammensetninger av attributter INF-MAT 5380 - Geir Hasle - Leksjon 4 44

Intensifisering og diversifisering - enkle mekanismer bruk av frekvensbasert minne basert på delmengde S av alle løsninger diversifisering: S velges slik at den inneholder stor andel av genererte løsninger (f. eks. alle lokale optima) intensifisering: S velges som liten delmengde av eliteløsninger som i stor grad har sammenfallende attributter har liten avstand i søkerommet Flere slike delmengder - partisjonering, cluster-analyse INF-MAT 5380 - Geir Hasle - Leksjon 4 45

Straff og oppmuntring (Pisk og gulrot) Brukes i evaluering av flytt, tillegg til objektiv Gulrot for intensifisering vil være pisk for diversifisering (og omvendt) Diversifisering flytt til løsning som inneholder attributter med høy frekvens straffes TSP-eksempel: g(x)=f(x)+w 1 Σω ij Intensifisering flytt til løsning som inneholder attributter med høy frekvens blant eliteløsningene oppmuntres TSP-eksempel: g(x)=f(x)-w 2 Σγ ij INF-MAT 5380 - Geir Hasle - Leksjon 4 46

Path relinking Velger to eliteløsninger x og x Lager (kortest mulig) sti av løsninger som forbinder dem x -> x (1)->... x (r)= x En eller flere av løsningene på stien velges som ny initiell løsning INF-MAT 5380 - Geir Hasle - Leksjon 4 47

Kandidatliste Strategi for å begrense evaluering av nabolag Begrenset liste av trekk som synes lovende tilfeldig valg partisjonering Kandidatlisten kan utvides Gjenbruk av informasjon Parallellprosessering Generell teknikk i lokalsøk-baserte metoder! INF-MAT 5380 - Geir Hasle - Leksjon 4 48

Strategisk oscillering Mål: effektivt samspill mellom intensifisering og diversifisering Oppdeling av søket i faser brukbare løsninger / ubrukbare løsning kan realiseres med modifisert evaluering Eksempel: Ryggsekkproblemet INF-MAT 5380 - Geir Hasle - Leksjon 4 49

Tabusøk - Anvendelser Gode resultater for mange problemtyper Tidsplanlegging jobshop, flowshop, enmaskin, turnusplanlegging Ruteplanlegging TSP, VRP Layout, VLSI-design Ryggsekkproblemer Ikke så gode resultater for hardt beskrankede problemer? INF-MAT 5380 - Geir Hasle - Leksjon 4 50

Tabusøk - Sammendrag Inspirert fra matematisk optimering og kunstig intelligens/kognitiv vitenskap Fokus på bruk av minne fremfor bruk av tilfeldighet Basert på aggressivt lokalsøk, aksepterer flytt til dårligere løsning Kandidatliste-strategier etc. for billigere evaluering av nabolag Bruk av korttidsminne attributter unngå reversering og repetisjon tabukriterier, tabuliste Aspirasjonskriterier - tabuer er til for å brytes... Diversifisering og intensifisering Path relinking Strategisk oscillering Gode resultater for mange, harde DOP INF-MAT 5380 - Geir Hasle - Leksjon 4 51

Leksjon 5 - Oversikt Styrt lokalsøk (Guided Local Search, GLS) Genetiske algoritmer (GA) INF-MAT 5380 - Geir Hasle - Leksjon 4 52

INF-MAT-5380 http://www.uio.no/studier/emner/matnat/ifi/inf-mat5380/ Leksjon 4