Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: •...

23
Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Folie 220 Dr. Peter Merz Konstruktions-Verbesserungsheuristiken § Idee: 2-Phasen-Suche 1. Phase: Randomisierte Konstruktionsheuristik 2. Phase: Lokale Suche § Beispiele: Multi-Start lokale Suche GRASP: Greedy Randomized Adaptive Search Procedure (Feo und Resendre, 1995), ohne Gedächtnis ACS+LS, verwendet Gedächtnis (h) Initialisiere(h) s = konstruiere(h) s* = lokaleSuche(s, h) Ende

Transcript of Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: •...

Page 1: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 220 Dr. Peter Merz

Konstruktions-Verbesserungsheuristiken

§ Idee:• 2-Phasen-Suche• 1. Phase: Randomisierte

Konstruktionsheuristik• 2. Phase: Lokale Suche

§ Beispiele:• Multi-Start lokale Suche• GRASP: Greedy Randomized

Adaptive Search Procedure (Feo und Resendre, 1995), ohne Gedächtnis

• ACS+LS, verwendet Gedächtnis (h)

Initialisiere(h)Initialisiere(h)

s = konstruiere(h)s = konstruiere(h)

s* = lokaleSuche(s, h)s* = lokaleSuche(s, h)

EndeEnde

Page 2: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 221 Dr. Peter Merz

Iterierte lokale Suche (ILS)

§ ILS:• Idee von mehreren Wissenschaftlern unabhängig von

einander verfolgt à Viele Namen:- Iterated Descent (Baum, 1986)- Large Step Markov Chains (Martin, Otto, Felten, 1991)- Iterated Lin-Kernighan (Johnson, 1990)- Chained Local Optimization (Martin und Otto, 1996)

• Weiterentwicklungen:- Reactive Search (Battiti und Protasi, 1997)- Variable Neighborhood Search (Hansen und Mladenovic, 1998)

Page 3: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 222 Dr. Peter Merz

ILS - Ablauf

§ Initialisierung:• Zufallslösung oder

heuristische Lösung

§ Perturbation:• Zufällig (Mutation) • Oder deterministisch• Verwendung eines

Gedächtnisses (h : history)

§ Akzeptanzkriterien:• Nur bessere Lösungen• Nach Wkeitsverteilung• Mit Hilfe des

Gedächtnisses

s0 = erzeugeStartLösungs0 = erzeugeStartLösung

s‘ = perturbation(s*, h)s‘ = perturbation(s*, h)

s*‘ = lokaleSuche(s‘)s*‘ = lokaleSuche(s‘)

EndeEnde

s* = lokaleSuche(s0)s* = lokaleSuche(s0)

s* = akzeptiere(s*, s*‘, h)s* = akzeptiere(s*, s*‘, h)

Page 4: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 223 Dr. Peter Merz

ILS – Akzeptanzkriterien (1)

§ Nur bessere Lösungen:• Häufig verwendet• Lokale Meta-Suche

* ', wenn ( * ') ( *)( *, * ', )

*, wenn ( * ') ( *)s f s f s

best s s hs f s f s

<=

( *, * ', ) * 'rw s s h s=

§ Random Walk:• Immer neue Lösung s*‘ akzeptieren• Zufällige Meta-Suche

(Im folgenden: Minimierung)

Page 5: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 224 Dr. Peter Merz

ILS – Akzeptanzkriterien (2)

§ LSMC:• Bessere Lösungen akzeptieren• Schlechtere Lösungen mit geringer Wahrscheinlichkeit

akzeptieren à Metropolis-Kriterium• Simulated Annealing Meta-Suche

( )( *) ( *') /* ', wenn ( * ') ( *)( *, * ', )*, sonst

: Annealing Temperatur: Zufallszahl zwischen 0 und 1

f s f s Ts f s f s r elsmc s s hs

Tr

− < ∨ <=

Page 6: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 225 Dr. Peter Merz

ILS – Akzeptanzkriterien (3)

§ Restart:• Bessere Lösungen akzeptieren• Wenn seit ∆ir Iterationen keine Verbesserung, erzeuge

neue Lösung

r

* ', wenn ( * ') ( *)( *, * ', ) ( *, ), wenn ( * ') ( *) -

* sonst

: aktuelle Iteration: Letze Iteration mit besserer Lösung

i : restart-Parameter

last r

last

s f s f srestart s s h new s h f s f s i i i

s

ii

<= ≥ ∧ > ∆

Page 7: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 226 Dr. Peter Merz

ILS - Pertubation

§ Ziel:• Suche eines nahe gelegenen lokalen Optimums• Verlassen des Attraktionsgebietes des aktuellen lokalen

Optimums

§ Mögliche Vorgehensweise:• Perturbation kann über Nachbarschaften definiert werden• Auswahl aus Nachbarschaft zufällig oder deterministisch• Nachbarschaft der lokalen Suche und der Perturbation

disjunkt à Wähle s∈Npert mit Nls ∩ Npert =∅

Page 8: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 227 Dr. Peter Merz

Variable Neighborhood Search

§ Idee:• Von Hansen und Mladenovic, 1998• VNS und ILS sind ähnlich• Dynamische Änderung der Nachbarschaften der lokalen

Suche• Wie ILS mit schrittweiser Veränderung der

Pertubationsnachbarschaft N1, N2, N1 ,..., Nkmax

• Akzeptanzkriterium: Akzeptanz besserer Lösungen

Page 9: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 228 Dr. Peter Merz

Variable Neighborhood Search

§ Ablauf VNS:

Procedure VNS;

begins = konstruiereLösung();k = 1;repeat

wähle zufällig s‘ ∈ Nk(s);s* = lokaleSuche(s‘);if f(s*) < f(s) then

s = s*;k = 1;

elsek = k + 1;

endifuntil k > kmax;

end;

Procedure VNS;

begins = konstruiereLösung();k = 1;repeat

wähle zufällig s‘ ∈ Nk(s);s* = lokaleSuche(s‘);if f(s*) < f(s) then

s = s*;k = 1;

elsek = k + 1;

endifuntil k > kmax;

end;

Page 10: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 229 Dr. Peter Merz

VNS - Varianten

§ VNDS:• Variable Neighborhood Decomposition Search• Wie VNS, aber eingeschränkte lokale Suche• Einschränkung erfolgt durch fixieren von Attributen

(Lösungskomponenten)• Drastische Laufzeitreduktion möglich à nötig bei großen

Problem-Instanzen

§ VND:• Variable Neighborhood Descent• Lokale Suche mit variierter Nachbarschaft

Page 11: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 230 Dr. Peter Merz

Variable Neighborhood Descent

§ Ablauf VND:

Procedure VND;

begins = konstruiereLösung();k = 1;repeat

Finde bestes s* ∈ Nk(s);if f(s*) < f(s) then

s = s*;else

k = k + 1;endif

until k > kmax;end;

Procedure VND;

begins = konstruiereLösung();k = 1;repeat

Finde bestes s* ∈ Nk(s);if f(s*) < f(s) then

s = s*;else

k = k + 1;endif

until k > kmax;end;

Page 12: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 231 Dr. Peter Merz

Scatter Search

§ Idee:• Von Glover 1968, 1998• Meta-Heurisitik, sehr allgemein gehaltenes Template• Gewichtung von Nebenbedingungen und Kombination zur

Erzeugung neuer Nebenbedingungen –Surrogate Constraints

• Neue Lösungen werden durch Kombination von Lösungen aus einer Referenzmenge erzeugt

àpopulationsbasierter Ansatz ähnlich zu evolutionären Algorithmen bzw. memetischen Algorithmen

Page 13: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 232 Dr. Peter Merz

Scatter Search Phasen

1. Phase: Erzeugung einer Referenzmenge• Erzeugung einer Initialen Menge an Lösungen• Verbesserung der Lösungen (lokale Suche, Tabu

Search,...)• Die besten Lösungen ergeben die Referenzmenge unter

Berücksichtigung der Diversität

2. Phase: Scatter Search Evolution• Erzeuge systematisch neue Lösungen durch Kombination

mehrerer Lösungen• Gewährleistung der Gültigkeit der Lösungen durch Rundung• Verbessung der Lösungen wie oben• Aktualisierung der Referenzmenge

Page 14: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 233 Dr. Peter Merz

Scatter Search Template (1)

1. Diversification Generation Method:• Aus einer Lösung werden mehrere Kandiatenlösungen

erzeugt

2. Improvement Method:• Verbesserungsheuristik: Lokale Suche, Tabu Search

3. Reference Set Update Method:• Methode/Strategie zum Hinzufügen und Löschen von

Lösungen aus der Referenzmenge• Größe der Menge (z.B. b=20) soll konstant gehalten werden

Page 15: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 234 Dr. Peter Merz

Scatter Search Template (2)

4. Subset Generation Method:• Auswahl von Teilmengen der Referenzmenge zur

Lösungskombination

5. Solution Combination Method:• Kombination mehrer Lösungen zu einer Lösung

Page 16: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 235 Dr. Peter Merz

Scatter Search Ablaufschema

Erzeuge Startlösung(en)Erzeuge Startlösung(en)

ImprovementImprovement

Reference Set UpdateReference Set Update

Diversification GeneratorDiversification Generator Solution CombinationSolution Combination

ImprovementImprovement

Subset GenerationSubset Generation

Reference Set UpdateReference Set Update

EndeEnde

Phase I Phase II

Page 17: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 236 Dr. Peter Merz

Scatter Search vs. Memetische Algorithmen

§ Begriffe:• Referenzmenge = Population• Improvement = Lokale Suche• Reference Set Update = Überlebensselektion• Subset Generation = Variationsselektion• Solution Combination = Rekombination (Multi-Parent)

§ Wichtigste Unterschiede:• Deterministisch vs. Zufallsgesteuert• Vollständige, systematische Kombination

(erst alle Paare dann alle 3er Kombinationen, usw.)vs. zufällige oder fitnessbasierte Selektion

Page 18: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 237 Dr. Peter Merz

Scatter Search Methoden (1)

§ Diversifikation:• Beispiel binäres Problem f: S→¡ mit S={0,1}l

• Startlösung x=(0,...,0)

1 1

1 1

1

1 1,..., /

1 1,...,hk hk

i i

x x

x x k n h

x x i n+ +

′ = −′ = − ∀ =′′ ′= − ∀ =

§ Improvement:• 1-opt lokale Suche (single bit-flip)

Page 19: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 238 Dr. Peter Merz

Scatter Search Methoden (2)

§ Referenzmengen Update:• Unterteilung in zwei Mengen• Menge B der sehr guten Lösungen und• Menge D der sich stark unterscheidenden Lösungen• Hinzufügen zu Menge B, wenn Fitness besser als

schlechteste Lösung der Menge B ist• Hinzufügen der Lösung, die die minimale Distanz zu einer

Lösung der Menge D maximiert

Page 20: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 239 Dr. Peter Merz

Scatter Search Methoden (3)

§ Teilmengen-Erzeugung:• Alle 2-elementigen Teilmengen• 3-elementige Teilmengen durch Hinzunahme der besten,

nicht enthaltenen Lösung zu allen Paaren• 4-elementige Teilmengen durch Hinzunahme der besten,

nicht enthaltenen Lösung zu 3-elementigen Teilmengen• Alle Teilmengen der i besten Lösungen von 5 bis zur Größe

der Referenzmenge

Page 21: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 240 Dr. Peter Merz

Scatter Search Methoden (4)

§ Lösungskombination:• Für jede Lösungskomponente (jedes Bit) wird ein score

berechnet

,( )( )

( )

1, wenn ( ) 0.50, sonst

: Lösungen/Teilmenge für Kombination

j j ij R

jj R

i

f x xscore i

f x

score ix

R

⋅=

>′ =

∑∑

Page 22: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 241 Dr. Peter Merz

Scatter Search und Path Relinking (1)

§ Lösungskombination:• Kann aufgefasst werden als finden eines Punktes auf dem

Pfad von einer zur anderen Lösung• Verallgemeinerbar auf m Lösungen

§ Path Relinking:• Erzeugen von Pfaden zwischen Lösungen und darüber

hinaus• Lösungen auf einem Pfad können zur Erzeugung weiterer

Pfade herangezogen werden• Pfade werden über die Nachbarschaftsstruktur der

Suchlandschaft definiert

Page 23: Konstruktions-VerbesserungsheuristikenKonstruktions-Verbesserungsheuristiken Idee: • 2-Phasen-Suche • 1. Phase: Randomisierte Konstruktionsheuristik • 2. Phase: Lokale Suche

Moderne heuristische Optimierungsverfahren: Meta-HeuristikenFolie 242 Dr. Peter Merz

11 00 11

11 00 11

11 00 11

11 00 11

11 00 11

Scatter Search und Path Relinking (2)

§ Path RelinkingVorgehen:• Nachbarschaftssuche durch

schrittweise Einfügen von Lösungskomponenten anderer Lösungenà Transformation einer Lösung in die andere

• Pfad ist von der Nachbarschaftssuche besuchte Sequenz von Lösungen

11 00 00 11 11 00 00 11 00 11

11 11 00 00 11 00 11

11 11 11 00 11 00 11

00 11 11 00 11 00 11

00 11 11 00 11 00 00

00 11 11 11 11 00 00

Beispiel: Binäre Kodierung