developing fair and feasible schedules for residents on-call sarah root university of michigan...
TRANSCRIPT
Developing Fair and Feasible Schedules for Residents On-CallSarah RootUniversity of MichiganDepartment of Industrial and Operations EngineeringINFORMS Pittsburgh – November 5, 2006Joint work with Amy Cohn
22
Outline
What is on-call resident scheduling? Boston University School of Medicine
Psychiatry Program Literature Modeling approach Algorithm
Importance of collaboration Conclusions and future research Questions?
33
What is On-Call Resident Scheduling? Residency – period of formal medical
education designed to facilitate the transition from licensed medical doctor to practicing physician Typically lasts 3-4 yearsAdvanced training in specialty areaResidents complete rotations through
several different areasResidents complete a series of calls or
overnight shifts as part of their residency
44
Boston University School of Medicine Psychiatry Residency Program Calls completed at three sites
Sites have different characteristics and must be scheduled differently
Different program requirements and availability for students in each class Schedule primarily PGY2s and PGY3s; other
miscellaneous residents with makeup requirements
Typically 6-8 residents per class Must complete a pre-specified number of
weekday and weekend calls at each site Different day of week availability for each class
55
Boston University School of Medicine Psychiatry Residency Program Feasibility rules
All calls must be coveredAll residents must satisfy program
requirementsSpacing between calls, maximum calls
per monthResidents can only work on days they
are available
66
Boston University School of Medicine Psychiatry Residency Program Call schedule spans a year
Developed manually by chief residents Typically created by scheduling one resident at a time Difficult to satisfy all feasibility rules
Schedules implemented that did not satisfy feasibility rules Want a good schedule that is fair
What is a “good schedule” and how do you assess whether or not it is fair? Must satisfy feasibility rules Should incorporate desirable characteristics No resident should get a high-quality solution at the
expense of a significantly poorer solution for another resident
77
Literature Vast literature on medical scheduling
Burke, 2004; Cheang, 2003; Siferd, 1992 – Nurse scheduling survey papers
Beaulieu, 2000; Carter, 2001; Valouxis, 2000 – Emergency room physician scheduling
Ozkarahan, 1994; Franz and Miller, 1993 – Schedule residents for daytime locations
Sherali, 2002 – On-call schedules produced for 4-5 week periods
BUSM Problem Schedule horizon is one year Must schedule three sites simultaneously Difficulty in defining objective function
88
On-Call Formulation Notation
R – set of residents to be scheduled RPGY2 – set of PGY2 residents RPGY3 – set of PGY3 residents
D – set of days to be scheduled Hospital A
Covered by two residency programs V – set of days to be covered by BUSM
Must schedule primary and backup each day xrd = 1 if resident r is scheduled for a primary call at
Hospital A on day d 0 otherwise for all r in R, d in V yrd = 1 if resident r is scheduled for a backup call at
Hospital A on day d 0 otherwise for all r in R, d in V
99
On-Call Formulation Hospital B
Can be covered by a resident or as an “extra on-call” (EOC) zrd = 1 if resident r is scheduled for primary call at Hosptial B
on day d 0 otherwise for all r in R, d in D ed = 1 if day d is scheduled as an EOC 0 otherwise for all d in D
Hospital C Each PGY2 must be scheduled for six consecutive weeks Scheduled by chief resident prior to creation of the call
schedule qrd = 1 if resident r is scheduled at Hospital C on day d 0 otherwise
1010
On-Call Formulation
Hospitals A and B must be staffed:
Σ xrd = 1 d in V
Σ yrd = 1 d in V
Σ zrd + ed = 1 d in D
xrd + yrd + zrd ≤ 1 - qrd d in D, r in RPGY2
r in R
r in R
r in R
1111
On-Call Formulation
Training requirements for Hospitals A and B must be fulfilled:
Σ xrd = vrPW r in R
Σ xrd = vrPE r in R
Σ yrd = vrBW r in R
Σ yrd = vrBE r in R
Σ zrd = brW r in R
Σ zrd = brE r in R
d in V
d in V
d in V
d in D
d in V
d in D
1212
On-Call Formulation
PGY2s cannot work Tuesdays:
Σ xrd + Σ yrd + Σ zrd = 0 r in RPGY2
PGY3s cannot work Tuesdays or Wednesdays:
Σ xrd + Σ yrd + Σ zrd = 0 r in RPGY3
Each resident can work no more often than every fourth day:
Σ xrd + Σ yrd + Σ zrd ≤ 1 r in R, d’ in {1…(|D|-3)}
Each resident can work no more five calls each calendar month:
Σ xrd + Σ yrd + Σ zrd ≤ 5 r in R, m in M
d in T d in T d in T
d in {TUW} d in {TUW} d in {TUW}
d in M d in M d in M
d in {d’…d’+3}d in {d’…d’+3}d in {d’…d’+3}
1313
On-Call Formulation What about the objective function?
Desirable characteristics Vacation requests satisfied Alternating primary and backup calls at Hospital A PGY2 daytime-nighttime location match PGY3 blocking Day of week preferences honored
Many stakeholders with differing objectives Individual residents want good schedules, but each have
differing preferences Chief residents want to ensure equity among residents
1414
On-Call Formulation Often handled by assigning weights for desired
characteristics wir = weight assigned by resident r to characteristic i cir = amount of characteristic i present in resident r’s schedule
max ΣΣ wir cir
How do we assign these weights? How are we ensured that the weights are correct?
People don’t know what they want!! Similar problems in ensuring equity Capturing metrics to measure each characteristics
results in a larger, harder to solve mathematical program
i r
1515
On-Call Formulation
Alternating Primary and Backup Calls Ir – total number of calls resident r completes at
Hospital A crid = 1 if resident r’s ith Hospital A call is assigned on
day d prid = 1 if resident r’s ith Hospital A call is a primary call
and takes place on day d arid = 1 if resident r’s ith Hospital A call is a primary call
and takes place on day d gri = 1 if resident r’s ith Hospital A call is followed by an
i+1th call of the same type Gr = total number of non-alternated calls by resident r
1616
On-Call Formulation
Alternating Primary and Backup Calls, cont.Σ crid = 1 i in {1…Ir}, r in R
Σ drid ≥ Σ d’cr(i-1)d’ i in {2…Ir}, r in R
crid ≤ xrd + yrd i in {1…Ir}, r in R, d in V
prid ≤ xrd i in {1…Ir}, r in R, d in V
arid ≤ yrd i in {1…Ir}, r in R, d in V
Σ prid + Σ pr(i+1)d ≤ 1 + gri i in {1…(Ir-1)}, r in R
Σ arid + Σ ar(i+1)d ≤ 1 + gri i in {1…(Ir-1)}, r in R
Gr = Σ gri r in R
1717
On-Call Formulation
KEY INSIGHT:
People have a hard time translating their preferences into weights, but they can easily identify what they don’t like about potential schedules
1818
Algorithm to Solve On-Call Scheduling Problem
1. Find best case scenario for each characteristic in isolation.
Vacation requestsTotal: 2 requests deniedMax for individual: 1 request denied
Sarah Root : 1 req. deniedShervin Williams: 0 req. deniedAmy Smith: 0 req. deniedRichard Chang: 1 req. deniedAda Johnson: 0 req. deniedYihan Clinton: 0 req. denied
1 2 3 4 5 6
STOP
1919
Algorithm to Solve On-Call Scheduling Problem
2. Work with chief residents to establish an initial, generalized ordering of desirable characteristics.
1. Vacation requests satisfied2. PGY2 daytime-nighttime location match3. Alternating primary and backup calls at Hospital A4. Day of week preferences honored5. PGY3 blocking
1 2 3 4 5 6
STOP
2020
Algorithm to Solve On-Call Scheduling Problem
3. For each criterion in sequence, find optimal solution while restricting the set of solutions to remain optimal or near-optimal with respect to previous characteristics.
1. Minimize unsatisfied vacation requests 2 unsatisfied vacation requests
2. Maximize PGY2 daytime-nighttime location match s.t. unsatisfied vacation requests ≤ 2 3 unmatched daytime-nighttime locations
1 2 3 4 5 6
STOP
2121
Algorithm to Solve On-Call Scheduling Problem
4. If the chief resident is happy with the solution, terminate with a feasible schedule. Otherwise proceed to the Step 5.
1 2 3 4 5 6
STOP
2222
Algorithm to Solve On-Call Scheduling Problem
5. Identify undesirable attributes in the schedule and introduce additional constraints to prevent them.
Inequity in number of Fridays assigned to each resident s.t. number of Fridays for each resident ≤ 8
1 2 3 4 5 6
STOP
2323
Algorithm to Solve On-Call Scheduling Problem
6. Resolve problem with additional constraints to generate schedule. Return to Step 4.
1 2 3 4 5 6
STOP
2424
Conclusions
Solution implemented in July 2006 and currently in use No schedule modifications other than individual
ad-hoc swaps Defining a single, accurate objective function
very difficult Involvement of chief residents critical
Understanding tradeoffs in solution characteristics
Credibility and solution buy-in
2525
Conclusions
“We are using the schedule in its entirety, exactly as your program
generated. There have been surprisingly few requests for call
swaps so far. There were no errors that we could detect, and the residents had
no complaints about it. It has been great, and greatly decreased our
headaches as Chiefs!”
2626
Future Research Directions
Understand other related problemsResident scheduling problems for other
schools and specialtiesMedical scheduling problems
Generalize approach to solve related problems with unclear objective functions