Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 4 SS 2002 Dijkstra-Erweiterungen zur Behandlung realer.

Ähnliche Präsentationen


Präsentation zum Thema: "Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 4 SS 2002 Dijkstra-Erweiterungen zur Behandlung realer."—  Präsentation transkript:

1 Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 4 SS 2002 Dijkstra-Erweiterungen zur Behandlung realer Straßennetze

2 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 42 Überblick: zwei Dijkstra - Erweiterungen Dijkstra: Finden kürzester Wege in Graphen Reale Netze stellen besondere Anforderungen –Größe des Netzwerkes (Effizienz) Dijkstra-Erweiterung "Dijkstra mit Geometrie" –Straßenverkehrsordnung (Abbiege- und Wendeverbote) Übergang von Netzen zu Graphen Ansätze: –Modifikation des Graphen –Modifikation von Dijkstra nur kurzer Ausblick

3 Do Ha W Du K D

4 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 44 Do Ha W Du K D Beispiel

5 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 45 Do Ha W Du K D Algorithmus von Dijkstra: Beispiel

6 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 46 Do Ha Du W K D 8015 Do Du Ha Do Algorithmus von Dijkstra: Beispiel Minimaler Abstand von Do Du 80 Ha 20

7 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 47 Do Ha W Du K D W Algorithmus von Dijkstra: Beispiel Do DuHa 8020 W 15 Minimaler Abstand von DO

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

9 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 49 Do DuHa W Do Ha W Du K D Bereits vorhanden Du Kürzester Weg Algorithmus von Dijkstra: Beispiel

10 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 410 Du Do Ha W Do Ha W Du K D K D Du Algorithmus von Dijkstra: Beispiel 30 K 80 D

11 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 411 DuDK Do Ha W D Do Ha W Du K D Bereits vorhanden kürzester Weg Algorithmus von Dijkstra: Beispiel

12 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 412 DuK Do Ha W D D Do Ha W Du K D Algorithmus von Dijkstra: Beispiel 20

13 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Do Ha W Du K D Bereits vorhanden Algorithmus von Dijkstra: Beispiel kürzester Weg DuK Do Ha W D

14 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 414 Do Ha W Du K D D K Algorithmus von Dijkstra: Beispiel KDu Do Ha W D

15 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 415 Do Ha W D K Du K Do Ha W Du D D K K Algorithmus von Dijkstra: Beispiel 15

16 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 416 Algorithmus von Dijkstra - Wiederholung algorithmus Dijkstra (S) BLAU = ; GRÜN = {S}; dist(S) = 0; while( GRÜN ) wähle Knoten K aus GRÜN mit kleinstem dist(K) nimm K aus GRÜN heraus und färbe ihn BLAU; für jeden Nachfolger K i von K wenn K i noch nicht besucht färbe Kante von K zu K i rot und K i grün; dist(K i ) = dist(K) + dist(K,K i ) wenn Ki GRÜN (erneut erreicht) wenn neuer Weg kürzer als alter Weg setze neuen Weg rot und alten grün setze dist(K i ) auf neuen Wert färbe K i BLAU wenn K i bereits BLAU färbe Kante von K zu K i grün

17 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 417 Eigenschaften von Dijkstra - Wiederholung Ermittelt kürzeste Wege von einem Startknoten zu allen anderen Praxis: kürzester Weg von Startknoten zu einem Zielknoten man kann aufhören, sobald Zielknoten blau ist (kürzester Weg gefunden) dennoch....

18 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 418 Dijkstra: Richtungslos Hamburg Frankfurt Brüssel Prag Berlin Mailand München kürzester Weg von Frankfurt nach Hamburg Wien

19 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 419 Dijkstra: Richtungslos Hamburg Frankfurt Brüssel Prag Berlin Mailand München kürzester Weg von Frankfurt nach Hamburg Wien

20 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 420 Dijkstra: Richtungslos Hamburg Frankfurt Brüssel Prag Berlin Mailand München kürzester Weg von Frankfurt nach Hamburg Wien

21 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 421 Dijkstra: Richtungslos Hamburg Frankfurt Brüssel Prag Berlin Mailand München kürzester Weg von Frankfurt nach Hamburg Wien

22 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 422 Dijkstra: Richtungslos Hamburg Frankfurt Brüssel Prag Berlin Mailand München kürzester Weg von Frankfurt nach Hamburg Wien

23 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 423 Dijkstra: Richtungslos kürzester Weg von Frankfurt nach Hamburg Alle Knoten innerhalb des Kreises werden bearbeitet Hamburg Frankfurt Brüssel Prag Berlin Mailand München Wien

24 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 424 Schön wäre... Hamburg Frankfurt Brüssel Prag Berlin Mailand München kürzester Weg von Frankfurt nach Hamburg

25 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 425 Erweiterung von Dijkstra Dijkstra nutzt die Geometrie der Knoten/Kanten nicht aus richtungslos: Die Richtung von Start- zum Zielknoten wird nicht berücksichtigt Erweiterung von Dijkstra "Dijkstra mit Geometrie"

26 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Idee D K HH 20 BN 30 Gesucht: kürzester Weg von K nach HH Dijkstra wählt BN aus (Weg zu K minimal) Dijkstra mit Geometrie wählt D aus (Summe von Weg zu K und Abstand zu HH minimal) Richtung: minimaler Abstand zu Zielknoten = =

27 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 427 Von Dijkstra zu "Dijkstra mit Geometrie" Nur eine Änderung: Auswahl des nächsten zu bearbeitenden (grünen) Knotens –Dijkstra: Knoten mit minimalem besten bisher gefundenen Weg –Dijkstra mit Geometrie: Knoten, bei dem Summe aus besten bisher gefundenem Weg und Euklidscher Abstand des Knotens zu Zielknoten minimal ist Beispiel....

28 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 Gesucht: Kürzester Weg von S nach E

29 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2

30 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7

31 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 6

32 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 2

33 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 Summe minimal 2

34 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6

35 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6

36 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 3

37 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 9+0=9

38 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 9+0=9 Summe minimal

39 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 9+0=9

40 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 9+0=9

41 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 6+0=6

42 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 6+0=6 9+4=13

43 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 6+0=6 9+4=13 Summe minimal

44 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung Dijkstra mit Geometrie: Beispiel S E 2 1+6=7 2+6=8 3+2=5 4+2=6 7+3=10 6+0=6 9+4=13 Fertig, da Zielknoten E blau kürzester Weg gefunden

45 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 445 Dijkstra mit Geometrie: Abstand Euklidscher Abstand: Schätzung für den unbekannten noch zurückzulegenden Weg einfach zu ermitteln Problem: berücksichtigt nicht –tatsächlichen Verlauf von Wegen –Topographie (Flüsse, Gebirge, etc.)

46 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 446 Dijkstra mit Geometrie: Heuristik Einbeziehung der Geometrie/Richtung: "Heuristik" Heuristik: Daumenregel, die beim Suchen hilft findet oft keine optimale Lösung, sondern nur Annäherungen an optimale Lösung Dijkstra mit Geometrie: optimale Lösung, wenn –Euklidscher Abstand zu Zielknoten kleiner als tatsächlicher kürzester Weg OK, wenn Kantenkosten = Weglänge Kantenkosten = Fahrtzeit? S E

47 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung S 3 E Beispiel: Kann die Richtung auf den falschen Weg führen? 10 Gesucht: kürzester Weg von S nach E

48 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung S 3 E Beispiel: Kann die Richtung auf den falschen Weg führen? = =20 Gesucht: kürzester Weg von S nach E

49 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung S 3 E Beispiel: Kann die Richtung auf den falschen Weg führen? = =20 Gesucht: kürzester Weg von S nach E 31+0=31

50 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung S 3 E Beispiel: Kann die Richtung auf den falschen Weg führen? = =20 Gesucht: kürzester Weg von S nach E 31+0= =30

51 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung S 3 E Beispiel: Kann die Richtung auf den falschen Weg führen? = =20 Gesucht: kürzester Weg von S nach E 31+0= = =30

52 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung S 3 E Beispiel: Kann die Richtung auf den falschen Weg führen? = =20 Abstand von 3 zu E größer als Länge der Kante von 3 zu E E würde vor 3 ausgewählt (nicht optimal) 31+0= = =30

53 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 453 Resümee Algorithmus "Dijkstra mit Geometrie" Erweiterung von Dijkstra durch Einbeziehung der Richtung zum Ziel (Heuristik) zielgerichtete Suche findet optimale Lösung, wenn Kantenkosten=Weglänge Im Bereich Informatik/"Künstliche Intelligenz" unter dem Namen A* (A Stern) bekannt Hamburg Frankfurt Mailand Hamburg Frankfurt

54 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 454 Teil 2: Dijkstra - Straßenverkehrsordnung

55 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 455 Abbiegeverbote C D AZ S B Abbiegeverbot: Wenn man von S kommt, darf man bei A nicht links abbiegen

56 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 456 Abbiegeverbote und Dijkstra C D AZ S B

57 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 457 Abbiegeverbote und Dijkstra C D AZ S B

58 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 458 Abbiegeverbote und Dijkstra C D AZ S B

59 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 459 Abbiegeverbote und Dijkstra C D AZ S B Da A bereits abgearbeitet (blau) ist, bricht Algorithmus hier ab (findet keine Lösung)

60 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 460 Abbiegeverbote und Dijkstra C D AZ S B Problem 1: Dijkstra findet keine Lösung Problem 2: Lösungspfad (rot) enthält Zyklus!

61 Gerhard Gröger - Diskrete Mathematik II - 2. Semester - SS Vorlesung 461 Lösungsansätze Änderung des Algorithmus Änderung des Graphen –Transformation des Graphen mit Abbiegeverbot in einen ohne –dann Anwendung von Standard-Dijkstra AA1 A2

62 Fortsetzung in der Übung.....


Herunterladen ppt "Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Diskrete Mathematik II Vorlesung 4 SS 2002 Dijkstra-Erweiterungen zur Behandlung realer."

Ähnliche Präsentationen


Google-Anzeigen