Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 13.04.00 Suche des kürzesten Weges in einem Netz.

Slides:



Advertisements
Ähnliche Präsentationen
Vortrag von Stephanie Weirauch Jens Pleger Peter Jancke Frank Wejmelka
Advertisements

Grundlagen des A*-Algorithmus und Anwendung in der Routenplanung
Algorithm Engineering
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (26-Graphenalgorithmen: Wiederholung und Übung) Prof. Th. Ottmann.
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken X Christian Schindelhauer
Übung 6.1Turing-Maschine 1.Machen Sie sich mit der Funktionsweise des Busy Beaver-Programms vertraut Vollziehen sie die 11 Schritte der ersten Turing-Tabelle.
WS Algorithmentheorie 13 - Kürzeste (billigste) Wege Prof. Dr. Th. Ottmann.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (27 – Kürzeste Wege) Prof. Th. Ottmann.
Informatik II, SS 2008 Algorithmen und Datenstrukturen Vorlesung 4 Prof. Dr. Thomas Ottmann Algorithmen & Datenstrukturen, Institut für Informatik Fakultät.
Vorlesung Informatik 2 Algorithmen und Datenstrukturen (17 – Bäume: Grundlagen und natürliche Suchbäume) Prof. Th. Ottmann.
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen (21 – Kürzeste Wege) T. Lauer.
Algorithmentheorie 12 – Spannende Bäume minimalen Gewichts
Algorithmen und Datenstrukturen
Geoinformation II Vorlesung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Übung Diskrete Mathematik SS 2003 Segmentschnitt I.
Klausur „Diskrete Mathematik II“
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung In welcher Masche liegt der Punkt p?
Vortrag über Graphen Von Jörg Hendricks.
Diskrete Mathe 9 Vorlesung 9 SS 2001
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 1 SS 2001 Algorithmus von Dijkstra.
Effiziente Algorithmen
Effiziente Algorithmen
Effiziente Algorithmen
Vier/Fünf-Farben-Satz
Diskrete Mathematik II
Diskrete Mathematik II
Geoinformation II Vorlesung 4 SS 2001 Voronoi-Diagramme.
Konstruktion der Voronoi-Diagramme II
Geoinformation II (6. Semester)
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 5 SS 2001 Segmentschnitt II (n Segmente)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 7 SS 2000 Punkt-in-Polygon-Verfahren I (Trapezkarte)
Universität zu Köln Softwaretechnologie II (Teil 1): Simulation und 3D Programmierung Wintersemester 2011/2012 Dozent: Prof. Dr. phil. Manfred Thaller.
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Animation von Dijkstra
Animation von Dijkstra
Jan Hinzmann – – GIS Praxis II – Slide 1/10 Der Algorithmus von Dijkstra (Berechnung kürzester Wege in bewerteten Graphen) GIS Praxis II, Jan Hinzmann,
Vorlesung Binärer Suchbaum II-
Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms II
Informatik Datenstruktur Graph 3.3 Durchlaufen von Graphen
Das Traveling Salesman Problem (TSP)
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation III Vorlesung 1 WS 2001/02 Punkt-in-Landkarte I (Streifenkarte)
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 6 SS 2001 Segmentschnitt III.
Diskrete Mathematik II
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Vorlesung Einführendes Beispiel-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd Foliendesign:
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung April 2000 AVL-Bäume.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik I Vorlesung Rekursion-
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Datenstrukturen für den Algorithmus von.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II Vorlesung 4 WS 01/02 Quadtrees.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Foliendesign: Jörg Steinrücken & Tobias Kahn Vorlesung
Diskrete Mathe II Übung IKG - Übung Diskrete Mathe II – Jörg Schmittwilken 2 Gruppeneinteilung Gruppe A: Mo 12:00 – 12:45 Uhr –bis einschließlich.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Voronoi-Diagramme.
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung der Algorithmus von Floyd.
Geoinformation II 6. Sem. Vorlesung April 2000 Geometrische Algorithmen - ein einführendes, größeres Beispiel für ein Semester-begleitendes Programmier.
Der A*-Algorithmus.
Gliederung der Vorlesung
Programmiersprachen II Vorbesprechung Klausur Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Programmiersprachen II Graph_Algorithmen Einführung Prof. Dr. Reiner Güttler Fachbereich GIS HTW.
Diskrete Mathematik II
Der Dijkstra-Algorithmus
 Präsentation transkript:

Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung Suche des kürzesten Weges in einem Netz Foliendesign: cand. geod. Jörg Steinrücken

2 Übersicht über das Semester zwei besonders wichtige Algorithmen für GIS –kürzeste Wege in einem Netz –Überlagerung von Netzen, Bestimmung aller Schnittpunkte effiziente Zugriffsstrukturen für räumliche Objekte

3 Übersicht Vorlesung I der kürzeste Weg von A nach B in einem Netz Beispiel Problemstellung Animation des Algorithmus Formulierung des Algorithmus in Pseudocode erforderliche Datenstrukturen

4 Algorithmus von Dijkstra: Beispiel

Do Ha W Du K D

6 Do Ha W Du K D Beispiel

7 Kürzeste Wege: Idee Gegeben: Gerichteter Graph, dessen Kanten mit Zahlen (Kosten, z.B. km oder min.) beschriftet sind Aufgabe: Berechnung des kürzesten Weges x  z von einem Startknoten x zu einem Zielknoten z erste Idee: Berechne alle Wege und wähle den kürzesten Beobachtung: wenn der kürzeste Weg von x nach z über y führt, sind die Teilwege x  y und y  z ebenfalls kürzeste Wege effiziente Lösung: berechne alle kürzesten Wege und wähle den von x nach z aus Algorithmus von Dijkstra: jeder Schritt sitzt („Greedy“-Algorithmus)

8 Do Ha W Du K D Algorithmus von Dijkstra: Beispiel

9 Do Ha Du W K D 8015 Do Du Ha Do Algorithmus von Dijkstra: Beispiel Minimaler Abstand von Do Du 80 Ha 20

10 Do Ha W Du K D W Algorithmus von Dijkstra: Beispiel Do DuHa 8020 W 15 Minimaler Abstand von DO

11 Do Ha W Du K D W Algorithmus von Dijkstra: Beispiel abgearbeitet noch in Arbeit noch nicht betrachtet

12 Do DuHa W Do Ha W Du K D Bereits vorhanden Du Kürzester Weg Algorithmus von Dijkstra: Beispiel

13 Du Do Ha W Do Ha W Du K D K D Du Algorithmus von Dijkstra: Beispiel 30 K 80 D

14 DuDK Do Ha W D Do Ha W Du K D Bereits vorhanden kürzester Weg Algorithmus von Dijkstra: Beispiel

15 DuK Do Ha W D D Do Ha W Du K D Algorithmus von Dijkstra: Beispiel 20

16 20 Do Ha W Du K D Bereits vorhanden Algorithmus von Dijkstra: Beispiel kürzester Weg DuK Do Ha W D

17 Do Ha W Du K D D K Algorithmus von Dijkstra: Beispiel KDu Do Ha W D

18 Do Ha W D K Du K Do Ha W Du D D K K Algorithmus von Dijkstra: Beispiel 15

19 Formulierung des Algorithmus Bezeichnungen S Startknoten K beliebiger Knoten im Graphen dist (K) Abstand des Knotens K vom Startknoten S GRÜN Knotenmenge BLAU Knotenmenge succ (K) Menge der Nachfolger(-Nachbarn) von K  für alle Elemente dist (K, K‘) Distanz (Zeit) der Kante (K, K‘)

20 Formulierung des Algorithmus algorithm Dijkstra (S) //berechne alle kürzesten Wege von S aus} BLAU =  ; GRÜN = {S}; dist(S) = 0; while( GRÜN   ) { wähle K  GRÜN, so daß  K‘  GRÜN: dist(K)  dist(K‘); färbe K blau; for( K i  succ(K) ) { if (K i  (GRÜN  BLAU) //noch nicht besuchter Knoten färbe die Kante (K,K i ) rot; färbe K i grün; dist(K i ) = dist(K) + dist(K,K i ); }

21 Formulierung des Algorithmus dist(K i ) = dist(K) + dist(K,K i ); } else { if(K i  GRÜN) { // K i erneut erreicht if(dist(K i ) > dist(K) + dist(K,K i )) { färbe die Kante (K,K i ) rot; färbe die bisher rote Kante zu K i grün; dist(K i ) = dist(K) + dist(K,K i ); } else { färbe (K,K i ) grün }}} else { färbe (K,K i ) grün }}} // k i  BLAU

22 soweit der Algorithmus, aber... wie finde ich schnell alle Nachfolger eines Knoten? –for( K i  succ(K) )... wie finde ich schnell –K  GRÜN, so daß  K‘  GRÜN: dist(K)  dist(K‘); Datenstruktur für den Graphen Datenstruktur für die grünen (aktiven) Knoten der schrittweise Entwurf des Algorithmus läßt diese Fragen zunächst absichtlich offen zugunsten der Konzentration auf die wesentliche Idee

23 Ist der Algorithmus denn überhaupt korrekt? Für jeden grünen Knoten gilt: unter den rot-grünen Wegen ist der rote der kürzeste. Beweis: Induktion über die Folge der blau gefärbten Knoten Für jeden blauen Knoten gilt: unter allen Wegen ist der rote der kürzeste. Beweis: Induktion über die Folge der blau gefärbten Knoten Aufgabe: –Plausibilität am Beispiel –versuchen Sie einen allgemeingültigen Beweis

Schönen Dank für Ihre Aufmerksamkeit und Auf Wiedersehen