1 / 39

Spezialvorlesung Suchalgorithmen

Spezialvorlesung Suchalgorithmen. Thema: Selektive Suche Stefan Edelkamp. Struktur des Buchs. Überblick. Randomisierte Suche Las Vegas und Monte Carlo SAT-Algoritmen Lokale Suche RLS + (1+1) EA Simulated Annealing, Tabu-Suche Ameisen-Algorithmen Lagrange-Multiplikatoren.

Télécharger la présentation

Spezialvorlesung Suchalgorithmen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SpezialvorlesungSuchalgorithmen Thema: Selektive Suche Stefan Edelkamp

  2. Struktur des Buchs

  3. Überblick • Randomisierte Suche • Las Vegas und Monte Carlo • SAT-Algoritmen • Lokale Suche • RLS + (1+1) EA • Simulated Annealing, Tabu-Suche • Ameisen-Algorithmen • Lagrange-Multiplikatoren

  4. Randomisierte Suche • Randomisierter Algorithmus = Deterministischer Algorithmus + Zufallsexperimente • Las Vegas: Vermeide worst-case durch Randomisieren der Eingabe (immer korrekt) • Monte Carlo: Randomisiere Genauigkeit (meistens korrekt) Beispiele: • Randomisierte Binärbaum (Las Vegas) • Randomisiertes Quicksort (Las Vegas) • Randomisierte Primzahltest (Monte Carlo)

  5. SAT:Nadel im Heuhaufen

  6. Problem Max-k-SAT m Klausen, n Variablen, k Variablen pro Klausel Probem: Suche NP-hard selbst für k=2 !

  7. Deterministische .5-Approximation In jeder Iteration werden mindestens so viele Klauseln erfüllt wie nicht erfüllt

  8. Monien-Speckenmeyer Deterministisch Bricht 2^n Grenze: O(1.839^n) für 3-SAT Verbesserte Version: O(1.6181^n) für 3-SAT

  9. Hamming Sphere

  10. Illustration Laufzeit: (2k/(k+1))^n O((3/2)^n) für k=3

  11. Random Walk Laufzeit: (2 (1-(1/k))^n O((4/3)^n) für k=3

  12. Illustration

  13. Davis-Putnam while (true) if (!decide()) // Entscheidung für eine Variable -> Stack return(satisifiable); while (!bcp())// Boole‘sche Constraint Propagierung if (!resolveConflict())// Löse Konflikt, s.u. return (not satisfiable); bool resolveConflict() d = most recent decision not ‘tried both ways’; if (d ==NULL) // kein solches d gefunden return false; flip the value of d; markd as tried both ways; undo any invalidated implications; return true;

  14. Einzel-Klausel Propagierung Idee: Wenn immer in einer Klausel eine Literal festlegt ist wird es sofort weiter propagiert Stoppe, wenn keine weiteren Zuweisungen erreicht werden, oder ein Konflikt identifiziert wird (backtrack)

  15. Chaff: Watch-Literal Beim Besuch einer Klausel muss eine der zwei Bedingungen gelten: (1) Klausel wird nicht impliziert >= 2 Literal sind nicht 0, inklusive der anderen Watched Literale.  => 1 Nicht-Watched Literal wird nicht auf 0 gesetzt. Dies wird gewählt und ausgetauscht  Bedingung, dass die beidenWatched-Literale nicht 0 sind (2) The Klause wird impliziert. Dies generiert eine neue Implikation (es sei denn die Klausel ist erfüllt). Dabei ist zu beachten das die implizierte Variable immer das andere Watched Literal sein muss, da die Klausel immer ein Literal nicht 0 hat, und einer der beiden Watched Literale auf 0 gesetzt wird.

  16. Illustration

  17. State-of-the-Art • Siege, industriell, u.a. in SAT-Plan • Minisat, public domain, u.a. in MAX-Plan MiniSat is a minimalistic, open-source SAT solver, developed to help researchers and developers alike to get started on SAT. It is released under the MIT licence, and is currently used in a number of projects (see "Links"). On this page you will find binaries, sources, documentation and projects related to MiniSat, including the Pseudo-boolean solver MiniSat+ and the CNF minimizer/preprocessor SatELite. Together with SatELite, MiniSat was recently awarded in the three industrial categories and one of the "crafted" categories of the SAT 2005 competition

  18. Setting:Lokale Suche

  19. Randomisierte Lokale Suche • Betrachte die Suche nach Minimum von f : {0,1}^n -> IR

  20. (1+1) EA Idee: Erlaube weitere Sprünge im Suchraum durch Kreuzung von Individuen Rekombination

  21. Genetische Algorithmen • Ganze Population modelliert Evolution • Genetische Operatioren: • Selection, Cross-Over, Mutation, Recombination • Analyse beruht auf Schema-Theorem (heftig umstritten)

  22. Implementierung

  23. Simulated Annealing • Randomisierte Suchstrategie • Motiviert durch Temperaturen & Abkühlen • Bolzmann-Konstante • „Flut“-Algorithmus • Optimal im Limit

  24. Simulated Annealing

  25. Tabu Suche • Oder Taboo-Suche, Wort verweist auf Aborigines „heilig - nicht berühren“ • Tabu-Liste soll Lokale Minima vermeiden Ansatz: Wenn alle Nachbarn „tabu“ sind, werden schlechtere Lösungen akzeptiert. Alternative: Wenn es einen klar verbessernde Option gibt, ignoriere Liste Strategien zur Aktualisierung der Tabu-Liste: LRU in den letzten k Zügen

  26. Tabu Suche

  27. Randomisierung

  28. Ameisen-Algorithmen • Populationsbasiert • Randomisierte Entscheidungen, gerichtete durch Pheromone (verbleichende Informationen) und andere Kriterien • Beschränkter Speicher • Ameisen können zulässige Handlungen erkennung und bewerten • Verteilen Pheromone je nach Güte der Lösung

  29. Simple Ant System

  30. Lagrange-Optimierung Beschränktes lokales Minimum (CLP): x* zulässig und f(x*) <= f(x) für alle x in Nc(x)

  31. Lagrange-Multiplikatoren • Für Vektoren Lamda und mu definiere • Idee: Optimiere L und verstärke den Einfluss von Lamda und mu nach und nach

  32. Sattelpunkte • Existieren Lambda* und mu* mit • hinreichend, aber nicht notwendig für x* CLM z.B. x*=5 in • Deshalb definiere Transformierte Lagrange-Funktion als

  33. Erweiterte Sattelpunktbedingung • Existieren alpha*>=0, beta* >=0, so dass Für alle alpha** >= alpha*,beta** >= beta* Beispiel: An x*=5, kein striktes Minimum für alpha=alpha*=10 aber an alpha>alpha*

  34. Implementierung

  35. Epilog: Unendliche Zustandsräume

  36. Planen mit Presburger Formeln

  37. Von Aktion zur Formel

  38. Von Formel zum Automaten

  39. Spezialvorlesung SS 2007 • Gerichtete Modellprüfung

More Related