Column Generation Approach for Operating Rooms Planning Mehdi LAMIRI, Xiaolan XIE and ZHANG Shuguang...
-
Upload
randolph-ramsey -
Category
Documents
-
view
217 -
download
0
Transcript of Column Generation Approach for Operating Rooms Planning Mehdi LAMIRI, Xiaolan XIE and ZHANG Shuguang...
Column Generation Approach for Operating Rooms Planning
Mehdi LAMIRI, Xiaolan XIE and ZHANG Shuguang
Industrial Engineering and Computer Sciences Division
Engineering and Health Division
ORAHS 06, Wroclaw - 2 -
Outline
• Motivation & Problem description
• Problem modelling
• A column generation approach
• Computational results
• Conclusions and perspectives
ORAHS 06, Wroclaw - 3 -
Problem description: Motivations
Operating rooms represent one of the most expensive sectors of the hospital
Involves coordination of large number of resources
Must deal with random demand for emergent surgery and unplanned activities
Planning and scheduling operating rooms’ has become one of the major priorities of hospitals for reducing cost and improving service quality
ORAHS 06, Wroclaw - 4 -
Problem description
How to plan elective cases when the operating rooms capacity is shared between two patients classes : elective and emergent patients
Elective patients :
Electives cases can be delayed and planned for future dates
Emergent patients :
Emergent cases arrive randomly and have to be performed in the day of arrival
ORAHS 06, Wroclaw - 5 -
Outline
• Motivation & Problem description
• Problem modelling
• A column generation approach
• Computational results
• Conclusions and perspectives
ORAHS 06, Wroclaw - 6 -
Model: Operating rooms capacities
We consider the planning of a set of elective surgery cases over an horizon of H periods (days)
In each period there are S operating rooms
For each OR-day (s, t) we have a regular capacity Tts
Exceeding the regular capacity generates overtime costs (COts)
1 2 H1 2 H
OR 1
OR S
… OR 1
OR S
… OR 1
OR S
…
… …
T11 T1S T21
T2S
THSTH1
ORAHS 06, Wroclaw - 7 -
Model: Emergent patients
In this work, the OR capacity needed for emergency cases in OR-day (s, t) is assumed to be a random variable ( wt s ) based on:
- The distribution of the number of emergent patients in a given period estimated using information systems and / or by operating rooms’ manager
- The distribution of the OR time needed for emergency surgeries estimated from the historical data
ORAHS 06, Wroclaw - 8 -
Model: Elective cases
At the beginning of the horizon, there are N requests for elective surgery
A plan that specifies the subset of elective cases to be performed in each OR-day under the consideration of uncertain demand for emergency surgery
T1,2
T1,1
OR-day (1, 1)
OR-day (S, H)
TH,S
OR-day (2, 1)
Case 5
Case 12
Case 10
Case1
ORAHS 06, Wroclaw - 9 -
Model: Elective cases
Each elective case i ( 1…N ) has the following characteristics :
Operating Room Time needed for performing the case i : ( pi )
Estimated using information systems and/or surgeons’ expertises
A release period (Bi)
It represents hospitalisation date, date of medial test delivery
A set of costs CEits ( t = Bi …H, H+1 )
The CEits represents the cost of performing elective case i in period t in OR s
CEi,H+1 : cost of not performing case i in the current plan
ORAHS 06, Wroclaw - 10 -
Model: Elective cases related costs
The cost structure is fairly general. It can represent many situations :
Hospitalization costs / Penalties for waiting time
Patient’s or surgeon’s preferences
Eventual deadlines
ORs availabilities
ORAHS 06, Wroclaw - 11 -
Model : Example of planning
T12
T1,1
Case 5
Case 1
Case 10
Case 16
Case 7Case 9
Case 12
Case 21
OR-day (1, 1)
OR-day (S, H)
Case 2
Case 16
Case 14Case 20Case 1
Case 25
Case 33
Case 2Case 32
Case 27
The plan must minimizes the sum of elective patient related costs and the expected overtime costs
Overtime costs
Cases related costs
ORAHS 06, Wroclaw - 12 -
Mathematical Model
Unplanned activities time
Planned activities time
Regular capacity
(P) *J = Min
1 1
1 1 1i i
N M H M H
its its ts ts
i s t B s t B
J X CE X CO O
(1)
Subject to:
1
ts
N
ts W ts i its ts
i
O E W p X T
(2)
1
1
1i
M H
it
s t B
X
(3)
Xits {0, 1} (4)
overtime
Patient related cost Overtime cost
Decision:
- Assign case i to OR-day (s, t) , Xits = 1
- Reject case i from plan, Xi,H+1,s = 1
ORAHS 06, Wroclaw - 13 -
Outline
• Motivation & Problem description
• Problem modelling
• A column generation approach
• Computational results
• Conclusions and perspectives
ORAHS 06, Wroclaw - 14 -
Plan for one OR-day
A “plan” is a possible assignment of patients to a particular OR-day
p : plan for a particular OR-day is defined as follows
aip = 1 if case i is in plan p
btsp = 1 if plan p is assigned to OR-day (s, t)
Cost of the plan :
, ,p ip tsp its tsp ts ts i ip ts
i t s t s i
C a b CE b CO E W p a T
Costs related to patients
assigned to the palnOvertime cost in the OR-day
related to the plan
ORAHS 06, Wroclaw - 15 -
( ) *p p
p
J Min J Y const c Y
1
1
0 1
{ },
ip pp
tsp pp
p
a Y , i
b Y , t ,s
Y , p
Subject to:
Column formulation for the planning problem
Each OR-day receives at most one plan
Each patient is assigned at most to one selected plan
: set of all possible plans
Yp = 1, if plan p is selected and Yp = 0, otherwise
Master problem
ORAHS 06, Wroclaw - 16 -
( ) *p p
p
J Min J Y const c Y
1
1
0 1
{ },
ip pp
tsp pp
p
a Y , i
b Y , t ,s
Y , p
Subject to:
Column formulation for the planning problem
Each OR-day receives at most one plan
Each patient is assigned at most to one selected plan
The master problem is an integer linear programming problem, whereas the initial formulation has a nonlinear objective:
The nonlinear quantities (expected overtime costs) are now imbedded into the columns costs
The master problem has a huge number of variables (columns)
Master problem
ORAHS 06, Wroclaw - 17 -
Master Problem
Linear master problem (LMP)
Optimal solution of the LMP
Near-optimal solution
Solution Methodology
Solve by Column Generati
on
Construct a
“good” feasible solution
Relax the integrality constraint
s
ORAHS 06, Wroclaw - 18 -
Linear Master problem (LMP)
The Linear Master Problem (LMP) is the same as the master problem MP except that the integrity of Yp is relaxed.
Problem LMP provides a lower bound of the master problem and hence a lower bound of the original problem.
Problem LMP can be solved by the column generation technique
ORAHS 06, Wroclaw - 19 -
Solving the linear master problem
simplex multipliers
i , t s
reduced cost < 0add new column
Y
N STOP
*
p pp
const c Y
1
1
0
*
*
ip pp
tsp pp
*p
a Y , i
b Y , t ,s
Y p
,
st
min
Reduced Linear Master Problem
over Ω* Ω
,p i ip ts tsp
i t s
c a b min
Pricing problem
minimizes reduced cost
0,ip tsp ia b t B
,
1tspt s
b , 0,1ip tspa b
st
ORAHS 06, Wroclaw - 20 -
The pricing problem
The pricing problem can be decomposed into H×S subproblems
One sub-problem for each OR-day
min ( ) its i ip ts ts i ip ts tsi i
CE a CO E W p a T
0,1 ,ipa i Subject to:
Simplex multipliers
ORAHS 06, Wroclaw - 21 -
The pricing problem
min ( ) its i ip ts ts i ip ts tsi i
CE a CO E W p a T
0,1 ,ipa i Subject to:
ORAHS 06, Wroclaw - 22 -
The pricing problem
The pricing sub-problem is a stochastic knapsack problem:
The capacity of the sack is a random variable
There is a penalty cost if the capacity is exceeded
min ( ) its i ip ts ts i ip ts tsi i
CE a CO E W p a T
0,1 ,ipa i Subject to:
Dynamic programming method
ORAHS 06, Wroclaw - 23 -
Master Problem
Linear master problem (LMP)
Optimal solution of the LMP
Near-optimal solution
Solution Methodology
Solve by Column Generati
on
Construct a
“good” feasible solution
Relax the integrality constraint
s
ORAHS 06, Wroclaw - 24 -
Constructing a near optimal solution
Step 1: Determine the corresponding patient assignment matrix (Xits) from the solution (Yp) of the Linear Master Problem.
Step 2: Derive a feasible solution starting from (Xits)
Step 3: Improve the solution obtained in Step 2
ORAHS 06, Wroclaw - 25 -
Derive a feasible solution
Method I : Solving the integer master problem MP by restricting to generated columns
Method II : Complete Reassignment
Fix assignments of cases in plans with Yp = 1
Reassign myopically but optimally all other cases one by one by taking into account scheduled cases.
Method III : Progressive reassignment
Reassign each case to one OR-day by taking into account the current assignment (Xits) of all other cases, fractional or not.
ORAHS 06, Wroclaw - 26 -
Improvement of a feasible schedule
Heuristic 1 : Local optimization of elective cases.
Reassign at each iteration the case that leads to the largest improvement
Heuristic 2 : Pair-wise exchange of elective cases
Exchange the assignment of a couple of cases that leads to the largest improvement
Heuristic 3 : Period-based re-optimization
Re-optimize the planning of all cases assigned to a given OR-day (s, t) and all rejected cases.
ORAHS 06, Wroclaw - 27 -
Overview of the optimization methods
Method LMP Deriving a feasible solution Improving solutions
M1 CPLEX IP M2 Complete reassign Local opt M3 Progressive reassign Local opt M4 Progressive reassign Local opt, Period-based M5 Progressive reassign Exchange, Period-based M6 Progressive reassign Exchange, Local opt, Period-based M7
column generation
CPLEX LP
+ Dynamic
Programming Progressive reassign Local opt, Period-based, Exchange
ORAHS 06, Wroclaw - 28 -
Outline
• Motivation & Problem description
• Problem modelling
• A column generation approach
• Computational results
• Conclusions and perspectives
ORAHS 06, Wroclaw - 29 -
Computational experiments
Problem instances generation
Number of periods : H = 5
Number of operating rooms: S = 3, 6, 9, 12
OR-day’s regular capacity : Tts = 8 hours
Capacity needed for emergency cases : Wts is exponentially distributed with a mean of 3 hours
Overtime cost : COts = 500 € / hour
Duration of elective surgeries : pi are randomly generated from the interval [0.5, 3 hours]
Release periods : Bi are randomly generated from the set {1…H}
ORAHS 06, Wroclaw - 30 -
Computational experiments
Problem instances generation
Patients related costs : CEits = (t- Bi) x c
c is set equal to 150 € (hospitalisation cost)
Case 1: Identical ORs
Case 2: Non-Identical ORs
ORs are equally allocated to 3 specialties, and an extra charge of 100€ is added for cases assigned to another speciality’s ORs
The number of elective cases is determined such that the workload of ORs due to elective cases is 85% of the regular capacity of the entire planning horizon.
ORAHS 06, Wroclaw - 31 -
Computational experiments: Gap
Duality GapM1 M2 M3 M4 M5 M6 M7
R=0
Nb Rooms=3(60 cases)
9.95% 3.35% 0.86% 0.82% 0.59% 0.58% 0.50%
Nb Rooms=6(119.3 cases)
10.59% 2.22% 1.01% 0.94% 0.64% 0.62% 0.53%
Nb Rooms=9(180.9 cases)
--- 1.94% 0.83% 0.74% 0.45% 0.44% 0.31%
Nb Rooms=12(239.6 cases)
--- 2.30% 1.02% 0.93% 0.60% 0.59% 0.47%
R=100
Nb Rooms=3(60 cases)
0.15% 0.26% 0.14% 0.14% 0.17% 0.08% 0.05%
Nb Rooms=6(119.3 cases)
0.27% 2.39% 0.40% 0.40% 0.28% 0.24% 0.16%
Nb Rooms=9(180.9 cases)
1.54% 1.75% 0.64% 0.60% 0.31% 0.30% 0.22%
Nb Rooms=12(239.6 cases)
--- 1.85% 0.64% 0.62% 0.31% 0.31% 0.19%
Case R = 0: Identical ORs
Case R = 100: extra charge of 100 € for assigning cases to another specialty's ORs
Results based on 10 randomly generated instances: the average Gap
ORAHS 06, Wroclaw - 32 -
Computation TimeM1 M2 M3 M4 M5 M6 M7
R=0
Nb Rooms=3(60 cases)
49,3 8,7 8,2 8,6 8,2 8,8 8,7
Nb Rooms=6(119.3 cases)
>5000 53,3 51,7 52,79 53,5 53,4 54
Nb Rooms=9(180.9 cases)
--- 184 182,1 183,6 182,3 184 186,2
Nb Rooms=12(239.6 cases)
--- 436,7 438,1 433,6 435 433,8 438,8
R=100
Nb Rooms=3(60 cases)
9,6 9,8 9,3 10,8 9,5 9,9 9,9
Nb Rooms=6(119.3 cases)
120 71,7 70,6 77,8 72,7 72,3 72,1
Nb Rooms=9(180.9 cases)
>5000 245,7 244,9 259,4 251 246,7 247,5
Nb Rooms=12(239.6 cases)
--- 569,5 572,2 593,5 584,1 570,2 590,1
Computational experiments: computation time
• Over 65% of the computation for CGP is spent on pricing problems.
Results based on 10 randomly generated instances: the average Computation time (second)
ORAHS 06, Wroclaw - 33 -
Computation results
The lower bound of the Column generation is very tight
Solving the integer master problem with generated columns can be very poor and it is very time consuming
Progressive reassignment outperforms the complete reassignment as progressive reassignment preserves the solution structure of the column generation solution
ORAHS 06, Wroclaw - 34 -
Outline
• Motivation & Problem description
• Problem modelling
• A column generation approach
• Computational results
• Conclusions and perspectives
ORAHS 06, Wroclaw - 35 -
Model extension: Overtime capacity and under utilization cost
We introduce an additional penalty cost when the overtime capacity is exceeded
Operating Room related cost
regular capacity
overtime capacity
OR workload
under use
overtime cost overtime
capacity exceeded
ORAHS 06, Wroclaw - 36 -
Conclusions and perspectives
The proposed model can represent many real world constraints
Column generation is an efficient technique for providing provably good solutions in reasonable time for large problem.
Future work
Make the stochastic model realistic enough to take into account random operating times, ...
Take into account other criteria such as reliability of OR plans
Develop exact algorithms able to solve problems with large size
Test with field data