Ann Oper Res (2009) 166: 91–108 DOI 10.1007/s10479-008-0413-3
Solving a tactical operating room planning problem by a column-generation-based heuristic procedure with four criteria H. Fei · C. Chu · N. Meskens
Published online: 5 August 2008 © Springer Science+Business Media, LLC 2008
Abstract In some hospitals, an “open scheduling” strategy is applied to solve the operating room planning problem; i.e., surgeons can choose any workday for his surgical cases, and the staffing of anesthetists and nurses is adjusted to maximize the efficiency of operating room utilization. In this paper, we aim at obtaining an efficient operating program for an operating theatre with several multifunctional operating rooms by using this “open scheduling” strategy. First, a mathematical model is constructed to assign surgical cases to operating rooms within one week. This model complies with the availability of operating rooms and surgeons, and its objective is not only to maximize utilization of operating rooms, but to minimize their overtime cost. Then a column-generation-based heuristic (CGBH) procedure is proposed, where four different criteria are compared with each other so as to find a solution with the best performance. In addition, the best approximate solution, obtained by this CGBH procedure after running all the criteria proposed, is compared with the lower bound obtained by an explicit column generation (CG) procedure, LP, to evaluate the distance between the approximate solution obtained and the optimum one. Although no criterion, according to the experimental results, is found superior to all other three in both robustness and quality of the solution obtained, it is found that the best solution obtained among those four criteria is often very close to LP, which means that the proposed algorithm can obtain a near optimal solution. In one word, the CGBH procedure proposed in this paper can obtain an efficient assignment of the surgical cases if the other resources (anesthesia and nursing staff, equipment, beds in the recovery room and etc.) are well organized.
H. Fei () · N. Meskens GPO department, Catholic University of Mons (FUCaM), 151 Chaussée de Binche, 7000, Mons, Belgium e-mail:
[email protected] N. Meskens e-mail:
[email protected] C. Chu ICD-LOSI, University of Technology of Troyes, Troyes, France e-mail:
[email protected]
92
Ann Oper Res (2009) 166: 91–108
Keywords Operating room planning problem · Open scheduling · Column generation · Heuristic procedure
1 Introduction Like many other organizations, hospitals have faced multiple challenges in the past decade, such as the increase in the elderly population, the occurrence of new diseases, much more budgetary constraints and etc. In Belgium, the national budget is divided among the hospitals on the basis of a scoring system, where the duration of inpatient hospitalization is regarded as one of the indicators. If the hospitalization lasts for too long, the surplus capacity is no longer guaranteed by the government (Corens 2007). Confronted with this situation, hospitals have to take actions to improve the efficiency and quality of their services to satisfy their patients to the largest extent within a limited budget. Within the hospital, the operating theatre is always regarded as the most important part in the medico-technical platform, and it is one of the most expensive sectors too because it involves expensive labor resources (e.g. surgeons, anesthetists, nurses and etc.) and surgical equipments (Gordon et al. 1988; Macario et al. 1995). Furthermore, in many hospitals, the operating theatre often represents a bottleneck and causes an unexpected inpatient stay. Therefore hospital managers are always interested in finding an effective way of managing the operating theatre. Then how to build a well-organized system for an operating theatre? In general, hospital managers seek ways to minimize the operating cost of the operating theatre, while respect the needs of both surgical staff and patients, the availability of the recovery beds, and a low cancellation rate. Obviously it is quite difficult or even impossible to achieve all objectives above in just one model. In our opinion, the most important thing should be the construction of an effective assignment of the surgical cases because patients are the only “clients” of the operating theatre, and it is reasonable to assign surgical cases to operating rooms at first, and then adjust hospital resources to minimize unexpected waiting time in this sector. Therefore we are interested in studying operating theatre planning methodology. In addition, the emergency cases are not taken into account in this study because patients admitted from the emergency department are usually treated immediately after they arrive, and hence only elective surgical cases are normally assumed to have medium horizon planning duration (several weeks). According to the literature, more and more researchers have focused their study on the operating room planning problem in recent years (Ozkarahan 1995, 2000; Dexter et al. 1999, 2003; Dexter 2000; Guinet and Chaabane 2003; Fei et al. 2006; Jebali et al. 2006 etc.). Most of those researches are focused on three main planning strategies: • “Open scheduling” strategy: it was referred to as “Any Workday” strategy by Dexter et al. (2003), where the surgeons can choose any workday for a case, while it was simplified in Patterson (1996) as a strategy called “the first come first serve”. In the rest part of this paper, the “open scheduling” strategy always refers to the former definition. Although the name “open scheduling” is not explicitly mentioned, Guinet and Chaabane (2003) and Jebali et al. (2006) used this strategy as well. • “Block scheduling” strategy: the operating room planning problem is often solved in two steps: firstly, a master surgery schedule is constructed, normally several weeks or month in advance, by regarding this schedule as a cyclic timetable that defines the number and type of operating rooms available, the opening hours of operating rooms, and the allocation of blocks of operating room time to specific surgeons or groups of surgeons (Blake et al.
Ann Oper Res (2009) 166: 91–108
93
2002). In theory, the surgeons or groups “own” their blocks of time reserved, and those blocks can not be released. Secondly, the surgeons or groups assign their surgical cases to blocks of time reserved in the first step (Ozkarahan 1995, 2000; Dexter et al. 1999). • “Modified block scheduling” strategy: the strategy of “block scheduling” described above can be modified in two ways to provide for more flexible: either some opening hours of operating rooms are reserved in advance while the others are left open or unused blocks of time are released at some agreed-upon time, e.g. 72 hours before the surgery. Dexter (2000) applied this strategy to looking for an assignment of surgical cases with less overtime labor cost. In practice, the strategy of “block scheduling” is much more widely used in hospitals, especially in private hospitals, than the other two strategies. However, we focus on the strategy of “open scheduling” in this paper, because we find that the “block scheduling” strategy is a special case of the “open scheduling” strategy and all solutions of the “block scheduling” strategy must be feasible for the “open scheduling” strategy; i.e., the latter strategy is more flexible and tends to find a better assignment of the surgical cases than the former one. In the literature, two steps are often needed to schedule elective surgical cases into operating rooms: first, each surgical case is assigned a given date for surgery at the tactical planning stage; second, the patient sequence is determined for each operating room on each day at the daily scheduling stage (Ozkarahan 1995, 2000; Dexter et al. 1999; Guinet and Chaabane 2003; Fei et al. 2006; Jebali et al. 2006 and etc.). In addition, we find that most of the references found deal with either problems within the strategy of “block scheduling” (Ozkarahan 1995, 2000; Dexter et al. 1999), or daily scheduling problem (Jebali et al. 2006), or tactical planning problem of small size (Guinet and Chaabane 2003). Furthermore, we find that the quality of solutions obtained at the planning stage will obviously affect the quality of the final operating schedule because the daily scheduling problem is based on the solution obtained at the first stage. Therefore, in this paper, we aim at obtaining a good solution for the tactical planning problem of relative large size. As for the objective function, it aims at minimizing both over-utilization and under-utilization of operating rooms, like those objectives proposed by Ozkarahan (1995, 2000), Guinet and Chaabane (2003) and Jebali et al. (2006). The rest of this paper is organized as follows. Firstly, an integer programming formulation is constructed for the tactical operating room planning problem under consideration; secondly, this integer programming formulation is reformulated as a set-partitioning model; thirdly, some key points of the Column-Generation-Based heuristic (CGBH) procedure, which is proposed to solve the concerned model, are introduced. Afterwards, the framework of the CGBH procedure is described, and then experimental results are shown to evaluate its performance. Some conclusions and perspectives are given in the end of this paper.
2 Model of the tactical operating theatre planning problem within the strategy of “open scheduling” As mentioned above, the tactical operating room planning problem under consideration aims to allocate each day for each operating room during the planning period (a week) to a set of surgical cases awaiting treatment. Each surgical case has a deadline, the date before which the case must be performed. Obviously, all surgical cases with a deadline less than or equal to one week must be assigned, otherwise no feasible operating program is obtained at the planning stage. As for the other surgical cases, their assignment depends on the objective
94
Ann Oper Res (2009) 166: 91–108
function, which aims to maximize the utilization of the operating room and minimize the overtime cost. Furthermore, the assignment of surgical cases should comply with the opening hours of operating rooms and the availability of surgeons. Considering that the overtime labor rates are usually much higher than the standard ones, the objective function in this model is formulated as the minimization the weighted sum of the total unexploited hours and additional ones. In practice, the patient chooses his surgeon at the consultation stage, and therefore each surgical case will be only treated by a specific surgeon who already provided some consultation. Whenever a surgical case is assigned to a specific day, the other members of the surgical staff will be allocated by the operating theatre manager. Because of the variation and the complexity of the operating room planning problem, some hypotheses were adopted to define the problem under consideration: 1. All operating rooms are multifunctional; i.e., each surgical case can be operated in any operating room available by the specific surgeon before the given deadline. 2. No surgeon has priority to reserve a block of time in advance; i.e., the timetable assignment strategy used is “open scheduling”. 3. Human and instrumental resources, except for surgeons, are always available whenever they are needed; i.e., in terms of resource constrains only the availability of surgeons and the opening hours of operating rooms are taken into consideration. 4. There are always sufficient recovery beds; i.e., the restrictions on recovery room are relaxed here. 5. Emergency cases are not taken into consideration because the emergency cases are normally treated in one reserved operating room in Belgium. 6. Once a surgical case starts to be treated in an operating room, it can not be interrupted. With such simplification, the tactical operating room planning problem can be formulated as a binary integer programming formulation. The notation used in this mathematical model is as follows: NS : : ti : Di : ND : Md : Rkd : Skd : Adl : l : β:
Ckd :
Number of surgeons available on each planning day. Set of all surgical cases awaiting assignment. Operating time of surgical case i. Deadline of surgical case i in days; i.e. the day before which this surgical case must be performed. Number of days during the planning period, in this case ND = 5; i.e., one week. Number of multifunctional operating rooms available on day d. Regular length of opening duration of operating room k on day d. Maximum overtime of operating room k on day d. Maximum operating time available of surgeon l on day d. Set of surgical cases that will be treated by surgeon l. Cost ratio of a regular working hour and an hour of overtime; i.e. the penalty cost of the overtime, which is applied to make the constructed operating program use as little overtime as possible. Operating cost of operating room k on day d (the cost of both unexploited opening hours and overtime).
Decision variables otherwise = 0.
d = 1 if surgical case i is assigned to operating room k on day d; zik
Ann Oper Res (2009) 166: 91–108
95
The mathematical model for the tactical operating room planning problem is as follows: Min
ND Md
Ckd
=
d=1 k=1
ND Md
max
Rkd
−
i∈
d=1 k=1
d ti zik
d d ti zik − Rk ,β
(1)
i∈
s.t. Di M d
d zik = 1,
i ∈ , Di ≤ ND
(2)
d zik ≤ 1,
i ∈ , Di > ND
(3)
d=1 k=1 ND Md d=1 k=1
d ti zik ≤ Rkd + Skd ,
k ∈ {1, . . . , Md }, d ∈ {1, . . . , ND }
(4)
i∈ Md
d ti zik ≤ Adl ,
d ∈ {1, . . . , ND }, l ∈ {1, . . . , NS }
(5)
i ∈ , k ∈ {1, . . . , Md }, d ∈ {1, . . . , ND }
(6)
k=1 i∈l d ∈ {0, 1}, zik
The objective function seeks to minimize the cost of total unexploited opening hours and overtime. Since the cost per regular opening hour of the operating room can be regarded as a constant, it is omitted from the formula of the objective function. Constraints (2) and (3) ensure that, during the planning period, each surgical case whose deadline is no later than the end of the planning period (one week), is treated exactly once before the end of the planning period, while the other cases are treated at most once. Constraint (4) implies that the total operating time assigned to each operating room per day cannot exceed its maximum opening hours. Constraint (5) ensures that the total operating time assigned to each surgeon per day cannot exceed his maximum working hours on that day. This is necessary because one surgeon cannot work on two surgical cases simultaneously. Although it seems that a surgeon can be assigned to two or more surgical cases in parallel in this planning model, a feasible operating program can always be guaranteed when the patient sequence is well determined at the daily scheduling stage so long as this constraint is respected at the planning stage. Since it is well known that the binary integer programming has been proved to be NPhard by reduction from Satisfiability problems, the integer model constructed above is an NP-hard one, and therefore no polynomial algorithm can be found to systematically obtain its optimal solution. In consequence, either heuristic procedures are often implemented to get approximate solutions or exact methods such as Branch-and-Bound are proposed to solve them exactly. Considering that exact methods are always quite time-consuming, it is better to find a compromise between the efficiency of the method used and the quality of the solution obtained. In fact, hospital managers usually prefer an approximate solution of good quality, obtained in a reasonable running time, to an optimal one, which is obtained after an execution of several hours or even a few days. In consequence, this paper aims at finding out an approximate solution of good quality in reasonable running time. Furthermore, it is found that the Column Generation (CG) procedure can effectively obtain the optimal solution of the linear relaxation of a large-scale mixed integer programming and the objective value obtained is always quite close to the optimal objective value of the integer programming (Barnhart et al. 1998; Valvério de Carvalho 1998;
96
Ann Oper Res (2009) 166: 91–108
Chen and Powell 1999). Therefore it is likely that approximate solutions, obtained by a well-developed heuristic procedure that is based on the results obtained by the CG procedure, may be near to the optimal one and are obtained in reasonable execution time. Consequently, we developed a heuristic procedure, based on CG procedure, to solve the tactical operating room planning problem under consideration approximately. What’s more, four criteria are compared with each other in order to find out one with the best performance.
3 Reformulate the tactical operating room planning problem as a set-partitioning model Considering that CG procedure is often used to solve problems involving set-partitioning constraints, the integer model constructed in Sect. 2 will at first be reformulated as a problem with set-partitioning constraints. In this set-partitioning model, a plan represents an assignment of surgical cases to an operating room. What’s more, a feasible plan represents an assignment of surgical cases to an operating room where the total operating time of the cases assigned does not exceed the maximum opening hours of the corresponding operating room, which are equal to its regular opening hours plus its maximum overtime. Below described is the additional notation used in the set-partitioning model: Cj : Operating cost of Plan j ; i.e., the operating cost of either unused opening hours or overtime of the corresponding operating room when this plan is realized. : Set of all feasible plans during the planning period. aij = 1 if surgical case i is assigned to plan j ; otherwise = 0. bjd = 1 if plan j is scheduled on day d; otherwise = 0. ekj = 1 if operating room k is used by plan j ; otherwise = 0. Decision variables xj = 1 if plan j is accepted; otherwise = 0. The set-partitioning model of the tactical operating room planning problem under consideration, hereinafter referred to as SPM, is as follows: min
(7)
C j xj
j ∈
s.t.
aij xj = 1,
i ∈ , Di ≤ ND
(8)
aij xj ≤ 1,
i ∈ , Di > ND
(9)
j ∈
j ∈
bjd ekj xj ≤ 1,
j ∈
j ∈
bjd
k ∈ {1, . . . , Md }, d ∈ {1, . . . , ND }
aij ti xj ≤ Adl ,
l ∈ {1, . . . , NS }, d ∈ {1, . . . , ND }
(10)
(11)
i∈l
xj ∈ {0, 1},
j ∈
(12)
Ann Oper Res (2009) 166: 91–108
97
The operating cost of plan j , Cj , is calculated by the following formula Cj = max
N M d D
bjd ekj Rkd
−
aij ti , β
i∈
d=1 k=1
aij ti −
i∈
ND Md
bjd ekj Rkd
,
j ∈
d=1 k=1
(13) In each column of this set-partitioning model, parameters aij , bjd and ekj must respect the following constraints:
aij tj ≤
i∈ ND M0
ND Md
bjd ekj (Rkd + Skd ),
j ∈
(14)
d=1 k=1
bjd ekj = 1,
j ∈
bjd ekj = 0,
if ND > D¯ = min{aij Di |i ∈ },
(15)
d=1 k=1 ND Md
j ∈
(16)
d=D¯ k=1
Constraints (8) and (9) ensure that each surgical case, whose deadline is no later than the end of the planning period (one week), is assigned to exactly one plan that will be accepted before the end of the planning period, while other cases are assigned to at most one such plan. Constraint (10) shows that each operating room can be used by at most one accepted plan in one day. Constraint (11) is equivalent to constraint (5); i.e., it ensures that the total operating time for each surgeon per day cannot exceed his maximum working hours. Constraints (14) to (16), which are obeyed by the parameters in each column, ensure that each column corresponds to a feasible plan. Constraint (14) implies that the total operating time of each plan does not exceed the maximum opening hours of the operating room where it is carried out; Constraint (15) ensures that each plan corresponds to just one available operating room during the planning period; and Constraint (16) implies that each plan, containing surgical cases with deadline no later than the end of the planning period, is implemented before the deadline of those surgical cases. It is obvious that the SPM represents the same tactical operating room planning problem as the integer model described in Sect. 2. The reasons are as follows: • Constraints (8), (9), (15) and (16) mean the same as constraints (2) and (3). • Constraints (14) and (15) are equivalent to constraint (4). • The objective function of this set-partitioning model is the same as that of the mathematical model described in Sect. 2 because we can conclude from constraints (10) and (15) that when one plan is accepted, its cost represents also the operating cost of the operating room where this plan is carried out, and therefore the total cost of a set of plans accepted is equal to the total cost of operating rooms occupied during the planning period. As far we have described the tactical operating room planning problem under consideration and constructed a set-partitioning model for it where each column corresponds to a feasible plan. As mentioned above, the CG procedure can optimally solve the linear relaxation of the SPM, and then a heuristic procedure, based on the solution obtained by the CG procedure, is likely to construct a good feasible solution. Considering that the CG procedure used is a standard one, its details are omitted in this paper, and just some tailor-made key points are introduced below. Afterwards, the Column-Generation-Based heuristic (CGBH) procedure will be described.
98
Ann Oper Res (2009) 166: 91–108
4 Key points of the Column-Generation-Based Heuristic (CGBH) procedure 4.1 Decomposition of the set-partitioning model By Observing the SPM constructed above, we find that there are two kinds of constraints in this model: constraints (8) to (12) that are related to the decision variables xj , and constraints (14) to (16) that are independent of the decision variables. According to Dantzig and Wolfe (1960), the SPM can be decomposed into two parts: a set-partitioning master problem (MP) and an auxiliary problem (AP). The MP takes the same objective as the SPM and contains just the former kind of constraints; i.e., constraints (8) to (12). In fact, in the MP, the values of all the parameters aij , bjd and ekj have already been either determined by solving the AP that takes into account the latter kind of constraints; i.e., constraints (14) to (16). The objective of the AP is to find out a column with minimum reduced cost. By relaxing the integer constraint of the MP, its linear relaxation, LMP (linear master problem), is obtained, whose columns correspond to all possible feasible plans. Considering the big difficulty in listing all the possible plans, we will firstly deal with a partial set of feasible plans that can be listed explicitly. The linear master problem that is composed of a finite set of columns, each of which corresponds to a feasible plan and where at least one feasible solution of the LMP can be derived from, is called the restricted master problem (RMP), whose optimal solution can be easily obtained by a linear programming solver. Then, an explicit CG procedure, which is assisted by a dynamic programming procedure in solving the auxiliary problem so as to generate columns to be inserted, will be applied to solve the LMP for its optimal solution. As the optimal solution of LMP respects all constraints of the SPM, except the integer one, it can be regarded as a lower bound of the operating room planning problem under consideration. 4.2 Auxiliary problem Auxiliary problem aims to determine values of parameters aij , bjd and ekj for one column, with an objective of minimizing the corresponding reduced cost, so that it can either be inserted into the current RMP problem to improve the current solution when one column with negative reduced cost is obtained, or be used as the terminal condition when the minimum reduced cost is non-negative. Since both constraints (8) and (9) correspond to parameters aij , we regard their dual variables as one group and name them as πIi (i ∈ ), where πIi (i ∈ , Di ≤ ND ) correspond to constraints (8) and πIi (i ∈ , Di > ND ) correspond to constraints (9). In addition, we make πII dk (d = 1, . . . , ND , k = 1, . . . , Md ) and πIII dl (d = 1, . . . , ND , l = 1, . . . , NS ) dual variables that correspond to constraints (10) and (11) respectively. Afterwards, for each column j of RMP, its reduced cost can be formulated as follows: σj = C j −
i∈
aij πIi −
ND Md d=1 k=1
bjd ekj πII dk
−
ND NS d=1 l=1
bjd ekj
(aij ti )πIII dl
(17)
i∈l
Thus we can construct an auxiliary problem with an objective of minimizingσj while respecting constraints (14) to (16), in order to find a column with minimum reduced cost. Due to constraint (15), one column just corresponds to one operating room on one day, and therefore, the auxiliary problem can be simplified by being divided into a set of independent sub-problems (SPs), each of which corresponds to a single operating room on one day during the planning period. In addition, constraint (16) helps to reduce the set of surgical cases awaiting assignment for each operating room on each day.
Ann Oper Res (2009) 166: 91–108
99
Before going further, the notation used in SPs is described as follows: dk : A set of surgical cases awaiting assignment for operating room k on day d. Decision variables yi = 1 if surgical case i is assigned to operating room k on day d; otherwise = 0. Sub-problem (SP): Single operating room assignment problem for operating room k on day d yi ti , β yi ti − Rkd yi πIi − πII dk − min max Rkd − yi
i∈dk
−
NS l=1
s.t.
i∈dk
i∈dk
(yi ti )πIII dl
(18)
i∈l ∩dk
yi ti ≤ Rkd + Skd
(19)
i∈dk
yi ∈ {0, 1},
i ∈ dk
(20)
Moreover, this sub-problem can still be decomposed into two cases according to its objective function. Case_SP_1 Min Rkd y i
s.t.
−
yi (ti + πIi ) − πII dk
i∈dk
−
NS l=1
(yi ti )πIII dl
(21)
i∈l ∩dk
yi ti ≤ Rkd
(22)
i∈dk
yi ∈ {0, 1},
i ∈ dk
(23)
Case_SP_2 Min −βRkd +
yi (βti − πIi ) − πII dk −
i∈dk
s.t.
NS l=1
(yi ti )πIII dl
(24)
i∈l ∩dk
yi ti > Rkd
(25)
yi ti ≤ Rkd + Skd
(26)
i∈dk
i∈dk
yi ∈ {0, 1},
i ∈ dk
(27)
100
Ann Oper Res (2009) 166: 91–108
Since the Case_SP_1 is exactly a knapsack problem (Martello and Toth 1990) and the Case_SP_2 is also similar to that kind of problem, these sub-problems can easily be solved by dynamic programming procedures, described in the following section. 4.3 Dynamic programming procedures for solving SPs First, the notation used in the dynamic programming procedure is introduced below: lr : Surgeon who will treat the surgical case r. Nkd : Number of surgical cases awaiting assignment for operating room k on day d. F (r, t): Reduced cost of an actual partial plan, consisting of a subset of surgical cases,Br ⊆ {1, . . . , r} ⊆ dk , whose total operating time is equal to t; i.e., t = i∈Br ti . The dynamic programming procedure for solving Case_SP_1 is as follows: Step 1: Initial setting. F (0, t) = +∞ for all 0 < t ≤ Rkd or t < 0. If no surgical case has been assigned to one plan (r = 0), obviously the total operating time of this plan is always zero; i.e., the corresponding t should be zero too, and F (0, t), therefore, corresponds to an infeasible plan when 0 < t ≤ Rkd or t < 0 and has no meaning. In order to avoid choosing such kind of plans, a big enough value is chosen so that this kind of plans will not be a choice for the final solution. In the Dynamic Programming procedure for Case_SP_2, F (0, t) is set as +∞ for 0 < t ≤ Rkd + Skd or t < 0. F (0, 0) = Rkd − πII dk the reduced cost of the empty plan is set at first. In the Dynamic Programming procedure for Case_SP_2, F (0, 0) will be −βRkd − πII dk . Step 2: This is the main part of this Dynamic Programming procedure. For all t from 0 to the maximum regular opening hours of operating room k on day d, Rkd , we checked all possible groups of surgical cases awaiting assignment so as to find a feasible plan. If there is one subset of surgical cases Br ⊆ {1, . . . , r}, whose total operating time i∈Br tr = t , F (r, t) equals the reduced cost of the column corresponding to this intermediate plan, namely the objective value of the concerned SP. In the Dynamic programming procedure for Case_SP_2, t = 0 to the maximum opening hours of this operating room, which is equal to the maximum regular opening hours Rkd plus the maximum overtime Skd , will be checked and the recursion formula becomes F (r, t) = min{F (r − 1, t), F (r − 1, t − tr ) + βtr − πIr − tr πIII dlr . For all the r ∈ dk and t ∈ [0, Rkd ], calculate F (r, t) = Min{F (r − 1, t), F (r − 1, t − tr ) − (tr + πIr + tr πIII dlr )} Step 3: Select the optimum solution F (Nkd , t ∗ ) = min0≤t≤Rd {F (Nkd , t)}. k In step 2, we calculated value for all the F (r, t) where r ∈ dk and t ∈ [0, Rkd ]. In fact, after performing iterations in step 2, this dynamic programming procedure can obtain either an empty plan for the concerned operating room with F (Nkd , 0) = Rkd − πII dk or some non-empty feasible plans whoseF (Nkd , t) < +∞. In this step, we will select one plan with minimum reduced cost; i.e., F (Nkd , t) where 0 ≤ t ≤ Rkd . In the dynamic programming procedure for Case_SP_2, neither the feasible solution nor the selection will be done among feasible plans with F (Nkd , t) < +∞ where Rkd < t ≤ Rkd + Skd . In each iteration of the explicit CG procedure, both dynamic programming procedure for Case_SP_1 and that for Case_SP_2 are executed, and then a comparison is made between the optimum plan obtained in Case_SP_1 and that obtained in Case_SP_2 in order to select the better one. If negative is the reduced cost of the column that corresponds to the plan selected in this dynamic programming procedure, i.e. the value of F (Nkd , t), this column
Ann Oper Res (2009) 166: 91–108
101
generated will be inserted into the current RMP’s basis; otherwise the explicit CG procedure will be stopped because there is no more column with negative reduced cost and the optimal solution of the linear relaxation of the integer programming has been obtained. 4.4 Generation of the initial RMP As is known, the explicit CG procedure begins with an initial RMP, where we obtain a feasible solution of the planning problem. In this paper, the initial RMP is constructed as follows: first, the EBFDFC procedure (see below for details) is used to assign surgical cases to operating rooms during the planning period under consideration. If there are still surgical cases awaiting assignment, but no operating rooms are available according to the EBFDFC method, additional plans can be constructed by assigning each of the remaining surgical cases to an operating room before its deadline; in other words, an additional set of plans with only one surgical case is constructed. Finally, the initial RMP is constructed, where each column corresponds to one feasible plan. Extended best-fit descending with fuzzy constraints (EBFDFC) is as follows: • Elective cases are first sorted by deadline, from the nearest to the furthest. Cases with the same deadline are sorted again by operating time in descending order. • Best fit is applied to determine which operating room each case is assigned to, with the constraints that (1) each case should preferably be assigned to the regular opening hours of an operating room before its deadline; and (2) the total operating time of surgical case assigned to one surgeon in a day cannot exceed his maximum working hours. • If no operating room has sufficient remaining time for the case before its deadline within regular opening hours, fuzzy constraints, which have been adjusted to deal with the concerned problem, are added. The fuzzy constraints are as follows: if some operating rooms have sufficient remaining opening time, taking into account limited overtime (defined as Min{15 minutes, the operating room’s maximum overtime}), then the case was assigned to the operating room with the most remaining opening time (remaining regular opening hours plus limited overtime). • If there are still surgical cases with deadlines of less than a week waiting to be assigned, but no operating room has sufficient remaining opening hours within the fuzzy constraints defined above, then the case was assigned to the operating room with the most remaining opening hours within the maximum overtime.
5 Column-Generation-Based Heuristic (CGBH) procedure with four criteria As shown in Fig. 1, the CGBH procedure is as follows: • Step 0: Make SPM the current problem; i.e., at the beginning of this procedure, neither surgical case has been assigned nor operating room has been used. • Step 1: Solve the current problem’s LMP by the explicit CG procedure. • Step 2: If the solution obtained in Step 1 respects the integer constraints, meaning that the x-variables are either one or zero, this procedure will be stopped. If this is the first iteration, the optimal solution of the planning problem will be obtained; otherwise, an approximate solution will be obtained. • Step 3: If the solution obtained in Step 1 does not respect the integer constraints (because the integer constraints were relaxed in LMP), only a lower bound of the current planning problem is produced. In this case, one plan will be selected by one of the four criteria defined below.
102
Ann Oper Res (2009) 166: 91–108
Fig. 1 Framework of the CGBH procedure
• Step 4: Add the selected plan to the list of final plans (which is empty at the beginning of this procedure), and remove the surgical cases assigned and the operating room used by the selected plan. A reduced planning problem is then obtained. • Step 5: When all the surgical cases have been assigned, or all the operating rooms have been planned, the CGBH procedure is complete. If all surgical cases whose deadlines are no later than the end of the planning duration are assigned, an approximate solution will be obtained; otherwise, no feasible solution is obtained in the heuristic procedure. If all surgical cases have been assigned while some rooms still remain free, construct the
Ann Oper Res (2009) 166: 91–108
103
empty plans for those unused rooms. In case that there are still some unassigned cases and unallocated rooms, make the reduced planning problem the current problem and return to Step 1. The criteria used in Step 3 of the CGBH procedure aim to select one plan with good quality so that the final set of plans selected; i.e. the approximate solution of the planning problem, will be close to the optimal one. As mentioned above, if values of decision variables are all integers; i.e., they are either zero or one for the optimal solution of LMP, the optimal solution is obtained for the planning problem and the plans, corresponding to decision variable equal to one, construct an optimal surgical cases assignment. What’s more, the less operating cost one plan has, the more likely it will be included in the optimal assignment. Based on this idea, four criteria below are proposed to select a plan in Step 3. • Criteria 1 (MaxXMinC): If several decision variables are equal to one, the plan with the smallest operating cost will be selected; if all the decision variables are fractional, the plan whose corresponding decision variable is the largest (closest to one) will be selected. Ties are broken by selecting the plan with the least operating cost. • Criteria 2 (MinCMaxX): If several decision variables are equal to one, the plan with the smallest cost will be selected; if all the decision variables are fractional, one plan with the smallest operating cost will be selected. Ties are broken by selecting the plan whose corresponding decision variable is the largest. • Criteria 3 (MinCDXMaxX): One plan corresponding to the smallest Cj /xj (0 < xj ≤ 1) will be selected from the plans whose corresponding decision variables are positive. Ties are broken by selecting the plan whose corresponding decision variable is the largest. • Criteria 4 (MinCDXMinC): One plan corresponding to the smallest Cj /xj (0 < xj ≤ 1) will be selected from the plans whose corresponding decision variables are positive. Ties are broken by selecting the plan with the smallest operating cost.
6 Experimental results 6.1 Requirements The problem was solved in the following environment: • Hardware for running the algorithm: IBM ThinkPad T42 (CPU: PM 1.6 GHz, memory: 256 Mb). • Software development environment: Microsoft VC++ 2005 Express Edition. • Linear programming solver: CLP (http://www.coin-or.org/Clp/index.html). 6.2 Data The planning period comprises 5 days (a week). The distribution rule, used to generate experimental data for the operating time in the current studies, is usually the normal distribution rule (Dexter 2000) or lognormal distribution rule (Jebali et al. 2006). However, Combes et al. (2004) show that the Pearson III distribution fits the distribution of operating time very well. Therefore, in this paper, the operating time of surgical cases will be randomly generated from Pearson III distribution. Data used in the experiments are as follows: – Operating time of Surgical case i, ti , is generated from Pearson III distribution rule between [40, 150] with the mean 90 and the standard deviation 15 (unit: minute).
104
Ann Oper Res (2009) 166: 91–108
– Deadline of surgical case i, Di , is generated from uniform distribution between [1, 14] (unit: day). – The cost ratio between a regular working hour and overtime is taken to be β = 1.5. – There are 6 multifunctional operating rooms and 8 surgeons. In addition, the assignment of surgical cases to surgeons is randomly generated as follows: Firs of all, a number between [1, 8] is randomly generated for each surgical case. If it equals k for one surgical case, it means this surgical case will be treated by surgeon k. What’s more, we supposed that for all the examples tested in experiments, the data concerned with the maximum open hours of operating rooms and maximum working hours of surgeons during the planning period are give by the following Tables 1 and 2. Seven scenarios, with different numbers of surgical cases awaiting assignment [Ncase = 40, 60, 80, 100, 120, 140, 160], are tested. Each of these scenarios was run 10 times, giving 70 examples in total. 6.3 Computational results A comparison was made between approximate solutions obtained by the CGBH procedure with different criteria. What’s more, for those scenarios with at least one example having fractional optimum solution for its linear relaxation, one of such examples is executed 10 times for each criterion to find one with the best robustness. In addition, the best approximate Table 1 Maximal operating duration available of surgeons (unity: hour) Day Monday
Tuesday
Wednesday
Thursday
Friday
Surgeon 1
8
0
7
0
Surgeon 2
8
4
5
6
6 5
Surgeon 3
12
3
6
7
8
Surgeon 4
5
3
4
8
10
Surgeon 5
6
5
0
6
8
Surgeon 6
6
0
5
7
9
Surgeon 7
0
6
6
6
9
Surgeon 8
0
6
6
8
10
Table 2 Open duration of operating rooms during the planning period (unity: hour) k
d Monday
Wednesday
Thursday
Friday
Rk1
Sk1
Rk2
Tuesday Sk2
Rk3
Sk3
Rk4
Sk4
Rk5
Sk5
1
8
2
5
3
4
3
6
0
5
2
2
5
0
7
0
8
1
5
2
4
2
3
7
2
6
2
7
2
8
2
6
1
4
4
1
5
3
8
1
4
2
8
0
5
8
2
8
0
5
2
7
2
4
0
6
8
0
–
–
5
2
4
2
7
0
Ann Oper Res (2009) 166: 91–108
105
Table 3 Comparison of objective values of solutions obtained by the CGBH procedure with four criteria H1
H2
H3
40
7895
7895
7895
7895
60
6457.5
6457.5
6457.5
6457.5
Ncase
H4
80
5137.5
5137.5
5137.5
5137.5
100
3748.4
3743
3748
3748.5
120
2460.8
2429.4
2457.5
2454.3
140
1291.9
1242.5
1255
1255
160
297.0
INF
INF
INF
In this table, H1 to H4 represent the CGBH procedure with the criteria MaxXMinC, MinCMaxX, MinCDXMaxX and MinCDXMinC respectively. The values listed in this table are the average objective value of those examples where feasible solutions can be obtained by the CGBH procedure with the corresponding criteria within ten times of execution. “INF” means that the CGBH procedure with the corresponding criterion can not obtain a feasible solution within ten times of execution for all ten examples in this scenario
solution, selected among those obtained by the CGBH procedure with four criteria (a feasible solution of the tactical operating room planning problem), is compared with a lower bound obtained by the explicit CG procedure (the optimal solution of the linear relaxation of the SPM) so as to evaluate the performance of the CGBH procedure. From these tables, we find out the following issues: • From Table 3, we find that all the tested examples of small size (Ncase = 40, 60, and 80) are optimally solved by the explicit CG procedure; therefore, there is no difference between those criteria. As for those examples of large size (Ncase = 100, 120, 140, 160), the CGBH procedure with criterion MinCMaxX (H2) can obtain the best solution among those four criteria in most of the cases once it can obtain a feasible solution. However, it should be noted that H2 cannot always obtain a feasible solution, especially in the scenario of Ncase = 160. In fact, among the 70 examples tested, only 58 examples (74.29%) can be solved by H2 while 100% of them can be solved by the CGBH procedure with criterion MaxXMinC (H1) within ten times of execution (the CGBH procedure with criterion MinCDXMaxX (H3): 72.85%, the CGBH procedure with criterion MinCDXMinC (H4): 71.43%). Anyway, all examples can be solved by the CGBH procedure after running all the four criteria (H) within ten times of execution. • In Table 4, we compare the approximate solution obtained by H with the lower bound obtained by the explicit CG procedure, LP, and find out that 45 examples (45/70 = 64.29%) can be optimally solved by the explicit CG procedure. With regard to the others, the objective value of the solution obtained by H is normally very close to LP while the gaps between these two values become relatively large for the largest case (Ncase = 160). • As the tested examples in scenarios of Ncase = 40, 60 and 80 are all optimally solve by the explicit CG procedure, only results obtained by the CGBH procedures with different criteria for examples in scenarios of Ncase = 100, 120, 140 and 160 are compared in Table 5. Table 5 indicates that the number of the columns generated in each heuristic procedure, together with the running time, increases while the size of problems increases. Given the same size, the number of column generated and the running time in H1 is the largest while those of the other three are very close. As the best approximate solution cannot be obtained until the execution of all those four criteria, the running time used for H is the sum of those four heuristic procedures. According to results listed in Table 5, we find
106
Ann Oper Res (2009) 166: 91–108
Table 4 Comparison of a lower bound obtained by the explicit CG procedure and the objective value of the best approximate solution obtained by the CGBH procedure after running all those four criteria Ncase
H
LP
Min{(H−LP)/H}
Average {H−LP)/H}
(%)
(%)
Number of examples solved by CG procedure
40
7895
7895
0
0
60
6457.5
6457.5
0
0
10 10
80
5137.5
5137.5
0
0
10
100
3747.17
3742.29
0
0.13
9
120
2465.33
2409.18
0
2.20
5
140
1246.65
1166.49
160
465.94
297.02
0 6.5
4.73
1
34.58
0
In this table, LP represents the optimum objective value of the SPM’s linear relaxation, obtained by the explicit CG procedure (integer constraints are not usually respected by this solution); H represents the objective value of the best approximate solution, selected among approximate solutions obtained by the CGBH procedure after running all those four criteria; “Number of examples solved by CG procedure” represents the number of examples whose optimal integer solution is obtained by the explicit CG procedure. In this table, both LP and H are the average value of the ten examples tested in each scenario because the CGBH procedure can obtain feasible solutions for all the examples tested after running four criteria
Table 5 Comparison of numbers of columns generated (NColGen) and the running time (CPU) used by the CGBH procedure with four criteria Criteria
Ncase 100
120
140
160
NColGen
CPU
NColGen
CPU
NColGen
MaxXMinC
425.6
18.14
1285.1
61.24
1963.5
98.05
MinCMaxX
425.08
18.00
31.86
1556.5
670.02
INF
INF
MinCDXMaxX
265.6
11.94
95.52
1616.5
71.53
INF
INF
MinCDXMinC
295.4
12.22
23.7
1518
66.33
INF
INF
613.63 2084.2 512.14
CPU
NColGen
CPU
4878.5
370.59
that all examples can be solved within some minutes (the largest one takes less than 15 minutes) by H. • Table 6 shows the comparison of the average relative error of solutions, obtained by different criteria after ten times of execution, and their standard deviation. With the same reason as above, and only results of those scenarios of Ncase = 100, 120, 140 and 160 are listed. According to the obtained results, it is found that the average relative error, between the objective value of solution and that of the best one, of H2 is the smallest though the smallest value of standard deviation is obtained by H1, whose average errors are always the largest. This shows that H1 has the largest robustness while the quality of its solutions is not as good as the others. However, the other three criteria cannot always find feasible solutions, especially for the problem of large size. Therefore, it is necessary to execute several criteria to secure that the algorithm has good robustness and to obtain a solution with good quality.
Ann Oper Res (2009) 166: 91–108
107
Table 6 Comparison of average deviations of solutions obtained by executing different heuristic procedure Ncase H* 100
MaxXMinC
MinCMaxX MinCDXMaxX MinCDXMinC FourCriteria
0.014
0.005
0.013
Standard
0.008
0.006
0.003
0.001
0.009
deviation
(10 samples) (4 samples)
(3 samples)
(3 samples)
(10 samples)
0.073
0
0
0
0.05
Standard
0.011
Just one
0
Just one
0.05
deviation
(4 samples)
sample
(2 samples)
sample
0.069
0
0.017
0
0.058
Standard
0.07
Just one
Just one
Just one
0.08
deviation
(4 samples)
sample
sample
sample
0.145
INF
INF
INF
0.145
0.097
INF
INF
INF
0.097
3840 Average
0.014
0.013
((Hi−H*)/H*)
(Hi−H*)/H* 120
2490 Average ((Hi−H*)/H*)
(Hi−H*)/H* 140
1430 Average ((Hi−H*)/H*)
(Hi−H*)/H* 160
370
Average ((Hi−H*)/H*) Standard deviation (Hi−H*)/H*
Comment: in this table, H* represent the best solution obtained by the CGBH procedure with four criteria within ten times of execution; samples correspond to the times that one feasible solution of the example tested is obtained by the CGBH procedure with the corresponding criterion. “INF” represents “no feasible solution is obtained”
7 Conclusions and perspectives In this paper, a tactical operating room planning problem is studied and a mathematical model is constructed to assign surgical cases into operating rooms within one week by using the “open scheduling” strategy. The objective of the problem under consideration is not only to maximize operating room utilization but minimize its overtime cost. In order to provide a good solution to this constructed model within a reasonable running time, this mathematical model is at first be reformulated as a set-partitioning model and then solved by a columngeneration-based heuristic (CGBH) procedure, where four criteria are proposed. According to the experimental results, some observations can be made as follows: (1) After running all the criteria proposed, the CGBH procedure can obtain an approximate solution with objective value very close to a lower bound, LP, obtained by the explicit CG procedure when solving the linear relaxation, though the gap between its objective value and LP becomes larger as the size of problems grows; (2) no criterion is found to outperform all other three in both the robustness and the quality of the solution obtained; and therefore, it is necessary to execute several heuristic criteria together to secure that the proposed algorithm has good robustness and to obtain a solution with good quality. In one word, the heuristic procedure
108
Ann Oper Res (2009) 166: 91–108
proposed in this paper can obtain an efficient assignment of surgical cases in reasonable time if other resources (anesthesia and nursing staff, equipment, beds in the recovery room and etc.) are well organized. Since the planning problem under consideration is solved approximately by the method proposed in this paper and all data are generated randomly, some further efforts can be made in future: on the one hand, some more constraints, such as the availability of other members of the surgical staff (anesthetists, nurses and etc.), will be taken into account to construct a more practical model; on the other hand, since the model proposed in this paper only solves the planning problem, further studies could be made for the scheduling problem so as to construct a effective weekly operating program.
References Barnhart, C., Johnson, E. L., Nemhauser, G. L., Savelsbergh, M. W. P., & Vance, P. H. (1998). Branch-andprice: column generation for solving huge integer programs. Operations Research, 46, 316–329. Blake, J. T., Dexter, F., & Donald, J. (2002). Operating room manager’s use of integer programming for assigning block time to surgical groups: A case study. Anesthesia and Analgesia, 94, 143–148. Chen, Z., & Powell, W. B. (1999). Solving parallel machine scheduling problems by column generation. Journal of Computing, 11(1), 78–94. Combes, C., Dussauchoy, A., Chaabane, S., Smolski, N., Viale, J. P., & Souquet, J. C. (2004). Démarche méthodologique d’analyse des données pour la planification des blocs opératoires: une application à un service d’endoscopie, Actes GISEH’04, Mons, Belgium. Corens, D., (2007). Belgium: Health system review. S. Merkur, N. Jemiai & W. Palm (Eds.), Health systems in transition, 9(2). World Health Organization. Dantzig, G. B., & Wolfe, P. (1960). Decomposition principle for linear programs. Operations Research, 8, 101–111. Dexter, F. (2000). A strategy to decide whether to move the last case of the day in an operating room to other empty operating room to decrease overtime labor costs. International Anesthesia Research Society, 91, 925–928. Dexter, F., Macario, A., & Traub, R. D. (1999). Which algorithm for scheduling add-on Elective cases maximizes operating room utilization? Anesthesiology, 91, 1491–1500. Dexter, F., Traub, R. D., & Macario, A. (2003). How to release allocated operating room time to increase efficiency: predicting which surgical service will have the most underutilized operating room time. Anesthesia and Analgesia, 96, 507–512. Fei, H., Combes, C., Meskens, N., & Chu, C. (2006). Endoscopy scheduling problem: a case study, INCOM2006 (pp. 635–640), st-Etienne, France. Gordon, T., Lyles, A. P. S., & Fountain, J. (1988). Surgical unit time utilization review: Resource utilization and management implications. Journal of Medical Systems, 12, 169–179. Guinet, A., & Chaabane, S. (2003). Operating theatre planning. International Journal of Production Economics, 85(1), 69–81. Jebali, A., Hadj Alouane, A. B., & Ladet, P. (2006). Operating room scheduling. International Journal of Productions Economics, 99, 52–62. Macario, A., Vitez, T. S., Dunn, B., & Mcdonaled, T. (1995). Where are the costs in perioperative care? Anesthesiology, 83(6), 2–4. Martello, S., & Toth, P. (1990). Knapsack problems: algorithms and computer implementation. New York: Wiley. Ozkarahan, I. (1995). Allocation of surgical procedures to operating rooms. Journal of Medical Systems, 19, 333–352. Ozkarahan, I. (2000). Allocation of surgeries to operating rooms using goal programming. Journal of Medical Systems, 24(6), 339–378. Patterson, P. (1996). What makes a well-oiled scheduling system. OR Manager, 12(9), 19–23. Valvério de Carvalho, J. M. V. (1998). Exact solution of cutting stock problems using column generation and branch-and-bound. International Transactions in Operational Research, 5(1), 35–44.