Heuristiken - Institut für Informatik

Werbung
Heuristiken
Automatic Problem Solving
Institut für Informatik
Universität Potsdam WS 05/06
Kozhevnikov Serhiy
Überblick
•
•
•
•
Beschreibung des Problems
Heuristiken
Lokale Suchmethoden
Genetische Algorithmen
Komplizierte Aufgaben
1. Das Problem hat eine optimale oder
perfekte Lösung. Die
Berechnungen sind aber zu
kompliziert wegen der große
Menge der mögliche Lösungen.
- Traveling salesperson problem
- Die Gewinn bringende Kombination im
Schach u.s.w.
2. Das Problem hat mehrere Lösungen
von gleichen Bewertungen oder
keine Lösung.
Alle Faktoren, die die Qualität des
Lösens beeinflussen, können nicht
beachtet werden.
- Benehmen Modellierung
Komplizierte Aufgaben
1. Das Problem hat eine optimale oder
perfekte Lösung. Die
Berechnungen sind aber zu
kompliziert wegen der große
Menge der mögliche Lösungen.
- Traveling salesperson problem
- Die Gewinn bringende Kombination im
Schach u.s.w.
2. Das Problem hat mehrere Lösungen
von gleichen Bewertungen oder
keine Lösung.
Alle Faktoren, die die Qualität der
Lösung beeinflussen, können nicht
beachtet werden.
- Benehmen Modellierung
Finden einer Lösung, die nicht unbedingt optimal ist.
Heuristiken
„Das Studium der Methoden und Regeln von Entdeckung und
Erfindung“
(Polya 1945)
Als Heuristik bezeichnet man eine Strategie, die das Streben nach
Erkenntnis und das Finden von Wegen zum Ziel planvoll gestaltet. Sie
wird auch als Lehre der Problemlöseverfahren bezeichnet.
Heuristik ist ein Algorithmus, der gute Lösungen mit den minimalen
Berechnungen findet.
Heuristiken
„Heuristic is a process that may solve a given problem, but offers no guarantees of doing so.“
(Newell, Shaw, Simon. 1963)
• Heuristiken finden die
Lösungen ohne
Berechnungen des ganzen
Feldes der Lösungen.
• In mehreren Fällen kann
die beste Lösung mit Hilfe
intuitive Mechanismen
gefunden werden.
• Es gibt keine Garantie,
dass die gefundene
Lösung optimal oder
sogar gut ist.
Lokale Suchmethoden
•
•
•
•
•
•
•
Hill Climbing
Stochastic Hill Climbing
Simulated Annealing
Tabu-search
…
…
…
Hill Climbing
1.
2.
3.
4.
5.
Erzeuge eine anfängliche Lösung s.
Erzeuge Nachbarschaft N(s) von Lösung s
Selektiere in Nachbarschaft die Lösung mit bester Bewertung
Falls die selektierte Lösung besser als die aktuelle Lösung ist,
akzeptiere diese als aktuelle Lösung und fahre mit dem Schritt 2 fort
Beende die Suche
Stochastic Hill Climbing
• Nur eine Lösung aus der Nachbarschaft
wird selektiert.
• Diese Lösung wird für die nächste Iteration
mit einer Wahrscheinlichkeit akzeptiert, die
von der Evaluierungsdifferenz zwischen
dieser Lösung und der aktuellen Lösung
abhängig ist.
Simulated Annealing
• Während der Suche wird auch eine
schlechtere Lösung mit einer bestimmten
Wahrscheinlichkeit akzeptiert.
• Unterscheidet sich von der Stochastic Hill
Climbing dadurch, dass die Bedeutung der
Evaluirungsdifferenz bei jedem Schritt
zunimmt.
Tabu search
• Durch die Verwendung einer Tabu-Liste werden während
der Suche Zyklen(Besuchen von gleichen Lösungen)
vermieden.
• In der Tabu-Liste werden für eine fixierte Anzahl von
durchlaufenden Iterationen bestimmte Informationen zur
Suche gespeichert(z.B. bereits besuchte Lösungen)
• Die Akzeptanz der Lösung für die nächste Iteration hängt
ab von:
- Bewertung der Lösung
- Tabu-Liste.
Genetische Algorithmen
• Basieren auf biologischen Prozessen
• Bei Verwendung von genetischen Algorithmen zur
Problemlösung werden drei Phasen durchlaufen:
1. Repräsentation von potenziellen Lösungen der Problemdomäne
2. Erzeugung einer neuen Generation von Individuen, die Merkmale
ihrer
Eltern in sich vereinen, mit Paarungs- und
Mutationsalgorithmen.
3. Selektion der besten Individuen für die nächste Generation basiert
auf einer Bewertfunktion.
Genetische Algorithmen
Beispiele der genetischen Operatoren:
- Mutation. Ein Aspekt eines Kandidaten wird in zufälliger Weiser
verändert.
- Kreuzung. Der Kreuzungsmechanismus teilt zwei
Lösungskandidaten auf und tauscht Komponenten
gegeneinander aus um neuen Kandidaten zu
produzieren.
Informationsquellen
1. Z. Michalewicz, D.B. Fogel. How to solve
it: Modern Heuristics.
2. www.wikipedia.de
3. http://mat.gsia.cmu.edu
Herunterladen