GRASP = Greedy randomized adaptive search process

Slides:



Advertisements
Ähnliche Präsentationen
ÖSTERREICH UND DIE SCHWEIZ
Advertisements

traveling salesman problem
Simulationsansätze in der BWL: Erstellung eines eigenen Projekts
Simulated Annealing Marco Block & Miguel Domingo Seminar : Maschinelles Lernen und Markov KettenSommersemester 2002.
Objektorientierter Entwurf
Klaus Volbert 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Sommersemester 2004.
DIE WELT SEHEN UND BESUCHEN EINEE KLEINE REFLEKTION WO ICH SCHON WAR.
FH-Hof Künstliche Intelligenz - Suchbäume Richard Göbel.
Motivation Richard Göbel.
Heuristiken Automatic Problem Solving Institut für Informatik
Genetische Algorithmen
Konfidenzintervalle für Parameter
T. Fanslau und A. Bortfeldt FernUniversität Hagen Inhalt: Einleitung
Martin Böhmer/Dennis Treder/Marina Schwacke Übungen zu Automatisches Zeichnen von Graphen Ausgabe: Besprechung: Gruppe 2 - Übungsblatt.
Algorithmen des Internets 2005 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität 1 Klausuraufgaben.
3. März 2000LS VI Workshop: Kalibrierung und Optimierung1/20 Kalibrierung und Optimierung in simulierten Multiagentensystemen Christoph Oechslein.
Intelligentes Crawling im WWW mit Hilfe intuitiver Suchbedingungen
Der Bully-Algorithmus a.) Prozess 7 ist ausgefallen. Der Ausfall wird von Prozess 4 bemerkt. Prozess 4 startet eine Auswahl.
Beweissysteme Hartmut Klauck Universität Frankfurt WS 06/
In 8 Minuten durch ganz Europa
Kennst du die Hauptstädte? Wähle einen Kontinent aus!
Verwendung von Maschinellem Lernen in einer einfachen Computerspielumgebung Anglberger Harald Brandl Stephan Mai 2003.
Universität zu Köln Historisch-Kulturwissenschaftliche Informationsverarbeitung Softwaretechnologie II (Teil I): Simulation und 3D Programmierung Prof.
Effiziente Algorithmen
Quantum Computing Hartmut Klauck Universität Frankfurt WS 05/
Quantum Computing Hartmut Klauck Universität Frankfurt WS 04/
Animation von Dijkstra
Animation von Dijkstra
K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den Brute Force Search Algorithmus schlagen?
Limited Local Search And Restart Nähere Betrachtungen.
How do I ask someone where they are from?
Adaption von K-Means Algorithmen an Datenbanken
TOPOGRAPHIE EUROPAS LERNKONTROLLE
Länder Europas Mgr. Eliška Ducháčová
LÄNDER UND HAUPTSTÄDTE
Jan Hinzmann – – GIS Praxis II – Slide 1/10 Der Algorithmus von Dijkstra (Berechnung kürzester Wege in bewerteten Graphen) GIS Praxis II, Jan Hinzmann,
Salzburg - Ankünfte (Pax) Salzburg - Ankünfte (Pax)
Grundlagen des Solvers
Amsterdam
Advanced Portlets Jens Hahn Stefan Reich Stefan Westerfeld Projekt KVS - Universität Hanburg.
Allgemeine Funktionalitätsbeschreibung
Österreichquiz Wie gut kennen Sie Ihr Land? Start.
Deutschland und ihre Nachbarländer
die Deutschland begrenzen
Österreich Germany Liechtenstein Switzerland Italy Slovenia Hungary
Die Welt auf der wir leben
Das Traveling Salesman Problem (TSP)
Was ist die Hauptstadt von…?
Der A*-Algorithmus.
K-SAT: Ein heuristischer Algorithmen- Vergleich Kann man den ‚Brute Force Search‘ Algorithmus schlagen?
Mechanik I Lösungen.
Wolfgang´s Powerpoint Präsentation Eine Reise um die Welt.
Österreich: Einwohner: 8,5 Millionen Fläche: km²
c-means clustering (FCM)

SHA-1 Collision Search Graz. Wo wurde das Projekt durchgeführt? An der Universität Graz Wann wurde das Projekt gestartet? Am Wann wurde das.
Lesen Seite 204, 206 und 207.
Österreich Vorname Zuname Klasse.
Kapitel 4 Traveling Salesman Problem (TSP)
EUROPA- QUIZ SZKOLNY FESTIWAL NAUKI Szkoła Podstawowa nr 1 im. Mikołaja Kopernika w Piszu 27 maja 2010 r.
Geschichte in fünf Die Sudetenkrise & das Münchner Abkommen 1938.
J. Nürnberger2007 / 081 Tabellenkalkulation (3) Arbeiten mit Formeln am Beispiel von OpenOffice.org Calc.
Leichte Tests.
Kapitel 5 Länder und Sprachen
Österreich Bundesländer.
Eagle Airline Frei wie ein Vogel.
Österreichs Bundesländer
L.O. to be able to say where you live, and where that is in the world!
GEOGRAPHIE & WIRTSCHAFTSKUNDE 1 AM
Kleines 1x1 ABCD Aufgaben Kleines 1x1 A · 8 = Lösung.
 Präsentation transkript:

GRASP = Greedy randomized adaptive search process Stefan Theussl Gerold Köb Goran Lovric Martin Gartner GRASP = Greedy randomized adaptive search process

Inhalt Einleitung Algorithmus Simulation, Parameterwahl Recheneffizienz Unser Benchmark Schlussfolgerungen und Ausblick Live-Demonstration in R

Einleitung I Grundprinzip: Construction Phase: … Erzeugung einer „greedy“ Startlösung mit der dann Local Search gestartet wird Construction Phase: Kandidatenliste der Städte, die von Startpunkt erreichbar sind Auswahl eines Kandidaten nach Bewertung mit „greedy-function“ bis eine komplette Lösung vorliegt …

Einleitung II … Local Search: Permutation der „greedy“-Startlösung und Berechnung des Zielwerts wenn Zielwert besser als jener der „greedy“-Startlösung  Zielwert als neuer „benchmark“ Wiederholung des Prozesses bis Abbruchbedingung erfüllt wird (zB Anzahl der Iterationen)

Ablauf des Algorithmus „grasp.solve“ wird aufgerufen optimaler Zielwert = unendlich In „grasp.solve“ wird mit „.construct_greedy“ eine Startlösung erzeugt Startlösung in Funktion „.local_search“ wenn Zielwertverbesserung durch „.local_search“  neuer Zielwert ist neues Optimum Wiederholung bis Abbruchbedingung erfüllt (bei uns: Anzahl der Wiederholungen von „grasp.solve“)

Algorithmus I Funktion: „grasp.solve“: Inputs: Distanzmatrix, Startpunkt Parameter: alpha, k, iterations, n n wird „local_search“ übergeben k entspricht Anzahl der vertauschten Städte beim k-opt-move

Algorithmus II Funktion: „.construct_greedy“: min <- minimale Distanz max <- maximale Distanz alpha <- gleichverteilte ZZ zwischen 0 und 1 Verteilung für alpha kann bei Aufruf von „.grasp.solve“ übergeben werden treshold <- min + alpha * (max – min)  Gewichtung zwischen der am kürzesten und der am weitesten entfernten Stadt zufällige Auswahl eines Kandidaten, wo Distanz kleiner „treshold“

Algorithmus III Funktion: „local_search“: Inputs: Distanzmatrix, greedy Startlösung Parameter: n, k k gibt Anzahl für k-opt-move an n ist Abbruchbedingung falls keine Zielwertverbesserung gefunden wird (n ist Anzahl der maximalen Durchläufe der Local Search)

Simulation, Parameterwahl I Zufallsvariable: alpha Verwendung bei Erzeugung einer „greedy“ Startlösung treshold <- min + alpha * (max – min) Simulation in R: mit festem seed (dh: gleichen Pseudozufallszahlen werden verwendet!) folgende Beispiele mit 3-opt-moves!

alpha ~ U(0,1) kleineres alpha  bessere Zielwerte Zielwerte zwischen ca. 14.000 km und 45.000 km

alpha ~ U(0, 0.2) Zielwerte zwischen ca. 14.000 km und 27.000 km unser Optimum bei alpha von „0.054966“

alpha ~ Γ(1, 6) Zielwerte zwischen ca. 40.000 km und 15.000 km aber Häufung bei Zielwerten zwischen 15.000 km und 20.000 km

Simulation, Parameterwahl II Parameter k: k-opt-move: Positionen von k Städten wird zufällig vertauscht zB A-B-C-D-E 2-opt-move zB: A-D-C-B-E 3-opt-move zB: C-B-E-D-A Simulation in R: mit festem seed (dh: gleichen Pseudozufallszahlen werden verwendet!)

Vergleich bei Verwendung verschiedener k 2-opt-move 3-opt-move

Vergleich bei Verwendung verschiedener k 3-opt-move 4-opt-move

Recheneffizient I Test der durchschnittlichen Rechenzeiten bei unterschiedlicher Wahl der Parameter auf Banias-Centrino™ mit 1.4 Ghz, 1 MB L2 Cache, 512 MB alpha keine Auswirkungen auf Rechenzeit  hier alpha ~ U(0, 0.2) Angaben in Sekunden!!!

Recheneffizienz II Sekunden Iterations Grasp (iterations = …) Iterations Local Search (n = …) k-opt-move (k = …) 19.466 1,000 10,000 2 122.965 3 423.745 4 2.442 100 5.138 250 9.316 500 19.929 14.706 15.224 2,500 16.747 5,000 18.381 7,500 19.311

Unser Benchmark: Start in Wien (und Rückkehr nach Wien) 14.422 km Route: Wien -> Bratislava -> Budapest -> Zagreb -> Graz -> Linz -> Prag -> Berlin -> Hamburg -> Kopenhagen -> Stockholm -> Warschau -> Kiev -> St..Petersburg -> Helsinki -> Bergen -> Amsterdam -> Paris -> Bordeaux -> Madrid -> Marseille -> Genf -> Innsbruck -> Muenchen -> Salzburg -> Villach -> Venedig -> Siena -> Rom -> Athen -> Wien

Unser Benchmark - Route:

Ausblick Einbinden einer Hash-Tabelle Multi-Tasking Effizienzsteigerung Einbinden einer Möglichkeit, dass Wahl für Verteilung von alpha automatisch an Ergebnisverteilung angepasst wird Package-Dokumentation

Zum Abschluss … … Live-Demonstration in R