Matching (Graphentheorie)
Die Theorie um das Finden von Matchings in Graphen ist in der diskreten Mathematik ein umfangreiches Teilgebiet, das in die Graphentheorie eingeordnet wird.
Folgende Situation wird dabei betrachtet: Gegeben eine Menge von Dingen und zu diesen Dingen Informationen darüber, welche davon einander zugeordnet werden könnten. Ein Matching (in der Literatur manchmal auch Paarung) ist dann als eine solche Auswahl aus den möglichen Zuordnungen definiert, die kein Ding mehr als einmal zuordnet.
Die am häufigsten gestellten Fragen in dieser Situation sind dann die folgenden:
- Wie findet man ein Matching, das eine maximale Anzahl[A 1] an Dingen einander zuordnet?
Dieses Problem ist das klassische Matchingproblem. - Gibt es ein Matching, das alle Dinge zuordnet? Wenn ja, wie viele?
Solche Matchings heißen perfektes Matching. Die Anzahl der perfekten Matchings in einem Graphen
wird meistens mit
notiert. - Angenommen, man könnte quantifizieren „wie wichtig“ (oder „teuer“) die einzelnen Zuordnungen wären: Wie findet man dann ein Matching, das eine maximale Zahl von Dingen zuordnet und dabei ein möglichst großes (oder kleines) Gewicht hat?
Dieses Problem heißt gewichtetes Matchingproblem. Zwischen einer Maximierungs- und einer Minimierungsaufgabe wird hier oftmals nicht unterschieden: Indem man bei allen Gewichten (Kosten) das Vorzeichen vertauscht, kann man beide Probleme ohne nennenswerten Aufwand ineinander überführen. - Angenommen, man hätte genau zwei Klassen von Dingen und angenommen, man wüsste, dass es ausschließlich zwischen diesen Klassen mögliche Zuordnungen gibt. Werden die Probleme 1-3 dadurch einfacher?
Dieses Problem heißt bipartites (gewichtetes) Matchingproblem und ist ein viel diskutierter Spezialfall. - Kann man anderes Wissen, das man über die Struktur der möglichen Zuordnungen hat, ähnlich wie in 4 geschickt benutzen, um die Probleme 1-3 effizienter zu lösen?
Die Theorie um die Matchings untersucht möglichst effiziente Lösungsverfahren dieser Probleme, klassifiziert diese nach ihrer „Schwierigkeit“ mit den Methoden der Komplexitätstheorie und stellt Beziehungen dieser Probleme zueinander und zu anderen Problemen in der Mathematik her.
Inhaltsverzeichnis |
Definitionen [Bearbeiten]
Das oben beschriebene Problem lässt sich wie folgt formalisieren. Gegeben sei ein endlicher, ungerichteter Graph
. Eine Menge
heißt (gültiges) Matching wenn keine zwei Kanten aus
einen Knoten gemeinsam haben. Ein Matching heißt
- nicht erweiterbar (engl. maximal matching)
- falls es keine Kante
derart gibt, dass
ein gültiges Matching ist. Maximale Matchings sind im Vergleich zu den folgenden Begriffen sehr einfach zu berechnen. - maximal oder größtmöglich (engl. maximum matching)
- falls
als Menge eine maximale Kardinalität unter allen gültigen Matchings von
hat. Maximum-Matchings sind maximal. Die Mächtigkeit eines Maximum-Matchings wird Matchingzahl genannt und mit
notiert. - perfekt
- falls
gilt. Perfekte Matchings sind Maximum-Matchings (und damit auch maximal). Perfekte Matchings können als 1-Faktoren eines Graphen, das heißt 1-reguläre aufspannende Teilgraphen, aufgefasst werden. Dieser Auffassung folgend sprechen manche Personen auch von faktorisierbaren Graphen, wenn sie Graphen meinen, die einen 1-Faktor besitzen. Beide Sprechweisen sind etwa gleich weit verbreitet.[1]
Für das gewichtete Matchingproblem spielt eine Kostenfunktion
eine Rolle. Ein gültiges Matching heißt dann …
- von maximalen Gewicht
- falls
maximal unter allen gültigen Matchings von
ist. - minimal maximum
- falls
minimal unter allen maximum Matchings ist.
Historisches [Bearbeiten]
Als eine der frühesten[2][3] systematischen Untersuchungen von Matchings wird ein Artikel von Petersen angeführt, der 1891 über Die Theorie der regulären graphs[4] schrieb. Er untersuchte ein Zerlegungsproblem aus der Algebra, das Hilbert 1889[5] gestellt hatte, indem er es als Graphenproblem formulierte.[2] Letztlich bewies er darin folgendes:
- Für alle Zahlen
kann jeder
-reguläre Graph in disjunkte
-Faktoren zerlegt werden. (1) - Jeder kubische, zusammenhängende Graph mit weniger als drei Brücken besitzt ein perfektes Matching. (2)
Die Tatsache (2), bekannt als Satz von Petersen, lässt sich auch als eine leichte Verallgemeinerung des Eulerkreisproblems formulieren.[A 2]
Rückblickend[6] erscheinen Petersens Argumente, mit denen er das Obige bewies, kompliziert und umständlich. Bei der weiteren Untersuchung etwa durch Brahana 1917[7], Errera 1922[8] und Frink 1926[9] sowie zusammenfassend durch Kőnig 1936[10] wurden aber viele Methoden der modernen Graphentheorie entwickelt oder zuerst systematisch formuliert. Petersens Denkansatz wurde dann von Bäbler 1938[11] 1952[12] und 1954[13] sowie von Gallai 1950[14], Belck 1950[15] und schließlich Tutte auf andere reguläre Graphen übertragen.
In modernen Lehrbüchern und Vorlesungen tauchen Petersens ursprüngliche Resultate, wenn überhaupt, meist nur noch als Folgerungen aus den Resultaten von Tutte oder Hall auf.[A 3]
Bipartite Matchings [Bearbeiten]
Eines dieser frühen Resultate betrifft bipartite Graphen, die sich in der Folge als ein sehr natürlicher und aus heutiger Sicht für die Praxis zentraler Spezialfall herausgestellt haben. Kőnig und Egerváry untersuchten beide unabhängig voneinander das bipartite Matchingproblem und das Knotenüberdeckungsproblem und fanden dabei heraus, dass beide Probleme in dem folgenden Sinn äquivalent sind:
- Die Größe einer minimalen Knotenüberdeckung und eines maximum Matching stimmen auf bipartiten Graphen überein. (3)
Dieser Satz wird meistens Kőnig zugeschrieben oder Min-Max-Theorem bzw. Dualitätssatz genannt. Beide bewiesen die Aussage für endliche Graphen. Aharoni bewies 1984 die Aussage für überabzählbar unendliche Graphen.[16] Ein elementarer Beweis von (3) findet sich in Lovász & Plummer 43, der von den meisten Lehrbüchern übernommen wurde. Bondy & Murty 200 führt den Satz auf ein Resultat der linearen Programmierung zurück: Ist
die Inzidenzmatrix des Graphen
, dann lassen sich maximum Matchings als Lösungen von folgendem ganzzahligen linearen Programm auffassen:
Dabei ist
der Vektor aus lauter Einsen. Das Programm des Knotenüberdeckungsproblems hat folgende Gestalt:
Diese Programme haben eine sogenannte primal-dual-Gestalt. Für Programme von dieser Gestalt wird in der Theorie der linearen Programme gezeigt, dass sie in ihren Optima übereinstimmen. Für bipartite Graphen lässt sich außerdem leicht zeigen, dass
„total unimodular“ ist, was in der Theorie der ganzzahligen linearen Programme ein Kriterium für die Existenz einer optimalen Lösung der Programme mit Einträgen nur aus
ist, also genau solchen Vektoren, die auch für ein Matching bzw. für eine Knotenüberdeckung stehen können. Dieser Primal-Dual-Ansatz der linearen Programme scheint zunächst wenig mit der Matching-Theorie zu tun zu haben, stellt sich aber als einer der fruchtbarsten Ansätze zur effizienten Berechnung von Matchings, insbesondere im gewichteten Fall, heraus.
Es gibt eine ganze Vielzahl von Sätzen, die zum Satz von Kőnig äquivalent sind.[17][18][19] Darunter der Satz von Birkhoff und von Neumann, der Satz von Dilworth und das Max-Flow-Min-Cut-Theorem für bipartite Graphen. Für die Matchingtheorie am interessantesten ist folgende Bedingung, die Hall 1935[20] angab, um bipartite Graphen mit perfektem Matching zu charakterisieren. Dieser Charakterisierungssatz ist ebenfalls äquivalent zum Satz von Kőnig.
- Ein bipartiter Graph mit Knotenpartitionen
und o.B.d.A
hat genau dann ein perfektes Matching, wenn für jede Auswahl von Knoten
gilt:
. Dabei ist
die Nachbarschaftsmenge von
. (4)
Aus (4) folgt schnell, dass sich unter den bipartiten Graphen genau alle regulären Graphen
-faktorisieren lassen[21] und die Aussage (1) von Petersen lässt elegant auf diese Folgerung zurückführen.[22] Eine Verallgemeinerung dieses Resultats liefert eine Formel für die Größe eines maximum Matchings, die sogenannte Kőnig-Ore Formel:[23][24]
Lösungsverfahren [Bearbeiten]
Eingabe |
Viele der folgenden Konzepte spielen in fast allen Lösungsverfahren von Matchingproblemen eine Rolle. Ist ein Graph
mit einem Matching
gegeben, dann heißt ein Knoten von
frei (in der Literatur auch ungepaart, exponiert, verfügbar …) falls er zu keiner Kante in
inzident ist. Andernfalls heißt der Knoten gesättigt. Ein Pfad
in
heißt alternierend, falls dieser abwechselnd Kanten aus
und aus
enthält. Falls dieser Pfad in einem freien Knoten beginnt und endet, heißt der Pfad verbessernd oder auch augmentierend. Die letzte Bezeichnung kommt von der Tatsache, dass
durch
[A 4] ein größeres Matching als
liefert. Folgendes grundlegendes Resultat von Berge 1957[25] motiviert das Studium von augmentierenden Pfaden.
- Ein Matching ist genau dann Maximum, wenn es keinen verbessernden Pfad in
bezüglich
gibt.
Diese Bezeichnungen entsprechen genau der Sprache, die auch bei der Behandlung von Flüssen in Netzwerken gebraucht wird. Das ist kein Zufall, denn Matchingprobleme lassen sich in der Sprache der Netzwerktheorie formulieren und mit den dort entwickelten Verfahren lösen. Im bipartiten Fall ist diese Zurückführung, wie das folgende Beispiel zeigt, sogar fast trivial.
- Beispiele
Gegeben ein Graph
mit Knotenmenge
. Konstruiere ein Netzwerk
. Dabei ist
und
. Außerdem ist
die Fortsetzung von der Kostenfunktion
, die alle neuen Kanten mit Inf[A 5] belegt.
Mit dem Satz von Berge lässt sich auch gleich ein Algorithmus (I) zum Finden von maximum Matchings angeben.[26] Weil jeder verbessernde Pfad ein zu einem gegebenen Matching einen weiteren Knoten matcht und maximal
Knoten zu matchen sind, beschränkt sich die Zahl der Schleifendurchläufe asymptotisch durch
. Eine sehr naive Methode zum Finden verbessernder Pfade stellen sogenannte Graph Scans dar, etwa eine Breitensuche (BFS) mit einer Laufzeit von
. Ferner ist
, weil der Graph bipartit ist und damit ist die angegebene Methode in 
Einer der frühesten Beiträge zum Berechnen von Maximum-Matchings, der über die oben angeführte naïve Methode hinausgeht, war der Algorithmus von Hopcroft und Karp 1973.[27] Die Grundidee folgt dem Algorithmus von Dinic, der in jeder Phase, wo der Algorithmus nach einem verbessernden Pfad sucht, (Zeile 2) möglichst kurze Pfade und nach Möglichkeit „mehrere gleichzeitig“ sucht.
Alt, Blum, Mehlhorn & Paul 1991[28] schlagen eine Verbesserung von Hopcroft & Karp vor, indem sie ein Scanningverfahren für Adjazenzmatrizen nach Cheriyan, Hagerup, and Mehlhorn 1990[29] anwenden. Eine einfache Beschreibung der Methode findet sich auch in Burkard, Dell’Amico & Martello 47 ff. Feder und Motwani 1991[30] haben eine Methode vorgeschlagen, die auf der Zerlegung von
in bipartite Cliquen beruht und erreichen damit eine asymptotische Laufzeit von
. Eine Methode, die nicht auf der Idee augmentierender Pfade beruht, sondern sogenannte „starken Spannbäume“ benutzt, haben Balinski & Gonzalez 1991[31] vorgeschlagen und erreichen damit eine Laufzeit von
.
Allgemeiner Fall [Bearbeiten]
Satz von Tutte [Bearbeiten]
Während Charakterisierungen von Matchings und effiziente Algorithmen zum Bestimmen relativ schnell nach der Formulierung von Matchings als Problem gefunden wurden, dauerte es bis 1947 bis Tutte[32] eine Charakterisierung für Matchings in allgemeinen Graphen formulieren und beweisen konnte. Aus diesem tiefliegenden Resultat lassen sich alle bisher besprochenen vergleichsweise leicht herleiten.[33] Tutte benutzt die einfache Tatsache, dass eine Komponente mit ungerader Knotenzahl in einem Graphen kein perfektes Matching haben kann. Wenn also eine Knotenmenge
so gefunden werden kann, dass
mehr ungerade Komponenten als
Knoten hat, dann müsste für ein perfektes Matching aus jeder solcher Komponente wenigstens ein Knoten mit einem Knoten aus
gematcht werden und das kann nicht sein. Es stellt sich heraus, dass die Existenz einer solchen Menge
Graphen ohne perfektes Matching nicht nur beschreibt, sondern charakterisiert:
- Ein Graph
hat genau dann ein perfektes Matching, wenn für jede Menge
gilt:
. (
gibt die Anzahl der ungeraden Komponenten eines Graphen an.) (5)
Eine solche Menge
heißt Tutte-Menge und die Bedingung in (5) heißt Tutte-Bedingung. Dass sie notwendig für die Existenz perfekter Matching ist, wurde schon skizziert und es gibt mittlerweile viele Beweise dafür, dass die Bedingung hinreichend ist: Tuttes ursprünglicher Beweis formulierte das Problem als ein Matrix-Problem und benutzte die Idee der pfaffschen Determinante.[32] Elementare Abzählargumente wurden relativ rasch danach veröffentlicht, wie in Maunsell 1952,[34] Tutte 1952,[35] Gallai 1963,[36] Halton 1966[37] oder Balinski 1970.[38] Andere Beweise, wie Gallai 1963,[36] Anderson 1971[39] oder Marder 1973[40] verallgemeinern den Satz (4) von Hall systematisch. Ferner gibt es Beweise aus der Perspektive der Graphentheorie, die die Struktur von Graphen betrachten, die selbst kein Perfektes Matching besitzen, doch falls eine Kante ergänzt wird hat der resultierende Graph ein solches. Diesen Ansatz verfolgen etwa Hetyei 1972[41] oder Lovász 1975.[42]
Algorithmus von Edmonds [Bearbeiten]
Der erste Polynomialzeitalgorithmus für das klassische Matchingproblem stammt von Jack Edmonds (1965).[44] Die Grundstruktur der Methode entspricht Algorithmus (I): Sie sucht verbessernde Pfade und gibt ein maximum Matching zurück, falls kein solcher gefunden werden kann. Einen verbessernden Pfad zu finden, stellt sich hier aber als schwieriger heraus als im bipartiten Fall, weil einige neue Fälle auftreten können. Edmonds Suchmethode konstruiert nach und nach einen alternierenden Wald; Das ist ein kreisfreier Graph
mit so vielen Zusammenhangskomponenten, wie es freie Knoten gibt. Jeder freie Knoten ist Wurzel
eines Baumes
und
ist so konstruiert, dass für alle anderen Knoten
der eindeutig bestimmte
-
-Pfad ein alternierender Pfad ist. Ein Knoten in
heißt dann innen oder ungerade, falls
und andernfalls außen oder gerade. (
sei hier die Distanzfunktion in
; gebe also die Länge des eindeutig bestimmten
-
-Pfades an)
Es genügt die Betrachtung auf die Konstruktion eines alternierenden Baumes zu reduzieren. Falls diese Konstruktion keinen augmentierenden Pfad findet, wird sie mit einem neuen freien Knoten reinitialisiert und alle bereits betrachteten Kanten werden ignoriert. Existiert kein freier Knoten mehr, dann existiert auch kein augmentierender Pfad. Diesen alternierenden Baum konstruiert Edmonds, indem er ausgehend von einem freien Knoten nach und nach alle Kanten hinzufügt oder ignoriert. Dabei können für eine neue Kante
(
gehöre bereits zum Baum) folgende Fälle auftreten:
- Wenn
ein innerer Knoten ist, können nur Kanten
zu
hinzugefügt werden, weil
alternierend werden soll. Diese Kante ist eindeutig durch
gegeben. - Falls
ein äußerer Knoten ist, dann kann
…
- frei sein und noch nicht in
. Dann ist der
-
Pfad augmentierend. - gepaart sein und weder
noch
ist in
. Dann können
und
zu
hinzugefügt werden. - bereits in
als innerer Knoten enthalten sein. Damit schließt
einen geraden Kreis. Diese Kanten können ignoriert werden.[45] - bereits in
als ein äußerer Knoten enthalten sein. Dann schließt
einen ungeraden alternierenden Kreis
; eine sogenannte Blüte. Edmonds zieht die Knoten in
zu einem Pseudoknoten
zusammen mit den Inzidenzen aller Knoten aus
. (Diese Operation lässt sich auch beschreiben als „Bildung des Quotientengraphen”
) Er reinitialisiert dann die Suche in
und gibt ein Verfahren an, einen dort gefundenen augmentierenden Pfad
zu einem augmentierenden Pfad
in
zu liften.
- frei sein und noch nicht in
Blüten können, anders als bei Fall
, nicht ignoriert werden.[46] Der Knoten, der die Blüte mit dem Baum verbindet, lässt sich in das Schema der inneren und äußeren Knoten nicht einordnen. Die naheliegende Idee, ihn als „sowohl innen als auch außen“ zu behandeln führt zu einem falschen Algorithmus.[47] Die Behandlung von Blüten mit Kontraktion ist neben dem Ansatz von Berge die zentrale Idee von Edmonds’ Algorithmus und Grundlage vieler späterer Verfahren. Bipartite Graphen enthalten keine ungeraden Kreise und damit auch keine Blüten. Edmonds’ Algorithmus reduziert sich daher im bipartiten Fall auf die Methode von Munkres.
Man kann ablesen, dass die skizzierte Methode von Edmonds einen Aufwand von
hat. In Fall
reinitialisiert Edmonds die Suche und verwirft damit den bereits geleisteten Suchaufwand. Gabow 1976[48] und Lawler haben eine naive Implementierung vorgeschlagen, die den Suchaufwand nicht verwirft und eine Laufzeit von
erreicht. Das Beispiel folgt bereits dieser Methode.
- Beispiel zu Edmonds
Literatur [Bearbeiten]
- L. Lovász, M. D Plummer: Matching Theory, 1, Elsevier Science und Akadémiai Kiadó Budapest, Budapest 1986, ISBN 0-444-87916-1.
- Reinhard Diestel: Graphentheorie, 3., neu bearb. und erw. A., Springer, Berlin, 2006, ISBN 3-540-21391-0.
- Dieter Jungnickel: Graphs, Networks and Algorithms, 3, 5, Springer, 2007, ISBN 978-3-540-72779-8.
- Qinglin Roger Yu, Guizhen Liu: Graph Factors and Matching Extensions, 1, Springer, Beijing 2009, ISBN 3-540-93951-2.
- Alexander Schrijver: Combinatorial Optimization – Polyherda and Efficiency, A. Springer, Amsterdam 2003, ISBN 3-540-44389-4.
- Adrian Bondy, U.S.R. Murty: Graph Theory. Springer, 2008, ISBN 1-84996-690-7.
- Rainer Burkard, Mauro Dell’Amico, Silvano Martello: Assignment Problems (Revised reprint). Society for Industrial and Applied Mathematics, Philadelphia 2012, ISBN 978-1-61197-222-1.
- David S. Johnson: Network Flows and Matching: First Dimacs Implementation Challenge. American Mathematical Society, 1993, ISBN 0-8218-6598-6.
- Eugene Lawler: Combinatorial Optimization: Networks and Matroids. Dover Publications, Rocquencourt 1976, ISBN 0-03-084866-0.
- Historisch
- Dénes Kőnig: Theorie der endlichen und unendlichen Graphen – kombinatorische Topologie der Streckenkomplexe., 1. Auflage 1986, Teubner Verlagsgesellschaft, Leipzig 1936, ISBN 3-322-00303-5.
- Norman L. Biggs, E. Keith Lloyd, Robin J. Wilson: Graph Theory 1736-1936. Oxford University Press, USA, 1999, ISBN 0-19-853916-9.
Weblinks [Bearbeiten]
Einzelnachweise [Bearbeiten]
- ↑ Yu & Liu 4
- ↑ a b Lovász & Plummer xi
- ↑ Yu & Liu 3
- ↑ Julius Peter Christian Petersen: Die Theorie der regulären Graphen. In: Acta Mathematica. 15, 1891, S. 193–220.
- ↑ David Hilbert: Über die Endlichkeit des Invariantensystems für binäre Grundformen. In: Mathematische Annalen. 33, Nr. 2, 1889, S. 223–226.
- ↑ Diestel 43
- ↑ Henry Roy Brahana: A Proof of Petersen’s Theorem. In: The Annals of Mathematics. 19, Nr. 1, 1917, S. 59-63. doi:10.2307/1967667. Abgerufen am 2011.
- ↑ Alfred Errera: Une demonstration du théorème de Petersen. In: Mathesis. 36, 1922, S. 56–61.
- ↑ Orrin Frink: A Proof of Petersen’s Theorem. In: The Annals of Mathematics. 27, Nr. 4, 1926, S. 491-493. doi:10.2307/1967699. Abgerufen am 2011.
- ↑ Dénes Kőnig: Theorie der endlichen und unendlichen Graphen; kombinatorische Topologie der Streckenkomplexe. 1936.
- ↑ Fridolin Bäbler: Über die Zerlegung regulärer Streckenkomplexe ungerader Ordnung. In: Commentarii Mathematici Helvetici. 10, Nr. 1, 1938, S. 275-287. doi:10.1007/BF01214296. Abgerufen am 2011.
- ↑ Fridolin Bäbler: Bemerkungen zu einer Arbeit von Herrn R. Cantoni.. In: Commentarii Mathematici Helvetici. 26, 1952, S. 117-118. Abgerufen am 2011.
- ↑ Fridolin Bäbler: Über den Zerlegungssatz von Petersen. In: Commentarii Mathematici Helvetici. 28, Nr. 1, 1954, S. 155-161. doi:10.1007/BF02566927. Abgerufen am 2011.
- ↑ Tibor Gallai: On factorization of graphs. In: Acta Mathematica Academiae Scientiarum Hungaricae. 1, 1950, S. 133-153.
- ↑ Hans-Boris Belck: Reguläre Faktoren von Graphen.. In: Journal für die reine und angewandte Mathematik (Crelles Journal). 1950, Nr. 188, 1950, S. 228-252. doi:10.1515/crll.1950.188.228. Abgerufen am 2011.
- ↑ Ron Aharoni: Kőnig’s Duality Theorem for Infinite Bipartite Graphs. In: Journal of the London Mathematical Society. s2-29, Nr. 1, 1984, S. 1-12. doi:10.1112/jlms/s2-29.1.1. Abgerufen am 2011.
- ↑ Lovász & Plummer 5-40
- ↑ Notizen zu einem Vortrag von Robert D. Borgersen: Equivalence of seven major theorems in combinatorics (PDF; 66 kB) November 26, 2004
- ↑ K. Jacobs: Der Heiratssatz. In: Selecta Mathematica I. 1969, S. 103–141.
- ↑ Philip Hall: On representatives of subsets. In: Journal of London Mathematics Society. 10, 1935, S. 26-30.
- ↑ Jungnickel 216
- ↑ Diestel 43
- ↑ Lui 9
- ↑ Bondy & Murty 422
- ↑ Claude Berge: Two theorems in graph theory. In: Proceedings of the National Academy of Sciences of the United States of America. 43, Nr. 9, 15. September 1957, S. 842-844.
- ↑ Aus didaktischen Gründen sehr stark vereinfacht nach Burkard, Dell’Amico & Martello 38. In der Referenz ist die Methode zum Finden eines verbessernden Pfades wesentlich detaillierter angegeben.
- ↑ John E. Hopcroft, Richard M. Karp: An
Algorithm for Maximum Matchings in Bipartite Graphs. In: SIAM Journal on Computing. 2, Nr. 4, 1973, S. 225-231. doi:10.1137/0202019. Abgerufen am 2011. - ↑ H. Alt, N. Blum, K. Mehlhorn, M. Paul: Computing a maximum cardinality matching in a bipartite graph in time
). In: Information Processing Letters. 37, Nr. 4, 1991, S. 237-240. doi:10.1016/0020-0190(91)90195-N. Abgerufen am 2011. - ↑ Joseph Cheriyan, Torben Hagerup, Kurt Mehlhorn: Can a maximum flow be computed in
time?. In: Automata, Languages and Programming, 443. Springer-Verlag, Berlin/Heidelberg 1990, ISBN 3-540-52826-1, S. 235-248. - ↑ Tomás Feder: Clique partitions, graph compression and speeding-up algorithms. In: Proceedings of the twenty-third annual ACM symposium on Theory of computing . ACM, S. 123–133. ISBN 0-89791-397-3 doi:10.1145/103418.103424
- ↑ M. L Balinski, J. Gonzalez: Maximum matchings in bipartite graphs via strong spanning trees. In: Networks. 21, Nr. 2, 1991, S. 165-179. doi:10.1002/net.3230210203.
- ↑ a b W. T Tutte: The factorization of linear graphs. In: Journal of the London Mathematical Society. 1, Nr. 2, 1947, S. 107.
- ↑ Lovász & Plummer 84
- ↑ F. G. Maunsell: A note on Tutte’s paper “The factorization of linear graphs”. In: Journal of the London Mathematical Society. 1, Nr. 1, 1952, S. 127.
- ↑ W. T. Tutte: The factors of graphs. In: Classic Papers in Combinatorics. 1987, S. 164-178.
- ↑ a b T. Gallai: Neuer Beweis eines Tutte’schen Satzes, Magyar Tud. In: Akad. Kutató Int. Közl. 8, 1963, S. 135–139.
- ↑ John H. Halton: A Combinatorial Proof of a Theorem of Tutte. In: Mathematical Proceedings of the Cambridge Philosophical Society. 62, Nr. 04, 1966, S. 683-684. doi:10.1017/S0305004100040342. Abgerufen am 2011.
- ↑ M. L. Balinski: On perfect matchings. In: SIAM Review. 12, 1970, S. 570-572.
- ↑ I. Anderson: Perfect matchings of a graph. In: Journal of Combinatorial Theory, Series B. 10, Nr. 3, 1971, S. 183–186.
- ↑ W. Mader: 1-Faktoren von Graphen. In: Mathematische Annalen. 201, Nr. 4, 1973, S. 269-282. doi:10.1007/BF01428195.
- ↑ G. Hetyei: A new proof of a factorization theorem. In: Acta Acad. Paedagog. Civitate Pécs Ser. 6 Math. Phys. Chem. Tech. 16, 1972, S. 3-6.
- ↑ L. Lovasz: Three short proofs in graph theory. In: Journal of Combinatorial Theory, Series B. 19, Nr. 3, 1975, S. 269-271.
- ↑ Jungnickel 409
- ↑ J. Edmonds: Paths, trees, and flowers. In: Canadian Journal of mathematics. 17, Nr. 3, 1965, S. 449-467. doi:10.4153/CJM-1965-045-4.
- ↑ Jungnickel 396
- ↑ Betrachte dieses Beispiel nach Jungnickel 398
- ↑ Diese Idee wurde in U. Pape, D. Conradt: Maximales Matching in Graphen. In: Ausgewählte Operations Research Software in FORTRAN 1979, ISBN 3-486-23911-2, S. 103-114. vorgeschlagen. Jungnickel 399 hat ein Gegenbeispiel, das auf Christian Fremuth-Paeger zurückgeht.
- ↑ Harold N. Gabow: An Efficient Implementation of Edmonds’ Algorithm for Maximum Matching on Graphs. In: Journal of the ACM. 23, Nr. 2, 1976, S. 221-234. doi:10.1145/321941.321942. Abgerufen am 2011.
Anmerkungen [Bearbeiten]
- ↑ Beachte den Unterschied zwischen einem maximalen Element und einem Maximum. Bei der Formalisierung wird darauf genauer eingegangen.
- ↑ Es ist nicht bekannt, ob Petersen mit den Arbeiten von Euler 1736 zu diesem Problem vertraut war (Lovász & Plummer xi)
- ↑ In Diestel 43 folgt die erste Aussage Satz aus dem Heiratssatz von Hall. Die zweite Aussage wird auf 45 auf den Satz von Tutte zurückgeführt. Der Beweis von (2) geht dabei auf Lovász & Plummer 110 zurück. Jungnickel und Yu & Liu verfahren mit (1) wie Diestel. (216 resp. 16) Aussage (2) steht bei Yu & Liu als Zitat ohne Beweis (51) und bei Jungnickel als Übungsaufgabe. (389) In Schrijver sind (1) und (2) Übungsaufgaben (81 und 43)
- ↑
notiert die symmetrische Differenz - ↑ Programmiersprachen, die das Konzept
Infnicht unterstützen, können die künstlichen Kanten stattdessen mit einer absurd großen Zahl belegen.
genügt in jedem Fall.
notiert.
derart gibt, dass
ein gültiges Matching ist. Maximale Matchings sind im Vergleich zu den folgenden Begriffen sehr einfach zu berechnen.
notiert.
gilt. Perfekte Matchings sind Maximum-Matchings (und damit auch maximal). Perfekte Matchings können als
maximal unter allen gültigen Matchings von
minimal unter allen maximum Matchings ist.
kann jeder
-reguläre Graph in disjunkte
-Faktoren zerlegt werden. (1)

und
hat
gilt:
. Dabei ist
die
. (4)
exponiert. Der Pfad
ist ein alternierender Pfad und
ist ein verbessernder Pfad.
gilt:
. (
zu
gegeben.
-
ist in
; eine sogenannte Blüte. Edmonds zieht die Knoten in
zusammen mit den Inzidenzen aller Knoten aus
) Er reinitialisiert dann die Suche in
und gibt ein Verfahren an, einen dort gefundenen augmentierenden Pfad
zu einem augmentierenden Pfad
gegeben.
.
hinzugefügt.
,
und
hinzugefügt.
wird der freie Knoten
in
den augmentierenden Pfad
schließt. Die Liftung dieses Pfades liefert
zunächst in
Algorithm for Maximum Matchings in Bipartite Graphs. In: SIAM Journal on Computing. 2, Nr. 4, 1973, S. 225-231.
). In: Information Processing Letters. 37, Nr. 4, 1991, S. 237-240.
time?. In: Automata, Languages and Programming, 443. Springer-Verlag, Berlin/Heidelberg 1990,
notiert die
genügt in jedem Fall.