www.wikidata.de-de.nina.az
In der Mathematik der Volkswirtschaftslehre und der Informatik bezeichnet das Stable Marriage Problem englisch fur Problem der stabilen Paarung auch stable matching problem oder SMP das Problem eine stabile Paarung zwischen zwei gleich grossen Mengen von Elementen zu finden anhand einer gegebenen Praferenzordnung fur jedes Element Eine Paarung oder ein Matching ist eine Zuordnung der Elemente der einen Menge zu den Elementen der anderen Menge Sie ist nicht stabil wenn a Ein Element A aus der ersten Menge ein gegebenes Element B aus der zweiten Menge gegenuber dem Element bevorzugt mit dem A schon gematcht ist und b B ebenfalls A gegenuber dem Element praferiert mit dem B schon gematcht ist Mit anderen Worten Eine Paarung ist stabil wenn kein Match A B existiert bei dem sowohl A als auch B individuell bessergestellt waren als mit dem Element mit dem sie gerade gematcht sind Das Stable Marriage Problem nimmt heterosexuelle Paare an und wurde wie folgt formuliert Gegeben n Manner und n Frauen wobei jede Person alle Angehorigen des anderen Geschlechts in der Reihenfolge ihrer Praferenz angeordnet hat heiraten die Manner und Frauen einander so dass es keine zwei Menschen unterschiedlichen Geschlechts gibt die beide lieber einander geheiratet hatten als ihre gegenwartigen Partner Wenn es keine solchen Paare gibt gilt die Menge der Ehen als stabil Man beachte dass sich dieses Problem darin vom Stable Roommates Problem unterscheidet dass es zwei verschiedene Klassen gibt die miteinander ein Paar bilden mussen in diesem Beispiel Manner und Frauen Inhaltsverzeichnis 1 Anwendungen 2 Gale Shapley Algorithmus 2 1 Algorithmus 2 2 Optimalitat der Losung 3 Stable Marriage mit Indifferenz 4 Ahnliche Probleme 5 Implementierung in Softwarepaketen 6 Siehe auch 7 Einzelnachweise 7 1 Lehrbucher und weitere wichtige Werke die im Text nicht zitiert werden 8 WeblinksAnwendungen BearbeitenAlgorithmen zur Losung des Stable Marriage Problem lassen sich in vielen Praxissituationen anwenden Dabei ist die Zuweisung von Medizinabsolventen zur arztlichen Weiterbildung im Krankenhaus in den USA vielleicht die bekannteste Im Jahr 2012 erhielten Lloyd Shapley und Alvin E Roth den Nobelpreis fur Wirtschaftswissenschaften fur die Theorie stabiler Allokationen und die Anwendung des Marktdesigns 1 Eine wichtige Anwendung von Stable Marriage im grossen Rahmen ist die Zuweisung von Nutzern zu Servern bei einem grossen verteilten Internetdienst 2 Milliarden von Nutzern rufen Webseiten Videos und andere Dienste im Internet auf Dabei muss jeder Nutzer zu einem von potenziell hunderttausenden Servern auf der ganzen Welt gematcht werden die diesen Dienst anbieten Ein Nutzer bevorzugt solche Server die in hinreichender Nahe sind um eine schnellere Antwortzeit fur den gewunschten Dienst zu ermoglichen Das fuhrt zu einer partiellen Praferenzordnung der Server fur jeden Nutzer Jeder Server wiederum bevorzugt Nutzer derer Bedienung wenig kostet sodass sich eine partielle Praferenzordnung der Nutzer fur jeden Server ergibt Content Delivery Networks die einen grossen Teil der weltweiten Inhalte und Dienste verteilen losen dieses grosse und komplexe Stable Marriage Problem zwischen Nutzern und Servern alle Zehntelsekunden Damit ermoglichen sie Milliarden von Nutzern mit den jeweiligen Servern gematcht zu werden die ihre gewunschten Webseiten Videos oder anderen Dienste zur Verfugung stellen 2 Gale Shapley Algorithmus BearbeitenIm Jahr 1962 bewiesen David Gale und Lloyd Shapley dass es fur eine gleiche Anzahl an Mannern und Frauen immer moglich ist das Stable Marriage Problem zu losen sodass alle Ehen stabil sind Sie prasentierten dafur einen Algorithmus 3 4 Der Gale Shapley Algorithmus enthalt eine gewisse Anzahl von Runden oder Iterationen In der ersten Runde macht zuersta jeder nicht verlobte Mann derjenigen Frau die ihm am besten gefallt einen Heiratsantrag und dann b antwortet jede Frau dem Verehrer der ihr am besten gefallt mit vielleicht und allen anderen mit nein Damit ist sie vorlaufig mit dem Verehrer verlobt der ihr bis dahin am besten gefallt und dieser Verehrer ist entsprechend vorlaufig mit ihr verlobt In jeder folgenden Runde macht zuersta jeder nicht verlobte Mann derjenigen Frau einen Antrag die ihm am besten gefallt und der er noch keinen Antrag gemacht hat unabhangig davon ob diese Frau schon verlobt ist b Dann antwortet jede Frau vielleicht wenn sie gerade nicht verlobt ist oder wenn sie diesen Mann gegenuber ihrem gegenwartigen vorlaufigen Partner bevorzugt in diesem Fall weist sie ihren gegenwartigen vorlaufigen Partner zuruck und lost die Verlobung auf Dadurch dass Verlobungen vorlaufig sind behalt eine schon verlobte Frau das Recht ihren bis dato Partner sitzenzulassen und durch einen besseren zu ersetzen Dieser Vorgang wird so lange wiederholt bis jeder verlobt ist Die Laufzeitkomplexitat dieses Algorithmus ist O n 2 displaystyle O n 2 nbsp wobei n displaystyle n nbsp die Anzahl der Manner oder Frauen ist 5 Dieser Algorithmus garantiert dass Jeder heiratet Am Ende kann es keinen Mann und keine Frau geben die beide nicht verlobt sind Das liegt daran dass er ihr irgendwann einen Antrag gemacht haben muss denn ein Mann wird schliesslich jeder Frau einen Antrag machen wenn dies notig sein sollte Und sobald sie einen Antrag erhalt ware sie daraufhin notwendigerweise mit irgendjemandem verlobt Die Ehen stabil sind Alice und Bob seien beide verlobt aber nicht miteinander Nach Beendigung des Algorithmus ist es nicht moglich dass sowohl Alice als auch Bob einander gegenuber ihren jeweiligen derzeitigen Partnern vorziehen Wenn Bob Alice seiner gegenwartigen Partnerin vorzieht muss er Alice vor dieser einen Antrag gemacht haben Wenn Alice seinen Antrag angenommen hat aber schlussendlich nicht mit ihm verheiratet ist muss sie ihn fur jemanden den sie mehr mag verlassen haben Daher kann sie Bob nicht mehr mogen als ihren gegenwartigen Partner Wenn Alice seinen Antrag abgelehnt hat war sie bereits mit jemandem verlobt den sie mehr mochte als Bob Algorithmus Bearbeiten function stableMatching Initialisiere alle m M und w W als alleinstehend while Mann m der noch einer Frau w einen Antrag machen kann alleinstehend w erste Frau auf m s Liste der m noch keinen Antrag gemacht hat if w ist alleinstehend m w sind verlobt else gibt es schon ein Paar m w if w m gegenuber m bevorzugt m wird alleinstehend m w sind verlobt else m w bleiben verlobt Optimalitat der Losung Bearbeiten Wahrend die Losung stabil ist ist sie nicht notwendigerweise auch aus Sicht aller Individuen optimal Die traditionelle Form des Algorithmus ist optimal fur die Gruppe die die Antrage macht Diese stabile und fur die Antragsteller optimale Losung muss jedoch nicht optimal fur die Antragempfanger sein Das zeigt folgendes Beispiel Es gibt drei Antragsteller A B C und drei Antragempfanger X Y Z die folgende Praferenzen haben A YXZ B ZYX C XZY X BAC Y CBA Z ACBEs gibt drei stabile Losungen fur diese Matchinganordnung Die Antragsteller erhalten ihre erste Wahl und die Antragempfanger ihre dritte AY BZ CX Alle Teilnehmer erhalten ihre zweite Wahl AX BY CZ Die Antragempfanger erhalten ihre erste Wahl und die Antragsteller ihre dritte AZ BX CY Alle drei Losungen sind stabil weil Instabilitat erfordert dass beide Teilnehmer mit einem anderen Partner glucklicher waren Wenn eine Gruppe ihre erste Wahl erhalt garantiert dies dass die Matches stabil sind weil Gruppenmitglieder mit jedem anderen vorgeschlagenen Match unglucklicher wurden Wenn jeder seine zweite Wahl erhalt ist garantiert dass jedes andere Match einer der beiden Parteien missfallen wird Der Algorithmus konvergiert in einer einzigen Runde zur Antragsteller optimalen Losung weil jeder Antragempfanger genau einen Antrag erhalt und daher diesen Antrag als beste Wahl auswahlt Damit ist garantiert dass der Antrag jedes Antragstellers angenommen wird womit das Match endet Diese Asymmetrie der Optimalitat ist der Tatsache geschuldet dass die Antragsteller aus der gesamten Menge wahlen konnen die Antragempfanger aber zu jedem Zeitpunkt aus einer begrenzten Teilmenge der Antragsteller wahlen Stable Marriage mit Indifferenz BearbeitenIn der klassischen Version des Problems muss jede Person die Angehorigen des anderen Geschlechts in einer strikten Praferenzordnung anordnen In der Praxis kann eine Person allerdings zwei oder mehr Personen im gleichen Masse favorisieren Eine solche unentschiedene Praferenz wird als Indifferenz bezeichnet Im folgenden Beispiel ist m 2 displaystyle m 2 nbsp unentschieden zwischen w 3 amp w 1 displaystyle w 3 amp w 1 nbsp und w 2 displaystyle w 2 nbsp ist unentschieden zwischen m 1 amp m 2 displaystyle m 1 amp m 2 nbsp m 1 w 2 w 1 w 3 w 1 m 3 m 2 m 1 displaystyle m 1 w 2 w 1 w 3 w 1 m 3 m 2 m 1 nbsp m 2 w 3 w 1 w 2 w 2 m 1 m 2 m 3 displaystyle m 2 left w 3 w 1 right w 2 w 2 left m 1 m 2 right m 3 nbsp m 3 w 1 w 2 w 3 w 3 m 2 m 3 m 1 displaystyle m 3 w 1 w 2 w 3 w 3 m 2 m 3 m 1 nbsp Wenn unentschiedene Praferenzlisten zugelassen sind hat das Stable Marriage Problem drei Stabilitatskonzepte die in den folgenden Abschnitten behandelt werden Ein Matching wird als schwach stabil bezeichnet sofern es kein Paar gibt sodass jeder von beiden den anderen strikt gegenuber seinem ihren Matchingpartner bevorzugt Robert W Irving 6 hat den Gale Shapley Algorithmus wie folgt erweitert um so ein schwach stabiles Matching zum Zeitpunkt O n 2 displaystyle O n 2 nbsp zu liefern wobei n die Grosse des Stable Marriage Problem bezeichnet Wenn die Manner und Frauen in ihren Praferenzen indifferent sind wird willkurlich entschieden Mit dem Fortschreiten des Algorithmus werden die Praferenzlisten immer kurzer Ordne jede Person als alleinstehend ein while irgendein Mann m alleinstehend ist do begin w erste Frau auf m s Liste m macht einen Antrag und verlobt sich mit w if irgendein Mann m mit w verlobt ist then ordne m als alleinstehend ein for each Nachfolger m von m auf w s Liste do delete das Paar m w end gib die verlobten Paare aus die ein stabiles Matching bilden Ein Matching ist super stabil wenn es kein Paar gibt sodass jeder von beiden den anderen strikt gegenuber seinem ihrem Partner bevorzugt oder zwischen ihnen indifferent ist Robert W Irving 6 hat den oben beschriebenen Algorithmus modifiziert um zu uberprufen ob es ein solches super stabiles Matching gibt und falls dieses existiert das Matching zum Zeitpunkt O n 2 displaystyle O n 2 nbsp ausgibt Im Folgenden der Pseudo Code Ordne jede Person als alleinstehend ein repeat while irgendein Mann m alleinstehend ist do for each Frau w am Anfang von m s Liste do begin m macht einen Antrag und verlobt sich mit w for each strikten Nachfolger m von m auf w s Liste do begin if m ist verlobt mit w then break die Verlobung delete the pair m w end end for each woman w who is multiply engaged do begin break all engagements involving W for each man m at the tail of w s list do delete the pair m w end until some man s list is empty or jeder verlobt ist if jeder verlobt ist then ist die Verlobungsrelation ein super stabiles Matching else existiert kein super stabiles Matching Ein Matching ist stark stabil wenn es kein Paar x y gibt sodass x y strikt gegenuber seinem ihrem Partner bevorzugt und y entweder x strikt gegenuber seinem ihrem Partner bevorzugt oder indifferent zwischen beiden ist Robert W Irving 6 hat einen Algorithmus entwickelt der uberpruft ob so ein stark stabiles Matching existiert und wenn es existiert das Matching ausgibt Der Algorithmus berechnet das perfekte Matching zwischen Mengen von Mannern und Frauen sodass er die kritische Menge an Mannern findet die mit mehreren Frauen verlobt sind Da solche Verlobungen niemals stabil sind werden alle solchen Paare geloscht und der Antragsprozess wird wiederholt bis entweder 1 die Praferenzliste eines irgendeines Mannes leer wird in diesem Fall gibt es kein stark stabiles Matching oder 2 ein stark stabiles Matching erreicht wird Hier der Pseudo Code um ein stark stabiles Matching zu finden Es hat eine Laufzeit von O n 4 displaystyle O n 4 nbsp was im Lemma 4 6 erklart wird 6 Ordne jede Person als alleinstehend ein repeat while irgendein Mann alleinstehend ist do for each Frau w am Anfang von m s Liste do begin m macht einen Antrag und verlobt sich mit w for each strikten Nachfolger m von m auf w s Liste do begin if m verlobt ist mit w then break die Verlobung delete das Paar m w end end if die Verlobungsrelation kein perfektes Matching enthalt then begin finde die kritische Menge Z an Mannern for each Frau w die mit einem Mann aus Z verlobt ist do begin break alle Verlobungen von w for each Mann m am Ende von w s Liste do delete das Paar m w end end until die Liste eines Mannes leer ist or jeder verlobt ist if jeder verlobt ist then ist die Verlobungsrelation ein super stabiles Matching else existiert kein stark stabiles MatchingAhnliche Probleme BearbeitenDas Zuordnungsproblem versucht in einem gewichteten zweiteiligen Graphen ein Matching mit maximaler Gewichtung zu finden Maximal gewichtete Matchings mussen nicht stabil sein aber in manchen Anwendungen ist ein maximal gewichtetes Matching besser als ein stabiles Das Stable Roommates Problem ist ahnlich wie das Stable Marriage Problem aber es unterscheidet sich insofern davon dass alle Teilnehmer einer einzigen Gruppe angehoren anstatt zu gleichen Teilen in Manner und Frauen getrennt zu sein Das Krankenhauser Assistenzarzte Problem auch bekannt als das Hochschulzulassungsproblem unterscheidet sich vom Stable Marriage Problem insofern dass ein Krankenhaus mehrere Assistenzarzte aufnehmen kann Ebenso kann eine Hochschule mehr als einen Studenten in einem Jahrgang haben Algorithmen zur Losung des Krankenhauser Assistenzarzte Problems konnen krankenhausorientiert sein wie es das NRMP vor 1995 war 7 oder arzteorientiert Dieses Problem wurde mit einem Algorithmus aus dem gleichen originalen Paper von Gale und Shapley gelost in dem auch das Stable Marriage Problem gelost wurde 3 Das Krankenhauser Assistenzarzte Problem mit Paaren ermoglicht es dass die Menge der Assistenzarzte Paare enthalt die zusammen zugewiesen werden mussen entweder zum gleichen Krankenhaus oder zu zwei konkreten Krankenhausern die das Paar ausgewahlt hat Damit will beispielsweise ein Ehepaar sichergehen dass beide Partner zusammen bleiben und nicht in Ausbildungsprogrammen landen die weit voneinander entfernt sind Das Hinzufugen von Paaren zum Krankenhauser Assistenzarzte Problem macht das Problem NP vollstandig 8 Das Matching Problem mit Vertragen stellt eine Generalisierung des Matchingproblems dar in dem Teilnehmer mit verschiedenen Vertragsbedingungen gematcht werden konnen 9 Ein wichtiger Spezialfall ist dabei das Matching mit flexiblen Lohnen 10 Implementierung in Softwarepaketen BearbeitenR Der Gale Shapley Algorithm auch als Deferred Acceptance Algorithmus bezeichnet fur das Stable Marriage Problem und das Krankenhauser Assistenzarzte Problem ist im Paket matchingMarkets 11 12 implementiert Python Der Gale Shapley Algorithmus ist gemeinsam mit einigen anderen Algorithmen fur generalisierte Matchingprobleme im Paket QuantEcon MatchingMarkets py enthalten 13 API Die MatchingTools API stellt den Gale Shapley Algorithmus uber eine freie Programmierschnittstelle zur Verfugung 14 Siehe auch BearbeitenZuordnungsproblem ein ahnliches Problem bei dem die Gewichtungen der Graphenkanten austauschbar sind Stable Roommates Problem ein ahnliches Problem aber mit einer Menge der Grosse n und Praferenzen der Anzahl n 1 Nash Gleichgewicht Ungarische Methode ein Algorithmus um das gewichtete zweigeteilte Matchingproblem zu losen Matching Graphentheorie generalized matching problem in graphsEinzelnachweise Bearbeiten The Prize in Economic Sciences 2012 Nobelprize org abgerufen am 2 Januar 2018 a b Bruce Maggs and Ramesh Sitaraman Algorithmic nuggets in content delivery In ACM SIGCOMM Computer Communication Review 45 Jahrgang Nr 3 2015 sigcomm org PDF a b D Gale L S Shapley College Admissions and the Stability of Marriage In American Mathematical Monthly 69 Jahrgang 1962 S 9 14 doi 10 2307 2312726 Harry Mairson The Stable Marriage Problem In The Brandeis Review 12 1992 cs columbia edu Kazuo Iwama Shuichi Miyazaki A Survey of the Stable Marriage Problem and Its Variants In International Conference on Informatics Education and Research for Knowledge Circulating Society icks 2008 2008 S 131 136 doi 10 1109 ICKS 2008 7 a b c d Robert W Irving Stable marriage and indifference In Discrete Applied Mathematics 48 Jahrgang Nr 3 15 Februar 1994 S 261 272 doi 10 1016 0166 218X 92 00179 P sciencedirect com Sara Robinson Are Medical Students Meeting Their Best Possible Match In SIAM News Nr 3 April 2003 S 36 siam org Memento des Originals vom 18 November 2016 im Internet Archive abgerufen am 2 Januar 2018 D Gusfield R W Irving The Stable Marriage Problem Structure and Algorithms MIT Press 1989 ISBN 0 262 07118 5 S 54 John William Hatfield Paul Milgrom Matching with Contracts In American Economic Review 95 Jahrgang Nr 4 2005 S 913 935 doi 10 1257 0002828054825466 Vincent Crawford Elsie Marie Knoer Job Matching with Heterogeneous Firms and Workers In Econometrica 49 Jahrgang Nr 2 1981 S 437 450 doi 10 2307 1913320 Thilo Klein Analysis of Stable Matchings in R Package matchingMarkets In Vignette to R Package matchingMarkets 2015 r project org PDF matchingMarkets Analysis of Stable Matchings In R Project Abgerufen im 1 Januar 1 matchingMarkets py In Python package Abgerufen im 1 Januar 1 MatchingTools API Abgerufen im 1 Januar 1 Lehrbucher und weitere wichtige Werke die im Text nicht zitiert werden Bearbeiten L Dubins D Freedman Machiavelli and the Gale Shapley algorithm In American Mathematical Monthly 88 Jahrgang Nr 7 1981 S 485 494 doi 10 2307 2321753 J Kleinberg E Tardos 2005 Algorithm Design Kapitel 1 pp 1 12 Siehe auch Begleit Website fur den Text aw bc com D E Knuth 1976 Mariages stables Montreal Les Presses de l Universite de Montreal D E Knuth 1996 Stable Marriage and Its Relation to Other Combinatorial Problems An Introduction to the Mathematical Analysis of Algorithms english translation CRM Proceedings and Lecture Notes American Mathematical Society B Pittel 1992 On likely solutions of a stable marriage problem The Annals of Applied Probability 2 358 401 A E Roth 1984 The evolution of the labor market for medical interns and residents A case study in game theory Journal of Political Economy 92 991 1016 A E Roth M A O Sotomayor 1990 Two sided matching A study in game theoretic modeling and analysis Cambridge University Press Yoav Shoham Kevin Leyton Brown Multiagent Systems Algorithmic Game Theoretic and Logical Foundations Cambridge University Press New York 2009 ISBN 978 0 521 89943 7 masfoundations org Siehe Abschnitt 10 6 4 downloadable free online J Schummer R V Vohra Algorithmic Game Theory 2007 ISBN 978 0 521 87282 9 Mechanism design without money S 255 262 cambridge org PDF Weblinks BearbeitenInteraktive Flash Demonstration des Stable Marriage Problems 1 2 Gale Shapley JavaScript Demonstration Vorlesungsnotizen zum Stable Marriage Problem Abgerufen von https de wikipedia org w index php title Stable Marriage Problem amp oldid 234688232 Gale Shapley Algorithmus