strong stability in the hospitals/residents problem
DESCRIPTION
Strong Stability in the Hospitals/Residents Problem. Robert W. Irving, David F. Manlove and Sandy Scott. University of Glasgow Department of Computing Science Supported by EPSRC grant GR/R84597/01 and Nuffield Foundation Award NUF-NAL-02. Hospitals/Residents problem (HR): Motivation. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/1.jpg)
Strong Stability in the Hospitals/Residents Problem
Robert W. Irving, David F. Manlove and Sandy Scott
University of GlasgowDepartment of Computing Science
Supported by EPSRC grant GR/R84597/01 andNuffield Foundation Award NUF-NAL-02
![Page 2: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/2.jpg)
2
Hospitals/Residents problem(HR): Motivation
• Graduating medical students or residents seek hospital appointments
• Centralised matching schemes are in operation
• Schemes produce stable matchings of residents to hospitals
– National Resident Matching Program (US)
– other large-scale matching schemes, both educational and vocational
![Page 3: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/3.jpg)
3
Hospitals/Residents problem(HR): Definition
• a set H of hospitals, a set R of residents• each resident r ranks a subset of H in strict
order of preference• each hospital h has ph posts, and ranks in strict
order those residents who have ranked it • a matching M is a subset of the acceptable
pairs of R H such that |{h: (r,h) M}| 1 for all r and |{r: (r,h) M}| ph for all h
![Page 4: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/4.jpg)
4
An instance of HR
r1: h2 h3 h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 h1 h3
r6: h3
h1:3: r2 r1 r3 r5
h2:2: r3 r2 r1 r4 r5
h3:1: r4 r5 r1 r3 r6
![Page 5: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/5.jpg)
5
A matching in HR
r1: h2 h3 h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 h1 h3
r6: h3
h1:3: r2 r1 r3 r5
h2:2: r3 r2 r1 r4 r5
h3:1: r4 r5 r1 r3 r6
![Page 6: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/6.jpg)
6
Indifference in the ranking
• ties: h1 : r7 (r1 r3) r5
• version of HR with ties is HRT• more general form of indifference involves
partial orders• version of HR with partial orders is HRP
![Page 7: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/7.jpg)
7
An instance of HRT
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
![Page 8: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/8.jpg)
8
A matching in HRT
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
![Page 9: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/9.jpg)
9
A blocking pair
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
r4 and h2 form a blocking pair
![Page 10: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/10.jpg)
10
Stability• a matching M is stable unless there is an
acceptable pair (r,h) M such that, if they joined together
• both would be better off (weak stability)• neither would be worse off (super-stability)• one would be better off and the other no
worse off (strong stability)• such a pair constitutes a blocking pair• hereafter consider only strong stability
![Page 11: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/11.jpg)
11
Another blocking pair
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
r1 and h3 form a blocking pair
![Page 12: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/12.jpg)
12
A strongly stable matching
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
![Page 13: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/13.jpg)
13
State of the art• weak stability:
– weakly stable matching always exists
– efficient algorithm (Gale and Shapley (AMM, 1962), Gusfield and Irving (MIT Press, 1989))
– matchings may vary in size (Manlove et al. (TCS, 2002))
– many NP-hard problems, including finding largest weakly stable matching (Iwama et al. (ICALP, 1999), Manlove et al. (TCS, 2002))
![Page 14: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/14.jpg)
14
State of the art• super-stability
– super-stable matching may or may not exist– efficient algorithm (Irving, Manlove and Scott
(SWAT, 2000))
• strong stability– strongly stable matching may or may not exist– here we present an efficient algorithm for HRT– in contrast, show problem is NP-complete in HRP– (Irving, Manlove and Scott (STACS, 2003))
![Page 15: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/15.jpg)
15
The algorithm in brief
repeatprovisionally assign all free residents to hospitals at head of listform reduced provisional assignment graphfind critical set of residents and make corresponding deletions
until critical set is emptyform a feasible matchingcheck if feasible matching is strongly stable
![Page 16: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/16.jpg)
16
An instance of HRT
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
![Page 17: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/17.jpg)
17
A provisional assignment and a dominated resident
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
![Page 18: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/18.jpg)
18
A deletion
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3)
![Page 19: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/19.jpg)
19
Another provisional assignment
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3)
![Page 20: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/20.jpg)
20
Several provisional assignments
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3)
![Page 21: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/21.jpg)
21
The provisional assignment graph with one bound resident
r2
r3
r4
r5
r1h1:(3)
h2:(2)
h3:(1)
![Page 22: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/22.jpg)
22
Removing a bound resident
r2
r3
r4
r5
r1h1:(3)
h2:(1)
h3:(1)
![Page 23: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/23.jpg)
23
The reduced provisional assignment graph
r3
r4
r5
r1
h2:(1)
h3:(1)
![Page 24: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/24.jpg)
24
The critical set
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3)
![Page 25: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/25.jpg)
25
Deletions from the critical set, end of loop iteration
r1: h1
r2: h2 h1
r3: h2 h1
r4: h3
r5: (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2
h3:1: (r4 r5)
![Page 26: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/26.jpg)
26
Second loop iteration, starting with a provisional assignment
r1: h1
r2: h2 h1
r3: h2 h1
r4: h3
r5: (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2
h3:1: (r4 r5)
![Page 27: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/27.jpg)
27
Several provisional assignments
r1: h1
r2: h2 h1
r3: h2 h1
r4: h3
r5: (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2
h3:1: (r4 r5)
![Page 28: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/28.jpg)
28
The final provisional assignment graph with four bound residents
r2
r3
r4
r5
r1h1:(3)
h2:(2)
h3:(1)
![Page 29: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/29.jpg)
29
Removing a bound resident
r2
r3
r4
r5
r1h1:(2)
h2:(2)
h3:(1)
![Page 30: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/30.jpg)
30
Removing another bound resident
r2
r3
r4
r5
r1h1:(2)
h2:(1)
h3:(1)
![Page 31: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/31.jpg)
31
Removing a third bound resident
r2
r3
r4
r5
r1h1:(2)
h2:(0)
h3:(1)
![Page 32: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/32.jpg)
32
Removing a bound resident with an additional provisional assignment
r2
r3
r4
r5
r1h1:(1)
h2:(0)
h3:(1)
![Page 33: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/33.jpg)
33
The reduced final provisional assignment graph
r4h3:(1)
![Page 34: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/34.jpg)
34
A cancelled assignment
r1: h1
r2: h2 h1
r3: h2 h1
r4: h3
r5: (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2
h3:1: (r4 r5)
![Page 35: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/35.jpg)
35
A feasible matching
r1: h1
r2: h2 h1
r3: h2 h1
r4: h3
r5: (h1 h3)r6:
h1:3: r2 (r1 r3) r5
h2:2: r3 r2
h3:1: (r4 r5)
![Page 36: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/36.jpg)
36
A strongly stable matching
r1: (h2 h3) h1
r2: h2 h1
r3: h3 h2 h1
r4: h2 h3
r5: h2 (h1 h3)r6: h3
h1:3: r2 (r1 r3) r5
h2:2: r3 r2 (r1 r4 r5)
h3:1: (r4 r5) (r1 r3) r6
![Page 37: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/37.jpg)
37
repeat {while some resident r is free and has a non-empty list
for each hospital h at the head of r’s list {provisionally assign r to h;if h is fully-subscribed or over-subscribed {
for each resident r' dominated on h’s listdelete the pair (r',h); } }
form the reduced assignment graph;find the critical set Z of residents;for each hospital h N(Z)
for each resident r in the tail of h’s listdelete the pair (r,h);
}until Z = ;
![Page 38: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/38.jpg)
38
let G be the final provisional assignment graph;
let M be a feasible matching in G;
if M is strongly stable
output M;
else
no strongly stable matching exists;
![Page 39: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/39.jpg)
39
Properties of the algorithm
• algorithm has complexity O(a2), where a is the number of acceptable pairs
• bounded below by complexity of finding a perfect matching in a bipartite graph
• matching produced by the algorithm is resident-optimal
• same set of residents matched and posts filled in every strongly stable matching
![Page 40: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/40.jpg)
40
Strong Stability in HRP
• HRP is NP-complete– even if all hospitals have just one post, and every
pair is acceptable
• reduction from RESTRICTED 3-SAT:– Boolean formula B in CNF where each variable v
occurs in exactly two clauses as variable v, and exactly two clauses as ~v
![Page 41: Strong Stability in the Hospitals/Residents Problem](https://reader035.vdocument.in/reader035/viewer/2022070502/56813eac550346895da91070/html5/thumbnails/41.jpg)
41
Open problems
• find a weakly stable matching with minimum number of strongly stable blocking pairs
• size of strongly stable matchings relative to possible sizes of weakly stable matchings
• hospital-oriented algorithm