Geoinformatik 2 (GI-2) Kapitel 7 Ausgewählte Geo-Algorithmen - Wege

Größe: px
Ab Seite anzeigen:

Download "Geoinformatik 2 (GI-2) Kapitel 7 Ausgewählte Geo-Algorithmen - Wege"

Transkript

1 Geoinformatik 2 (GI-2) Kapitel 7 Ausgewählte Geo-Algorithmen - Wege Univ.-Prof. Dr.-Ing. Wolfgang Reinhardt AGIS / Inst. Für Angewandte Informatik (INF4) Universität der Bundeswehr München Wolfgang.Reinhardt@unibw.de

2 Routing Traveling Salesman Problem Map Matching Inhalte 2 / 58

3 Kürzester, Schnellster, Wirtschaftlichster Weg ROUTING 3 / 58

4 Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über vermaschte Nachrichtennetze. Insbesondere in paketvermittelten Datennetzen ist hierbei strenggenommen zwischen den beiden verschiedenen Prozessen Routing und Forwarding zu unterscheiden. Das Routing bestimmt den gesamten Weg eines Nachrichtenstroms durch das Netzwerk; das Forwarding beschreibt hingegen den Entscheidungsprozess eines einzelnen Netzknotens, über welchen seiner Nachbarn er eine vorliegende Nachricht weiterleiten soll. Häufig werden jedoch Routing und Forwarding unter dem Begriff Routing miteinander vermengt; in diesem Fall bezeichnet Routing ganz allgemein die Übermittlung von Nachrichten über vermaschte Nachrichtennetze. Routing Algorithmen 4 / 58

5 Beispiel Kürzester, schnellster, Weg, hier zwischen München und Stuttgart Vorhandenes Netz in Knoten/Kantenstruktur Gewichtete Kanten 5 / 58

6 Begriffe, Definitionen Graph Ein Graph ist in der Graphentheorie ein Gebilde aus Knoten (auch Ecken oder Punkte), die durch Kanten verbunden sein können. Ein Graph G ist ein geordnetes Paar zweier Mengen: G = (V,E) Dabei bezeichnet V die Menge der im Graph enthaltenen Knoten und E die Menge der Kanten des Graphen. Die Bezeichnungen der Mengen entstammen dem Englischen: V für vertex (engl. für Knoten ) und E für edge (engl. für Kante ). Gerichteter Graph Ein Graph G = (V,E) heißt gerichtet, wenn zu jedem e є E das durch eine definierte Abbildung Ψ zugeordnete Paar (v,v') - geordnet ist (v,v' є V). Anschaulich bedeutet ein gerichteter Graph, dass sich die Kante von einem Knoten zu einem Knoten durch einen Pfeil darstellen lässt. (Quelle: V E Routing Algorithmen 6 / 58

7 Prinzip von Routing Algorithmen im GIS Bereich Suche nach einer optimalen Verbindung von einem Start- zu einem Zielpunkt unter einer bestimmten Kostenfunktion /-modell Kürzester Weg Schnellste Verbindung Behindertengerechte Route Andere Ziel- / Kostenfunktionen in einem Graphen bestehend aus Knoten und Kanten, wobei die Kanten mit einem Gewicht (z.b. Strecke, Zeit ) versehen sind Routing Algorithmen 7 / 58

8 Routing Verfahren (Auswahl) Dijkstra Algorithmus Benannt nach seinem Erfinder Edsger W. Dijkstra Standardalgorithmus für Routing A* Algorithmus Informative Suche, der Algorithmus greift auf eine Heuristik zurück Zielgerichtete Suche, mit Punkten, die am wahrscheinlichsten zum Ziel führen Findet einen kürzesten Weg, nicht den kürzesten Weg Floyd- Warshall Algorithmus Weitere Routing Algorithmen 8 / 58

9 Dijkstra Edsger Wybe Dijkstra (* 11. Mai 1930 in Rotterdam; 6. August 2002 in Nuenen, Niederlande) war ein niederländischer Informatiker (Mathematiker). Professor in Eindhoven, Tätigkeit in Leiden, Amsterdam. Er war der Wegbereiter der strukturierten Programmierung. (Quelle: erhielt er den Turing Award. 9 / 58

10 Dijkstra Algorithmus Kürzester Weg von A nach B in einem Graphen Routing Algorithmen 10 / 58

11 Dijkstra Algorithmus Geg.: Gerichteter Graph G, dessen Kanten mit Kosten attributiert sind (z.b. Strecke oder Zeit) Aufgabe: Berechnung des kürzesten Weges von einem Startknoten s zu einem Zielknoten z Einfachste Idee: alle Wege berechnen und den Kürzesten auswählen Feststellung: wenn der kürzeste Weg von s nach z über y geht, sind die Teilstücke auch immer der kürzeste Weg zwischen den beiden Punkten Dijkstra: Berechnung der kürzesten Wege von einem beliebigen Startpunkt zu allen anderen Punkten des Graphen Routing Algorithmen 11 / 58

12 Dijkstra Algorithmus Beispiel: Kürzester Weg von Do nach Du Startpunkt: Do Do Ha W X Du Du Neue kürzeste Verbindung nach Du über W und Ha längerer Weg Routing Algorithmen 12 / 58

13 13 / 58 Routing Algorithmen Dijkstra Algorithmus ein Beispiel S S S S S S S S S Grüne Knoten: in Arbeit /bearbeitet Rote Knoten: Rand des jeweiligen TG Grüne Kanten: Kürzeste Wege

14 Dijkstra Algorithmus Beschreibung des Algorithmus Bildung eines Teilgraphen TG in G, ausgehend von s - TG beschreibt den erkundeten Teil von G, bestehend aus: Allen Knoten die mit s verbunden sind, dabei bedeuten: Grüne Knoten: In Arbeit / bearbeitet Rote Knoten: Rand vom TG - Markierung der Kanten innerhalb des TG Grüne Kanten: Bilden kürzeste Wege Rote Kanten: längere (eliminierte) Wege - In jedem Knoten wird der Abstand zu s verwaltet - TG wächst, indem in jedem Schritt der Randknoten mit minimalen Abstand von s ins Innere von TG übernommen wird - Nachfolger übernommener Knoten werden Randknoten - Kürzeste Pfade zu grünen Knoten, die erneut erreicht werden, sind ggf. zu korrigieren Routing Algorithmen 14 / 58

15 Dijkstra Algorithmus Knoten: Blau -> Rot (Beispiel) Routing Algorithmen 15 / 58

16 Dijkstra Algorithmus Eigenschaften / Offene Fragen Algorithmus ist korrekt (Beweis-> Literatur) Zeitkomplexität: mit m - Anzahl der Kanten und n - Anzahl der Knoten: O (m + n * log n ) bei Verwendung Heap Wie finden wir schnell - Alle Nachfolger eines Knoten? - Aktive Knoten? Wir benötigen : - Datenstrukturen für den Graphen - Datenstruktur für die aktiven Knoten und verbindungen Routing Algorithmen 16 / 58

17 Dijkstra Algorithmus Datenstrukturen Datenstruktur für den Graphen (mit Kosten) - Variante 1: Adjazenzmatrix - Variante 2: Adjazenzliste Datenstruktur für die Menge der aktiven Knoten: Heap auf Heap wird in dieser Vorlesung als Datenstruktur nicht weiter eingegangen (bekannt) Routing Algorithmen 17 / 58

18 Dijkstra Algorithmus Adjazenzmatrix Definition: Knoten, die durch eine Kante verbunden sind, heißen benachbart oder adjazent Definition: Die n x n Matrix A = {a ij } heißt Adjazenzmatrix mit false. a ij = true, falls v i und v j adjazent, sonst Routing Algorithmen 18 / 58

19 Dijkstra Algorithmus Adjazenzmatrix mit Kosten Bei gewichteten Graphen lassen sich die Kosten k direkt in die Adjazenzmatrix eintragen: a ij = k, falls v i und v j adjazent, sonst. Beachte: alle Diagonalelemente sind Null. Vorteil: Möglichkeit, in der Laufzeit O(1) festzustellen, ob eine Kante von v i nach v j existiert. Nachteil: hoher Platzbedarf O(n²) Routing Algorithmen 19 / 58

20 Dijkstra Algorithmus Beispiel zur Adjazenzmatrix Do Du Ha W D K Do Du 0 20 Ha 0 15 W D 0 15 K 0 Routing Algorithmen 20 / 58

21 Dijkstra Algorithmus Adjazenzliste Für jeden Knoten wird eine Liste seiner (Nachfolger-) Nachbarknoten abgespeichert. Der Zugriff auf die Listen erfolgt über ein Array der Länge n (n = Anzahl der Knoten) Vorteil: geringer Platzbedarf: O(n+m) (m Anzahl der Kanten) alle k Nachfolger eines Knotens sind in der Zeit O(k) erreichbar Nachteil: Um zu prüfen, ob v i und v j benachbart sind, muss die Adjazenzliste von v i durchlaufen und nach v j gesucht werden Aber: Für Dijkstra ist eine Adjazenzliste ideal Routing Algorithmen 21 / 58

22 Dijkstra Algorithmus Beispiel zur Adjazenzliste Do Du Ha W D K Do Du 0 20 Ha 0 15 W D 0 15 K 0 Do Du Ha W D K Du 80 Ha 20 Routing Algorithmen 22 / 58

23 Dijkstra Algorithmus Erweiterung Dijkstra zur Behandlung von realen Straßennetzen Reale Netze stellen besondere Anforderungen - Größe des Netzwerkes (Effizienz) Dijkstra mit Geometrie - Straßenverkehrsordnung (Abbiege- und Wendeverbote) Abbildung realer Straßennetze auf Graphen Ansätze: Modifikation des Graphen Modifikation von Dijkstra Routing Algorithmen 23 / 58

24 Dijkstra Algorithmus Dijkstra Erweiterung Dijkstra nutzt die Geometrie der Knoten/Kannten nicht aus Richtungslos: Dijkstra berücksichtigt nicht die Richtung von Startknoten zum Zielknoten Erweiterung (Heuristik): Dijkstra mit Geometrie verwendet geometrische Informationen, das bedeutet, dass der Weg in die andere Richtung nur noch halb so weit mitbestimmt wird. Worst case: keine Einsparung Führt zum A* Algorithmus, dieser verwendet der eine Schätzfunktion (Heuristik), um zielgerichtet zu suchen Routing Algorithmen 24 / 58

25 Dijkstra Algorithmus Anwendung in realen Netzen Abbiegeverbot - Änderung des Algorithmus - Änderung des Graphen Transformation des Graphen mit Abbiegeverbot in einen Graphen ohne Abbiegeverbot (s. Literatur) Anschließend Anwendung von Standard Dijkstra Einbahnstraßen - Gleiches Prinzip wie oben Standardalgorithmus für Routing Routing Algorithmen 25 / 58

26 Optimale Route: Problem des Handlungsreisenden TRAVELLING SALESMAN PROBLEM (TSP) 26 / 58

27 Das Problem Gegeben: n Orte mit geogr. Position Gesucht: die optimale Route (für den Nikolaus) Optimal: möglichst kurze/kostengünstige Reisestrecke Historie: Erste Erwähnung um 1830 explizite Erwähnung als math. Optimierungsproblem durch Karl Menger (1930) Ab 1950 große wiss. Popularität 27 / 58

28 Lösungsansätze Modellierung als Graph Beispiel: mögliche Rundreisen für 4 Städte 28 / 58

29 Lösungsansätze Die Holzhammer-Methode (auch brute-force oder naivemethode) Bei n Orten: (n 1)! = (n 1) verschiedene Möglichkeiten! Mit Paaren von ident. Routen (s.o), d.h: (n-1)! / 2 Beispiele: Nur für kleine n anwendbar! 29 / 58

30 Lösungsansätze Ansätze über Dynamisches Programmieren (s. Lit.) Strenge Lösung Steigt exponentiell mit Anzahl von Zwischenstationen n Für größere Anzahl von Zwischenstationen (ab. ca ) unbrauchbar 30 / 58

31 Lösungsansätze über MST Einsatz von Verfahren, die nicht unbedingt die optimale Rundreise finden, aber eine relativ gute Lösung berechnen: Heuristiken Beispiel: Minimum Spanning Tree (MST) Gegeben sei ein Graph G = (V,E) MST ist dann ein (bzw. jeder) Subgraph von G, der alle Knoten über eine Folge von Kanten verbindet. Beispiel eines Graphen und eines MST Standard Algorithmen: Prim's algorithm and Kruskal's algorithm (Greedy Algorithmen) 31 / 58

32 Beispiel: Algorithmus von Kruskal Ausgangsgraph Auswahl der kürzesten Kante (Hier A-D), (zufällig, bei mehreren gleichen) Auswahl der nächsten kürzesten Kante (hier C-E), die mit den vorher ausgewählten keinen Kreis bilden 32 / 58

33 Beispiel: Algorithmus von Kruskal Auswahl der nächsten kürzesten Kante (hier D-F), die mit den vorher ausgewählten keinen Kreis bilden Auswahl der nächsten kürzesten Kante (hier A-B), die mit den vorher ausgewählten keinen Kreis bilden Auswahl der nächsten kürzesten Kante (hier B-E), die mit den vorher ausgewählten keinen Kreis bilden 33 / 58

34 Beispiel: Algorithmus von Kruskal Auswahl der nächsten kürzesten Kante (hier E-G), die mit den vorher ausgewählten keinen Kreis bilden Ergebnis (MST) Ablauf: Beweis und weitere Eigenschaften s. Lit. 2 Wesentliche Schritte: Sortierung und Kreisprüfung 34 / 58

35 Travelling Salesman Problem (TSP) Minimum Spanning Tree (MST) Nun löst das aber noch nicht das TSP-Problem! Aber es hilft uns weiter 35 / 58

36 Lösungsansatz TSP Geg.: vollständigen Graph G = (V,E) wobei V die Menge der Städte ist und G =V V alle direkten Reisewege darstellt Nächster Schritt: Berechnung eines MST (40. Algorithmus) MST 36 / 58

37 Lösungsansatz TSP (Zwischenbemerkungen) Eine Rundreise wird durch einen Kreis in G dargestellt, der jeden Knoten genau einmal enthält. Ein solcher Kreis wird auch als Hamilton-Kreis bezeichnet. Es gibt einen einfachen Zusammenhang zwischen möglichen Rundreisen (d.h. Hamilton-Kreisen) und speziellen Teilgraphen von G, den sogenannten aufspannenden Bäumen (MST). Wie oben dargestellt ist ein minimal aufspannender Baum (MST) ein kreisfreier Teilgraph, der alle Knoten von G miteinander verbindet und bei dem die Summe aller Kantenkosten minimal sind. Wenn man aus einer Rundreise (z.b. für TSP) eine beliebige Kante entfernt, so erhält man einen sogenannten Hamilton-Pfad. Da ein Hamilton-Pfad die Bedingungen eines aufspannenden Baumes (MST) erfüllt, sind dessen Gesamtkosten mindestens so groß wie die eines minimal aufspannenden Baumes. Mit anderen Worten, die Gesamtkosten eines minimal aufpannenden Baumes sind kleiner oder gleich den Gesamtkosten eines bestmöglichen Hamilton-Pfades und damit auch einer optimalen Rundreise. D.h. wir können die TSP-tour über den MST konstruieren! 37 / 58

38 Algorithmus TSP Im nächsten Schritt konstruiert man aus dem Baum T (MST) eine erste Tour, indem man T einfach entlang seiner Kanten einmal umrundet (siehe Abbildung). Die Gesamtlänge dieser Reise ist offensichtlich genau doppelt so groß ist wie die Kosten von T, da man jede Kante zweimal verwendet. Aus den Zwischenbemerkungen schließen wir, dass die Gesamtlänge dieser Reise höchstens doppelt so groß wie die Länge einer optimalen TSP-Rundreise ist. 38 / 58

39 Algorithmus TSP Die im letzten Schritt konstruierte Tour ist offensichtlich nicht optimal und eigentlich sogar keine korrekte Rundreise, da sie jeden Knoten zweimal besucht. Man kann sie aber leicht in eine korrekte und im allgemeinen auch kürzere Rundreise umwandeln, indem man jeweils drei aufeinanderfolgende Knoten a,b,c untersucht und testet, ob man die beiden Kanten a!b!c durch die Abkürzung a!c ersetzen kann, ohne dass der Knoten b isoliert wird. Das Resultat dieses Schrittes löst unser Problem des TSP! 39 / 58

40 Lösungsansatz TSP Der Algorithmus (Heuristik) findet eine Rundreise, die nicht mehr als doppelt so lang wie die kürzeste Reise ist! Beweise und weitere Eigenschaften s. Lit. ( (40. Algorithmus) Ein Demo-Programm, mit dem die Abbildungen dieses Artikels erzeugt wurden Weitere Links: Wikipedia: Problem des Handlungsreisenden Eine Einführung von Grötschel und Padberg (Spektrum der Wissenschaft) 40 / 58

41 Zuordnung von Positionen, Trajektorien zu GIS-Daten / digitalen Karten MAP MATCHING 41 / 58

42 Ziel Mit Hilfe von Map Matching Verfahren werden die mittels Sensoren aufgenommenen Wegestücke / Punkte auf die Geometrien der Vektordaten im Navigationssystem bezogen Map Matching Verfahren spielen eine wichtige Rolle, z.b bei der Fahrzeugnavigation Visualisierung der gematchten Position 42 / 58

43 Beispiel Gegeben: Punkte Trajektorien Bzw. deren Ableitungen Gesucht: Zuordnung zum Netz der Vektordaten Punkte Pfad (Folge von Kanten) Zu beachten: Art der Sensoren (z.b. GPS / INS) Genauigkeit der Daten und Sensoren 43 / 58

44 Aufgabe Auf welchem Wegestück ( Kante) befinde ich mich zur Zeit? Wo befinde ich mich auf dem Wegestück (z.b. Straßenabschnitt)? Wird z.b. für die Navigationsanweisungen benötigt 44 / 58

45 Begriffsdefinitionen Map Matching Mit Kartenabgleich, Karteneinpassung oder auch Map Matching wird ein Verfahren bezeichnet, welches die durch eine Ortung gemessene Position eines Objektes mit den Ortsinformationen einer digitalen Karte abgleicht. (Quelle: Ortung Unter Ortung versteht man die Bestimmung der Position eines Objekts, was beispielsweise Personen, Fahrzeuge (Schiff, Flugzeug, Rakete, Auto), Gegenstände, Signale oder Krankheitsherde sein können. Besonders bedeutsam ist dies für die Navigation. (Quelle: 45 / 58

46 Ortung in Fahrzeugnavigationssystemen Schematische Darstellung GIS heutige low cost Navigationssysteme 46 / 58

47 Ortung in Fahrzeugnavigationssystemen Quelle: Meyer zu Hörste, Michael and Gerlach, DLR, Katrin, NavAge 2008) 47 / 58

48 Sensorik (1) Radsensoren Bestimmung der Geschwindigkeit des KFZ und der zurückgelegten Strecke Nutzung der ABS, ESP Signale; elektronisches Tacho-Signal Relativ ungenau Moderne Odometer (Correvit) Bildverarbeitungsbasiert Wesentlich höhere Genauigkeit Elektronischer Kompass Orientierung des KFZ bezüglich magnetisch Nord 48 / 58

49 Sensorik (2) Kreisel Bestimmung von Richtungsänderungen Verschiedene Arten von Kreiseln (Gyro): - Mechanische Kreisel - Piezoelektronische Vibrationskreisel - Faseroptische Kreisel GPS Eignet sich im urbanen Gebieten nur bedingt zur Fahrzeugnavigation, durch Abschattungen, Mehrwegeeffekte und Änderungen der Satellitenkonstellation treten immer Sprünge in den Koordinaten auf DGPS (differentielles GPS) TrägheitsNavigationsSystem (INS) / MEMS (Micro-Electronic-Mechanical Systems) Kombination mehrerer Sensoren: z. B. durch Kalman Filter 49 / 58

50 Zuordnung von Punkten Bestimmung der nächstliegenden Kante Projektion auf die nächstliegende Kante Kante A Position auf Kante Geg. Position Kante B 50 / 58

51 Darstellungen der zurückgelegten Strecke (1) Kartesische Koordinaten (Abbildung der zurückgelegten Strecke) X Winkelbild Y Krümmungsbild Bogenlänge 51 / 58

52 Darstellungen der zurückgelegten Strecke (2) Welche Art der Darstellung am besten geeignet ist, hängt von den verwendeten Sensoren und der geforderten Genauigkeit ab GPS auf der Koordinatenebene (zurückgelegte Strecke) Kreisel + Rad Winkelbild, Krümmungsbild 52 / 58

53 Zusätzliche Informationen Es gibt zusätzliche Informationen, die das Map Matching verkürzen können Erlaubte Fahrtrichtungen (Einbahnstrassen, Abbiegeverbote, getrennte Fahrspuren) Geschwindigkeit des KFZ - z.b. Parallelstrasse zur Autobahn Bsp.: 2 Einbahnstrassen, Fahrzeugposition in der Mitte, durch Fahrtrichtung Entscheidung auf welcher Straße bewegt sich da KFZ Zusatzinformationen sehr wichtig und hilfreich! 53 / 58

54 Map Matching - Prinzipielle Möglichkeiten Ermittlung des zum gemessenen Punkt nächstgelegen in der karte ( next neigbour ) falls beide Informationen sehr genau Vergleich der zurückgelegten Strecke (Messung Karte/digitale Daten) Mit verschiedenen Transformationsalgorithmen Karteneinpassung mit weiteren Profilen Vergleich der Winkelbilder Vergleich der Krümmungsbilder Die Wahl des Verfahren hängt im Wesentlichen von der verwendeten Sensorik und deren Charakteristik (Auflösung, Genauigkeit, ) ab 54 / 58

55 Vergleich der zurückgelegten Strecke Unterteilung der Strecke in Linienelemente mit konstanter Länge für Soll- und Ist-Strecke Bestimmung der Transformationsparameter mittels Ausgleichung Vergleich der Soll- und Ist-Strecke mit verschiedenen Transformationen und dadurch unterschiedlichen Freiheitsgraden (Translation, ebene Ähnlichkeitstransformation, affine Transformation) Verfahren Translation Ebene Ähnlichkeitstransformation Affine Transformation Weiteres: 55 / 58

56 Ablauf beim Map Matching Messung Digitale Karte Datenaufbereitung Auswahl möglicher Trassen Datenaufbereitung Zuordnung der Messung zu jeder möglichen Trasse Festlegen der wahrscheinlichsten Trasse Zuordnungsgenauigkeit, Plausibilität der geschätzten Parameter 56 / 58

57 Eignung der Map Matching Verfahren Heutige Situation: Bei GPS mit neuen Empfängertechniken (z.b. SiRF III) reicht für das Map Matching im allgemeinen der vergleich der Koordinaten, oder von Strecken aus Für Sonderanwendungen ist Vergleich der Winkel- bzw. Krümmungsbilder (abh. von Sensorik) erforderlich Aber: Problemfälle, z.b.: P Kandidat 1 Kandidat 2 Lösungswege, s. oben 57 / 58

58 Literatur s. Folien Alle externen links zuletzt besucht im Nov / 58

59 Vielen Dank für die Aufmerksamkeit! Weitere Fragen? 59 / 58

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Routing Algorithmen. Begriffe, Definitionen

Routing Algorithmen. Begriffe, Definitionen Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über

Mehr

Ziel. MapMatchingVerfahren spielen eine wichtige Rolle, z.b bei der Fahrzeugnavigation. Visualisierung der gematchten.

Ziel. MapMatchingVerfahren spielen eine wichtige Rolle, z.b bei der Fahrzeugnavigation. Visualisierung der gematchten. Ziel Mit Hilfe von Verfahren werden die mittels Sensoren aufgenommenen Wegestücke / Punkte auf die Geometrien der Vektordaten im Navigationssystem bezogen MapMatchingVerfahren spielen eine wichtige Rolle,

Mehr

Lernmodul 7 Algorithmus von Dijkstra

Lernmodul 7 Algorithmus von Dijkstra Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer

Mehr

Geoinformatik Kapitel 6 Ausgewählte GeoInf-Algorithmen

Geoinformatik Kapitel 6 Ausgewählte GeoInf-Algorithmen Geoinformatik Kapitel 6 Ausgewählte GeoInf-Algorithmen Univ.-Prof. Dr.-Ing. Wolfgang Reinhardt AGIS / Inst. Für Angewandte Informatik (INF4) Universität der Bundeswehr München Wolfgang.Reinhardt@unibw.de

Mehr

Das Problem des Handlungsreisenden

Das Problem des Handlungsreisenden Seite 1 Das Problem des Handlungsreisenden Abbildung 1: Alle möglichen Rundreisen für 4 Städte Das TSP-Problem tritt in der Praxis in vielen Anwendungen als Teilproblem auf. Hierzu gehören z.b. Optimierungsprobleme

Mehr

40. Algorithmus der Woche Das Travelling Salesman Problem oder die optimale Tour für den Nikolaus

40. Algorithmus der Woche Das Travelling Salesman Problem oder die optimale Tour für den Nikolaus 40. lgorithmus der Woche as Travelling Salesman Problem oder die optimale Tour für den Nikolaus utor Stefan Näher, Universität Trier as Problem des Handlungsreisenden as Travelling Salesman Problem (TSP)

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 02.07.2015 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

Datenstrukturen und Algorithmen

Datenstrukturen und Algorithmen Prof. Dr. Erika Ábrahám Datenstrukturen und Algorithmen 1/1 Datenstrukturen und Algorithmen Vorlesung 14: Prof. Dr. Erika Ábrahám Theorie Hybrider Systeme Informatik 2 http://ths.rwth-aachen.de/teaching/ss-14/

Mehr

Theoretische Informatik 1

Theoretische Informatik 1 Theoretische Informatik 1 Approximierbarkeit David Kappel Institut für Grundlagen der Informationsverarbeitung Technische Universität Graz 10.06.2016 Übersicht Das Problem des Handelsreisenden TSP EUCLIDEAN-TSP

Mehr

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Proseminar Online Algorithmen, Prof. Dr. Rolf Klein Vortrag von Michael Daumen am 13.12.2000 Thema : Minimum Spanning Tree und 2-Approximation der TSP-Tour Inhalt des Vortrags : 1. genaue Vorstellung des

Mehr

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.

Definition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V. Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.

Mehr

Algorithmen & Komplexität

Algorithmen & Komplexität Algorithmen & Komplexität Angelika Steger Institut für Theoretische Informatik steger@inf.ethz.ch Kürzeste Pfade Problem Gegeben Netzwerk: Graph G = (V, E), Gewichtsfunktion w: E N Zwei Knoten: s, t Kantenzug/Weg

Mehr

Paper Computer Science Experiment. Computation (NP-Vollständigkeit) Traveling Salesman

Paper Computer Science Experiment. Computation (NP-Vollständigkeit) Traveling Salesman Paper Computer Science Experiment Great Principles of Computing Computation (NP-Vollständigkeit) Thema Traveling Salesman Unterrichtsform Lernen am Modell Voraussetzung Wahrscheinlich kennen viele Schüler/innen

Mehr

Programmiertechnik II

Programmiertechnik II Graph-Algorithmen Anwendungsgebiete "Verbundene Dinge" oft Teilproblem/Abstraktion einer Aufgabenstellung Karten: Wie ist der kürzeste Weg von Sanssouci nach Kunnersdorf? Hypertext: Welche Seiten sind

Mehr

Programmiertechnik II

Programmiertechnik II Graph-Algorithmen Anwendungsgebiete "Verbundene Dinge" oft Teilproblem/Abstraktion einer Aufgabenstellung Karten: Wie ist der kürzeste Weg von Sanssouci nach Kunnersdorf? Hypertext: Welche Seiten sind

Mehr

Betriebswirtschaftliche Optimierung

Betriebswirtschaftliche Optimierung Institut für Statistik und OR Uni Graz 1 Approximationsalgorithmen auf metrischen Instanzen Minimum Spanning Tree Definition (Spannbaum) Ein Spannbaum in einem Graphen G = (V,E) ist ein kreisfreier Teilgraph

Mehr

Datenstrukturen und Algorithmen (SS 2013)

Datenstrukturen und Algorithmen (SS 2013) Datenstrukturen und Algorithmen (SS 2013) Übungsblatt 10 Abgabe: Montag, 08.07.2013, 14:00 Uhr Die Übungen sollen in Gruppen von zwei bis drei Personen bearbeitet werden. Schreiben Sie die Namen jedes

Mehr

Betriebliche Optimierung

Betriebliche Optimierung Betriebliche Optimierung Joachim Schauer Institut für Statistik und OR Uni Graz Joachim Schauer ( Institut für Statistik und OR Uni Graz Betriebliche ) Optimierung 1 / 21 1 Approximationsalgorithmen auf

Mehr

Wie wird ein Graph dargestellt?

Wie wird ein Graph dargestellt? Wie wird ein Graph dargestellt? Für einen Graphen G = (V, E), ob gerichtet oder ungerichtet, verwende eine Adjazenzliste A G : A G [i] zeigt auf eine Liste aller Nachbarn von Knoten i, wenn G ungerichtet

Mehr

Vorkurs Informatik WiSe 16/17

Vorkurs Informatik WiSe 16/17 Institut für Programmierung Konzepte der Informatik Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2016 Technische Universität Braunschweig, IPS Inhaltsverzeichnis Schilda-Rallye Was steckt

Mehr

Relationen und Graphentheorie

Relationen und Graphentheorie Seite Graphentheorie- Relationen und Graphentheorie Grundbegriffe. Relationen- und Graphentheorie gehören zu den wichtigsten Hilfsmitteln der Informatik, die aus der diskretenmathematik stammen. Ein Graph

Mehr

Vorkurs Informatik WiSe 15/16

Vorkurs Informatik WiSe 15/16 Konzepte der Informatik Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 20.10.2015 Technische Universität Braunschweig, IPS Inhaltsverzeichnis Schilda-Rallye Was steckt dahinter? Darstellung von Graphen

Mehr

Algorithmen und Datenstrukturen SS09. Foliensatz 16. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik

Algorithmen und Datenstrukturen SS09. Foliensatz 16. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik Foliensatz 16 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 2009 TU Ilmenau Seite 1 / 45 Graphen TU Ilmenau Seite 2 / 45 Graphen 1 2 3 4 5 6 7 8

Mehr

Graphalgorithmen II. Werner Sembach Werner Sembach Graphalgorithmen II / 22

Graphalgorithmen II. Werner Sembach Werner Sembach Graphalgorithmen II / 22 Graphalgorithmen II Werner Sembach 14.04.2014 Werner Sembach Graphalgorithmen II 14.04.2014 1 / 22 Übersicht Datenstrukturen Union-Find Fibonacci-Heap Werner Sembach Graphalgorithmen II 14.04.2014 2 /

Mehr

Minimal spannende Bäume

Minimal spannende Bäume http://www.uni-magdeburg.de/harbich/ Minimal spannende Fakultät für Informatik Otto-von-Guericke-Universität 2 Inhalt Definition Wege Untergraphen Kantengewichtete Graphen Minimal spannende Algorithmen

Mehr

Aufgaben zur Klausurvorbereitung

Aufgaben zur Klausurvorbereitung Vorlesung Graphen und Optimierung Sommersemester 2013/14 Prof. S. Lange Aufgaben zur Klausurvorbereitung Hier finden Sie eine Reihe von Übungsaufgaben, die wir an den beiden Vorlesungsterminen am 29.01.2014

Mehr

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph

Programm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 07 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München 7 Fortgeschrittene Datenstrukturen Graphen

Mehr

Euler und Hamiltonkreise

Euler und Hamiltonkreise Euler und Hamiltonkreise 1. Königsberger Brücken 2. Eulerwege und Kreise Definition, Algorithmus mit Tiefensuche 3. Hamiltonwege und Kreise Definition 4. Problem des Handlungsreisenden Enumeration und

Mehr

Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Kapitel 4: Netzplantechnik Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege 4. Netzplantechnik 5. Minimal spannende Bäume 6. Traveling Salesman Problem 7. Flüsse in Netzwerken

Mehr

Berechnung von Abständen

Berechnung von Abständen 3. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 3.4. Es sei G = (V, E) ein Graph. Der Abstand d(v, w) zweier Knoten v, w V ist die minimale Länge eines Weges von v nach w.

Mehr

Graphen. Definitionen

Graphen. Definitionen Graphen Graphen werden häufig als Modell für das Lösen eines Problems aus der Praxis verwendet, wie wir im Kapitel 1 gesehen haben. Der Schweizer Mathematiker Euler hat als erster Graphen verwendet, um

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Prof. Martin Lercher Institut für Informatik Heinrich-Heine-Universität Düsseldorf Teil 9 Graphen Version vom 13. Dezember 2016 1 / 1 Vorlesung Fortsetzung 13. Dezember

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Kürzeste Wege Maike Buchin 4. und 6.7.2017 Einführung Motivation: Bestimmung von kürzesten Wegen ist in vielen Anwendungen, z.b. Routenplanung, ein wichtiges Problem. Allgemeine

Mehr

Programmierung 2 Studiengang MI / WI

Programmierung 2 Studiengang MI / WI Programmierung 2 Studiengang MI / WI Dipl.-Inf., Dipl.-Ing. (FH) Michael Wilhelm Hochschule Harz FB Automatisierung und Informatik mwilhelm@hs-harz.de Raum 2.202 Tel. 03943 / 659 338 Fachbereich Automatisierung

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 2016/17 19. Vorlesung Kürzeste Wege & Dijkstras Algorithmus Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I Wozu kürzeste Wege? 2 3-8 Modellierung

Mehr

Teil 2: Graphenalgorithmen

Teil 2: Graphenalgorithmen Teil : Graphenalgorithmen Anwendungen Definitionen Datenstrukturen für Graphen Elementare Algorithmen Topologisches Sortieren Kürzeste Wege Minimal aufspannende Bäume Problemstellung Algorithmus von Prim

Mehr

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal 3. Kreis- und Wegeprobleme Kapitelübersicht 3. Kreis- und Wegeprobleme Eulerweg, Eulerkreis Charakterisierung von eulerschen Graphen Bestimmung von eulerschen Wegen und Kreisen Hamiltonsche Graphen Definition

Mehr

5. Bäume und Minimalgerüste

5. Bäume und Minimalgerüste 5. Bäume und Minimalgerüste Charakterisierung von Minimalgerüsten 5. Bäume und Minimalgerüste Definition 5.1. Es ein G = (V, E) ein zusammenhängender Graph. H = (V,E ) heißt Gerüst von G gdw. wenn H ein

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 02. Mai 2017 [Letzte Aktualisierung: 10/07/2018,

Mehr

Graphdurchmusterung, Breiten- und Tiefensuche

Graphdurchmusterung, Breiten- und Tiefensuche Prof. Thomas Richter 18. Mai 2017 Institut für Analysis und Numerik Otto-von-Guericke-Universität Magdeburg thomas.richter@ovgu.de Material zur Vorlesung Algorithmische Mathematik II am 18.05.2017 Graphdurchmusterung,

Mehr

Kürzeste Wege in einem gewichteten Graphen. Anwendungen

Kürzeste Wege in einem gewichteten Graphen. Anwendungen Kürzeste Wege in einem gewichteten Graphen Dazu werden die Gewichte als Weglängen interpretiert. Der kürzeste Weg zwischen zwei Knoten in einem zusammenhängenden Graphen ist derjenige, bei dem die Summe

Mehr

Folien aus der Vorlesung Optimierung I SS2013

Folien aus der Vorlesung Optimierung I SS2013 Folien aus der Vorlesung Optimierung I SS2013 Dr. Jens Maßberg Institut für Optimierung und Operations Research, Universität Ulm July 10, 2013 Datenstrukturen für Graphen und Digraphen Graph Scanning Algorithmus

Mehr

Hamiltonsche Graphen

Hamiltonsche Graphen Hamiltonsche Graphen Definition 3.2. Es sei G = (V, E) ein Graph. Ein Weg, der jeden Knoten von G genau einmal enthält, heißt hamiltonscher Weg. Ein Kreis, der jeden Knoten von G genau einmal enthält,

Mehr

Graphalgorithmen II. Sebastian Ehrenfels Sebastian Ehrenfels Graphalgorithmen II / 44

Graphalgorithmen II. Sebastian Ehrenfels Sebastian Ehrenfels Graphalgorithmen II / 44 Graphalgorithmen II Sebastian Ehrenfels 4.6.2013 Sebastian Ehrenfels Graphalgorithmen II 4.6.2013 1 / 44 Inhalt 1 Datenstrukturen Union-Find Fibonacci-Heap 2 Kürzeste wege Dijkstra Erweiterungen Bellman-Ford

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Minimale Spannbäume Maike Buchin 18.7., 20.7.2017 Einführung Motivation: Verbinde Inseln mit Fähren oder Städte mit Schienen und verbrauche dabei möglichst wenig Länge. Problem:

Mehr

4. Kreis- und Wegeprobleme Abstände in Graphen

4. Kreis- und Wegeprobleme Abstände in Graphen 4. Kreis- und Wegeprobleme Abstände in Graphen Abstände in Graphen Definition 4.4. Es sei G = (V,E) ein Graph. Der Abstand d(v,w) zweier Knoten v,w V ist die minimale Länge eines Weges von v nach w. Falls

Mehr

12.4 Traveling Salesman Problem

12.4 Traveling Salesman Problem 96 KOMBINATORISCHE SUCHE.4 Traveling Salesman Problem Definition.3(TSP, Problem des Handlungsreisenden): Wir betrachten einen gerichteten, gewichteten Graphen G = (V,E) mit K : V R. K({u,v}) sind die Kosten

Mehr

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie

Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Dipl-Math. Wolfgang Kinzner 2.4.2012 Kapitel 1: Grundlagen der algorithmischen Graphgentheorie

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Peter F. Stadler & Dr. Christian Höner zu Siederdissen Bioinformatik/IZBI Institut für Informatik & Interdisziplinäres Zentrum für Bioinformatik Universität

Mehr

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke

Graphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke Graphen Graphentheorie Graphentheorie Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke 2 Was ist ein Graph? Ein Graph ist in der Graphentheorie eine abstrakte Struktur,

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen 1 Algorithmen und Datenstrukturen Wintersemester 2016/17 19. Vorlesung Kürzeste Wege & Dijkstras Algorithmus Prof. Dr. Alexander Wolff Lehrstuhl für Informatik I 2 Ergebnisse des 1. Kurztests 14 12 10

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) WS 2015/16 Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15

Mehr

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0.

8.4 Digraphen mit negativen Kantengewichten Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. 8.4 Digraphen mit negativen Kantengewichten 8.4.1 Grundsätzliches Betrachte Startknoten s und einen Kreis C mit Gesamtlänge < 0. k 4 5 1 s 1 3 2 C k 0 k 3 1 1 1 k 1 k 2 v Sollte ein Pfad von s nach C und

Mehr

11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME

11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME Algorithmen und Datenstrukturen 11. GRAPHEN 3 FLÜSSE UND SPANNBÄUME Algorithmen und Datenstrukturen - Ma5hias Thimm (thimm@uni-koblenz.de) 1 Algorithmen und Datenstrukturen 11.1. BERECHNUNG MAXIMALER FLÜSSE

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 4 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 24. April 2019 [Letzte Aktualisierung: 24/04/2019,

Mehr

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen

Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen Technische Universität Wien Institut für Computergraphik und Algorithmen Arbeitsbereich für Algorithmen und Datenstrukturen 186.172 Algorithmen und Datenstrukturen 1 VL 4.0 Übungsblatt 4 für die Übung

Mehr

Theoretische Grundlagen der Informatik

Theoretische Grundlagen der Informatik Theoretische Grundlagen der Informatik Vorlesung am 20. November 2014 INSTITUT FÜR THEORETISCHE 0 KIT 20.11.2014 Universität des Dorothea Landes Baden-Württemberg Wagner - Theoretische und Grundlagen der

Mehr

Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume)

Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume) WS 2016/17 Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_16

Mehr

9 Minimum Spanning Trees

9 Minimum Spanning Trees Im Folgenden wollen wir uns genauer mit dem Minimum Spanning Tree -Problem auseinandersetzen. 9.1 MST-Problem Gegeben ein ungerichteter Graph G = (V,E) und eine Gewichtsfunktion w w : E R Man berechne

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen 2 Sommersemester 2006 3. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Algorithmen für Graphen Fragestellungen: Suche

Mehr

Traveling Salesman Problem (TSP)

Traveling Salesman Problem (TSP) Traveling Salesman Problem (TSP) Das Traveling Salesman Problem (TSP) ist ein bekanntes Optimierungsproblem. Ein Handlungsreisender soll in einer Rundreise (auch Tour genannt) n vorgegebene Städte besuchen.

Mehr

Übersicht. Datenstrukturen und Algorithmen. Das Rechenproblem: kürzeste Pfade. Übersicht. Vorlesung 17: Kürzeste Pfade (K24) Bellman-Ford Dijkstra

Übersicht. Datenstrukturen und Algorithmen. Das Rechenproblem: kürzeste Pfade. Übersicht. Vorlesung 17: Kürzeste Pfade (K24) Bellman-Ford Dijkstra Datenstrukturen und Algorithmen Vorlesung 17: (K) Joost-Pieter Katoen Lehrstuhl für Informat Software Modeling and Verification Group http://moves.rwth-aachen.de/teaching/ss-15/dsal/ 1. Juni 15 1 Joost-Pieter

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphdarstellungen Maike Buchin 0.6.017 Graphen Motivation: Graphen treten häufig als Abstraktion von Objekten (Knoten) und ihren Beziehungen (Kanten) auf. Beispiele: soziale

Mehr

3.6 Branch-and-Bound-Verfahren

3.6 Branch-and-Bound-Verfahren 36 Branch-and-Bound-Verfahren Die Branch-and-Bound -Methode beruht darauf, auf eine intelligente Weise alle zulässigen Lösungen eines kombinatorischen Optimierungsproblems aufzulisten und mit Hilfe von

Mehr

Algorithmen und Datenstrukturen

Algorithmen und Datenstrukturen Algorithmen und Datenstrukturen Graphen 9/1 Begriffsdefinitionen Ein Graph besteht aus Knoten und Kanten. Ein Knoten(Ecke) ist ein benanntes Objekt. Eine Kante verbindet zwei Knoten. Kanten haben ein Gewicht

Mehr

2. Repräsentationen von Graphen in Computern

2. Repräsentationen von Graphen in Computern 2. Repräsentationen von Graphen in Computern Kapitelinhalt 2. Repräsentationen von Graphen in Computern Matrizen- und Listendarstellung von Graphen Berechnung der Anzahl der verschiedenen Kantenzüge zwischen

Mehr

Grundlagen Datenstrukturen Transitive Hülle Traversierung Kürzeste Wege Spannender Baum Max. Fluss Zuordnungen. 6. Graphen

Grundlagen Datenstrukturen Transitive Hülle Traversierung Kürzeste Wege Spannender Baum Max. Fluss Zuordnungen. 6. Graphen . Graphen viele praktische (Optimierungs-)Probleme sind als graphentheoretische Probleme formulierbar z.b. in Produktionsplanung, Personaleinsatzplanung,.... Grundlagen gerichteter, ungerichteter und gewichteter

Mehr

Algorithmen und Datenstrukturen 2

Algorithmen und Datenstrukturen 2 Algorithmen und Datenstrukturen Lerneinheit : Kürzeste Pfade in Graphen Prof. Dr. Christoph Karg Studiengang Informatik Hochschule Aalen Sommersemester 016.6.01 Einleitung Diese Lerneinheit beschäftigt

Mehr

Kap. 7 Optimierung. Überblick. Optimierung: Einführung. Motivation. Beispiele für Optimierungsprobleme. Rundreiseprobleme (TSP)

Kap. 7 Optimierung. Überblick. Optimierung: Einführung. Motivation. Beispiele für Optimierungsprobleme. Rundreiseprobleme (TSP) Kap. 7 Optimierung Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 22. VO 2. TEIL DAP2 SS 2009 9. Juli 2009 Überblick Einführung Einige klassische Optimierungsprobleme,

Mehr

15. Elementare Graphalgorithmen

15. Elementare Graphalgorithmen Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen

Mehr

Informatik III - WS07/08

Informatik III - WS07/08 Informatik III - WS07/08 Kapitel 4 1 Informatik III - WS07/08 Prof. Dr. Dorothea Wagner dwagner@ira.uka.de Kapitel 4 : Komplexitätsklassen Informatik III - WS07/08 Kapitel 4 2 Sprachen, Probleme, Zeitkomplexität

Mehr

Informatik im Alltag: Wie funktionieren Navis?

Informatik im Alltag: Wie funktionieren Navis? Informatik im Alltag: Wie funktionieren Navis? Thema: Wegeprobleme (aus Algorithmen und Datenstrukturen) Dr. Guido Rößling TU Darmstadt Angelehnt an Material von Dr. Jens Gallenbacher Problemlösen für

Mehr

Lösungen zu Kapitel 5

Lösungen zu Kapitel 5 Lösungen zu Kapitel 5 Lösung zu Aufgabe : (a) Es gibt derartige Graphen: (b) Offensichtlich besitzen 0 der Graphen einen solchen Teilgraphen. Lösung zu Aufgabe : Es sei G = (V, E) zusammenhängend und V

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 4: Suchstrategien Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 14. April 2017 HALBORDNUNG TOPOLOGISCHE ORDNUNG TOPOLOGISCHES

Mehr

9: Gewichtete Graphen

9: Gewichtete Graphen Chr.Nelius: Graphentheorie (WS 06/7) 9 9: Gewichtete Graphen Beispiel: Eine Straßenkarte mit Entfernungsangaben zwischen den Orten ist ein Beispiel für einen gewichteten Graphen. (9.) DEF: Ein Graph G

Mehr

Algorithmen und Datenstrukturen 2-1. Seminar -

Algorithmen und Datenstrukturen 2-1. Seminar - Algorithmen und Datenstrukturen 2-1. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 1. Übungsserie: 3 Aufgaben, insgesamt 30 28 Punkte A1 Spannbäume (10 8

Mehr

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7

Algo&Komp. - Wichtige Begriffe Mattia Bergomi Woche 6 7 1 Kürzeste Pfade Woche 6 7 Hier arbeiten wir mit gewichteten Graphen, d.h. Graphen, deren Kanten mit einer Zahl gewichtet werden. Wir bezeichnen die Gewichtsfunktion mit l : E R. Wir wollen einen kürzesten

Mehr

Algorithmen für Geographische Informationssysteme

Algorithmen für Geographische Informationssysteme Algorithmen für Geographische Informationssysteme 2. Vorlesung: 16. April 2014 Thomas van Dijk basiert auf Folien von Jan-Henrik Haunert Map Matching? Map Matching! Map Matching...als Teil von Fahrzeugnavigationssystemen

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Tutorium 24-6. Sitzung Marcus Georgi tutorium@marcusgeorgi.de 04.12.2009 1 Repräsentation von Graphen im Rechner Adjazenzlisten Adjazenzmatrizen Wegematrizen 2 Erreichbarkeitsrelationen

Mehr

Konzepte der Informatik

Konzepte der Informatik Platzhalter für Bild, Bild auf Titelfolie hinter das Logo einsetzen Konzepte der Informatik Vorkurs Informatik zum WS 23/24 6.9. - 27.9.23 Dr. Werner Struckmann / Hendrik Freytag. April 2 Referent Kurztitel

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (1) Darstellung Traversierung Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 441 Generalisierung von Bäumen Verallgemeinerung (von Listen zu Graphen)

Mehr

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar.

Richtig oder falsch? Richtig oder falsch? Richtig oder falsch? Mit dynamischer Programmierung ist das Knapsack- Problem in Polynomialzeit lösbar. Gegeben sei ein Netzwerk N = (V, A, c, s, t) wie in der Vorlesung. Ein maximaler s-t-fluss kann immer mit Hilfe einer Folge von höchstens A Augmentationsschritten gefunden werden. Wendet man den Dijkstra-Algorithmus

Mehr

Algorithmen und Datenstrukturen Tafelübung 14. Jens Wetzl 8. Februar 2012

Algorithmen und Datenstrukturen Tafelübung 14. Jens Wetzl 8. Februar 2012 Algorithmen und Datenstrukturen Tafelübung 14 Jens Wetzl 8. Februar 2012 Folien Keine Garantie für Vollständigkeit und/oder Richtigkeit Keine offizielle Informationsquelle LS2-Webseite Abrufbar unter:

Mehr

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007

Graphentheorie. Kürzeste Wege. Kürzeste Wege. Kürzeste Wege. Rainer Schrader. 25. Oktober 2007 Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 25. Oktober 2007 1 / 20 2 / 20 Wir werden Optimierungsprobleme vom folgenden Typ betrachten: gegeben eine Menge X und eine Funktion

Mehr

WS 2013/14. Diskrete Strukturen

WS 2013/14. Diskrete Strukturen WS 2013/14 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws1314

Mehr

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphen (2) Spannbäume Kürzeste Wege Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 455 Wiederholung Traversierung eines Graphen via Tiefendurchlaufs

Mehr

Algorithmen und Datenstrukturen 13

Algorithmen und Datenstrukturen 13 19. Juli 2012 1 Besprechung Blatt 12 Fragen 2 Bäume AVL-Bäume 3 Graphen Allgemein Matrixdarstellung 4 Graphalgorithmen Dijkstra Prim Kruskal Fragen Fragen zu Blatt 12? AVL-Bäume AVL-Bäume ein AVL-Baum

Mehr

Kapitel 5: Graphen und Graphalgorithmen

Kapitel 5: Graphen und Graphalgorithmen LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Algorithmen und Datenstrukturen Kapitel 5: Graphen und Graphalgorithmen Skript zur Vorlesung Algorithmen und Datenstrukturen

Mehr

Digraphen, DAGs und Wurzelbäume

Digraphen, DAGs und Wurzelbäume Digraphen (gerichtete Graphen) Slide 1 Digraphen, DAGs und Wurzelbäume Digraphen (gerichtete Graphen) Slide 2 Eingangs- und Ausgangsgrad Bei einer gerichteten Kante e = (u,v) E heißt u Startknoten von

Mehr

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1

4.2 Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition 4.2.1 Allgemeines. Minimale Spannbäume: Der Algorithmus von Jarník/Prim Definition.. (a) Ein Graph G =(V, E) heißt kreisfrei, wenn er keinen Kreis besitzt. Beispiel: Ein kreisfreier Graph: FG KTuEA, TU Ilmenau

Mehr

Graphalgorithmen 2. Dominik Paulus Dominik Paulus Graphalgorithmen / 47

Graphalgorithmen 2. Dominik Paulus Dominik Paulus Graphalgorithmen / 47 Graphalgorithmen Dominik Paulus.0.01 Dominik Paulus Graphalgorithmen.0.01 1 / 7 1 Spannbäume Kruskal Prim Edmonds/Chu-Liu Datenstrukturen Fibonacci-Heap Union/Find Kürzeste Pfade Dijkstra Bellman-Ford

Mehr

Informatik II, SS 2016

Informatik II, SS 2016 Informatik II - SS 208 (Algorithmen & Datenstrukturen) Vorlesung 4 (..208) Graphenalgorithmen III Algorithmen und Komplexität Bäume Gegeben: Zusammenhängender, ungerichteter Graph G = V, E Baum: Zusammenhängender,

Mehr

Algorithmische Graphentheorie

Algorithmische Graphentheorie Algorithmische Graphentheorie Vorlesung 7 und 8: Euler- und Hamilton-Graphen Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 17. April 2018 1/96 WIEDERHOLUNG Eulersche

Mehr

ADS: Algorithmen und Datenstrukturen 2

ADS: Algorithmen und Datenstrukturen 2 ADS: Algorithmen und Datenstrukturen 2 Teil 6 Prof. Dr. Gerhard Heyer Institut für Informatik Abteilung Automatische Sprachverarbeitung Universität Leipzig 16. Mai 2018 [Letzte Aktualisierung: 18/05/2018,

Mehr

12. Graphen Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013

12. Graphen Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 12. Graphen Programmieren / Algorithmen und Datenstrukturen 2 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt Wintersemester 2012 / 2013 1 Agenda Kontrollfragen Graphen Graphenalgorithmen 2

Mehr