Presentation is loading. Please wait.

Presentation is loading. Please wait.

A Constraint Programming Approach to the Hospitals / Residents Problem By David Manlove, Gregg O’Malley, Patrick Prosser and Chris Unsworth.

Similar presentations


Presentation on theme: "A Constraint Programming Approach to the Hospitals / Residents Problem By David Manlove, Gregg O’Malley, Patrick Prosser and Chris Unsworth."— Presentation transcript:

1 A Constraint Programming Approach to the Hospitals / Residents Problem By David Manlove, Gregg O’Malley, Patrick Prosser and Chris Unsworth

2 Contents The Hospital/Residents Problem The Algorithms Cloned Solution Constraint Based Model (CBM) Specialised N-ary Constraint (HRN) Versatility Conclusion Questions

3 The Hospital/Residents Problem This is a real world problem The National Resident Matching Program (NRMP) in the US 31,000 residents matched to 2,300 hospitals The Canadian Resident Matching Service (CaRMS) The Scottish PRHO Allocation scheme (SPA)

4 The Hospital/Residents Problem Residents Hospitals R1 R2 R3 : R2 R3 R1 : R2 R1 R3 : H1 H2 H1 H2 We have n residentsand m hospitals Each resident ranks the m hospitals And each hospital ranks the n residents Objective : To find a matching of residents to hospitals Such that the matching is Stable (2) (1) Each hospital has a capacity c And the hospital capacities not exceeded

5 The Hospital/Residents Problem Residents Hospitals R1 R2 R3 : R2 R3 R1 : R2 R1 R3 : H1 H2 H1 H2 A matching R3 and H1 would both be better off if they were matched to each other (2) (1) But not a stable one  A matching is only stable iff it contains no Blocking pairs In this matching R3 and H1 are a Blocking pair

6 The Hospital/Residents Problem Residents Hospitals R1 R2 R3 : R2 R3 R1 : R2 R1 R3 : H1 H2 H1 H2 A stable matching (2) (1)

7 The Algorithms Two Algorithms Resident-Oriented (RGS) Hospital-Oriented (HGS) Both reach a fixed point RGS-lists HGS-lists Union of these is GS-lists Both run in O(L) time and require O(nm) space

8 Cloned Solution Residents Hospitals R1 R2 R3 : R2 R3 R1 : R2 R1 R3 : H1 H2 H1 H2 If a hospital has capacity > 1 (2) (1) H1a H1b H2 (1) : R2 R3 R1 : R2 R1 R3 : H1a H1b H2 It can be cloned into c hospitals with capacity 1 We then expand the residents preference lists This is now a stable marriage instance Which can be solved by any stable marriage solution

9 Constraint Based Model (CBM) a variable for each of the n Residents each with a domain (1.. m) C variables for each of the m Hospitals each with a domain (1.. n) O(Lc) standard “toolbox” constraints Takes O(Lc(n+m)) time to enforce AC Takes O(Lc) space

10 Specialised N-ary Constraint (HRN) a variable for each of the n Residents each with a domain (1.. m) a variables for each of the m Hospitals each with a domain (1.. n) 1 Specialised n-ary constraints Details are in the paper Takes O(Lc) time to enforce AC Takes O(nm) space

11 Versatility Resident-exchange-stable NP-Complete Constraint for each r 1,r 2,h 1,h 2 combination Such that: r 1 prefers h 1 to h 2 r 2 prefers h 2 to h 1 r 1 =h 2 r 2 ≠h 1

12 Versatility Forbidden pairs Linear time solvable decision problem Not all instances are solvable Relaxed optimisation problem No poly-time algorithm Add {0,1} variable for each forbidden pair Minimise the sum

13 Versatility Groups No poly-time algorithm Constraint for each group r 1 =h i r 2 =h i Ties in preference lists

14 Conclusion We have proposed three new constraint solutions to the Hospital/Residents problem A Reformulation technique A model that uses toolbox constraints A specialised n-ary constraint Demonstration of versatility

15 Questions Any Questions?


Download ppt "A Constraint Programming Approach to the Hospitals / Residents Problem By David Manlove, Gregg O’Malley, Patrick Prosser and Chris Unsworth."

Similar presentations


Ads by Google