Graphentheorie und Anwendungen. Peter Eichelsbacher, Ruhr-Universität Bochum
|
|
- Leander Roth
- vor 6 Jahren
- Abrufe
Transkript
1 Graphentheorie und Anwendungen Peter Eichelsbacher, Ruhr-Universität Bochum 2005
2
3 Inhaltsverzeichnis 1 Motivation, Beispiele 3 2 Grundbegriffe der Graphentheorie 7 3 Hamiltonkreise und Eulertouren 15 4 Bäume 25 1
4 2
5 KAPITEL 1 Motivation, Beispiele Wir wollen im Rahmen dieses kurzen Einblicks in das mathematische Teilgebiet Graphentheorie einige Fragen stellen und beantworten, frei nach einem berühmten Mathematiker, Georg Cantor, der 1867 bemerkte: In der Mathematik ist die Kunst des Fragestellens öfter gebräuchlich als die des Lösens! Wir wollen z.b. die folgenden Fragen stellen bzw. lösen. (1) Königsberger Brückenproblem, 1736, Leonhard Euler Fluss: Pregel, 18. Jahrhundert A B D C Kann man einen Spaziergang durch die Stadt machen und dabei über jede Brücke gehen, aber über jede nur einmal? Und nach dem Spaziergang möchte man wieder nach Hause, d.h. zum Ausgangspunkt zurückkehren. 3
6 (2) Das Haus vom Nikolaus Entscheide, ob man das Bild zeichnen kann, ohne den Stift abzusetzen und ohne eine Linie doppelt zu ziehen! (Bei der späteren Betrachtung Eulerscher Kreise und Wege werden wir den Unterschied zwischen (1) und (2) klar herausarbeiten.) (3) Reisepläne Berlin Amsterdam Köln Frankfurt Paris Wien Städtetour mit Euro - Ticket: Start in Berlin, Fahrt durch alle im Plan eingezeichneten Städte, durch jede nur einmal, und Fahrt soll in Berlin enden (jede Stadt einmal besuchen, es muss nicht jede Strecke abgefahren werden; Hamilton Graph/Kreis). Dies muss keine eulersche Tour sein. (4) eine günstigste Rundreise Das Problem ist als Problem des Handlungsreisenden (Traveling Salesman Problem, (TSP) ) bekannt: Ein Geschäftsmann muss in mehreren Orten Kunden betreuen und danach in sein Büro zurückkehren. Er möchte seine Fahrtroute so planen, dass er durch jeden Ort nur einmal kommt und dass außerdem die zurückgelegte Strecke möglichst kurz wird ( kürzester hamiltonscher Kreis ). 4
7 (5) Chinese Postman Problem Suche geschlossenen Weg durch Zufallsgebiet, möglichst kurz (in (3) und (4): nur an den Straßenecken Briefkästen ). (6) aufspannende Bäume In einer ländlichen Gegend sollen zwischen mehreren Ortschaften Straßen neu gebaut werden. Es soll jeder Ort von jedem anderen Ort auf einer der Straßen erreicht werden können. (7) minimal aufspannender Baum Wenn in (6) noch die gesamten Baukosten möglichst niedrig sein sollen, sucht man einen minimalen aufspannenden Baum. ( aufspannender Baum: Minimallösung) (8) kürzeste Wege Wir haben einen Straßenplan vor uns und befinden uns an einer Stelle u. Wir möchten von u in möglichst kurzer Zeit nach v kommen. (9) Das Labyrinth - Problem Labyrinth an einer Stelle betreten, alle Wege im Labyrinth erkunden und wieder herausfinden. Sollten wir zu den gestellten Problemen Lösungen finden können, so sind wir jeweils auch an einem Verfahren interessiert, die jeweilige Lösung zu finden, also an einem Algorithmus. Wir versuchen, die allermeisten der genannten Probleme zu lösen, hier und da werden wir richtig beweisen. Zunächst benötigen wir eine Sprache. Wir führen ein paar Grundbegriffe der Graphentheorie ein. Mathematik treiben heißt hier, eine klare Sprache einzuführen und mit Hilfe dieser Sprache die gestellten Probleme zu lösen, und zwar nicht ad hoc, sondern zu beweisen, dass die Probleme gelöst sind bzw. die vorgestellten Algorithmen immer funktionieren! Es bleibt im Rahmen dieser Einführung keine Zeit, die Lösungsverfahren zu implementieren. 5
8 6
9 KAPITEL 2 Grundbegriffe der Graphentheorie Wir wollen nun Grundbegriffe der Graphentheorie einführen. Ein Graph besteht aus Ecken (Knoten) und Kanten, wobei eine Kante genau zwei Ecken verbindet. Je zwei Ecken können also durch keine, eine oder mehr als eine Kante verbunden sein. Notation: G(E, K); E: Knotenmenge; K: Kantenmenge. Anwendungen: Man denke an Straßennetze; Städteverbindungen; chemische Moleküle - C n H 2n+1 OH (Summenformel) - graphischer Aufbau (Strukturformel); elektrische Netzwerke. 2.1 Beispiele (1) Königsberger Brückenproblem A B C D Lösung des ersten Problems? (2) Haus vom Nikolaus 7
10 (3) Labyrinth Start S Ziel Z Repräsentation als Graph (4) vollständige Graphen Ein Graph heißt vollständig, wenn jede Ecke mit jeder anderen Ecke durch genau eine Kante verbunden ist. K n bezeichnet den vollständigen Graphen mit n Ecken. K 1 K 2 K 3 K 4 K 5 (5) Schlingen und Mehrfachkanten sind grundsätzlich zugelassen. Graphen heißen einfach genau dann, wenn keine Schlingen und keine Mehrfachkanten enthalten sind. (Wir wollen fast immer einfache Graphen studieren.) 8
11 (6) verschiedene Diagramme für den selben Graphen aus (2) p q t s r q t p r s (7) Weitere Beispiele: Gittergraphen (M m,n ) m n Knoten wie in einem Gitter mit m Zeilen und n Spalten verbinden Kreis (C n ) n Knoten, die zyklisch miteinander verbunden sind Weg/Pfad (P n ) n + 1 Knoten und n Kanten, die aufeinanderfolgende Knoten miteinander verbinden. d-dimensionaler Hyperwürfel Q d Knoten: Menge aller 0 1-Folgen der Länge d; zwei solche Knoten sind genau dann durch eine Kante verbunden, wenn sich ihre Folgen an genau einer Stelle unterscheiden. (Übung: K 5, M 4,5, C 5, P 4, Q 3 zeichnen) Weitere Grundbegriffe: Die Anzahl der Kanten, die von einer Ecke e E ausgehen, bezeichnet man als Grad der Ecke, in Notation deg(e). deg(e) = 0: isolierte Ecke deg(e) = 1: Blatt Beispiele: K n : deg(e) = n 1 C n : deg(e) = 2 für alle e für alle e Wir betrachten einfache Graphen: 9
12 2.2 Satz (Mathematische Formel / Handschlaglemma) deg(e) = 2 K, e E denn jede Kante liefert genau zweimal einen Beitrag zu der Summe der Grade. Also folgt auch: 2.3 Korollar In endlichen Graphen ist die Anzahl der Knoten mit ungeradem Grad gerade. (Sonst wäre die Summe der Grade ungerade, was nach obiger Formel nicht geht.) Ein paar Begriffe noch: 2.4 Definition G(E, K) sei ein Graph; ein Graph G(F, L) mit F E und L K heißt Untergraph, Teilgraph, Subgraph. Im Fall E = F heißt G(F, L) aufspannender Untergraph (spanning subgraph). 2.5 Definition G(E, K) heißt zusammenhängend genau dann, wenn je zwei Knoten e, f E durch einen Weg verbunden werden können (ein Weg von e nach f existiert). Größte zusammenhängende Teilgraphen von G(E, K) heißen Komponenten (Wenige Kanten sind ein Hinweis auf viele Komponenten). 3 Komponenten Ein schönes Resultat: 2.6 Satz Jeder Graph G(E, K) enthält mindestens E K viele Komponenten. 2.7 Korollar Für jeden zusammenhängenden Graphen G(E, K) gilt K E 1. (Denn hier haben wir genau eine Komponente und mit Satz 2.6 ist E K 1.) 10
13 Wir wagen einen Beweis des obigen Satzes: Sei m := K. Ist m = 0, so hat G(E, K) keine Kante, jede Ecke ist eigene Komponente, also gibt es E Komponenten. Es sei nun G(E, K) ein Graph mit K = m + 1. Es sei k K und K = K \ {k}, also K = m und betrachte G(E, K ),. K hat (nach Induktionsvoraussetzung) mindestens E m viele Komponenten. Nun nehmen wir die Kante k wieder hinzu. Liegen beide Ecken von k in G(E, K ) in der gleichen Komponente, so ist die Anzahl der Komponenten unverändert; andernfalls verringert sie sich um eins (wenn beide Ecken von k in G(E, K ) in verschiedenen Komponenten liegen). Also hat G(E, K) mindestens E m 1 viele Komponenten. 2.8 Definition Zwei Graphen G(E 1, K 1 ) und G(E 2, K 2 ) heißen isomorph, wenn es eine 1-1-Abbildung ϕ : E 1 E 2 gibt mit e, f E 1 mit: e durch Kante verbunden mit f ϕ(e), ϕ(f) E 2 mit: ϕ(e) durch Kante verbunden mit ϕ(f). Notation: G(E 1, K 1 ) = G(E 2, K 2 ) 2.9 Bemerkung Zwei Graphen sind genau dann isomorph, wenn der eine Graph aus dem anderen Graphen durch Umbenennung der Knoten hervorgeht. Weitere Diagramme: ein zusammenhängender Graph ein nichtzusammenhängender Graph 11
14 Graph und Eckengrade A D A B C isomorph zu B D C nicht isomorph zu nicht isomorph zu 12
15 nicht isomorph zu nicht isomorph zu Beide Graphen haben 5 Ecken und 6 Kanten, davon 3 Ecken mit Grad 2, 2 Ecken mit Grad 3. Im linken Graphen sind die Ecken mit Grad 3 verbunden, rechts hingegen nicht. 13
16 14
17 KAPITEL 3 Hamiltonkreise und Eulertouren Wir machen uns nun daran, die gestellten Probleme (1) - (5) aus Kapitel 1 zu lösen. Wir führen dazu die Begriffe Hamiltonkreis und Eulertour ein. Sir William Rowan Hamilton ( ) erfand 1859 das Spiel Around the world. Die Punkte eines Dodekaeders stellen Städte dar. Die Aufgabe besteht darin, entlang der Kanten des Dodekaeders eine Rundreise zu unternehmen, bei der man jede Stadt genau einmal besucht. Seit Platon ist bekannt, dass es nur fünf reguläre konvexe Polyeder gibt. (Alle seine Oberflächen bestehen aus denselben regelmäßigen Vielecken und in jeder Ecke stoßen gleich viele dieser Vielecke zusammen.) Tetraeder (4 Dreiecke) (tetra) Hexaeder (6 Quadrate) (hexa) Oktaeder (8 Dreiecke) (okta) Pentagon: Dodekaeder (12 Fünfecke) (pentagon)(gr. dodeka = 12) Ikosaeder (20 Dreiecke) (gr. eikosa = 20) Wir betrachten einfache, endliche Graphen ( E < ). 15
18 3.1 Definition Es sei G(E, K) ein endlicher 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, heißt hamiltonscher Kreis oder Hamiltonkreis. G(E, K) heißt hamiltonsch genau dann, wenn G einen hamiltonschen Kreis enthält. Siehe Kapitel 1, Beispiele (3) und (4), (Traveling Salesman Problem). Welche Algorithmen für das Auffinden eines Hamiltonkreises gibt es? Das Entscheidungsproblem Gegeben sei ein Graph, enthält er einen Hamiltonkreis? ist N P-vollständig (Richard Karp; 1972). Dies bedeutet in etwa: Man wird keinen Algorithmus finden können, der entscheidet, ob ein Graph hamiltonsch ist und dessen Laufzeit polynomial in der Größe des Graphen (Anzahl Knoten und Kanten) ist. Man wendet alternativ heuristische und nicht exakte Verfahren an. 3.2 Satz von Dirac Erfüllt ein Graph G(E, K) die Bedingung deg(x) + deg(y) E für alle x, y E, x y, {x, y} K, so enthält er einen Hamiltonkreis. Intuitiv ist plausibel, dass die Existenz eines Hamiltonkreises umso wahrscheinlicher ist, je mehr Kanten der Graph hat. Erfüllt ein Graph deg(e) E /2 für jeden Knoten, so ist er hamiltonsch (Dirac). Wir wollen einen Beweis uns zumindest plausibel machen. Zuvor wollen wir hamiltonsche Graphen noch etwas diskutieren. Betrachte 16
19 Ein hamiltonscher Kreis dieses Graphen = F A E D C B Entfernt man eine Ecke und mit ihr alle Kanten, die zu dieser Ecke führen, so bleibt der Graph zusammenhängend. Daraus folgt: Ist es möglich, in einem Graphen eine Ecke zu entfernen und mit ihr alle Kanten, die in ihr enden, und zerfällt der Graph dann in zwei oder mehr Teile, die nicht mehr zusammenhängend sind, so ist der Graph nicht hamiltonsch. K n ist hamiltonsch und wir zählen die hamiltonschen Kreise: K 3 enthält einen hamiltonschen Kreis. K 4 enthält 3 hamiltonsche Kreise. K n enthält (n 1)! 2 hamiltonsche Kreise. Daraus folgt 3.3 Satz Die Anzahl der hamiltonschen Kreise eines einfachen Graphen mit n Ecken ist höchstens (n 1)! 2. (Wir überlegen uns gemeinsam eine Begründung.) Beweis von Satz 3.2: Angenommen, es existiert G(E, K), der die Bedingungen des Satzes erfüllt, aber keinen Hamiltonkreis enthält. Unter allen Gegenbeispielgraphen mit Knotenmenge E wählen wir einen Graphen G, für den K maximal ist. Da K n einen Hamiltonkreis enthält, ist G K n. Folglich enthält G mindestens eine Nichtkante, also Knoten x, y, die nicht durch eine Kante verbunden sind. Wähle ein solches Paar und füge die verbindende Kante hinzu. Der neue Graph G erfüllt die Voraussetzungen des Satzes, denn G ist ein maximales 17
20 x = v 1 v n = y v 2 v n 1 v 3 v i v i+1 Gegenbeispiel. G enthält also einen Hamiltonkreis C. C muss die Kante xy enthalten. Nummeriere nun die Knoten in C so, dass Setze y = v n S T S T < E = n C = (x = v 1, v 2,..., v n = y). S := {v i 1 i n; xv i+1 ist Kante ( K)} T := {v i 1 i n; yv i ist Kante} Weiter ist S = deg(x), T = deg(y). S T > 0 nach Voraussetzung. Also ist S T nicht leer. Es sei v i S T. Ersetze xy und v i v i+1 durch xv i+1 und yv i. Man erhält einen Hamiltonkreis in G. Dies ist ein Widerspruch! 3.4 Beispiele (1) Sitzordnungen: Sechs Personen sollen so an einem runden Tisch Platz nehmen, dass jeder zwischen zwei Personen sitzt, die er schon kennt. {A,..., F } A, B, D, E; }{{} hier kennt jeder jeden B, C, F ; }{{} A, F ; }{{} C, D }{{} Kann man die Personen wie gewünscht plazieren? 18
21 Der Bekanntschaftsgraph E D F C A B ist hamiltonsch. Setze die Leute entsprechend einem hamiltonschen Kreis an den Tisch: dann sitzt jeder wie gewünscht neben zwei Bekannten. B A F E D C Dies ist eine mögliche Sitzordnung. (2) Traveling Salesman Problem: geplante Rundreise mit möglichst niedrigem Gesamtwert (bewertete Graphen) 6 Städte: 60 Rundfahrten möglich = 5! 2 20 Städte: / 2 riesige, utopische Laufzeit für Algorithmus 3.5 Definition Eine Eulertour in einem Graphen ist ein Weg, der jede Kante des Graphen genau einmal enthält und dessen Anfangs- und Endknoten identisch sind. Enthält der Graph eine Eulertour, so nennt man ihn eulersch (eulerscher Kreis). zu den Beispielen (1) und (2) aus Kapitel 1: (1) scheint nicht eulersch zu sein und auch keinen eulerschen Weg zu enthalten. Das Haus des Nikolaus enthält einen eulerschen Weg (man fange links oder rechts unten an, denn nur diese Knoten haben Grad 3). 19
22 Nikolaus mit Keller ist eulersch. Zu (1): alle Ecken haben ungeraden Grad. Wie bei (2) müsste jede Ecke Anfangs- oder Endpunkt des Spaziergangs sein! Vor einer Charakterisierung eulerscher Graphen ein Vergleich zu hamiltonsch: eulersch: jede Kante genau einmal hamiltonsch: jede Ecke genau einmal e + h e h e h e h 3.6 Satz Ein zusammenhängender Graph G(E, K) ist genau dann eulersch, wenn der Grad aller Knoten gerade ist. Beweis: Enthält G eine Eulertour, so ist der Grad deg(e) aller Knoten e E gerade, denn aus jedem Knoten geht man genauso oft heraus wie herein. Für die andere Richtung folgt ein algorithmischer Beweis. Der Knoten v 1 sei beliebig gewählt. Durchlaufe von v 1 aus Kanten des Graphen in beliebiger Reihenfolge, aber keine Kante mehr als einmal. Da alle Knotengrade gerade sind, gibt es zu jedem Knoten v 1, den wir auf dem Weg finden, eine noch unbenutzte Kante, über die wir diesen Knoten wieder verlassen. Der Weg (W 1 ) muss wieder in v 1 enden. Es kann passieren, dass man dann noch nicht alle Kanten durchlaufen hat. In diesem Fall existiert mindestens ein Knoten v 2 in W 1, der zu einer noch nicht benutzten Kante inzident ist, schließlich ist der Graph zusammenhängend. Starte in v 2 obigen Prozess, finde Weg W 2, der in v 2 beginnt und endet. W 1 20
23 und W 2 kann man zu einem neuen Weg verschmelzen. Man laufe auf W 1 von v 1 zu v 2, dann W 2 und zuletzt das verbliebene Teilstück von W 1. Wähle, falls noch nicht fertig, v 3 wie oben und fahre so fort. Dies ist der Algorithmus von Hierholzer, a b c d e h g f An diesem Graphen lässt dich der Algorithmus schön demonstrieren. Eigenschaften: Der Algorithmus ist korrekt Zeitkomplexität O( K ) (5) aus Kapitel 1 kann mit der Eulertour-Charakterisierung plus einer Lösung von (8) (siehe ebenfalls Kapitel 1) erhalten werden. Weitere Anwendungen: Beginn einer Ausstellung 21
24 wird repräsentiert durch den Graphen Da der Grad aller Ecken gerade ist, ist der Graph eulersch. Domino usw., Einträge {0,..., 6} Lege die Steine so aneinander, dass gleiche Zahlen benachbart sind. Gibt es eine Kette, die sich schließt, keine Verzweigungen enthält und bei der alle 28 Steine untergebracht werden? 22
25 0 zwei gleiche Augenzahlen Grad(Ecke) = 8 23
26 24
27 KAPITEL 4 Bäume Wir machen uns nun an die Probleme, die mit sogenannten Bäumen zu tun haben. Dazu klären wir den Begriff Baum genau. 4.1 Definition Ein Graph heißt ein Baum, falls er zusammenhängend ist und keine Kreise enthält. Ein Graph, dessen Komponenten jeweils Bäume sind, heißt ein Wald. Bäume: H H C H Methan H Isobutan Kohlenwasserstoffverbindungen (Isomere) Cayley beschäftigte sich Ende des 19. Jahrhunderts mit der Frage, wie viele verschiedene Isomere einer bestimmten Zusammensetzung existieren. Bäume mit höchstens 5 Ecken: 25
28 auch Bäume: G(E, K) sei ein zusammenhängender Graph. Ein Teilgraph T, der ein Baum der Ordnung n = E ist, heißt ein aufspannender Baum (manchmal Gerüst). Jeder zusammenhängende Graph G besitzt aufspannende Bäume. Denn entweder ist G bereits ein Baum, dann sind wir fertig, oder G besitzt einen Kreis C. Entfernen wir aus C eine Kante k, so ist G 1 = G(E, K \ {k}) immer noch zusammenhängend. Entweder ist G 1 ein aufspannender Baum oder G 1 besitzt wieder einen Kreis, C 1. Wir entfernen eine Kante k 1 aus C 1 u.s.w. Nach endlich vielen Schritten erhalten wir einen aufspannenden Baum. (Anderer Weg: wähle aus G eine beliebige Kante aus, dann eine zweite, eine dritte usw. und achte jeweils darauf, dass kein Kreis entsteht. Wenn alle Ecken an einer dieser Kanten hängen, ist der aufspannende Baum fertig.) In der Anwendung bei Versorgungssystemen (Wasser, Strom, Telefon) benutzt man keine Bäume, denn bei defekten Leitungen muss das System noch mindestens ein aufspannender Baum sein! 4.2 Satz Es sind äquivalent (1) G(E, K) ist ein Baum. (2) Je zwei Ecken in G sind durch genau einen Weg verbunden. (3) G ist zusammenhängend und E 1 = K. (Erinnerung: in jedem zusammenhängenden Graphen ist K E 1, also: ein Baum hat eine minimale Kantenzahl.) 26
29 Wir sind jetzt schon geübter im Argumentieren und beweisen daher diesen Satz: Beweis: (1) (2) Wären u und v durch zwei Wege verbunden, so ergäbe dies einen Kreis. (2) (3) Ist C ein Kreis, so sind je zwei Ecken in C durch zwei verschiedene Wege verbunden. (1) (3) Ein Baum besitzt Ecken vom Grad 1, denn: ist P = u, u 1,..., v ein längster Weg in G, so sind alle Nachbarn von u in P, also ist deg(n) = 1 und auch deg(v) = 1, da G keine Kreise hat! Entferne u und die inzidente Kante uu 1, so erhalten wir einen Baum G 1 (E 1, K 1 ) auf n 1 Ecken mit E 1 K 1 = E K. Nach n 2 Schritten erhalten wir einen Baum G n 2 auf 2 Ecken, G n 2 = K 2 und es gilt E K = E n 2 K n 2 = 1. (3) (1) Sei T ein aufspannender Baum von G. Dann ist also K(G) = K(T ), also G = T. 1 = E(G) K(G) E(T ) K(T ) = 1, Wie viele aufspannende Bäume hat ein Graph G? Im allgemeinen ist diese Frage schwer zu beantworten. Für K n geben wir eine Formel an. Die Anzahl der aufspannenden Bäume von K n sei t(n). Dann gilt t(n) = n n 2 (Formel von Cayley) n = 2 t(2) = 1 n = 3 t(4) = t(3) = 3 (Übung: Liste erstellen) Wie viele Bäume auf n Ecken gibt es? (Jeder Baum mit n Ecken kann zu einem K n ergänzt werden, ist also ein aufspannender Baum des K n.) 4.3 Satz (Formel von Cayley) Aus n Ecken kann man n n 2 Bäume herstellen. Anwendung: Strategie für Labyrinthe, Straßenbahnnetze (ohne Details) 27
30 Beweis: E = {1,..., n}. Konstruiere eine Bijektion auf M = {(a 1,..., a n 2 ) mit 1 a i n, a i N}, M = n n 2. (I) Unter allen Ecken von Grad 1 suche jene mit minimaler Nummer v. Die Nummer des Nachbarn von v ist a 1. (II) Entferne v und die inzidente Kante, dies ergibt einen Baum auf n 1 Ecken. Gehe zu (I) und führe die Vorschrift (n 2) mal aus. Dies liefert a 1, a 2,..., a n (1, 8, 3, 1, 4, 4, 8) 5 Zeige weiter, dass zu jeder Folge (a 1, a 2,..., a n 2 ) genau ein Baum T existiert. Seit d i = Grad(i). Angenommen, i erscheint f i -mal in der Folge. Da jedesmal, wenn i in die Folge aufgenommen wird, eine Nachbarecke von i entfernt wurde, haben wir f i d i 1 (denn i ist nach wie vor im Restbaum, hat also Grad 1). Also ist n n n 2 = f i (d i 1) = 2n 2 n = n 2, i=1 i=1 also f i = d i 1 für alle i. Die Nummern, die überhaupt nicht in der Folge auftauchen, sind die Ecken vom Grad 1. Inverse Zuordnung: (I) Suche das minimale b 1, welches nicht in der Folge (a 1,..., a n 2 ) auftritt, dies liefert Kante b 1 a 1. (II) Suche b 2 b 1 minimal, welches nicht in (a 2,..., a n 2 ) erscheint, u.s.w. a = (2, 2, 7, 5, 3, 9, 1, 1) b = (4, 6, 2, 7, 5, 3, 8, 9)
31 Somit haben wir Beispiel (6) aus Kapitel 1 betrachtet und gehen nun zu Beispiel (7) über. Wir bemerken hier nur noch, dass es einen Algorithmus gibt (Breadth-First Suche / Depth-First Suche), der zu einem vorgegebenen Graphen G und seiner Nachbarschaftsliste einen aufspannenden Baum oder allgemein einen aufspannenden Wald findet und erkennt, ob G zusammenhängend ist. (7) Minimal aufspannende Bäume Kommunikationsnetz: Schaltelemente / Ecken, Verbindungen / Kanten. Kosten der Verbindung zwischen u und v : w(uv) Aufgabe: Schaltplan konstruieren, so dass jedes Element mit jedem anderen kommunizieren kann und die Gesamtkosten minimal sind! Gewichteter Graph G(E, K); w : K R Gesucht ist ein aufspannender Baum T mit mininalem Gewicht w(t ) = ω(k). k K(T ) Naiv: Wähle Kante von minimalem Gewicht. Hat man schon j Kanten bestimmt, so wähle man als nächstes eine Kante minimalen Gewichts, so dass kein Kreis entsteht. Nach n 1 Schritten (n = E ) ist ein Baum konstruiert. Ist dieser Baum optimal? Antwort: ja. Der Greedy-Algorithmus (greedy = gierig) stammt von Kruskal und hat eine Laufzeit von O(q log q); q = K. Bemerkung: (I) Zunächst müssen wir die Kanten k i nach ihrem Gewicht anordnen: w(k 1 ) w(k 2 )... w(k q ); q := K. Zum Sortieren der q Gewichte w(k i ) werden O(q log q) Vergleiche benötigt. (II) Haben wir einen zusammenhängenden Graphen G = G(E, K) mit w : K R und ist E E und u eine Kante zwischen E und E \ E mit minimalem Gewicht, dann existiert ein minimaler aufspannender Baum für G, der u enthält. Beweis: Ist T minimaler aufspannender Baum, der u nicht enthält, so nehmen wir u zu T hinzu und entfernen eine Kante v, die E und E \ E verbindet. Da u minimal ist, erhöhen wir das Gewicht des aufspannenden Baums nicht. Auf (II) basiert der Beweis, dass der Algorithmus von Kruskal funktioniert. Intermezzo: minimale aufspannende Bäume und TSP 4.4 Satz G(E, K) sei ein vollständiger Graph mit Gewichtsfunktion w : K N. 29
32 TSP MST optimale TSP-Tour sei ein minimal aufspannender Baum. Dann gilt: w(mst) w(tsp) Beweis: Entnehme TSP eine beliebige Kante, so ist dies ein hamiltonscher Weg. Ein hamiltonscher Weg ist ein aufspannender Baum. w(tsp) w(hamiltonweg) w(mst). (8) Kürzeste Wege: Nun wollen wir noch einen hübschen und berühmten Algorithmus kennenlernen. Finde in einem bewerteten Graph zwischen zwei vorgegebenen Ecken einen Verbindungsweg mit der kleinsten Bewertung. Ohne Einschränkung der Allgemeinheit entspreche die Bewertung der Länge (kürzeste Wege). Idee: Von Startecke aus nach und nach einen Baum wachsen lassen, bis er an die Zielecke stößt. Weg von Start nach Ziel. Beachte bei der Konstruktion, dass nur Kanten mit möglichst kleinen Bewertungszahlen verwendet werden. Wir sehen uns das Vorgehen zunächst an einem Beispiel an. A C 7 F D G B 6 E Gesucht ist der kürzeste Weg von A nach G! (I) B und C sind Nachbarn von A. B ist näher an A als C. 30
33 A 1 B 1 (II) C, D, E sind Nachbarn von A und B Ergänze alle Kanten, die von A oder B zu C, D oder E führen, zu Wegen, die von A ausgehen! AC ABD ABE A 4 D 1 3 B 1 (III) Die Nachbarn von A, B oder D sind C, E, F. Kanten, die von ihnen zu A, B oder D führen: AC ABDC ABE ABDE ABDF C 5 A 4 D 1 3 B 1 (IV) Verbleibende Nachbarn: E, F 31
34 ACF ABDF ABE ABDE C 5 A 4 D 1 3 B 6 1 E 7 (V) ACF ABDF ABEG A C D 1 3 B G 3 E 7 (VI) Problem gelöst: Länge 10 Nebenergebnis: kürzeste Wege von A zu allen Ecken des Graphen (fehlt noch kürzester Weg von A zu F der Länge 12) gesammter aufspannender Baum: 25 Greedyalgorithmus: 20 A C F 2 6 D G B E Hier hat der Weg zur Ecke G die Länge 12! Mathematik: G(E, K) sei ein zusammenhängender Graph und w : K R + = {x R : x 0} eine Gewichtsfunktion, u E. Für einen 32
35 Weg P = P (u, v) von u nach v bezeichne mit l(p ) = k K(P ) w(k) die gewichtete Länge. Gesucht ist ein kürzester u, v Weg, für den also l(p ) minimal ist. d(u, v) sei die Länge eines kürzesten Weges. u sei fest gewählt. Algorithmus von Dijkstra: (I) u 0 = u, E 0 = {u 0 }, K 0 =, l(u 0 ) = 0. (II) Gegeben E i = {u 0,..., u i }, K i = {k 1,..., k i }. Falls i = n 1, so sind wir fertig. Andernfalls betrachte für alle Kanten k = vw mit v E i, w E \ E i den Ausdruck f(k) = l(v) + w(k) und wähle k mit f( k) = min f(k). Sei k = v w. Dann setze ui+1 = w, k i+1 = k, E i+1 = E i {u i+1 }, K i+1 = K i {k i+1 } und l(u i+1 ) = f( k). Iteriere (II)! 4.5 Satz In obiger Situation ergibt der Algorithmus von Dijkstra einen aufspannenden Baum T mit der Eigenschaft, dass der eindeutige Weg von u nach v stets ein minimaler u, v-weg in G ist mit d(u, v) = l(v) für alle v. Beweis: (nun aber noch einmal Luft holen) Der Algorithmus konstruiert einen aufspannenden Baum. Erster Schritt: Es wird eine Kante minimalen Gewichts von u = u 0 zu einem Nachbarn gewählt. Somit ist k 1 = u 0 u 1 minimaler u 0 u 1 -Weg mit l(u 1 ) = w(k 1 ) = d(u 0, u 1 ). Angenommen, T i (E i, K i ) habe die gewünschten Eigenschaften und (II) liefert k = v w. Wir müssen zeigen: l( w) = f( k) = l( v) + w( k) ist gleich d(u 0, w) für u 0 w - Weg P 0 ist l(p 0 ) = d(u 0, v) + w( k) = l( v) + w( k) = l( w). P sei ein kürzester u 0 w - Weg und v die letzte Ecke von E i in P mit w E \ E i als Nachfolger, k = vw. Dann sind Teilwege P (u 0, v), P (w, w) ebenfalls kürzes- 33
36 te Wege (!), also d(u 0, w) = l(p (u 0, v)) + w(k) + l(p (w, w)) = l(v) + w(k) + l(p (w, w)) = f(k) + l(p (w, w)) f( k) = l( w) = l(p 0 ), also ist P 0 ein kürzester Weg. Ergänzung zu (5): Chinese Postman Problem Traveling Salesman Problem Ist der Graph eulersch, kann der Briefträger jede eulersche Tour wählen: Sie enthält sämtliche Straßen genau einmal und kürzer als ihre gesamte Länge kann der Weg des Briefträgers nicht sein. Ist der Graph nicht eulersch, so mache den Graphen mit möglichst kurzen zusätzlichen Kanten eulersch. Es habe der Graph genau zwei Ecken mit ungeradem Grad. Gehe die Straße zweimal, die diese Ecken verbindet. Suche also (I) den kürzesten Weg zwischen den beiden Ecken mit ungeradem Grad. (II) Verdopple die Kanten dieses Weges (III) Es ist ein eulerscher Graph entstanden: suche in ihm eine eulersche Tour. 34
37 Index Algorithmus, 5 Greedy-, 29, 32 von Dijkstra, 33 Baum, 25 aufspannender, 5, 26 Beweis algorithmischer, 20 Blatt, 9 Cantor, Georg, 3 Cayley, Arthur, 25 Chinese Postman Problem, 5, 34 Diagramm, 9 Dijkstra Algorithmus von, 33 Dodekaeder, 15 Domino, 22 Ecke, 7 isolierte, 9 Eckengrad, 9, 12 Euler, Leonhard, 3 eulersch, 19 Eulertour, 15, 19 Gerüst, 26 Gittergraph, 9 Grad, 9, 12 Graph, 7 einfacher, 8 eulerscher, 19 Gitter-, 9 hamiltonscher, 4, 16, 20 nichtzusammenhängender, 11 Unter-, 10 vollständiger, 8 zusammenhängender, 10, 11 Graphentheorie, 5 Greedy-Algorithmus, 29, 32 Hamilton, William Rowan, 15 Hamiltonkreis, 4, 15, 16 Handlungsreisender, 4 Haus vom Nikolaus, 4, 7 Hierholzer, 21 Hyperwürfel, 9 Isomere, 25 Isomorphie, 11, 12 Königsberger Brückenproblem, 3, 7 Kante, 7 Mehrfach-, 8 Karp, Richard, 16 Knoten, 7 Kohlenwasserstoffverbindungen, 25 Komponenten, 10 Kreis, 9 hamiltonscher, 4, 16 Kruskal, 29 Länge gewichtete, 33 Labyrinth, 5 Mehrfachkante, 8 NP-vollständig, 16 Pfad, 9 Platon, 15 Schlinge, 8 35
38 Subgraph, 10 Teilgraph, 10 Traveling Salesman Problem, 4, 30 Untergraph, 10 aufspannender, 10 Wald, 25 Weg, 9 hamiltonscher, 16 kürzester, 5 36
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,
MehrTechnische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt
Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik Prof. Dr. A. Taraz, Dipl-Math. A. Würfl, Dipl-Math. S. König Weihnachtsblatt Aufgabe W.1 Untersuchen Sie nachstehenden
Mehr1. 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
MehrDas Briefträgerproblem
Das Briefträgerproblem Paul Tabatabai 30. Dezember 2011 Inhaltsverzeichnis 1 Problemstellung und Modellierung 2 1.1 Problem................................ 2 1.2 Modellierung.............................
MehrAnmerkungen 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
Mehr3. Musterlösung. Problem 1: Boruvka MST
Universität Karlsruhe Algorithmentechnik Fakultät für Informatik WS 06/07 ITI Wagner. Musterlösung Problem : Boruvka MST pt (a) Beweis durch Widerspruch. Sei T MST von G, e die lokal minimale Kante eines
Mehr3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel
3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel EADS 3.1 Konstruktion von minimalen Spannbäumen 16/36
Mehr9. 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
MehrGraphentheorie 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.................................
MehrElementargeometrie. 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
MehrWS 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
Mehr8 Diskrete Optimierung
8 Diskrete Optimierung Definition 8.1. Ein Graph G ist ein Paar (V (G), E(G)) besteh aus einer lichen Menge V (G) von Knoten (oder Ecken) und einer Menge E(G) ( ) V (G) 2 von Kanten. Die Ordnung n(g) von
MehrAlgorithmen 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
MehrVorlesungen vom 5.Januar 2005
Vorlesungen vom 5.Januar 2005 5 Planare Graphen 5.1 Beispiel: Gas, Wasser, Elektrik Drei eingeschworene Feinde, die im Wald leben, planen Trassen zu den Versorgungswerken für die drei Grundgüter Gas, Wasser
MehrVorlesung Diskrete Strukturen Graphen: Wieviele Bäume?
Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume? Bernhard Ganter Institut für Algebra TU Dresden D-01062 Dresden bernhard.ganter@tu-dresden.de WS 2013/14 Isomorphie Zwei Graphen (V 1, E 1 ) und (V
MehrGraphen: Datenstrukturen und Algorithmen
Graphen: Datenstrukturen und Algorithmen Ein Graph G = (V, E) wird durch die Knotenmenge V und die Kantenmenge E repräsentiert. G ist ungerichtet, wenn wir keinen Start- und Zielpunkt der Kanten auszeichnen.
MehrWiederholung zu Flüssen
Universität Konstanz Methoden der Netzwerkanalyse Fachbereich Informatik & Informationswissenschaft SS 2008 Prof. Dr. Ulrik Brandes / Melanie Badent Wiederholung zu Flüssen Wir untersuchen Flüsse in Netzwerken:
MehrGibt 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
MehrS=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J
Greedy-Strategie Definition Paradigma Greedy Der Greedy-Ansatz verwendet die Strategie 1 Top-down Auswahl: Bestimme in jedem Schritt eine lokal optimale Lösung, so dass man eine global optimale Lösung
Mehr2 Eulersche Polyederformel und reguläre Polyeder
6 2 Eulersche Polyederformel und reguläre Polyeder 2.1 Eulersche Polyederformel Formal besteht ein Graph aus einer Knotenmenge X und einer Kantenmenge U. Jede Kante u U ist eine zweielementige Teilmenge
MehrLiteratur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)
Dominating Set 59 Literatur Dominating Set Grundlagen 60 Dominating Set (DS) M. V. Marathe, H. Breu, H.B. Hunt III, S. S. Ravi, and D. J. Rosenkrantz: Simple Heuristics for Unit Disk Graphs. Networks 25,
MehrAlgorithmen 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
MehrEffiziente Algorithmen I
H 10. Präsenzaufgabenblatt, Wintersemester 2015/16 Übungstunde am 18.01.2015 Aufgabe Q Ein Reiseveranstalter besitzt ein Flugzeug, das maximal p Personen aufnehmen kann. Der Veranstalter bietet einen Flug
MehrKapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung
Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Pfade. Traveling Salesman Problem. Flüsse in Netzwerken
MehrGraphen: Einführung. Vorlesung Mathematische Strukturen. Sommersemester 2011
Graphen: Einführung Vorlesung Mathematische Strukturen Zum Ende der Vorlesung beschäftigen wir uns mit Graphen. Graphen sind netzartige Strukturen, bestehend aus Knoten und Kanten. Sommersemester 20 Prof.
MehrTechnische 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
MehrKürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik
Kürzeste Wege in Graphen Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik Gliederung Einleitung Definitionen Algorithmus von Dijkstra Bellmann-Ford Algorithmus Floyd-Warshall Algorithmus
Mehr16. Flächenfärbungen
Chr.Nelius: Graphentheorie (WS 2015/16) 57 16. Flächenfärbungen In der Mitte des 19. Jahrhunderts tauchte eine Vermutung auf, die erst 125 Jahre später bewiesen werden sollte und die eine der bekanntesten
MehrKapitel 4: Minimal spannende Bäume Gliederung der Vorlesung
Kapitel : Minimal spannende Bäume Gliederung der Vorlesung. Fallstudie Bipartite Graphen 2. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Wege. Traveling
Mehr4 Greedy-Algorithmen (gierige Algorithmen)
Greedy-Algorithmen (gierige Algorithmen) Greedy-Algorithmen werden oft für die exakte oder approximative Lösung von Optimierungsproblemen verwendet. Typischerweise konstruiert ein Greedy-Algorithmus eine
MehrEin Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist.
Graphen Definition: Ein Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist. Begriffe: Gerichteter Graph: Alle Kanten haben eine Richtung vom Anfangsknoten
Mehr2. 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
MehrNP-Vollständigkeit. Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984)
NP-Vollständigkeit Krautgartner Martin (9920077) Markgraf Waldomir (9921041) Rattensberger Martin (9921846) Rieder Caroline (0020984) 0 Übersicht: Einleitung Einteilung in Klassen Die Klassen P und NP
Mehrw a is die Anzahl der Vorkommen von a in w Beispiel: abba a = 2
1 2 Notation für Wörter Grundlagen der Theoretischen Informatik Till Mossakowski Fakultät für Informatik Otto-von-Guericke Universität Magdeburg w a is die Anzahl der Vorkommen von a in w Beispiel: abba
MehrLange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege
Lange Nacht der Wissenschaft Ein Klassiker Die Mathematik der Kürzesten Wege 09.06.2007 schlechte@zib.de Konrad-Zuse-Zentrum für Informationstechnik Berlin (ZIB) http://www.zib.de/schlechte 2 Überblick
MehrC++, LEDA und STL Visualisierung minimal/maximal aufspannender Bäume
Fachbereich IV, Informatik Softwarepraktikum C++, LEDA und STL Visualisierung minimal/maximal aufspannender Bäume Wintersemester 2004/2005 Dokumentation Algorithmen zur Lösung von MST - Problemen Nicolas
MehrEntscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?
Entscheidungsbäume Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen? Definition Entscheidungsbaum Sei T ein Binärbaum und A = {a 1,..., a n } eine zu sortierenden Menge. T ist ein Entscheidungsbaum
Mehr2.4A. Reguläre Polyeder (Platonische Körper)
.A. Reguläre Polyeder (Platonische Körper) Wie schon in der Antike bekannt war, gibt es genau fünf konvexe reguläre Polyeder, d.h. solche, die von lauter kongruenten regelmäßigen Vielecken begrenzt sind:
MehrWS 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
MehrKörper zum Selberbauen Polydron
Körper zum Selberbauen Polydron Was versteht man unter Polydron? Polydron ist ein von Edward Harvey erfundenes intelligentes Spielzeug, mit dem man verschiedene geometrische Figuren bauen kann. Es ist
MehrGraphentheorie 1. Diskrete Strukturen. Sommersemester Uta Priss ZeLL, Ostfalia. Hausaufgaben Graph-Äquivalenz SetlX
Graphentheorie 1 Diskrete Strukturen Uta Priss ZeLL, Ostfalia Sommersemester 2016 Diskrete Strukturen Graphentheorie 1 Slide 1/19 Agenda Hausaufgaben Graph-Äquivalenz SetlX Diskrete Strukturen Graphentheorie
MehrGraphentheorie. Organisatorisches. Organisatorisches. Organisatorisches. Rainer Schrader. 23. Oktober 2007
Graphentheorie Rainer Schrader Organisatorisches Zentrum für Angewandte Informatik Köln 23. Oktober 2007 1 / 79 2 / 79 Organisatorisches Organisatorisches Dozent: Prof. Dr. Rainer Schrader Weyertal 80
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2007 4. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Traversierung Durchlaufen eines Graphen, bei
MehrFußbälle, platonische und archimedische Körper
Fußbälle, platonische und archimedische Körper Prof. Dr. Wolfram Koepf http://www.mathematik.uni-kassel.de/~koepf Was ist ein Fußball? Sepp Herberger: Der Ball ist rund. Ist also ein Fußball eine Kugel?
MehrStatistische Untersuchungen zu endlichen Funktionsgraphen
C# Projekt 1 Name: Statistische Untersuchungen zu endlichen Funktionsgraphen Aufgabe: Basierend auf dem Abschnitt 2.1.6. Random mappings, Kap.2, S 54-55, in [1] sollen zunächst für eine beliebige Funktion
MehrÜbung zur Vorlesung Algorithmische Geometrie
Übung zur Vorlesung Algorithmische Geometrie Dipl.-Math. Bastian Rieck Arbeitsgruppe Computergraphik und Visualisierung Interdisziplinäres Zentrum für Wissenschaftliches Rechnen 8. Mai 2012 B. Rieck (CoVis)
MehrPlanare Graphen, Traveling Salesman Problem, Transportnetze. Formale Methoden der Informatik WiSe 2012/2013 teil 4, folie 1 (von 61)
Planare Graphen, Traveling Salesman Problem, Transportnetze Formale Methoden der Informatik WiSe 2012/2013 teil 4, folie 1 (von 61) Teil IV: Planare Graphen / Transportnetze 1. Planare Graphen / Traveling
MehrUndirected Single-Source Shortest Paths with Positive Integer Weights in Linear Time
Universität Konstanz Mathematisch-naturwissenschaftliche Sektion Fachbereich Mathematik und Statistik Wintersemester 2001/02 Mikkel Thorup: Undirected Single-Source Shortest Paths with Positive Integer
Mehr6. Flüsse und Zuordnungen
6. Flüsse und Zuordnungen In diesem Kapitel werden Bewertungen von Kanten als maximale Kapazitäten interpretiert, die über solch eine Kante pro Zeiteinheit transportiert werden können. Wir können uns einen
Mehr1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie
Gliederung 1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. äume / Graphen 5. Hashing 6. Algorithmische Geometrie 4/5, olie 1 2014 Prof. Steffen Lange - HDa/bI
MehrLösungsvorschläge Blatt Z1
Theoretische Informatik Departement Informatik Prof. Dr. Juraj Hromkovič http://www.ita.inf.ethz.ch/theoinf16 Lösungsvorschläge Blatt Z1 Zürich, 2. Dezember 2016 Lösung zu Aufgabe Z1 Wir zeigen L qi /
Mehr3 Vom Zählen zur Induktion
7 3 Vom Zählen zur Induktion 3.1 Natürliche Zahlen und Induktions-Prinzip Seit unserer Kindheit kennen wir die Zahlen 1,, 3, 4, usw. Diese Zahlen gebrauchen wir zum Zählen, und sie sind uns so vertraut,
MehrRechnerische Komplexität
Proseminar Effiziente Algorithmen SS 2002 Rechnerische Komplexität Ulrike Krönert (34180) 0. Inhalt 1. Einführung 2. Algorithmen und Komplexität 2.1. Algorithmen 2.2. Laufzeitabschätzung 2.3. Polynomialzeit
MehrKlassenstufen 7, 8. Aufgabe 1 (6+6+8 Punkte). Magischer Stern:
Department Mathematik Tag der Mathematik 31. Oktober 2009 Klassenstufen 7, 8 Aufgabe 1 (6+6+8 Punkte). Magischer Stern: e a 11 9 13 12 10 b c d Die Summe S der natürlichen Zahlen entlang jeder der fünf
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrSteinerbäume. Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering
Steinerbäume Seminarausarbeitung Hochschule Aalen Fakultät für Elektronik und Informatik Studiengang Informatik Schwerpunkt Software Engineering Verfasser Flamur Kastrati Betreuer Prof. Dr. habil. Thomas
MehrSchwierige Probleme in der Informatik Informationen für die Lehrperson
Schwierige Probleme in der Informatik Informationen für die Lehrperson Thema, Adressaten,... Das Thema dieses Moduls sind NP-vollständige Probleme, also schwierige Probleme in der Informatik. GraphBench
MehrTriangulierung von einfachen Polygonen
Triangulierung von einfachen Polygonen Tobias Kyrion Inhaltsverzeichnis 1.1 Die Problemstellung....................... 1 2.1 Ein naiver Algorithmus...................... 2 3.1 Zerlegung in monotone Teilpolygone..............
Mehr(Man sagt dafür auch, dass die Teilmenge U bezüglich der Gruppenoperationen abgeschlossen sein muss.)
3. Untergruppen 19 3. Untergruppen Nachdem wir nun einige grundlegende Gruppen kennengelernt haben, wollen wir in diesem Kapitel eine einfache Möglichkeit untersuchen, mit der man aus bereits bekannten
MehrRouting 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
MehrAlgebra und Diskrete Mathematik, PS3. Sommersemester Prüfungsfragen
Algebra und Diskrete Mathematik, PS3 Sommersemester 2016 Prüfungsfragen Erläutern Sie die Sätze über die Division mit Rest für ganze Zahlen und für Polynome (mit Koeffizienten in einem Körper). Wodurch
MehrADS: Algorithmen und Datenstrukturen 2
ADS: Algorithmen und Datenstrukturen Der Tragödie IV. Theyl Peter F. Stadler & Konstantin Klemm Bioinformatics Group, Dept. of Computer Science & Interdisciplinary Center for Bioinformatics, University
Mehr5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)
5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c) mit V = {1,...,n} und E {(v, w) 1 apple v, w apple n, v 6= w}. c : E!
MehrBabeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005. Paradigmen im Algorithmenentwurf
Babeș-Bolyai Universität Cluj Napoca Fakultät für Mathematik und Informatik Grundlagen der Programmierung MLG5005 Paradigmen im Algorithmenentwurf Problemlösen Problem definieren Algorithmus entwerfen
Mehr4.7 Der Algorithmus von Dinic für maximalen Fluss
4.7 Der Algorithmus von Dinic für maximalen Fluss Wir kennen bereits den Algorithmus von Ford Fulkerson zur Suche nach einem maximalen Fluss in einem Graphen. Wir lernen nun einen Algorithmus für maximalen
MehrAlgorithmen und Datenstrukturen Kapitel 10
Algorithmen und Datenstrukturen Kapitel 10 Flüsse Frank Heitmann heitmann@informatik.uni-hamburg.de 6. Januar 2016 Frank Heitmann heitmann@informatik.uni-hamburg.de 1/8 Flüsse Graphen Grundlagen Definition
MehrKapitel 3. Natürliche Zahlen und vollständige Induktion
Kapitel 3 Natürliche Zahlen und vollständige Induktion In Kapitel 1 haben wir den direkten Beweis, den modus ponens, kennen gelernt, der durch die Tautologie ( A (A = B) ) = B gegeben ist Dabei war B eine
Mehr5 Zwei spieltheoretische Aspekte
5 Zwei spieltheoretische Aspekte In diesem Kapitel wollen wir uns mit dem algorithmischen Problem beschäftigen, sogenannte Und-Oder-Bäume (kurz UOB) auszuwerten. Sie sind ein Spezialfall von Spielbäumen,
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 1 Programm des
MehrEinführung in Heuristische Suche
Einführung in Heuristische Suche Beispiele 2 Überblick Intelligente Suche Rundenbasierte Spiele 3 Grundlagen Es muss ein Rätsel / Puzzle / Problem gelöst werden Wie kann ein Computer diese Aufgabe lösen?
MehrCodierung, Codes (variabler Länge)
Codierung, Codes (variabler Länge) A = {a, b, c,...} eine endliche Menge von Nachrichten (Quellalphabet) B = {0, 1} das Kanalalphabet Eine (binäre) Codierung ist eine injektive Abbildung Φ : A B +, falls
MehrAlgorithmentheorie. 13 - Maximale Flüsse
Algorithmentheorie 3 - Maximale Flüsse Prof. Dr. S. Albers Prof. Dr. Th. Ottmann . Maximale Flüsse in Netzwerken 5 3 4 7 s 0 5 9 5 9 4 3 4 5 0 3 5 5 t 8 8 Netzwerke und Flüsse N = (V,E,c) gerichtetes Netzwerk
MehrAlgorithmen und Datenstrukturen 2
Algorithmen und Datenstrukturen 2 Sommersemester 2006 5. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Wdhlg.: Dijkstra-Algorithmus I Bestimmung der
MehrSeminararbeit für das SE Reine Mathematik- Graphentheorie
Seminararbeit für das SE Reine Mathematik- Graphentheorie Der binäre Rang, der symplektische Graph, die Spektralzerlegung und rationale Funktionen Vortrag am 24.01.2012 Heike Farkas 0410052 Inhaltsverzeichnis
MehrPrimzahlen und RSA-Verschlüsselung
Primzahlen und RSA-Verschlüsselung Michael Fütterer und Jonathan Zachhuber 1 Einiges zu Primzahlen Ein paar Definitionen: Wir bezeichnen mit Z die Menge der positiven und negativen ganzen Zahlen, also
MehrDiplomprüfung. Operations Research I WS 2007/2008 (4 Punkte)
Dr. Jörg Kalcsics 11.0.008 Diplomprüfung (Wiederholungsprüfung gem. NPO) Operations Research I WS 007/008 ( Punkte) Vorbemerkung: Zugelassene Hilfsmittel: nicht programmierbarer Taschenrechner. Beginnen
MehrGraphen und Algorithmen
Graphen und Algorithmen Vorlesung #6: Eulersche Touren und Hamiltonsche Graphen Dr. Armin Fügenschuh Technische Universität Darmstadt WS 2007/2008 Übersicht Eulersche Touren Sätze von Euler und Hierholzer
MehrScheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.
Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É. Tardos Janick Martinez Esturo jmartine@techfak.uni-bielefeld.de xx.08.2007 Sommerakademie Görlitz Arbeitsgruppe 5 Gliederung
MehrAm Dienstag, den 16. Dezember, ist Eulenfest. 1/48
Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48 Grundbegriffe der Informatik Einheit 12: Erste Algorithmen in Graphen Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009
MehrKAPITEL 6 GANZZAHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULARE MATRIZEN
KPITEL 6 GNZZHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULRE MTRIZEN F. VLLENTIN,. GUNDERT. Ganzzahlige lineare Programme Viele Optimierungsprobleme des Operations Research lassen sich als ganzzahlige lineare
MehrLineare Gleichungssysteme
Christian Serpé Universität Münster 14. September 2011 Christian Serpé (Universität Münster) 14. September 2011 1 / 56 Gliederung 1 Motivation Beispiele Allgemeines Vorgehen 2 Der Vektorraum R n 3 Lineare
Mehr3 Quellencodierung. 3.1 Einleitung
Source coding is what Alice uses to save money on her telephone bills. It is usually used for data compression, in other words, to make messages shorter. John Gordon 3 Quellencodierung 3. Einleitung Im
MehrÜber die regelmäßigen Platonischen Körper
Hermann König, Mathematisches Seminar Studieninformationstage an der Universität Kiel Über die regelmäßigen Platonischen Körper Winkelsumme im n-eck Zerlegung eines ebenen n-ecks in (n-2) Dreiecke, oben
MehrDatenstrukturen und Algorithmen SS07
Datenstrukturen und Algorithmen SS07 Datum: 27.6.2007 Michael Belfrage mbe@student.ethz.ch belfrage.net/eth Programm von Heute Online Algorithmen Update von Listen Move to Front (MTF) Transpose Approximationen
Mehr1 Mengen. 1.1 Elementare Definitionen. Einige mathematische Konzepte
Einige mathematische Konzepte 1 Mengen 1.1 Elementare Definitionen Mengendefinition Die elementarsten mathematischen Objekte sind Mengen. Für unsere Zwecke ausreichend ist die ursprüngliche Mengendefinition
MehrDynamische Programmierung. Problemlösungsstrategie der Informatik
als Problemlösungsstrategie der Informatik und ihre Anwedung in der Diskreten Mathematik und Graphentheorie Fabian Cordt Enisa Metovic Wissenschaftliche Arbeiten und Präsentationen, WS 2010/2011 Gliederung
MehrAlgorithmen II Vorlesung am 15.11.2012
Algorithmen II Vorlesung am 15.11.2012 Kreisbasen, Matroide & Algorithmen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales
MehrGliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten
Gliederung Zusammenhang von Graphen Stark Zusammenhängend K-fach Zusammenhängend Brücken Definition Algorithmus zum Finden von Brücken Anwendung Zusammenhangskomponente Definition Wichtige Aussagen und
MehrDie Verbindung von Linearer Programmierung und Graphentheorie
Die Verbindung von Linearer Programmierung und Graphentheorie Definition 5.9. Ein kombinatorisches Optimierungsproblem entspricht einem LP, bei dem statt der Vorzeichenbedingungen x i 0 Bedingungen der
MehrKapiteltests zum Leitprogramm Binäre Suchbäume
Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm
MehrA2.3 Lineare Gleichungssysteme
A2.3 Lineare Gleichungssysteme Schnittpunkte von Graphen Bereits weiter oben wurden die Schnittpunkte von Funktionsgraphen mit den Koordinatenachsen besprochen. Wenn sich zwei Geraden schneiden, dann müssen
Mehrabgeschlossen unter,,,, R,
Was bisher geschah Turing-Maschinen können Sprachen L X akzeptieren entscheiden Funktionen berechnen f : X X (partiell) Menge aller Turing-akzeptierbaren Sprachen genau die Menge aller Chomsky-Typ-0-Sprachen
Mehr3. Zusammenhang. 22 Andreas Gathmann
22 Andreas Gathmann 3. Zusammenhang Eine der anschaulichsten Eigenschaften eines topologischen Raumes ist wahrscheinlich, ob er zusammenhängend ist oder aus mehreren Teilen besteht. Wir wollen dieses Konzept
MehrBäume. 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1
Bäume 2006 Jiri Spale, Algorithmen und Datenstrukturen - Bäume 1 Inhalt Grundbegriffe: Baum, Binärbaum Binäre Suchbäume (Definition) Typische Aufgaben Suchaufwand Löschen allgemein, Methode Schlüsseltransfer
Mehr1 Zahlentheorie. 1.1 Kongruenzen
3 Zahlentheorie. Kongruenzen Der letzte Abschnitt zeigte, daß es sinnvoll ist, mit großen Zahlen möglichst einfach rechnen zu können. Oft kommt es nicht darauf, an eine Zahl im Detail zu kennen, sondern
Mehr16. All Pairs Shortest Path (ASPS)
. All Pairs Shortest Path (ASPS) All Pairs Shortest Path (APSP): Eingabe: Gewichteter Graph G=(V,E) Ausgabe: Für jedes Paar von Knoten u,v V die Distanz von u nach v sowie einen kürzesten Weg a b c d e
MehrHackenbusch und Spieltheorie
Hackenbusch und Spieltheorie Was sind Spiele? Definition. Ein Spiel besteht für uns aus zwei Spielern, Positionen oder Stellungen, in welchen sich das Spiel befinden kann (insbesondere eine besondere Startposition)
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesungen 5 und 6 Programm
MehrElemente der Analysis II
Elemente der Analysis II Kapitel 3: Lineare Abbildungen und Gleichungssysteme Informationen zur Vorlesung: http://www.mathematik.uni-trier.de/ wengenroth/ J. Wengenroth () 15. Mai 2009 1 / 35 3.1 Beispiel
MehrEffiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume
Effiziente Algorithmen und Datenstrukturen I Kapitel 9: Minimale Spannbäume Christian Scheideler WS 008 19.0.009 Kapitel 9 1 Minimaler Spannbaum Zentrale Frage: Welche Kanten muss ich nehmen, um mit minimalen
Mehr