“Almost stable” matchings in the Roommates problem

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.
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.
LAW February A 5/3 approximation algorithm for a hard case of stable marriage Rob Irving Computing Science Department University of Glasgow (joint.
Minimum Clique Partition Problem with Constrained Weight for Interval Graphs Jianping Li Department of Mathematics Yunnan University Jointed by M.X. Chen.
Lecture 24 Coping with NPC and Unsolvable problems. When a problem is unsolvable, that's generally very bad news: it means there is no general algorithm.
Joint work with Rob Irving
The Theory of NP-Completeness
Parallel Scheduling of Complex DAGs under Uncertainty Grzegorz Malewicz.
Combinatorial Algorithms
Complexity 16-1 Complexity Andrei Bulatov Non-Approximability.
Introduction to Approximation Algorithms Lecture 12: Mar 1.
Popular Matching David Abraham Carnegie Mellon University Kavitha Telikepalli Max-Planck-Institut für Informatik Kurt Mehlhorn Rob Irving University of.
NP-complete and NP-hard problems. Decision problems vs. optimization problems The problems we are trying to solve are basically of two kinds. In decision.
1 Introduction to Approximation Algorithms Lecture 15: Mar 5.
The Hardness of Cache Conscious Data Placement Erez Petrank, Technion Dror Rawitz, Caesarea Rothschild Institute Appeared in 29 th ACM Conference on Principles.
Strong Stability in the Hospitals/Residents Problem Robert W. Irving, David F. Manlove and Sandy Scott University of Glasgow Department of Computing Science.
CSCE350 Algorithms and Data Structure
Approximation Algorithms Department of Mathematics and Computer Science Drexel University.
L3 #1 The Hospitals / Residents Problem and Some Extensions David Manlove University of Glasgow Department of Computing Science Supported by EPSRC grant.
Kernel Bounds for Structural Parameterizations of Pathwidth Bart M. P. Jansen Joint work with Hans L. Bodlaender & Stefan Kratsch July 6th 2012, SWAT 2012,
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
1 Introduction to Approximation Algorithms. 2 NP-completeness Do your best then.
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.
Chapter 15 Approximation Algorithm Introduction Basic Definition Difference Bounds Relative Performance Bounds Polynomial approximation Schemes Fully Polynomial.
Approximation Algorithms
Princeton University COS 423 Theory of Algorithms Spring 2001 Kevin Wayne Approximation Algorithms These lecture slides are adapted from CLRS.
Complexity of Determining Nonemptiness of the Core Vincent Conitzer, Tuomas Sandholm Computer Science Department Carnegie Mellon University.
Algorithms for Student-Project Allocation
Approximation Algorithms for TSP Tsvi Kopelowitz 1.
Computing Branchwidth via Efficient Triangulations and Blocks Authors: F.V. Fomin, F. Mazoit, I. Todinca Presented by: Elif Kolotoglu, ISE, Texas A&M University.
1 “Almost stable” matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
MCS 312: NP Completeness and Approximation Algorithms Instructor Neelima Gupta
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.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
Hongyu Liang Institute for Theoretical Computer Science Tsinghua University, Beijing, China The Algorithmic Complexity.
Approximation algorithms
ICS 353: Design and Analysis of Algorithms NP-Complete Problems King Fahd University of Petroleum & Minerals Information & Computer Science Department.
The NP class. NP-completeness
More NP-Complete and NP-hard Problems
Chapter 10 NP-Complete Problems.
Centralised matching schemes
Introduction to Approximation Algorithms
Mathematical Foundations of AI
Complexity of Determining Nonemptiness of the Core
Optimization problems such as
Bipartite Matching Lecture 8: Oct 7.
NP-Completeness Yin Tat Lee
Computability and Complexity
Analysis and design of algorithm
Approximation Algorithms for TSP
ICS 353: Design and Analysis of Algorithms
Parameterised Complexity
CSE 421: Introduction to Algorithms
Linear Programming Duality, Reductions, and Bipartite Matching
Chapter 11 Limitations of Algorithm Power
Popularity in the Capacitated House Allocation Problem
NP-Completeness Yin Tat Lee
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
A Grand Tour of Stable Matching Problems
CSE 589 Applied Algorithms Spring 1999
15th Scandinavian Workshop on Algorithm Theory
Relations: The Second Time Around
Lecture 24 Vertex Cover and Hamiltonian Cycle
Complexity Theory: Foundations
Presentation transcript:

“Almost stable” matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of Computer Science and Information Theory Budapest University of Technology and Economics, Hungary David Manlove Department of Computing Science University of Glasgow, UK

Stable Roommates Problem (SR) D Gale and L Shapley, “College Admissions and the Stability of Marriage”, American Mathematical Monthly, 1962 Input: 2n agents; each agent ranks all 2n-1 other agents in strict order Output: a stable matching A matching is a set of n disjoint pairs of agents A blocking pair of a matching M is a pair of agents {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) Example SR instance I1: 1: 3 2 4 2: 4 3 1 2: 4 3 1 3: 2 1 4 4: 1 3 2

Example SR Instance (1) Example SR instance I1: 1: 3 2 4 2: 4 3 1 The matching is not stable as {1,3} blocks. Example SR instance I1: 1: 3 2 4 2: 4 3 1 3: 2 1 4 4: 1 3 2 Stable matching in I1: 1: 3 2 4 2: 4 3 1 3: 2 1 4 4: 1 3 2

Example SR Instance (2) Example SR instance I2: 1: 2 3 4 2: 3 1 4 2: 3 1 4 3: 1 2 4 4: 1 2 3

Example SR Instance (2) Example SR instance I2: 1: 2 3 4 2: 3 1 4 2: 3 1 4 3: 1 2 4 4: 1 2 3 1: 2 3 4 2: 3 1 4 3: 1 2 4 4: 1 2 3 1: 2 3 4 2: 3 1 4 3: 1 2 4 4: 1 2 3 The three matchings containing the pairs {1,2}, {1,3}, {1,4} are blocked by the pairs {2,3}, {1,2}, {1,3} respectively.  instance I2 has no stable matching.

Application: kidney exchange

Application: kidney exchange

Application: kidney exchange A. Roth, T. Sönmez, U. Ünver, Pairwise Kidney Exchange, Journal of Economic Theory, to appear p2 p1

Application: kidney exchange A. Roth, T. Sönmez, U. Ünver, Pairwise Kidney Exchange, Journal of Economic Theory, to appear p2 p1 Create a vertex for each donor- patient pair Edges represent compatibility Preference lists can take into account degrees of compatibility (d1 , p1) (d2 , p2)

Efficient algorithm for SR Knuth (1976): is there an efficient algorithm for deciding whether there exists a stable matching, given an instance of SR? Irving (1985): “An efficient algorithm for the ‘Stable Roommates’ Problem”, Journal of Algorithms, 6:577-595 given an instance of SR, decides whether a stable matching exists; if so, finds one Algorithm is in two phases Phase 1: similar to GS algorithm for the Stable Marriage problem Phase 2: elimination of “rotations”

Empirical results Instance size 4 20 50 100 200 500 1000 2000 4000 6000 8000 % soluble 96.3 82.9 73.1 64.3 55.1 45.1 38.8 32.2 27.8 25.0 23.6 Experiments based on taking average of s1 , s2 , s3 where sj is number of soluble instances among 10,000 randomly generated instances, each of given size 2n Results due to Colin Sng % soluble Instance size

Coping with insoluble SR instances: 1. Coalition Formation Games Generalisation of SR Partition agents into sets of size 1 Notions of B-preferences / W-preferences Cechlárová and Hajduková, 1999 Cechlárová and Romero-Medina, 2001 Cechlárová and Hajduková, 2002 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2 Example: insoluble SR instance {1,3,6}, {2,4,5} is a partition of the agents

Coalition Formation Games: B-preferences Given a partition P of the agents, define P(i) to be the set containing agent i Given a set of agents S, define best(i,S) to be the best agent in S according to i ’s preferences A set of agents C is said to be a blocking coalition of P if i prefers best(i,C) to best(i,P(i)) for all iC {1,3,6}, {2,4,5} is a partition of the agents {1,2,3} is a blocking coalition 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2

Coalition Formation Games: B-stability A partition P is B-stable if it admits no blocking coalition {1,5,6}, {2,3,4} is a B-stable partition of the agents 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2 Every CFG instance admits a B-stable partition Such a partition may be found in linear time Also results for W-stability

Coping with insoluble SR instances: 2. Stable partitions Tan 1991 (Journal of Algorithms) Generalisation of a stable matching Permutation  of the agents such that: each agent i does not prefer  -1(i) to (i) if i prefers j to -1(i) then j does not prefer i to  -1(j) Example: =1,4,6, 2,3,5 (i) shown in green  -1(i) shown in red 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2 E.g. 4 prefers 5 to  -1(4)=1 5 prefers  -1(5)=3 to 4

Properties of stable partitions Every SR instance admits a stable partition A stable partition can be found in linear time There may be more than one stable partition, but: any two stable partitions contain exactly the same odd cycles An SR instance I is insoluble if and only if a stable partition in I contains an odd cycle Any stable partition containing only even cycles can be decomposed into a stable matching Tan 1991 (Journal of Algorithms) A stable partition can be used to find a maximum matching such that the matched pairs are stable within themselves Tan 1991 (International Journal of Computer Mathematics)

Maximum matching where the matched pairs are stable within themselves Given a stable partition  Delete a single agent from each odd cycle Decompose each even cycles into pairs 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2 Example =1,4,6, 2,3,5

Maximum matching where the matched pairs are stable within themselves Given a stable partition  Delete a single agent from each odd cycle Decompose each even cycles into pairs Example 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2 =1,4,6, 2,5

Maximum matching where the matched pairs are stable within themselves Given a stable partition  Delete a single agent from each odd cycle Decompose each even cycles into pairs Example 1: 2 5 4 3 6 2: 3 6 5 1 4 3: 4 5 2 6 1 4: 2 6 5 1 3 5: 6 2 3 4 1 6: 3 1 4 5 2 =1,4, 2,5

Maximum matching where the matched pairs are stable within themselves Given a stable partition  Delete a single agent from each odd cycle Decompose each even cycles into pairs Example 1: 2 5 4 3 6 2: 5 1 4 4: 2 5 1 3 5: 2 4 1 Matching M={{1,4},{2,5}} is stable in the smaller instance A maximum matching such that the matched pairs are stable within themselves can be constructed in linear time from a stable partition

Coping with insoluble SR instances: 3. “Almost stable” matchings The following instance I3 of SR is insoluble 1: 2 3 5 6 4 2: 3 1 6 4 5 3: 1 2 4 5 6 4: 5 6 2 3 1 5: 6 4 3 1 2 6: 4 5 1 2 3 Stable partition 1,2,3, 4,5,6 Let bp(M) denote the set of blocking pairs of matching M 1: 2 3 5 6 4 2: 3 1 6 4 5 3: 1 2 4 5 6 4: 5 6 2 3 1 5: 6 4 3 1 2 6: 4 5 1 2 3 |bp(M2)|=12 1: 2 3 5 6 4 2: 3 1 6 4 5 3: 1 2 4 5 6 4: 5 6 2 3 1 5: 6 4 3 1 2 6: 4 5 1 2 3 |bp(M1)|=2

Coping with insoluble SR instances: Method 2 vs method 3 1: 2 3 4 2: 3 1 4 3: 1 2 4 4: 1 2 3 Recall the insoluble instance I2 of SR: Tan’s algorithm for method 2 constructs a matching of size 1, e.g. M1={{1,2}} Any such matching M has |bp(M)|2 1: 2 3 4 2: 3 1 4 3: 1 2 4 4: 1 2 3 Method 3: consider e.g. M2={{1,2},{3,4}} |bp(M2)|=1 1: 2 3 4 2: 3 1 4 3: 1 2 4 4: 1 2 3 So |M2|=2|M1| and |bp(M2)|=½|bp(M1)|

Hardness results for SR Let I be an SR instance Define bp(I)=min{|bp(M)|: M is a matching in I} Define MIN-BP-SR to be problem of computing bp(I), given an SR instance I Theorem 1: MIN-BP-SR is not approximable within n½-, for any  > 0, unless P=NP Define EXACT-BP-SR to be problem of deciding whether I admits a matching M such that |bp(M)|=K, given an integer K Theorem 2: EXACT-BP-SR is NP-complete

Outline of the proof Using a “gap introducing” reduction from EXACT-MM Given a cubic graph G=(V,E) and an integer K, decide whether G admits a maximal matching of size K EXACT-MM is NP-complete, by transformation from MIN-MM (Minimization version), which is NP-complete for cubic graphs Horton and Kilakos, 1993 Create an instance I of SR with n agents If G admits a maximal matching of size K then I admits a matching with p blocking pairs, where p=|V| If G admits no maximal matching of size K, then bp(I) > p n½-

Preference lists with ties Let I be an instance of SR with ties Problem of deciding whether I admits a stable matching is NP-complete Ronn, Journal of Algorithms, 1990 Irving and Manlove, Journal of Algorithms, 2002 Can define MIN-BP-SRT analogously to MIN-BP-SR Theorem 3: MIN-BP-SRT is not approximable within n1-, for any  > 0, unless P=NP, even if each tie has length 2 and there is at most one tie per list Define EXACT-BP-SRT analogously to EXACT-BP-SR Theorem 4: EXACT-BP-SRT is NP-complete for each fixed K  0

Polynomial-time algorithm Theorem 5: EXACT-BP-SR is solvable in polynomial time if K is fixed Algorithm also works for possibly incomplete preference lists Given an SR instance I where m is the total length of the preference lists, O(mK+1) algorithm finds a matching M where |bp(M)|=K or reports that none exists Idea: For each subset B of agent pairs {ai, aj} where |B|=K Try to construct a matching M in I such that bp(M)=B Step 1: O(mK) subsets to consider Step 2: O(m) time

Outline of the algorithm Let {ai, aj}B where |B|=K Preference list of ai : … … ak … … aj … … If {ai, aj}bp(M) then {ai, ak}M Delete {ai, ak} but must not introduce new blocking pairs Preference list of ak : … … ai … … aj … … If {ai, ak} B then {aj, ak}M Delete {ak, aj} and mark ak Check whether there is a stable matching M in reduced SR instance such that all marked agents are matched in M

Interpolation of |bp(M)| Clearly |bp(M)|½(2n)(2n-2)=2n(n-1) for any matching M Is |bp(M)| an interpolating invariant? That is, given an SR instance I, if I admits matchings M1, M2 such that |bp(M1) |=k and |bp(M2)|=k+2, is there a matching M3 in I such that |bp(M3)|=k+1 ? Not in general! 1: 2 3 5 6 4 2: 3 1 6 4 5 3: 1 2 4 5 6 4: 5 6 2 3 1 5: 6 4 3 1 2 6: 4 5 1 2 3 Instance I3 admits 15 matchings: 9 admit 2 blocking pairs 2 admit 6 blocking pairs 3 admit 8 blocking pairs 1 admits 12 blocking pairs

Upper and lower bounds for bp(I) As already observed, bp(I)2n(n-1) Let  be a stable partition in an SR instance I Let C denote the number of odd cycles of length 3 in  Upper bound: bp(I)  2C(n-1) Lower bound: bp(I)  C/2

kn = max{bp(I) : I is an SR instance with 2n agents} Open problems Is there an approximation algorithm for MIN-BP-SR that has performance guarantee o(n2)? An upper bound is 2C(n-1) Are the upper/lower bounds for bp(I) tight? Determine values of kn and obtain a characterisation of In such that In is an SR instance with 2n agents in which bp(In)=kn and kn = max{bp(I) : I is an SR instance with 2n agents}

Further details Acknowledgements - individuals Katarína Cechlárová Rob Irving Acknowledgements - funding Centre for Applied Mathematics and Computational Physics, Budapest University of Technology and Economics Hungarian National Science Fund (grant OTKA F 037301) EPSRC (grant GR/R84597/01) RSE / Scottish Executive Personal Research Fellowship RSE International Exchange Programme More information D.J. Abraham, P. Biró, D.F.M., “Almost stable” matchings in the Roommates problem, to appear in Proceedings of WAOA ’05: the 3rd Workshop on Approximation and Online Algorithms, Lecture Notes in Computer Science, Springer-Verlag, 2005