34
Linear Programming Tools for Scheduling Trainees in Healthcare William Pozehl Rishindra Reddy MD F. Jacob Seagull PhD Mark Daskin PhD Amy Cohn PhD Janice Davis Nate Janes Yicong Zhang

Linear Programming Tools for Scheduling Trainees in Healthcare

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Linear Programming Tools for Scheduling Trainees in Healthcare

Linear Programming Tools for

Scheduling Trainees in Healthcare

William Pozehl

Rishindra Reddy MD

F. Jacob Seagull PhD

Mark Daskin PhD

Amy Cohn PhD

Janice Davis

Nate Janes

Yicong Zhang

Page 2: Linear Programming Tools for Scheduling Trainees in Healthcare

Presentation Outline

• Background

• Motivation

• Model Formulation

• Model Implementation

• Conclusions and Future Work

2

Page 3: Linear Programming Tools for Scheduling Trainees in Healthcare

Presentation Outline

• Background

• Motivation

• Model Formulation

• Model Implementation

• Conclusions and Future Work

3

Page 4: Linear Programming Tools for Scheduling Trainees in Healthcare

Attending

Fellowship

Residency

Internship

Medical School

Undergraduate Program

Attending

Fellowship

Residency

Internship

Medical School

Undergraduate Program

Healthcare Training Basics

M4

M3

M2

M1

PGY1

PGY4

PGY3

PGY2

4

M4

M3

M2

M1

Page 5: Linear Programming Tools for Scheduling Trainees in Healthcare

Healthcare Training at Michigan

105 training

programs

1,199 trainees

80 fellowships

25 residencies

5

Page 6: Linear Programming Tools for Scheduling Trainees in Healthcare

Importance of Scheduling

6

Page 7: Linear Programming Tools for Scheduling Trainees in Healthcare

Who does the Scheduling?

• Program dependent

– Chief Resident

– Faculty (Program Director)

– Senior Administrative Staff

7

Page 8: Linear Programming Tools for Scheduling Trainees in Healthcare

Presentation Outline

• Background

• Motivation

• Model Formulation

• Model Implementation

• Conclusions and Future Work

8

Page 9: Linear Programming Tools for Scheduling Trainees in Healthcare

Challenges in Scheduling

• Time-intensive process

• Numerous stakeholders

• Complex rules and legal requirements

• Conflicting goals

• Varying strategies and interdependencies

• “Good enough” mentality

9

Page 10: Linear Programming Tools for Scheduling Trainees in Healthcare

PGY1 PGY2 PGY3 PGY4 PGY5 PGY6 PGY7

1 RED GOLD BLUE

VA

A

C

A

D

E

M

I

C

BLUE

RED 2

3 BLUE HAND ENT GOLD

4 BLUE

5 HAND SJMH SJMH SJMH RED

BLUE 6

7 TBE DAY CSLT GOLD

OP SJMH

8 GI SURG OMFS

9 VA GS-VASC RED DAY CSLT NIGHT CSLT HAND

GOLD 10 VASC ORTHO NIGHT CSLT

11 STX TBE VASC RED HAND

12 PED SURG SICU SURG ONC

Plastic Surgery (4 residents per level per year)

PGY1 PGY2 PGY3 PGY4 PGY5

1 MAIZE MAIZE MAIZE MAIZE MAIZE

2 BLUE BLUE BLUE BLUE

3 WHITE WHITE WHITE WHITE BLUE

4 MAIZE/BLUE/WHITE MAIZE/BLUE/WHITE

ACS

ACS

5 ACS

ACS WHITE

6 DSP

7 PLA DSP ACS

8 SICU ANES FLOAT

9 STX DSP SICU STX

10 SVA FLOAT THS ELECTIVE SVA

11 VA CT SICU STX/SVA FOOTE VA GS

12 VA GS-VASC VA GS-VASC VA GS VA GS-VASC VA GS-VASC

General Surgery (6 residents + 12 fellows per level per year)

Resident Education Requirements

• Each program has unique educational requirements (operative and disease exposure)

10

Page 11: Linear Programming Tools for Scheduling Trainees in Healthcare

Service Coverage Requirements

11

• Each service requires a resident complement comprised of varying skillsets and disciplines

SICU STX WHITE

1ST YEAR GENERAL SURG

1ST YEAR VASCULAR SURG

1ST YEAR PLASTIC SURG

Page 12: Linear Programming Tools for Scheduling Trainees in Healthcare

PLA

Traditional Scheduling Approach

1. Build rotation templates

2. Adjust for coverage and educational needs

3. Renegotiate after reaching a dead-end

BLUE MAIZE ACS SICU STX SVA VA CT VA

G&V BLUE

BLUE MAIZE WHITE ACS SICU DSP PLA STX SVA VA CT VA

G&V BLUE

JULY AUG SEPT OCT NOV DEC JAN FEB MAR APRIL MAY JUNE

BLUE MAIZE WHITE ACS SICU DSP PLA STX SVA VA CT VA

G&V BLUE

BLUE MAIZE WHITE ACS SICU DSP PLA STX VA CT VA

G&V BLUE

12

WHITE DSP

SVA

WHITE

BLUE

PLA PLA BLUE MAIZE SVA SICU STX VA

G&V VA CT DSP BLUE

PLA MAIZE WHITE ACS SICU BLUE PLA STX

SVA

VA CT VA

G&V

BLUE DSP VA

G&V ACS SICU MAIZE WHITE

STX

SVA VA CT PLA BLUE

BLUE MAIZE WHITE ACS SICU DSP PLA STX SVA VA CT VA

G&V BLUE

Page 13: Linear Programming Tools for Scheduling Trainees in Healthcare

Project Goal

Design a linear program which automates creation of a block schedule that satisfies the needs of the residents

and services.

13

Page 14: Linear Programming Tools for Scheduling Trainees in Healthcare

Presentation Outline

• Background

• Motivation

• Model Formulation

• Model Implementation

• Conclusions and Future Work

14

Page 15: Linear Programming Tools for Scheduling Trainees in Healthcare

• A technique to solve complicated story problems

• Four basic parts

– Sets and parameters

– Decision variables

– Objective function

– Constraints

Linear Programming Basics

15

min 2𝑥1 + 𝑥2

subject to 𝑥1 + 𝑥2 ≥ 5

2𝑥1 + 3𝑥2 ≤ 11

𝑥1, 𝑥2 ≥ 0

Optimal Solution: (1, 4) Objective Value = 6

Page 16: Linear Programming Tools for Scheduling Trainees in Healthcare

Sets

𝑅: residents

𝐶: resident categories

𝑆: services

𝑀: months

16

Page 17: Linear Programming Tools for Scheduling Trainees in Healthcare

Parameters

𝑎𝑟𝑐 ∈ 0, 1 : indicates if resident 𝒓 fits category 𝒄

ℒ𝑐𝑠𝑚: lower bound on number of residents fitting category 𝒄 in service 𝒔 during month 𝒎

𝒰𝑐𝑠𝑚: upper bound on number of residents fitting category 𝒄 in service 𝒔 during month 𝒎

𝜆𝑟𝑠: lower bound on number of months resident 𝒓 must spend on service 𝒔

𝜇𝑟𝑠: upper bound on number of months resident 𝒓 must spend on service 𝒔

17

Page 18: Linear Programming Tools for Scheduling Trainees in Healthcare

Decision Variables

𝑥𝑟𝑠𝑚 ∈ 0, 1 : whether resident 𝒓 is

assigned to service 𝒔 in month 𝒎

∀ 𝑟 ∈ 𝑅, 𝑠 ∈ 𝑆,𝑚 ∈ 𝑀

The base model does not have an objective function.

18

Page 19: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

1. Every resident gets assigned to one service every month

𝒙𝒓𝒔𝒎𝒔∈𝑺

= 𝟏, ∀ 𝒓 ∈ 𝑹,𝒎 ∈ 𝑴

2. Every resident satisfies their educational requirements

𝝀𝒓𝒔 ≤ 𝒙𝒓𝒔𝒎𝒎∈𝑴

≤ 𝝁𝒓𝒔, ∀ 𝒓 ∈ 𝑹, 𝒔 ∈ 𝑺

3. Every service satisfies their service coverage needs

𝓛𝒄𝒔𝒎 ≤ 𝒂𝒓𝒄𝒙𝒓𝒔𝒎𝒓∈𝑹

≤ 𝓤𝒄𝒔𝒎, ∀ 𝒄 ∈ 𝑪, 𝒔 ∈ 𝑺,𝒎 ∈ 𝑴

. . .

19

Page 20: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

1. Every resident gets assigned to one service every month

xSmith,Maize,July Is Dr. Smith assigned to the Maize service in July?

If yes, xSmith,Maize,July = 1. If no, xSmith,Maize,July = 0.

xSmith,Blue,July Is Dr. Smith assigned to the Blue service in July?

xSmith,White,July Is Dr. Smith assigned to the White service in July?

𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑙𝑦 = 1

20

Page 21: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

1. Every resident gets assigned to one service every month

𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑙𝑦 = 1

𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐴𝑢𝑔 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐴𝑢𝑔 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐴𝑢𝑔 = 1 . . . 𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑛𝑒 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐽𝑢𝑛𝑒 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑛𝑒 = 1

𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝐽𝑜𝑛𝑒𝑠,𝐵𝑙𝑢𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝐽𝑜𝑛𝑒𝑠,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑙𝑦 = 1 . . . 𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑛𝑒 + 𝑥𝐽𝑜𝑛𝑒𝑠,𝐵𝑙𝑢𝑒,𝐽𝑢𝑛𝑒 + 𝑥𝐽𝑜𝑛𝑒𝑠,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑛𝑒 = 1

𝒙𝒓𝒔𝒎𝒔∈𝑺

= 𝟏, ∀ 𝒓 ∈ 𝑹,𝒎 ∈ 𝑴

21

Page 22: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

2. Every resident satisfies their educational requirements

xSmith,Maize,July Is Dr. Smith assigned to the Maize service in July?

If yes, xSmith,Maize,July = 1. If no, xSmith,Maize,July = 0.

xSmith,Maize,Aug Is Dr. Smith assigned to the Maize service in August? . . . xSmith,Maize,June Is Dr. Smith assigned to the Maize service in June?

1 ≤ 𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐴𝑢𝑔+. . . +𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑛𝑒 ≤ 2

22

Page 23: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

2. Every resident satisfies their educational requirements

1 ≤ 𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐴𝑢𝑔+. . . +𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑛𝑒 ≤ 2

1 ≤ 𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐴𝑢𝑔+. . . +𝑥𝑆𝑚𝑖𝑡ℎ,𝐵𝑙𝑢𝑒,𝐽𝑢𝑛𝑒 ≤ 2

1 ≤ 𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐴𝑢𝑔+. . . +𝑥𝑆𝑚𝑖𝑡ℎ,𝑊ℎ𝑖𝑡𝑒,𝐽𝑢𝑛𝑒 ≤ 2

1 ≤ 𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐴𝑢𝑔+. . . +𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑛𝑒 ≤ 2 . . . 1 ≤ 𝑥𝐽𝑜𝑛𝑒𝑠,𝐵𝑙𝑢𝑒,𝐽𝑢𝑙𝑦 + 𝑥𝐽𝑜𝑛𝑒𝑠,𝐵𝑙𝑢𝑒,𝐴𝑢𝑔+. . . +𝑥𝐽𝑜𝑛𝑒𝑠,𝐵𝑙𝑢𝑒,𝐽𝑢𝑛𝑒 ≤ 2

𝝀𝒓𝒔 ≤ 𝒙𝒓𝒔𝒎𝒎∈𝑴

≤ 𝝁𝒓𝒔, ∀ 𝒓 ∈ 𝑹, 𝒔 ∈ 𝑺

23

Page 24: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

3. Every service satisfies their service coverage needs

xSmith,Maize,July Is Dr. Smith assigned to the Maize service in July?

If yes, xSmith,Maize,July = 1. If no, xSmith,Maize,July = 0.

aSmith,GS Is Dr. Smith a General Surgery resident?

If yes, aSmith,GS = 1.If no, aSmith,GS = 0.

aSmith,PGY1 Is Dr. Smith a PGY1 resident?

If yes, aSmith,PGY1 = 1. If no, aSmith,PGY1 = 0.

aSmith,GS_PGY1 Is Dr. Smith a General Surgery PGY1 resident?

If yes, aSmith,GS_PGY1 = 1. If no, aSmith,GS_PGY1 = 0.

24

Page 25: Linear Programming Tools for Scheduling Trainees in Healthcare

Constraints

3. Every service satisfies their service coverage needs

3 ≤ 𝑎𝑆𝑚𝑖𝑡ℎ,𝐺𝑆𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑎𝐽𝑜𝑛𝑒𝑠,𝐺𝑆𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦+ 𝑎𝐶ℎ𝑎𝑛,𝐺𝑆𝑥𝐶ℎ𝑎𝑛,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦+. . . +𝑎𝐺𝑢𝑝𝑡𝑎,𝐺𝑆𝑥𝐺𝑢𝑝𝑡𝑎,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦≤ 4

1 ≤ 𝑎𝑆𝑚𝑖𝑡ℎ,𝑃𝐺𝑌1𝑥𝑆𝑚𝑖𝑡ℎ,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 + 𝑎𝐽𝑜𝑛𝑒𝑠,𝑃𝐺𝑌1𝑥𝐽𝑜𝑛𝑒𝑠,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦+ 𝑎𝐶ℎ𝑎𝑛,𝑃𝐺𝑌1𝑥𝐶ℎ𝑎𝑛,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦+. . . +𝑎𝐺𝑢𝑝𝑡𝑎,𝑃𝐺𝑌1𝑥𝐺𝑢𝑝𝑡𝑎,𝑀𝑎𝑖𝑧𝑒,𝐽𝑢𝑙𝑦 ≤ 2

𝓛𝒄𝒔𝒎 ≤ 𝒂𝒓𝒄𝒙𝒓𝒔𝒎𝒓∈𝑹

≤ 𝓤𝒄𝒔𝒎, ∀ 𝒄 ∈ 𝑪, 𝒔 ∈ 𝑺,𝒎 ∈ 𝑴

25

Page 26: Linear Programming Tools for Scheduling Trainees in Healthcare

Expanded Model

• Distributed Educational Requirements

• Distributed Coverage Needs

• Extended Rotations

• Service Sequencing

• Service Spacing

• Resident Pairing

26

Page 27: Linear Programming Tools for Scheduling Trainees in Healthcare

Presentation Outline

• Background

• Motivation

• Model Formulation

• Model Implementation

• Conclusions and Future Work

27

Page 28: Linear Programming Tools for Scheduling Trainees in Healthcare

Implementation Process

28

Page 29: Linear Programming Tools for Scheduling Trainees in Healthcare

Presentation Outline

• Background

• Motivation

• Model Formulation

• Model Implementation

• Conclusions and Future Work

29

Page 30: Linear Programming Tools for Scheduling Trainees in Healthcare

Recap

• Scheduling issues affect hospital workflow, training quality, and patient safety

• Scheduling residency programs at UMHS is highly interdependent, complex, and poorly executed

• We can address these scheduling needs using a linear programming formulation

30

Page 31: Linear Programming Tools for Scheduling Trainees in Healthcare

Future Work

• Define metrics for schedule optimality

– Minimize deviation from desired resident complement by service

– Maximize satisfied requests for educational customization

• Apply model to improve scheduling for other training programs

31

Page 32: Linear Programming Tools for Scheduling Trainees in Healthcare

Related Applications

• Pediatric Medicine rotation schedule

• C.S. Mott Emergency Department shift schedule

• Chemotherapy infusion patient schedule

• Physician clinic/OR schedule

• Master surgical schedule problem

• Nurse staff scheduling

32

Page 33: Linear Programming Tools for Scheduling Trainees in Healthcare

Acknowledgements

• Center for Healthcare Engineering and Patient Safety

• University of Michigan Department of Surgery

• The Seth Bonder Foundation

• The Doctors Company Foundation

33