strong stability in the hospitals/residents problem robert w. irving, david f. manlove and sandy...

Post on 25-Dec-2015

215 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

TRANSCRIPT

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 andNuffield Foundation Award NUF-NAL-02

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

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

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

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

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

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

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

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

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

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

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

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

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

15

The algorithm in brief

repeat

provisionally assign all free residents to hospitals at head of list

form reduced provisional assignment graph

find critical set of residents and make corresponding deletions

until critical set is empty

form a feasible matching

check if feasible matching is strongly stable

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

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

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)

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)

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)

21

The provisional assignment graph with one bound resident

r2

r3

r4

r5

r1h1:(3)

h2:(2)

h3:(1)

22

Removing a bound resident

r2

r3

r4

r5

r1h1:(3)

h2:(1)

h3:(1)

23

The reduced provisional assignment graph

r3

r4

r5

r1

h2:(1)

h3:(1)

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)

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)

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)

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)

28

The final provisional assignment graph with four bound residents

r2

r3

r4

r5

r1h1:(3)

h2:(2)

h3:(1)

29

Removing a bound resident

r2

r3

r4

r5

r1h1:(2)

h2:(2)

h3:(1)

30

Removing another bound resident

r2

r3

r4

r5

r1h1:(2)

h2:(1)

h3:(1)

31

Removing a third bound resident

r2

r3

r4

r5

r1h1:(2)

h2:(0)

h3:(1)

32

Removing a bound resident with an additional provisional assignment

r2

r3

r4

r5

r1h1:(1)

h2:(0)

h3:(1)

33

The reduced final provisional assignment graph

r4h3:(1)

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)

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)

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

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 list

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

delete the pair (r,h);

}until Z = ;

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;

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

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

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

top related