David Gale und Lloyd S. Shapley entwickelten 1962 den
Deferred Acceptance Algorithm, der später als der Gale-Shapley-Algorithmus bekannt wurde.
Der klassische GS findet eine Lösung für das Stable Marriage-Problem.
Als Stable Marriage-Problem bezeichnet man die Suche nach einem stabilen Matching zwischen zwei gleich großen zueinander disjunkten Mengen.
Dabei darf jedem Knoten maximal ein Matchingpartner zugeordnet werden: es handelt sich also nicht um ein b-Matching.
Außerdem sind die Präferenzlisten vollständig und dürfen keine Indifferenzen beinhalten.
Der erweiterte GS kann für die Lösung des School-Choice-Problems verwendet werden.
Ein Vorteil dieses Algorithmus ist, dass er garantiert, dass das resultierende Matching stabil ist.
Aus diesem Grund wird er für seine Fairness geschätzt. Allerdings erfüllt er dafür in der Regel weniger
Erstwünsche als rangmaximale Algorithmen (z.B. Boston-Algorithmus).
Gale und Shapley haben sich mit dem Stable Marriage-Problem ursprünglich im Kontext
von Partnerzuteilungen zwischen Frauen und Männern beschäftigt. Aus diesem Grund
verwenden wir im Folgenden die entsprechenden Bezeichnungen.
Eingabe:
Ein vollständiger bipartiter Graph G=(U∪˙W,E), wobei U die Menge der Männer und W die Menge der Frauen darstellt und E=U×W gilt
Für jeden Knoten m in U gibt es eine vollständige und strikte Präferenzliste ≻m über W
Für jeden Knoten w in W gibt es eine vollständige und strikte Präferenzliste ≻w über U
Ausgabe:
Ein stabiles Matching M in G
Der Gale-Shapley-Algorithmus löst das Stable Marriage-Problem und wird im folgenden Abschnitt analysiert. Zuerst wird
der Algorithmus als Pseudocode beschrieben und darauffolgend einige Eigenschaften bewiesen.
Pseudocode
$M \leftarrow \emptyset $
$\mathbf{while}$ $\exists \: m$ für den gilt $M(m) = \emptyset$ $\mathbf{do}$
$\quad$ $m$ macht seiner favorisierten Frau $w$ einen Antrag.
$\quad\quad\quad\quad$ Streiche $w$ aus $\succ_{m}$.
$\mathbf{return}$ $M$
Der Ausdruck M(v) gibt für einen Knoten v∈U∪˙W den zugeordneten Partner an.
Zeile 1: Das Matching M wird mit der leeren Menge initialisiert.
Zeile 2: Solange es einen nicht verlobten Mann m∈U gibt führe Folgendes aus.
Zeile 3: Ein solcher beliebiger Mann m (Reihenfolge nicht vorgegeben) macht seiner favorisierten Frau w∈W (höchste Position auf ≻m) einen Antrag.
Zeile 4−6: Seine favorisierte Frau w nimmt den Antrag an, falls sie noch nicht mit einem Mann m~∈U verlobt ist.
Zeile 7−10: Falls w mit m~ verlobt ist, vergleicht sie diesen mit dem Antragsteller. Die Frau w hebt ihre
Verlobung auf, um sich mit dem Antragsteller m zu verloben, sofern sie m gemäß ihren Präferenzen ≻w~ vorzieht. Falls w die Verlobung mit
m~ auflöst, streicht der Sitzengelassene m~ seine ehemalig Verlobte w von seiner Präferenzliste.
Zeile 11−12: Falls sich eine Frau w durch eine Auflösung nicht verbessern würde, wird der Antrag von m abgelehnt und dieser streicht die Antragsempfängerin w von seiner Präferenzliste.
Zeile 13: Gib das Matching M aus, wenn jeder Mann verlobt ist.
Beispiel
Unten erkennt man eine Instanz des Stable Marriage-Problems.
Die Männer werden über die Knotenmenge U = {Amir,Paul,Noah,Dimitri,Felix}
und die Frauen über die Knotenmenge W = {Marianne,Leonie,Annette,Emilia,Mia} dargestellt.
Die zur Person dazugehörige Präferenzliste ist links bzw. rechts von dem dazugehörigen Knoten zu finden.
In den Präferenzlisten werden die Personen über die ersten beiden Anfangsbuchstaben codiert.
Die Präferenzliste von Amir sagt z.B. aus, dass er Leonie gegenüber Marianne, Marianne gegenüber Mia, Mia gegenüber Annette und Annette gegenüber Emilia bevorzugt.
Initial ist kein Mann mit einer Frau verlobt.
Während der Durchführung des Algorithmus stellen schwarze Kanten vorläufige Paare zwischen
Männern und Frauen dar. Die schwarz und rot gestrichelten Kanten werden bei Konkurrenzsituationen zwischen zwei Männern genutzt. Der
antragsstellende Mann
ist in einer solchen Situation inzident zu der rot gestrichelten Kante.
Amir macht seiner favorisierten Frau Leonie einen Antrag. Da Leonie nicht verlobt ist, nimmt sie den Antrag von Amir an.
Analog zu Amir wird Paul mit Annette verlobt.
Noah macht Leonie, einer verlobten Frau, einen Antrag, weshalb eine Konkurrenzsituation zwischen Amir und Noah entsteht.
Leonie entscheidet sich für Noah. Amir streicht Leonie von seiner Präferenzliste.
Da Leonie nicht mehr auf der Präferenzliste von Amir ist, macht Amir seiner
neuen favorisierten Frau Marianne einen Antrag.
Dimitri macht Marianne einen Antrag. Marianne entscheidet sich für Amir. Insbesondere nimmt Amir die höchste Position
auf der Präferenzliste von Marianne ein, weshalb die Verlobung zwischen Marianne und Amir nicht durch einen
anderen Antrag aufgelöst werden kann.
Dimitri macht seiner neuen favorisierten Frau Annette einen Antrag. Sie entscheidet sich dafür, die Verlobung
mit Paul aufzulösen.
Paul macht Marianne einen Antrag. Diesen lehnt sie ab, da sie schon mit ihrem favorisierten
Partner verlobt ist. Paul streicht Marianne von seiner Präferenzliste.
Paul macht Leonie einen Antrag. Leonie entscheidet sich für Paul, ihren favorisierten
Partner.
Noah macht Emilia einen Antrag, welcher von Emilia angenommen wird.
Felix macht Emilia einen Antrag. Emilia löst ihre Verlobung mit Noah für eine Verlobung mit Felix auf.
Noah macht Annette einen Antrag, welchen sie annimmt. Sie löst dafür ihre Verlobung mit Dimitri auf.
Dimitri macht Emilia einen Antrag, den sie annimmt. Sie löst dafür ihre Verlobung mit Felix auf.
Felix macht Mia einen Antrag, der angenommen wird. Dadurch sind alle Männer verlobt, womit
der Gale-Shapley-Algorithmus mit dem Matching M terminiert.
M={{Am,Ma},{Pa,Le},{No,An},{Di,Em},{Fe,Mi}}
Eigenschaften des Algorithmus
Stabilität
Satz
Der Gale-Shapley-Algorithmus findet ein stabiles Matching.
Beweis
Beweis:meg2020 Zu jedem Zeitpunkt ist jeder Mann mit höchstens einer Frau und jede Frau mit höchstens einem Mann verlobt.
Eine Frau verlobt sich mit einem Mann nur, wenn sie entweder noch nicht verlobt ist oder sich durch eine Auflösung
ihrer bestehenden Verlobung verbessern kann. Ein Mann stellt seiner favorisierten Frau nur einen Antrag, wenn dieser
nicht verlobt ist. Daher bilden die gefundenen Paare immer ein Matching.
Sei b eine blockierende Kante {m,w}∈E∖M, wobei M ein vom Gale-Shapley-Algorithmus gefundenes Matching ist und
E die Menge aller möglichen Paare. Daraus folgt, dass Mann m und Frau w bei Terminierung nicht
miteinander verlobt sind und (i)w≻mM(m) und (ii)m≻wM(w) gelten.
Wegen (i) gab es eine Iteration, in der Mann m der Frau w einen Antrag gemacht hat. Die Frau w hat den Antrag von
Mann m entweder sofort abgelehnt oder den Mann m später abgewiesen, da sie von jemand Besseren,
und zwar ihren Verlobten (M(w)) einen Antrag erhalten hat. Damit muss gelten
M(w)≻wm, was ein Widerspruch zu (ii) ist. □
Mann-Optimalität
Definition
Ein Paar {m,w} heißt zulässig, wenn es ein stabiles Matching M mit {m,w}∈M gibt.
Ein Mann oder eine Frau in einem zulässigen Paar heißt zulässiger Mann oder zulässige Frau.
Satz
Der Gale-Shapley-Algorithmus liefert ein mann-optimales Matching.
Beweis
Beweis:meg2020 Sei M ein vom Gale-Shapley-Algorithmus gefundenes, nicht mann-optimales Matching. Dann muss es einen frühesten Zeitpunkt
t geben, zu dem ein Mann m von seiner favorisierten zulässigen Frauw abgewiesen wird.
Eine Abweisung durch w zum
Zeitpunkt t erfolgt nur, wenn sie von einem für sie besseren Mann m′ einen Antrag erhält, d.h. es gilt
m′≻wm.
Da es eine für m zulässige Frau gibt, existiert laut Definition ein stabiles Matching M mit
{m,w}∈M.
Des Weiteren sei {m′,w′}∈M. Es gilt w≻m′w′, da m′ zum Zeitpunkt t mit w
zusammen ist und zuvor von keiner zulässigen Frau, insbesondere nicht von w′, abgewiesen worden sein kann. Somit bilden
m′ und w ein blockierendes Paar bezüglich M, was ein Widerspruch ist. □
Satz
Der Gale-Shapley-Algorithmus weist jeder Frau den für sie schlechtesten zulässigen Partner zu.
Beweis
Beweis:meg2020 Angenommen {m′,w} sei eine Kante in einem vom Gale-Shapley-Algorithmus gefundenen Matching M und zudem sei m:m=m′
der schlechteste zulässige Partner für w.
Sei M′ ein stabiles Matching, bei dem w mit m zusammen ist. Per Annahme gilt m′≻wm. Zudem sei {m′,w′} in M′. Betrachte nun das Matching M. Da Mmann-optimal ist, findet Mann m′ seine Partnerin w besser als w′. Das Matching M′ kann nicht stabil sein,
da {m′,w} eine blockierende Kante ist, was einen Widerspruch ergibt. □
Kardinalitätsmaximalität
Satz
Der Gale-Shapley-Algorithmus findet bei strikten und vollständigen Präferenzlisten ein kardinalitätsmaximales Matching.
Beweis
Sei M nicht kardinalitätsmaximal und ein vom Gale-Shapley-Algorithmus gefundenes Matching. Da M nicht
kardinalitätsmaximal ist, muss es eine blockierende Kante b={m,w}∈E∖M geben.
Diese Kante b ist eine blockierende Kante, da sowohl w als auch m vollständige Präferenzlisten haben und sich gegenseitig
vor der Partnerlosigkeit präferieren. Dies gilt für jeden Mann bzw. jede Frau, da jede Person eine
vollständige Präferenzliste hat.
Da b eine blockierende Kante ist, ist M nicht stabil, was ein Widerspruch zu der Annahme ist. □
Pareto-Effizienz
Satz
Der Gale-Shapley-Algorithmus findet im Allgemeinen kein männerseitig pareto-effizientes Matching.
Beweis
Beweis:klo2017 Betrachte das im obigen Beispiel vom Gale-Shapley-Algorithmus gefundene Matching M, welches auf Folie 1 der folgenden Slideshow dargestellt wird.
Das auf Folie 2 dargestellte Matching pareto-dominiert
männerseitig M, d.h. Noah und Dimitri können sich durch einen Tausch ihrer Partnerinnen verbessern, ohne dabei einen
anderen Mann schlechter zu stellen. Daraus folgt, dass der Gale-Shapley-Algorithmus im
Allgemeinen kein männerseitig pareto-effizientes Matching findet. □
Bipartiter Graph, in dem das vom Gale-Shapley-Algorithmus gefundene stabile Matching dargestellt wird.
Dieses Matching pareto-dominiert das vom Gale-Shapley-Algorithmus gefundene Matching.
Rangmaximalität
Satz
Der Gale-Shapley-Algorithmus findet im Allgemeinen kein männerseitig rangmaximales Matching.
Beweis
Betrachte das vom Gale-Shapley-Algorithmus gefundene Matching M, welches auf Folie 1 dargestellt wird.
Das Matching M erfüllt zwei Zweitwünsche und drei Drittwünsche der Männer, obwohl durch
einen Tausch der Partner von Noah und Dimitri vier Zweitwünsche und ein Drittwunsch erfüllt werden könnten, was auf Folie 2
dargestellt wird. Deshalb findet der Gale-Shapley-Algorithmus im Allgemeinen kein männerseitig rangmaximales Matching. □
Bipartiter Graph, in dem das vom Gale-Shapley-Algorithmus gefundene stabile Matching dargestellt wird.
Bipartiter Graph mit rangmaximalen Matching
Strategiesicherheit
Satz
Der Gale-Shapley-Algorithmus ist im Allgemeinen nicht strategiesicher.
Beweis
Beweis:meg2020 Unter der Annahme, dass die Teilnehmer wissen, dass die Zuteilung nach dem
Gale-Shapley-Algorithmus vorgenommen wird und die Präferenzen der Teilnehmer transparent
sind, können die Frauen durch falsche Präferenzen das Matching manipulieren. Die Männer hingegen nicht, weil bereits
das Matching mann-optimal ist.
Betrachte die untenstehenden Stable Marriage-Instanzen, wobei Folie 1 die wahren und Folie 2 die falschen Präferenzen beinhaltet.
Wenn Annette vorgibt, Felix gegenüber Noah zu präferieren, wird sie statt mit Noah mit ihrer Erstwahl Dimitri verlobt.
Dadurch ist gezeigt, dass der Gale-Shapley-Algorithmus nicht strategiesicher ist. □
Fall 1 mit wahren Präferenzlisten
Fall 2 mit einer gefälschten Präferenzliste
Verständnisfrage
Angenmomen das Matching wird mit dem Gale-Shapley-Algorithmus bestimmt und Männer machen nach folgender Reihenfolge die
Anträge: Hubert, Niklas und Thomas.
Kann Ingrid ihre Präferenzen so auslegen, dass sie mit Thomas
gematcht wird? Falls ja, welche der folgenden Präferenzen müsste sie angeben? In den Antwortfeldern steht > für $\succ$.
Erweiterter Gale-Shapley-Algorithmus
Wir behandelten in den vorherigen Probleminstanzen Situationen, in denen sowohl Männer als auch Frauen immer strikte und
vollständige Präferenzlisten besaßen. Jedoch trifft man in der Realität häufig auf Situationen, in denen Männer und/oder Frauen die
gegenüberliegende Seite nicht komplett einschätzen möchten oder können, was an ethischen Gründen oder Gründen, die den
verursachenden Informationsaufwand betreffen, liegen könnte. Beispielsweise erzeugt das Erstellen von strikten Präferenzlisten
über alle möglichen Partner einen hohen Aufwand, da man sich über alle möglichen Partner informieren muss. Hier wäre es möglicherweise
einfacher, Partner in bestimmte Kategorien einzustufen und und diese Kategorien in eine Reihenfolge zu bringen. In solchen Kategorien fasst man Partner
zusammen, für die man indifferent ist.
Wenn man solche Indifferenzen in dem Stable Marriage-Problem zulässt, dann erhält man das Stable Marriage Problem with Ties.
Falls man die Annahmen noch weiter lockert und verkürzte Präferenzlisten zulässt, erhält man das
Stable Marriage Problem with Ties and Incomplete Preferences.
Irving veröffentlichte 1994 eine Abhandlung, in der das Stable Marriage Problem with Ties thematisiert wurde.irv1994 In dieser Abhandlung
teilte er das Konzept der Stabilität, in drei unterschiedlich starke Kategorien der Stabilität auf: Schwach-, Stark- und Super-Stabilität.
Irving stellt unter Anderem einen Algorithmus vor, welcher ein schwach-stabiles Matching findet, falls eines existiert.
Im Folgenden wird dieser beschrieben.
Eingabe:
Ein bipartiter Graph G=(U∪˙W,E), wobei U die Menge der Männer und W die Menge der Frauen darstellt und E⊆U×W gilt
Für jeden Knoten m in U gibt es eine Präferenzliste mit Indifferenzen ≻m über W
Für jeden Knoten w in W gibt es eine Präferenzliste mit Indifferenzen ≻w über U
Ausgabe:
Ein schwach-stabiles Matching in G
Pseudocode
$M \leftarrow \emptyset $
$\mathbf{while}$ $\exists \: m$ für den gilt $M(m) = \emptyset$ und $\succ_{m}$ ist nicht leer $\mathbf{do}$
$\quad$ Mann $m$ macht seiner favorisierten Frau $w$ einen Antrag.
$\quad$ $\mathbf{for\text{ }each}$ $\hat{m} \in U$, für den gilt $m \succ_{w} \hat{m} $ $\mathbf{do}$
$\quad\quad$ Entferne $w$ aus $\succ_{\hat{m}}$.
$\mathbf{return}$ $M$
Zeile 1: Das Matching M wird mit ∅ initialisiert.
Zeile 2: Folgendes wird solange wiederholt bis jeder Mann mit einer nicht leeren Präferenzliste verlobt ist.
Zeile 3: Ein beliebiger Mann m, der noch nicht verlobt ist und eine nicht leere Präferenzliste hat, macht
seiner favorisierten Frau w einen Antrag.
Zeile 4−6: Die Frau w nimmt in jedem Fall den Antrag an und löst, falls vorhanden,
eine bestehende Verlobung mit einem anderen Mann m~ auf.
Zeile 7−8: Danach streichen alle Nachfolger von m gemäß der Präferenzliste von
w die Frau w von ihren Präferenzlisten.
Zeile 9: Falls jeder Mann mit einer nicht leeren Präferenzliste verlobt ist, gib das Matching M aus.
Im Unterschied zum Gale-Shapley-Algorithmus wird unter Umständen nicht jeder Mann seiner favorisierten Frau
einen Antrag machen, da diese von seiner Präferenzliste wegen der Zeilen 7−8 gelöscht werden kann.
Außerdem wird statt einem stabilen Matching nur ein schwach-stabiles Matching gefunden.
Im folgenden Abschnitt beschäftigen wir uns mit einer auf das School-Choice-Problem angepassten
Version des Gale-Shapley-Algorithmus.kla2020 Mit diesem erweiterten Gale-Shapley School-Choice Algorithmus (EGS−SC)
findet man in der Eingabe ein schwach-stabiles Matching.
Wie beim Gale-Shapley-Algorithmus machen die Schüler ihren favorisierten Schulen einen Antrag. Jedoch kann eine Schule
mehrere Anträge annehmen, weshalb erst ein Vergleich von allen aufgenommenen Schülern mit dem
antragsstellenden Schüler gemacht wird, falls die Kapazität an Schulplätzen erschöpft ist.
Der Mechanismus der verzögerten Akzeptanz wird wie folgt realisiert. Eine Schule s ersetzt einen aufgenommenen Schüler p mit
einem antragsstellenden Schüler p′, wenn die Schule den Schüler p′
gegenüber p strikt präferiert. Es folgt eine Analyse des EGS−SC.
Eingabe:
Eine Menge an Schülern P
Eine Menge an Schulen S
Eine Menge an Kapazitäten C mit einer Kapazität cs∈C für jede Schule s∈S
Eine Menge an strikten Präferenzlisten ≻p über eine Teilmenge S für jeden Schüler p∈P
Eine Menge an Präferenzlisten mit Indifferenzen ≻s über eine Teilmenge P für jede Schule s∈S
Ausgabe:
Ein schwach-stabiles Matching M zwischen Schulen und Schülern
Pseudocode
$M \leftarrow \emptyset $
$\mathbf{while}$ $\exists \: p$ für den gilt $M(p)= \emptyset$ und $\succ_{p}$ ist nicht leer $\mathbf{do}$
$\quad$ Schüler $p$ macht seiner favorisierten Schule $s$ einen Antrag.
$\quad\quad$ $\mathbf{if}$ $\nexists$ Schüler $\tilde{p}$, der Schule $s$ zugeordnet ist und $p$ $\succ_s$ $\tilde{p}$ gilt $\quad\quad$ $\mathbf{then}$
$\quad\quad\quad$ Streiche $s$ von $\succ_{p}$.
$\quad\quad$ $\mathbf{else}$
$\quad\quad\quad$ $M \leftarrow M \setminus \{ \{ \tilde{p}, s \}\}$
$\quad\quad\quad$ Streiche $s$ von $\succ_{\tilde{p}}$.
$\quad\quad\quad$ $M \leftarrow M \cup \{ \{p,s \}\}$
$\mathbf{return}$ $M$
Zeile 1: Das Matching M wird mit ∅ initialisiert.
Zeile 2: Setze die Kapazität jeder Schule s∈S auf ihre Anfangskapazität.
Zeile 3−4: Solange es einen nicht zugeordneten Schüler p gibt dessen Präferenzliste nicht leer ist, macht Schüler p
seiner favorisierten Schule s einen Antrag.
Zeile 5−7: Sofern die Kapazität seiner favorisierten Schule noch nicht ausgeschöpft ist, wird p an s aufgenommen.
Zeile 8−9: Falls die Kapazität der Schule ausgeschöpft ist, überprüft s, ob es einen ihr zugeordneten Schüler p~ gibt, den
sie strikt weniger bevorzugt als p, also p≻sp~.
Zeile 10: Falls es keinen solchen Schüler gibt, wird Schüler p von Schule s abgewiesen und streicht s von seiner Präferenzliste.
Zeile 11−14: Falls es so einen Schüler p~ gibt, verliert p~ seinen Platz an p. Der Schüler p~
streicht s von seiner Präferenzliste.
Zeile 15: Wenn es keinen Schüler p gibt, der keiner Schule zugeordnet ist und dessen Präferenzliste nicht leer ist, gib Matching M aus.
Verständnisfrage
Betrachte obige $EGS-SC$ Instanz mit $c_{s_{1}}=2, c_{s_{2}}=1, c_{s_{3}} = 3$. Angenommen das Matching
wird mit $EGS-SC$ bestimmt und die Schüler machen aufsteigend nach ihrem Index einen Antrag.
Welche Kardinalität besitzt das gefundene Matching?
Eigenschaften des Algorithmus
Mann-optimal
Satz
Der EGS−SC liefert im Allgemeinen kein mann-optimales Matching.
Beweis
Beweis:klo2017 Gegeben sind zwei Schüler p1,p2 und zwei Schulen s1,s2, deren Kapazität 1 beträgt. Die Präferenzen
sind der Abbildung zu entnehmen.
Der EGS−SC wird, abhängig von der Reihenfolge der gemachten Anträge entweder mit dem ersten (rötlich) oder zweiten (schwarz) Matching terminieren.
In beiden Matchings kann jeweils der Schüler, der mit s2 gematcht ist, sich durch Schule s1 verbessern und da {p1,s1} bzw. {p2,s1}
zulässig sind, sind beide Matchings nicht mann-optimal, wobei Schüler als Männer interpretiert werden. Insbesondere wird in diesem Beispiel unabhängig von der Reihenfolge der Anträge
kein mann-optimales Matching gefunden. □
Stabilität
Lemma
Es sei I eine Instanz des School-Choice-Problems (SC) und M ein Matching in I. Dann ist M genau
dann schwach-stabil, wenn M in einer Instanz des School-Choice-Problems ohne Indifferenzen (SC−OI) I′, die durch das künstliche Erzeugen
einer strikten Ordnung entstanden ist, stabil ist.
Beweis
Beweis:man2013kla2020M in I schwach-stabil ⇒M in I′ stabil:
Seien P die Menge der Schüler und S die
Menge der Schulen in I und M ein schwach-stabiles Matching in I, das P und S enthält.
Menge der Schüler: Es sei PM(I) die Menge der SC−OI Instanzen, die durch das künstliche Erzeugen einer
strikten Ordnung aus den Präferenzlisten (Tiebreaking) der Schüler in I entstehen. Diese werden wie folgt erzeugt:
Wenn t eine
Indifferenz auf einer Liste eines Schülers p∈P ist und M(p)∈t gilt, dann werden die restlichen Schulen s, die in der
Indifferenz vorkommen und nicht der zugeordneten Schule M(p) entsprechen, so angeordnet, dass die zugeordnete Schule für p
strikt mehr von p präferiert wird, als die restlichen in t vorkommenden Schulen. Formal geschrieben, bedeutet dies:
M(p)≻pv für jedes v∈t∖M(p). Damit präferiert Schüler p seine zugeordnetete Schule M(p) gegenüber
jeder anderen in I zu M(p) indiferrenten Schule v.
Menge der Schulen: Die Menge SM(I) sei analog für die Menge Schulen in I definiert. In diesem Fall werde aus einer
Indifferenz t auf der Liste einer Schule s∈S, die einen Schüler p∈M(s) enthält, so erzeugt, dass v≻sw
für jedes v∈t∖M(s) und w∈t∩M(s) gilt.
Es sei I′∈PM(I)∩SM(I), d.h. eine durch Tiebreaking
entstandene SC−OI Instanz. Nun zeigen wir über Kontraposition, dass
die Existenz einer blockierenden Kante in I′ zu einem Widerspruch der Annahme, dass
M schwach-stabil in I ist, führt.
Sei {p,s} ein blockierendes Paar für M in I′. Dann ist in I′ der Schüler
p entweder nicht zugewiesen oder es gilt s≻pM(p). Zudem gilt für Schule s, dass entweder die Kapazität
noch nicht erschöpft ist oder es gilt für mindestens ein v∈M(s):p≻sv. Daraus folgt, dass dies auch in I wahr ist, da I′ durch das künstliche
Erzeugen einer strikten Ordnung auf I entsprechend der obig beschriebenen Konstruktion gebildet wurde. Dementsprechend blockiert
das Paar {p,s} auch das Matching M in I, was der Voraussetzung, dass M schwach-stabil in I ist widerspricht.
M in I′ stabil ⇒M in I schwach-stabil:
Angenommen M ist stabil in einer SC−OI Instanz I′, das über
Tiebreaking in einer SC Instanz I entstanden ist. Sei b ein M-blockierendes Paar in I, dann blockiert b
auch das M in I′, was zu einem Widerspruch der Annahme führt. □
Satz
Der EGS−SC liefert ein schwach-stabiles Matching.
Beweis
Betrachte Zeile 12 im Pseudocode. Eine Schule s ersetzt den für sie schlechtesten, zugeordneten Schüler p~
mit dem Schüler p nur, falls dieser strikt besser für s ist und die Kapazität von s ausgeschöpft ist.
Anders ausgedrückt, p ersetzt p~ nur, wenn diese nicht in derselben Indifferenz vorkommen und p≻sp~ gilt,
was als Bedingung in dem Tiebreaking-Verfahren der Schulen im vorherigen Beweis auch genutzt wurde. Die Präferenzlisten der Schüler besitzen
in unserer Problemstellung keine Indifferenzen, weshalb wir diese nicht berücksichtigen. Damit folgt in Verbindung mit dem
vorherigen Satz, dass der EGS−SC in einem schwach-stabilen Matching terminiert.□
Kardinalitätsmaximalität
Satz
Der EGS−SC liefert im Allgemeinen kein kardinalitätsmaximales Matching.
Beweis
Gegeben sind zwei Schüler p1,p2 und zwei Schulen s1,s2, deren Kapazität 1 beträgt. Die Präferenzen
sind der angegebenen Abbildung zu entnehmen.
Schüler p1 macht seiner favorisierten Schule s1 einen Antrag, den s1 annimmt.
Der Schüler p2 macht derselben Schule s1 einen Antrag. Da die Kapazität der Schule s1 erschöpft ist,
vergleicht die Schule p1 mit p2. Es gilt p2≻s1p1. Schule s1 entscheidet sich für p2.
Der Schüler p1 ist keiner Schule mehr zugeordnet und und streicht s1 von seiner Präferenzliste. Die Präferenzliste von
Schüler p1 ist leer, weshalb der EGS−SC mit dem Matching M={{p2,s1}} terminiert.
Sei Mmax das durch die rötlichen Kanten dargestellte kardinalitätsmaximale Matching. Es gilt ∣M∣<∣Mmax∣.
Damit findet der EGS−SC im Allgemeinen kein kardinalitätsmaximales Matching. □
Weitere Eigenschaften
Da Instanzen des Stable Marriage-Problems Spezialfälle des School-Choice-Problems sind, in der
alle Schüler und Schulen vollständige und strikte Präferenzlisten besitzen und zusätzlich alle Schulen
eine Kapazität von 1 haben, kann man die in den Beweisen genutzten Instanzen für den Gale-Shapley-Algorithmus auch hier verwenden.
Es werden damit folgende Eigenschaften festgestellt.
[KLA2020]: Klause, K. J., Matching mit Präferenzen: Theoretische und Experimentelle Evaluation von Algorithmen zur Schulplatzvergabe, Universität Bremen, 2020.↩