Prof. Dr. J. Esparza
Lehrstuhl für Grundlagen derSoftwarezuverlässigkeit und theoretische
InformatikFakultät für Informatik
Technische Universität München
http://www7.in.tum.de/um/courses/ds/ws0809
WS 2008/09
Diskrete Strukturen
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
2
Kapitel IV – Graphentheorie• Graphentheorie
– Grundlagen
– Bäume
– Eigenschaften von Graphen
– Graphen-Algorithmen
– Matchings
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
3
Kapitel IV – Graphen; Matchings• Das Heiratsproblem
– Gegeben seien heiratswillige Damen und Herren. Jede Dame gibt an, mit welchem der Herren sie sich eventuell vermählen würde.
– Das Problem besteht nun darin, möglichst viele Damen so zu verheiraten, dass jede Dame einen Herren ihrer Wahl erhält, und dass selbstverständlich keine zwei Damen mit demselben Herrn verheiratet sind.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
4
Kapitel IV – Graphen; Matchings• Das Heiratsproblem
– Der einer konkreten Situation zugrundeliegendebipartite Graph.
– Das Problem:
Finde eine maximale MengeM von Kanten, so dass keine zwei Kanten aus Meinen gemeinsamen Endknoten haben.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
5
Kapitel IV – Graphen; Matchings• Job-Zuordnung
– Gegeben m Arbeitnehmer mit unterschiedlichen Fähigkeiten und n Jobs.
– Gesucht ist eine Zuordnung, so dass möglichst viele Jobs vermittelt werden.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
6
Kapitel IV – Graphen; Matchings• Job-Zuordnung
– Gesucht ist eine Zuordnung, so dass möglichst viele Jobs vermittelt werden.
P1 P2 P3 P4
J1 J2 J3
Bipartiter Graph
P1 P2 P3 P4
J1 J2 J3
Optimale Zuordnung
P1 P2 P3 P4
J1 J2 J3
Zuordnung
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
7
Kapitel IV – Graphen; Matchings• Matchings
Definition:
Sei G = (V,E) ein Graph.
– M E heißt Matching in G, falls alle Kanten in M paarweise disjunkt sind, d.h. kein Knoten ist zu mehr als einer Kante inzident.
– Ein Knoten wird von M überdeckt, wenn er inzident zu einer Kante M ist.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
8
Kapitel IV – Graphen; Matchings• Matchings
Definition:
Sei G = (V,E) ein Graph.
– M heißt perfektes Matching, falls jeder Knoten durch genau eine Kante M überdeckt ist,
d.h. |M| = |V| / 2.
• D.h., Graphen mit ungerader Anzahl Knoten enthalten kein perfektes Matching.
– |M| ist die Größe des Matchings.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
9
Kapitel IV – Graphen; Matchings• Matching und perfektes Matching:
(größtes) Matching eines Sterngraphen
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
10
Kapitel IV – Graphen; Matchings• Matchings in bipartiten Graphen.
Satz (Heiratssatz – Hall 1935):
Für einen bipartiten Graphen G = (A, B, E) gibt es genau dann ein Matching M der Kardinalität|M|=|A|, wenn gilt
| (X)| |X| für alle X A.
Hierbei ist (X) die Nachbarschaft der Knotenmenge X, d.h. (X) = ⋃v X (v).
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
11
Kapitel IV – Graphen; Matchings• Matchings in bipartiten Graphen.
Der Name Heiratssatz stammt daher, dass es nach diesem Satz möglich ist, jede Frau zu verheiraten, wenn es für jede Gruppe von Frauen mindestens genauso viele Männer gibt, die sich für wenigstens eine der Frauen in der Gruppe interessieren.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
12
Kapitel IV – Graphen; Matchings• Beweis des Heiratssatzes.
„ “
Wir beweisen die Kontraposition.
Wenn es ein X µ A gibt mit |X| > | (X)| ist, dann können nicht alle Knoten aus X zugleich gematcht werden. Es gibt also kein matching Mmit |M| = |A|.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
13
Kapitel IV – Graphen; Matchings„ “
Wir müssen zeigen: wenn | (X)| |X| für alle X A, dann gibt es ein Matching M mit |M|=|A|.
Beweis durch Widespruch.
Annahme: es gilt | (X)| |X| für alle X A und es gibt kein Matching M mit |M| = |A|.
Sei M´ein Matching maximaler Kardinalität(d.h., kein Matching enthält mehr Kanten).
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
14
Kapitel IV – Graphen; Matchings„ “Lemma: Es gibt einen Pfad 1. bei dem sich gematchte und ungematchte Kanten
(bezüglich M´) abwechseln, und 2. Anfangs- und Endknoten ungematcht sind.
Beweis des Lemmas: Da |M´|< |A| gibt es einen Knoten a = a0 A der in M´ ungematcht ist. Wir beginnen in a0 eine Breitensuche wobei wir in den ungeraden Schichten (also von A aus) nur ungematchte und in den geraden Schichten (also von B aus) nur gematchte Kanten verwenden.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
15
Kapitel IV – Graphen; MatchingsDie Breitensuche definiert einen Baum von G.
Grafische Darstellung der Vorgehensweise.
a0
b0
b3
a1
b1 a2
b2 a3
b6 a7
b7 a8
a4
b8
b4 a5
b5 a6
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
16
Kapitel IV – Graphen; Matchings„ “
Behauptung: wenn nach Vollendung einer geraden Schicht (mit gematchten Kanten) alle Blätter des BFS-Baums gematcht sind, dann kann die alternierende BFS forgesetzt werden.
Seien A´ (bzw. B´) die Knoten des aktuellen BFS-Baums in A (bzw. B ). Da alle Knoten von B´mindestens ein Kind in A´ haben, gilt |A´| > |B´|. Mit X=A´ gilt auf Grund der Annahme¡(A´) ¸ |A´|> |B´|. Damit kann die Suche fortgesetzt werden und die Behauptung gilt.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
17
Kapitel IV – Graphen; Matchings„ “
Da G endlich ist, muss die BFS irgendwann terminieren. Aus der Behauptung folgt, dass sie nur nach Vollendung einer geraden Schicht (mit gematchten Kanten) terminieren kann, die einen ungematchtes Blatt bi enthält. Dann erfüllt der Pfad, der im Baum von a0 zu bi führt, die Bedingungen 1. und 2.
Ende des Beweises des Lemmas.
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
18
Kapitel IV – Graphen; Matchings• „ “
Also existiert ein Pfad wie in folgender Abbildung:
Vertauscht man auf diesem Pfad gematchte und ungematchte Kanten
dann erhält man ein neues Matching M´´ mit |M´| = |M´| + 1, was die Maximalität von M´ widerspricht.
u0 v1 u1 v2 u2 uk-1 vk
u0 v1 u1 v2 u2 uk-1 vk
Vorlesung Diskrete Strukturen WS 08/09Prof. Dr. J. Esparza – Institut für Informatik, TU München
19
Kapitel IV – Graphen; Matchings• Aus dem Heiratssatz kann direkt das folgende
Korollar abgeleitet werden.
Korollar:
Sei G ein k-regulärer bipartiter Graph. Dann enthält G ein perfektes Matching.
Beweise: Durch einfaches Nachprüfen!