Vorlesungsmitschrift Graphentheorie 1 Beispiele für Graphen Beispiele für Graphen 1. Kreuzungsproblem : 3 Häuser sollen mit einem Wasser-, Gas- und Elektroanschluß verbunden werden, wobei keine Kreuzung entstehen darf. Abbildung 1: Kreuzungsproblem 2. Schachaufgabe mit einem Pferd : Das Pferd soll alle 64 Schachfelder einmal besuchen und zum Start zurückkehren. Diese Aufgabe ist ein sogenanntes Rundreiseproblem. Der spezielle Fall ist lösbar. 3. Königsberger Brückenproblem1 : Auf einem Rundweg soll jede Brücke genau einmal überquert werden. Dieser Fall ist nicht lösbar. Abbildung 2: Königsberger Brückenproblem 1 1736 formulierte Euler das Problem nach einem Spaziergang in Königsberg. 3 Vorlesungsmitschrift Graphentheorie Beispiele für Graphen 4. Das Haus des Nikolaus : Das Haus soll in einem Zug gezeichnet werden, ohne dass eine Kante doppelt gezeichnet wird. Abbildung 3: Das Haus des Nikolaus 5. Kannibalen und Missionare : Zwei Missionare und 2 Kannibalen sollen über den Fluß gebracht werden. Ein Missionar ( M1 ) und ein Kannibale ( K1 ) können rudern. Es gibt ein Boot, welches 2 Mann tragen kann. Sobald die Kannibalen in der Überzahl sind, fressen sie den Missionar. Wie gelangen alle über den Fluß bringen, ohne daß einer gefressen wird? In der Abbildung sind die Situationen am Ausgangsufer dargestellt. Abbildung 4: Kannibalen und Missionare 4 Vorlesungsmitschrift Graphentheorie Beispiele für Graphen 6. Umfüllaufgabe : Es gibt drei Gefäße ohne Maßeinteilung : das erste mit 8l, das zweite mit 5l und das letzte mit 3l Fassungsvermögen. Am Anfang ist das 8l-Gefäß vollständig gefüllt. Ziel ist es, 2 mal 4 Liter in zwei Gefäßen zu erhalten. Abbildung 5: Umfüllaufgabe Startknoten ist der Knoten (8,0,0). Der Zielknoten ist der Knoten (4,4,0). 7. Labyrinth-Probleme : Abbildung 6: Wegfindung in einem Labyrinth 5 Vorlesungsmitschrift Graphentheorie 2 Grundbegriffe der Graphentheorie Grundbegriffe der Graphentheorie Definition : Ein Graph G besteht aus einer Menge X von Knoten ( Punkte, Ecken ) und aus einer Menge K von Kanten ( Bögen ), d.h. G = (X, K). Generell werden endliche Graphen betrachtet, wobei |X| = n und |K| = m. 2.1 Gerichtete Graphen Es gibt 2 Projektionsfunktionen: p1 : K ⇒ X p2 : K ⇒ X wobei p1 (k) Anfangsknoten der Kante k und p2 (k) Endknoten der Kante k ist. Häufig : p(k) := {p1 (k), p2 (k)} ( Menge der Knoten der Kante k ) Beispiel : Dabei ist z.B.: p1 (k1 ) = x3 , p2 (k1 ) = x1 , p(k1 ) = {x3 , x1 } 6 Graph Vorlesungsmitschrift Graphentheorie Grundbegriffe der Graphentheorie Definitionen : • ein Knoten x und eine Kante k heißen inzident, falls x ∈ p(k) inzident • zwei Kanten k1 und k2 heißen adjazent, falls p(k1 ) ∩ p(k2 ) = ∅ adjazent • zwei Knoten x1 und x2 heißen adjazent, falls ∃k, p(k) = {x1 , x2 } adjazent • neben Schlingen können auch parallele Kanten auftreten Schlingen parallele Kanten x (a) Schlinge (b) Parallele Kanten • häufig sind die betrachteten Graphen schlicht , d.h. sie besitzen keine Schlingen und keine parallelen Kanten schlicht • Weiter Charakterisierung durch den sogenannten Grad: 1. äußerer Grad (positiv) d+ (x) : Anzahl der Kanten k mit x = p1 (k) äußerer Grad 2. innerer Grad (negativ) d− (x) : Anzahl der Kanten k mit x = p2 (k) innerer Grad 3. Grad d(x) = d+ (x) + d− (x) : Anzahl der mit x inzidenten Kanten Grad • ein Punkt x mit d(x) = 0 heißt isolierter Knoten isolierter Knoten • ein Graph heißt vollständig, wenn jedes Paar verschiedener Knoten durch eine Kante verbunden ist 7 vollständiger Graph Vorlesungsmitschrift Graphentheorie Grundbegriffe der Graphentheorie Aussagen : + − 1. x∈X d (x) = x∈X d (x) = |K| 2. x∈X d(x) = 2|K| 3. Die Anzahl der Knoten mit einem ungeradem Grad ist gerade. Beweis zu Aussage 3 : 1) Xu ⊆ X, Xu Menge der Knoten mit ungeraden Grad d(x) + d(x) ⇒ d(x) ist gerade 2) 2|K| = x∈X x∈X x∈X\Xu u u gerade gerade 3) Für x ∈ Xu : d(x) = 2lx + 1 = ungerade 4) d(x) = (2lx + 1) = 2 lx + |Xu | x∈Xu x∈Xu x∈Xu gerade! gerade gerade gerade Nachbarschaftsbeziehungen Passend zu den Grad-Definitionen sind die Nachbarschaftsbeziehungen eines Knoten x: • die Menge der Nachfolger von x : Γ+ (x) = {y ∈ X | ∃k ∈ K : p1 (k) = x, p2 (k) = y} • die Menge der Vorgänger von x : Γ− (x) = {y ∈ X | ∃k ∈ K : p1 (k) = y, p2(k) = x} • die Menge der Nachbarn von x : Γ(x) = Γ+ (x) ∪ Γ− (x) 8 Vorlesungsmitschrift Graphentheorie 2.2 Grundbegriffe der Graphentheorie Ungerichtete Graphen Beispiel : Dabei ist z.B.: p(5) = {2, 4} Eigenschaften : • Beschreibung durch die Projektionsfunktion p(k) = {Knoten von k} • Inzidenz, Adjazenz, Schlingen, Parallelkanten – wie bisher • Halbgrade, Vorgänger und Nachfolger – entfallen jetzt • Grad, Nachbarn – wie bisher Definition : Ein Graph G heißt regulär vom Grade r , wenn d(x) = r regulärer Graph ∀x ∈ X. Beispiel für r = 2 : Dreieck; r = 3 : Pyramide, Würfel; r = 4 : Oktaeder. (a) Dreieck (b) Pyramide (c) Oktaeder 9 Vorlesungsmitschrift Graphentheorie 2.3 Grundbegriffe der Graphentheorie Teilgraphen, Kantenzüge, Wege und Kreise Die Beschreibung der Kanten durch die beiden Knoten bringt die Möglichkeit K ⊆ X × X, d.h. k = (x1 , x2 ) ist ein geordnetes Paar mit Anfangsknoten x1 und Endknoten x2 . Für ungerichtete Graphen ist K ⊆ X & X, d.h. k = {x1 , x2 } wird als ungeordnetes Paar aufgefasst. Teilgraphen : Definition : Ein Graph G = (X , K ) heißt Teilgraph von G = (X, K), wenn X ⊆ X und K ⊆ K ist. Symbol : G ⊆ G. Spezialfälle : Teilgraph 1. Gegeben ist Y ⊆ X. Es ist X = Y , K = {k ∈ K | p(k) ⊆ Y } ist die neue Kantenmenge. Der Teilgraph GY := (X , K ) heißt der durch Y erzeugte (Knoten-)Teilgraph von G. 2. Gegeben ist H ⊆ K. Es ist K = H, X = k∈K p(k) ist die neue Knotenmenge. Der Teilgraph GH := (X , K ) heißt der durch H erzeugte (Kanten-)Teilgraph von G. Kantenzüge, Wege und Kreise : Sei G = (X, K) ein (un-)gerichteter Graph, H ⊆ K ⊆ H = {k1 = X×X X&X mit (x0 , x1 ) (x1 , x2 ) (xr−1 , xr ) , k2 = , . . . , kr = } {x0 , x1 } {x1 , x2 } {xl−1 , xl } Diese Folge von aufeinanderfolgenden Kanten heißt Kantenzug der Länge r von x0 nach xr , der offen ist, fall x0 = xr ist, oder geschlossen ist, wenn x0 = xr ist. Der Kantenzug H kann auch durch seine Spur s(H) = (x0 , x1 , x2 , . . . , xr ) charakterisiert werden. 10 Kantenzug Vorlesungsmitschrift Graphentheorie Grundbegriffe der Graphentheorie Sonderfall 1 : Enthält ein Kantenzug H alle Kanten von G genau einmal, so heißt H Eulerscher Kantenzug. Gibt es in G sogar einen geschlossenen Eulerschen Kantenzug, dann ist G ein Eulerscher Graph. Eulerscher Kantenzug Sonderfall 2 : Sind in einem Kantenzug alle xi mit i = 0, 1, 2, . . . , r verschieden, so heißt H auch Weg in G von x0 nach xr der Länge r. Gilt zusätzlich x0 = xr , so heißt H auch Kreis in G der Länge r. Weg Sonderfall 2.1 : Enthält ein Weg ( Kreis ) H alle Knoten von G, so heißt H auch Hamiltonscher Weg ( Kreis ). Ein Graph, der einen Hamiltonschen Kreis enthält, heißt auch Hamiltonscher Graph. Eigenschaften : 1. Schlingen sind Kreise der Länge 1. In schlichten Graphen haben Kreise die Länge r ≥ 3 bei ungerichteten Graphen bzw. r ≥ 2 bei gerichteten Graphen. 2. Jeder offene Kantenzug von x0 nach xr enthält einen Weg von x0 nach xr . Jeder geschlossene Kantenzug enthält einen Kreis. 3. Gerichtete Graphen mit d+ (x) > 0 ∀x ∈ X bzw. d− (x) > 0 ∀x ∈ X besitzen stets einen Kreis. 4. Sei ein Kreis H mit s(H) = (x0 , x1 , x2 , . . . , xr ) in einem Graphen G gegeben, dann existiert ebenfalls ein Kreis H’ mit s(H ) = (xi , xi+1 , . . . , xr , x1 , x2 , . . . , xi ), wobei 1 ≤ i ≤ r − 1. 11 Eulerscher Graph Kreis Hamiltonscher Weg Hamiltonscher Graph Vorlesungsmitschrift Graphentheorie 2.4 Grundbegriffe der Graphentheorie Zusammenhänge in Graphen, Baum, Distanz 1. Ein ungerichteter Graph kann stets in einen gerichteten Graphen umgewandelt werden, indem jede ungerichtete Kante durch zwei entgegengesetzt gerichtete Kanten ersetzt werden. 2. Ein gerichteter Graph enthält einen ungerichteten Graphen dadurch, daß die Richtungen der Kanten weggelassen werden. 3. Ein ungerichteter Graph heißt zusammenhängend , wenn jedes Paar verschiedener Knoten durch mindestens einen Weg verbunden werden können. Ein gerichteter Graph heißt stark zusammenhängend , wenn jedes Paar verschiedener Knoten durch mindestens einen Weg verbunden werden können. Ein gerichteter Graph heißt schwach zusammenhängend , wenn der zugehörige ungerichtete Graph zusammenhängend ist. 4. Die starken bzw. schwachen Zusammenhangskomponenten eines Graphen sind die maximalen stark bzw. schwach zusammenhängenden Teilgraphen. Beispiel : Abbildung 7: Zusammenhangskomponenten Der Graph ist an sich schwach zusammenhängend, besitzt aber 3 starke Zusammenhangskomponenten ( die in sich stark zusammenhängend sind ). 12 zusammenhängend stark zusammenhängend schwach gend zusammenhän- Zusammenhangskomponenten Vorlesungsmitschrift Graphentheorie Grundbegriffe der Graphentheorie Definition : Ein zusammenhängender ungerichteter Graph, der kreisfrei ist, heißt Baum. Baum Beispiel : Abbildung 8: Baum Definition : Die Distanz D(x, y) zwischen zwei verschiedenen Knoten eines Graphen ist die Länge eines kürzesten Weges von x nach y, falls ein solcher existiert, sonst D(x, y) := ∞. Außerdem ist D(x, x) := 0. Es gilt D(x, y) < ∞, wenn x und y zur gleichen Zusammenhangskomponente ( bei gerichteten Graphen : zur gleichen starken Zusammenhangskomponente ) gehören. 13 Distanz Vorlesungsmitschrift Graphentheorie 2.5 Grundbegriffe der Graphentheorie Der Satz von Euler Satz : Ein gerichteter, schwach zusammenhängender Graph G = (X, K) ist genau dann ein Eulerscher Graph, wenn d+ (x) = d− (x) ∀x ∈ X . Bemerkung : Bei ungerichteten Graphen muß d(x) gerade für alle x ∈ X sein. Diese Eigenschaft ist beim Königsberger Brückenproblem verletzt. Beweis ( für gerichtete Graphen ) : ⇒“ ” 1. Es gibt einen geschlossenen Eulerschen Kantenzug GEK in G. Da G schwach zusammenhängend ist, muß GEK alle Knoten von X enthalten. 2. Durchläuft man GEK , so liefert jeder Durchgang durch einen Knoten x ∈ X +1 für d+ (x) und +1 für d− (x). Am Ende, wenn alle Kanten durchlaufen sind, muß d+ (x) = d− (x) ∀x ∈ X sein. ⇐“( Induktionsbeweis über m = |K| ) ” Induktionsanfang und Induktionsvoraussetzung: 1. m = 1 : Schlinge 2. m > 1 : Jeder schwach zusammenhängende Graph G mit |K| < m und d+ (x) = d− (x) ∀x ∈ X besitze einen geschlossenen Eulerschen Kantenzug. Induktionsbehauptung : Sei nun G ein schwach zusammenhängender Graph mit |K| = m und d+ (x) = d− (x) ∀x ∈ X. Induktionsbeweis : Es gilt : d+ (x) > 0 ∀x ∈ X. Dann besitzt G einen Kreis H = {k1 , k2, . . . , kl }. 14 Satz von Euler Vorlesungsmitschrift Graphentheorie Grundbegriffe der Graphentheorie 1. Fall : H = K. Dann ist G ein Eulerscher Graph. 2. Fall : H = K. Dann sei K = K \H und G = (X , K ) der durch K erzeugte Graph. In G gilt : d+ (x) = d− (x) ∀x ∈ X . Mit Herausnahme von H wurde d+ (x) und d− (x) eventuell um 1 gleichzeitig reduziert. Seien Z1 , Z2, . . . , Zp die schwachen Zusammenhangskomponenten von G . p = 1 : G ist schwach zusammenhängend. Nach der Induktionsvoraussetzung hat G einen geschlossenen Eulerschen Kantenzug H . Wegen des schwachen Zusammenhanges von G müssen H und H einen gemeinsamen Knoten haben, so daß H und H zu einem geschlossenen Eulerschen Kantenzug vereinigt werden können. p > 1 : Jetzt besitzt jede schwache Zusammenhangskomponente Zi nach der Induktionsvoraussetzung einen geschlossenen Eulerschen Kantenzug Hi . Wegen des schwachen Zusammenhanges müssen H und Hi mindestens einen gemeinsamen Knoten besitzen. Die Hi werden der Reihe nach mit H vereinigt. Im unteren Beispiel erfolgt dies durch den Kantenzug : (x0 , H1 , x0 x1 x2 , H2 , x2 x3 x4 x5 , H3 , x5 , x6 , H4 , x6 x7 x0 ) . Abbildung 9: Beweis des Satzes von Euler 15