Presentation is loading. Please wait.

Presentation is loading. Please wait.

“Almost stable” matchings in the Roommates problem

Similar presentations


Presentation on theme: "“Almost stable” matchings in the Roommates problem"— Presentation transcript:

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

2 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

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

4 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: 2: 3: 4: Stable matching in I1: 1: 2: 3: 4:

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

6 Example SR Instance (2) Example SR instance I2: 1: 2 3 4 2: 3 1 4
2: 3: 4: 1: 2: 3: 4: 1: 2: 3: 4: 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.

7 Application: kidney exchange

8 Application: kidney exchange

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

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

11 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: 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”

12 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

13 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: 3: 4: 5: 6: Example: insoluble SR instance {1,3,6}, {2,4,5} is a partition of the agents

14 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: 3: 4: 5: 6:

15 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: 3: 4: 5: 6: Every CFG instance admits a B-stable partition Such a partition may be found in linear time Also results for W-stability

16 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: 3: 4: 5: 6: E.g. 4 prefers 5 to  -1(4)=1 5 prefers  -1(5)=3 to 4

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

18 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: 3: 4: 5: 6: Example =1,4,6, 2,3,5

19 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: 3: 4: 5: 6: =1,4,6, 2,5

20 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: 3: 4: 5: 6: =1,4, 2,5

21 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: 4: 5: 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

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

23 Coping with insoluble SR instances: Method 2 vs method 3
1: 2: 3: 4: 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: Method 3: consider e.g. M2={{1,2},{3,4}} |bp(M2)|=1 1: 2: 3: 4: So |M2|=2|M1| and |bp(M2)|=½|bp(M1)|

24 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

25 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½-

26 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

27 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

28 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

29 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: 4: 5: 6: 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

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

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

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


Download ppt "“Almost stable” matchings in the Roommates problem"

Similar presentations


Ads by Google