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 Tages: Matchings in bipartiten Graphen Halls Theorem 2 Henning Meyerhenke:
Matchings Definitionen Definition G = (V 1 V 2, E) bipartit: V 1 V 2 = und E V 1 V 2 In Worten: Ein Matching M ist eine Kantenmenge in G, bei der keine zwei Kanten einen Knoten gemeinsam haben M nicht erweiterbares Matching (engl.: maximal matching): (u, v) E, w V so dass (u, w) M oder (v, w) M M größtmögliches Matching (engl.: maximum matching): M maximal unter allen Matchings in G 3 Henning Meyerhenke:
Matchings Definitionen Definition G = (V 1 V 2, E) bipartit: V 1 V 2 = und E V 1 V 2 In Worten: Ein Matching M ist eine Kantenmenge in G, bei der keine zwei Kanten einen Knoten gemeinsam haben M nicht erweiterbares Matching (engl.: maximal matching): (u, v) E, w V so dass (u, w) M oder (v, w) M M größtmögliches Matching (engl.: maximum matching): M maximal unter allen Matchings in G Knoten u heißt überdeckt oder saturiert (von M), wenn es einen Knoten v gibt, so dass (u, v) M M ist perfektes Matching: M saturiert alle Knoten in G 3 Henning Meyerhenke:
Beispiele Abbildung: Links: Leeres Matching. Mitte: Nicht erweiterbares Matching. Rechts: Größtmögliches und perfektes Matching. 4 Henning Meyerhenke:
Zurück zum Szenario der Single-Börse Wie modellieren Sie nun diese Entitäten mit den gerade eingeführten Begriffen? Menge der Kunden Menge der Kundinnen Gefällt mir -Beziehung Aufgabe (möglichst viele Paare, keiner doppelt) 5 Henning Meyerhenke:
Zurück zum Szenario der Single-Börse Wie modellieren Sie nun diese Entitäten mit den gerade eingeführten Begriffen? Menge der Kunden Menge der Kundinnen Gefällt mir -Beziehung Aufgabe (möglichst viele Paare, keiner doppelt) Aufgabe: Bestimme ein größtmögliches Matching im bipartiten Graphen G = (X Y, E), wobei X die Menge der Kundinnen, Y die Menge der Kunden und E die Gefällt mir -Beziehung ist. 5 Henning Meyerhenke:
Perfekte Matchings in K n,n Betrachten wir den Graphen K n,n mit disjunkten Knotenteilmengen X = {x 1,..., x n } und Y = {y 1,..., y n }. Ein perfektes Matching definiert eine Bijektion von X nach Y. Jedes Matching wird durch eine Permutation von {1,..., n} definiert. Es gibt n! perfekte Matchings in K n,n. Tafel: Perfektes Matching und induzierte Permutationsmatrix. Abbildung: Der Graph K 4,4. 6 Henning Meyerhenke:
Nicht erweiterbar = größtmöglich Ein Matching M ist nicht erweiterbar (engl.: maximal), wenn jede Kante, die nicht zu M gehört, inzident ist zu einer Kante aus M. Jedes größtmögliche Matching ist nicht erweiterbar, aber die Umkehrrichtung muss nicht gelten. Abbildung: Zwei Beispiele von nicht erweiterbaren, aber nicht größtmöglichen Matchings. Bemerkung Das Ersetzen der roten Kanten durch die schwarzen (und umgekehrt) erzeugt ein größeres Matching. Mögliche Strategie zur Vergrößerung von Matchings! 7 Henning Meyerhenke:
Alternierende und augmentierende Pfade Definition Sei M ein Matching in G = (U V, E). Ein M-alternierender Pfad ist ein Pfad P = (u 1, v 1, u 2, v 2,..., u k, v k ) oder P = (u 1, v 1, u 2, v 2,..., u k, v k, u k+1 ), in dem (u i, v i ) M für alle i oder (v i, u i+1 ) M für alle i. Ein M-alternierender Pfad mit unsaturierten Endknoten heißt M-augmentierender Pfad (engl.: M-augmenting path). Abbildung: M-alternierender (links) und M-augmentierender (rechts) Pfad für Matching M (rot). 8 Henning Meyerhenke:
Augmentierende Pfade Abbildung: M-alternierender (links) und M-augmentierender (rechts) Pfad für Matching M (rot). Bemerkung Hat man einen M-augmentierenden Pfad P, ersetzt man die Kanten aus M in P durch die anderen Kanten aus P und erhält ein Matching mit einer Kante mehr. Falls M größtmögliches Matching ist, dann existiert kein M-augmentierender Pfad. Ziel: Beweis dieser Aussage für beide logische Richtungen. 9 Henning Meyerhenke:
Symmetrische Differenz Definition Seien G = (V, E G ) und H = (V, E H ) zwei Graphen mit der selben Knotenmenge V. Die symmetrische Differenz G H ist ein Graph mit der Knotenmenge V und Kantenmenge E = {e e E G XOR e E H }. Anwendung auf Kantenmengen: M M = (M M ) (M M). Abbildung: Matchings M und M. 10 Henning Meyerhenke:
ZHK der symmetrischen Differenz Abbildung: Matchings M und M. Lemma Seien M und M zwei Matchings in G = (V 1 V 2, E). Jede Zusammenhangskomponente von M M ist entweder ein Kreis gerader Länge oder ein Pfad. Beweis. Siehe Tafel. 11 Henning Meyerhenke:
Größtmögliches Matching und augmentierender Pfad Lemma Ein Matching M ist ein größtmögliches Matching in einem Graphen G = (V 1 V 2, E) genau dann, wenn G keinen M-augmentierenden Pfad enthält. Beweis. Siehe Tafel. Anwendungsszenario Singlebörse: Menge V 1 von Frauen, Menge V 2 von Männern. Jeder Frau einen Partner zuordnen Finde Matching, das V 1 saturiert. V 1 > V 2 Nicht jede Frau erhält einen Mann. 12 Henning Meyerhenke:
Halls Theorem Theorem (von Hall) Sei G = (V 1 V 2, E) ein bipartiter Graph. In G existiert ein Matching M, das jeden Knoten von V 1 saturiert, genau dann, wenn N(S) S für alle S V 1. Beweis. Siehe Tafel. Bemerkung Mit Halls Theorem lässt sich leicht nachweisen, falls ein bipartiter Graph G = (V 1 V 2, E) kein Matching hat, das V 1 saturiert. Dazu zeigt man einfach die Existenz einer Teilmenge von V 1 mit zu wenigen Nachbarn in V 2. 13 Henning Meyerhenke:
Abbildung zum Beweis von Halls Theorem 14 Henning Meyerhenke:
Hochzeitsproblem V 1 = V 2 Halls Theorem wird zum Hochzeitsproblem. Sei in der Singlebörse jeder Mann zu k Frauen kompatibel und umgekehrt. Corollary Für k > 0 hat jeder k-reguläre bipartite Graph ein perfektes Matching. Beweis. Siehe Tafel. 15 Henning Meyerhenke: