LAW February 20071 A 5/3 approximation algorithm for a hard case of stable marriage Rob Irving Computing Science Department University of Glasgow (joint.

Slides:



Advertisements
Similar presentations
Excess Heat Production During D2 Diffusion Through Palladium
Advertisements

Protein Secondary Structure Prediction Using BLAST and Relaxed Threshold Rule Induction from Coverings Leong Lee Missouri University of Science and Technology,
1 Stable Matching A Special Case of Stable Marriage.
PowerPoint Tutorial 1 Creating a Presentation
Word Tutorial 2 Editing and Formatting a Document
Excel Tutorial 3 Working with Formulas and Functions
Objectives Create an action query to create a table
Academic Literacy and Study Strategies for Secondary-level and College Readers: A Research Update International Reading Associations 2007 Annual Convention.
Scaling distributed search for diagnostics and prognostics applications Prof. Jim Austin Computer Science, University of York UK CEO Cybula Ltd.
Measurement of the Hard photodisintegration of a proton-pair in the 3 He nucleus. Running now in JLab, hall A E03-101:GamPP n p p Ishay Pomerantz, Tel-Aviv.
Strong Stability in the Hospitals/Residents Problem Robert W. Irving, David F. Manlove and Sandy Scott University of Glasgow Department of Computing Science.
1 Almost stable matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University Péter Biró Department of Computer.
Modelling and Solving the Stable Marriage problem using Constraint Programming David Manlove and Gregg OMalley University Of Glasgow Department of Computing.
Stable Matching Problems with Constant Length Preference Lists Rob Irving, David Manlove, Gregg OMalley University Of Glasgow Department of Computing Science.
1 Student-Project Allocation with Preferences over Projects David Manlove Gregg OMalley University of Glasgow Department of Computing Science Supported.
1 Almost stable matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of Computer.
1 Student-Project Allocation with Preferences over Projects David Manlove University of Glasgow Department of Computing Science Joint work with Gregg OMalley.
Strong Stability in the Hospitals/Residents Problem
Blah blah blah. Zoes shark Thanks to the conference artist Phoebe.
Equilibria and Complexity: What now? Christos H. Papadimitriou UC Berkeley christos.
10IMSC August Tests for Evaluating Rank Histograms from Ensemble Forecasts Ian Jolliffe University of Exeter Cristina Primo.
3 october Brown easyBorrow (beta) Brown University Library October 2007.
Word Tutorial 1 Creating a Document
V3.0 12/04/ For Coral Systems With PRI Services Presented by Education Technology Services.
ADBIS A Method for Comparing Self- Organizing Maps: Case Studies of Banking and Linguistic Data Toomas Kirt, Ene Vainik, Leo Võhandu.
Linked Lists: Locking, Lock- Free, and Beyond … Based on the companion slides for The Art of Multiprocessor Programming (Maurice Herlihy & Nir Shavit)
Italian white certificates scheme
Piyush Kumar (Lecture 3: Stable Marriage) Welcome to COT5405.
Prof. Swarat Chaudhuri COMP 482: Design and Analysis of Algorithms Spring 2013 Lecture 2.
Objectives Explore a structured range of data Freeze rows and columns
March 8, Dynamic Fault Tree analysis using Input/Output Interactive Markov Chains Hichem Boudali, Pepijn Crouzen, and Mariëlle Stoelinga. Formal.
Sonar l TELE e-coaching application l de Overdracht bv © 2007 SONAR TELE e-coaching application.
Madrid 7 -9 March FARO EU Kick-off Meeting Introduction to the project by Marta Pérez-Soba.
Word Tutorial 5 Working with Templates and Outlines
USSGL Board Meeting 4/26/20071 U.S. Treasury Zero Coupon Bonds (ZCB)
Helping Online Students Do Better Academically with Useful Learning & Study Strategies. Some recommended instructor activities to help students succeed.
El Problema del Matrimonio Estable El Problema del Matrimonio Estable Roger Z. Ríos Programa de Posgrado en Ing. de Sistemas Facultad de Ing. Mecánica.
1 Overview of Graph Theory Addendum “The Stable Marriage Problem” Instructor: Carlos Pomalaza-Ráez Fall 2003 University of Oulu, Finland.
SchedulingCS-502 Fall Scheduling (continued) The art and science of allocating the CPU and other resources to processes (Slides include materials.
Eunice Lumsden Eunice Lumsden The University of Northampton England A New Professional: Reflections on the Pilot Phase of the Early Years Professional.
Matching Theory.
Men Cheating in the Gale-Shapley Stable Matching Algorithm Chien-Chung Huang Dartmouth College.
Matching problems Toby Walsh NICTA and UNSW. Motivation Agents may express preferences for issues other than a collective decision  Preferences for a.
Joint work with Rob Irving
Stabile Marriage Thanks to Mohammad Mahdian Lab for Computer Science, MIT.
Strong Stability in the Hospitals/Residents Problem Robert W. Irving, David F. Manlove and Sandy Scott University of Glasgow Department of Computing Science.
The Stable Marriage Problem
L3 #1 The Hospitals / Residents Problem and Some Extensions David Manlove University of Glasgow Department of Computing Science Supported by EPSRC grant.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
Stable Matchings a.k.a. the Stable Marriage Problem
Lecture 23: Stable Marriage ( Based on Lectures of Steven Rudich of CMU and Amit Sahai of Princeton) Shang-Hua Teng.
Algorithms for Student-Project Allocation
The Stable Marriage Problem
Incentive compatibility in 2-sided matching markets
1 “Almost stable” matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of.
Centralised matching schemes
Matching Boys Girls A B C D E
Stable Matching.
Lower bound for the Stable Marriage Problem
Stable Marriage Problem
Chapter 10 Iterative Improvement
The Stable Marriage Problem
“Almost stable” matchings in the Roommates problem
Blah blah blah.
Chapter 1 Introduction: Some Representative Problems
Popularity in the Capacitated House Allocation Problem
Piyush Kumar (Lecture 3: Stable Marriage)
A Grand Tour of Stable Matching Problems
Presentation transcript:

LAW February A 5/3 approximation algorithm for a hard case of stable marriage Rob Irving Computing Science Department University of Glasgow (joint work with David Manlove )

LAW February The stable marriage problem an example m 1 : w 2 w 4 w 1 w 3 w 1 : m 2 m 1 m 4 m 2 : w 3 w 1 w 4 w 2 : m 4 m 3 m 1 m 3 : w 2 w 3 w 3 : m 1 m 4 m 3 m 2 m 4 : w 4 w 1 w 3 w 2 w 4 : m 2 m 1 m 4 mens preferences womens preferences It's an unstable matching - ( m 1, w 4 ) is a blocking pair An example matching - {( m 1, w 1 ), ( m 2, w 3 ), ( m 3, w 2 ), ( m 4, w 4 )}

LAW February The stable marriage problem an example m 1 : w 2 w 4 w 1 w 3 w 1 : m 2 m 1 m 4 m 2 : w 3 w 1 w 4 w 2 : m 4 m 3 m 1 m 3 : w 2 w 3 w 3 : m 1 m 4 m 3 m 2 m 4 : w 4 w 1 w 3 w 2 w 4 : m 2 m 1 m 4 mens preferenceswomens preferences {( m 1, w 4 ), ( m 2, w 1 ), ( m 3, w 2 ), ( m 4, w 3 )} - a stable matching

LAW February Stable marriage facts § There is always at least one stable matching l The Gale-Shapley algorithm finds such a matching [Gale & Shapley 1962] § There may be many stable matchings § exponentially many in some cases [Knuth 1976] § All stable matchings have the same size and involve the same people [Gale & Sotomayor 1985] § The version of stable marriage described here is usually called "Stable Marriage with Incomplete Lists" (SMI)

LAW February The Hospitals / Residents problem an example r 1 : h 4 h 2 h 1 h 1 : 2: r 2 r 7 r 1 r 5 r 4 r 6 r 3 r 2 : h 3 h 1 h 4 h 2 : 2: r 8 r 1 r 3 r 6 r 3 : h 2 h 3 h 1 h 3 : 2: r 3 r 5 r 2 r 6 r 8 r 7 r 4 r 4 : h 3 h 4 h 1 h 4 : 3: r 5 r 8 r 2 r 4 r 7 r 1 r 5 : h 1 h 4 h 3 r 6 : h 2 h 3 h 1 r 7 : h 4 h 1 h 3 r 8 : h 3 h 4 h 2 residents preferences hospitals quotas and preferences It's unstable - (r 3,h 2 ) is a blocking pair so is (r 5,h 1 ) An example matching - {(r 1,h 2 ),(r 2,h 3 ),(r 3,h 3 ),(r 4,h 4 ),(r 5,h 4 ),(r 6,h 2 ),(r 7,h 1 ),(r 8,h 4 )}

LAW February The Hospitals / Residents problem an example r 1 : h 4 h 2 h 1 h 1 : 2: r 2 r 7 r 1 r 5 r 4 r 6 r 3 r 2 : h 3 h 1 h 4 h 2 : 2: r 8 r 1 r 3 r 6 r 3 : h 2 h 3 h 1 h 3 : 2: r 3 r 5 r 2 r 6 r 8 r 7 r 4 r 4 : h 3 h 4 h 1 h 4 : 3: r 5 r 8 r 2 r 4 r 7 r 1 r 5 : h 1 h 4 h 3 r 6 : h 2 h 3 h 1 r 7 : h 4 h 1 h 3 r 8 : h 3 h 4 h 2 residents preferences hospitals capacities and preferences A stable matching {(r 1,h 2 ),(r 2,h 3 ),(r 3,h 2 ),(r 4,h 4 ),(r 5,h 1 ),(r 6,h 3 ),(r 7,h 4 ),(r 8,h 4 )}

LAW February Stable matching in practice §The National Resident Matching Program (NRMP) l a scheme that each year matches over 30,000 graduating medical students (residents) to hospitals in the US l Since the early 1950s, the NRMP has used essentially the Gale-Shapley algorithm [Roth 1984] l Owes its success to the stability of its matching §Similar matching schemes in other countries and other contexts l including the SFAS scheme in Scotland [Irving 1998]

LAW February Ties in the preference lists Stable Marriage with Ties and Incomplete Lists (SMTI) Hospitals / Residents with Ties (HRT) Each preference list can contain one or more ties arguably a more realistic model in practical applications large hospitals cannot reasonably differentiate among all of their many applicants Now, a pair blocks a matching only if both members of the pair would be better off if matched together sometimes called weak stability To find a stable matching, break the ties arbitrarily and apply the Gale-Shapley algorithm But now – stable matchings can have different sizes

LAW February SMTI - an illustration m 1 : w 3 (w 1 w 2 ) w 4 w 1 : m 1 m 2 m 3 m 4 m 2 : w 1 w 3 w 2 : m 1 m 4 m 3 : w 3 w 1 w 3 : m 4 m 3 m 1 m 2 m 4 : w 1 (w 3 w 4 ) w 2 w 4 : m 4 m 1 mens preferenceswomens preferences A stable matching of size 4: {( m 1, w 2 ), ( m 2, w 1 ), ( m 3, w 3 ), ( m 4, w 4 )} A stable matching of size 2: {( m 1, w 1 ), ( m 4, w 3 )}

LAW February A hard stable matching problem For Stable Marriage (and therefore Hospitals Residents) with incomplete lists and ties It's NP-hard to find a maximum cardinality stable matching even if all the ties are on one side, and a tie occurs only at the end of a list, and all ties are of length 2 [Iwama, Manlove et al 1999] [Manlove, Irving et al 2002] Question: what about polynomial-time approximation? Can we decide on a 'good' way to break the ties?

LAW February Approximating maximum cardinality SMTI Trivially 2-approximable max cardinality 2 * min cardinality But APX-complete [HIIMMMS 2003] And not approximable within 21/19 (unless P = NP) 13/7-approximable if all ties are of length 2 8/5-approximable if all ties are of length 2 and on just one side 10/7 approximable (randomised) if, in addition, 1 tie per list [Halldórsson et al 2003] 15/8 approximable in the general case [Iwama et al, SODA 2007]

LAW February A case of practical interest 'Special' HRT (SHRT) residents' preference lists are strict hospitals' lists can contain one tie, of arbitrary length, at the end reflects the situation where hospitals are asked to rank as many candidates as they reasonably can, then place all others in a single tie at the end of their list 'Special' SMTI (SSMTI) men's preference lists are strict women's lists can contain one tie, of arbitrary length, at the end MAX-SSMTI is NP-hard (and so MAX-SHRT is too)

LAW February Approximating Max-SSMTI and MAX-SHRT There is a polynomial-time approximation algorithm for maximum cardinality SSMTI ( and for SHRT) with an approximation guarantee of 5/3. Algorithm is quite different from the approach used by previous approximation algorithms for variants of MAX-SMTI Consists of three phases: Phase 1 : apply a tailored version of the Gale-Shapley algorithm Phase 2 : find a maximum cardinality matching of selected subsets Phase 3 : break the ties according to a particular rule, then apply standard Gale-Shapley

LAW February Algorithm SSMTI-APPROX: Phase 1 assign each person to be free; /* free = not engaged */ while (some woman w is free) and (w has a non-empty list) and (w has an untied man m at the head of her list) { w proposes, and becomes engaged to m; /* m can never have a 'worse' mate than w; in particular, m is matched in every stable matching */ for each successor w' of w on m's list { if w' is engaged to m break the engagement; delete the pair (m,w') from the preference lists; } } Fact: engaged men are matched in every stable matching

LAW February Algorithm SSMTI-APPROX: Phase 1 m 1 : w 6 w 1 w 2 w 10 w 5 w 8 w 1 : m 2 m 3 (m 1 m 6 m 9 ) m 2 : w 7 w 10 w 3 w 1 w 6 w 2 : m 1 (m 3 m 5 m 7 ) m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 (m 4 m 6 m 8 ) m 4 : w 7 w 9 w 8 w 3 w 4 w 5 w 4 : m 4 m 9 (m 5 m 8 m 10 ) m 5 : w 2 w 6 w 4 w 5 w 10 w 5 : m 4 m 1 m 5 m 7 m 6 : w 1 w 3 w 6 : m 2 (m 1 m 3 m 5 ) m 7 : w 2 w 5 w 7 : (m 2 m 4 m 10 ) m 8 : w 3 w 4 w 8 : m 1 (m 3 m 4 ) m 9 : w 1 w 4 w 9 : (m 3 m 4 ) m 10 : w 7 w 10 w 4 w 10 : m 5 (m 1 m 2 m 10 ) mens preferenceswomens preferences

LAW February Algorithm SSMTI-APPROX: Phase 1 outcome m 1 : w 6 w 1 w 2 w 1 : m 3 (m 1 m 6 m 9 ) m 2 : w 7 w 10 w 3 w 2 : m 1 (m 3 m 5 m 7 ) m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 (m 4 m 6 m 8 ) m 4 : w 7 w 9 w 8 w 3 w 4 w 4 : m 4 m 9 (m 5 m 8 m 10 ) m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 7 m 6 : w 1 w 3 w 6 : (m 1 m 3 m 5 ) m 7 : w 2 w 5 w 7 : (m 2 m 4 m 10 ) m 8 : w 3 w 4 w 8 : (m 3 m 4 ) m 9 : w 1 w 4 w 9 : (m 3 m 4 ) m 10 : w 7 w 10 w 4 w 10 : (m 2 m 10 ) red people are engaged, black people are free

LAW February Algorithm SSMTI-APPROX: Phase 2 Find a maximum cardinality matching F of free men and women; for each pair (m,w) F promote m from the tie to the head of w's list; reactivate phase 1; /* essentially extends the sets of engaged men and women */

LAW February Algorithm SSMTI-APPROX: Phase 2 m 1 : w 6 w 1 w 2 w 1 : m 3 (m 1 m 6 m 9 ) m 2 : w 7 w 10 w 3 w 2 : m 1 (m 3 m 5 m 7 ) m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 (m 4 m 6 m 8 ) m 4 : w 7 w 9 w 8 w 3 w 4 w 4 : m 4 m 9 (m 5 m 8 m 10 ) m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 7 m 6 : w 1 w 3 w 6 : (m 1 m 3 m 5 ) m 7 : w 2 w 5 w 7 : (m 2 m 4 m 10 ) m 8 : w 3 w 4 w 8 : (m 3 m 4 ) m 9 : w 1 w 4 w 9 : (m 3 m 4 ) m 10 : w 7 w 10 w 4 w 10 : (m 2 m 10 ) red people are engaged, black people are free

LAW February Algorithm SSMTI-APPROX: Phase 2 m 1 : w 6 w 1 w 2 w 1 : m 3 (m 1 m 6 m 9 ) m 2 : w 7 w 10 w 3 w 2 : m 1 (m 3 m 5 m 7 ) m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 (m 4 m 6 m 8 ) m 4 : w 7 w 9 w 8 w 3 w 4 w 4 : m 4 m 9 (m 5 m 8 m 10 ) m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 7 m 6 : w 1 w 3 w 6 : (m 1 m 3 m 5 ) m 7 : w 2 w 5 w 7 : (m 2 m 4 m 10 ) m 8 : w 3 w 4 w 8 : (m 3 m 4 ) m 9 : w 1 w 4 w 9 : (m 3 m 4 ) m 10 : w 7 w 10 w 4 w 10 : m 10 m 2 red people are engaged, black people are free

LAW February Algorithm SSMTI-APPROX: Phase 2 outcome m 1 : w 6 w 1 w 2 w 1 : m 3 (m 1 m 6 m 9 ) m 2 : w 7 w 10 w 3 w 2 : m 1 (m 3 m 5 m 7 ) m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 (m 4 m 6 m 8 ) m 4 : w 7 w 9 w 8 w 3 w 4 w 4 : m 4 m 9 (m 5 m 8 ) m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 7 m 6 : w 1 w 3 w 6 : (m 1 m 3 m 5 ) m 7 : w 2 w 5 w 7 : (m 2 m 4 m 10 ) m 8 : w 3 w 4 w 8 : (m 3 m 4 ) m 9 : w 1 w 4 w 9 : (m 3 m 4 ) m 10 : w 7 w 10 w 10 : m 10 m 2 red people are engaged, black people are free

LAW February Algorithm SSMTI-APPROX: Phase 3 for each woman w break the tie (if any) in w's list, placing the free men ahead of the engaged men; reactivate phase 1; /* now just classical Gale-Shapley */ return the set of engaged pairs; This is obviously a stable matching All we have done is decide how to break the ties and then apply Gale-Shapley

LAW February Algorithm SSMTI-APPROX: Phase 3 m 1 : w 6 w 1 w 2 w 1 : m 3 (m 1 m 6 m 9 ) m 2 : w 7 w 10 w 3 w 2 : m 1 (m 3 m 5 m 7 ) m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 (m 4 m 6 m 8 ) m 4 : w 7 w 9 w 8 w 3 w 4 w 4 : m 4 m 9 (m 5 m 8 ) m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 7 m 6 : w 1 w 3 w 6 : (m 1 m 3 m 5 ) m 7 : w 2 w 5 w 7 : (m 2 m 4 m 10 ) m 8 : w 3 w 4 w 8 : (m 3 m 4 ) m 9 : w 1 w 4 w 9 : (m 3 m 4 ) m 10 : w 7 w 10 w 10 : m 10 m 2

LAW February Algorithm SSMTI-APPROX: Phase 3 m 1 : w 6 w 1 w 2 w 1 : m 3 m 6 m 9 m 1 m 2 : w 7 w 10 w 3 w 2 : m 1 m 7 m 3 m 5 m 3 : w 6 w 2 w 8 w 9 w 1 w 3 : m 2 m 6 m 8 m 4 m 4 : w 7 w 9 w 8 w 3 w 4 w 4 : m 4 m 9 m 8 m 5 m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 7 m 6 : w 1 w 3 w 6 : m 1 m 3 m 5 m 7 : w 2 w 5 w 7 : m 2 m 4 m 10 m 8 : w 3 w 4 w 8 : m 3 m 4 m 9 : w 1 w 4 w 9 : m 3 m 4 m 10 : w 7 w 10 w 10 : m 10 m 2

LAW February Algorithm SSMTI-APPROX: Phase 3 m 1 : w 6 w 1 : m 6 m 9 m 2 : w 7 w 2 : m 7 m 3 m 5 m 3 : w 6 w 2 w 8 w 3 : m 8 m 4 : w 7 w 9 w 4 : m 9 m 5 m 5 : w 2 w 6 w 4 w 5 w 5 : m 5 m 6 : w 1 w 6 : m 1 m 3 m 5 m 7 : w 2 w 7 : m 2 m 4 m 10 m 8 : w 3 w 8 : m 3 m 9 : w 1 w 4 w 9 : m 4 m 10 : w 7 w 10 w 10 : m 10 A stable matching of size 10

LAW February Visualising the performance guarantee Engaged men Free men Extra men Extra women M A A Men Women M = maximum cardinality stable matching A = stable matching found by algorithm SSMTI-APPROX Extra men are matched in M but not in A Extra women must also be matched in A

LAW February Visualising the performance guarantee Engaged men Free men Extra men Extra women M A A Men Women M = maximum cardinality stable matching A = stable matching found by algorithm SSMTI-APPROX M s r-s s s s A These women must be matched in A x

LAW February Visualising the performance guarantee Extra men Extra women M A A Men Women Inequalities: (i)|A| |M| - r (ii)|A| |M| - x (a consequence of Phase 2) (iii)|A| x + r – s (iv)|A| r + s Algebra gives |M| 5|A|/3 M s r-s s s s A These women must be matched in A x

LAW February Further observations The algorithm extends in a (fairly) straightforward way to SHRT with the same performance guarantee of 5/3 We have no example where the 5/3 bound is realised The worst case we have is 8/5 so maybe a sharper analysis could improve the bound Open question Can these or similar techniques give good approximation algorithms for more general cases? e.g. when men also can have a tie at the end of their list

LAW February A bad case for Algorithm SSMTI-APPROX m 1 : w 5 w 2 w 1 : m 3 (m 8 m 5 ) m 2 : w 6 w 3 w 2 : m 1 m 6 m 3 : w 5 w 7 w 8 w 1 w 3 : m 2 m 7 m 4 : w 6 w 8 w 7 w 4 w 4 : m 4 m 8 m 5 : w 1 w 5 : (m 3 m 1 ) m 6 : w 2 w 6 : (m 4 m 2 ) m 7 : w 3 w 7 : (m 4 m 3 ) m 8 : w 1 w 4 w 8 : (m 3 m 4 ) Algorithm can return the red matching – size 5 The blue matching – size 8 – is also stable