pdf-Datei
Transcription
pdf-Datei
Moderne Heuristische Optimierungsverfahren: Meta-Heuristiken Dr. Peter Merz [email protected] Wilhelm-Schickard-Institut für Informatik - WSI-RA Sand 1, Raum A 316 Lerninhalte § Einführung in Optimierungsprobleme § Lösungsverfahren für kombinatorische und nichtlineare Optimierungsprobleme § Lokale Suchverfahren und deren Vor- und Nachteile § Moderne Ansätze (Meta-Heuristiken) und deren Leistungsfähigkeit § Methoden zur systematischen empirischen Untersuchung von (Meta-)Heuristiken § Anwendungsmöglichkeiten von (Meta-)Heuristiken Folie 2 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Gründe „Driving Forces“ § Kombinatorische/nichtlineare Optimierungsprobleme treten in sehr vielen Anwendungsbereichen auf § Es gibt keine generelle/universelle Lösungsmethode § Neue algorithmische Ideen • Naturinspirierte Suchverfahren • Hybride Algorithmen § Verständnis des Verhaltens der Algorithmen notwendig § Übertragung der Verfahren auf neue Anwendungsgebiete durch schnelle Hardwareentwicklung möglich Folie 3 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Inhalte der Vorlesung (1) Vorläufiger Inhalt: § Einleitung • Optimierungsprobleme • Exakte Verfahren vs. Heuristiken • Klassifikation von Heuristiken § Konstruktionsheuristiken • Problemabhängige Heuristiken • Greedy-Strategien § Nachbarschaftssuche • Lokale Suche • Simulated Annealing • Tabu Search Folie 4 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Inhalte der Vorlesung (2) § Fitnesslandschaften • Modell und Definition • Effektivität von Heuristiken § Populationsbasierte Heuristiken • • • • • Evolutionäre Algorithmen Partikel-Schwärme Populationsbasiertes Inkrementelles Lernen Ameisenkolonien Scatter Search, ... § Anwendungsgebiete • Optimierung in der Bioinformatik und Bildverarbeitung Folie 5 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Literatur zur Vorlesung § Folien zur Vorlesung im Netz als PDF. § Weitere Literatur: D. Corne, M. Dorigo und F. Glover: New Ideas in Optimization, McGraw Hill, 1999. Z. Michalewicz und D. B. Fogel: How to Solve It: Modern Heuristics, Springer-Verlag, 1999. C. Reeves: Modern Heuristic Techniques for Combinatorial Problems, McGraw Hill, 1995. E.H.L. Aarts, J.K. Lenstra (editors): Local search in Combinatorial Optimization, John Wiley Sons, 1997. Folie 6 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Optimierungsprobleme § Was ist ein Optimierungsproblem? • Betriebswirtschaftlich: Entscheidungssituation, in der ein vorgegebener Nutzen in kostenminimaler Weise zu realisieren ist, wobei aus mehreren Alternativen eine nach speziellen Kriterien ausgewählt wird. • Mathematisch: Zu einer Funktion soll ein Eingabewert gefunden werden, so dass die Funktion einen minimalen Wert annimmt, wobei i. A. eine Beschränkung für die Eingabewerte existiert. Folie 7 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Arten von Optimierungsproblemen (1) § Lineare Programmierung (LP): min f ( x ) = c T x • Lineare Zielfunktion, lineare Nebenbedingungen • Effizient lösbar durch Simplexmethode, Interior Point Methode mit A x ≥ b x≥0 x ∈ Rn § Nichtlineare Programmierung (NLP): • Minimierungsfunktion ist mindestens quadratisch • Varianten: linear beschränkte Optimierung, quadratische Programmierung • Allgemein nicht effizient lösbar Folie 8 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Arten von Optimierungsproblemen (2) § Integer Programmierung (IP) • Wie LP/NLP jedoch: x∈ Zn • Spezialfall: 0/1 IP mit bool‘schen Variablen • Linear (ILP) oder nicht linear (IP) § Mixed Integer Programmierung (MIP) • Mischung von reellwertigen und ganzen Zahlen • MILP oder MIP § Kombinatorische Optimierung • Mathematisch gleichbedeutend mit IP/ILP • Permutations-, Reihenfolge-Probleme, ZuordnungsProbleme, Finden von Teilmengen Folie 9 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Kombinatorische Optimierungsprobleme § Definition: • Ein KOP ist ein Maximierungs- oder Minimierungsproblem und besteht aus: 1. Einer Menge DP von Instanzen, 2. Einer endlichen Menge SP(I) von (möglichen) Lösungen für jede Instanz I∈DP,und 3. Einer Funktion mP, die jeder Lösung x∈ SP(I) zu jeder Instanz I∈DP,einen positiven, reellwertigen Lösungswert mP(x,I) zuordnet. • Optimale Lösung: x*∈ SP(I) mit mP(x,I) ≤ mP(x*,I) ∀ x∈ SP(I) (Maximierung) x*∈ SP(I) mit mP(x*,I) ≤ mP(x,I) ∀ x∈ SP(I) (Minimierung) Folie 10 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Problem des Handlungsreisenden § Traveling Salesman Problem (TSP): • Gesucht: eine Rundreise durch n Städte, jede Stadt darf nur einmal besucht werden. • Ziel: Die zurückgelegte Wegstrecke soll minimal sein. n −1 L(π ) = ∑ dπ ( i ),π (i +1) + dπ ( n ),π (1) i =1 • Lösung: Reihenfolge der Städte: {π(1),π(2),...,π(n)} → eine Permutation der Menge {1,2,...,n}. • Die Distanzmatrix (di,j) gibt die Entfernungen der Städte an. Folie 11 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Problem des Handlungsreisenden (1) § Traveling Salesman Problem als ILP: n min L ( x) = ∑ d ij xij 4 9 i =1 n mit ∑ i=1,i ≠ j xij = 1 ∀ j ∈ {1,..., n} 8 6 2 n ∑x ij = 1 ∀ i ∈ {1,..., n} 1 i=j,j≠i ∑∑ 3 xij ≥ 1 ∀ Q ⊂ {1,..., n} 10 i∈Q j∈V − Q 5 7 Constraints verletzt! Folie 12 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Problem des Handlungsreisenden (2) § Traveling Salesman Problem als ILP: n min L ( x) = ∑ d ij xij 4 9 i =1 n mit ∑ i=1,i ≠ j xij = 1 ∀ j ∈ {1,..., n} 8 6 2 n ∑x ij = 1 ∀ i ∈ {1,..., n} 1 i=j,j≠i ∑∑ 3 xij ≥ 1 ∀ Q ⊂ {1,..., n} 10 i∈Q j∈V − Q 5 7 Constraints verletzt! Folie 13 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Problem des Handlungsreisenden (3) § Traveling Salesman Problem als ILP: n min L ( x) = ∑ d ij xij 4 9 i =1 n mit ∑ i=1,i ≠ j xij = 1 ∀ j ∈ {1,..., n} 8 6 2 n ∑x ij = 1 ∀ i ∈ {1,..., n} 1 i=j,j≠i ∑∑ 3 xij ≥ 1 ∀ Q ⊂ {1,..., n} 10 i∈Q j∈V − Q 5 7 Alle Constraints erfüllt! Folie 14 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Graph-Partitionierungsproblem § Graph Partitioning Problem (GPP): • Gesucht: Zerlegung eines Graphen G=(V,E) in k gleich große Teilmengen. • Ziel: Die Anzahl der Kanten zwischen den Teilmengen soll minimal sein. c(V1 ,...,Vk ) = e(V1 ,...,Vk ) e(V1,...,Vk ) = {(i , j ) ∈ E | ∃l ∈ {1,..., k } : i ∈ Vl ∧ i ∉ Vl } • Allgemeinerer Fall: gewichtete Kanten → Minimierung der Summe der Kantengewichte von e • Spezialfall k = 2: Graph Bipartitioning (GBP) Folie 15 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Graph-Bipartitionierungsproblem § Graph Bipartitioning Problem (GBP): • Zerlegung eines Graphen in k=2 gleich große Teilmengen. 4 9 8 6 12 2 1 11 10 3 5 7 Cut, c(vb,vr) = 3 Folie 16 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Quadratisches Zuweisungsproblem § Quadratic Assignment Problem (QAP): • Gesucht: Zuordnung von n Objekten zu n Positionen • Gegeben: - Fluß fij von Objekt i nach Objekt j - Entfernung dij von Position i und Position j • Ziel: Minimierung des Produktes aus Fluß und Entfernung n n C (π ) = ∑∑ di , j fπ ( i ),π ( j ) i=1 j =1 • Lösung: Permutation π, π(i)=j bedeutet eine Zuweisung von Objekt j zu Position i Folie 17 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Binäre quadratische Optimierung § Binary Quadratic Programming (BQP): • Gesucht: binärer Vektor, der eine quadratische Funktion f(x) maximiert. • Gegeben: n x n Matrix Q=(qij). n n f ( x ) = x t Q x = ∑∑ qij xi x j , i =1 j =1 xi ∈{0,1} • Spezialfälle: Maximum Clique, Maximum Independent Set, Maximum Cut Problem Folie 18 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Transportoptimierung (1) § Vehicle Routing Problem (VRP): • Gegeben: n Kunden, m LKW und 1 Depot. • Gesucht: m Touren um alle n Kunden zu bedienen. • Ziel: Minimierung der zurückgelegten Wegstrecke: m l j −1 L (π ) = ∑∑ ( dπ j (i ),π j (i +1) + dπ j (l j ),0 + d0,π j (1) ) j =1 i=1 • lj : Anzahl Kunden für LKW j • πj : Besuchsreihenfolge für LKW j Folie 19 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Transportoptimierung (2) § Capacitated Vehicle Routing Problem (CVRP): • Wie VRP nur mit zusätzlichen Restriktionen für die Beladung der LKW: Das Gesamtgewicht darf die Kapazität Cj der einzelnen LKW nicht überschreiten: l j −1 ∑w i =1 π j (i ) ≤ Cj ∀ j = 1,..., m • Wk : Gewicht der Ware für Kunde k • Cj : Maximales Beladungsgewicht § Time constrained VRP: Zeitlimit pro Kunde, Zeitlimit pro Route § VRP with time windows: Für jeden Kunden gibt es ein Zeitfenster zur Belieferung. Folie 20 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Rucksackproblem § Multidimensional Knapsack Problem (MKP): • Gegeben: m Rucksäcke und n Gegenstände • Ziel: Profitmaximierung unter Berücksichtigung des Gewichtes n P ( x) = ∑ ci xi i=1 n mit ∑w i=1 ij xi ≤ W j • ci : Profit zu Gegenstand i • wij : Gewicht von Gegenstand i in Rucksack j • Wj : Maximalgewicht von Rucksack j Folie 21 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Klassifizierung von KOP § Arten nach Aufgabenstellung, zum Beispiel: • • • • Zuweisung Reihenfolgebestimmung Partitionierung Teilmengenbestimmung § Art der Nebenbedingungen: • • • • Folie 22 Keine Constraints (BQP) Implizite Constraints (TSP,QAP) Explizite Constraints (MKP) Implizite und explizite Constraints (VRP) Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Kombinatorische Optimierung § Kombinatorische Optimierung heißt: • Endliche Anzahl von möglichen Lösungen • Schnell wachsende Zahl der Lösungen, idR. exponentiell mit der Problemgröße § Problemgröße: • Eigenschaft der Datenmenge einer Instanz bzw. Lösung • Bsp. TSP: - Anzahl n der Städte - Länge der Permutation π zur Beschreibung der Besuchsreigenfolge - Der Lösungsraum S hat die Größe |S|=(n-1)!/2 Folie 23 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Komplexität § Wachstum des Suchraums: n n22 n33 2nn n! 10 100 1033 1024 1066 100 1000 10000 10000 1066 1088 12 1066 1099 1012 30 301 103010 3010 1030 10301 157 102567 2567 1035659 35659 10157 § Vergleich: • Anzahl der Atome im Universum ca. 1080 • Alter des Universums ca. 5 x 107 s Folie 24 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Komplexitätstheorie (1) § Theorie der NP-Vollständigkeit • Klassifikation der Probleme aufgrund der Schwierigkeit ihrer algorithmischen Lösung • Klassifikation aufgrund des besten bekannten Algorithmus für ein Problem • Klassifikation über asymptotisches Verhalten der Algorithmen § Beschränkungen der NP-Vollständigkeit • Nur Zeitkomplexität • Worst-Case Analyse der Algorithmen • Nur Entscheidungsprobleme (Probleme die „Ja“ oder „Nein“ liefern) Folie 25 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Komplexitätstheorie (2) § Zeitkomplexität • Wird gemessen an der Anzahl elementarer Operationen • Formalisierung mittels O(•)-Notation: - Sei f,g : ¥ ® ¥ - Dann f(n) ∈ O(g(n)), falls positive natürliche Zahlen c und n0 existieren, so dass für alle n ≥ n0 gilt: f(n) ≤ c · g(n) • Ein Algorithmus ist polynomial, falls seine Zeitkomplexität in O(p(n)) ist, wobei p(n) ein Polynom ist. • Ein Algorithmus ist exponentiell, wenn Zeitkomplexität nicht polynomial beschränkbar ist. • Polynomial beschränkt / polynomiell ↔ effizient • Exponentiell ↔ ineffizient Folie 26 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken NP-Vollständigkeit (1) § Grundlegende Klassen: • Klasse P: Entscheidungsprobleme, die mit einem polynomiellen Algorithmus gelöst werden können • Klasse NP: Entscheidungsprobleme, die mit einem nichtdeterministischen polynimiellen Algorithmus gelöst werden können • Nichtdeterministischer Algorithmus: - In der ersten Phase wird eine Lösung geraten (nichtdet. Turingmaschine) - In der zweiten Phase wird deterministisch in polynomieller Zeit die Lösung verifiziert • P ⊆ NP, aber: P = NP? • Allgemein anerkannte Annahme: P ≠ NP! Folie 27 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken NP-Vollständigkeit (2) § Polynomielle Reduzierbarkeit: Ein Problem Π ist polynomiell reduzierbar auf ein Problem Π‘, falls ein poynomieller Algorithmus existiert, der jede Instanz von Π in eine Instanz von Π‘ transformiert und für jede Instanz von Π ein „Ja“ ausgegeben wird, gdw. „Ja“ für die entsprechende Instanz von Π‘ ausgegeben wird. § NP-Vollständigkeit: • Ein Problem Π ist NP-vollständig, genau dann wenn 1. Π ist in NP und 2. Für alle Π‘ in NP gilt, das Π‘ polynomiell reduzierbar auf Π ist. Folie 28 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken NP-Vollständigkeit (3) § Anmerkungen: • • • § Klasse der NP-vollständigen Probleme umfasst die schwersten in NP Wird ein polynimal beschränkter Algorithmus für ein Problem aus NP gefunden, gilt P=NP! Es ist unwahrscheinlich, dass für ein NP-vollständiges Problem ein polynomieller Algorithmus gefunden wird! Beweis der NP-Vollständigkeit: 1. Zeige, dass Problem in NP liegt 2. Wähle bekanntes, NP-vollständiges Problem und konstruiere Transformation auf das neue Problem 3. Zeige, dass Transformation polynomial beschränkt ist Folie 29 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken NP-harte Optimierungsprobleme § Erweiterung auf Optimierungsprobleme: • • • • Offensichtlich nicht leichter als die Entscheidungsvariante Optimierungsvariante nicht in NP Optimierungsproblem löst das Entscheidungsproblem Neuer Begriff: NP-hart § NP-harte Probleme: Ein Problem ist NP-hart, genau dann wenn für alle Π‘ in NP gilt, dass Π‘ polynomiell reduzierbar auf Π ist. § Viele kombinatorische Optimierungsprobleme sind NP-hart! Folie 30 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Exakte Verfahren § Vollständige Enumeration: • Möglich, da endlich großer Suchraum • Nicht praktikabel, da exponentielle Laufzeit § Implizite Enumeration: • Suchraum wird durch einen Suchbaum eingeteilt • Effizienzsteigerung durch Elimination von Teilbäumen: - Branch Bound - Branch Cut Folie 31 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Branch Bound § Suchbaumverfahren für Optimierungsprobleme: Zusätzliche Berücksichtigung von Lösungskosten § Branching: Verzweigung innerhalb des Suchbaums und Betrachtung von (disjunkten) Teilproblemen § Bounding: Verwendung oberer und unterer Schranken für Zielfunktionswerte • Obere Schranke: Beste gefundene Lösung (Minimierung) • Untere Schranke: Günstigste Vervollständigung einer partiellen Lösung / (Diskrete) Relaxation des Problems • Falls untere Schranke größer als obere Schranke, kann Teilbaum eliminiert werden. Folie 32 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Branch Cut § Ähnlich Branch Bound, aber: • Verwendung der LP-Relaxation des Problems für untere Schranken: ILP → LP • Verwendung leistungsfähiger Heuristiken für obere Schranken • Iterativer Ansatz: Stellt die aktuelle Lösung des LP-Problems nicht das Optimum dar, wird eine neue Gleichung eingefügt, um die Lösung zu entfernen (cut) und das neue LP wird mit Simplex-Algorithmus oder anderen LP-Algorithmen gelöst. • Schwierigkeit: Das Finden zulässiger Cuts § Relaxation: Entfernung von Constraints, um das Problem leichter lösbar zu machen Folie 33 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Exakte Lösung des TSP (1) § Historie der Rekorde bei der exakten Lösung von TSP-Instanzen mit Branch Cut: Folie 34 Jahr Forschergruppe n 1954 1971 1975 1977 1980 1987 1987 1987 1994 1998 2001 G. Dantzig, R. Fulkerson und S. Johnson M. Held und R.M. Karp P.M. Camerini, L. Fratta und F. Maffioli M. Grötschel H. Crowder und M.W. Padberg M. Padberg und G. Rinaldi M. Grötschel und O. Holland M. Padberg und G. Rinaldi D. Applegate, R. Bixby, V. Chvátal und W. Cook D. Applegate, R. Bixby, V. Chvátal und W. Cook D. Applegate, R. Bixby, V. Chvátal und W. Cook 49 Städte 64 Städte 100 Städte 120 Städte 318 Städte 532 Städte 666 Städte 2,392 Städte 7,397 Städte 13,509 Städte 15,112 Städte Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Exakte Lösung des TSP (2) § Aktueller Rekord: • n=15112 Städte • ergibt Suchraumgröße |S|>1056592 • Netzwerk von 110 Prozessoren von der Rice University und der Princeton University • Rechenzeit: 22.6 Jahre, skaliert auf Compaq EV6 Alpha Prozessor mit 500 MHz Folie 35 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Exakte Verfahren vs. Heuristiken (1) § Generell: Exakte Verfahren nur bei kleiner Problemgröße anwendbar § Branch Cut: • • • • • Sehr hohe Rechenzeit Bei TSP sehr leistungsfähig Aber nicht leicht übertragbar auf andere Probleme Theorie für das Finden von Cuts notwendig Gute Verfahren werden für obere Schranken benötigt à Alternativen zu exakten Verfahren sind nötig! Folie 36 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Exakte Verfahren vs. Heuristiken (2) § Heuristik: • Griechisch heuriskein: Finden, entdecken • Eine Technik zur Suche von guten (nahezu optimalen) Lösungen für ein Optimierungsproblem in möglichst kurzer Zeit • Ohne Gültigkeit oder Optimalität zu garantieren! • In vielen Fällen wird nicht mal eine Aussage getroffen, wie nahe die gefundene Lösung am Optimum liegt. Folie 37 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Klassifikation von Heuristiken § Problembezogen: • Problemspezifische Heuristiken • Problemunabhängige Heuristiken § Nach Komplexität: • Einfache Heuristiken • Hybride Heuristiken § Nach Methodik: • Konstruktionsheuristiken • Verbesserungsheuristiken § Deterministisch vs. Zufallsgesteuert Folie 38 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Meta-Heuristiken § Was sind Meta-Heuristiken? • Kombinieren unterschiedliche Suchstrategien - Intensifikation und Diversifikation Lokale und globale Suche Konstruktion und Verbesserung Populations- und Individuensuche Meta-Algorithmus steuert eingebetteten Algorithmus • Problemunabhängigkeit - Kapselung der problemspezifischen Komponenten - Leichte Übertragung auf neue Probleme Folie 39 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Konstruktionsheuristiken § Vorgehen: • • • • Eine Lösung wird schrittweise aufgebaut In jedem Schritt wird eine Lösungskomponente gewählt Wahl in Abhängigkeit von Regeln Ziel der Regeln: Eine möglichst gute Lösung zu produzieren à Maximierung der erwarteten Lösungsgüte § Häufig verwendete Strategie: • „Greedy“ (gierige) Auswahl der Lösungskomponenten, d.h. momentane Gewinnmaximierung Folie 40 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken GBP: Greedy-Heuristiken § Vorgehen: • Partitionierung der Knotenmenge durch schrittweises Zuweisen der Knoten zu den zwei Mengen • Abwechselndes Hinzufügen von Knoten zu den 2 Mengen • Greedy-Strategien zur Wahl der Knoten: - Minimierung der der neuen Kanten zwischen den Mengen (externe Kanten, Ei), bei mehreren Kandidaten: maximiere Kanten innerhalb der Mengen (interne Kanten, Ii) - Minimierung der Differenz zwischen externen und internen Kanten Folie 41 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken GBP: Differential Greedy (1) § Vorgehen (Wahl der Knoten): • Minimierung der Differenz der neuen Kanten zwischen den Mengen (externe Kanten, Ei) und den Kanten innerhalb der Mengen (interne Kanten, Ii) • Bei mehreren Kandidaten zufällige Auswahl Folie 42 Dr. Peter Merz 4 9 8 6 12 2 1 11 3 5 10 7 Rot:12, d(12)=E12-I12 =0–1= -1 d(4)=-1, d(3)=0, d(6)=2 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken GBP: Differential Greedy (2) § Vorgehen (Wahl der Knoten): • Minimierung der Differenz der neuen Kanten zwischen den Mengen (externe Kanten, Ei) und den Kanten innerhalb der Mengen (interne Kanten, Ii) • Bei mehreren Kandidaten zufällige Auswahl Folie 43 Dr. Peter Merz 4 9 8 6 12 2 1 11 10 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 3 5 7 Blau: 6, d(6)=E6-I6 =1-2=-1 d(4)=1-0=1, d(3)=2-1=1 TSP: Nächster-Nachbar Heuristik § Nearest Neighbor Heuristic: • Beginnend mit einem Startknoten wird als nächstes der verfügbare Knoten mit der kürzesten Entfernung gesucht und Kante eingefügt • Gierig, da aktuell bestmögliche Wahl getroffen wird • Ein Endpunkt der Kante ist fix Folie 44 Dr. Peter Merz 4 9 8 6 2 1 3 10 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 5 7 TSP: Greedy Heuristik § Greedy Heuristic: • Beginnend mit der kürzesten Kante werden schrittweise Kanten hinzugefügt, bis Tour komplett • In jedem Schritt wird die kürzmöglichste Kante gewählt ohne die Constraints zu verletzen • Gierig, da aktuell bestmögliche Wahl getroffen wird Folie 45 Dr. Peter Merz 4 9 8 6 2 1 3 10 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 5 7 TSP: Einfüge-Heuristiken (1) § Insertion Heuristics: • Beginnend mit einer Tour bestehend aus einer Stadt werden Städte hinzugefügt bis alle Städte besucht sind • Verschiedene Strategien existieren: - Nearest Insertion: Einfügen der Stadt mit geringster Distanz zu einer Stadt aus der Tour - Farthest Insertion: Einfügen der Stadt, bei der die geringste Distanz zu einer Stadt aus der Tour maximal ist - Cheapest Insertion: Einfügen der Stadt, die die geringste Zunahme der Tourlänge bewirkt • Einfügeposition: - Wahl durch Minimierung der Tourlängenzunahme (insertion) - Nach der nächstgelegenen Stadt in der Tour (addition) Folie 46 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Einfüge-Heuristiken (2) § Insertion-Heuristik: • Beispiel der Nearest Insertion Strategie: 4 4 9 8 6 9 8 6 2 1 2 1 3 10 3 5 7 10 Einfügereihenfolge: 1, 10, 6, 3, 7, 8, 4, 9, 2, 5 Folie 47 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 5 7 TSP: Vergleich Konstruktionsheuristiken (1) § Wie wird verglichen: • • • • Laufzeit: Durch Zeitkomplexität Speicherbedarf: Speicherkomplexität Vergleich anhand von TSP-Instanzen aus der TSPLIB Lösungsgüte: Abweichung vom Optimum in Prozent (Percentage Excess) L ( xheu ) q( x) = − 1 ⋅ 100% L( x ) opt • q(x)=100%: Doppelte Tourlänge • q(x)=0.0%: Optimale Tourlänge Folie 48 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Vergleich Konstruktionsheuristiken (2) § Ergebnisse: • Aus Reinelt’94, gemittelt über 24 Instanzen (n=198 – 5934) 1. 2. 3. 4. 5. Nearest Neighbor: Greedy: Nearest Insertion: Farthest Insertion: Cheapest Insertion: • Es existieren schelle Varianten, wie 1. Bentley‘s Greedy: 2. Bentley‘s NN: Folie 49 Dr. Peter Merz O(n2) O(n2 log n) O(n2) O(n2) O(n2 log n) O(n log n) O(n log n) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken O(n) O(n2) O(n) O(n) O(n2) 26.27% 11.96% 20.98% 13.99% 17.23% O(n) O(n) ca. 16% ca. 26% Verbesserungsheuristiken § Vorgehen: • Eine bestehende Lösung wird schrittweise verbessert, bis keine Verbesserung mehr erreicht werden kann • IdR. wird geprüft, ob geringfügige Veränderungen bessere Lösungen im Sinne der Zielfunktion liefern à Lokale Suche (local search) § Lokale Suche: • Eigenschaft: Es werden lokal optimale Lösungen erzeugt • Globale Optima sind auch lokale Optima, aber nicht umgekehrt • Voraussetzung: eine gültige Lösung Folie 50 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lokale Suche § Algorithmus (Maximierung): 1. 2. 3. 4. § Lösungsveränderung: • • • Folie 51 Verändere Lösung x → x‘ Wenn f(x‘) > f(x) x = x‘; Wenn für alle x‘ gilt: f(x‘) < f(x), dann stop sonst weiter mit Schritt 1 Dr. Peter Merz Veränderung mit geringfügiger Zielfunktionsveränderung Veränderung einzelner Komponenten des Lösungsvektors Beachtung der Nebenbedingungen Moderne heuristische Optimierungsverfahren: Meta-Heuristiken GBP: Lokale Suche § Lösungsveränderung durch • Tausch eines Knotens aus Menge 1 mit einem Knoten aus Menge 2 • Tausch von mehreren Knoten aus Menge 1 mit gleichviel Knoten aus Menge 2 à Mengen bleiben gleich groß § Berechnung des Gewinns: • Nach Tausch von i und j werden von i und j externe Kanten zu internen Kanten und umgekehrt • Summe aus Differenz von externen und internen Kanten: ∆c = Ei – Ii + Ej - Ij – 2 aij - aij ist die Adjazenzmatrix des Graphen Folie 52 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken GBP: 2-opt Lokale Suche § 2-opt: (Pairwise Exchange) • Tausch eines Knotens aus Menge 1 mit einem Knoten aus Menge 2 ∆c = E3 – I3 + E6 – I6 – 2 aij=2 – 1 + 3 – 1 + 0 = 3 4 4 9 8 6 2 1 12 3 11 5 7 10 Cut, c(vb,vr) = 6 Dr. Peter Merz 2 1 11 Folie 53 8 6 12 10 9 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 3 5 7 Cut, c(vb,vr) = 3 GBP: Kernighan-Lin Lokale Suche § 2-opt: Austausch von 2 Knoten • O(n2) Möglichkeiten für Tausch (n=|V|) § k-opt: Austausch von k Knoten • O(nk) Möglichkeiten für Tausch • Laufzeitreduktion auf O(n2) durch Idee von Kernighan und Lin: nur eine Teilmenge aller Möglichkeiten wird betrachtet in Abhängigkeit eines Gewinnkriteriums • Durch geeignete Datenstrukturen kann Laufzeit auf O(|E|) pro Iteration reduziert werden • Idee wird Kernighan-Lin Heuristik (1970) genannt • Ähnlich zur Lin-Kernighan Heuristik (1973) fürs TSP Folie 54 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Lokale Suche § Lösungsveränderung durch • • • • Städtetausch (Knotentausch) Entfernen und Einfügen eines Knoten an anderer Position Entfernen und Einfügen einer Kante an anderer Position Kantentausch (2 Kanten, 3 Kanten, k Kanten) § Berechnung des Gewinns • Gewinn (Tourlängenverkürzung) = alte Tourlänge – neue Tourlänge = Summe der Kanten, die entfernt werden minus Summe der Kanten die hinzugefügt werden Folie 55 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Knotentausch (node exchange) § Bsp.: Knoten 6 und 3 werden vertauscht 4 4 9 8 6 9 8 6 2 1 2 1 3 3 5 10 7 10 5 7 Gewinn: g = d(1,3) + d(3,4) + d(5,6) + d(6,7) – ( d(1,6) + d(6,4) + d(5,3) + d(3,7) ) Folie 56 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Knotenwiedereinfügen (node insertion) § Bsp.: Knoten 3 wird zwischen 5 und 7 eingefügt 4 4 9 8 6 9 8 6 2 1 2 1 3 3 5 10 7 10 5 7 Gewinn: g = d(6,3) + d(3,4) + d(5,7) – ( d(6,4) + d(5,3) + d(3,7) ) Folie 57 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Zwei-Kantentausch (2-opt) § Bsp.: Kanten (1,3) + (6,7) werden mit (1,6) + (3,7) getauscht 4 4 9 8 6 9 8 6 2 1 2 1 3 3 5 10 7 10 Gewinn: g = d(1,3) + d(6,7) – ( d(1,6) + d(3,7) ) Folie 58 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 5 7 TSP: Drei-Kantentausch (3-opt) § Bsp.: Kanten (1,8) + (3,4) + (5,6) werden mit (1,6) + (4,8) + (3,5) getauscht 4 4 9 8 6 9 8 6 2 1 2 1 3 3 5 10 7 10 5 7 Gewinn: g = d(1,8) + d(3,4) + d(5,6) – ( d(1,6) + d(4,8) + d(3,5) ) Folie 59 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Lokale Suche im Vergleich § Ergebnisse: • Aus Reinelt’94, gemittelt über 24 Instanzen (n=198 – 5934) Heuristik Heuristik Zeit/Iteration Zeit/Iteration Kanten Kanten q(x) q(x) RT RT ++ Node Node exchange exchange RT RT ++ Node Node insertion insertion (ni) (ni) NN NN ++ Node Node insertion insertion (ni) (ni) RT RT ++ 2-opt 2-opt NN NN ++ 2-opt 2-opt RT RT ++ 2-opt/ni 2-opt/ni NN NN ++ 2-opt/ni 2-opt/ni RT RT ++ 3-opt 3-opt NN NN ++ 3-opt 3-opt O(n O(n22)) O(n O(n22)) O(n O(n22)) O(n O(n22)) O(n O(n22)) O(n O(n22)) O(n O(n22)) O(n O(n33)) O(n O(n33)) 44 33 33 22 22 33 33 33 33 >100% >100% 97.18% 97.18% 16.59% 16.59% 14.67% 14.67% 8.42% 8.42% 9.62% 9.62% 5.80% 5.80% 8.01% 8.01% 5.00% 5.00% RT: RT: Zufällige Zufällige Startlösungen, Startlösungen, NN: NN: Nearest-Neighbor Nearest-Neighbor Lösungen Lösungen Folie 60 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Schnelle lokale Suche (1) § Ziel: Laufzeitreduktion auf O(n) pro Iteration • 2-opt: d(t2,t1) + d(t4,t3) > d(t2,t3) + d(t4,t1) à d(t2,t3) < d(t2,t1) oder d(t 4,t1) < d(t2,t1) à Übertragung auf 3-opt möglich à Kandidaten für t3 (t5) in aufsteigender Reihenfolge betrachten bis d(t 2,t3) > d(t2,t1) oder bis k nächsten Nachbarn von t2 (t4) Folie 61 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Schnelle lokale Suche (2) § Zu Berechnen: Für jede Stadt k nächste Nachbarn • A priori durch Heapsort : O(n2 log k) • A priori durch 2-dim. Suchbäume: O(n log n + nk) § Weitere Laufzeitreduktion - don‘t look bits: • Wenn für ein t1 kein tourverkürzender Kantentausch gefunden werden konnte, wird don‘t look bit für t1 gesetzt • Ein don‘t look bit für t1 wird gelöscht, wenn t1 Endpunkt einer entfernten Kante ist • Alle Kandidaten für t1, deren don‘t look bit gesetzt ist, werden nicht betrachtet • Anfangs sind alle don‘t look bits gelöscht Folie 62 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Konstruktionsheuristik + Lokale Suche § Ergebnisse: • Aus Merz’96, gemittelt über 18 Instanzen (n=51 – 3038) Heuristik Heuristik Nearest Nearest Neighbor Neighbor Nearest Nearest Insertion Insertion Farthest Farthest Insertion Insertion Cheapest Cheapest Insertion Insertion Ohne Ohne LS LS 20.75% 20.75% 21.70% 21.70% 10.38% 10.38% 17.36% 17.36% 2-opt 2-opt 5.35% 5.35% 9.67% 9.67% 7.48% 7.48% 7.79% 7.79% • Aus Johnson’96, (n=1000) Heuristik Heuristik Random Random Nearest Nearest Neighbor Neighbor Greedy Greedy Folie 63 Dr. Peter Merz Ohne Ohne LS LS 2150% 2150% 25.9% 25.9% 17.6% 17.6% 2-opt 2-opt 7.9% 7.9% 6.6% 6.6% 4.9% 4.9% Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 3-opt 3-opt 3.8% 3.8% 3.6% 3.6% 3.1% 3.1% TSP: Die Lin-Kernighan-Heuristik (1) § Idee von Lin-Kernighan (LK): • Statt 2 oder 3 Kanten wie in 2-opt/3-opt in jeder Iteration k Kanten tauschen! • Lauftzeit sehr hoch: O(nk) Möglichkeiten • Ab k=4 nicht mehr praktikabel und Tourlängenreduktion gering • Betrachtung einer kleinen Teilmenge aller O(nk) Kombinationen à sequentieller Kantentausch • Tiefensuche, k ist variabel • Tiefensuche besteht aus k Tauschoperationen, die zur Verkürzung der Tour führen, einzelne Tauschop. Können Tour verlängern Folie 64 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Die Lin-Kernighan-Heuristik (2) § Algorithmus: Schrittweiser Tausch von xi gegen y i Gewinn in Schritt i: g i = d (u2i −1, u 2i ) − d (u2i , u2i +1 ) = | xi | − | y i | i Bedingung für Tiefensuche: Gi = ∑ g k > 0 k =1 Effektiver Tausch nach n Schritten: k Kanten mit Gk* = Gk −1 + d (u 2k −1, u 2k ) − d (u2 k , u1 ) > 0 maximal (2 ≤ k ≤ n ) Folie 65 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Die Lin-Kernighan-Heuristik (3) § Backtracking: • Betrachtung von Alternativen zu y1, x2, y2 • Dadurch: Alle 2-opt und 3-opt Züge enthalten § Reduktion des Suchraums: • Nur sequentieller Kantentausch, d.h. xi und yi teilen sich einen Endpunkt Folie 66 Dr. Peter Merz Nicht-Sequentieller Kantentausch Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Vergleich 3-opt und LK-Heuristik § Ergebnisse nach Johnson’96: • Startlösungen: Randomized Greedy • Zusätzliche Datentypen: (notwendig für große n) - Cache für Distanzberechungen, keine Distanzmatrix - Two-Level Tree für Touren Heuristik Heuristik n=1000 n=1000 10000 10000 100000 100000 3-opt 3-opt <3.1% <3.1% 0.41s 0.41s <3.0% <3.0% 4.7s 4.7s <3.0% <3.0% 69s 69s Lin-Kernighan Lin-Kernighan <2.0% <2.0% 0.77s 0.77s <2.0% <2.0% 9.8s 9.8s <2.0% <2.0% 151s 151s • CPU-Zeiten: 150 MHz SGI Challenge Folie 67 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lokale Suche und Nachbarschaften § Bisher: Suche durch Lösungsveränderung § Neuer Begriff: Nachbarschaft einer Lösung • Nachbarschaft ist Menge der Lösungen, die von einer gegebenen Lösung durch eine einfache (lokale) Veränderungsoperation (Zug/move) erreicht werden können • TSP: N 2-opt(s) ist die Menge der Lösungen die durch einen Zweikantentausch von s „erreicht“ werden können • GBP: N 2-opt(s) ist die Menge der Lösungen die durch den Tausch von zwei Knoten erreicht werden können Folie 68 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lokale Suche - Pseudo Code § Neue Definition (Minimierung): function localSearch(s : S) : S begin repeat Wähle s* ∈ N(s); if g(s*, s) > 0 then s = s*; until " s*∈ N(s) : g(s*, s) ≤ 0; return s; end; Folie 69 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken g(s*,s) = f(s) - f(s*) Strategien zur Nachbarschaftssuche § Strategien für die Wahl aus N(s): • • • • Auswahl in zufälliger Reihenfolge Auswahl in systematischer Reihenfolge First Improvement: Wähle erstes s‘ das Gewinn erhöht Best Improvement: Wähle s‘ mit maximalem Gewinn § Unbekannte Größe: • Anzahl der Iterationen bis lokales Optimum erreicht ist • Begrenzung der Iterationen manchmal sinnvoll Folie 70 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Effizienz der Nachbarschaftssuche § Effizienzgrund: • Geringfügige Änderung im Lösungsvektor kann meist sehr schnell evaluiert werden • Berechnung des Gewinns um Größenordnungen schneller als die komplette Berechnung der Zielfunktion einer Lösung • Beispiel TSP: - 2-opt Kantentausch-Berechnung in O(1) - Tourlängenberechnung in O(n) • Durch Berechnung der Differenz des Gewinnes kann in manchen Fällen Effizienz noch gesteigert werden Folie 71 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken BQP: Effiziente Gewinnberechnung (1) n § Zielfunktion BQP: n f ( x ) = ∑∑ qij x i x j , i =1 j =1 xi ∈ {0,1} Gewinn gk bei „flippen“ von Bit k: xk' = 1 − xk n n g k ( x, x ') = f ( x ') − f ( x ) = ∑ ∑ qij ( xi' x 'j −xi x j ) i =1 j =1 = qkk ( x − xk ) + ' k n ∑ i =1,i ≠k = qkk ( x − xk ) + 2 ' k Folie 72 Dr. Peter Merz qik ( xi x − xi x k ) + n ∑ i =1,i ≠ k ' k q ik xi (xk' − xk ) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken n ∑ j =1, j ≠ k qkj (xk' x j − xk x j ) BQP: Effiziente Gewinnberechnung (2) § Trick: Betrachtung der Änderung von Gewinn g: • Update-Regel für Gewinn gi bei „flippen“ von Bit k: ∆g i ( k ) = 2 ⋅ q ik ( xi' − xi )( xk − xk' ) ∀i ≠k • Update für Bit k: gk = -gk • Update nur für gi mit qik ¹0 nötig: gi =gi + ∆gi § Effizienzsteigerung: • Berechnung von f(x) • Berechnung von gk • Berechnung von ∆gk Folie 73 Dr. Peter Merz à à à O(n2) O(n) O(1) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Nachteil der Nachbarschaftssuche § Problematik: • Bessere Lösungen außerhalb der Nachbarschaft werden nicht gefunden à Lösungen sind lokal optimal à Lösungsansätze: • Starten der lokalen Suche mit verschiedenen Startkonfigurationen • Meta-Heuristiken § Working Definition: Eine Meta-Heuristik ist ein allgemein anwendbares Verfahren um zugrundeliegene, problemspezifische Heuristiken (wie lokale Suche) in erfolgversprechende Regionen des Suchraums zu leiten. Folie 74 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Simulated Annealing (1) § Idee: • Lokale Suche, aber • Gelegentliches akzeptieren schlechterer Lösungen • Analogie zum physikalischen Verfahren zum Abkühlen von Kristallen à Naturinspiriert • Schlechtere Lösungen werden mit bestimmter Wahrscheinlichkeit angenommen § Umsetzung: • Kirkpatrick et al. 1883, Cerny 1985 • Erstes Verfahren zur Vermeidung lokaler Optima Folie 75 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Simulated Annealing (2) § Physikalische Analogie: • Thermischer Prozess zur Erlangung eines Zustandes sehr niedriger Energie in einem Festkörper (z.B. Kristall) 1. Der Festkörper wird in einem Hitzebad zum Schmelzen gebracht 2. Die Atome sind zufällig verteilt 3. Die Temperatur des Hitzebads wird langsam gesenkt und somit der Festkörper langsam abgekühlt 4. Bei jeder Temperatur stellt sich thermisches Gleichgewicht ein 5. Die Atome können sich in der energetisch günstigsten Struktur (Kristallgitter) anordnen § Simulation: • Folie 76 Dr. Peter Merz Monte Carlo-Algorithmus Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Simulated Annealing (3) § Metropolis-Algorithmus: • • • Monte-Carlo Simulation des Annealingprozesses Simuliert Entwicklung eines Festkörpers im Hitzebad Generiert Folge von Zuständen: 1. Vom aktuellen Zustand i mit Energie Ei wird Nachfolgezustand j durch kleine Pertubation generiert 2. Falls Ej – Ei ≤ 0, wird Zustand j akzeptiert 3. Falls Ej – Ei > 0, wird j akzeptiert mit Wahrscheinlichkeit ( p = exp − E j − Ei k BT ) kB : Bolzmannkonstante, T: Temperatur Folie 77 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Simulated Annealing (4) § Analogie zur Optimierung: • • • • § Zustand ↔ zulässige Lösung Energie ↔ Zielfunktion Grundzustand ↔ optimale Lösung Nachfolgezustand ↔ Lösung aus Nachbarschaft Simulated Annealing: • • • Oftmals wird benachbarte Lösung zufällig gewählt Annealing: Temperatur T wird langsam erniedrigt Metropolis-Akzeptanzkriterium für schlechtere Lösungen (Minimierung): ( exp − f (s*)T−f (s ) Folie 78 Dr. Peter Merz ) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Simulated Annealing - Pseudo Code function function simulatedAnnealing(s simulatedAnnealing(s :: S) S) :: S S begin begin best =s; tt == T(0), T(0), nn == 0; 0; ssbest =s; repeat repeat Wähle Wähle s* s* ∈ ∈ N(s); N(s); if if g(s*, g(s*, s) s) >> 00 then then ss == s*; s*; else else ifif exp(g(s*,s)/t) exp(g(s*,s)/t) >> rand[0,1) rand[0,1) then then s= s= s*; s*; best)) > best = if if g(s, g(s, ssbest > 00 then then ssbest = s; s; tt == T(n); T(n); nn == nn ++ 1; 1; until until nn >> nmax; nmax; best ;; return return ssbest end; end; Folie 79 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Anwendung von SA § Anwendung: • Festlegung des Abkühlungsplans (Wahl von T) - Anfangstemperatur T(0) - Rekursive Definition: T(n+1)=c T(n) (Geometrisches Abkühlen) - IdR. wird T für mehrere Iterationen konstant gehalten • Problemspezifische Entscheidungen - Definition der Zielfunktion - Definition der Nachbarschaft - Ausgangslösung Folie 80 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Theorie von SA § Theoretische Konvergenz gegen das Optimum § Bewertung: • • • • Unendliche Anzahl von Zustandsübergängen nötig Suchraum ist nur endlich groß!!! Konvergenzbeweise vor allem mathematisch interessant Aussagen über Konvergenzgeschwindigkeit nur sehr schwer zu treffen • Praktische Bedeutung eher gering Folie 81 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Simulated Annealing § Beispiel: • Zufällige Ausgangslösungen • 2-opt Nachbarschaft • Einfacher Abkühlungsplan: - T(0) so dass 3% der Züge abgelehnt werden - Geometrisches Abkühlen (c = 0.95) - Temperatur wird für n(n-1) Schritte konstant gehalten à Nachbarschaftsgröße - Abbruch bei: 5 Temperaturen ohne Verbesserung und unter 2% Akzeptanzrate à Ergebnisse: Besser als 2-opt, schlechter als 3-opt, bei n=1000 7500 mal langsamer Folie 82 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu Search (1) § Idee: • Meta-Heuristik, die auf der Ausnutzung eines Gedächtnisses des bisherigen Suchprozesses basiert • Erste Ansätze von Glover, 1986, und Hansen, 1986 • Ziel der effizienten Vermeidung lokaler Optima • Ausnutzung eines Gedächtnisses à Speichern des Lösungsverlaufes • Deterministische Leitung der Suche Folie 83 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu Search (2) § Gedächtnis: • Vermeidung lokaler Minima und strategische Leitung • Kurzzeitgedächtnis (short term memory): - Wesentlicher Teil, Vermeidung von Schleifen • Mittelfristiges Gedächtnis (intermediate term memory): - Intensivierung der Suche • Langzeitgedächtnis (long term memory): - Diversifizierung der Suche Folie 84 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu Search (3) § Such-Strategie: • TS verwendet aggressive Suche in der aktuellen Nachbarschaft (best improvement LS) • In jedem Schritt wird die beste benachbarte Lösung angenommen, auch wenn diese schlechter ist à Suchstrategie führt zu Zyklen • Vermeidung von Zyklen durch Verbieten des wiederholten Besuchens von Lösungen à Ausnutzung des Gedächtnis des Suchprozesses à Daher der Name Tabu Search Folie 85 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Einfacher Tabu Search Algorithmus § Eigenschaften: • Es wird nur Kurzzeitgedächtnis Mst verwendet • Zulässige Nachbarschaft wird durch Verbot früher besuchter Lösungen eingeschränkt • Zulässige Nachbarschaft hängt vom Kurzzeitgedächtnis ab à N(s, Mst) • Verbot früher besuchter Lösungen àTabu-Liste § Tabu-Liste: • Explizites Speichern der zuletzt besuchten Lösungen - Sehr speicherintensiv - Überprüfung zeitaufwendig Folie 86 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu-Listen-Verwaltung (1) § Tabu-Attribute: • Alternative: Speichern von Lösungsattributen früher besuchter Lösungen • Anhand der Lösungsattribute wird entschieden, ob Lösungen „tabu“ sind • Tabu-Attribute werden in einer Tabu-Liste gespeichert • Wichtige Größe: Tabu-Listenlänge tl • Lösungen sind verboten, falls sie Tabu-Attribute enthalten • Als Tabuattribute werden oft Attribute von Zügen (lokalen Lösungsveränderungen) benutzt und die Umkehrung der Züge für tl Iterationen verboten Folie 87 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu-Listen-Verwaltung (2) § Tabu-Liste: • Oftmals werden verschiedene Tabuattribute verwendet à mehrere Tabu-Listen • Tabu-Liste wird meist nicht als „Liste“ realisiert • Effizientes Überprüfen des Tabu-Status: Speichern der Iterationszahl bis zu der ein Attribut tabu ist § Aspirationskriterien: • Überschreiben des Tabu-Status „interessanter“ Lösungen • Häufigstes Kriterium: Verbotene Lösung ist besser als beste, bisher gefundene Lösung • Verschiedene andere Kriterien wurden entwickelt Folie 88 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TS - Abbruchkriterien § Abruch der Suche, wenn • eine feste Anzahl Iterationen überschritten ist • seit einer festen Anzahl von Lösungen keine neue beste Lösung mehr gefunden wurde • die zulässige Nachbarschaft leer ist • eine Lösung ausreichender Güte gefunden wurde Folie 89 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu Search – Pseudo Code function function simpleTabuSearch(s simpleTabuSearch(s :: S) S) :: S S begin begin best =s; TT == {}; {}; nn == 0; 0; ssbest =s; repeat repeat best)) > Finde Finde bestes bestes s* s* ∈ ∈ N(s) N(s) mit mit s* s* ∉T ∉T oder oder g(s, g(s, ssbest > 00 ;; ss == s*; s*; TT == TT ∪ ∪ {s}; {s}; best)) > best = if if g(s, g(s, ssbest > 00 then then ssbest = s; s; nn == nn ++ 1; 1; until until nn >> nmax; nmax; best ;; return return ssbest end; end; Folie 90 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu Search - Kurzzeitgedächtnis § Tabu-Listenlänge: • • • • • Wesentlicher Parameter von TS Zu kurze Tabu-Listen à Zyklen Zu lange Tabu-Listen à Zu starke Beschränkung der Suche Geeignete Parameterwahl erfolgt experimentell Geeignete Parameter sind problemspezifisch oder gar Instanzabhängig § Verschiedene Strategien: • Robust Tabu Search, Taillard `91 • Reactive Tabu Search, Battiti et al. `94-96. Folie 91 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tabu Search - Langzeitgedächtnis § Mittel- und Langzeitgedächtnis: • Basiert oft auf der Häufigkeit von bestimmten Zügen bzw. der Häufigkeit von Attributen in guten Lösungen § Intensivierungsstrategien: • Intensivieren die Suche in bestimmten Regionen des Suchraums - Neustart von Elitelösungen z.B. mit leerer Tabu-Liste - Häufig auftretende Lösungsattribute werden fixiert § Diversifikationsstrategien: • Lenken die Suche in zuvor ungenügend erkundete Suchraumregionen - Führen Lösungsattribute ein, die nicht häufig benutzt wurden Folie 92 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Robust Tabu Search § RoTS (Taillard 91): • Entwickelt fürs QAP • Tabu-Listenlänge tl wird zufällig aus dem Intervall [tl,min,tl,max] gewählt • In bestimmten Abständen (alle 2 ⋅ tl,max Iterationen) wird tl neu bestimmt • Dadurch Problem der Wahl der optimalen Tabu-Listenlänge umgegangen • Zusätzliches Aspirationskriterium: - Lösung wird akzeptiert, wenn Lösungsattribut seit mehr als m Iterationen nicht geändert wurde - m idR. sehr groß à Diversifikation Folie 93 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Reactive Tabu Search § ReTS (Battiti u. Tecchiolli 94): • Entwickelt für QAP und Knapsack-Problem • Tabu-Listenlänge wird dynamisch angepasst: - Erhöhung um konstanten Faktor bei Erkennen eines Zyklus - Sei m die durchschnittliche Zyklenlänge - Erniedrigung um konstanten Faktor, wenn letzte Erhöhung mehr als m Iterationen zurückliegt • Diversifikationsmechanismus: - Wird ausgeführt, wenn die Anzahl der Lösungen, die öfter als ein vordefinierter Schwellwert wiederholt besucht wurden, ein Limit überschreitet - Eine Anzahl proportional zu m von zufälligen Schritten wird ausgeführt Folie 94 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken QAP: Vergleich SA und TS § QAP Nachbarschaft: Tausch zweier Zuweisungen § Ergebnisse aus Merz et al. 2000: Folie 95 Instanz Instanz SA SA RoTS RoTS ReTS ReTS Zeit Zeit Tai80a Tai80a Tai80b Tai80b Tai100a Tai100a Sko100a Sko100a Tai100b Tai100b Tai150b Tai150b Tai256c Tai256c 3.29% 3.29% 5.10% 5.10% 1.85% 1.85% 2.94% 2.94% 6.70% 6.70% 3.79% 3.79% 0.37% 0.37% 1.02% 1.02% 2.92% 2.92% 0.91% 0.91% 0.19% 0.19% 2.37% 2.37% 2.85% 2.85% 0.33% 0.33% Dr. Peter Merz 0.48% 0.48% 1.60% 1.60% 0.39% 0.39% 0.40% 0.40% 1.47% 1.47% 1.78% 1.78% 0.27% 0.27% Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 180s 180s 180s 180s 300s 300s 300s 300s 300s 300s 600s 600s 1200s 1200s Repräsentation von Lösungen (1) § Kontinuierliche Optimierung: x = ( x1, x2 ,K, x n ) ∈ ¡ n Lokale Suche: xi = xi + ε Folie 96 § Binäre Optimierung: x = ( x1, x2 ,K, xn ) ∈ {0,1} n Lokale Suche: xi = 1-xi 0.5 0.5 0.9 0.9 0.2 0.2 0.1 0.1 0.7 0.7 0.7 0.7 00 11 00 00 11 11 0.5 0.5 0.9 0.9 0.1 0.1 0.1 0.1 0.7 0.7 0.7 0.7 00 11 00 11 11 11 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Repräsentation von Lösungen (2) § Permutationsprobleme • Lösung kann auf unterschiedliche Arten dargestellt werden 1. Permutationsvektor: Π={π1,π2,π3,π4}={4,3,1,2} Lokale Suche: πi ↔ πj 66 44 11 55 33 22 66 55 11 44 33 22 2. Zuordnungsmatrix: 0 0 X= 0 1 Folie 97 Dr. Peter Merz 0 1 0 0 0 1 1 0 0 0 0 0 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Repräsentation von Lösungen § Pfaddarstellung: • § 1 Matrix gibt an, ob Kante (i,j) in Tour enthalten ist (1) oder nicht (0) 2 0 3 0 X = 0 1 0 1 0 0 0 1 1 0 0 0 0 0 Adjazenzdarstellung: • Folie 98 4 Matrizendarstellung: • § Lösungsvektor gibt Besuchsreihenfolge an Π={π1,π2,π3,π4}={1,4,2,3} Dr. Peter Merz Lösungsvektor gibt zu jeder Stadt den Nachfolger an Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Π={π1,π2,π3,π4}={4,3,1,2} TSP: Repräsentation und Lokale Suche § Beispiel 2-opt lokale Suche: • Kanten (1,3) + (6,7) werden mit (1,6) + (3,7) getauscht 4 8 6 1 10 Folie 99 4 9 d 5 7 8 6 2 3 9 1 10 2 3 5 7 Pfaddarstellung: Adjazenzdarstellung: 10 10 11 33 55 22 99 88 44 66 77 33 99 55 66 22 77 10 10 44 88 11 10 10 11 66 44 88 99 22 55 33 77 66 55 77 88 33 44 10 10 99 22 11 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lösungsrepräsentation und Lokale Suche § Welche Repräsentation für ein gegebenes Problem? • Geringfügige Änderungen in der Lösung à geringfügige Änderungen in der Lösungsrepräsentation (Lösungsvektor) • Geringfügige Änderungen im Lösungsvektor à geringfügige Änderungen in der Lösung (Fitness der Lösung) • Lokale Suche sollte sehr wenige Lösungskomponenten ändern à Nicht immer möglich (TSP) à Effiziente Ausführung eines Zuges/Schrittes à Effiziente Berechnung der Fitnessänderung Folie 100 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Distanz zwischen Lösungen (1) § Distanz: • Maß für „Unähnlichkeit“ bzw. Verschiedenheit von Lösungen • Starker Zusammenhang mit Nachbarschaften • Basiert auf Vergleich der Lösungskomponenten § Beispiele: • Hamming-Distanz: Definiert zwischen Bitstrings: - Anzahl der Bit in denen sich zwei Binärvektoren unterscheiden • Euklidische Distanz: Definiert zwischen reellen Vektoren: - Summe der quadratischen Differenzen zwischen den Komponenten d (x , y ) = n 2 ( x − y ) ∑ i i i =1 Folie 101 Dr. Peter Merz x, y ∈ ¡n Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Distanz zwischen Lösungen (2) § Definition: • Anhand der unterschiedlichen Lösungskomponenten • Anhand der Anzahl der Nachbarschaftzüge/lokalen Veränderungsoperationen § Beispiel TSP: • Anzahl der unterschiedlichen Kanten in zwei Lösungen (d1) • Minimale Anzahl der 2-opt Züge, um die eine in die andere Lösung zu transformieren (d2) • Es gilt: d1 ≤d2≤2⋅d1 § Beispiel BQP: • Anzahl der Bit in denen sich zwei Binärvektoren unterscheiden (Hamming-Distanz) • Minimale Anzahl der „Bitflips“ um die eine in die andere Lösung zu transformieren (entspricht der Hamming-Distanz) Folie 102 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Nachbarschaft und Distanz § Nachbarschaftsdefinition: • N(s)={s‘∈ S: d(s,s‘)≤ dmin § Beispiel TSP: • k-opt Nachbarschaft: Nk-opt(s)={s‘∈ S: d(s,s‘)≤ k • Mit: d(s,s‘) = |{ e ∈E : e ∈ s ∧ e ∉s‘| § Beispiel BQP: • k-opt Nachbarschaft: Nk-opt(s)={s‘∈ S: d(s,s‘)≤ k • d: Hamming-Distanz Folie 103 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Fitnesslandschaften (1) § Konzept zur Beschreibung von Suchräumen Jeder Lösung im Suchraum wird eine Höhe zugeordnet Punkt = Lösung Höhe des Punktes = Fitness der Lösung Punkte sind räumlich angeordnet Ähnliche Lösungen sind in der Fitnesslandschaft benachbart 1.0 § Wichtige Begriffe: • Nachbarschaft • Distanz von Lösungen Z Axis • • • • • 0.5 10 0.0 8 2 6 4 XA xis 6 4 8 2 10 Folie 104 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken xis YA Fitnesslandschaften (2) § Wichtige Eigenschaften: • • • • • • • Verteilung der Fitnesswerte (Mittel und Varianz von f) Unebenheit der Landschaft (landscape ruggedness) Die Zahl der lokalen Optima / Bergspitzen in der Landschaft Die Verteilung der lokalen Optima im gesamten Suchraum Die Anzahl der Schritte auf eine Bergspitze Struktur und Größe von Attraktionsgebieten lokaler Optima Größe und Struktur von Ebenen mit gleicher Fitness à Neutral Networks Folie 105 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Fitnesslandschaften (3) § Beispiele von Fitnesslandschaften (NK-Fitnessmodell): • Stark uneben (links) und weniger zerklüftet/“ruckelig“ (rechts) Folie 106 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Definition Fitnesslandschaften § Formal: • • • • • f: Fitnessfunktion / Zielfunktion S: Suchraum, Menge aller möglichen Lösungen d: Distanzmaß zwischen Lösungen N: Nachbarschaftsfunktion Landschaft: L=(f,S,d) oder L=(f,S, N) • s∈ S: Punkt in der Fitnesslandschaft • F(s): Höhe des Punktes • N(s)={s‘∈ S: d(s,s‘)=dmin} : (räumlich) benachbarte Punkte zu s Folie 107 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Statistische Fitnesslandschaften § Ziel: • Messung/Ermittlung der Eigenschaften von Fitnesslandschaften § Autokorrelation: • Ermittlung lokaler Eigenschaften à Ermittlung der „Ruggedness“ (Unebenheit) § Fitness-Distanz-Korrelation: • Ermittlung globaler Eigenschaften à Ermittlung der Verteilung lokaler Optima im Bezug auf das Optimum Folie 108 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Autokorrelation § Fragestellung: • Wie stark sind die Fitnesswerte zweier Punkte mit Abstand d korreliert? § Sei: f = µ (f ) = ∑ f ( x ) s∈S σ 2 (f ) = ∑ (f ( x ) − f )2 x∈S S 2 (d ) = {( x, y ) ∈ S × S | d (x , y ) = d } • Dann ist die Autokorrelationsfunktion definiert als: ρ (d ) = Folie 109 Dr. Peter Merz 1 (f ( x ) − f )(f ( y ) − f ) ∑ 2 2 σ (f ) | S (d ) | ( x ,y )∈S2 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Zufallslauf-Korrelation § Random Walk: • Autokorrelationsbestimmung durch Zufallslauf durch die Landschaft • Die besuchten Punkte stellen eine Zeitreihe {f(xt) dar • Random Walk Korrelation r(s) gibt die Korrelation der Fitnesswerte s Schritte von einander entfernter Lösungen an m −s 1 r (s ) ≈ 2 (f ( xt ) − f )(f ( xt +s ) − f ) ∑ σ (f )( m − s ) t =1 • Leichte experimentelle Bestimmung Folie 110 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Korrelationslänge § Annahme: • Isotropische Landschaft • Autoregressive Zeitreihe yt =a yt-1 + et à AR(1) Landschaft, r(s) = r(1)s = e –s/l à l: Korrelationslänge 1 1 l=− =− ln(| r (1)|) ln(| ρ (1) |) • Je kleiner l, desto zerklüfteter die Landschaft • Je größer l, desto stärker korreliert sind benachbarte Punkte Folie 111 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Fitness-Distanz-Korrelation § Korrelation der Fitness und der Distanz zum Optimum von Lösungen (FDC): ρ(f , d ) = Cov (f , dopt ) σ (f )σ (dopt ) mit dopt ( x ) = d (x , x opt ) m 1 ρ( f , dopt ) ≈ (f ( xi ) − f )(dopt ( xi ) − dopt ) ∑ σ (f )σ ( dopt ) ⋅ m i =1 • ρ=1.0: Mit steigender Entfernung zum Optimum steigt die Zielfunktion • ρ=0: Kein Zusammenhang zwischen Fitness und Distanz • ρ=-1.0: Mit steigender Entfernung zum Optimum sinkt die Zielfunktion Folie 112 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Fitness-Distanz-Korrelation lokaler Optima § Besonders wichtig: • Ist die Fitness und die Distanz zum Optimum von lokalen Optima korreliert? • Sind die lokalen Optima auf den gesammten Suchraum verteilt oder sind die sie um das globale Optimum herum verteilt? § Strukturierte Suchräume: • Lokale Optima konzentrieren sich in einem kleinen Bereich des Suchraums • Je näher die Fitness an der Fitness des Optimum, desto mehr Lösungskomponenten stimmen überein (FDC!) § Unstrukturierte Suchräume: • Zufällige Verteilung der lokalen Optima Folie 113 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Beispiele für Autokorrelation (1) § TSP: • AR(1) Landschaften mit r(s) =exp(-s/l) = exp(-s⋅k / n) • Mathematisch bewiesen • k: Anzahl der Kanten beim Kantentausch • Korrelationslänge (l = n/k) ist unabhängig von der Probleminstanz § GBP: • Mathematisch berechnet: l » 1/8 ⋅ (n-3) • Unabhängig von der Struktur des Graphen (Knotengrad) Folie 114 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Beispiele für Autokorrelation (2) § QAP: • Korrelationslänge ist Instanzabhängig • Keine mathematisch geschlossene Form bekannt • Korrelationslänge: n/l liegt zwischen 2.8 und 4 • AR(1)-Landschaft § BQP: • Korrelationslänge ist ebenfalls Instanzabhängig • Korrelationslänge: n/l liegt zwischen 2 und 3 (Schnitt 2.6%) Folie 115 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken NK-Landschaften § NK-Modell: • zur Untersuchung von Fitnesslandschaften • N und K sind Parameter, Fitness f(x): 1 N f ( x ) = ∑ fi ( xi , x i1 ,K, x iK ) N i =1 mit fi : {0,1}K +1 → [0,1] (Zufallszahl) • Der Fitnessbeitrag von Gen i hängt vom Wert von Gen i (xi) und K anderen Genen ab • Unebenheit der Landschaft kann mit N und K verändert werden s N K + 1 • Es gilt: r (s ) ≈ 1 − ⇒ l ≈ N K +1 Folie 116 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Beispiele für Fitness-Distanz-Korrelation (1) § Beispiel Graph-Bipartitioning (GBP): • Zwei Instanzen mit stark unterschiedlichen Eigenschaften Links: keine Korrelation (ρ≈0) Folie 117 Dr. Peter Merz Rechts: hohe Korrelation (ρ≈1) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Beispiele für Fitness-Distanz-Korrelation (2) § Verteilung lokaler Optima: • Hohe regionale Konzentration und zufällige Verteilung Links: strukturiert, ρ≈-0.75 (BQP) landscape) Folie 118 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Rechts: chaotisch, ρ≈0 (NK NK-Fitnesslandschaften § Auswirkungen von K im NK-Fitnessmodell: K=2,N=64 K=2, N=1024: FDC ρ≈-0.6, l≈341 Folie 119 Dr. Peter Merz K=11,N=64 K=11, N=1024: FDC ρ≈0, l≈85 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lösungsrepräsentation / Fitnesslandschaften § Funktion f(x) = 100 - (x - 8)2 • Ein lokales Optimum = globales Optimum bei x = 8 - In der Integercodierung gibt es 2 Nachbarn pro Lösung (x+1/x-1) und ein lokales Optimum - In der Binärcodierung gibt es 4 Nachbarn pro Lösung (Bitflip) und zwei lokale Optima: 0111 (7) und 1000 (8) - In der Gray-Codierung gibt es 4 Nachbarn und ein lokales Optimum Folie 120 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken X X f(x) f(x) binär binär gray-code gray-code 00 11 22 33 44 55 66 77 88 99 10 10 11 11 12 12 13 13 14 14 15 15 36 36 51 51 64 64 75 75 84 84 91 91 96 96 99 99 100 100 99 99 96 96 91 91 84 84 75 75 64 64 51 51 0000 0000 0001 0001 0011 0011 0010 0010 0110 0110 0111 0111 0101 0101 0100 0100 1100 1100 1101 1101 1111 1111 1110 1110 1010 1010 1011 1011 1001 1001 1000 1000 0000 0000 0001 0001 0010 0010 0011 0011 0100 0100 0101 0101 0110 0110 0111 0111 1000 1000 1001 1001 1010 1010 1011 1011 1100 1100 1101 1101 1110 1110 1111 1111 Meta-Heuristiken und Fitnesslandschaften § Ziele von Meta-Heuristiken: • Überwinden lokaler Optima • Effektive Suche durch Ausnutzen der Eigenschaften des Suchraums Zu weit Nicht weit genug Globales Minimum • Intensivierung (Exploitation) und Diversifikation (Exploration) Folie 121 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken „Ideale“ Fitnesslandschaften § Korrelation von Fitness und Distanz zum Optimum Globales Minimum • Je näher die lokalen Minima am Optimum desto bessere Zielfunktionswerte • Der Abstand zum Optimum nimmt ab, je geringer die Fitnessdifferenz des lokalen Minimums zum Optimum ist Folie 122 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Populationsbasierte Suche § Bisherige Meta-Heuristiken: • Simulated Annealing • Tabu Search à Ausgehend von einer Lösung wird gesucht à Populationsbasierte Heuristiken • • • • Folie 123 Suche erfolgt ausgehend von mehreren Lösungen Ausnutzen der in der Population „gespeicherten“ Information Robuster als Individual-Suche Leichter parallelisierbar Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionäre Algorithmen (1) § Idee: • Simulation der natürlichen Evolution • Anpassung der Arten ist ein Optimierungsprozess • Populationsbasierte Optimierung Mechanismen der Evolution: •• •• •• Folie 124 Dr. Peter Merz Replikation Replikation Variation Variation Selektion Selektion Mechanismen der Optimierung: •• •• •• Speichern Speichern guter guter Lösungen Lösungen Variation/Lösungsänderung Variation/Lösungsänderung Verwerfen Verwerfen oder oder Beibehalten Beibehalten von von Lösungen Lösungen (Bewertung (Bewertung anhand anhand der der Zielfunktion) Zielfunktion) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionäre Algorithmen (2) § Analogien: • Zielfunktion = Fitness (Überlebensfähigkeit/Fortpflanzungsfähigkeit) • Lösung des Optimierungsproblems = Individuum/Species • Repräsentation einer Lösung = Genetischer Code • Lösungsveränderung = genetische Variation (Mutation und Rekombination) • Lösungsauswahl = Selektion (Survival of the Fittest) à Populationsbasierte Optimierung Folie 125 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Historie der Evolutionären Algorithmen § Historie: • Genetische Algorithmen (Genetic Algorithms, GA) Holland 1962 • Evolutionsstrategien (Evolution Strategies, ES) – Rechenberg, Schwefel 1969 • Evolutionäre Optimierung (Evolutionary Programming, EP) – Fogel, Owens, Walsh 1965 • Genetische Programmierung (Genetic Programming, GP) – Koza 1994 § EA “Flavors“: • 3 Entwicklungrichtungen (GA, ES, EP) • GP, MA, ... Folie 126 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ablauf eines EA § Initialisierung: • Erzeugung von Individuen § Fitnessevaluation: Initialisierung Initialisierung Fitnessevaluation Fitnessevaluation • Bestimmung Fitness der Individuen § Elternselektion: Elternselektion Elternselektion • Auswahl von Individuen zur Variation § Variation: • Rekombination • Mutation Variation Variation Fitnessevaluation Fitnessevaluation § Überlebensselektion: • Übernahme von Individuen in die nächste Generation (Nachkommenselektion) Überlebensselektion Überlebensselektion Ende Ende Folie 127 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genetische Algorithmen - GA § Kodierung: • Binäre Repräsentation Ö genetischer Code • IdR. Decodierung zur Fitnessevaluation nötig • Unterscheidung zwischen Genotyp und Phänotyp § Elternselektion: • Fitnessproportionale Selektion § Variation: • Rekombination/Crossover Ö sexuelle Reproduktion • Mutation, spielt geringe Rolle § Überlebensselektion: • Einfache Ersetzung der Nachkommen durch die Eltern Folie 128 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genetischer Code § Epistasie: • Pleiotropie: Ein Gen beeinflusst mehrere phänotypische Eigenschaften • Polygenie: Viele Gene legen eine phänotypische Eigenschaft fest • Mathematische Sicht: Abhängigkeit der Variablen untereinander à Nichtlinearität Folie 129 Dr. Peter Merz 11 aa 22 bb 33 cc 44 dd 55 ee 66 ff 77 gg 88 hh Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genotyp vs. Phänotyp § Genotyp: • Genetische Kodierung einer Lösung (à Bauplan eines Organismus) Phänotypen P(t+1) § Phänotyp: • Lösung, Element des Lösungsraumes (Suchraumes) § Fitness: Dekodierungsfunktion G(t) G‘(t) Genotypen • Bewertung des Phänotyps Folie 130 Dr. Peter Merz P‘(t) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genetische Operatoren - Crossover § Crossover: • Dem Crossover in der Natur nachempfunden: • Single-Point Crossover • Verallgemeinerungen: two-point crossover, uniform crossover • Crossover-Stellen werden zufällig gewählt Folie 131 Dr. Peter Merz 11 00 11 11 00 00 11 11 00 x 00 11 11 11 00 11 00 00 11 00 11 11 11 00 00 11 11 00 11 00 11 11 00 11 00 00 11 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genetische Operatoren – Uniform Crossover § Uniform Crossover: • Verallgemeinerung durch Einführen einer CrossoverMaske: - 0: Nehme Genwert (Allel) von Elter A - 1: Nehme Allel von Elter B 11 00 11 11 00 00 11 11 00 00 11 00 00 11 00 11 11 00 00 11 11 11 00 11 00 00 11 11 11 11 11 00 00 00 00 00 00 00 11 11 00 11 11 11 11 • Wichtige Eigenschaften: - Allele, die in den Eltern gleich sind, sind auch in den Kindern zu finden - Jedes Gen der Kinder stimmt mit mindestens einem Elter überein Folie 132 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genetische Operatoren - Mutation § Mutation: • Bit-Flip mit geringer Wahrscheinlichkeit 11 00 11 11 00 00 11 11 00 11 00 11 11 00 11 11 11 00 • Wahrscheinlichkeit 1/l pro Bit (l: Länge des Binärvektors) • Im Schnitt wird ein Bit Pro Mutation geändert Folie 133 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genetische Operatoren - Selektion § Roulette Wheel • Fitnessproportionale Zufallsselektion • Fitness bestimmt erwartete Anzahl der Kopien in temporärer Population 14% Individuum 1 6% 49% 31% Individuum 2 Individuum 3 Individuum 4 f (si ) p(si ) = ∑ f (s j ) j • Rekombination und Mutation wird auf temporäre Population angewendet • Temporäre Population ergibt Population der nächsten Generation Folie 134 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionsstrategien - ES § Kodierung: • Reellwertige Repräsentation • Keine Decodierung zur Fitnessevaluation nötig • Operatoren arbeiten auf Phänotyp § Elternselektion: • Rein zufällige Selektion (uniform) § Variation: • Mutation mit Selbstadapation • Rekombination (geringerer Stellenwert) § Überlebensselektion: • Die besten aus Eltern und Kindern oder die besten Kinder Folie 135 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionsstrategien – Mutation (1) § Repräsentation: • Individum: (x, σ) mit x=(x1,...,xn),σ ∈¡n § Einfache Mutation: • Ni(0,1): Normalverteilte Zufallszahl (Mittelwert 0, Varianz 1) Globale Schrittweite: xi′ = xi + σ ⋅ Ni (0,1) Individuelle Schrittweite: xi′ = xi + σ i ⋅ Ni (0,1) Schrittweitenanpassung: σ i′ = σ i ⋅ exp(τ ⋅ Ni (0,1) + τ ′ ⋅ Ni (0,1)) Lernraten: τ ∝ Folie 136 Dr. Peter Merz ( 2 n Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ) −1 τ′ ∝ ( 2n ) −1 Evolutionsstrategien – Mutation (2) § Korrelierte Mutation: • Hinzunahme von Winkeln (Erweiterung der Repräsentation) Globale Schrittweite Individuelle Schrittweite Korrelierte Mutationen • Ellipsen stellen Bereiche gleicher Mutationswahrscheinlichkeit dar Folie 137 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionsstrategien – Rekombination § Rekombinationsarten: xi ∨ y i . 1 ( x i + y i ). 2 xi′ = x i ∨ y i( j ) . (j) 1 2 ( xi + y i ). xi + χ i ( y i( j ) − x i ). (diskre t ) (intermediär ) (global,diskret) y (global,intermediär) (generalis iert) • Global: Für jede Komponente wird neuer Elter gewürfelt Folie 138 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken x Evolutionsstrategien – Selektion § (µ,λ)-Selektion: (Überlebensselektion) • Aus µ Eltern werden λ Kinder erzeugt (λ > µ) • Die µ besten der λ Kinder bilden die neue Population § (µ+λ)-Selektion: (Überlebensselektion) • Aus µ Eltern werden λ Kinder erzeugt • Die µ besten der µ Eltern und λ Kinder bilden die neue Population § Spezialfälle: • (1,1)-ES: „Random Walk“ • (1+1)-ES: zufallsgesteuerte lokale Suche Folie 139 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionäre Optimierung - EP § Kodierung: (wie bei ES) • Reellwertige Repräsentation • Keine Decodierung zur Fitnessevaluation nötig • Operatoren arbeiten auf Phänotyp § Elternselektion: • Rein zufällige Selektion (uniform) § Variation: • Nur Mutation! § Überlebensselektion: • Wettbewerbsauswahl (Tournament selection) Folie 140 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionäre Optimierung - Selektion § Wettbewerbsauswahl: • • • • • • • Folie 141 Engl. Tournament selection Überlebensselektion Schrittweise Auswahl In jedem Schritt werden k > 1 Individuen ausgewählt Auswahl ist zufällig Das Beste wird in die Nachfolgegeneration übernommen Vorgang wird wiederholt, bis Population gefüllt ist Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Evolutionäre Optimierung - EP § Ursprünglich: (50er Jahre) • Entwickelt mit dem Ziel künstliche Intelligenz zu kreieren • Evolution eines endlichen Automaten (FSM) zur Vorhersage von Ereignissen in einer gewählten Umgebung • Ereignisse : Symbole eines endlichen Alphabets § Mutation: • • • • Folie 142 1/β Änderung eines Ausgabesymbols Änderung eines Zustandübergangs Hinzufügen/Löschen eines Zustandes Ändern des Startzustandes Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 0/γ B B 0/β 0/β 1/α 1/γ A A C C Gegenüberstellung von GA, ES und EP § GA: • Binärkodierung - Genetische Operatoren arbeiten auf Genotyp • Fitnessproportionale Elternselektion • Variation durch Rekombination / Mutation wenig Bedeutung § ES: • • • • Selbstanpassung der Strategieparameter Reelle Kodierung – Operatoren arbeiten auf Phänotyp Deterministische Überlebensselektion Mutation, Rekombination weniger bedeutend § EP: • Wie ES, aber keine Rekombination • Zufallsgesteuerte Überlebensselektion Folie 143 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Varianten Genetischer Algorithmen (1) § GENITOR: • Es wird nur ein Kind bei der Rekombination erzeugt • Steady-State-GA: - Es wird nur ein Kind pro Generation erzeugt - Kind ersetzt schlechtestes Individuum in der Population • Rang-basierte Elternselektion: - Auswahlwahrscheinlichkeit wird durch den Rang in der Population bestimmt - Linear ranking: Rang i ∈ [1,n], Selektionswahrscheinlichkeit : p(si ) = pmax − ( pmax Folie 144 Dr. Peter Merz i −1 − pmin ) n −1 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Varianten Genetischer Algorithmen (2) § CHC: • Cross-generational elitist selection: - Nachkommenselektion entspricht Selektion in (µ+λ)-ES - Duplikate werden aus Population entfernt • Heterogenous Recombination: - Elternauswahl zufällig, aber: Eltern mit minimaler HammingDistanz - Variante von Uniform crossover: genau die Hälfte der unterschiedlichen Bits werden invertiert • Cataclysmic mutation: - Bei Konvergenz werden alle Individuen bis auf das Beste stark mutiert • CHC verwendet kleine Populationen Folie 145 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken EA in der kombinatorischen Optimierung § Praxis: • • • • EA/GA sind nicht sehr effektiv Verwendung von Problemwissen à Hybride Algorithmen Lokale Suche bietet sich an Nutzen der Vorteile von EA und LS § Variation: • Rolle von Mutation und Rekombination wandeln sich • Rekombination in EA: Crossover erzeugt neue Lösung aus den Lösungskomponenten der „Elternlösungen“ • Rekombination in MA: Neue Lösungskomponenten werden eingefügt Folie 146 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Memetics § Was bedeutet Memetik? • Nach Biologen R. Dawkins (The Selfish Gene) gibt es neben der genetischen Evolution noch andere Formen • In der menschlichen Kultur gibt es eine andere viel schnellere Form der Evolution: Die Evolution der Meme § Meme: • • • • • Folie 147 Einheiten von kultureller Wissensübermittlung Bsp.: Ideen, Melodien, Rezepte, Theorien, Schmiedekünste Replikation durch Immitation/Nachahmung Variation durch Erweiterung, Neukombination, Verbesserung Selektion durch Auswahl weniger Meme Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Memetische Algorithmen § Unterschiede zu EA/GA: • • • • Mene vs. Gene Sehr schnelle Evolution, kleine Populationen Variation beinhaltet Innovation Lernen zur Lebenszeit = lokale Suche § Lernen und Evolution: • Baldwin‘sche Evolution: Lernen wirkt sich nicht auf Gene aus • Lamarck‘sche Evolution: Lernen bewirkt Änderung der Gene § Historie: • Brady, 1985: Erster MA (TSP) • Moscato, 1989: Einführung des Begriffs Folie 148 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ablauf eines Memetischen Algorithmus Initialisierung Initialisierung § Lokale Lokale Suche Suche Idee: • • § Elternselektion Elternselektion Prinzip: • § Hybrider Evolutionärer Algorithmus MA=EA+LS (Lokale Suche) Fitnessevaluation Fitnessevaluation Alle Individuen in der Population stellen lokale Optima dar Lokale Lokale Suche Suche Variation: • • Erzeugung neuer Startpositionen für lokale Suche (Diversifikation) Lokale Suche: Intensifikation Variation Variation Fitnessevaluation Fitnessevaluation Überlebensselektion Überlebensselektion Ende Ende Folie 149 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken MA Pseudo-Code procedure procedure MA MA begin begin Initialisiere Initialisiere Population Population P, P, gen gen == 0; 0; foreach s in P do s = localSearch(s); foreach s in P do s = localSearch(s); repeat repeat P‘ P‘ == 0; 0; for i=0 for i=0 to to nRecombinations nRecombinations do do ssaa== selectForVariation(P); selectForVariation(P); ssbb == selectForVariation(P); selectForVariation(P); s* s* == recombine(s recombine(saa,, ssbb);); s* s* == localSearch(s*); localSearch(s*); add s* add s* to to P‘; P‘; endfor; endfor; for for i=0 i=0 to to nMutations nMutations do do ss == selectForVariation(P); selectForVariation(P); s* s* == mutate mutate(s); (s); s* = localSearch(s*); s* = localSearch(s*); add add s* s* to to P‘; P‘; endfor; endfor; PP == selectForSurvival(P, selectForSurvival(P, P‘); P‘); gen = gen +1; gen = gen +1; until ; untilgen gen >> gen genmax max ; end; end; Folie 150 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ASPARAGOS (1) § ASPARAGOS ist... • • • • Einer der ersten MA (M. Gorges-Schleuter, 1987) Eine ASynchrone PARAllele Genetische OptimierungsStrategie Ein Parallelisierungsmodell für EA Ein MA mit 2-opt lokaler Suche fürs TSP § Populationsmodell: • Individuen sind räumlich angeordnet • Jedes Individuum kennt nur die Nachbarn • Individuen sind aktive Einheiten à Prozesse Folie 151 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ASPARAGOS (2) Gitterstruktur § Populationsstruktur: • Graph: Knoten=Prozess • Beispiele: Gitter, Hypercube, geschlossene Leiter § Individuum-Prozess: • Auswahl eines Partners in der Nachbarschaft • Rekombination mit Partner • Mutation mit geringer Wahrscheinlichkeit • Lokale Suche • Ersetzung des Individuums bei besserer Fitness Folie 152 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Geschlossene Leiter Weitere MA § Weitere MA: • Die meisten MA verwenden ein EA-Framework angelehnt an Genetische Algorithmen • Effektives Framework CHC, da kleine Populationen - Rein zufällige Elternselektion - (µ+λ)-Nachkommenselektion mit Entfernung von Duplikaten - Restart durch starke Mutation (Diversifikation) bei Konvergenz • Viele MA existieren, u.a. für - TSP, QAP, BQP, NK-Modell, GBP, Clustering - Scheduling, Knapsack-Problem, Graph-Färbung, VLSI-Routing, ... Folie 153 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Rekombinationsoperatoren § k-Punkt-Crossover: • Nicht auf Permutationen ohne weiteres übertragbar • Alternative: PMX (1985) § Partially-mapped Crossover: • Mapping-Sektion wird zufällig gewählt • In Elter A und Elter B werden so lange Städte getauscht, bis die beiden Lösungen in der Mapping-Sektion übereinstimmen Folie 154 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: PMX-Rekombination (1) § Partially-mapped Crossover: Folie 155 Elter A: 1 10 7 6 4 8 9 2 5 Elter B: 1 4 8 5 2 9 3 7 10 Kind A: 1 10 7 8 5 2 9 6 4 Kind B: 1 6 4 8 9 3 7 10 Dr. Peter Merz 6 2 5 3 3 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Tausch von 6 und 8, 4 und 5, 6 und 2 Tausch von 8 und 6, 5 und 4, 2 und 8 TSP: PMX-Rekombination (2) § Partially-mapped Crossover: 4 8 6 1 10 4 9 1 3 5 7 8 6 2 10 4 9 1 5 7 8 6 2 3 9 10 2 3 5 7 • Die rot markierten Kanten stammen von keinem der beiden Eltern à implizite Mutation! Folie 156 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: MPX-Rekombination § Maximally Preservative Crossover: Elter A: 4 2 10 8 9 5 7 6 1 Elter B: 2 9 7 5 10 1 6 4 8 3 3 • (5,7) und (7,3) sind von B • Nächste Stadt zu 3 in B ist 1 • (1,6), (6,4) und (4,2) von B Kind C: Folie 157 10 8 9 5 7 3 1 6 4 2 • Teilpfad wird von A nach C kopiert • Tour wird erweitert durch Kanten von B • Sind keine Kanten mehr vorhanden, werden Kanten von A verwendet • Sind keine Kanten mehr vorhanden, wird nächste Stadt in Tour B gesucht Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Rekombination + Repair § Repair: • Auch MPX enthält implizite Mutationen • Lokale Suche kann als „Repair“ verwendet werden, um fremde Kanten zu eliminieren à Memetische Algorithmen § Alternative: • Entwicklung von Rekombinationsoperatoren ohne implizite Mutationen • Sehr schwer, algorithmisch aufwendig Folie 158 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Rekombinationsarten § Respectful Recombination: • Allele, die in beiden Eltern (A und B) identisch sind, werden im Kind (C) erhalten A • d ( A,C ) ≤ d ( A,B ) ∧ d (B ,C ) ≤ d ( A,B ) C B § Assorting Recombination: • Das Kind enthält nur Allele von den Eltern • Keine impliziten Mutationen! • d ( A,C ) + d (C ,B ) = d ( A,B ) Folie 159 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken A C B Rekombinationsarten (2) § Rekombinationsschemata: (a) Assorting (b) Respectful (c) Unrespectful, not assorting Child C P a rent B Child C P arent A Pa re nt B d d P a re nt A Parent A Child C Folie 160 Dr. Peter Merz Pare nt B Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: DPX-Rekombination (1) § DPX: • Erzeugung eines Kindes mit dem selben Abstand zu den Eltern wie der Abstand der Eltern Elter A: 55 33 99 11 22 88 00 66 77 44 Elter B: 11 22 55 33 99 44 88 66 00 77 Segmente: 55 33 99 11 22 88 00 66 77 44 Kind C: 66 00 55 33 99 88 77 11 44 22 d ( A,C ) = d ( A,B ) ∧ d (B,C ) = d ( A,B ) Folie 161 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: DPX-Rekombination (2) § DPX: • Tour wird an den Kanten getrennt, die nicht in beiden Elternteilen vorkommen • Die Tour-Segmente werden neu durch Nearest-NeighborHeuristik verbunden • Kanten die nicht in beiden Elternteilen vorkommen, werden nicht eingefügt (sind Tabu) § Eigenschaften: • Hoher Grad an impliziten Mutationen, im Verlaufe der Evolution abnehmend • Nur in Kombination mit lokaler Suche • Gut geeignet für Memetische Algorithmen Folie 162 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: MA Ergebnisse • GX: Generische Rekombination (Merz 2000) Instanz Instanz Oper Oper Gen Gen Qualität Qualität N Nopt opt tt in in ss lin318 lin318 lin318 lin318 pcb442 pcb442 pcb442 pcb442 att532 att532 att532 att532 rat783 rat783 rat783 rat783 pr1002 pr1002 pr1002 pr1002 DPX DPX GX GX DPX DPX GX GX DPX DPX GX GX DPX DPX GX GX DPX DPX GX GX 19 19 13 13 824 824 286 286 560 560 289 289 122 122 136 136 333 333 182 182 42029/0.00% 42029/0.00% 42029/0.00% 42029/0.00% 50778/0.00% 50778/0.00% 50778/0.00% 50778/0.00% 27686/0.00% 27686/0.00% 27686/0.00% 27686/0.00% 8806/0.00% 8806/0.00% 8806/0.00% 8806/0.00% 259045/0.00% 259045/0.00% 259045/0.00% 259045/0.00% 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 30/30 88 88 147 147 68 68 127 127 106 106 26 26 35 35 112 112 98 98 pr2392 pr2392 pcb3038 pcb3038 fl3795 fl3795 GX GX GX GX GX GX 2407 2407 5248 5248 341 341 378032.6/0.000% 378032.6/0.000% 137702.6/0.006% 137702.6/0.006% 28794.7/0.079% 28794.7/0.079% 27/30 27/30 3/30 3/30 1/30 1/30 2588 2588 6955 6955 • Zeit t auf Pentium III 500 MHz Folie 163 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 7212 7212 QAP: CX-Rekombination (1) § CX - Cycle Crossover: • QAP Lösung stellt Zuweisung von Objekten zu Positionen dar • Alle Gene/Allele identisch in beiden Eltern werden übernommen • Eine Position wird zufällig gewählt und eine Zuweisung von einem Elter übernommen. • Um implizite Mutation zu verhindern, werden daraufhin so viele Zuweisungen vom selben Elter übernommen, wie nötig • Es ergibt sich eine zyklische Abhängigkeit der Zuweisungen von Objekten zu Positionen Folie 164 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken QAP: CX-Rekombination (2) § Beispiel: Positionen: 11 22 33 44 55 66 77 88 99 Elter A: 22 44 77 11 88 99 33 55 66 Elter B: 77 44 55 88 33 99 11 22 66 44 Kind C: Folie 165 Dr. Peter Merz 99 22 44 77 22 44 77 88 33 99 22 44 77 88 33 99 66 99 55 66 11 55 66 11 55 66 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken QAP: MA und andere Meta-Heuristiken § QAP: Vergleich Meta-Heuristiken Zahlen: Abweichung von besten Lösung in % Instanz tai60a tai80a tai100a sko100a tai60b tai80b tai100b tai150b tho150 tai256c MA-1 1.314 1.106 1.089 0.096 0.000 0.191 0.076 0.361 0.151 0.070 MA-2 Ro-TS Re-TS 1.597 1.313 0.794 1.305 1.023 0.482 1.252 0.909 0.385 0.127 0.191 0.397 0.000 1.898 0.929 0.004 2.929 1.602 0.038 2.373 1.469 0.397 2.851 1.775 0.202 0.548 0.488 0.099 0.326 0.266 FANT MMAS 2.577 1.159 2.525 0.768 2.569 0.728 0.474 0.195 0.213 0.075 0.821 0.718 0.360 0.328 1.176 1.167 0.765 0.395 0.273 0.067 SA t/sec 3.199 90 3.298 180 1.848 300 2.942 300 1.760 90 5.092 180 6.696 300 3.787 600 2.939 600 0.370 1200 Ro-TS, Re-TS: Robust/Reactive Tabu Search FANT, MMAS: Ant Colony Optimization: Fast Ant System, Min-Max Ant System SA: Simulated Annealing Folie 166 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Iterierte lokale Suche (1) § Iterated Local Search: • ILS: MA mit Populationsgröße 1, nur Mutation • Sehr effektiv beim TSP à Iterated Lin-Kernighan • Mutation ähnlich Diversifikationsmechanismus in TabuSearch • Einfachste Strategie, aus lokalen Minima zu entkommen • MA effektiver als ILS bei vielen Optimierungsproblemen (z.B. GBP, QAP) § Iterated Lin-Kernighan: • Lokale Suche: Lin-Kernighan-Heuristik • Mutation: nicht-sequentieller 4-Kantentausch Folie 167 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Iterierte lokale Suche (2) § Pseudo-Code: function function iteratedLocalSearch iteratedLocalSearch :: S S begin begin erzeuge erzeuge Startlösung Startlösung s; s; nn == 0, 0, ss == localSearch(s); localSearch(s); repeat repeat s* s* == mutate(s); mutate(s); s* s* == localSearch(s*); localSearch(s*); ifif g(s*, g(s*, s) s) >> 00 then then ss == s*; s*; nn == nn +1; +1; until ; until nn >> nnmax max; return return s; s; end; end; Folie 168 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken TSP: Iterated Lin-Kernighan • MA Ergebnisse (oben), ILK (unten): Folie 169 Dr. Peter Merz Instanz Instanz Gen Gen Fnl4461 Fnl4461 528 528 pla7397 pla7397 1155 1155 rl11849 rl11849 536 536 Us13509 Us13509 1082 1082 d18512 d18512 1226 1226 Pla33810 Pla33810 3832 3832 Pla85900 Pla85900 9069 9069 Qualität Qualität 183366.3 183366.3 (0.438 (0.438 %) %) 23307621.7 23307621.7 (0.202 (0.202 %) %) 928115.5 928115.5 (0.523 (0.523 %) %) 20125182.2 20125182.2 (0.712 (0.712 %) %) 650803.2 650803.2 (0.869 (0.869 %) %) 66321344.7 66321344.7 (0.479 (0.479 %) %) 142986675.5 142986675.5 (0.477 (0.477 %) %) sdev. sdev. 163.7 163.7 14120.4 14120.4 795.8 795.8 27980.9 27980.9 477.8 477.8 45162.4 45162.4 79510.3 79510.3 tt in in ss 294 294 1860 1860 1006 1006 2422 2422 2873 2873 11523 11523 52180 52180 Fnl4461 Fnl4461 7108 7108 Pla7397 Pla7397 1830 1830 Rl11849 Rl11849 11274 11274 Us13509 Us13509 9912 9912 D18512 D18512 22243 22243 Pla33810 Pla33810 7930 7930 Pla85900 Pla85900 19437 19437 183191.1 183191.1 (0.343%) (0.343%) 23324376.2 23324376.2 (0.273%) (0.273%) 926139.9 926139.9 (0.309%) (0.309%) 20063763.7 20063763.7 (0.405%) (0.405%) 647949.3 647949.3 (0.426%) (0.426%) 66270531.2 66270531.2 (0.402%) (0.402%) 142919653.4 142919653.4 (0.430%) (0.430%) 72.7 72.7 17985.5 17985.5 772.9 772.9 13400.8 13400.8 229.1 229.1 22368.1 22368.1 54291.6 54291.6 300 300 1800 1800 1000 1000 2400 2400 2900 2900 7200 7200 14400 14400 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Parameterwahl in MA § Parametervorschläge: • Populationsgröße: P=10-50 - Gering im Vergleich zu GAs (100-1000) • Anzahl Rekombinationen: 0.5P • Anzahl Mutationen: 0.1P § Terminierungskriterium: • Zeitlimit • Konvergenz: - Lösungen in der Population sind sich sehr ähnlich (Distanz!) - Kein Fortschritt (durchschnittliche Fitness) seit k Generationen Folie 170 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Erweiterungen von EA § Rekombination: • Üblich: Rekombination von zwei Eltern • Möglich: Rekombination von mehreren Eltern § Variation allgemein: • Neue Lösungen werden durch Hinzunahme von Informationen aus mehr als einer Lösung gefunden: - Differential Evolution - Particle Swarm Optimization Folie 171 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution (1) § DE: • Von R. Storn und K. V. Price, 1995 § Ziel: • Einfaches, effektives Verfahren zur kontinuierlichen Optimierung • Keine Verwendung von normalverteilten Zufallszahlen zur Mutation, wie bei ES • Einfache Implementierbarkeit (kein Sortieren der Population) § Initialisierung: • Population erhält Zufallslösungen gleichmäßig über Defintionsraum verteilt Folie 172 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution (2) § Variation: • Wähle zu jedem Elternvektor xi∈¡n drei weitere Vektoren aus der Population xr1, xr2 und xr3 • Erzeuge Mutanten-Vektor v: v = F ⋅ ( xr 1 − xr 2 ) + x r 3 F: Zufallszahl in (0,1.2] • Erzeuge Trial-Vektor ui durch Rekombination von v und xi v j , wenn r < Cr ∨ j = j rand ui , j = xi , j , sonst r: Zufallszahl in [0,1] jrand: Zufallszahl in {1,..,n} § Selektion: • Wenn ui bessere Fitness hat, wird der Elter xi durch ui ersetzt Folie 173 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution - Pseudo-Code procedure procedure DE DE begin begin Initialisiere Initialisiere P={x P={x11,..,x ,..,xpp};}; nn == 0; 0; repeat repeat foreach foreach xxii in in P P Wähle Wähle r1, r1, r2, r2, r3 r3 aus aus {1,..,p} {1,..,p} vv == mutate(x mutate(xr1r1,, xxr2r2,, xxr3r3);); uuii == recombine(v, recombine(v, xxii);); ifif f(u f(uii)) >> f(x f(xii)) then then xxii == uuii;; end; end; nn == nn +1; +1; until ; until nn >> nnmax max; end; end; Folie 174 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution - Varianten § Varianten der DE: DE/rand/1: v = F ⋅ ( x r 1 − x r 2 ) + xr 3 DE/best/1: v = F ⋅ ( x r 1 − x r 2 ) + xbest DE/best/2: v = F ⋅ ( x r 1 + x r 2 − x r 3 − x r 4 ) + x best DE/rand-to-best/1: v = F ⋅ ( x r 2 − x r 3 ) + λ( x best − xi ) + xi DE/current-to-rand/1: ui = x i + K ⋅ ( x r 3 − x i ) + F ⋅ ( xr 1 − x r 2 ) xbest: Individuum mit höchster Fitness in der Population Folie 175 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution - Variation § Vektordarstellung: xr3 xr3 F(xr1-xr2) v K(xr3-xi) xi xr2 (xr1-xr2) Dr. Peter Merz xr1 (xr1-xr2) xr1 Folie 176 F(xr1-xr2) Kandidaten für ui xi DE/rand/1 ui xr2 DE/current-to-rand/1 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution - Übertragbarweit § Anwendungen: • Ausschließlich reelwertige Optimierung • Keine Übertragung auf binäre Probleme § Permutationsprobleme: • Verfahren auf TSP, QAP,... nicht so ohne weiteres anwendbar Folie 177 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Differential Evolution - Parameterwahl § Parametervorschläge: • • • • Folie 178 Populationsgröße: 5n – 20n (n: Dimension des Suchraums) CR (Crossover-Wahrscheinlichkeit): 0.8-1.0 F (Mutations-Koeffizient): 0.3-0.9 K (Rekombinations-Koeffizient): 0, 0.5, 1.0 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Particle Swarm Optimization (PSO) § Idee: • Von J. Kennedy und R. C. Eberhart 1995 • Simulation von sozialem Verhalten • Genauer: kollektives Verhalten eines Vogelschwarms § Soziales Verhalten: • Individuen wiederholen ihr vorheriges Verhalten • Individuen orientieren sich an Gruppenführern (Gruppenbesten) Folie 179 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO - Population § Population: • Menge von Individuen (Partikeln) • Nachbarschaften: Jedes Individuum hat benachbarte Individuen § Individuum: Jedes Individuum besitzt: • Eine aktuelle Position (Lösung des Optimierungsproblems) • Die bisher beste Position (Bisher beste Lösung) • Eine Fluggeschwindigkeit Folie 180 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO – Variation (1) § Variation: • Anpassung der Geschwindigkeit, Bestimmung einer neuen Position v i = v i + ρ1 ⋅ ( pi − xi ) + ρ2 ⋅ ( pbest ,i − xi ) xi = xi + vi xi : Lösungsvektor - Partikel i ∈ ¡n v i : Geschwindigkeit von Partikel i pi :Beste Position von Partikel i pbest ,i :Position des besten Partikel in der Nachbarschaft von i ρ1, ρ 2 ∈ [0,2] (gleichverteilte Zufallszahlen) Folie 181 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO – Variation (2) § Grafische Darstellung: pi (pi-xi ) xi xi,neu (pbest,i-xi) vi Folie 182 Dr. Peter Merz pbest,i Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO - Nachbarschaften § Globale Nachbarschaft: • § 3-er Nachbarschaft: • § Bestehend aus Individuum i-1, i, und i+1 Selektion: • • Folie 183 Alle Individuen der Population! Dr. Peter Merz Nicht vorhanden! Indirekte Favorisierung guter Lösungen durch Anziehung des Nachbarschaftsbesten Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO - Ablauf § Berechnungsschritte in PSO: 1. 2. 3. 4. 5. Folie 184 Dr. Peter Merz Initialisiere Schwarm Passe Geschwindigkeiten an Bestimme neue Position der Partikel Ermittle die Nachbarschaftsbesten Bei Konvergenz: Ende, sonst gehe zu 2 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO – Diskrete Suchräume § Lösung ist Binärvektor: • • x und p sind Binärvektoren, v reeller Vektor Anpassung von x mittels v: 1, wenn r < S (v i , j ) xi , j = 0, sonst 1 mit S (v i , j ) = 1 + exp( −v i , j ) § Permutationsprobleme: • Folie 185 Dr. Peter Merz Verfahren auf TSP, QAP nicht so ohne weiteres anwendbar Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PSO – Parameterwahl § Geschwindigkeit: • § Parametervorschläge: • • • • • Folie 186 Es ist sinnvoll, die Geschwindigkeit durch |vi|≤vmax zu begrenzen Dr. Peter Merz Populationsgröße (Individuenanzahl): 20-60 Trade-off mit Anzahl der Iterationen bis zur Konvergenz! Intervall für ρ‘s: (0,2] vmax : Proportional zu xmax Nachbarschaftsgröße: Wahl zwischen schneller Konvergenz (n) und robusterer Suche (2) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lernende Optimierungsverfahren § „Lernende“ Optimierungsverfahren • Probabilistic Search Meta-Heuristics • Jedem Wert für eine Lösungskomponente wird eine Wahrscheinlichkeit zugeordnet • Anpassung der Wahrscheinlichkeiten durch Lernregeln • Bestärkendes oder Wettbewerbs-Lernen • Beispiele: - Bit-simulated Crossover - Population-based Incremental Learning (Competitive Learing) - Ant Colony Optimization (Reinforcement Learning) Folie 187 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Lernende Optimierungsverfahren § Ablauf: (für binäre Probleme) Initialisiere Initialisiere V V Sei Sei f:f: S→¡ S→¡ mit mit S={0,1} S={0,1}ll V=(p V=(p11,...,p ,...,pll)) mit mit ppii ∈ ∈ [0,1] [0,1] P=(s P=(s11,...,s ,...,snn)) mit mit ssii ∈ ∈S S • Kann auf nicht-binäre Probleme übertragen werden • Die Lernverfahren unterscheiden sich in der Aktualisierung von V Folie 188 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Generiere Generiere P P mit mit V V Evaluiere Evaluiere P P Aktualisiere Aktualisiere V V mit mit P P Ende Ende Bit-Simulated Crossover (1) § Idee: (Syswerda, 1993) • Simulation von Crossover mit Selektion in GA (BSC) • Jedes Bit si im Binärvektor erhält eine Wahrscheinlichkeit pi auf 1 gesetzt zu werden (1-pi auf 0 gesetzt zu werden) pi ∑ s ⋅ w (s ) = ∑ w (s ) s∈P s∈P i Möglichkeiten: w(s)=1 w(s)=f(s) w(s)=n-Rang(s) • Simulation der Mutation in GA: - Addition/Substraktion von pm von pi Folie 189 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Bit-Simulated Crossover (2) § Ablauf: 1. Initialisierung von V=(p1,...,pl)=(0.5,0.5,...) 2. Erstellung einer Population P von l Lösungen mit Wahrscheinlichkeitsverteilung V 3. Evaluation der Population P 4. Neuberechnung von V 5. Bei Konvergenz Ende, sonst weiter mit Schritt 2 Folie 190 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Population-based Incremental Learning § PBIL: • • • • • Von S. Baluja, 1994 Inspiriert durch Competitive Learning Ähnlich zu BSC Unterschied zu BSC: Update Regel für V Inkrementelles Lernen, da Wahrscheinlichkeiten pi aus der Vorgeneration berücksichtigt werden • Nicht alle Lösungen aus P werden zum Update von V herangezogen Folie 191 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PBIL Update-Regel (1) § Update (Variante 1): pi ← (1.0 − λ ) ⋅ pi + λ ⋅ sbest ,i λ: Lernrate sbest : Beste Lösung aus P § Mutation: (Jedes pi wird mit Wahrscheinlichkeit pm mutiert) pi ← (1.0 − µ ) ⋅ pi + µ ⋅ r µ : Mutationseinfluß r : Zufallszahl, 0 oder 1 Folie 192 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PBIL Update-Regel (2) § Graphische Dartellung: p ← (1.0 − λ ) ⋅ p + λ ⋅ sbest = p − λ ⋅ (s best − p ) (Vektorschreibweise) p λ⋅(sbest-p) sbest-p sbest Folie 193 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PBIL Varianten (1) § Update (Variante 2): • Statt zur besten Lösung aus P wird Wahrscheinlichkeitsvektor zu besten m Lösungen hingezogen - Anwendung auf alle Komponenten, Lernrate für alle Lösungen gleich - Anwendung auf alle Komponenten, Lernrate gewichtet durch Rang der Lösungen - Anwendung nur auf Komponenten, die in den m Lösungen identisch sind Folie 194 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PBIL Varianten (2) § Update (Variante 3): • Zusätzlich zur Anziehung zur Besten erfolgt Abstoßung von der schlechtesten Lösung aus P • Abstoßung erfolgt indirekt durch Vergleich der schlechtesten mit der besten Lösung (nur unterschiedliche Komponenten werden betrachtet) pi ← (1.0 − λ − ) ⋅ pi + λ − ⋅ sbest ,i ∀i : sbest ,i ≠ sworst,i λ− : Negative Lernrate sworst : Schlechteste Lösung aus P Folie 195 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PBIL - Ablauf Initialisierung Initialisierung der der ppii Erzeuge Erzeuge P P Evaluiere Evaluiere P P Update Update der der ppii Mutation Mutation der der ppii Ende Ende Folie 196 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken PBIL im Vergleich § PBIL Parameter: • Populationsgröße: 100 • λ=0.1, λ -=0.075, Pm=0.02, µ=0.05 § Ergebnisse: • • • • Folie 197 Von Baluja, 1994 PBIL2 (λ ->0) besser als PBIL Wahl von λ - problemabhängig (Getestet: 0.025, 0.075, 0.1) PBIL besser oder vergleichbar mit GA Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ameisenkolonien (1) § Idee: • • • • • • Von M. Dorigo, 1992 Verhalten von Ameisen bei der Futtersuche Ameisen hinterlassen Pheromon-Spur (Chem. Substanz) Pfade mit hoher Pheromon-Konzentration werden bevorzugt Indirekte Kommunikation durch Pheromone Ameisen lösen kollektiv das Problem des kürzesten Pfades § Reale Ameisen: • Idee basierend auf Experimenten von Goss et al. 1989 mit argentinischen Ameisen Folie 198 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ameisenkolonien (2) § Kürzeste Pfade: • Kollektives Finden des kürzesten Pfades vom Futter zum Nest bei vorhanden sein eines Hindernisses Nest Nahrung 1 2 Nest 3 Folie 199 Dr. Peter Merz Nest Nahrung Hindernis Nahrung Hindernis Nest 4 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Nahrung Hindernis Ameisenkolonien (3) § Historische Entwicklung: • Ant System – AS (M. Dorigo, 1992) • Ant Colony System – ACS (M. Dorigo und L. M. Gambardella, 1997) • Ant Colony Optimization Meta-Heuristic – ACO (Dorigo und DiCaro, 1999) • AS und ACS: • Ursprünglich entwickelt fürs TSP • Übertragen auf viele weitere COP Folie 200 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant System fürs TSP § Ant Sytem fürs TSP: • Ameisen konstruieren Touren • Kanten mit höherer Pheromon-Konzentration τ werden mit höherer Wahrscheinlichkeit gewählt v ? s ) ,v s τ( τ (s ,r) u) τ (s, u τ (s,t) t r • Jede Ameise hinterlegt Pheromonspur nachdem Tour komplett ist • Hinterlegte Pheromonmenge ist umgekehrt proportional zur Länge der Tour der Ameise • Duftspur verflüchtigt sich mit der Zeit Folie 201 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant Sytem - Übergangsregel § Ant System fürs TSP: • Ameisen sind Tour-Konstruktoren: Jede Ameise erzeugt eine Tour • Wahrscheinlichkeit für Ameise k von Stadt r nach s zu gehen: τ (r,s) ⋅ η (r,s) β , wenn s ∈ J k (r ) β pk ( r ,s ) = ∑ τ (r,u) ⋅ η (r,u) u∈J ( r ) k sonst 0, τ : Pheromon-Konzentration η (r , s ) = 1/ d (r , s ) : Heuristische Information Jk ( r ) : Menge der noch nicht besuchten Städte Folie 202 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant System – Update-Regel § Globale Lernregel: • Pheromon-Update: m τ (r , s ) ← (1 − α ) ⋅ τ (r ,s ) + ∑ ∆τ k ( r ,s ) k =1 1 , wenn(r , s ) ∈ Tk ∆τ k ( r ,s ) = Lk 0, sonst Tk :Tour von Ameise k Lk :Länge der Tour von Ameise k α : Verflüchtigung der Pheromone Folie 203 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant Colony System – Übergangsregel § State Transition Rule: • Pseudo-zufälliger Zustandsübergang: argmax u∈Jk (r ) {τ (r , u ) ⋅ η (r , u) β }, wenn q ≤ q0 s= sonst S, q :Zufallsvariable gleichverteilt in [0,1] q0 :Explorationsparameter S : Zufallsvariable nach pk (r ,s ) aus AS Folie 204 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant Colony System – Update-Regeln (1) § Globale Lernregel: • ACS Global Update Rule: τ (r ,s ) ← (1 − α ) ⋅ τ ( r ,s ) + α ⋅ ∆τ (r ,s ) 1 , wenn(r , s ) ∈ Tbest ∆τ (r , s ) = Lbest 0, sonst Tbest : Tour der besten Ameise Lbest : Länge der besten Tour α : Verflüchtigung der Pheromone Folie 205 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant Colony System – Update-Regeln (2) § Lokale Lernregel: • ACS Local Update Rule: τ (r ,s ) ← (1 − ρ ) ⋅ τ (r , s ) + ρ ⋅ ∆τ (r , s ) ∆τ (r , s ) = γ ⋅ max z∈Jk ( s ) τ (s ,z ) (Variante 1) ∆τ (r , s ) = τ 0 ∆τ (r , s ) = 0 (Variante 2) (Variante 3) ρ : Parameter ∈ (0,1] γ : Q-Learning Parameter ∈ [0,1) τ 0 :Initialer Pheromonlevel Folie 206 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACS - Pseudocode Procedure Procedure ACS-TSP; ACS-TSP; begin begin Initialisierung; Initialisierung; repeat repeat Jede Jede Ameise Ameise wird wird in in einem einem Startknoten Startknoten positioniert positioniert repeat repeat foreach foreach Ameise Ameise do do Ameise Ameise wendet wendet Zustandsübergangsregel Zustandsübergangsregel an an Ameise Ameise wendet wendet lokale lokale Update-Regel Update-Regel an an endforeach; endforeach; until until Lösungen Lösungen komplett; komplett; Globale Globale Update-Regel Update-Regel wird wird angewendet angewendet until until Ende-kriterium; Ende-kriterium; end; end; Folie 207 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACS - Parameterwahl § Parameter: Einfluss der heuristischen Information β=2 Exploration q0=0.9 Pheromon-Evaporation α=ρ=0.1 Initialer Pheromonwert τ0 = 1/(n·Lnn) Lnn: Länge der Lösung der Nearest-Neighbor-Heuristik • Anzahl Ameisen: m=10 • • • • Folie 208 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACS - Varianten § Ergebnisse eines Vergleichs: • • • • • ACS mit lokalem Update besser als ohne Lokales Update: Variante 1 und 2 besser als Variante 3 Heuristische Information wichtig à β>0 Igonorieren der Pheromonwerte à schlechte Performance ACS im Vergleich zu anderen Meta-Heuristiken relativ schlecht à Verwendung lokaler Suche § ACS + 3-opt (TSP): • 3-opt lokale Suche vor globalem Update • Ergebnisse deutlich besser, aber schlechter als MA (1st International Contest on Evolutionary Optimization) Folie 209 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Min-Max Ant System § Idee: • Von Stützle und Hoos, 1997 • Verbesserung des AS § Unterschiede zu AS: • Nur beste Ameise (global Beste oder Iterationsbeste) darf Pheromonspur aktualisieren • Pheromonwerte werden auf ein Intervall [τmin,τ max] festgelegt • Pheromonwerte werden mit τmax initialisiert • Verwendung von lokaler Suche Folie 210 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Fast Ant System § FANT: (QAP) • • • • • • Von Taillard und Gambardella, 1997 Nur eine Ameise Lokale Suche nach Konstruktion einer Lösung Pheromone verflüchtigen sich nicht Pheromonwerte werden mit 1 initialisiert Pheromon-Update: τ ij ← τ ij + r ⋅ ∆τ ij + r ∗ ⋅ ∆τ ijgb ∆τ ij : 1, wenn (i , j ) Element der aktuellen Lösung ist ∆τ ijgb : 1, wenn (i , j ) Element der besten Lösung ist r , r ∗ : Parameter Folie 211 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ant Colony Optimization § ACO Meta-Heuristik: • Von Dorigo und DiCaro, 1999 • Verallgemeinerung des ACS • Framework erlaubt Integration von lokaler Suche § Anwendung: • Diskrete Optimierungsprobleme (kombinatorische Optimierungsprobleme) mit bestimmten Eigenschaften à Problemdarstellung als Graph, Wahl einer Lösungskomponente wird durch Kante im Graph dargestellt Folie 212 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACO – Optimierungsprobleme (1) § Voraussetzungen: • Endliche Menge C von Komponenten C={c1,c2,...,cn } • Endliche Menge L von möglichen Verbindungen/Übergängen zwischen den Elementen von C, L={lij | (i,j) ∈ C x C}, |L|≤n2 • Für jedes lij ∈L Verbindungkosten Jij(lij,t), möglicherweise zeitabhängig • Eine endliche Menge von Nebenbedingungen Ω(L,C,t) Folie 213 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACO – Optimierungsprobleme (2) § Weitere Voraussetzungen: • Die Zustände des Problems ausgedrückt als Sequenzen s=<ci,cj,...,ck> über den Elementen von C, S sei die Menge aller möglichen Sequenzen und S* die Menge der gültigen Sequenzen bezüglich Ω(L,C,t) • Eine Nachbarschaftsstruktur, d.h. s1 und s2 sind Nachbarn, wenn s1=<...,c1> und s2=<s1,c2> ∈ S, c1, c2 ∈ C und lc1,c2 ∈ L • Eine Lösung x ∈ S* mit einer Kostenfunktion f(x,L,t) abhängig von den Kosten lij der Lösung Folie 214 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACO – Problembespiele (1) § Aufgabe: • Pfad im Graphen G=(C,L) § Beispiel TSP: • • • • • • • • Folie 215 C : Menge der Städte / Knoten L : Menge der Verbindungen / Kanten Verbindungkosten Jij(lij,t) = dij Ω(L,C,t) : Jede Stadt darf nur einmal besucht werden Die Zustände des Problems: Städtefolge s=<ci,cj,...,ck> Eine Nachbarschaftsstruktur: alle Städte sind benachbart Lösung x ∈ S*: gültige Tour Kostenfunktion f(x,L,t): Tourlänge Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACO – Problembespiele (2) § Beispiel binäres Problem: • Schrittweises Festlegen der Bits von links nach rechts • Graph: S S Lösung: Folie 216 Dr. Peter Merz 00 00 00 00 00 11 11 11 11 11 00 11 11 00 00 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken E E ACO - Datenstrukturen § Gedächtnis M: • • • • Jede Ameise hat ein Gedächtnis Wichtig für Erzeugung gültiger Lösungen Verwendet zur Evaluation einer Lösung Benötigt zum Rückverfolgen des Pfades § Routing-Tabelle A: • Gewichtet Kanten im Graph durch Kombination der Pheromonkonzentration und der heuristischen Information • Benötigt zur Berechnung der Zustandsübergangswahrscheinlichkeiten Folie 217 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ACO - Pseudocode procedure procedure ACO; ACO; begin begin repeat repeat schedule schedule antsGenerationAndActivity(); antsGenerationAndActivity(); pheromoneEvaporation(); pheromoneEvaporation(); daemonActions(); daemonActions(); end end schedule; schedule; until Ende-kriterium; until Ende-kriterium; end; end; procedure procedure antsGenerationAndActivity; antsGenerationAndActivity; begin begin repeat repeat scheduleCreationNewAnt(); scheduleCreationNewAnt(); newActiveAnt(); newActiveAnt(); until until noResources(); noResources(); end; end; Folie 218 Dr. Peter Merz procedure procedure newActiveAnt; newActiveAnt; begin begin initializeAnt(); initializeAnt(); M M == updateAntMemory(); updateAntMemory(); repeat repeat A A == readLocalAntRoutingTable(); readLocalAntRoutingTable(); P P == computeTransitionProbabilities(A,M,Ω); computeTransitionProbabilities(A,M,Ω); nextState nextState == applyAntDecisionPolicy(P, applyAntDecisionPolicy(P, Ω); Ω); moveToNextState(nextState); moveToNextState(nextState); ifif (onlineStepByStepPheromoneUpdate()) (onlineStepByStepPheromoneUpdate()) depositPheromoneOnVisitedArc(); depositPheromoneOnVisitedArc(); updateAntRoutingTable(); updateAntRoutingTable(); end end if; if; M = updateInternalState(); M = updateInternalState(); until until currentState currentState == == targetState; targetState; ifif (onlineDelayedPheromoneUpdate()) (onlineDelayedPheromoneUpdate()) foreach foreach arc arc in in xx do do depositPheromoneOnVisitedArc(); depositPheromoneOnVisitedArc(); updateAntRoutingTable(); updateAntRoutingTable(); end end foreach; foreach; endif; endif; end; end; Moderne heuristische Optimierungsverfahren: Meta-Heuristiken QAP: ACO und andere Meta-Heuristiken § QAP: Vergleich Meta-Heuristiken Zahlen: Abweichung von besten Lösung in % Instanz tai60a tai80a tai100a sko100a tai60b tai80b tai100b tai150b tho150 tai256c MA-1 1.314 1.106 1.089 0.096 0.000 0.191 0.076 0.361 0.151 0.070 MA-2 Ro-TS Re-TS 1.597 1.313 0.794 1.305 1.023 0.482 1.252 0.909 0.385 0.127 0.191 0.397 0.000 1.898 0.929 0.004 2.929 1.602 0.038 2.373 1.469 0.397 2.851 1.775 0.202 0.548 0.488 0.099 0.326 0.266 FANT MMAS 2.577 1.159 2.525 0.768 2.569 0.728 0.474 0.195 0.213 0.075 0.821 0.718 0.360 0.328 1.176 1.167 0.765 0.395 0.273 0.067 SA t/sec 3.199 90 3.298 180 1.848 300 2.942 300 1.760 90 5.092 180 6.696 300 3.787 600 2.939 600 0.370 1200 Ro-TS, Re-TS: Robust/Reactive Tabu Search FANT, MMAS: Ant Colony Optimization: Fast Ant System, Min-Max Ant System SA: Simulated Annealing Folie 219 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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) Folie 220 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Initialisiere(h) Initialisiere(h) ss == konstruiere(h) konstruiere(h) s* s* == lokaleSuche(s, lokaleSuche(s, h) h) Ende Ende 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) Folie 221 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ILS - Ablauf § Initialisierung: • Zufallslösung oder heuristische Lösung § Perturbation: • Zufällig (Mutation) • Oder deterministisch • Verwendung eines Gedächtnisses (h : history) ss00 == erzeugeStartLösung erzeugeStartLösung s* s* == lokaleSuche(s lokaleSuche(s00)) s‘ s‘ == perturbation(s*, perturbation(s*, h) h) s*‘ s*‘ == lokaleSuche(s‘) lokaleSuche(s‘) § Akzeptanzkriterien: • Nur bessere Lösungen • Nach Wkeitsverteilung • Mit Hilfe des Gedächtnisses Folie 222 Dr. Peter Merz s* s* == akzeptiere(s*, akzeptiere(s*, s*‘, s*‘, h) h) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Ende Ende ILS – Akzeptanzkriterien (1) § Nur bessere Lösungen: (Im folgenden: Minimierung) • Häufig verwendet • Lokale Meta-Suche s * ', wenn f ( s * ') < f (s *) best ( s*, s * ', h ) = s *, wenn f ( s * ') ≥ f (s *) § Random Walk: • Immer neue Lösung s*‘ akzeptieren • Zufällige Meta-Suche rw (s *, s * ', h) = s * ' Folie 223 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ILS – Akzeptanzkriterien (2) § LSMC: • Bessere Lösungen akzeptieren • Schlechtere Lösungen mit geringer Wahrscheinlichkeit akzeptieren à Metropolis-Kriterium • Simulated Annealing Meta-Suche s * ', wenn f (s * ') < f ( s*) ∨ r < e (f (s *)−f (s *')) / T lsmc(s *, s * ', h) = s *, sonst T : Annealing Temperatur r: Folie 224 Dr. Peter Merz Zufallszahl zwischen 0 und 1 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken ILS – Akzeptanzkriterien (3) § Restart: • Bessere Lösungen akzeptieren • Wenn seit ∆ir Iterationen keine Verbesserung, erzeuge neue Lösung wenn f (s * ') < f (s *) s * ', restart (s *, s * ', h ) = new (s *, h ), wenn f (s * ') ≥ f (s *) ∧ i - i last > ∆i r s * sonst i: aktuelle Iteration i last : Letze Iteration mit besserer Lösung ∆ir : Folie 225 Dr. Peter Merz restart-Parameter Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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 =∅ Folie 226 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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 Folie 227 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Variable Neighborhood Search § Ablauf VNS: Procedure Procedure VNS; VNS; begin begin ss == konstruiereLösung(); konstruiereLösung(); kk == 1; 1; repeat repeat wähle wähle zufällig zufällig s‘ s‘ ∈ ∈N Nkk(s); (s); s* s* == lokaleSuche(s‘); lokaleSuche(s‘); ifif f(s*) f(s*) << f(s) f(s) then then ss == s*; s*; kk == 1; 1; else else kk == kk ++ 1; 1; endif endif until until kk >> kmax; kmax; end; end; Folie 228 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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 Folie 229 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Variable Neighborhood Descent § Ablauf VND: Procedure Procedure VND; VND; begin begin ss == konstruiereLösung(); konstruiereLösung(); kk == 1; 1; repeat repeat Finde Finde bestes bestes s* s* ∈ ∈N Nkk(s); (s); ifif f(s*) f(s*) << f(s) f(s) then then ss == s*; s*; else else kk == kk ++ 1; 1; endif endif until until kk >> kmax; kmax; end; end; Folie 230 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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 Folie 231 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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 • • • • Folie 232 Dr. Peter Merz 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 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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: • • Folie 233 Dr. Peter Merz 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 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search Template (2) 4. Subset Generation Method: • Auswahl von Teilmengen der Referenzmenge zur Lösungskombination 5. Solution Combination Method: • Folie 234 Dr. Peter Merz Kombination mehrer Lösungen zu einer Lösung Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search Ablaufschema Phase I Phase II Erzeuge Erzeuge Startlösung(en) Startlösung(en) Subset Subset Generation Generation Diversification Diversification Generator Generator Solution Solution Combination Combination Improvement Improvement Improvement Improvement Reference Reference Set Set Update Update Reference Reference Set Set Update Update Ende Ende Folie 235 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search vs. Memetische Algorithmen § Begriffe: • • • • • § Wichtigste Unterschiede: • • Folie 236 Referenzmenge = Population Improvement = Lokale Suche Reference Set Update = Überlebensselektion Subset Generation = Variationsselektion Solution Combination = Rekombination (Multi-Parent) Dr. Peter Merz Deterministisch vs. Zufallsgesteuert Vollständige, systematische Kombination (erst alle Paare dann alle 3er Kombinationen, usw.) vs. zufällige oder fitnessbasierte Selektion Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search Methoden (1) § Diversifikation: • Beispiel binäres Problem f: S→¡ mit S={0,1}l • Startlösung x=(0,...,0) x1′ = 1 − x1 x1′+ hk = 1 − x1+ hk x i′′ = 1 − x ′i § ∀ i = 1,..., n Improvement: • Folie 237 ∀ k = 1,..., n / h Dr. Peter Merz 1-opt lokale Suche (single bit-flip) Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search Methoden (2) § Referenzmengen Update: • • • • • Folie 238 Dr. Peter Merz 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 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search Methoden (3) § Teilmengen-Erzeugung: • • • • Folie 239 Dr. Peter Merz 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 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search Methoden (4) § Lösungskombination: • Für jede Lösungskomponente (jedes Bit) wird ein score berechnet ∑ f (x ) ⋅ x score( i ) = ∑ f (x ) j ∈R j ∈R j j ,i j 1, wenn score( i ) > 0.5 ′ xi = 0, sonst R : Lösungen/Teilmenge für Kombination Folie 240 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken 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 Folie 241 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Scatter Search und Path Relinking (2) § Path Relinking Vorgehen: • 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 Folie 242 Dr. Peter Merz Beispiel: Binäre Kodierung 11 00 00 11 11 00 00 11 00 11 11 00 11 11 11 00 00 11 00 11 11 00 11 11 11 11 00 11 00 11 11 00 11 00 11 11 00 11 00 11 11 00 11 00 11 11 00 11 00 00 11 00 11 00 11 11 11 11 00 00 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Übersicht Metaheuristiken (1) Local Local Search Search Simulated Simulated Annealing Annealing Threshold Threshold Accepting Accepting Multi-Start Multi-Start Local Local Search Search Tabu Tabu Search Search Grand Grand Deluge Deluge GRASP GRASP Iterated Iterated Descent Descent Iterated Iterated Local Local Search Search Variable Variable Neighborhood Neighborhood Search Search Folie 243 Dr. Peter Merz Ant Ant Colonies Colonies ++ LS LS Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Large Large Step Step Markov Markov Chains Chains Übersicht Metaheuristiken (2) Evolutionary Evolutionary Algorithms Algorithms Evolution Evolution Strategies Strategies Genetic Genetic Algrorithms Algrorithms Hybrid Hybrid GAs GAs Evolutionary Evolutionary Programming Programming Genetic Genetic Programming Programming Local Local Search Search Tabu Tabu Search Search Memetic Memetic Algorithms Algorithms Folie 244 Dr. Peter Merz Scatter Scatter Search Search Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Übersicht Metaheuristiken (3) Evolutionary Evolutionary Algorithms Algorithms Differential Differential Evolution Evolution Probabilistic Probabilistic Learning Learning Bit-Simulated Bit-Simulated Crossover Crossover EA EA Ant Ant System System Local Local Search Search Ant Ant Colony Colony System System Particle Particle Swarm Swarm Optimization Optimization P-based P-based Incremental Incremental Learning Learning Bayesian Bayesian Optimization Optimization Ant Ant Colony Colony Optimization Optimization Folie 245 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken COMIT COMIT MIMIC MIMIC Clustering § Clustering: • Gruppierung und Einteilung einer Datenmenge nach ähnlichen Merkmalen • Unüberwachte Klassifizierung (Neuronale NetzeTerminologie) • Distanzkriterium: Ein Datenvektor ist zu anderen Datenvektoren seiner Gruppe nahe (näher als zu Vektoren anderer Gruppen • k-Clustering: Clustern einer Datenmenge in k Gruppen • Viele Clusterungsprobleme sind NP-hart! Folie 246 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Clustering Cluster 2 § Beispiel: × × Cluster 3 × Cluster 1 Cluster-Zentrum Folie 247 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpression (1) § Genexpression: • Biosynthese eines Genprodukts (Umsetzung der genetischen Information in Proteine) • IdR. Transkription von DNA zu mRNA und anschließender Translation von mRNA zu Protein. § Experimentelle Mikrobiologie: • Experimentelle Bestimmung der Expression von Genen • Microarray-Technologie: Viele Gene können gleichzeitig untersucht werden (>10000) • cDNA Microarrays: komplementäre DNA Folie 248 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpression (2) § cDNA-Microarrays: • Glasscheibe mit mehreren tausend regelmäßig angeordneten Feldern (Spots) • Jeder Spot enthält cDNA eines bestimmten Gens • Ziel mRNA wird markiert • Alle nicht hybridisierten Targets werden abgewaschen • Lichtintensität wird anschließend gemessen • Intensität spiegelt Expressionslevel wieder Folie 249 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpression (3) § Biologische Fragestellungen: • Welche Funktionen haben die einzelnen Gene und in welchen zellulären Prozessen sind sie beteiligt? • Wie werden Gene reguliert, wie interagieren Gene und Genprodukte? Wie sind die Interaktionsnetzwerke aufgebaut? • Wie unterscheiden sich die Expressionslevel in verschiedenen Zelltypen und Zuständen? Folie 250 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpressionsanalyse § Aufgabenstellung: • Datenanalyse, Data Mining • Dimensionsreduktion und Visualisierung • Finden von Gruppen co-regulierter Gene, funktional zusammenhängender Gene § Lösung: • Clusteranalyse, Clustering der Gene § Algorithmen: • • • • Folie 251 Hierarchisches Clustern Self-organizing maps (SOMs) Hauptkomponentenanalyse (PCA) K-Means, ... Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Minimum Sum of Squares Clustering § MSSC: • NP-hartes kombinatorisches Minimierungsproblem K n minp ∑ ∑ d ( xˆi , x j ) = ∑ d 2 ( xˆ p ( i ) , xi ) 2 i =1 j ∈Ci mit xˆ i = i =1 1 xj ∑ | Ci | j∈Ci und Ci = { j ∈ {1,..., n } | p( j ) = i } xi ∈ ¡ m , i = 1,..., n : n Eingabevektoren der Dimension m Ci : zu Cluster i zugeordnete Vektoren p : {1,.., n} → {1,..., k } : Zuordnung von Vektor zu Cluster Folie 252 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Der k-Means Algorithmus § k-Means: • Wiederholtes Zuweisen der Inputvektoren zu Clustern und Neuberechnung der Clusterzentren • Zuweisen durch Bestimmung des Zentrums mit geringstem Abstand • Abbruchkriterium: Clusterzentren haben sich nicht geändert • Konvergiert gegen lokales Optimum der MSSC Zielfunktion Folie 253 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Wähle Wähle Clusterzentren Clusterzentren Zuordnung Zuordnung Vektoren Vektoren zu zu Clustern Clustern Neuberechnung Neuberechnung der der Clusterzentren Clusterzentren Ende Ende Memetische Algorithmen fürs MSSC § Wichtige Schritte: • • • • • Folie 254 Bestimmung der Zielfunktion Bestimmung der Repräsentation von Lösungen Wahl der lokalen Suche Entwicklung eines Mutationsoperators Entwicklung eines Rekombinationsoperators Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Memetische Algorithmen fürs MSSC § Bestimmung der Zielfunktion: • MSSC Funktion n f ( p) = ∑ d 2 ( xˆ p (i ), xi ) i =1 § Bestimmung der Repräsentation von Lösungen: • Abbildung p kann so kodiert werden: p: 11 33 22 11 11 33 33 22 22 11 22 33 22 11 11 33 11 22 33 11 Vektor 2 wird Cluster 3 zugewiesen Vektor 1 wird Cluster 1 zugewiesen • Clusterzentren können aus p berechnet oder gespeichert werden à Werden in MA gespeichert Folie 255 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Memetische Algorithmen fürs MSSC § Wahl der lokalen Suche: • K-Means, Input: k Clusterzentren § Mutationsoperatoren: • Operator MM: - Ein zufällig gewählter Vektor wird als Clusterzentrum für ein zufällig gewähltes Cluster herangezogen • Operator FM: - Zwei Cluster i und j werden zufällig gewählt - Der Vektor mit der größten Distanz zum Mean von Cluster i wird als Clusterzentrum (mean) von Cluster j verwendet Folie 256 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Memetische Algorithmen fürs MSSC § Rekombinationsoperatoren: • Operator UX (uniform Crossover): - Die Mean-Vektoren werden mit gleicher Wahrscheinlichkeit von den beiden Eltern gewählt • Operator RX: - Mean-Vektoren in Elter a werden durch Mean-Vektoren von Elter b ersetzt - Mean-Vektoren aus überrepräsentierten Bereichen sollen gelöscht werden - Mean-Vektoren sollen zu unterrepräsentierten Bereichen hinzugefügt werden Folie 257 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken MSSC: RX Rekombination § Rekombinationsoperator RX: Elter a: aa11 aa22 aa33 aa44 aa55 aa66 aa77 aa88 aa99 aa10 10 Discard List: aa22 aa55 aa77 aa10 10 Split List: Elter b: bb11 bb22 bb33 bb44 bb55 bb66 bb77 bb88 bb99 bb10 10 Kind: bi Folie 258 Dr. Peter Merz aa11 bb44 aa33 aa44 bb66 aa66 bb33 aa88 aa99 aa10 10 aa33 aa66 aa88 Gewählte Paare: (a3,a2) (a8,a5) (a6,a7) aj : aj ist nächster Mean-Vektor zu bi Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Clustering - Distanzen zwischen Lösungen § Distanzen: • Wichtig, wenn man Lösungen von Clusterungsalgorithmen vergleichen will • Wichtig für Fitnesslandschaftsanalyse § Vorschlag 1: • Center-Distanz: n D( p ,q ) = ∑ d ( xˆ p( i ) , xˆ q ( i ) ) i =1 • Nachteil: Abhängig vom MSSC-Kriterium, schwer interpretierbar Folie 259 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Clustering - Distanzen zwischen Lösungen § Ziel: • Zählen, der Vektoren die unterschiedlich zugeordnet wurden § Vorschlag 2: • Matching: Ordne Cluster von Lösung A Clustern von Lösung B zu • Zuordnung über Clusterzugehörigkeit • Zähle die gemeinsamen Vektoren der zugeordneten Cluster Folie 260 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Clustering – Matching & Distanzberechnung § Matching: • Zähler = 0 • Für jedes Cluster i aus Lösung A: - Finde Cluster j aus Lösung B mit den meisten Vektoren aus i - Finde Cluster k aus Lösung A mit den meisten Vektoren aus j - Wenn i=k, erhöhe Zähler um Anzahl der gemeinsamen Vektoren • Distanz = Anzahl Vektoren - Zähler Folie 261 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Clustering – Matching & Distanzberechnung § Illustration: Lösung A: aa11 aa22 aa33 aa44 aa55 aa66 aa77 aa88 aa99 aa10 10 4 9 3 Lösung B: Gemeinsame Vektoren: Folie 262 Dr. Peter Merz 7 8 10 14 5 2 7 bb11 bb22 bb33 bb44 bb55 bb66 bb77 bb88 bb99 bb10 10 9 + 7 + 0 + 8 + 10 + 14 + 0 + 5 + 7 + 2 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken = 62 MSSC – Fitness-Distanz-Korelation § Verteilung der k-Means Lösungen: Matching, FDC: 0.59 Folie 263 Dr. Peter Merz Center-Distanz, FDC: 0.66 Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpressionsanalyse mit MA (1) § Clusterung der Expressionsdaten • Minimum-Sum-Of-Squares Clustering (NP-Hart) • Minimierung des Abstandes zum Repräsentanten eines Clusters • MA mit k-Means lokaler Suche • Genexpressionsuntersuchung: - Expression von 6565 Genen über 2 Zellzyklen (Messung an 17 Zeitpunkten) - 2 Zeitpunkte wurden eliminiert à Expressionsmuster sind Zeitreihen aus 15 Punkten - Variationsfilter reduziert Datensatz auf 2931 Folie 264 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpressionsanalyse mit MA (2) § Ergebnisse Vergleich MA-Operatoren: • Oben: zuvor beschriebene Daten, unten: zufällig erzeugte Daten mit bekanntem Optimum Alg. Alg. MLS MLS MA-UX MA-UX MA-RX MA-RX MA-FM MA-FM MA-MM MA-MM MLS MLS MA-UX MA-UX MA-RX MA-RX MA-FM MA-FM MA-MM MA-MM Folie 265 Dr. Peter Merz Gen Gen Nr. Nr. LS LS Iter Iter LS LS Best Best Avg. Avg. Obj. Obj. Error Error 100 100 98 98 100 100 100 100 2000.0 2000.0 2000.0 2000.0 1979.0 1979.0 2000.0 2000.0 2000.0 2000.0 74632.5 74632.5 51371.7 51371.7 12475.9 12475.9 34405.5 34405.5 35784.3 35784.3 16966.7 16966.7 16908.3 16908.3 16907.0 16907.0 16912.6 16912.6 16909.0 16909.0 816984.32 816984.32 216933.44 216933.44 616916.60 616916.60 116924.54 116924.54 916919.03 916919.03 0.46% 0.46% 0.16% 0.16% 0.06% 0.06% 0.10% 0.10% 0.07% 0.07% 100 100 55 55 100 100 100 100 2000.0 2000.0 2000.0 2000.0 1110.0 1110.0 2000.0 2000.0 2000.0 2000.0 40929.9 40929.9 27502.6 27502.6 4232.5 4232.5 12886.6 12886.6 25782.8 25782.8 5868.59 5868.59 5811.82 5811.82 5811.82 5811.82 5811.82 5811.82 5811.82 5811.82 6314.74 6314.74 5947.68 5947.68 5833.34 5833.34 5823.11 5823.11 5811.82 5811.82 8.65% 8.65% 2.34% 2.34% 0.37% 0.37% 0.19% 0.19% 0.00% 0.00% Moderne heuristische Optimierungsverfahren: Meta-Heuristiken Genexpressionsanalyse mit MA (3) § Ergebnisse: • Vergleich zu einfachem k-Means: • Zuordnung der Gene zu den Clustern stark unterschiedlich! • Gene in MA-Cluster 14 verteilen sich auf 5 k-Means-Cluster: 1(5 Gene), 5(3 Gene), 15(36 Gene), 22(4 Gene), 23(40 Gene) MA Folie 266 Dr. Peter Merz Moderne heuristische Optimierungsverfahren: Meta-Heuristiken k-Means