62
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

A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

  • Upload
    kiele

  • View
    45

  • Download
    4

Embed Size (px)

DESCRIPTION

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: - PowerPoint PPT Presentation

Citation preview

Page 1: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

A Grand Tour ofStable Matching Problems

Progress and Challenges

David Manlove

University of GlasgowDepartment of Computing Science

Supported by EPSRC grant GR/R84597/01and Nuffield Foundation Award NUF-NAL-02

Page 2: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 3: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 4: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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)}

Page 5: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 6: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 7: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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.

Page 8: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 9: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 10: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 11: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 12: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 13: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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)

Page 14: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 15: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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:

Page 16: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

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

Page 17: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

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

Page 18: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

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

Page 19: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

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 same weakly stable matching as above

Page 20: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 21: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 22: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 23: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 24: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 25: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 26: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

• 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?

Page 27: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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 indifferent between them

• A super-stable matching is strongly stable, and a strongly stable matching is weakly stable

Page 28: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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 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

Page 29: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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 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

Page 30: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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 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

Page 31: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

• 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?

• 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?

Page 32: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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)

Page 33: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Weakly stable matchings

For a given SMTI instance, the weakly stable matchings could be of different sizes

Page 34: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 35: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

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

M2={(m1,w4), (m3,w2),(m4,w1)} is a weakly stable matching of size 3

Page 36: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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, and2. any tie occurs at the tail of some person's preference list, and3. 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

Page 37: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 38: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 39: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 40: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 41: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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 instrict 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 acceptable2) No resident receives more than one post3) No hospital exceeds its capacity

Page 42: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Hospitals/Residents problem: example

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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

Page 43: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Hospitals/Residents problem: matching

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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)

Page 44: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Hospitals/Residents problem: matching

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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 acceptableand2) either r is unmatched in M

or r prefers h to his/her assigned hospital in Mand3) either h is undersubscribed in M

or h prefers r to its worst resident assigned in M

Page 45: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

HR: unstable matching

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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 acceptableand2) either r is unmatched in M

or r prefers h to his/her assigned hospital in Mand3) 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

Page 46: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

HR: unstable matching

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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 acceptableand2) either r is unmatched in M

or r prefers h to his/her assigned hospital in Mand3) 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

Page 47: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

HR: unstable matching

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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 acceptableand2) either r is unmatched in M

or r prefers h to his/her assigned hospital in Mand3) 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

Page 48: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

HR: stable matching

r1: h2 h1

r2: h1 h2 Each hospital has 2 postsr3: 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 acceptableand2) either r is unmatched in M

or r prefers h to his/her assigned hospital in Mand3) 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

Page 49: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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)

Page 50: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 51: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Stable Roommates (SR)

Input: 2n persons; each person ranks all 2n-1other 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

Page 52: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Stable Roommates (SR)

Input: 2n persons; each person ranks all 2n-1other 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 42: 1 3 43: 2 1 44: 1 2 3

Page 53: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Stable Roommates (SR)

Input: 2n persons; each person ranks all 2n-1other 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 42: 1 3 43: 2 1 44: 1 2 3

Page 54: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Stable Roommates (SR)

Input: 2n persons; each person ranks all 2n-1other 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 42: 1 3 43: 2 1 44: 1 2 3

The matching is not stable as {1,3} blocks.

Page 55: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Stable Roommates (SR)

Input: 2n persons; each person ranks all 2n-1other 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 42: 1 3 43: 2 1 44: 1 2 3

The matching is not stable as {1,3} blocks.

This instance does not admit a stable matching!

Page 56: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 57: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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?

Page 58: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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

Page 59: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

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}

Page 60: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

• 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 noblocking pair

• Example SF instance:

team capacity preferences1: 2 2 3 4

2: 2 1 3 4 3: 2 1 2 44: 2 1 2 3

• The above fixture allocation is not stable as {1,3} is a blocking pair

Page 61: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

• Example SF instance:

team capacity preferences1: 2 2 3 4

2: 2 1 3 4 3: 2 1 2 44: 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?

Page 62: A Grand Tour of Stable Matching Problems Progress and Challenges D avid Manlove

Problem No tiesTies – weak

stability

Ties –strong

stability

Ties – super-

stability

SMTI P NPC (max) P P

HRT P NPC (max) P P

SRT P NPC ? P

SFT P NPC ? P

Summary of complexity results for stable matching problems with ties

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