A Grand Tour of Stable Matching Problems

Slides:



Advertisements
Similar presentations
Strong Stability in the Hospitals/Residents Problem Robert W. Irving, David F. Manlove and Sandy Scott University of Glasgow Department of Computing Science.
Advertisements

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
An empirical study of the stable marriage problem with ties and incomplete lists (SMTI) Ian Gent & Patrick Prosser.
Blah blah blah. Zoes shark Thanks to the conference artist Phoebe.
LAW February A 5/3 approximation algorithm for a hard case of stable marriage Rob Irving Computing Science Department University of Glasgow (joint.
Matching Theory.
Matching problems Toby Walsh NICTA and UNSW. Motivation Agents may express preferences for issues other than a collective decision  Preferences for a.
Specialised N-ary Constraint for the Stable Marriage Problem By Chris Unsworth and Patrick Prosser.
Joint work with Rob Irving
Computability and Complexity 23-1 Computability and Complexity Andrei Bulatov Search and Optimization.
1 Polynomial Church-Turing thesis A decision problem can be solved in polynomial time by using a reasonable sequential model of computation if and only.
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.
Pelvic floor Specialised Constraints for Stable Matching Problems Contact details: 17 Lilybank Gardens Glasgow G12 8QQ The Problem.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
1 The Stable Marriage Problem Algorithms and Networks 2014/2015 Hans L. Bodlaender Johan M. M. van Rooij.
Specialised Binary Constraint for the Stable Marriage Problem with Ties and incomplete preference lists By Chris Unsworth and Patrick Prosser.
1 The Theory of NP-Completeness 2 Cook ’ s Theorem (1971) Prof. Cook Toronto U. Receiving Turing Award (1982) Discussing difficult problems: worst case.
Algorithms for Student-Project Allocation
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
The Stable Marriage Problem
1 “Almost stable” matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of.
Chapter 15 P, NP, and Cook’s Theorem. 2 Computability Theory n Establishes whether decision problems are (only) theoretically decidable, i.e., decides.
CSCI 256 Data Structures and Algorithm Analysis Lecture 2 Some slides by Kevin Wayne copyright 2005, Pearson Addison Wesley all rights reserved, and some.
Market Design and Analysis Lecture 2 Lecturer: Ning Chen ( 陈宁 )
Market Design and Analysis Lecture 1 Lecturer: Ning Chen ( 陈宁 )
The NP class. NP-completeness Lecture2. The NP-class The NP class is a class that contains all the problems that can be decided by a Non-Deterministic.
The NP class. NP-completeness
More NP-Complete and NP-hard Problems
Chapter 10 NP-Complete Problems.
Centralised matching schemes
Matching Boys Girls A B C D E
Cybernetica AS & Tartu University
Stable Matching.
Chapter 1 Introduction: Some Representative Problems
Stable Marriage Problem
Introduction to the Design and Analysis of Algorithms
Chapter 10 Iterative Improvement
Maximum Flow - Best algorithms
CSE 421: Introduction to Algorithms
ICS 353: Design and Analysis of Algorithms
Chapter 6. Large Scale Optimization
Integer Programming (정수계획법)
“Almost stable” matchings in the Roommates problem
CSE 421: Introduction to Algorithms
Linear Programming Duality, Reductions, and Bipartite Matching
1.1 A First Problem: Stable Matching
Discrete Math for CS CMPSC 360 LECTURE 9 Last time: Strong induction
Chapter 11 Limitations of Algorithm Power
NP-Complete Problems.
Blah blah blah.
Chapter 1 Introduction: Some Representative Problems
Popularity in the Capacitated House Allocation Problem
Integer Programming (정수계획법)
Piyush Kumar (Lecture 3: Stable Marriage)
15th Scandinavian Workshop on Algorithm Theory
The Selection Problem.
CSC 421: Algorithm Design & Analysis
Chapter 6. Large Scale Optimization
Complexity Theory: Foundations
Presentation transcript:

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 q ranks all members of the opposite sex in strict order A matching M is a set of n disjoint (man,woman) pairs Let pM(q) denote person q’s partner in M A blocking pair of matching M is a (man,woman) pair (m,w)M such that: m prefers w to pM(m) w prefers m to pM(w) Matching M is stable if M admits no blocking pair

Stable marriage: example instance m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences

Stable marriage: example instance m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M={(m1,w1), (m2,w2), (m3,w4) ,(m4,w3)}

Stable marriage: example instance m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M={(m1,w1), (m2,w2), (m3,w4) ,(m4,w3)} (m3,w2) is a blocking pair, so M is not stable

Stable marriage: example instance m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M={(m1,w1), (m2,w2), (m3,w4) ,(m4,w3)} (m3,w2) is a blocking pair, so M is not stable m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M={(m1,w4), (m2,w3), (m3,w2) ,(m4,w1)} is 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 q appears on p’s list, then p finds q acceptable, otherwise p finds q unacceptable Now a matching M is a set of  n disjoint (man,woman) pairs such that (m,w) M only if: m finds w acceptable w finds 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 m is unmatched in M or prefers w to pM(m) w is unmatched in M or prefers m to pM(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 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences

Unacceptable partners: example instance m1: w4 w1 w3 w1: m4 m1 m2 m2: w2 w1 w4 w2: m3 m2 m4 m3: w2 w4 w3 w3: m1 m3 m4: w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences

Unacceptable partners: example instance m1: w4 w1 w3 w1: m4 m1 m2 m2: w2 w1 w4 w2: m3 m2 m4 m3: w2 w4 w3 w3: m1 m3 m4: w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M={(m1,w4), (m2,w2), (m4,w1)} (m3,w2) and (m3,w3) are blocking pairs, so M is not stable m1: w4 w1 w3 w1: m4 m1 m2 m2: w2 w1 w4 w2: m3 m2 m4 m3: w2 w4 w3 w3: m1 m3 m4: w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M={(m1,w4), (m3,w2), (m4,w1)} is 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 revised Gale/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: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences Three possible definitions of stability A matching M is weakly stable if there is no blocking pair (m,w)M such that m strictly prefers w to pM(m) w strictly prefers m to pM(w)

M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable Weak stability m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable

M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable Weak stability m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 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:

M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable Weak stability m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 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

M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable Weak stability m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 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 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4

M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable Weak stability m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 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 m2: w2 w3 w1 w4 w2: m1 m3 m2 m4

M={(m1,w4), (m2,w3), (m3,w2),(m4,w1)} is weakly stable Weak stability m1: w4 w1 w2 w3 w1: m4 m1 m3 m2 m2: w2 w3 w1 w4 w2: m1 (m3 m2) m4 m3: w2 w4 w3 w1 w3: m1 m2 m3 m4 m4: w3 w1 w4 w2 w4: m4 m1 m3 m2 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 M is then weakly stable in I 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 M is strongly stable if there is no blocking pair (x,y)M such that x strictly prefers y to pM(x) y strictly 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: w1 w2 w1:(m1 m2) m2: w1 w2 w2:(m1 m2) Men's preferences Women's preferences

Strong stability Assume we are given an instance of SMT A matching M is strongly stable if there is no blocking pair (x,y)M such that x strictly prefers y to pM(x) y strictly 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: w1 w2 w1:(m1 m2) m2: w1 w2 w2:(m1 m2) Men's preferences Women's preferences

Strong stability Assume we are given an instance of SMT A matching M is strongly stable if there is no blocking pair (x,y)M such that x strictly prefers y to pM(x) y strictly 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: w1 w2 w1:(m1 m2) m2: w1 w2 w2:(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 M is strongly stable if there is no blocking pair (x,y)M such that x strictly prefers y to pM(x) y strictly 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: w1 w2 w1:(m1 m2) m2: w1 w2 w2:(m1 m2) Men's preferences Women's preferences

Strong stability Assume we are given an instance of SMT A matching M is strongly stable if there is no blocking pair (x,y)M such that x strictly prefers y to pM(x) y strictly 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: w1 w2 w1:(m1 m2) m2: w1 w2 w2:(m1 m2) Men's preferences Women's preferences (m1,w1) is a blocking pair

Assume we are given an instance of SMT Strong stability Assume we are given an instance of SMT A matching M is strongly stable if there is no blocking pair (x,y)M such that x strictly prefers y to pM(x) y strictly 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: w1 w2 w1:(m1 m2) m2: w1 w2 w2:(m1 m2) Men's preferences Women's preferences There is an O(n4) algorithm to determine whether an instance 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? 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 M is 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 w strictly prefers m to pM(w) or is 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 M is 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 w strictly prefers m to pM(w) or is 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 M is 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 w strictly prefers m to pM(w) or is 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 M is 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 w strictly prefers m to pM(w) or is 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 an instance 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? 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: w4 w1 w3 w1: m4 m1 m2 m2: w2 w1 w4 w2:(m3 m2) m4 m3: w2 w4 w3 w3: m1 m3 m4: w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences Again, a matching can only contain mutually acceptable (man,woman) pairs A matching M is weakly stable if there is no blocking pair (m,w)M such that m and w find each other acceptable m is unmatched or strictly prefers w to pM(m) w is 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: w4 w1 w3 w1: m4 m1 m2 m2: w2 w1 w4 w2:(m3 m2) m4 m3: w2 w4 w3 w3: m1 m3 m4: w1 w4 w2 w4: m4 m1 m3 m2 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: w4 w1 w3 w1: m4 m1 m2 m2: w2 w1 w4 w2:(m3 m2) m4 m3: w2 w4 w3 w3: m1 m3 m4: w1 w4 w2 w4: m4 m1 m3 m2 Men's preferences Women's preferences M1={(m1,w4), (m2,w2), (m3,w3),(m4,w1)} is a weakly stable matching of size 4 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: “Stable marriage 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 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 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 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 hi has capacity ci Each resident ranks a subset of the hospitals in strict order of preference Each hospital ranks its applicants in strict order of preference r finds h acceptable if h is on r’s preference list; r finds h unacceptable 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 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: r4 r3 Resident preferences Hospital preferences

Hospitals/Residents problem: matching r1: h2 h1 r2: h1 h2 Each hospital has 2 posts r3: h1 h3 r4: h2 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: r4 r3 Resident preferences Hospital preferences M = {(r1, h1), (r2, h2), (r3, h3), (r5, h2), (r6, h1)} (size 5)

Hospitals/Residents problem: matching r1: h2 h1 r2: h1 h2 Each hospital has 2 posts r3: h1 h3 r4: h2 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: 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) either r is unmatched in M or r prefers h to his/her assigned hospital in M 3) either h is undersubscribed in M or h prefers r to its worst resident assigned in M

HR: unstable matching r1: h2 h1 r2: h1 h2 Each hospital has 2 posts r4: h2 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: 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) either r is unmatched in M or r prefers h to his/her assigned hospital in M 3) either h 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: h2 h1 r2: h1 h2 Each hospital has 2 posts r4: h2 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: 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) either r is unmatched in M or r prefers h to his/her assigned hospital in M 3) either h 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: h2 h1 r2: h1 h2 Each hospital has 2 posts r4: h2 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: 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) either r is unmatched in M or r prefers h to his/her assigned hospital in M 3) either h 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 r4: h2 h3 h1: r1 r3 r2 r5 r6 r5: h2 h1 h2: r2 r6 r1 r4 r5 r6: h1 h2 h3: 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) either r is unmatched in M or r prefers h to his/her assigned hospital in M 3) either h 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 same residents 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

Stable Roommates (SR) Input: 2n persons; each person ranks all 2n-1 other persons in strict order Output: a stable matching Definitions A matching is a set of n disjoint pairs of persons A blocking pair of a matching M is a pair of persons {p,q}M such that: p prefers q to his partner in M, and q prefers p to his partner in M A matching is stable if it admits no blocking pair

Stable Roommates (SR) Input: 2n persons; each person ranks all 2n-1 other persons in strict order Output: a stable matching Definitions A matching is a set of n disjoint pairs of persons A blocking pair of a matching M is a pair of persons {p,q}M such that: p prefers q to his partner in M, and q prefers p to his partner in M A matching is stable if it admits no blocking pair Example SR instance: 1: 3 2 4 2: 1 3 4 3: 2 1 4 4: 1 2 3

Stable Roommates (SR) Input: 2n persons; each person ranks all 2n-1 other persons in strict order Output: a stable matching Definitions A matching is a set of n disjoint pairs of persons A blocking pair of a matching M is a pair of persons {p,q}M such that: p prefers q to his partner in M, and q prefers p to his partner in M A matching is stable if it admits no blocking pair Example SR instance: 1: 3 2 4 2: 1 3 4 3: 2 1 4 4: 1 2 3

Stable Roommates (SR) Input: 2n persons; each person ranks all 2n-1 other persons in strict order Output: a stable matching Definitions A matching is a set of n disjoint pairs of persons A blocking pair of a matching M is a pair of persons {p,q}M such that: p prefers q to his partner in M, and q prefers p to his partner in M A matching is stable if it admits no blocking pair Example SR instance: 1: 3 2 4 2: 1 3 4 3: 2 1 4 4: 1 2 3 The matching is not stable as {1,3} blocks.

Stable Roommates (SR) Input: 2n persons; each person ranks all 2n-1 other persons in strict order Output: a stable matching Definitions A matching is a set of n disjoint pairs of persons A blocking pair of a matching M is a pair of persons {p,q}M such that: p prefers q to his partner in M, and q prefers p to his partner in M A matching is stable if it admits no blocking pair Example SR instance: 1: 3 2 4 2: 1 3 4 3: 2 1 4 4: 1 2 3 The matching is not stable as {1,3} blocks. This instance does not admit a stable matching!

Stable Roommates: algorithmic results SM is a special case of SR There is a linear-time algorithm for finding a stable matching if one exists, given an SR instance R.W. Irving “An efficient algorithm for the ‘Stable Roommates’ Problem”, Journal of Algorithms, 1985 If preference lists have ties, we obtain an instance of SRT (Stable Roommates with Ties) The problem of deciding whether a given instance of SRT admits a weakly stable matching is NP-complete, even if: each tie has length 2 there is at most one tie per list E. Ronn, “NP-complete stable matching problems”, Journal of Algorithms, 1990 R.W. Irving and D.F. Manlove, “The Stable Roommates Problem with Ties”, Journal of Algorithms, 2002

SR & SRT: further results and open problems There is a linear-time algorithm for finding a super-stable matching if one exists, given an SRT instance R.W. Irving and D.F. Manlove, “The Stable Roommates Problem with Ties”, Journal of Algorithms, 2002 Open problems Complexity of SRT under strong stability? Is there a polynomial-time algorithm to find a matching with the minimum number of blocking pairs, given an instance of SR? Is there a polynomial reduction from SR to SM, or from SR to SMT?

Stable Fixtures Problem (SF) Choose a schedule of fixtures based on teams having preferences over each other Two given teams can play each other at most once Each team i has a capacity ci , indicating the maximum number of fixtures it can play A fixture allocation A is a set of unordered pairs of teams {i, j} such that, for each i, team i is scheduled to play at most ci fixtures Example SF instance: team capacity preferences 1: 2 2 3 4 2: 2 1 3 4 3: 2 1 2 4 4: 2 1 2 3

Stable Fixtures Problem (SF) Choose a schedule of fixtures based on teams having preferences over each other Two given teams can play each other at most once Each team i has a capacity ci , indicating the maximum number of fixtures it can play A fixture allocation A is a set of unordered pairs of teams {i, j} such that, for each i, team i is scheduled to play at most ci fixtures Example SF instance: team capacity preferences 1: 2 2 3 4 2: 2 1 3 4 3: 2 1 2 4 4: 2 1 2 3 The above fixture allocation is: {1, 2}, {1, 4}, {2, 3}, {3, 4}

A blocking pair of a fixture allocation A is a pair of teams {i , j}A such that: i is assigned fewer than ci teams in A or i prefers j to at least one of its assignees and j is assigned fewer than cj teams in A or j prefers i to at least one of its assignees A fixture allocation is stable if it admits no blocking pair Example SF instance: team capacity preferences 1: 2 2 3 4 2: 2 1 3 4 3: 2 1 2 4 4: 2 1 2 3 The above fixture allocation is not stable as {1,3} is a blocking pair

team capacity preferences 1: 2 2 3 4 2: 2 1 3 4 3: 2 1 2 4 4: 2 1 2 3 Example SF instance: team capacity preferences 1: 2 2 3 4 2: 2 1 3 4 3: 2 1 2 4 4: 2 1 2 3 The above fixture allocation is stable Each of SM, HR and SR is a special case of SF There is an efficient algorithm to find a stable fixtures allocation, if one exists, given an instance of SF R.W. Irving and S. Scott, “The Stable Fixtures Problem”, submitted for publication This algorithm has been extended to cover Stable Fixtures with Ties (SFT) under super- stability Open problem Complexity of SFT under strong stability?

Ties – super-stability Summary of complexity results for stable matching problems with ties Problem No ties Ties – weak stability strong stability Ties – super-stability SMTI P NPC (max) HRT SRT NPC ? SFT SMTI – Stable Marriage with Ties and Incomplete Lists HRT – Hospitals / Residents with Ties SRT – Stable Roommates with Ties SFT – Stable Fixtures with Ties P – problem of finding a relevant matching if one exists is polynomial-time solvable NPC – problem of deciding whether relevant matching exists is NP-complete