Kapitel 1: Fallstudie Bipartite Graphen Gliederung der Vorlesung

Ähnliche Dokumente
Kapitel 5: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 4: Minimal spannende Bäume Gliederung der Vorlesung

Kapitel 4: Minimale spannende Bäume Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 9: Lineare Programmierung Gliederung

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Kapitel 4: Netzplantechnik Gliederung der Vorlesung

Theoretische Informatik

Kapitel 7: Flüsse in Netzwerken und Anwendungen Gliederung der Vorlesung

Das Heiratsproblem. Definition Matching

Aufgaben zur Klausurvorbereitung

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

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

Bäume und Wälder. Definition 1

Kapitel 3: Untere Schranken für algorithmische Probleme Gliederung

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

Kapitel 5: Dynamisches Programmieren Gliederung

Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

Systems of Distinct Representatives

15. Elementare Graphalgorithmen

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

6. Übung zur Linearen Optimierung SS08

Bipartite Graphen. Beispiele

Lösungsskizzen zu den Klausuraufgaben zum Kurs 1142 Algorithmische Mathematik. a 0 = 0 =

durch Einfügen von Knoten konstruiert werden kann.

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

WS 2008/09. Diskrete Strukturen

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

= 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

Wiederholung zu Flüssen

3-Färbbarkeit. Korollar: Zu Entscheiden, ob ein Graph k-färbbar ist mit k 3, ist NP-vollständig.

Aufgabe 1: Berechnen Sie für den in Abbildung 1 gegebenen Graphen den. Abbildung 1: Graph für Flussproblem in Übungsaufgabe 1

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

Abbildung 1: Reduktion: CLIQUE zu VERTEX-COVER. links: Clique V = {u, v, x, y}. rechts:der Graph Ḡ mit VC V \ V = {w, z}

Graphen. Graphen und ihre Darstellungen

Kapitel 6: Graphalgorithmen Gliederung

KAPITEL 3 MATCHINGS IN BIPARTITEN GRAPHEN

Formale Grundlagen der Informatik

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

Anwendungen von Graphen

Kapitel 2: Analyse der Laufzeit von Algorithmen Gliederung

William Rowan Hamilton,

1. Asymptotische Notationen 2. Zahlentheoretische Algorithmen 3. Sortierverfahren 4. String Matching 5. Ausgewählte Datenstrukturen

Fünf-Farben-Satz. Seminar aus reiner Mathematik, WS 13/14. Schweighofer Lukas, November Seite 1

Cliquen und unabhängige Mengen

3 Klassifikation wichtiger Optimierungsprobleme

Definition : Diechromatische Zahl eines Graphen G ist die kleinste Anzahl chromatische Zahl von Farben für eine zulässige Färbung.

Graphen. Bernhard Ganter. Institut für Algebra TU Dresden D Dresden

Listenfärbung von Graphen

Formale Grundlagen. Graphentheorie 2008W. Vorlesung im 2008S

Kapitel 3: Berechnungstheorie Gliederung

Proseminar Graphentheorie Vortrag 3 Matching. Inhalt: 1. Grundlagen 2. Matchings in bipatiten Graphen 3. Matchings in allgemeinen Graphen

KARL-FRANZENS-UNIVERSITÄT GRAZ. Seminar aus Reiner Mathematik. Die Museumswächter. Krupic Mustafa Wintersemester 2013/14

Kapitel 3: Berechnungstheorie Gliederung

Kapitel 1: Motivation / Grundlagen Gliederung

Ein Turnierplan mit fünf Runden

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

Algorithmen & Komplexität

Übungen zu Kombinatorik und Graphentheorie

Studientag zur Algorithmischen Mathematik

2. Entsprechende Listen P i von Vorgängern von i 3. for i := 1 to n do. (ii) S i = Knoten 2 + 1}

Kapitel 2: Sortier- und Selektionsverfahren Gliederung

WS 2013/14. Diskrete Strukturen

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

Operations Research. Flüsse in Netzwerken. Flüsse in Netzwerken. Unimodularität. Rainer Schrader. 2. Juli Gliederung.

Algorithmen zum Lösen von Vertex und Set Cover Instanzen zur Planung von Angriffen auf Netzwerke

4 Färbungen Begriffe Komplexität Greedy-Algorithmus Knotenreihenfolgen Das 4-Farben-Problem...

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

WS 2015/16 Diskrete Strukturen Kapitel 4: Graphen (Matchings)

Proseminar Online Algorithmen, Prof. Dr. Rolf Klein

Modul Algorithmik, T-Katalog

1.Aufgabe: Minimal aufspannender Baum

Theoretische Informatik. Exkurs: Komplexität von Optimierungsproblemen. Optimierungsprobleme. Optimierungsprobleme. Exkurs Optimierungsprobleme

Vier-Farben-Vermutung (1)

Technische Universität München Zentrum Mathematik Propädeutikum Diskrete Mathematik. Weihnachtsblatt

Ausarbeitung über den Satz von Menger und den Satz von König

Diskrete Strukturen. Hausaufgabe 1 (5 Punkte)

Graphentheorie. Zusammenhang. Zusammenhang. Zusammenhang. Rainer Schrader. 13. November 2007

Frage 8.3. Wozu dienen Beweise im Rahmen einer mathematischen (Lehramts-)Ausbildung?

OR für Wirtschaftsingenieure. Übungsserie 7: Färbungen von Graphen

Geraden in der Ebene und Zerlegung von Graphen

3.6 Branch-and-Bound-Verfahren

Über ein Theorem von Hans Läuchli

Durchschnitt von Matroiden

Theoretische Informatik Kap 1: Formale Sprachen/Automatentheorie

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Matching. Organisatorisches. VL-18: Matching. (Datenstrukturen und Algorithmen, SS 2017) Gerhard Woeginger. Tanzabend

Routing A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung

Lösungen zu Kapitel 5

Kapitel 2: Zahlentheoretische Algorithmen Gliederung

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

Kapitel 3: Berechnungstheorie Gliederung

Zentralübung zur Vorlesung Diskrete Strukturen

André Krischke Helge Röpcke. Graphen und Netzwerktheorie Grundlagen Methoden Anwendungen

Kapitel 2: Formale Sprachen Gliederung. 0. Grundbegriffe 1. Endliche Automaten 2. Formale Sprachen 3. Berechnungstheorie 4. Komplexitätstheorie

WS 2009/10. Diskrete Strukturen

Transkript:

Kapitel : Fallstudie Bipartite Graphen Gliederung der Vorlesung. Fallstudie Bipartite Graphen. Grundbegriffe. Elementare Graphalgorithmen und. Minimal spannende Bäume. Kürzeste Wege 6. Traveling Salesman Problem 7. Flüsse in Netzwerken und 8. Netzplantechnik /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Gliederung des Kapitels a) Motivation b) Grundbegriffe c) Matchings in bipartiten Graphen d) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Parlamentsproblem gegeben: eine Menge P = { p,...,p k } von Personen eine Menge M = { g,...,g n } von Gruppen, wobei jede Gruppe eine Teilmenge von P gesucht: eine Auswahl von n Personen, wobei jede Person als Repräsentant einer Gruppe fungiert (/* diese Person sollte natürlich Mitglied der jeweiligen Gruppe sein und jede Gruppe sollte genau einen Repräsentanten haben */) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Parlamentsproblem Gruppen Personen je Gruppe gibt es einen weißen Knoten je Person gibt es einen gelben Knoten zwischen einem weißen und einem gelben Knoten gibt es genau dann eine Kante, falls die jeweilige Person Mitglied der Gruppe ist /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Parlamentsproblem Gruppen Personen... offenbar kann man das Parlamentsproblem für dieses Beispiel lösen... offenbar genügt es ein Matching zu finden, welches genauso viele Kanten hat, wie es Gruppen gibt (/* Geht das immer??? */) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate gegeben: eine leere Tabelle der Größe n n die Zahlen {,...,n } gesucht: eine Füllung der Tabelle mit den Zahlen {,...n }, so dass jede Zahl in jeder Zeile und in jeder Spalte genau einmal vorkommt /, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

/, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... eine offensichtliche Lösung... kann man diese Teillösung so fortsetzen, dass die gesamte Tabelle gefüllt ist (/* Geht das immer??? */)

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate Zahlen Spalten je Zahl gibt es einen weißen Knoten je Spalte gibt es einen gelben Knoten zwischen einem weißen und einem gelben Knoten gibt es stets eine Kante /, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

/, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... offenbar entspricht dieses Matching der Füllung der ersten Zeile... wir streichen die Kanten dieses Matchings und machen weiter...

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... offenbar entspricht dieses Matching im Restgraphen der Füllung der zweiten Zeile... wir streichen die Kanten dieses Matchings und machen weiter... /, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... offenbar entspricht dieses Matching im Restgraphen der Füllung der dritten Zeile... wir streichen die Kanten dieses Matchings und machen weiter... /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... offenbar entspricht dieses Matching im Restgraphen der Füllung der vierten Zeile... wir streichen die Kanten dieses Matchings und machen weiter... /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... offenbar entspricht dieses Matching im Restgraphen der Füllung der fünften Zeile... und wir sind fertig /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... wenn wir die Kanten eines Matchings jeweils mit einer Farbe färben und für jedes Matching eine neue Farbe verwenden, so erhalten wir eine Färbung aller Kanten, so dass für alle Ecken gilt: alle Kanten, die diese Ecke berühren, sind mit unterschiedlichen Farben gefärbt /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Problem der Lateinischen Quadrate... wir streichen, wie zuvor, alle Kanten, die in den Matchings für die erste und die zweite Zeile benutzt wurden... und machen wie zuvor weiter /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Begriffe: Teilmengensystem und Transversale es sei Y eine nicht leere Menge ein Teilmengensystem { M,...,M n } über Y ist eine Menge von nicht leeren Teilmengen von Y eine n-elementige Teilmenge T = { r,...,r n } Y ist eine Transversale für { M,...,M n }, falls r i M i für alle i =,...,n gilt... das Element r i T fungiert als Repräsentant der Menge M i... da T aus n Elementen besteht, hat jede Menge M i ihren eigenen Repräsentanten /, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Abgeleitete mathematische Fragestellung gegeben: eine nicht leere Menge Y ein Teilmengensystem { M,...,M n } über Y gesucht: eine Antwort auf die Frage, ob es eine Transversale für { M,...,M n } gibt (/* falls ja, sollte man eine Transversale auch angeben können */) /, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Graphentheoretische Interpretation es seien Y = { y,...,y z } eine nicht leere Menge und { M,...,M n } ein Teilmengensystem über Y wir betrachten folgenden bipartiten Graphen: für jede Menge M i M gibt es einen weißen Knoten für jedes Element y j Y gibt es einen gelben Knoten zwischen einem weißen und einem gelben Knoten gibt es genau dann eine Kante, falls das jeweilige Element y j zur entsprechenden Menge M i gehört /, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Graphentheoretische Interpretation es seien Y = { y,...,y z } eine nicht leere Menge und { M,...,M n } ein Teilmengensystem über Y es sei G = (V,E) der zugehörige bipartite Graph, mit der Zerlegung in weiße Knoten und gelbe Knoten... offenbar gibt es für das Teilmengensystem { M,...,M n } genau dann eine Transversale, wenn es im zugehörigen Graphen G ein Matching gibt, das aus n Kanten besteht (/* damit gibt es offenbar zu jedem weißen Knoten eine Kante im Matching, die diesen Knoten als Ecke hat */) /, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Interessierende graphentheoretische Fragestellung gegeben: ein bipartiter Graph G = (V,E) und die zugehörige Zerlegung von V in zwei Teilmengen X und Y gesucht: eine Antwort auf die Frage, ob es ein Matching M gibt, das genau X viele Kanten hat (/* falls ja, sollte man ein solches Matching auch angeben können */) /, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Anmerkungen eigentlich ist die Aufgabe ganz einfach zu lösen...... man wendet den Ungarischen Algorithmus an, um ein maximales Matching von G zu bestimmen, und zählt die Kanten von M interessanter ist es, besser zu verstehen, woran es liegt, dass es in manchen bipartiter Graph solche großen Matchings gibt und in manchen nicht... weshalb das auch noch wichtig ist, sehen wir später /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Hilfsbegriff: Nachbarn eines Knotens bzw. einer Knotenmenge es seien G = (V,E) ein bipartiter Graph es sei v ein Knoten in V es sei NB(v) = { v { v,v } E }... NB(v) V ist der Menge der Nachbarn von v... die Größe von NB(v) gibt offenbar an, wie viele Nachbarn v hat es sei V = { v,...,v z } V es sei NB(V ) = NB(v )... NB(v z )... NB(V ) V ist der Menge der Nachbarn der Knoten in V... die Größe von NB(V ) gibt offenbar an, wie viele Nachbarn die Knoten in V haben /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Satz von Hall es seien G = (V,E) ein bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G Dann sind die folgenden Aussagen äquivalent: ) Es gibt ein Matching M von G mit M = X. ) Für jede Teilmenge X X gilt: NB(X ) X.... ) bedeutet das jede Teilmenge X X mindestens so viele Nachbarn hat, wie X Elemente hat... in der Literatur nennt man ) auch Hall-Bedingung /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee (/* ) impliziert ) */) es seien G = (V,E) ein bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G es sei M ein Matching von G mit M = X es sei X = { x,...,x z } X da M ein Matching mit M = X ist, gilt für jedes i =,...,z: es gibt genau eine Kante { x i,y i } M also gilt für alle i =,...,z: y i NB(X ) da M ein Matching ist, gilt für alle i,j =,...,z mit i j: y i y j... also gilt NB(X ) X /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee (/* ) impliziert ) */) offenbar geht es um die Aussage: Wenn für jede Teilmenge X X mit NB(X ) X gilt, so gibt es ein Matching M von G mit M = X. obige Aussage ist zu folgender Aussage äquivalent: Wenn es kein Matching M von G mit M = X gibt, so muss es eine Teilmenge X X mit NB(X ) < X geben. /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee (/* ) impliziert ) */) es seien G = (V,E) ein bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G es sei bekannt, dass es kein Matching M von G mit M = X gibt es genügt also eine Teilmenge X X mit NB(X ) < X zu finden... hierbei hilft uns der Ungarische Algorithmus es sei M das vom Ungarischen Algorithmus bestimmte maximale Matching (/* dann gilt offenbar: M < X */) wir interessieren uns für die vom Ungarischen Algorithmus beim Abbruch bestimmte Markierung /, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee (/* ) impliziert ); cont. */)... zur Illustration # # # setze X = {,, } (/* alle markierten Knoten in X */) damit ist NB(X ) = {, } (/* alle Knoten in NB(X ) sind markiert, da keine Kanten von unmarkierten Knoten in Y zu Knoten in X gehen */) die Kanten e = {, } und e = {, } gehören zu M und haben (paarweise) verschieden Ecken in NB(X ) bzw. in X (/* die Knoten in NB(Y ) sind markiert und M ist ein Matching */) also gilt X NB(X ) der Knoten in X ist unversorgt, also gilt X > NB(X ) (/* da M < X gilt, gibt es stets einen unversorgten Knoten in X, der natürlich auch zu X gehört */) /, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Zurück zum Beispiel: Lateinische Quadrate gegeben: eine leere Tabelle der Größe n n die Zahlen {,...,n } gesucht: eine Füllung der Tabelle mit den Zahlen {,...n }, so dass jede Zahl in jeder Zeile und in jeder Spalte genau einmal vorkommt /, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Zurück zum Beispiel: Lateinische Quadrate Modellierung ein bipartiter Graph G = (V,E), wobei gilt: V wird in zwei Mengen X und Y mit jeweils n Elementen zerlegt von jedem Knoten in X gibt es n Kanten und zwar zu jedem Knoten in Y... offenbar hat jeder Knoten in X genau n Nachbarn /, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Algorithmische Idee es sei G = (V,E) der gegebene Graph mit der Zerlegung von V in zwei Mengen X und Y mit jeweils n Elementen for j = 0,...,n - do ) bestimme im aktuellen Graphen G ein Matching M j der Größe n ) erzeuge einen Graphen G, in dem alle in M j vorkommenden Kanten aus G gestrichen werden ) setze G = G... aus den Matchings M 0,...,M n- kann man dann unmittelbar die Füllung der n n Tabelle ablesen (/* die einzelnen Matchings kann man bspw. mit dem Ungarischen Algorithmus berechnen */) /, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Anmerkungen (/* funktioniert das überhaupt und, wenn ja, weshalb */) wir gehen mal davon aus, dass in jedem Schritt j ein Matching M j der Größe n gefunden würde (/* diese Vermutung verifizieren wir gleich */) Schritt j = 0: G ist ein bipartiter Graph, in dem jeder Knoten in X und Y jeweils n viele Nachbarn hat Schritt j = : G ist ein bipartiter Graph, in dem jeder Knoten in X und Y jeweils n - viele Nachbarn hat Schritt j = : G ist ein bipartiter Graph, in dem jeder Knoten in X und Y jeweils n - viele Nachbarn hat... allgemein: in Schritt j ist G ein bipartiter Graph, in dem jeder Knoten in X und Y jeweils n - j Nachbarn hat... dass das so ist, sollte klar sein, da im Schritt j jeder Knoten aus X und Y genau einen Nachbarn verliert (/*... M j ist ein Matching der Größe n */) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Anmerkungen (/* Vermutung verifizieren... */) es sei G = (V,E) der gegebene Graph mit der Zerlegung von V in zwei Mengen X und Y mit jeweils n Elementen, wobei jeder Knoten in X und in Y jeweils k Nachbarn habe (/* k n */) es sei X X beliebig gewählt es gibt k* X viele Kanten von Knoten in X zu Knoten in NB(X ) (/* jeder Knoten in X hat k Nachbarn */) es gibt k* NB(x ) viele Kanten von Knoten in NB(X ) zu Knoten in X (/* jeder Knoten in Y hat k Nachbarn */) es gilt offenbar k* NB(X ) k* X (/* jede Kante von X nach Y ist gleichzeitig eine Kante von Y nach X */)... also gilt NB(X ) X (/* also erfüllt G die Hall-Bedingung und damit gibt es in G ein Matching der Größe X = n */) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Ergänzung die eben benutzte Beweisidee kann man verwenden, um für eine interessante Klasse von bipartiter Graphen zu zeigen, dass es maximale Matchings für diese Graphen gibt... weshalb diese Klasse interessant ist, sehen wir später... u.a gehören auch die folgenden bipartiten Graphen zu dieser Klasse /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Anmerkung die uns interessierende Klasse von bipartiten Graphen enthält Graphen, die nicht einfach sind (/* d.h. es kann zwischen zwei Knoten x und y mehr als eine Kante geben */)... das ist so gewünscht (/* und so gar unumgehbar!!! */)... um obiges deutlich zu machen, verwenden wir im Folgenden den Begriff allgemeiner bipartiter Graph (/* solche Graphen können, aber müssen keine parallele Kanten haben */) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Anmerkung zum Glück gelten alle bisher formulierten Ergebnisse auch für allgemeine bipartite Graphen zum Glück lassen sich alle bisher diskutierten Algorithmen genauso benutzen, um die jeweils adressierte Fragestellung auch für allgemeine bipartite Graphen zu lösen... falls gewünscht, können wir uns das exemplarisch mal ansehen /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Hilfsbegriff: Eckengrad eines Knotens es sei G = (V,E) ein allgemeiner bipartiter Graph (/* E ist dann eine Multimenge, da es im Graphen mehrere Kanten geben kann, die zwei Knoten verbinden */) es sei v V der Knoten v hat den Eckengrad k, wenn es genau k Kanten in E mit der Ecke v gibt... falls v den Eckengrad k hat, so kann v weniger als k viele Nachbarn haben (/* natürlich auch nicht mehr */) /, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Zentraler Begriff: allgemeiner k-regulärer bipartiter Graph es sei G = (V,E) ein allgemeiner bipartiter Graph es sei k G ist k-regulär, falls jeder Knoten in V den Eckengrad k hat Ein einfacher Zusammenhang es seien k und G = (V,E) ein allgemeiner k-regulärer bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G Dann gilt: X = Y. /, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Ein wichtiges Resultat es seien k und G = (V,E) ein allgemeiner k-regulärer bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G Dann gilt: Der Graph G besitzt ein Matching M der Größe X.... in der Literatur findet man alternativ auch folgende Formulierung: Der Graph G besitzt ein vollständiges bzw. perfektes Matching.... ein Matching M von G ist ein vollständiges bzw. perfektes Matching, falls jeder Knoten aus V auch Ecke einer Kante in M ist (/* so ein Matching kann es in G natürlich nur dann geben, wenn X = Y gilt */) /, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee (/* Variante */) es genügt zu zeigen, dass der Graph G, die Hall-Bedingung erfüllt... das überlegen Sie sich bitte selbst Beweisidee (/* Variante */) da G ein bipartiter Graph ist, wissen wir, dass ein maximales Matching M* von G genauso viele Kanten besitzt, wie eine minimale Knotenüberdeckung S* von G Ecken enthält... dieses Wissen kann man ausnutzen /, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee (/* Variante */) es seien k, G = (V,E) ein allgemeiner k-regulärer bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G es sei M ein Matching von G dann kann M prinzipiell die Werte,... bis X annehmen es sei S eine Eckenüberdeckung von G dann kann S prinzipiell die Werte,... bis V annehmen... wenn S jedoch nur die Werte X,... bis V annehmen kann, wären wir sofort fertig (/* da M* und S* denselben Wert haben müssen */) Begründung für die weitere Einschränkung der möglichen Werte von S: G hat genau k* X viele Kanten und S überdeckt höchsten k* S viele Kanten da S eine Eckenüberdeckung ist, muss k* S k* X und damit auch S X gelten /, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Stundenplanproblem gegeben: gesucht: eine Menge von Lehrern { L,..,L n } eine Menge von Klassen { K,...,K m } für jeden Lehrer L i und jede Klasse K j eine Zahl p ij, die angibt, wie viele Stunden der Lehrer L i in der Klasse K j in einer Woche unterrichtet einen Stundenplan für eine Woche mit einer minimalen Wochenstundenzahl /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Stundenplanproblem Lehrer Klassen je Lehrer gibt es einen weißen Knoten je Klasse gibt es einen gelben Knoten zwischen einem weißen und einem gelben Knoten gibt es genauso viele Kanten, wie der jeweilige Lehrer in der jeweiligen Klasse in einer Woche unterrichten muss /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Stundenplanproblem Lehrer Klassen Plan für die erste Wochenstunde (/* blaue Kanten */) Plan für die zweite Wochenstunde (/* grüne Kanten */) Plan für die dritte Wochenstunde (/* rote Kanten */) /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beispiel : Stundenplanproblem Lehrer Klassen... ein Stundenplan entspricht einer Färbung der Kanten im Graphen, so dass (i) alle Kanten gefärbt sind (/* alle Stunden werden unterrichtet */) und (ii) alle Kanten, die eine Ecke berühren, mit unterschiedlichen Farben gefärbt sind (/* einer Lehrer kann nicht mehrere Klassen gleichzeitig unterrichten */)... offenbar sollte die Anzahl der benutzten Farben möglichst klein sein /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Begriff: Kantenfärbung und chromatische Zahl es seien G = (V,E) ein (allgemeiner) bipartiter Graph es sei k eine Abbildung F von E in die Menge {,...,k } ist eine k-kantenfärbung von G, falls gilt: jeder Kante in E wird genau eine Zahl zugeordnet für jeden Knoten v V gilt, dass allen Kanten in E mit der Ecke v paarweise verschiedene Farben haben die kleinste Zahl k, für die es eine k-kantenfärbung von G gibt, nennt man die chromatische Zahl von G /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Eine einfache Folgerung es seien G = (V,E) ein (allgemeiner) bipartiter Graph es sei k die maximale Eckenzahl eines Knotens v V Dann gilt: Die chromatische Zahl von G ist nicht kleiner als k. Eine weitere einfache Folgerung es seien G = (V,E) ein (allgemeiner) bipartiter Graph es seien k, F eine k-kantenfärbung von G und z {,...,k } es sei M z die Menge aller Kanten in E, denen vermittels F die Zahl z zugeordnet wurde Dann gilt: M z ist ein Matching von G. /, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Ein interessanteres Resultat es seien k und G = (V,E) ein allgemeiner k-regulärer bipartiter Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G Dann gilt: Die chromatische Zahl von G ist gleich k.... da wir wissen, dass es in G ein Matching der Größe X gibt, sollte alles klar sein /, Folie 7 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee es seien k und G = (V,E) der gegebene k-reguläre bipartite Graph und X,Y V die zugehörige Zerlegung der Knotenmenge von G der folgende Algorithmus erlaubt, es eine k-kantenfärbung von G zu bestimmen es sei G* eine Kopie von G (/* in der die Kanten gefärbt werden */) es sei G der gegebene Graph for j =,...,k do ) bestimme ein Matching M j der Größe X im aktuellen Graphen G ) färbe alle Kanten von M j in G* mit der Farbe j ) erzeuge einen Graphen G, in dem alle in M j vorkommenden Kanten aus G gestrichen werden ) setze G = G /, Folie 8 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee das dieser Ansatz funktioniert sollte klar sein (/* denselben Ansatz haben wir benutzt, um das Problem der Lateinischen Quadrate zu lösen */) Abgeleitete Fragestellung es seien G = (V,E) ein bipartiter Graph es sei k die maximale Eckenzahl eines Knotens v V... Ist die chromatische Zahl dieses Graphen auch k, oder vielleicht doch größer??? /, Folie 9 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Diskussion wir versuchen denselben Ansatz wie zuvor... es scheint zu klappen /, Folie 0 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Diskussion wir versuchen denselben Ansatz wie zuvor... aber nicht auf jede Art!!! /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Diskussion wir versuchen denselben Ansatz wie zuvor... problematisch ist, dass sich beim zweiten Schritt der Eckengrad von Knoten nicht ändert!!! /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Diskussion bevor wir beginnen, erweitern wir den gegebenen Graphen G = (V,E)... G wird zu einem allgemeinen k-regulären bipartiten Graphen G erweitert (/* k ist gerade die maximale Eckenzahl eines Knotens v V */)... anschließend werden die Kanten in G wie zuvor gefärbt /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen... die Antwort auf die Frage es seien k und G = (V,E) ein bipartiter Graph, wobei k die maximale Eckenzahl eines Knotens v V ist Dann gilt: Die chromatische Zahl von G ist gleich k. /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee es seien k und G = (V,E) ein bipartiter Graph, wobei k die maximale Eckenzahl eines Knotens v V ist der folgende Algorithmus erlaubt, es eine k-kantenfärbung von G zu bestimmen es sei G* eine Kopie von G (/* in der die Kanten gefärbt werden */) es sei G = (V,E ) ein allgemeiner k-regulärer bipartiter Graph, der G als Teilgraphen enthält, und X,Y V die zugehörige Zerlegung von V for j =,...,k do ) bestimme ein Matching M j der Größe X im aktuellen Graphen G ) färbe alle Kanten von M j in G mit der Farbe j ) erzeuge einen Graphen G, in dem alle in M j vorkommenden Kanten aus G gestrichen werden ) setze G = G /, Folie 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung

Kapitel : Fallstudie Bipartite Graphen Beweisidee das dieser Ansatz funktioniert sollte klar sein wir wissen schon, dass wir auf diese Art eine k-kantenfärbung F für G bestimmen können da der gegebene Graph G ein Teilgraph von G ist (/* G hat ggf. weniger Knoten und Kanten als G */), definiert F auch eine k-kantenfärbung F für den gegebenen bipartiten Graphen G /, Folie 6 0 Prof. Steffen Lange - HDa/FbI - Graphen und Optimierung