Der Boston-Algorithmus ist ein weit verbreiteter School-Choice-Algorithmus Für seine Verwendung spricht, dass er die Prioritäten der Schüler stark berücksichtigt und eine maximale Anzahl an Schülern ihrer ersten Wunschschule zuordnet. Er ist jedoch nicht unumstritten, weil er Schülern Anreize bietet, ihre Präferenzen nicht wahrheitsgemäß anzugeben. Aus diesem Grund wird der Algorithmus in der namensgebenden Stadt seit dem Jahr 2005 nicht mehr verwendet.
Ablauf des Algorithmus
Der folgende Pseudocode beschreibt, wie der Boston-Algorithmus bei der Verteilung von Schülern auf Schulen vorgeht.
Eingabe:
Menge der Schulen S
Menge der Schüler P
Kapazität cs für alle s∈S
Präferenzliste für alle s∈S über P
Präferenzliste für alle p∈P über Teilmenge von S
Ausgabe:
b-MatchingM
$M \leftarrow \emptyset$
$\mathbf{for}~k = 1,..., n~~\mathbf{do}~$
$\mathbf{for~each}~{s \in S}~~\mathbf{do}~$
$O \leftarrow (o_1, o_2,..., o_l) $: Sortiere alle Schüler, die $s$ an $k$-ter Stelle ihrer Präferenzliste angegeben haben, absteigend nach der Präferenzliste von $s$.
$\mathbf{for}~i = 1,...,l~~\mathbf{do}$
$\mathbf{if}~c_s \neq 0~$
$M \leftarrow M \cup \{\{o_i,~s\}\}$
$c_s = c_s - 1$
$\mathbf{return}$ $M$
In Worten: Jeder Schüler kann n Wunschschulen angeben, die er nach seiner Präferenz absteigend ordnet. Beginnend mit der höchsten Präferenz k=1, führe für jedes k≤n folgenden Schritt aus: Betrachte für jede Schule nur jene noch nicht zugeordneten Schüler, welche die Schule als k-te Wahl angegeben haben. Ordne diese Schüler nach den Präferenzen der betrachteten Schule. Bei Indifferenzen entscheide dabei zufällig. Nimm in dieser Reihenfolge solange Schüler auf, bis entweder die Kapazität der Schule erschöpft oder die Liste der Schüler abgearbeitet ist.
Eigenschaften des Algorithmus
Stabilität
Satz
Der Boston-Algorithmus garantiert nicht, dass ein stabiles Matching gefunden wird.
Beweis
Gegeben sei der bipartite GraphG = (P∪S, E) mit der Schülermenge P = {p1,p2,p3} und der Schulmenge S={s1,s2,s3}. Alle Schulen besitzen die Kapazität 1. Die Präferenzlisten der Schüler und Schulen sind in der Abbildung dargestellt.
Schritt 1: Im ersten Schritt des Boston-Algorithmus werden nur die Erstwahlen der Schüler betrachtet. Schüler p1 hat als Einziger die Schule s1 als Erstwahl genannt und ist damit in diesem Schritt der einzige Bewerber an Schule s1 und wird daher an dieser angenommen.
Schritt 1: Schüler p2 und p3 haben beide als Erstwahl Schule s2 genannt. Diese hat jedoch nur einen Platz und entscheidet sich gemäß ihrer Präferenzliste für Schüler p2.
Schritt 2: Der Zweitwunsch des einzigen noch nicht zugeordneten Schülers p3 ist schon belegt. Daher gibt es in Schritt 2 keine Zuordnungen.
Schritt 3: Schließlich wird in Schritt 3 der Schüler p3 seiner Drittwahl s3 zugeordnet.
Das resultierende Matching enthält eine blockierende Kante: Schüler p3 wäre lieber Schule s1 zugeordnet als seinem derzeitigen Matchingpartner s3 und Schule s1 hätte lieber Schüler p3 aufgenommen als Schüler p1. Es gilt demnach s1≻p3M(p3) und p3≻s1M(s1). Damit ist das Matching nicht stabil. □
Strategiesicherheit
Satz
Der Boston-Algorithmus ist nicht strategiesicher.
Beweis
Betrachte das Folgende mit dem Boston-Algorithmus gefundene Matching (Finden des Matchings siehe Beweis zur Stabilität).
Der Schüler p3 erhält hier nur eine Zulassung für seine Drittwahl.
Vergleiche das folgende Matching, welches entstünde, wenn Schüler p3 über seine Präferenzen lügen und s1 an die erste Stelle seiner Präferenzliste setzen würde:
Der Schüler p3 würde nun an Schule s1 angenommen werden, weil diese p3 vor dem einzigen anderen Schüler präferiert, der sie als Erstwahl angegeben hat, p1.
Somit würde p3 an seiner tatsächlichen Zweitwahl s1 angenommen und würde damit seine Situation verbessern können. Demnach ist der Boston-Algorithmus nicht strategiesicher. □
Unter dem Boston-Algorithmus verliert ein Schüler seine hohe Priorität bei einer Schule an alle Schüler, die diese Schule mit einem höheren Prioritätsranking versehen haben. Es existiert also ein großer Anreiz für Schüler, ihre Erstwahl nicht zu verschwenden und Schulen zu präferieren, bei denen sie hohe Priorität besitzen.abd2003 So sind unter dem Boston-Algorithmus all jene Schüler benachteiligt, die keine strategischen Überlegungen anstellen. Mit Verweis auf diese mangelnde Fairness wurde der Boston-Algorithmus in Großbritannien gesetzlich verboten.koj2014
Die Manipulierbarkeit eines Algorithmus führt vor allem dann zu Ungerechtigkeit, wenn sich herausstellt, dass es in der Praxis sowohl Akteure gibt, die ihre Präferenzen wahrheitsgemäß angeben als auch solche, die dies nicht tun. Für den Boston-Algorithmus wurde dies in einer Studie von Abdulkadiroglu et al. untersucht. Die Analyse empirischer Daten der Stadt Boston aus dem Jahr 2001 ergab, dass sowohl strategisches als auch nicht-strategisches Verhalten von Familien unter dem Boston-Algorithmus existiert.abd2006 Da die wahren Präferenzen der Schüler aus experimentellen Daten nicht erkannt werden können, bedient sich die Studie eines strategischen Fehlers, um zu zeigen, dass nicht-strategisches Verhalten existiert: Im Boston-Algorithmus ist es sehr ungünstig, zwei hoch-nachgefragte Schulen als Erst- und Zweitwahl zu nennen. Von den Datensätzen wiesen jedoch 19% diesen strategischen Fehler auf. Von diesen Schülern wurden 27% nicht zugeordnet.
Um zu zeigen, dass strategisches Verhalten existiert, wurden "Ausreißer-Schulen" fokussiert: Bei sehr hoch-nachgefragten Schulen ist zu beobachten, dass diese von vielen Schülern als Erstwahl genannt werden, aber nur selten als Zweitwahl. Es konnte gezeigt werden, dass eine statistisch relevante Beziehung zwischen dem Ausmaß dieser Präferenzdiskontinuität und der Beliebtheit der Schule existiert.abd2006
Bevorzugung höherer Rankings
Satz
Der Boston-Algorithmus bevorzugt höhere Rankings.
Beweis
Im Boston-Algorithmus werden Schüler nur dann von einer Schule abgewiesen, wenn die Kapazität der Schule erschöpft ist. Wenn die Kapazität im Schritt der Ablehnung des Schülers erschöpft ist, bedeutet dies, dass die Schule in vorherigen Schritten eine entsprechende Zahl an Schülern aufgenommen hat oder die Kapazität im aktuellen Schritt ausgeschöpft wird. In beiden Fällen gilt also für alle angenommenen Schüler, dass die Schule mindestens so hoch gerankt wurde wie vom abgelehnten Schüler. □
Insbesondere impliziert diese Aussage, dass der Boston-Algorithmus die Anzahl der erfüllten Erstwünsche maximiert.
Pareto-Effizienz
Satz
Ein Algorithmus, der höhere Rankings bevorzugt, ist schülerseitig pareto-effizient.
Beweis
Beweis:koj2014 Sei M ein Matching, das höhere Rankings bevorzugt. Wir nehmen an, dass M nicht pareto-effizient ist und führen einen Widerspruch herbei. Da M nicht pareto-effizient ist, existiert ein Matching M′, bei dem sich kein Schüler gegenüber seiner Zuordnung in M verschlechtert, aber mindestens ein Schüler verbessert. Aufgrund der Bevorzugung höherer Rankings kann es dabei keinen Schüler geben, der sich dadurch verbessern kann, dass er in M′ einen in M unbesetzten Schulplatz erhält. Demnach existiert eine Abfolge von Schülern p1,...,pn mit pi∈P, sodass sich alle Schüler in dieser Menge verbessern können, indem sie untereinander ihre Plätze tauschen. Es gilt also, dass jeder Schüler pk den Matchingpartner M(pk+1) seines Nachfolgers pk+1 besser gerankt hat als seinen eigenen Matchingpartner (sonst würde er nicht tauschen wollen). Dies notieren wir folgendermaßen:
Rpk(M(pk+1))<Rpk(M(pk)).
Der Nachfolger von pn ist dabei p1. Da M höhere Rankings bevorzugt, gilt außerdem, dass jeder Schüler pk+1 seinen Matchingpartner mindestens genauso gut gerankt hat wie sein Vorgänger pk. Ansonsten wäre der Vorgänger angenommen worden, da dieser sich auch an der Schule beworben hat.
Rpk+1(M(pk+1))≤Rpk(M(pk+1))
Durch Zusammensetzen der beiden Gleichungen ergibt sich der folgende Widerspruch:
Rp1(M(p1))
≤Rpn(M(p1))<Rpn(M(pn))
≤Rpn−1(M(pn))<Rpn−1(M(pn−1))
...
≤Rp1(M(p2))<Rp1(M(p1)). □
Es wurde somit gezeigt, dass der Boston-Algorithmus pareto-effizient ist. Allerdings ist Pareto-Effizienz per Definition davon abhängig, dass die Schüler ihre Präferenzen wahrheitsgemäß angeben. Da es aber, wie oben gesehen, wahrscheinlich ist, dass viele Schüler ihre Präferenzen manipulieren, ist es unwahrscheinlich, dass der Boston-Algorithmus in der Realität ein pareto-effizientes Matching findet.abd2003
Rangmaximalität
Satz
Der Boston-Algorithmus garantiert keine schülerseitige Rangmaximalität, wenn Indifferenzen zwischen Schülern auf der Seite der Schulen bestehen.
Beweis
Gegeben seien Schüler {p1, p2, p3} sowie Schulen {s1, s2, s3} mit den in der Abbildung dargestellten Präferenzen. Jede Schule hat die Kapazität 1. Schule s2 ist indifferent bezüglich p2 und p3, und priorisiert beide vor p1. Ob der Boston-Algorithmus nun im ersten Schritt p2 oder p3 zu s2 zuordnet, wird per Los entschieden.
Fall 1:p2 wird an s2 angenommen. Dieses Matching erfüllt zwei Erstwünsche und einen Zweitwunsch und ist damit rangmaximal.
Fall 2:p3 wird an s2 angenommen. Dieses Matching erfüllt zwei Erstwünsche und einen Drittwunsch und ist damit nicht rangmaximal. Also garantiert der Boston-Algorithmus keine Rangmaximalität, wenn schulseitig Indifferenzen vorhanden sind.□
Satz
Der Boston-Algorithmus garantiert schülerseitige Rangmaximalität, wenn die Präferenzlisten der Schulen keine Indifferenzen beinhalten.
Beweisidee
Sofern es auf Seiten der Schulen keine Indifferenzen gibt, gibt es nur ein mögliches Matching, auf dem der Boston-Algorithmus terminieren kann. Dass dieses rangmaximal ist, ist leicht aus dem Vorgehen des Algorithmus zu erkennen: Zuerst wird die maximale Anzahl der möglichen Erstwünsche realisiert, dann die der Zweitwünsche usw.
In der Realität werden die Präferenzlisten der Schulen immer Indifferenzen beinhalten, auf Grund der generell hohen Zahl an Schülern im Verhältnis zur geringen Zahl an Prioritätenkategorien der Schulen (z.B. Notendurchschnitt, Geschwisterkinder auf der Schule).
Kardinalitätsmaximalität
Satz
Bei verkürzten Präferenzlisten auf Seiten der Schüler garantiert der Boston-Algorithmus nicht, dass ein kardinalitätsmaximales Matching gefunden wird.
Beweis
Gegeben sei die folgende Probleminstanz mit verkürzten Präferenzlisten der Schüler. Alle Schulen besitzen die Kapazität 1. Betrachte das mit dem Boston-Algorithmus gefundene Matching M.
Der Boston-Algorithmus hat ein Matching M der Kardinalität 2 gefunden, es gibt aber ein Matching M′ der Kardinalität 3 für diese Probleminstanz: M′ = M∪{{p2,s3},{p3,s2}}∖{{p2,s2}}. □
Verständnisfragen
Frage 1:
Wie viele Schüler können vom Boston-Algorithmus keiner Schule zugeteilt werden?
Frage 2:
Betrachte das mit dem Boston-Algorithmus gefundene Matching. Hätte $p_1$ ein für ihn besseres Ergebnis erzielen können, wenn er seine Präferenzen nicht wahrheitsgemäß angegeben hätte?
[ABD2003]: Abdulkadiroglu, Atila und Tayfun Sönmez: School Choice: A Mechanism Design Approach. American Economic Review, 93: 729-747, 2003.↩
[KOJ2014]: Kojima, Fuhito und M. Utku Ünver: The Boston school-choice mechanism: an axiomatic approach. Economic Theory, 55(3): 515-544, 2014.↩
[ABD2006]: Abdulkadiroglu, Atila, Parag Pathak, Alvin Roth und Tayfun Sönmez: Changing the Boston School Choice Mechanism: Strategy-proofness as Equal Access. NBER working paper series, Band 11965, 2006.↩