5. Graphen und Algorithmen

Größe: px
Ab Seite anzeigen:

Download "5. Graphen und Algorithmen"

Transkript

1 36 5. Graphen und Algorithmen 5.1 Einführung Das klassische Problem der Graphentheorie ist Das Königsberger Brücken Problem Die Abbildung zeigt die Stadt Königsberg im 18. Jahrhundert. Die beiden Arme des Flusses Pregel umfliessen die Insel, den Kneiphof. Es gibt insgesamt 7 Brücken über den Fluss. Ist es möglich, von der Insel A aus einen Rundgang durch die Stadt zu unternehmen, währenddessen man jede Brücke genau einmal überquert und am Schluss zum Ausgangspunkt zurückkehrt? Leonhard Euler (1707 Basel 1783 St.Petersburg) beantwortete 1736 diese Frage mit einer Methode, welche die moderne Graphentheorie begründete.

2 37 Optimierungsprobleme auf Graphen Gütertransport von Produzenten zu Verbrauchern soll kostenminimal werden Kostengünstiges Netz von Versorgungsleitungen und kostenminimaler oder grösster Durchfluss durch das Netz Kürzeste Wege in Verkehrsnetzen Tourenplanung: schnellst mögliche Belieferung von Kunden Terminplanung von Projekten Oft lassen sich sehr grosse Probleme (z.b. Verkehrsnetze mit Hunderten von Strassen) mit graphentheoretischen Methoden mit relativ geringem, d.h. polynomialem Rechenaufwand lösen. Aber: "schwere" Probleme, "exponentieller Rechenaufwand" Viele Probleme sind in populärer Form sehr bekannt und wirken eher wie eine Knobelaufgabe. Ihre Anwendungsmöglichkeiten sind heute mit den schnellen Computern aber enorm. Beispiel: Brunnenproblem Vor langer Zeit in einem fernen Königreich standen drei Häuser in einem Tal und es gab in der Nähe drei Brunnen und das Wasser war rein und klar. Es war ein friedliches Tal, solange bis Zwietracht dort einkehrte. Die drei Höfe fielen in Feindschaft und der Streit wollte kein Ende nehmen. An Versöhnung war nicht zu denken. Die Menschen in den drei Höfen bestanden darauf, drei direkte Pfade zu den drei Brunnen zu haben. Die Pfade sollten aber die der Nachbarn nicht kreuzen. Wenn es von jedem Hof aus diese Wege gäbe, wären alle zufrieden und im Tal könnte Frieden einkehren. Doch bis heute herrscht dort Streit. Kann es jemals Frieden geben? Mit zwei Brunnen ist das Problem einfach! Aber mit drei Brunnen ist es hoffnungslos! Skizzieren Sie das Problem mit 2 und 3 Brunnen.

3 38 Im Kern handelt dieses Problem vom Zeichnen von Figuren in der Ebene ohne mit dem Stift abzusetzen. Sie kennen wohl aus ihrer Kindheit das Zeichnen der Laterne (auch Haus des Nikolaus genannt) Ein praktisches Beispiel dazu ist das Postbotenproblem.: Ein Briefträger muss in seinem Dorf allen Leuten die Post verteilen. Dazu muss er alle Strassen mindestens einmal durchlaufen. Welcher Weg ist der kürzeste? Kann man diesen Weg in vertretbarer zeit berechnen? Ein weiteres Problem ist die Routenplanung., zum Beispiel im GPS.

4 39 Ein anderes Beispiel handelt vom Design von Computerchips: Stehen in einem Schaltkreis die Positionen der einzelnen Komponenten auf der Platine schon fest, können dann die Verbindungen auf der Oberfläche ohne Kreuzungen verlaufen? Oder eine andere Frage: Welche Position der Komponenten und der Verdrahtung auf der Platine beansprucht den geringsten Platz? Solche angewandten Probleme gehören zusammen mit dem Design effizienter Algorithmen allesamt zur Graphentheorie.

5 Grundbegriffe Einfachste Struktur auf einer Menge wird erzeugt durch eine binäre Relation. Zwei Elemente stehen in einer vorgegebenen Beziehung oder eben nicht. Das sind genau die Graphen. Sie sind die fundamentale Datenstruktur der diskreten Mathematik. Definition Ein Graph G(V, E) besteht aus einer endlichen Menge V und einer Menge E! V " V, Die Elemente von V heissen Ecken (Knoten, vertices) und die Elemente von E heissen Kanten (edges). Beispiele 1. V = {1,2,3,4,5}, E = {{1,2},{1,4},{1,5},{2,3},{2,4},{4,5}} Graph zum Königsberger Brückenproblem Definitionen Ein Graph kann parallele Kanten (Mehrfachkanten) haben. Eine Ecke kann mit sich selbst verbunden sein, eine solche Kante heisst Schlinge. Eine Ecke, von der aus keine Kanten gehen, heisst isolierte Ecke. Isolierte Ecke Parallele Kanten Schlinge Ein Graph ohne Mehrfachkanten und ohne Schlingen heisst einfach.

6 41 Ein Graph kann zusammenhängend oder nicht zusammenhängend sein (dann besteht er aus mehreren Teilen. nicht zusammenhängender Graph zusammenhängender Graph Zwei Ecken heissen benachbart (adjazent), wenn sie durch eine Kante miteinander verbunden sind. Zwei Kanten heissen inzident, wenn sie eine Ecke gemeinsam haben. Der Grad einer Ecke A ist die Anzahl Kanten, die von dieser Ecke ausgehen; er wird mit d(a) (degree) bezeichnet. Ist d(a)=0, so ist A eine isolierte Ecke. Die Ordnung n eines Graphen ist V = Anzahl Ecken. Die Grösse des Graphen ist E = Anzahl Kanten. Unter einem vollständigen Graphen K n mit n Ecken versteht man einen Graphen, bei dem jede Ecke mit jeder durch eine Kante verbunden ist. Vollständige Graphen Wie viele Kanten hat ein vollständiger Graph mit n Ecken?

7 Über Grade von Ecken Beispiel: Tennisturniere Bei einem Tennisturnier spielt jeder gegen jeden einmal. Nach einer gewissen Zeit sind folgenden Spiele gespielt: Anna Clemens Barbara Dana Emil Der Graph ist einfach, denn jeder spielt gegen jeden genau einmal und keiner spielt gegen sich selbst. Beim jetzigen Spielstand zählen wir nur die gespielten Spiele und nicht die Ergebnisse. Anna 3 Barbara 2 Clemens 1 Dana 2 Emil 2 Es gibt Leute, welche die gleiche Anzahl Spiele gespielt haben. Ist das bei jedem Turnier so? Welches sind die möglichen Spielstände bei n Personen? n = n = Für n = 2, 3 gibt es jedes Mal mindestens 2 Personen mit der gleichen Anzahl Spiele; also mindestens 2 Ecken mit demselben Grad.

8 Das gilt sicher nicht, wenn der Graph nicht einfach ist, wie das folgende Beispiel zeigt Satz 1: In jedem einfachen Graph gibt es mindestens 2 Ecken mit demselben Grad. Begründung: n = E! 0 " Eckgrad " n # 1 i) Eine Ecke a 1 habe den Grad n 1! Dann ist a 1 mit allen anderen Ecken verbunden! Keine Ecke hat den Grad 0. Auf die n 1 verbleibenden Ecken müssen die Eckgrade 1, 2,..., n 1 verteilt werden. Also muss eine Zahl zweimal vorkommen. ii) Keine Ecke hat den Grad n 1! 0! d(a i )! n " 2, i = 1,2,,n Also müssen die Zahlen 0, 1, 2,..., n 2 auf n Ecken verteilt werden. Damit muss eine Zahl zweimal vorkommen. Satz 2: In jedem Graph ist die Summe der Grade der Ecken gleich der doppelten Anzahl Kanten. " d(a i ) = 2 E a i!v Begründung: Jede Kante verbindet 2 Ecken. Gibt es q Kanten, so hat es 2q Enden. Also ist die Summe der Ekckgrade gleich 2q. Bemerkungen 1. Dieser Satz gilt auch für nicht einfache Graphen, also Graphen mit Schlingen und Mehrfachkanten. 2. Satz 2 ist auch als "handshaking lemma" bekannt: In einer Gruppe von Menschen begrüssen sich einige per Handschlag andere nicht. Notiert man bei jedem, wie viele Hände er geschüttelt hat und addiert die Zahlen, so erhält man stets eine gerade Zahl. Aus dem Satz 2 folgt sofort der nächste Satz. Satz 3: In jedem Graph ist die Anzahl der Ecken mit ungeradem Grad gerade.

9 Begründung: " d(a i ) =! " d(a i ) = " d(a i ) a i!v n n Ecken i=1 Ecken mit ungeradem Grad " $ # $ % ungerade + # 44 " Ecken mit geradem Grad " $ # $ % gerade d(a i ) = 2n (also gerade) Ist die Summe von ungeraden Zahlen gerade, so ist die Anzahl Summanden gerade. Beispiele 1. Sind die beiden Graphen isomorph? Definition: Zwei Graphen heissen isomorph, wenn der eine durch kontinuierliche Verformung aus dem anderen hervorgeht. Mathematisch heisst dies: Zwei Graphen G(V,E) und G '(V ',E ') heissen isomorph, wenn es eine bijektive Abbildung f :V! V ' gibt, so dass gilt x, y { }!E " { f (x), f (y)}!e ' 1 2 a 4 d 3 zwei isomorphe Graphen Beschreiben Sie den Isomorphismus. b c 2. Skizzieren Sie einen Graphen, dessen Ecken die Grade 1, 2, 3, 4 haben. Gibt es einen einfachen solchen Graph?

10 45 3. Wie viele Kanten besitzt ein Graph mit n Ecken, wenn alle Ecken denselben Grad g haben? Weitere Definitionen Eine Folge aufeinander folgender Kanten (e 1,e 2,,e n ) mit e i = (v i!1,v i ) ist ein Kantenzug. Die Ecken v i (i = 0,..., n) müssen nicht notwendiger weise verschieden sein. Ein Kantenzug heisst geschlossen, wenn v 0 = v n. Ein Weg oder eine Kette ist ein Kantenzug, der jede Ecke höchstens einmal enthält. Ein Kreis ist ein geschlossener Weg v 0 = v n.

11 Bäume Die Theorie der Bäume stammt ursprünglich aus der Chemie, entwickelt aus dem Studium der Kohlenwasserstoffverbindungen und anderer Isomere. Bäume sind die fundamentalen Bausteine der Graphen. Sie ergeben auch die geeignete Datenstruktur für viele diskrete Probleme, vor allem für Such- und Sortierprobleme. Definition: Ein Graph heisst ein Baum, wenn er zusammenhängend ist und keine Kreise enthält. Ein Graph, dessen Komponenten Bäume sind, heisst ein Wald. Kein Baum Baum Baum Wald Bäume mit höchstens 5 Ecken: Definition: G(V, E) sei ein zusammenhängender Graph. Ein Untergraph T von G heisst ein aufspannender Baum (spanning tree), wenn T ein Baum der Ordnung n = V ist.

12 47 Jeder zusammenhängende Graph besitzt aufspannende Bäume: Entweder ist G schon ein Baum oder G besitzt einen Kreis. Entfernt man von diesem Kreis eine Kante, so ist G immer noch zusammenhängend. Entweder haben wir jetzt schon einen aufspannenden Baum oder wir müssen noch eine Kante eines Kreises entfernen. Auf alle Fälle sind wir in endlich vielen Schritten fertig. Satz: Folgende Aussagen sind äquivalent: (1) G(V, E) ein Baum. (2) Je zwei Ecken in G sind durch genau einen Weg verbunden. (3) G ist zusammenhängend und es gilt: E = V - 1. in Worten: Ein Baum hat eine Ecke mehr als Kanten. Weiter gilt für einen Baum T der Ordnung n 2 und der Gradfolge der Ecken (d 1, d 2,..., d n ): Satz: In einem Baum ist die Summe der Grade der Ecken gleich der doppelten Kantenzahl. n! d k = 2(n " 1). k =1 Frage: Wie viele aufspannende Bäume besitzt ein Graph? Schwierigeres Problem Satz von Cayley: Der vollständige Graph K n auf {1, 2,..., n} mit n 2 besitzt n n!2 aufspannende Bäume. Frage: Wie findet man in einem Graphen einen aufspannenden Baum oder einen aufspannenden Wald? Wie erkennt man, ob ein Graph zusammenhängend ist?

13 48 BREADTH-FIRST-SEARCH (Breitensuche) 1. Wähle beliebige Ecke und gib ihr die Nummer 1, aktuelle Ecke 2. Aktuelle Ecke habe Nummer i und die Nummern 1,..., r seien vergeben; Falls r = n: STOP Sonst: Gib den nicht nummerierten Nachbarn von i die Nummern r+1, r+2,..;. und füge Kanten ein: i(r + 1), i(r + 2),... Falls i+1 nicht existiert: STOP Sonst: Gehe zur Ecke i+1, das ist die neue aktuelle Ecke, und iteriere Beispiel Suchen Sie einen aufspannenden Baum mit dem Breath-First-Search-Algorithmus 2. Beispiel G ist durch folgende Nachbarschaftslisten gegeben. Wenden Sie den BREADTH-FIRST- SEARCH Algorithmus an und beantworten Sie damit die Frage, ob G zusammenhängend ist. a b c d e f g h b a b a b g c a d c d b f g h d g c h e

14 5.5 Minimal aufspannende Bäume (Minimal Spanning Tree) 49 Gegeben sei der Plan eines Kommunikationsnetzes mit Kosten für den Leitungsbau. Die Schaltelemente sind die Ecken, die Verbindungen zwischen den Schaltelementen die Kanten. Die Zahlen über den Kanten sind die Kosten. Gesucht ist ein Schaltplan, sodass jedes Element mit jedem kommunizieren kann und die Kosten für den Leitungsbau minimal werden. Modellierung durch einen gewichteten Graphen. Gegeben ist ein zusammenhängender Graph G(V, E) und eine Gewichtfunktion w : E! IR. Gesucht ist ein aufspannender Baum T mit minimalem Gewicht w(t ) = " w(e). e!e(t ) 1. Mit Breath-First-Search einen aufspannenden Baum konstruieren. Dieser muss noch nicht optimal sein. Beispiel: 2. Mit der Greedy Strategy einen minimal aufspannenden Baum konstruieren. Greedy-Strategy (gierige Strategie) Arbeite nach folgender Maxime: Erledige immer als nächstes den noch nicht bearbeiteten fettesten (optimalen) Teilbrocken. Hier betrachten wir 2 Algorithmen, die minimal aufspannende Bäume mit einer Greedy- Strategy konstruieren. 1. Kruskal-Algorithmus Beim Kruskal-Algorithmus wird immer die Kante mit minimalem Gewicht gewählt, aber so, dass keine Kreise entstehen. Beispiel:

15 50 2. PRIM-Algorithmus Sei G(V, E) ein gewichteter zusammenhängender Graph mit n Ecken. (Jeder minimal aufspannende Baum hat also n-1 Kanten.) (1) Wähle eine Kante minimalen Gewichts aus (samt den dadurch gegebenen Ecken). Diese Kanten stellen samt ihren Ecken den Anfangsbaum T dar, der im folgenden systematisch zu einem minimal aufspannenden Baum ausgebaut wird. (2) Solange der aufzubauende Baum T weniger als n-1 Kanten hat, führe folgendes aus: Suche unter denjenigen Kanten mit einer Ecke in T und einer Ecke ausserhalb T eine Kante mit minimalem Gewicht aus, sodass kein Kreis entsteht und füge sie zu T dazu (samt des dadurch bestimmten Knotens). Der mit Hilfe von Prims Algorithmus konstruierte Teilgraph T ist ein minimal aufspannender Baum des ursprünglichen Graphen G. Bemerkungen zum Beweis: Da der Graph endlich ist und bei jedem Teilschritt eine neue Kante dazu kommt, bricht der Algorithmus nach endlich vielen Schritten ab. Nach Abbruch des Algorithmus sind n-1 Kanten konstruiert, also alle n Ecken benützt. Mit Induktion könnte man jetzt zeigen, dass der konstruierte aufspannende Baum T minimal ist. Die Konstruktion ist nicht eindeutig. Beispiel: 2. Beispiel: Suchen Sie mit beiden Algorithmen minimal aufspannende Bäume. Kruskal-Algorithmus Prim-Algorithmus

16 Kürzeste Wege in Graphen Optimierungsprobleme auf gewichteten Graphen: Strassenplan: in möglichst kurzer Zeit oder mit möglichst wenig Kilometern von A nach B gelangen Verkehrsnetz: Schienennetz, Gewichtung der Kanten können die Fahrkosten, die Reisezeit, die Entfernung sein. Die Bahnverbindung von A nach B soll möglichst billig, möglichst kurz sein. Kommunikationsnetz: Übertragungskosten oder Übertragungszeit als Gewicht der Kanten. Gesucht ist der kostengünstigste Weg eines Datenpakets von einem Knoten zu einem anderen. Meistens wird vorausgesetzt, dass der Ausgangsknoten den Graphen vollständig kennt. Im Schienenverkehr oder im Strassenverkehr kennt man gewöhnlich den ganzen Graphen. Im Internet ist das nicht immer der Fall: Knotenausfall Überlastung von Kanten. Kürzeste Wege Problem: Der kürzeste Weg zwischen zwei Knoten. Die kürzesten Wege zwischen einem Knoten und zu allen anderen Knoten. Der kürzeste Weg in einem Graphen, bei dem alle Knoten (ev. genau einmal) besucht werden. A B Gegeben ist ein zusammenhängender Graph G und eine Gewichtsfunktion w : E! IR + = {x " 0}. Sei u!v gegeben. Für einen Weg P = P(u,v) von u nach v ist die gewichtete Länge von P: l (P) = " w (e). e!e(p) Gesucht ist ein kürzester Weg von u nach v, d.h. l(p) soll minimal werden. Die Länge eines kürzesten Weges bezeichnet man als den Abstand d(u,v).

17 52 Edsger Wybe Dijkstra, , holländischer Mathematiker, Algorithmus 1959 Der berühmte Algorithmus von Dijkstra konstruiert, ausgehend von einer fest gewählten Ecke u, einen aufspannenden Baum, dessen Weg von u nach v stets ein kürzester ist für alle Ecken v des Graphen. Wir erläutern den Algorithmus hier an einem Beispiel. Beispiel zum Dijkstra Algorithmus Start a 3 g b h f c e 1. Startknoten grün 3 2 d 2. alle Nachbarknoten blau, Abstand vom Startknoten anschreiben 3. Wähle als neuen Startknoten denjenigen mir kürzestem Abstand zum Start: grün (samt Kante zum vorherigen Startknoten) 4. zurück zu 1. (verbotene Kanten: rot) Knoten i a b c d e f g h Distanz d(a,i) 0

18 53 Bemerkungen Der Dijkstra Algorithmus konstruiert stets eine kürzeste Verlängerung des Teilbaums; er ist also ein Greedy Algorithmus. Es ist kein Algorithmus bekannt, der asymptotisch schneller ist als der Dijkstra Algorithmus. Sollen die kürzesten Wege für alle Eckenpaare uv bestimmt werden, so kann man den Dijkstra Algorithmus für jede Ecke u als Quelle anwenden. Analog für gerichtete Graphen. Die Gewichtung der Knoten darf nicht negativ sein. Sonst kann man den Bellmann- Ford Algorithmus anwenden. Noch ein Beispiel: Vom Knoten a aus alle kürzesten Wege berechnen. w a 9 x y b 7 5 z Knoten i a x y z w b Abstand d(a,i)

19 Eulersche Graphen Beim Königsberger Brückenproblem sucht man einen speziellen Kantenzug. Dieser sollte die folgenden Eigenschaften besitzen. 1. Der Kantenzug enthält keine Kante doppelt. 2. Der Kantenzug enthält alle Kanten des Graphen. 3. Anfang und Ende des Kantenzugs stimmen überein. Definitionen Eine Tour ist ein Kantenzug nur mit der 1. Eigenschaft; er enthält also keine Kante doppelt. Eine Eulertour ist ein Kantenzug mit allen 3 obigen Eigenschaften. Jede Kante des Graphen wird also genau einmal durchlaufen und der Kantenzug ist geschlossen. Ein Graph mit einer Eulertour heisst Eulerscher Graph. Gibt es beim Königsberger Brückenproblem eine Eulertour? Beispiel: Suchen sie in den untenstehenden Graphen geschlossenen Touren und Eulertouren. Welche Grade der Ecken kommen in den Graphen vor? Gibt es Touren mit der Eigenschaft 2, also Kantenzüge, die jede Kante genau einmal enthalten? Ergänzen Sie den letzten Graph, so dass eine Eulertour möglich ist.

20 55 Satz Es sei G(V, E) ein zusammenhängender Graph mit k Knoten ungeraden Grades. Dann gilt folgendes. (1) Ist k = 0, so gibt es auf G eine Eulertour. (2) Ist k = 2, so gibt es auf G eine Tour, die alle Kanten des Graphen enthält. Man kann den Graph in einem Zug zeichnen, ohne eine Kante doppelt zu zeichnen. (3) Ist k > 2, so gibt es auf G keine Tour, die alle Kanten enthält. zum Beweis: (1) Wähle eine Ecke A, beginne einen Pfad und markiere jede durchlaufene Kante. Jede so erreichte Ecke kann wieder verlassen werden bis sich der Kantenzug schliesst, da die Gradzahl jeder Ecke gerade ist. Hat es noch unmarkierte Kanten, so beginnt eine in einer bereits traversierten Ecke B. Von B aus kann wieder ein geschlossener Kantenzug konstruiert werden, der dann in den zuerst konstruierten eingebaut werden kann. Konstruiere nun so weiter, bis alle Kanten aufgebraucht sind. (2) Verbinde die beiden Ecken ungeraden Grades durch eine zusätzliche Kante. Konstruiere jetzt mit (1) eine Eulertour. Lösche nun die eingefügte Kante. (3) klar wegen (1) und (2). Was passiert, wenn man jede Kante zweimal durchläuft?.

21 56 Satz: In jedem zusammenhängenden Graph gibt es einen Kantenzug, der jede Kante genau zweimal durchläuft. Beweis: Man zeichnet einfach zu jeder Kante eine zweite parallele Kante. So erhält jede Ecke einen geraden Grad. Wegen des vorherigen Satzes gibt es eine Eulertour. Nun verschmelzt man die neuen Kanten wieder mit den ursprünglichen und erhält so einen Kantenzug, der jede Kante genau zweimal durchläuft. Beispiel: Bildergalerie Meistens sind die Bilder längs Gängen aufgehängt Auf einem Rundgang durch die Ausstellung möchte man alle Bilder sehen, ohne aber zweimal an denselben Bildern vorbeizukommen. Am Ende möchte man wieder beim Eingang ankommen, der zugleich Ausgang ist. Ist ein solcher Rundgang überhaupt möglich? Ausstellungsraum

22 Hamiltonsche Graphen Europareise Eine Gruppe Jugendlicher möchte von Berlin aus mit einem Eurailticket alle eingezeichneten Städte genau einmal besuchen und am Schluss wieder nach Berlin zurückkehren. Ist das möglich? Eisenbahn-Netzplan Bei dieser Reise soll jede Stadt genau einmal besucht werde. Es ist aber egal, ob jede Eisenbahnstrecke benützt wird oder nicht. Es ist also keine Eulersche Tour gesucht. Definition Ein Hamiltonscher Kreis ist ein geschlossener Kantenzug, der jede Ecke des Graphen genau einmal enthält. Ein Graph, der einen Hamiltonschen Kreis enthält, heisst ein Hamiltonscher Graph. Hamiltonscher Graph kein Hamiltonscher Graph

23 Begründer der Quaternionen, die heute in der Computergraphik von Bedeutung sind. Beispiel Der Netzplan des Dodekaeders besitzt einen Hamiltonzyklus.

24 59 Billige Reise Jetzt soll die Reise eine Rundfahrt durch die 4 Städte St. Gallen, Zürich, Basel und Bern sein. Die Kosten sollen minimal werden. Basel Zürich Bern St. Gallen Wie viele Hamiltonsche Kreise gibt es? Welche Reise ist die billigste? Der obige Graph ist vollständig, d.h. von jeder Ecke gibt es zu jeder Ecke eine Kante. Hat ein vollständiger Graph n Ecken, so kann man von einer beliebigen Ecke aus die Hamiltonsche Reise beginnen, man hat noch (n - 1) Ecken zur Auswahl. Bei der nächsten Ecke sind es noch (n - 2) usw. Im Ganzen hat man also (n - 1) (n -2) = (n - 1)! Möglichkeiten. Ist uns die Richtung, wie der Hamiltonsche Kreis durchlaufen wird egal, so erhält man nur die Hälfte der Möglichkeiten. Also gilt Satz: In einem vollständigen Graph mit n Ecken gibt es (n! 1)! 2 Hamiltonsche Kreise. In der obigen Reise mit 4 Städten gibt es nur 3 Hamiltonsche Kreise. Unter diesen möchte man den billigsten finden. Zahlenbeispiel Bei 6 Städten gibt es schon 5! = 60 Hamiltonsche Kreise. 2 Aber bei 20 Städte sind es etwa 60 Billiarden Hamiltonsche Kreise. Mit 1 Million Rechenoperationen pro Minute braucht man etwa 2!10 6 Jahre: Wer interessiert sich dann noch für dieses Problem!

25 60 Das ist das berühmte Traveling Salesman Problem. Ein Handelsreisender hat Kunden in n Städten {S 1, S 2,..., S n }. Es gebe Strassen von jeder Stadt zu jeder anderen mit vorgegebenen Längen d(s i, S j ), der Distanz längs der Kante S i S j. Welche Route soll er wählen, wenn er jede Stadt genau einmal besuchen will, der Weg möglichst kurz sein soll und unser Reisender am Schluss zum Anfangspunkt zurückkehren soll? Gesucht ist also ein Hamiltonscher Kreis minimaler Länge. Bemerkungen Im Allgemeinen ist es schwierig zu entscheiden, ob ein Graph einen Hamiltonschen Kreis enthält. Bis heute ist kein Algorithmus bekannt, der in polynomialer Zeit einen Hamiltonschen Kreis findet oder ausschliesst. In polynomialer Zeit bedeutet, dass die Anzahl erforderlicher Rechenschritte höchstens mit einer festen Potenz der Anzahl Knoten und Kanten wächst. Ebenso ist nicht bekannt, ob ein Algorithmus existiert, der in polynomialer Zeit den kürzesten Weg findet. Man hält es auch für unwahrscheinlich, dass überhaupt ein solcher Algorithmus existiert. Das Travelling-Salesman-Problem (TSP), bei dem man durch jeden Knoten genau einmal geht, ist nicht zu verwechseln mit dem Chinesischen Postbotenproblem, bei dem jede Kante mindestens einmal benützt wird und der Weg minimale Länge haben soll. Zu diesen beiden Standardproblemen gibt es tausende von Anwendungen, die alle unter dem Titel Routenplanung bezeichnet werden können: Das TSP tritt auf in der Routenplanung von Speditionen, der Müllabfuhr, von Lieferungen, Car-Pooling, beim automatischen Bohren, Löten, Schweissen von Leiterplatten, usw. Interessante Informationen zum TSP finden Sie im Internet, z.b. unter: In May 2004, the traveling salesman problem of visiting all 24,978 cities in Sweden was solved: a tour of length 855,597 TSPLIB units (approximately 72,500 kilometers) was found and it was proven that no shorter tour exists. This is currently the largest solved TSP instance, surpassing the previous record of 15,112 cities through Germany set in April 2001.

26 61

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung.

Graphentheorie. Eulersche Graphen. Eulersche Graphen. Eulersche Graphen. Rainer Schrader. 14. November Gliederung. Graphentheorie Rainer Schrader Zentrum für Angewandte Informatik Köln 14. November 2007 1 / 22 2 / 22 Gliederung eulersche und semi-eulersche Graphen Charakterisierung eulerscher Graphen Berechnung eines

Mehr

Diskrete Mathematik. Hamiltonsche Graphen Teil I. Karina Arndt

Diskrete Mathematik. Hamiltonsche Graphen Teil I. Karina Arndt Diskrete Mathematik Hamiltonsche Graphen Teil I Karina Arndt 21.06.2006 Übersicht Einleitung Hamiltonsch und eulersch Hamiltonsche Kreise Hamiltonsche Graphen neu zeichnen Kreise und Wege Reguläre Graphen

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

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

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Bernhard Ganter WS 2013/14 1 Eulersche Graphen Kantenzug Ein Kantenzug in einem Graphen (V, E) ist eine Folge (a 0, a 1,..., a n ) von Knoten

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

Bemerkung: Der vollständige Graph K n hat n(n 1)

Bemerkung: Der vollständige Graph K n hat n(n 1) Bemerkung: Der vollständige Graph K n hat n(n 1) 2 Kanten. Bew: Abzählen! Definition 111. Graphen mit n paarweise zyklisch verbundenen Kanten heißen Kreise (vom Grad n) und werden mit C n bezeichnet. Beispiel

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

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen

Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Vorlesung Diskrete Strukturen Eulersche und Hamiltonsche Graphen Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2009/10 1 Bernhard Ganter, TU Dresden Modul

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

Graphentheorie. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S

Graphentheorie. Formale Grundlagen (WIN) 2008S, F. Binder. Vorlesung im 2008S Minimale Graphentheorie Formale Grundlagen (WIN) Franz Binder Institut für Algebra Johannes Kepler Universität Linz Vorlesung im 2008S http://www.algebra.uni-linz.ac.at/students/win/fg Minimale Inhalt

Mehr

4. Kreis- und Wegeprobleme

4. Kreis- und Wegeprobleme 4. Kreis- und Wegeprobleme Kapitelübersicht 4. Kreis- und Wegeprobleme Charakterisierung von eulerschen Graphen Bestimmung von eulerschen Wegen und Kreisen Hamiltonsche Graphen Abstände in Graphen Berechnung

Mehr

Institut für Mathematik Geometrie und Lineare Algebra J. Schönenberger-Deuel. Aufgabe 1. Wir geben nur zwei von sehr vielen möglichen Strategien.

Institut für Mathematik Geometrie und Lineare Algebra J. Schönenberger-Deuel. Aufgabe 1. Wir geben nur zwei von sehr vielen möglichen Strategien. Lösungen Übung 13 Aufgabe 1. Wir geben nur zwei von sehr vielen möglichen Strategien. a) Strategie 1 (nächster Nachbar): Jedes Mal reist der Reisende vom Punkt, wo er gerade ist, zur nächstgelegenen Stadt,

Mehr

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld

Westfählische Wilhelms-Universität. Eulersche Graphen. Autor: Jan-Hendrik Hoffeld Westfählische Wilhelms-Universität Eulersche Graphen Autor: 21. Mai 2015 Inhaltsverzeichnis 1 Das Königsberger Brückenproblem 1 2 Eulertouren und Eulersche Graphen 2 3 Auffinden eines eulerschen Zyklus

Mehr

Graphen. Leonhard Euler ( )

Graphen. Leonhard Euler ( ) Graphen Leonhard Euler (1707-1783) 2 Graph Ein Graph besteht aus Knoten (nodes, vertices) die durch Kanten (edges) miteinander verbunden sind. 3 Nachbarschaftsbeziehungen Zwei Knoten heissen adjazent (adjacent),

Mehr

Graphen. Graphen und ihre Darstellungen

Graphen. Graphen und ihre Darstellungen Graphen Graphen und ihre Darstellungen Ein Graph beschreibt Beziehungen zwischen den Elementen einer Menge von Objekten. Die Objekte werden als Knoten des Graphen bezeichnet; besteht zwischen zwei Knoten

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

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

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

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

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte) Hausaufgabe 2 (5 Punkte) Wintersemester 2007/08 Lösungsblatt Januar 2008 Technische Universität München Fakultät für Informatik Lehrstuhl für Informatik 15 Computergraphik & Visualisierung Prof. Dr. Rüdiger Westermann Dr. Werner Meixner Wintersemester 2007/08 Lösungsblatt 9

Mehr

9. Algorithmus der Woche Die Eulertour Wie Leonhard Euler das Haus vom Nikolaus zeichnet

9. Algorithmus der Woche Die Eulertour Wie Leonhard Euler das Haus vom Nikolaus zeichnet 9. Algorithmus der Woche Die Eulertour Wie Leonhard Euler das Haus vom Nikolaus zeichnet Autoren Michael Behrisch, Humboldt-Universität zu Berlin Amin Coja-Oghlan, Humboldt-Universität zu Berlin, Humboldt-Universität

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

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 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/ws0910

Mehr

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza)

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza) WS 2013/14 Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Esparza) Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2013ws/ds/uebung/ 22. Januar 2014 ZÜ DS ZÜ XIII

Mehr

1. Einführung. Grundbegriffe und Bezeichnungen. Beispiele. gerichtete Graphen. 1. Einführung Kapitelübersicht

1. Einführung. Grundbegriffe und Bezeichnungen. Beispiele. gerichtete Graphen. 1. Einführung Kapitelübersicht 1. Einführung Kapitelübersicht 1. Einführung Grundbegriffe und Bezeichnungen Beispiele Bäume gerichtete Graphen Graphentheorie HS Bonn-Rhein-Sieg, WS 2014/15 15 Das Königsberger Brückenproblem Beispiel

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

Nachbarschaft, Grad, regulär, Inzidenz

Nachbarschaft, Grad, regulär, Inzidenz Nachbarschaft, Grad, regulär, Inzidenz Definition Eigenschaften von Graphen Sei G = (V, E) ein ungerichteter Graph. 1 Die Nachbarschaftschaft Γ(u) eines Knoten u V ist Γ(u) := {v V {u, v} E}. 2 Der Grad

Mehr

Einheit 11 - Graphen

Einheit 11 - Graphen Einheit - Graphen Bevor wir in medias res (eigentlich heißt es medias in res) gehen, eine Zusammenfassung der wichtigsten Definitionen und Notationen für Graphen. Graphen bestehen aus Knoten (vertex, vertices)

Mehr

Kapitel 3. Kapitel 3 Graphentheorie

Kapitel 3. Kapitel 3 Graphentheorie Graphentheorie Inhalt 3.1 3.1 Grundlagen 3.2 3.2 Das Das Königsberger Brückenproblem 3.3 3.3 Bäume 3.4. 3.4. Planare Graphen 3.5 3.5 Färbungen Seite 2 3.1 Grundlagen Definition. Ein Ein Graph besteht aus

Mehr

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete).

Vollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Vollständiger Graph Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Mit K n wird der vollständige Graph mit n Knoten bezeichnet. Bemerkung

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

Bäume und Wälder. Seminar: Graphentheorie Sommersemester 2015 Dozent: Dr. Thomas Timmermann

Bäume und Wälder. Seminar: Graphentheorie Sommersemester 2015 Dozent: Dr. Thomas Timmermann Bäume und Wälder Seminar: Graphentheorie Sommersemester 2015 Dozent: Dr. Thomas Timmermann Ida Feldmann 2-Fach Bachelor Mathematik und Biologie 6. Fachsemester Inhaltsverzeichnis Einleitung 1 1. Bäume

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

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

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Mayr)

Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Mayr) WS 2011/12 Zentralübung zur Vorlesung Diskrete Strukturen (Prof. Mayr) Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2011ws/ds/uebung/ 25. Januar 2012 ZÜ DS ZÜ XIII

Mehr

WS 2008/09. Diskrete Strukturen

WS 2008/09. Diskrete Strukturen WS 2008/09 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/ws0809

Mehr

WS 2009/10. Diskrete Strukturen

WS 2009/10. Diskrete Strukturen WS 2009/10 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/ws0910

Mehr

3 Klassifikation wichtiger Optimierungsprobleme

3 Klassifikation wichtiger Optimierungsprobleme 3 Klassifikation wichtiger Optimierungsprobleme 3.1 Das MIN- -TSP Wir kehren nochmal zurück zum Handlungsreisendenproblem für Inputs (w {i,j} ) 1 i

Mehr

Bipartite Graphen. Beispiele

Bipartite Graphen. Beispiele Bipartite Graphen Ein Graph G = (V, E) heiÿt bipartit (oder paar), wenn die Knotenmenge in zwei disjunkte Teilmengen zerfällt (V = S T mit S T = ), sodass jede Kante einen Knoten aus S mit einem Knoten

Mehr

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP Kap..1 Heuristiken Kap.. Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 3. VO DAP SS 008 14. Juli 009 Überblick

Mehr

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien

Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Kap. 7.1 Heuristiken Kap. 7.2 Approximative Algorithmen und Gütegarantien Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 23. VO DAP2 SS 2008 14. Juli 2009

Mehr

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie

Diskrete Mathematik. Sebastian Iwanowski FH Wedel. Kap. 6: Graphentheorie Referenzen zum Nacharbeiten: Diskrete Mathematik Sebastian Iwanowski FH Wedel Kap. 6: Graphentheorie Lang 6 Beutelspacher 8.1-8.5 Meinel 11 zur Vertiefung: Aigner 6, 7 (7.4: Algorithmus von Dijkstra) Matousek

Mehr

6. Übung zur Linearen Optimierung SS08

6. Übung zur Linearen Optimierung SS08 6 Übung zur Linearen Optimierung SS08 1 Sei G = (V, E) ein schlichter ungerichteter Graph mit n Ecken und m Kanten Für eine Ecke v V heißt die Zahl der Kanten (u, v) E Grad der Ecke (a) Ist die Anzahl

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

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph.

Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. Aufgabe 4.2 Sei G = (V, E, l) ein ungerichteter, gewichteter und zusammenhängender Graph. a) Es seien W 1 = (V, E 1 ), W 2 = (V, E 2 ) Untergraphen von G, die beide Wälder sind. Weiter gelte E 1 > E 2.

Mehr

Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung

Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung Wie findet man den optimalen Weg zum Ziel? Klassische Probleme der Kombinatorischen Optimierung Teilnehmer/innen: Markus Dahinten, Graf Münster Gymnasium Bayreuth Robert Fay, Herder Gymnasium Berlin Falko

Mehr

1. Einleitung wichtige Begriffe

1. Einleitung wichtige Begriffe 1. Einleitung wichtige Begriffe Da sich meine besondere Lernleistung mit dem graziösen Färben (bzw. Nummerieren) von Graphen (speziell von Bäumen), einem Teilgebiet der Graphentheorie, beschäftigt, und

Mehr

Zentralübung zur Vorlesung Diskrete Strukturen

Zentralübung zur Vorlesung Diskrete Strukturen WS 2010/11 Zentralübung zur Vorlesung Diskrete Strukturen Dr. Werner Meixner Fakultät für Informatik TU München http://www14.in.tum.de/lehre/2010ws/ds/uebung/ 2. Februar 2011 ZÜ DS ZÜ XIII 1. Übungsbetrieb:

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

Gibt es in Königsberg einen Spaziergang, bei dem man jede der. Pregelbrücken. überquert?

Gibt es in Königsberg einen Spaziergang, bei dem man jede der. Pregelbrücken. überquert? Graphentheorie Gibt es in Königsberg einen Spaziergang, bei dem man jede der sieben Pregelbrücken genau einmal überquert? 1 Königsberger Brückenproblem Im Jahre 1736 Leonhard Euler löste das Problem allgemein

Mehr

Bäume und Wälder. Definition 1

Bäume und Wälder. Definition 1 Bäume und Wälder Definition 1 Ein Baum ist ein zusammenhängender, kreisfreier Graph. Ein Wald ist ein Graph, dessen Zusammenhangskomponenten Bäume sind. Ein Knoten v eines Baums mit Grad deg(v) = 1 heißt

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

Diskrete Mathematik 1

Diskrete Mathematik 1 Ruhr-Universität Bochum Lehrstuhl für Kryptologie und IT-Sicherheit Prof. Dr. Alexander May M. Ritzenhofen, M. Mansour Al Sawadi, A. Meurer Lösungsblatt zur Vorlesung Diskrete Mathematik 1 WS 2008/09 Blatt

Mehr

Isomorphie von Bäumen

Isomorphie von Bäumen Isomorphie von Bäumen Alexandra Weinberger 23. Dezember 2011 Inhaltsverzeichnis 1 Einige Grundlagen und Definitionen 2 1.1 Bäume................................. 3 1.2 Isomorphie..............................

Mehr

Anmerkungen zur Übergangsprüfung

Anmerkungen zur Übergangsprüfung DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung

Mehr

Wiederholung aus Diskreter Mathematik I: I: Graphentheorie

Wiederholung aus Diskreter Mathematik I: I: Graphentheorie Wiederholung aus Diskreter Mathematik I: I: Graphentheorie Inhalt: W.1 Grundlagen W.2 Das Königsberger Brückenproblem W.3 Bäume W.4 Planare Graphen W.5 Färbungen W.1 Grundlagen Ein Ein Graph besteht aus

Mehr

1. Einige Begriffe aus der Graphentheorie

1. Einige Begriffe aus der Graphentheorie . Einige Begriffe aus der Graphentheorie Notation. Sei M eine Menge, n N 0. Dann bezeichnet P n (M) die Menge aller n- elementigen Teilmengen von M, und P(M) die Menge aller Teilmengen von M, d.h. die

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

M. Anderegg, E. Müller Graphentheorie

M. Anderegg, E. Müller Graphentheorie Graphentheorie In den nächsten zwei Doppellektion lernen Sie ein Gebiet der Mathematik kennen, dass sich komplett von allem bisher Gehörten unterscheidet: Die Graphentheorie. Sie wurde vom Schweizer Mathematiker

Mehr

Weitere Ergebnisse. Beispiel Sei G = (E, K) mit E = { 1,, 5 } und K = { 12, 13, 14, 23, 24, 34, 35, 45 }. Das Haus vom Nikolaus

Weitere Ergebnisse. Beispiel Sei G = (E, K) mit E = { 1,, 5 } und K = { 12, 13, 14, 23, 24, 34, 35, 45 }. Das Haus vom Nikolaus 4. Euler-Züge und Hamilton-Kreise 161 Weitere Ergebnisse Die Analyse des Problems Durchlaufe alle Kanten ist mit den obigen Ergebnissen keineswegs abgeschlossen. Eine Frage ist zum Beispiel: Was gilt,

Mehr

4. Welchen Zusammenhang gibt es zwischen den Eckengraden und der Anzahl der Kanten eines ungerichteten Graphen?

4. Welchen Zusammenhang gibt es zwischen den Eckengraden und der Anzahl der Kanten eines ungerichteten Graphen? Kapitel 7 Graphentheorie Verständnisfragen Sachfragen 1. Was ist ein ungerichteter Graph? 2. Erläutern Sie den Begriff Adjazenz! 3. Erläutern Sie den Eckengrad in einem Graphen! 4. Welchen Zusammenhang

Mehr

Anwendungen von Graphen

Anwendungen von Graphen Anwendungen von Graphen Strassen- und Verkehrsnetze Computernetzwerke elektrische Schaltpläne Entity-Relationship Diagramme Beweisbäume endliche Automaten Syntaxbäume für Programmiersprachen Entscheidungsbäume

Mehr

Gibt es in Königsberg einen Spaziergang, bei dem man jede der sieben Pregelbrücken genau einmal überquert?

Gibt es in Königsberg einen Spaziergang, bei dem man jede der sieben Pregelbrücken genau einmal überquert? Graphentheorie Gibt es in Königsberg einen Spaziergang, bei dem man jede der sieben Pregelbrücken genau einmal überquert? Königsberger Brückenproblem Gibt es in Königsberg einen Spaziergang, bei dem man

Mehr

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung Gliederung der Vorlesung 1. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen 3. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman Problem. Flüsse in Netzwerken

Mehr

Freie Universität Berlin. Diskrete Mathematik. Ralf Borndörfer, Stephan Schwartz. Freie Universität. 08. April 2013

Freie Universität Berlin. Diskrete Mathematik. Ralf Borndörfer, Stephan Schwartz. Freie Universität. 08. April 2013 Diskrete Mathematik Ralf Borndörfer, Stephan Schwartz 08. April 2013 FUB VL Diskrete Mathematik SS 2013 1 Leonhard Euler (1707-1783) e i sin cos f(x) FUB VL Diskrete Mathematik SS 2013 2 Das Königsberger

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

= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2

= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2 1 Graphen Definition: Ein Graph G = (V,E) setzt sich aus einer Knotenmenge V und einer (Multi)Menge E V V, die als Kantenmenge bezeichnet wird, zusammen. Falls E symmetrisch ist, d.h.( u,v V)[(u,v) E (v,u)

Mehr

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Einheit 11: Graphen Thomas Worsch Karlsruher Institut für Technologie, Fakultät für Informatik Wintersemester 2010/2011 1/59 Graphische Darstellung von Zusammenhängen schon

Mehr

Elementargeometrie. Prof. Dr. Andreas Meister SS digital von: Frank Lieberknecht

Elementargeometrie. Prof. Dr. Andreas Meister SS digital von: Frank Lieberknecht Prof. Dr. Andreas Meister SS 2004 digital von: Frank Lieberknecht Geplanter Vorlesungsverlauf...1 Graphentheorie...1 Beispiel 1.1: (Königsberger Brückenproblem)... 1 Beispiel 1.2: (GEW - Problem)... 2

Mehr

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E.

\ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E. Das Komplement Ḡ = (V, ( V ) \ E) eines Graphen G = (V, E) besitzt die gleiche Knotenmenge V und hat als Kantenmenge alle Kanten des vollständigen Graphen ohne die Kantenmenge E. Ein Graph H = (V, E )

Mehr

Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten

Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten Graphentheorie Graph Paar (V,E) V: nichtleere Menge von Knoten (vertex) E: Menge von Kanten (edges): Relation (Verbindung) zwischen den Knoten gerichteter Graph (DiGraph (directed graph) E: Teilmenge E

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

durch Einfügen von Knoten konstruiert werden kann.

durch Einfügen von Knoten konstruiert werden kann. Satz von Kuratowski Definition Unterteilung eines Graphen Sei G = (V, E) und e = {u, v} E. 1 Das Einfügen eines neuen Knoten w in die Kante e führt zum Graphen G = (V {w}, E \ e {{u, w}, {w, v}}). 2 Der

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

Bernd Döring. Wege, Plätten, Färben. Vom Problem zur Theorie der Graphen

Bernd Döring. Wege, Plätten, Färben. Vom Problem zur Theorie der Graphen Bernd Döring Wege, Plätten, Färben Vom Problem zur Theorie der Graphen Bernd Döring, 2002-2005 Bernd Döring Johannes-Althusius-Gymnasium Früchteburger Weg 28 26721 Emden - 2 - Inhaltsverzeichnis 0. Einleitung

Mehr

9. Übung Algorithmen I

9. Übung Algorithmen I Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der

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

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

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

Grundbegriffe der Informatik

Grundbegriffe der Informatik Grundbegriffe der Informatik Kapitel 15: Graphen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für Theoretische Informatik

Mehr

1.Aufgabe: Minimal aufspannender Baum

1.Aufgabe: Minimal aufspannender Baum 1.Aufgabe: Minimal aufspannender Baum 11+4+8 Punkte v 1 v 2 1 3 4 9 v 3 v 4 v 5 v 7 7 4 3 5 8 1 4 v 7 v 8 v 9 3 2 7 v 10 Abbildung 1: Der Graph G mit Kantengewichten (a) Bestimme mit Hilfe des Algorithmus

Mehr

Von den Kanten von Gewicht 4 wird nur noch eine ausgewählt, die zu dem letzten nicht ausgewählten Knoten führt: 1. Juni

Von den Kanten von Gewicht 4 wird nur noch eine ausgewählt, die zu dem letzten nicht ausgewählten Knoten führt: 1. Juni CHAPTER. GRAPHEN.. B Ä UME.. Bäume Ein schlichter Graph ohne Kreise heisst Wald, ist er noch zusätzlich zusammenhängend so wird er Baum genannt. Bevor wir Bäume genauer beschreiben ein kleines LEMMA...

Mehr

Minimal spannender Baum

Minimal spannender Baum Minimal spannender Baum 16 1 2 21 5 11 19 6 6 3 14 33 10 5 4 18 Die Kreise zeigen die vorgesehenen Standorte neu zu errichtender Filialen einer Bank. Entlang der bestehenden Straßen sollen Telefonleitungen

Mehr

Graphentheorie (Teschl/Teschl 15-17)

Graphentheorie (Teschl/Teschl 15-17) Graphentheorie (Teschl/Teschl 15-17) Ein Graph besteht aus Knoten, die durch Kanten miteinander verbunden sind. graphen.pdf, Seite 1 Anwendungen Netzwerke (Verkehr, Daten,...) Datenstrukturen Suchbäume

Mehr

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1

Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Stud.-Nummer: Datenstrukturen & Algorithmen Seite 1 Aufgabe 1. / 16 P Instruktionen: 1) In dieser Aufgabe sollen Sie nur die Ergebnisse angeben. Diese können Sie direkt bei den Aufgaben notieren. 2) Sofern

Mehr

Algorithmen und Datenstrukturen (WS 2007/08) 63

Algorithmen und Datenstrukturen (WS 2007/08) 63 Kapitel 6 Graphen Beziehungen zwischen Objekten werden sehr oft durch binäre Relationen modelliert. Wir beschäftigen uns in diesem Kapitel mit speziellen binären Relationen, die nicht nur nur besonders

Mehr

Graphentheorie Mathe-Club Klasse 5/6

Graphentheorie Mathe-Club Klasse 5/6 Graphentheorie Mathe-Club Klasse 5/6 Thomas Krakow Rostock, den 26. April 2006 Inhaltsverzeichnis 1 Einleitung 3 2 Grundbegriffe und einfache Sätze über Graphen 5 2.1 Der Knotengrad.................................

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

Vorlesung Datenstrukturen

Vorlesung Datenstrukturen Vorlesung Datenstrukturen Graphdurchläufe Maike Buchin 22. und 27.6.2017 Graphexploration Motivation: Für viele Zwecke will man den gesamten Graphen durchlaufen, zb. um festzustellen ob er (stark) zusammenhängt.

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

Freie Bäume und Wälder

Freie Bäume und Wälder (Martin Dietzfelbinger, Stand 4.6.2011) Freie Bäume und Wälder In dieser Notiz geht es um eine besondere Sorte von (ungerichteten) Graphen, nämlich Bäume. Im Gegensatz zu gerichteten Bäumen nennt man diese

Mehr

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37

2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 2. November 2011 Gradfolgen Zusammenhang Kürzeste Wege H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 Satz von Erdős und Gallai Eine Partition einer natürlichen Zahl ist genau dann die Gradfolge

Mehr

Hausarbeit aus. Graphentheorie Formale Grundlagen Professor Franz Binder. zum Thema. Herbert Huber k Seite 1 von 21

Hausarbeit aus. Graphentheorie Formale Grundlagen Professor Franz Binder. zum Thema. Herbert Huber k Seite 1 von 21 Hausarbeit aus 368.712 Formale Grundlagen Professor Franz Binder zum Thema Graphentheorie Herbert Huber k0455780 Seite 1 von 21 Inhaltsverzeichnis Graphen Grundlagen und Begriffsdefinitionen...3 Graphenstrukturen...6

Mehr

Name:... Vorname:... Matr.-Nr.:... Studiengang:...

Name:... Vorname:... Matr.-Nr.:... Studiengang:... Technische Universität Braunschweig Sommersemester 2013 IBR - Abteilung Algorithmik Prof. Dr. Sándor P. Fekete Dr. Christiane Schmidt Stephan Friedrichs Klausur Netzwerkalgorithmen 16.07.2013 Name:.....................................

Mehr

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

ma orrsc e, I rerun er e en

ma orrsc e, I rerun er e en Stephan Hußmann (Hrsg.) o ma orrsc e, I rerun er e en In Studium und Unterricht vieweg 42 - ein Geleitwort von Peter Gritzmann Xl Vorwort Xll1 1 Optimal zum Ziel: Das Kürzeste-Wege-Problem 1 1 U-Bahn-Fahrten,

Mehr

Tutoraufgabe 1 (Suchen in Graphen):

Tutoraufgabe 1 (Suchen in Graphen): Prof. aa Dr. E. Ábrahám Datenstrukturen und Algorithmen SS14 F. Corzilius, S. Schupp, T. Ströder Tutoraufgabe 1 (Suchen in Graphen): a) Geben Sie die Reihenfolge an, in der die Knoten besucht werden, wenn

Mehr

Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,...

Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,... Satz 324 Sei M wie oben. Dann gibt es für ein geeignetes k Konstanten c i > 0 und Permutationsmatrizen P i, i = 1,..., k, so dass gilt M = k c i P i i=1 k c i = r. i=1 Diskrete Strukturen 7.1 Matchings

Mehr