620 likes | 854 Views
A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove University of Glasgow D epartment of C omputing Science. Supported by EPSR C grant GR/R84597/01 and Nuffield Foundation Award NUF-NAL-02. The Stable Marriage problem (SM) Input to the problem consists of:
E N D
A Grand Tour of Stable Matching Problems Progress and Challenges David Manlove University of Glasgow Department of Computing Science Supported by EPSRC grant GR/R84597/01 and Nuffield Foundation Award NUF-NAL-02
The Stable Marriage problem (SM) • Input to the problem consists of: • a set of n men {m1,m2,…,mn} • a set of n women {w1,w2,…,wn} • for each person q, a preference list in which qranks all members of the opposite sex in strict order • AmatchingMis a set of n disjoint (man,woman) • pairs • Let pM(q) denote person q’s partner in M • Ablocking pair of matching M is a • (man,woman) pair (m,w)M such that: • m prefers w topM(m) • w prefers m topM(w) • Matching M is stable if M admits no blocking • pair
Stable marriage: example instance m1: w4 w1 w2 w3w1: m4 m1 m3 m2 m2: w2 w3 w1 w4w2: m1 m3 m2 m4 m3: w2 w4 w3 w1w3: m1 m2 m3 m4 m4: w3 w1 w4 w2w4: m4 m1 m3 m2 Men's preferences Women's preferences
Stable marriage: example instance m1: w4w1w2 w3w1: m4m1m3 m2 m2: w2w3 w1 w4w2: m1 m3m2 m4 m3: w2w4w3 w1w3: m1 m2 m3m4 m4: w3w1 w4 w2w4: m4 m1m3m2 Men's preferences Women's preferences M={(m1,w1),(m2,w2),(m3,w4),(m4,w3)}
Stable marriage: example instance m1: w4w1w2 w3w1: m4m1m3 m2 m2: w2w3 w1 w4w2: m1 m3m2 m4 m3: w2w4w3 w1w3: m1 m2 m3m4 m4: w3w1 w4 w2w4: m4 m1m3m2 Men's preferences Women's preferences M={(m1,w1),(m2,w2),(m3,w4),(m4,w3)} (m3,w2) is a blocking pair, so Mis not stable
m1: w4w1 w2 w3w1:m4m1 m3 m2 m2: w2w3w1 w4w2: m1m3m2 m4 m3: w2w4 w3 w1w3: m1m2m3 m4 m4: w3w1w4 w2w4: m4m1m3 m2 Men's preferences Women's preferences M={(m1,w4), (m2,w3), (m3,w2) ,(m4,w1)}is stable Stable marriage: example instance m1: w4w1w2 w3w1: m4m1m3 m2 m2: w2w3 w1 w4w2: m1 m3m2 m4 m3: w2w4w3 w1w3: m1 m2 m3m4 m4: w3w1 w4 w2w4: m4 m1m3m2 Men's preferences Women's preferences M={(m1,w1),(m2,w2),(m3,w4),(m4,w3)} (m3,w2) is a blocking pair, so Mis not stable
The Gale / Shapley algorithm • A stable matching always exists for a given • instance of SM • Such a matching may be found in linear time • using the Gale / Shapley (GS) algorithm • D. Gale and L. Shapley, “College Admissions and the stability of marriage”, American Mathematical Monthy, 1962 • The set of stable matchings forms a • distributive lattice • Given an instance I of SM, there is a CP • encoding J of I such that the action of an • extended version of the GS algorithm on I is • equivalent (in a precise sense) to establishing • arc consistency in J • I.P. Gent, R.W. Irving, D.F. Manlove, P. Prosser and B.M. Smith, “A Constraint Programming Approach to the Stable Marriage Problem”, Proc. CP '01.
Stable marriage with unacceptable partners (SMI) • If qappears on p’s list, then pfinds qacceptable, • otherwise pfinds qunacceptable • Now amatchingMis a set of ndisjoint • (man,woman) pairs such that (m,w) Monly if: • m finds w acceptable • wfinds m acceptable • Now a blocking pair of matching M is a • (man,woman) pair (m,w)M such that: • m and w find each other acceptable • mis unmatched in M or prefers w topM(m) • wis unmatched in M or prefers m topM(w) • Matching M is stable if M admits no blocking • pair • Assume that preference lists are consistent, i.e. • p is on q’s list if and only if q is on p’s list
Unacceptable partners: example instance m1: w4 w1w2w3w1: m4 m1m3m2 m2: w2w3w1 w4w2: m1m3 m2 m4 m3: w2 w4 w3w1w3: m1m2m3m4 m4: w3w1 w4 w2w4: m4 m1 m3 m2 Men's preferences Women's preferences
Unacceptable partners: example instance m1: w4 w1 w3w1: m4 m1 m2 m2: w2 w1 w4w2: m3 m2 m4 m3: w2 w4 w3w3: m1 m3 m4: w1 w4 w2w4: m4 m1 m3 m2 Men's preferences Women's preferences
m1: w4w1 w3w1: m4m1 m2 m2: w2 w1 w4w2: m3m2 m4 m3: w2w4 w3w3: m1 m3 m4: w1w4 w2w4: m4m1m3 m2 Men's preferences Women's preferences M={(m1,w4), (m3,w2), (m4,w1)}is stable Unacceptable partners: example instance m1: w4 w1 w3w1: m4 m1 m2 m2: w2 w1 w4w2: m3m2 m4 m3: w2 w4 w3w3: m1 m3 m4: w1 w4 w2w4: m4m1 m3 m2 Men's preferences Women's preferences M={(m1,w4),(m2,w2),(m4,w1)} (m3,w2)and (m3,w3)are blocking pairs, so Mis not stable
Revised Gale/Shapley algorithm • A stable matching always exists, for a given • instance of SMI • Such a matching may be found in linear time • using the revisedGale/Shapley algorithm • Some people may be unmatched in a stable • matching, but • the same people are unmatched in all stable matchings • hence all stable matchings have the same size • The distributive lattice property also holds • Constraint programming formulation is also • possible, giving similar structural properties to • those holding for SM
Stable Marriage with Ties (SMT) • Assume all preference lists are complete again • (i.e. of length n) • A given person may be indifferent among two • or more other persons, so a preference list • may involve ties • Example instance: • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2 • Men's preferences Women's preferences • Three possible definitions of stability • A matching Mis weakly stable if there is no • blocking pair(m,w)M such that • mstrictly prefers w to pM(m) • wstrictly prefers m to pM(w)
Weak stability m1: w4w1w2w3w1: m4m1 m3m2 m2: w2w3w1w4w2: m1(m3m2) m4 m3: w2w4w3w1w3: m1m2m3m4 m4: w3w1w4w2w4: m4m1 m3m2 M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is weakly stable
Weak stability m1: w4w1w2w3w1: m4m1 m3m2 m2: w2w3w1w4w2: m1(m3m2) m4 m3: w2w4w3w1w3: m1m2m3m4 m4: w3w1w4w2w4: m4m1 m3m2 M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is weakly stable A weakly stable matching always exists, given an instance of SMT, and such a matching can be found in linear time:
Weak stability • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2 • M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is weakly stable • A weakly stable matching always exists, given an instance of SMT, and such a matching can be found in linear time: • Let I be an instance of SMT • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2
Weak stability • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2 • M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is weakly stable • A weakly stable matching always exists, given an instance of SMT, and such a matching can be found in linear time: • Let I be an instance of SMT • Break the ties arbitrarily to form an SM • instance J • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1m3m2 m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2
Weak stability • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2 • M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is weakly stable • A weakly stable matching always exists, given an instance of SMT, and such a matching can be found in linear time: • Let I be an instance of SMT • Break the ties arbitrarily to form an SM • instance J • Use the Gale / Shapley algorithm to find a • stable matching M in J • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1m3m2 m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2
Weak stability • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2 • M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is weakly stable • A weakly stable matching always exists, given an instance of SMT, and such a matching can be found in linear time: • Let I be an instance of SMT • Break the ties arbitrarily to form an SM • instance J • Use the Gale / Shapley algorithm to find a • stable matching M in J • Mis then weakly stable inI • m1: w4w1w2w3w1: m4m1 m3m2 • m2: w2w3w1w4w2: m1(m3m2) m4 • m3: w2w4w3w1w3: m1m2m3m4 • m4: w3w1w4w2w4: m4m1 m3m2 • M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)}is same weakly stable matching as above
Strong stability • Assume we are given an instance of SMT • A matching Mis strongly stable if there is no • blocking pair(x,y)M such that • x strictly prefers y to pM(x) • ystrictly prefers x to pM(y) or is indifferent between them • A strongly stable matching is weakly stable • An instance of SMT may not admit a strongly • stable matching: • m1: w1w2 w1:(m1 m2) • m2: w1w2w2:(m1 m2) • Men's preferences Women's preferences
Strong stability • Assume we are given an instance of SMT • A matching Mis strongly stable if there is no • blocking pair(x,y)M such that • x strictly prefers y to pM(x) • ystrictly prefers x to pM(y) or is indifferent between them • A strongly stable matching is weakly stable • An instance of SMT may not admit a strongly • stable matching: • m1: w1w2 w1:(m1 m2) • m2: w1w2w2:(m1 m2) • Men's preferences Women's preferences
Strong stability • Assume we are given an instance of SMT • A matching Mis strongly stable if there is no • blocking pair(x,y)M such that • x strictly prefers y to pM(x) • ystrictly prefers x to pM(y) or is indifferent between them • A strongly stable matching is weakly stable • An instance of SMT may not admit a strongly • stable matching: • m1: w1w2 w1:(m1 m2) • m2: w1w2w2:(m1 m2) • Men's preferences Women's preferences • (m2,w1) is a blocking pair
Strong stability • Assume we are given an instance of SMT • A matching Mis strongly stable if there is no • blocking pair(x,y)M such that • x strictly prefers y to pM(x) • ystrictly prefers x to pM(y) or is indifferent between them • A strongly stable matching is weakly stable • An instance of SMT may not admit a strongly • stable matching: • m1: w1w2 w1:(m1 m2) • m2: w1w2w2:(m1 m2) • Men's preferences Women's preferences
Strong stability • Assume we are given an instance of SMT • A matching Mis strongly stable if there is no • blocking pair(x,y)M such that • x strictly prefers y to pM(x) • ystrictly prefers x to pM(y) or is indifferent between them • A strongly stable matching is weakly stable • An instance of SMT may not admit a strongly • stable matching: • m1: w1w2 w1:(m1 m2) • m2: w1w2w2:(m1 m2) • Men's preferences Women's preferences • (m1,w1) is a blocking pair
Strong stability • Assume we are given an instance of SMT • A matching Mis strongly stable if there is no • blocking pair(x,y)M such that • x strictly prefers y to pM(x) • ystrictly prefers x to pM(y) or is indifferent between them • A strongly stable matching is weakly stable • An instance of SMT may not admit a strongly • stable matching: • m1: w1w2 w1:(m1 m2) • m2: w1w2w2:(m1 m2) • Men's preferences Women's preferences • There is an O(n4) algorithm to determine • whether aninstance of SMT has a strongly • stable matching, and to find one if one does • R.W. Irving, “Stable marriage and indifference”, Discrete Applied Maths, 1994
The set of strongly stable matchings forms a • distributive lattice • D.F. Manlove, “The structure of stable marriage with indifference”, Discrete Applied Maths, 2002 • Open questions • Is there a faster (e.g. O(n3)) algorithm for • finding a strongly stable matching if one exists, • given an instance of SMT? • Is there an efficient algorithm for finding a • weakly stable matching with the minimum • number of blocking pairs of the strong • stability type? • Is there an efficient algorithm for finding a • matching M of maximum cardinality such that • M is strongly stable with respect to the • matched men and women? • If a strongly stable matching does not exist, is • there a succinct certificate of this fact?
Super-stability • Assume we are given an instance of SMT • A matching Mis super-stable if there is no • blocking pair(m,w)M such that • m strictly prefers w to pM(m) or is • indifferent between them • wstrictly prefers m to pM(w) or is • indifferent between them • A super-stable matching is strongly stable, and • a strongly stable matching is weakly stable
Super-stability • Assume we are given an instance of SMT • A matching Mis super-stable if there is no • blocking pair(m,w)M such that • m strictly prefers w to pM(m) or is • indifferent between them • wstrictly prefers m to pM(w) or is • indifferent between them • A super-stable matching is strongly stable, and • a strongly stable matching is weakly stable • A stable marriage instance with ties may not • admit a super-stable matching: • m1: (w1 w2) w1:(m1 m2) • m2: (w1 w2) w2:(m1 m2) • Men's preferences Women's preferences
Super-stability • Assume we are given an instance of SMT • A matching Mis super-stable if there is no • blocking pair(m,w)M such that • m strictly prefers w to pM(m) or is • indifferent between them • wstrictly prefers m to pM(w) or is • indifferent between them • A super-stable matching is strongly stable, and • a strongly stable matching is weakly stable • A stable marriage instance with ties may not • admit a super-stable matching: • m1: (w1 w2) w1:(m1 m2) • m2: (w1 w2) w2:(m1 m2) • Men's preferences Women's preferences • (m2,w1) is a blocking pair
Super-stability • Assume we are given an instance of SMT • A matching Mis super-stable if there is no • blocking pair(m,w)M such that • m strictly prefers w to pM(m) or is • indifferent between them • wstrictly prefers m to pM(w) or is • indifferent between them • A super-stable matching is strongly stable, and • a strongly stable matching is weakly stable • A stable marriage instance with ties may not • admit a super-stable matching: • m1: (w1 w2) w1:(m1 m2) • m2: (w1 w2) w2:(m1 m2) • Men's preferences Women's preferences • (m1,w1) is a blocking pair
There is an O(n2) algorithm to determine • whether aninstance has a super-stable • matching, and to find one if one does • R.W. Irving, “Stable marriage and indifference”, Discrete Applied Maths, 1994 • The set of super-stable matchings forms a • distributive lattice • Open questions • Is there an efficient algorithm for finding a • weakly / strongly stable matching with the • minimum number of blocking pairs of the • super-stability type? • Is there an efficient algorithm for finding a • matching M of maximum cardinality such that • M is super-stable with respect to the matched • men and women? • If a super-stable matching does not exist, is • there a succinct certificate of this fact?
Stable marriage: unacceptable partners and ties (SMTI) • Assume that persons may express both • unacceptable partners and ties in their lists • Example instance: • m1: w4w1w3 w1: m4m1 m2 • m2: w2w1w4w2:(m3m2) m4 • m3: w2w4w3w3: m1m3 • m4: w1w4w2w4: m4m1 m3m2 • Men's preferences Women's preferences • Again, a matching can only contain mutually • acceptable (man,woman) pairs • A matching Mis weakly stable if there is no • blocking pair(m,w)M such that • m and w find each other acceptable • mis unmatched orstrictly prefers w to pM(m) • wis unmatched or strictly prefers m to pM(w)
Weakly stable matchings For a given SMTI instance, the weakly stable matchings could be of different sizes
Weakly stable matchings For a given SMTI instance, the weakly stable matchings could be of different sizes Example instance: m1: w4w1w3 w1: m4m1 m2m2: w2w1w4w2:(m3m2) m4 m3: w2w4w3w3: m1m3 m4: w1w4w2w4: m4m1 m3m2 Men's preferences Women's preferences M1={(m1,w4), (m2,w2), (m3,w3),(m4,w1)}is a weakly stable matching of size 4
Weakly stable matchings For a given SMTI instance, the weakly stable matchings could be of different sizes Example instance: m1: w4w1w3 w1: m4m1 m2 m2: w2w1w4w2:(m3m2) m4 m3: w2w4w3w3: m1m3 m4: w1w4w2w4: m4m1 m3m2 Men's preferences Women's preferences M1={(m1,w4), (m2,w2), (m3,w3),(m4,w1)}is a weakly stable matching of size 4 m1: w4w1w3 w1: m4m1 m2 m2: w2w1w4w2:(m3m2) m4 m3: w2w4w3w3: m1m3 m4: w1w4w2w4: m4m1 m3m2 Men's preferences Women's preferences M2={(m1,w4), (m3,w2),(m4,w1)}is a weakly stable matching of size 3
Maximum / minimum weakly stable matchings • Do efficient algorithms exist for finding maximum or minimum cardinality weakly stable matchings? • Unfortunately, this is unlikely • Each of the problems of finding a maximum or minimum weakly stable matching is NP-hard, • and the result is true even if: • 1. the ties occur in the preference lists of one sex • only, and • 2. any tie occurs at the tail of some person's • preference list, and • 3. any tie is of length 2 • K. Iwama, D. Manlove, S. Miyazaki & Y. Morita: “Stablemarriage with incomplete lists and ties”, Proc. ICALP ’99 • D.F. Manlove, R.W. Irving, K. Iwama, S. Miyazaki & Y. Morita: “Hard Variants of Stable Marriage”, Theoretical Computer Science, 2002
Approximation algorithms • An approximation algorithm with performance • guarantee c is a polynomial-time algorithm • that finds a solution within a factor of c from • optimal • Given an SMTI instance, any weakly stable • matching has size: • at least half the size of a maximum • cardinality weakly stable matching • at most twice the size of a minimum • cardinality weakly stable matching • So both problems admit an approximation • algorithm with performance guarantee 2 • D.F. Manlove, R.W. Irving, K. Iwama, S. Miyazaki & Y. Morita: “Hard Variants of Stable Marriage”, • Theoretical Computer Science, 2002
Approximation algorithms (continued) • Given an SMTI instance, any weakly stable • matching has size • at least the size of a maximum cardinality • weakly stable matching minus the number • of preference lists with ties • at most the size of a minimum cardinality weakly stable matching plus the number of preference lists with ties • The problem of finding a maximum • cardinality weakly stable matching is not • approximable within δ,for some δ>1 • M. Halldórsson,K. Iwama, S. Miyazaki & Y. Morita: “Inapproximability results on stable marriage problems”, Proc. LATIN 2002 • M. Halldórsson, R.W. Irving, K. Iwama, D.F. Manlove, S. Miyazaki, Y. Morita and S. Scott: “Approximability results for stable marriage problems with ties”, Submitted for publication, 2002
SMTI under strong stability and super-stability • Each of the definitions of a strongly stable • matching and a super-stable matching can be • extended to SMTI • All strongly stable (respectively super-stable) • matchings are of the same size, for a given • instance of SMTI • There are polynomial-time algorithms for • finding a strongly stable matching and / or a • super-stable matching, if they exist, given an • SMTI instance • D.F. Manlove, “Stable marriage with ties and unacceptable partners”, DCS Tech Report, 1999 • If an instance I of SMTI admits a strongly • stable matching M, then |M|⅔|M'|,where • M' is a weakly stable matching of maximum • cardinality in I • S. Scott, “On the size of strongly stable matchings”, manuscript, 2002
SMTI – further results and open problems • Constraint programming formulations of • SMTI under weak / strong / super-stability: • I.P. Gent and P. Prosser, “SAT encodings of the stable marriage problem with ties and incomplete lists”, Proc. SAT 2002 • I.P. Gent and P. Prosser, “An empirical study of the stable marriage problem with ties and incomplete lists”, Proc. ECAI 2002 Open problems • Is there an approximation algorithm with performance guarantee <2 for the problem of finding a maximum / minimum cardinality weakly stable matching, given an instance of SMTI? Possibly easier to consider restricted instances, e.g. involving • bounded length ties • ties on one side only • at most one tie per list
Hospitals/Residents problem (HR) • n residents r1,r2,…,rn • m hospitals h1,h2,…,hm • Hospital hihas capacityci • Each resident ranks a subset of the hospitals in • strict order of preference • Each hospital ranks its applicants in strict • orderof preference • rfinds hacceptable if h is on r’s preference list;rfinds hunacceptable otherwise (and vice • versa) • A matching M in an instance of HR is an • allocation of residents to hospitals such that: • 1) (r,h)M r,h find each other acceptable • 2) No resident receives more than one post • 3) No hospital exceeds its capacity
Hospitals/Residents problem: example r1:h2 h1 r2:h1 h2 Each hospital has 2 posts r3:h1 h3 r4:h2 h3h1:r1 r3r2r5 r6 r5:h2 h1h2:r2 r6r1r4 r5 r6:h1 h2h3:r4 r3 Resident preferences Hospital preferences
Hospitals/Residents problem: matching r1:h2h1 r2:h1h2 Each hospital has 2 posts r3:h1h3 r4:h2 h3h1:r1r3r2r5 r6 r5:h2 h1h2:r2r6r1r4 r5 r6:h1 h2h3:r4 r3 Resident preferences Hospital preferences M = {(r1, h1), (r2, h2), (r3, h3), (r5, h2), (r6, h1)} (size 5)
Hospitals/Residents problem: matching • r1:h2h1 • r2:h1h2 Each hospital has 2 posts • r3:h1h3 • r4:h2 h3h1:r1 r3r2r5 r6 • r5:h2 h1h2:r2r6r1r4 r5 • r6:h1 h2h3:r4 r3 • Resident preferences Hospital preferences • Matching M is stable if M admits no blocking pair • (r,h) is a blocking pair of matching M if: • 1) r, h find each other acceptable • and • 2) eitherr is unmatched in M • orr prefers h to his/her assigned hospital in M • and • 3) eitherh is undersubscribed in M • or h prefers r to its worst resident assigned in M
HR: unstable matching • r1:h2h1 • r2:h1h2 Each hospital has 2 posts • r3:h1h3 • r4:h2 h3h1:r1r3r2r5 r6 • r5:h2 h1h2:r2r6r1r4 r5 • r6:h1 h2h3:r4 r3 • Resident preferences Hospital preferences • Matching M is stable if M admits no blocking pair • (r,h) is a blocking pair of matching M if: • 1) r, h find each other acceptable • and • 2) eitherr is unmatched in M • orr prefers h to his/her assigned hospital in M • and • 3) eitherh is undersubscribed in M • or h prefers r to its worst resident assigned in M • Matching above is unstable as e.g. (r2,h1), (r4,h2) and (r4,h3) are blocking pairs
HR: unstable matching • r1:h2h1 • r2:h1h2 Each hospital has 2 posts • r3:h1h3 • r4:h2 h3h1:r1r3r2r5 r6 • r5:h2 h1h2:r2r6r1r4 r5 • r6:h1 h2h3:r4 r3 • Resident preferences Hospital preferences • Matching M is stable if M admits no blocking pair • (r,h) is a blocking pair of matching M if: • 1) r, h find each other acceptable • and • 2) eitherr is unmatched in M • orr prefers h to his/her assigned hospital in M • and • 3) eitherh is undersubscribed in M • or h prefers r to its worst resident assigned in M • Matching above is unstable as e.g. (r2,h1), (r4,h2) and (r4,h3) are blocking pairs
HR: unstable matching • r1:h2h1 • r2:h1h2 Each hospital has 2 posts • r3:h1h3 • r4:h2 h3h1:r1r3r2r5 r6 • r5:h2 h1h2:r2r6r1r4 r5 • r6:h1 h2h3:r4 r3 • Resident preferences Hospital preferences • Matching M is stable if M admits no blocking pair • (r,h) is a blocking pair of matching M if: • 1) r, h find each other acceptable • and • 2) eitherr is unmatched in M • orr prefers h to his/her assigned hospital in M • and • 3) eitherh is undersubscribed in M • or h prefers r to its worst resident assigned in M • Matching above is unstable as e.g. (r2,h1), (r4,h2) and (r4,h3) are blocking pairs
HR: stable matching • r1:h2 h1 • r2:h1 h2 Each hospital has 2 posts • r3:h1 h3 • r4:h2h3h1:r1 r3r2r5 r6 • r5:h2 h1h2:r2 r6r1r4 r5 • r6:h1h2h3:r4r3 • Resident preferences Hospital preferences • Matching M is stable if M admits no blocking pair • (r,h) is a blocking pair of matching Mif • 1)r, h find each other acceptable • and • 2) eitherr is unmatched in M • orr prefers h to his/her assigned hospital in M • and • 3) eitherh is undersubscribed in M • or h prefers r to its worst resident assigned in M • Example shows that, in a given stable matching, • one or more residents may be unmatched • one or more hospitals may be undersubscribed
HR: structure and algorithms • SM is a special case of HR • A stable matching always exists for a given • instance of HR • Such a matching may be found in linear time • D. Gusfield and R.W. Irving, “The Stable Marriage Problem: Structure and Algorithms”, MIT Press, 1989 This algorithm is at the heart of centralised matching schemes such as the NRMP and SPA • There may be more than one stable matching, • but: • All stable matchings have the same size • The same residents are assigned in all stable matchings • Any hospital that is undersubscribed in one stable matching is assigned exactly the sameresidents in all stable matchings (Rural Hospitals Theorem)
Hospitals/Residents problem with Ties (HRT) • Participants may wish to express ties in their • preference lists • SMTI is a special case of HRT • NP-hardness and inapproximability results for • SMTI under weak stability also apply to HRT • Each of the problems of finding a maximum • and minimum cardinality weakly stable • matching in HRT is approximable within 2 • There are polynomial-time algorithms for • finding a strongly stable matching and / or a • super-stable matching, if they exist, given an • HRT instance • The Rural Hospitals Theorem holds for HRT • under strong stability and super-stability • R.W. Irving, D.F. Manlove and S. Scott, “The Hospitals / Residents Problem with Ties”, Proc. SWAT 2000 • R.W. Irving, D.F. Manlove and S. Scott, “Strong stability in the Hospitals/Residents Problem”, Submitted for publication, 2002