Computers in Biology and Medicine 43 (2013) 2103–2109

Contents lists available at ScienceDirect

Computers in Biology and Medicine journal homepage: www.elsevier.com/locate/cbm

Algorithms for scheduling of chemotherapy plans Suleyman Sevinc a,n, Ulus Ali Sanli b, Erdem Goker b a b

Department of Computer Engineering, Dokuz Eylul University, Turkey School of Medicine, Oncology Department, Aegean University, Turkey

art ic l e i nf o

a b s t r a c t

Article history: Received 20 January 2011 Accepted 8 October 2013

Chemotherapy is used to control and cure cancer by using drugs to destroy cancer cells. Treatment schedules for chemotherapy may vary depending on the type of cancer, the goals of treatment, the type of chemotherapy and the patient's state of health. Chemotherapy is usually given in cycles of a treatment-period followed by a rest-period. An oncologist decides the choice of a particular regimen; however, modifications to drug dose and schedule are often necessary because of variabilities in the health of an individual patient. Therefore an orderly execution of chemotherapy regimens requires management, scheduling and allocation of the resources available. Chemotherapy scheduling is an optimization problem. In this paper, a two-phase approach has been adopted to deal with the problem. An adaptive negative-feedback scheduling algorithm is proposed for the first phase to control the load on the system. Two heuristics based on the ‘Multiple Knapsack Problem’ have been evaluated for the second phase to assign patients to specific infusion seats. The overall design has been put to test at a local chemotherapy center and has yielded good results for patient waiting times, orderly execution of chemotherapy regimen and utilization of infusion chairs. & 2013 Elsevier Ltd. All rights reserved.

Keywords: Chemotherapy regimen Chemotherapy scheduling Chemotherapy algorithms Resource allocation Chemotherapy management software Adaptive scheduling

1. Introduction Chemotherapy (CT) is used to control and cure cancer by using chemotherapeutic agents to destroy cancer cells. Treatment schedules for chemotherapy may vary depending on the type of cancer, the goals of treatment, the type of chemotherapy and the patient's state of health. Chemotherapy is usually given in cycles of a treatment-period followed by a rest-period. An oncologist decides the choice of a particular regimen and it must be executed steadfastly. However, modifications to drug dose and schedule are often necessary because of variabilities in the health of an individual patient. An orderly execution of chemotherapy regimens requires carefully designed policies for the management, scheduling and allocation of resources available. Therefore it is an optimization problem. The objective function and the constraints selected for the optimization problem must relate to the success of the medical objectives of the CT treatment and to the comfort of patients who receive the treatment. A typical objective function may be to minimize patient waiting time and to maximize infusion chair utilization under the constraints of available oncologist time, nurse time and infusion chair time. In this paper, a two-phase approach has been adopted to deal with the problem. An adaptive negative-feedback scheduling algorithm is proposed for the first stage to control the load on

the system. Two heuristics have been evaluated for the second phase to assign patients to specific infusion seats. The overall design has been put to test at a local chemotherapy center1 which has 10 oncologists, 15 nurses, 25 beds and 42 seats and cares for about 15,000 patients annually. The system was developed and installed in 2008 and has yielded good results for patient waiting times, orderly execution of chemotherapy regimen and utilization of infusion chairs. The remaining of the paper is organized as follows. Section 2 presents the background information on the chemotherapyscheduling problem. Section 3 sets out the goals of the chemotherapy scheduling. Section 4 takes a close look at modeling of constituents of a chemotherapy regimen, which is important to appreciate some of the subtle points in our work. In Section 5, we detail our approach and the algorithms we use to solve the CT scheduling problem. The background material relating to the Knapsack Problem, a variation of which is used in our solution, is also presented in Section 5. Some simulation studies are presented in Section 6. These simulation studies demonstrate the validity of the approach we have taken. Section 7 summarizes the conclusions we draw from our work and it also outlines the issues relating to the future work. In the end we express a few words of appreciation to those who contributed to our work.

n

Corresponding author: Tel.: þ 90 5332216066; fax: þ90 2324127403. E-mail addresses: [email protected] (S. Sevinc), [email protected] (U.A. Sanli), [email protected] (E. Goker). 0010-4825/$ - see front matter & 2013 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.compbiomed.2013.10.012

1 This work was conducted for the Tulay Aktas Oncology Hospital within the Aegean University in Izmir, Turkey in 2008.

2104

S. Sevinc et al. / Computers in Biology and Medicine 43 (2013) 2103–2109

2. Background Appointment systems in hospital outpatient departments have been under study for a very long time [1–4]. An extensive review of related work can be found in [5]. The problem of managing outpatient appointments involve scheduling of patients for clinical services for a particular day, therefore, contiguity or repetition of appointments is not part of the problem to be solved. That is patients leave the system as soon as they receive the services planned for them. The problem of scheduling chemotherapy regimens differs from the general problem of managing outpatient appointments because execution of a chemotherapy regimen typically spans over a few months. In addition, modifications to drug dose and schedule are often necessary because of variabilities in the health of an individual patient. There are also other aspects of chemotherapy planning, scheduling and management to make it worth to receive special attention and they will be pointed throughout the current publication. Experience shows that patient waiting times at chemotherapy centers may get out of control if the related processes are not managed carefully [6,7]. Recognizing this fact, an early attempt to automate chemotherapy planning was reported in [8], although it was more of a decision-support system than a full-scale automation. A fully automated system based on a variation of the Knapsack algorithm to do the scheduling of chemotherapy regimens at an oncology hospital is presented in [9]. A two-phase approach has been taken in this work; first patients are scheduled for a laboratory-based assessment and second they are scheduled for infusion on the next day provided that their lab results permit. Since many components of chemotherapy planning and scheduling are stochastic in nature, overbooking is allowed. A control variable is introduced and a negative feedback cycle is defined to control the overall patient load on the system at the desired level. The approach taken in [9] permits targeting of specific utilization levels, therefore, allows overbooking and under-booking of patients for treatment. A sensitivity analysis, under certain assumptions, was conducted in [10] using simulations. Factors considered in this simulation-based sensitivity analysis are cancellation rate, treatment time, nursing time, pharmacy time, calls rate, lab results delay, late arrivals and add-ons. Study shows varying levels of dependency of outcomes – chair–time ratio, makespan difference and pre-chair–time ratio – on the factors and interactions between these factors. It appears that the key parts of chemotherapy scheduling task are stochastic in nature and deterministic models may not sufficiently capture the essence of these processes. Eight on-line bin packing heuristics for chemotherapy infusion chair booking are studied using simulations in [11]. The following decision variables are defined in infusion chair scheduling simulations: preparation and nursing time, ‘buffer’ time, ‘stagger’ time, and time for laboratory tests conducted prior to infusion. The measurements made include average patient wait time, total infusion chair idle time, and total infusion chair overtime. Statistical analysis is used to analyze the simulation results to conclude the best heuristic amongst the eight studied. Since no-shows and cancellations are not permitted in the model, the case of overbooking patients for treatment is not considered. A two-stage approach to managing chemotherapy operations planning and scheduling is adopted in [12]. At stage 1, the planning problem is solved to find the start of the treatment days of the patients. At stage 2, the daily scheduling problem is solved for the given set of patients assigned to the same day. This twostaged approach is similar to the one taken in [9], although the problem is modeled as an Integer Programming one in [12]. Nevertheless, since the Integer Programming as it is stated in [12] may be computationally costly, heuristics are proposed

instead. This optimization-based method considers patient acuities to determine nurse assignments. A Lagrangian relaxation-based heuristic is proposed and evaluated through simulations in [13] for chemotherapy appointment scheduling at an oncology outpatient unit. It appears, from the preceding literature review, that three general classes of computational models emerge for chemotherapy planning and scheduling task. These three classes are multiple Knapsack Problem [9,11], linear programming [12] and quadratic programming [13]. 3. Goals of chemotherapy planning and scheduling work It is stated in [14] that ‘There exists compelling evidence that reductions from standard dose and dose-intensity may compromise disease-free survival (DFS) and overall survival (OS) in the curative setting’. We quote from [15] ‘Similarly, a delay in chemotherapy delivery reduces the dose-intensity (DI) received. It has been calculated that each 7-day delay results in an approximate 5% decrease in the DI’. Therefore, the very first objective of any work for the management of CT planning and scheduling is to make sure that CT regimens are executed steadfastly to the plan. Experience shows that patient waiting times at chemotherapy centers may get out of control if the related processes are not managed carefully [6,7]. Therefore, our second objective is to make sure that the patient waiting time is predictable and it is kept to a minimum. Most precious resources any CT center has are (a) oncologist time, (b) nurse time, (c) infusion chair time and (d) pharmacy time for preparation of chemotherapy agent admixtures. A search through Internet easily reveals that a new generation of robots has been emerging which is capable of preparing chemotherapy agent admixtures for tens of patients in a very short period of time. This makes resource ‘d’ relatively less critical for the future and for our studies. At least in the CT center where we conducted our work, resources ‘a’ and ‘b’ are the scarcest and have the tendency of remaining at a fixed level for the most of time. In our work we aim at optimizing for utilization of resource ‘c’, the infusion chair time. Other three resources ‘a’, ‘b’ and ‘d’ can be calculated and expressed relative to the number of infusion chairs available. Therefore, the goals of design for CT planning and scheduling are (1) Medical goal: keep execution of CT regimens to the specifications as prepared by the oncologist. (2) Operational goal: keep patient waiting time predictable and to a minimum. (3) Resource utilization goal: optimize for infusion chair utilization.

4. Constituents of a chemotherapy plan A chemotherapy plan is prepared for each patient by an oncologist. Some examples are presented below. Example 1. For breast cancer AC-Paclitaxel Q3w Doxorubicin (Adriamycin) 60 mg/m2 IV pushes over 5– 15 min day 1 Cyclophosphamide (Cytoxan) 600 mg/m2 IV over 30–60 min day 1 Q3w  4 cycles Followed by Paclitaxel (Taxol) 175 mg/m2 IV over 3 h Q3w  4 cycles

S. Sevinc et al. / Computers in Biology and Medicine 43 (2013) 2103–2109

In this example we have a regimen for breast cancer. The plan states that on day 1 of an infusion cycle Doxorubicin will be applied for 5–15 min in the specified amount and style and Cyclophosphamide will be applied for 30–60 min. Then the patient is given a 3 weeks of rest. This infusion cycle is repeated four times. When the first part of the plan is completed, then the next infusion cycle contains Paclitaxel application for 3 h, IV, followed by 3 weeks of rest. This cycle is repeated four times. We present two more examples and then proceed to generalize a regimen model.

2105

Lab Day

LAB Test

Doctor

Ok

CT App

Wait till next group

Patient is not fit for CT–Delay Lab

Fig. 1. Chemotherapy patient flow.

Example 2. For lung cancer Cisplatin þGemcitabine Cisplatin (CDDP) 100 mg/m2 IV day 1 Gemcitabine (Gemzar) 1000 mg/m2 IV days 1, 8, and 15 Q4w Fig. 2. A sample chemotherapy schedule.

In this example CT regimen, we see an application of Cisplatin, IV, at 100 mg/m2 on day 1. In addition we have Gemcitabine to be applied, IV, at 1000 mg/m2 on days 1, 8, and 15 followed by a week of rest. Implicit in every regimen is a review of the patient's health before every infusion cluster. Example 3. For ovarian cancer Carboplatin þPaclitaxel qw Carboplatin (Paraplatin) AUC 6 IV day 1 Paclitaxel (Taxol) 80 mg/m2 IV days 1, 8 and 15 Q3w  6 cycles

In this plan we have applications of CT agents on days 1, 8, and 15 followed by 3 weeks of rest time. This cycle is to be repeated six times. As we see from the above examples, a CT plan consists of cycles of a series (cluster) of infusions, separated by a rest period. In some cases, infusion cycles may continue for more than a day. Below is an example where every CT cycle consists of 2 days of infusions followed by 2 weeks of rest. Example 4. For colon cancer FOLFOX4 Leucovorin 200 mg/m2 IV over 2 h. before 5-FU, day 1 and day 2 5-FU 400 mg/m2 IV bolus and then 600 mg/m2 IV over 22 h., day 1 and day 2 Oxaliplatin (Eloxatin) 85 mg/m2 IV day 1 Q2w

In addition to the type of CT regimens presented above, there are many other types. Therefore, from a modeling perspective, it is more sensible to consider classes of CT regimens. In our design, the basic types of CT plans are ‘Standard’, ‘Alternating’, ‘D1D8’ and ‘D1D8D15’. The ‘Standard’ type CT regimen consists of a cluster of infusions with a period of 1–4 weeks of rest period between infusion clusters. Each infusion cluster may have up to 5 consecutive days of infusions. ‘Alternating’ type CT regimen type is similar to the ‘Standard’ type. The only difference between the two types is that in the ‘Alternating’ type two sets of chemotherapy agents are used alternately between consecutive infusion clusters. Since we think it is too much detail for the user, we will not go into the further details of other types of CT regimen models used in our solution. Before each infusion cluster, every patient must go through some laboratory tests, such as tests for taking leukocyte and thrombocyte counts. An oncologist checks the results against

reference values. If the test results do not permit then infusions are postponed by 1 week; in fact, the entire CT plan must be shifted down the timeline by 1 week (see Fig. 1 for chemotherapy patient flow). Postponements, in general, are due to stochastic causes and negatively affect the CT scheduling system performance. To reduce the negative effects of postponements on the system, some centers adopt a ‘next-day’ model and conduct the laboratory tests 1 day before the infusions [16]. Other centers may allow infusions on the same day as the laboratory tests are done – provided that the laboratory test results permit infusions. Our models assume the ‘next day’ model where the laboratory tests are done on the day before the infusion clusters. Process flaws may also cause postponement of CT regimens [17] resulting in CT scheduling system performance degradations. As illustrated in the previous paragraphs, CT regimens may get fairly complicated. Typically execution of CT regimens span over a number of months consisting of cycles of infusion clusters separated by rest periods (see Fig. 2 for a sample chemotherapy schedule distributed over many weeks). Before each infusion cluster, the patient must go through medical checks. The results of these medical checks are unpredictable, therefore, CT planning and scheduling is inherently a stochastic process. CT regimens fix infusion times in minutes and an infusion chair must be made available to the patient for at least this length of time on the day (s) of chemotherapy. There are also other factors that make CT planning and scheduling a difficult problem to deal with. Patients' CT plans compete with each other for limited resources like infusion chair time, nurse time and oncologist time. Postponement of CT plans, canceling of CT regimens for patients leaving the system and arrival of new patients as well as modifications of CT regimens all contribute to the complexity of the problem. Yet, CT regimens as prepared by oncologists must be followed closely to achieve the maximum medical benefit [14,15]. It is also critical that the patient waiting times are kept under control. Therefore, algorithms and systems must be designed, tested and deployed to address the issues of the CT planning and scheduling problem.

5. The approach Two phases of scheduling chemotherapy appointments are planning for laboratory tests before each cluster of infusions and planning for infusion seat occupancy for the day(s) following the lab tests. The second phase takes place only when a patient's lab test results is checked with the reference values. Otherwise, the patient is rescheduled for a lab test for at least a week later.

2106

S. Sevinc et al. / Computers in Biology and Medicine 43 (2013) 2103–2109

5.1. Scheduling for laboratory tests Let, Xi be the number of patients whose lab appointments are shifted into day i, Yi be the number of patients whose lab appointments are postponed and thus shifted out of day i, Li be the number of patients scheduled to receive lab tests on day i. Then L ¼ Li þ X i –Y i where L is the number of patients who must be scheduled for a chemotherapy session and need infusion seat allocation according to their chemotherapy regimen. To the best of our knowledge, a comprehensive work has not been done on the postponement rates of CT patients. Therefore, the underlying probability distributions are not known. However, for our purposes we assume that Xi and Yi are i.i.d's and E[Xi Yi] goes to zero very fast for the interval 〈i  w, iþw〉 where w is a positive integer. Thus, on an average, Xi and Yi would cancel each other. Despite this assumption, it is possible that postponement process may run in the same direction for a while, i.e., E[Yi] grows quickly for a window of time. In this case more and more patients would be scheduled for the same time window. Hence, adding new patients to the system may have a negative impact on the already load-imbalanced system. To avoid this situation we define a negative feedback so that fewer new patients are accepted into the system around load-imbalanced time windows. Let Over Booking Rate (OBR) be a normalization factor (%) for a given time window, F be the average success rate for scheduling of patients for lab tests (%), optU be the targeted infusion seat utilization (%), U be the infusion seat utilization measured (%). OBR represents the booking rate. The model allows overbooking. This variable is used to balance the load for the given time window. optU is another important user-defined variable. It allows targeting of a pre-defined level of infusion seat utilization. This parameter can be changed any time to adjust the overall load of the system up or down. F and U measure system utilization where F measures the proportion of lab scheduling requests granted and U measures the infusion seat utilization. The negative feedback method used for load balancing works as follows. First the system checks the value of F. If F¼1 then it means that all lab requests have been granted for scheduling. If F¼1 then we understand that the system runs under light load, so we check for U. If UooptU, that is the measured utilization is lower than the targeted one, OBR is increased so that more patients can be scheduled for the time window under study. If Fo1 then some lab requests have not been granted due to lack of resources. This condition indicates that the system runs under heavy load and OBR value must be pulled down to reduce the system load. Here is the pseudo-code for the algorithm. if (F¼1) // all lab requests met, therefore light load if (U4 ¼ optU) // utilization at or above target OBR¼ OBR // do nothing else // utilization below target OBR¼ OBRþ0.5 * |U  optU| // increase load else if (Fo1) // heavy load OBR¼ OBR 0.5 * (1  F) // reduce load

To see that this algorithm achieves stabilization of U around optU, consider the following data: Step

M

L

I

F

U

OBR

OBRn

1 2 3 4 5

14,040 11,962 12,626 12,180 11,654

12,968 11,718 11,451 11,763 10,825

11,671 11,718 11,451 11,763 10,825

0.9 1 1 1 1

0.86 0.86 0.84 0.87 0.8

0.95 0.84 0.84 0.84 0.84

0.84 0.84 0.84 0.84 0.86

Note the following annotations: M – the total load in minutes, L – the portion of the total load which needs to be assigned to the infusion chairs, I – the load successfully assigned to the infusion chairs. We set optU¼0.85, C¼ 13,500 (the total chair capacity available in minutes), F¼ I/L, and U¼I/C. OBR value is as defined above and OBRn is the new value of OBR recalculated at each step of the algorithm. We run the algorithm for 10, 100 and 1000 steps. The following data presents convergence of U to optU as the number of steps increases. Iterations

U (average)

10 100 1000

0.83199 0.82963 0.827289

U clearly converges to the current value of optU as the number of steps grows. The negative feedback algorithm enables us to target a specific utilization level by balancing the load within a given time window. When the system runs under a heavy load then patients who are already in the system get a higher priority over the new arrivals. The system tries its best to find an open slot for every lab test-scheduling request. If the current CT regimen requires targeting day i for the lab test appointment, the system first tries to reserve a slot for the current patient on day i then tries the days iþ1, iþ2, iþ3, and i 1 in this order. If everything up to his point fails to generate an open slot for the current patient, then the day with the minimum load is picked in the interval 〈i  1, iþ3〉. This would mean overtime for nursing staff, although we would expect such occurrences to be kept at a minimum.

5.2. Infusion seat allocation Infusion seats are allocated to the patients only after the approval of an oncologist. Our system assumes on the ‘next-day’ model for CT scheduling. Therefore, allocation of infusion chairs is done for the next day and possibly for the days after. Infusion seat allocation may be done using an off-line algorithm or an on-line algorithm. Off-line algorithms require complete knowledge of all the patients and their CT regimens to be scheduled. Therefore, an off-line algorithm would have to run everyday after all the patients undergo lab tests and an oncologist assessment. When the off-line algorithm is run at the end of the day and assignment of all the patients is completed, the allocation times would have to be messaged to all the patients. An on-line algorithm, on the other hand, runs and produces an appointment time for each patient as the patient's assessment is completed. Therefore, an on-line algorithm would not have the complete knowledge about the patients' regimens whose assessments are not completed yet. Although off-line algorithms, in general, would be more efficient than the equivalent on-line algorithms, the oncology center where this work is done prefers to communicate with its patients about their appointments by

S. Sevinc et al. / Computers in Biology and Medicine 43 (2013) 2103–2109

means of face-to-face interviews. So, we are constrained to use an on-line algorithm for infusion chair scheduling. The operational goal of our design is to keep patient waiting time to a minimum. We achieve this by producing an exact appointment time for each patient. The resource utilization goal of our design is to optimize infusion seat utilization. Infusion chair allocation problem can be expressed in terms of a variation of the famous 0–1 Knapsack Problem (KP) known as the Multiple Knapsack Problem (MKP) [18] or Bin-Packing Problem (BPP) [19] with a fixed number of bins and a fixed bin size for all bins. 5.2.1. 0–1 Knapsack Problem 0–1 Knapsack Problem, in its most general form, can be expressed as follows. Consider (n) objects where each object (i) is assigned an integer value (pi) and a weight (or cost) (wi). Take a bag whose total capacity (total weight it can carry) is assigned an integer (c). Knapsack Problem is, then, to find the objects whose total value is the maximum value that can be fit into the bag. In other words, the solutions are those vectors that maximize the objective function n

∑ pi x i

i¼1

subject to the constraint n

∑ wi xi r c;

i¼1

where  1 xi ¼ 0

if object i is selected otherwise

hence the adjective 0–1. If number of bags to fill is greater than 1 then the simple problem of Knapsack becomes the Multiple Knapsack Problem. The Multiple Knapsack Problem may be expressed as follows: given a set of (n) objects, where each object (j) is assigned an integer value (pj) and a weight (or cost) (wj) and given a set of m bags where each bag (i) is assigned a size ci, then the Multiple Knapsack Problem is to maximize the objective function m

subject to the constraints n

∑ wj xij r C

j¼1

where  1 xij ¼ 0

m

ði ¼ 1…mÞ and ∑ xij r1 i¼1

ðj ¼ 1…nÞ

if patient j is assigned to seat i otherwise

Here (m) represents the number of infusion seats available for the allocation process and (n) represents the number of patients to be assigned to the seats, (wj) represents the length of the time interval in minutes a patient will occupy a chair and C is a constant representing the total length of time in minutes an infusion seat is available. Implicit in this model is that no patient has infusion time length greater than C. 5.2.2. Off-line solutions to Knapsack Problem Knapsack Problem is an NP-Complete problem [20,21]. It does, however, have an optimal solution based on a dynamic algorithm [22] polynomial in the size of the Knapsack and the number of items. In addition to dynamic programming based approach, Genetic Algorithm [23], Greedy Algorithm [18] and heuristic [19,24] based solutions have been developed. These techniques are not guaranteed to generate optimal solutions to the problem but they generate approximate solutions in a reasonable length of time [25–27]. 5.2.3. On-line heuristic solutions to Multiple Knapsack Problem The infusion seat allocation problem, modeled as MKP in this paper, requires an on-line approach; therefore we concentrate on the development of on-line approximation algorithms. Many online heuristic algorithms have been proposed [9,11,19,24,26,28]. In general a chemotherapy regimen allows multiple days of infusion in a cluster, that is a patient may need to be allocated infusion chairs for multiple days at once. This means that some of the seats might have already been allocated partially. Ideally, algorithms would take this fact into account [28]; however, we make no attempt to take this fact into account because it is a project constraint not to make changes to the patient appointment times after they are fixed.

n

∑ ∑ pj xij

i¼1j¼1

subject to the constraints n

∑ wj xij r ci

j¼1

where  1 xij ¼ 0

m

ði ¼ 1…mÞ and ∑ xij r1 j¼1

ðj ¼ 1…nÞ

if object j is selected for bag i otherwise

It is easy see the analogy between the Multiple Knapsack Problem and the infusion seat allocation problem. Each bag corresponds to an infusion seat. All seats are assumed to be available for use for the same time interval. Thus all seats have the same capacity ci ¼C (i ¼1…m and C is a constant). For example, for an 8-h workday, C ¼60  8 ¼480 (min). Patients' infusion times correspond to wj's in the Multiple Knapsack Problem and are fixed in their CT regimens. Since each patient is treated equal we assume that wj ¼pj, where j¼1…n. The formulation of the infusion seat allocation problem is, therefore, to maximize the objective function m

2107

n

∑ ∑ wj xij

i¼1j¼1

5.2.4. Infusion seat allocation heuristics We decompose chemotherapy scheduling problem into two phases. These are scheduling for lab tests and allocation of infusion chairs. The algorithms used for the first phase has been described in Section 5. In this section we describe two heuristics considered: A1 and A2. Algorithm A1. We assume we have (k) infusion seats open for allocation out of a total of (n) seats available. (1) If the oncologist decides to reschedule the patient based upon the lab results and medical examination, then the patient's entire chemotherapy regimen execution plan must be shifted down the line. The patient is given the new schedule and the patient leaves. Otherwise, the patient must be allocated an infusion chair for each day as specified in his/her chemotherapy regimen. Continue with step 2. (2) If there is not enough space for the patient in (k) seats open for placement and, (a) k on then open a new seat (k ¼kþ 1). (b) k ¼n then try placing the patient for the next business day (t ¼tþ 1). (3) Find an exact match for the length of time the patient needs an infusion chair. If this can be achieved the allocation is done and the patient is given the new schedule. The patient leaves.

2108

S. Sevinc et al. / Computers in Biology and Medicine 43 (2013) 2103–2109

(4) If an exact match is not possible, find the seat, which yields the highest remaining capacity after the allocation for the current patient, which is larger than the average value of the required infusion times for the patients who have not yet been served. If this can be achieved the allocation is done and the algorithm terminates. (5) If step 4 does not generate an allocation, find the seat, which yields the highest remaining capacity after the allocation for the current patient, which is larger than the minimum value of the required infusion times for the patients who have not yet been served. If this can be achieved the allocation is done and the algorithm terminates. (6) If the patient is not placed yet, find the seat, which yields the minimum remaining capacity after the placement, is done. Initially, k ¼n. Algorithm A2. Algorithm A2 sets k ¼1, initially. A2 lacks the steps 3–5 and is otherwise the same as A1. Therefore A2 picks the seat with the minimum remaining capacity (best-fit as in [19]). A1 heuristic makes its allocation decision based on the remaining patients' infusion time requirements. Specifically, it attempts to leave space after the current allocation enough for the average length of infusion time of the patients who have not been assigned to a seat. A2, on the other hand, bases its allocation decision on the absolute value of the minimum remaining capacity.

6. Simulations Simulations were done using a slightly modified version of a real implementation of the system. The implementation of the algorithms for both phases of the CT scheduling problem were done using SQL on a Microsoft SQL Server 2005. Normally, the algorithms would expect their inputs from the users of the system. For simulation purposes these algorithms were configured to take their inputs from specified data tables. These tables are populated at once by fictitious patient data, e.g., CT regimen, stamped with arrival times. Patient regimen distributions were generated from the distributions obtained from studying real data (Fig. 3). A total of 849 CT regimens were studied. This revealed probabilities of 0.18, 0.27, 0.26, and 0.29 for the intervals 25–60 min, 75 min, 80–155 min, and 165–305 min respectively. Each round of simulations covered a period of 1 year of the system. Number of CT regimens generated for each simulation period was kept around the real load of the oncology center (where the study was conducted) at 15,000 patients per annum. The number of infusion chairs was also set to the actual number of seats available, a total of 42 in this case. The new patient arrivals across the simulated

Fig. 3. Distribution of chemotherapy session duration.

weeks of the system were modeled using the uniform distribution. Postponement rate due to inauspicious lab results was set at 10%. The overbooking rate (OBR) was set to many different experimental values from 50% to 110%. Simulations are done as rounds. Each round of simulations starts with zero load on the system. Then the patient data for the entire simulation period is generated, time-stamped and placed in a data table in the database. The system clock is set to day 1 of the simulated period and the system picks only the entries from the patient data table for the day being simulated using the timestamp values. These entries represent new arrivals to the system. First, the new arrivals, based on their CT regimen types, are scheduled using the phase 1 algorithm. Then the system checks if there are any patients scheduled for a laboratory test for the day being simulated. A percentage of these patients selected at random are rescheduled simulating postponements in the system. The remaining patients are run through the infusion chair allocation heuristic under study. When the infusion chair allocation is completed, the simulation clock is advanced to the next business day and the processing starts all over again. The simulation is kept running for a simulated year for every round of simulations and then it is repeated five times before the setup is changed and the averages of the observation variables across the runs are taken. The primary observation variable we measure from the simulation runs is the utilization of infusion seats. We did not measure for patient waiting times because our algorithms generate an exact time for each patient appointment. We did not measure the deviations from the specified values of the rest periods in the CT regimens as our approach puts an upper limit on such deviations. Since system load is controlled through a negative feedback mechanism rest period deviations should be very small. The simulation results showed that, heuristic A2 achieved 98% utilization at 95% load and 100% utilization at 92% load. Heuristic A1 achieved 90% utilization at 95% load and 100% utilization at 75% load. The A2 algorithm clearly outperforms A1. The reason for this we think is that A2 is better at serving CT regimens with longer infusion times.

7. Conclusions and future research Chemotherapy scheduling is an optimization problem. We presented a two-phase heuristic approach. The first phase uses a negative-feedback scheme to manage the load of the system around a target utilization value. We used simulation runs to show that the utilization observed actually converges to the target value. In the second phase, we use Multiple Knapsack Problem formulation for the chemotherapy scheduling. Two heuristics are studied and tested under certain assumptions. The simpler one, termed the best fit in the literature, performed better than the other. The system has been successfully used at Tulay Aktas Oncology Hospital at Aegean University in Izmir, Turkey, since its deployment in 2008. For the future, we think that it would be fruitful to study the system performance. Since its inception, other systems have been designed to deal with the same problem. Comparisons of these systems based on the real data might enlighten the road to designing better solutions. Most schemes, including ours, are based on heuristics. This is because the exact solutions are often not very practical due to theoretical limitations. Being an optimization problem, we think that the solutions to the chemotherapy scheduling may benefit from various areas of the optimization theory. Therefore, exploring theoretical and algorithmic aspects of the problem looks promising indeed.

S. Sevinc et al. / Computers in Biology and Medicine 43 (2013) 2103–2109

8. Contributions Many people have been involved in the development of the system described in this paper. It is implemented under the name planCT and put to use at Aegean University, Tulay Aktas Oncology Hospital in September 2008. Riza Ocalir, Hakan Gultekin and Can Angun participated in the development of the project, initially. Oktay Yildirim, Kadir Tutar and Ahmet Faik Ozmen developed a friendlier version of the planCT software that has been used at the hospital since June 2010. Oktay Yildirim also provided some assistance in compiling the background information for this paper.

Conflict of interest statement None declared. References [1] J.D. Welch, Appointment systems in hospital outpatient departments, Oper. Res. Q. 15 (1964) 224. [2] J.H. Katz, Simulation of outpatient appointment systems, Commun. ACM 12/4 (1969) 215. [3] G.C. Kaandorp, G. Koole, Optimal outpatient appointment scheduling, Health Care Manage. Sci. 10 (2007) 217. [4] H. Zhu, M. Hou, C. Wang, M. Zhou, An efficient outpatient scheduling approach, IEEE Trans. Autom. Sci. Eng. 9/4 (2012) 701. [5] T. Cayirli, E. Veral, Outpatient scheduling in healthcare: a review of literature, Prod. Oper. Manage. 12/4 (2003) 519. [6] M. Gruber, K. Kane, L. Flack, J. Abbotoy, J. Recchio, K. Williamson, K. Horan, P. McCarthy, A ‘Perfect Day’ work redesign in a chemotherapy and infusion center, leadership & professional development, Oncol. Nurs. Forum 30/4 (2003) 567. [7] M.A. Kallen, J.A. Terrell, P. Lewis-Patterson, J.P. Hwang, Improving wait time for chemotherapy in an outpatient clinic at a comprehensive cancer center, J. Oncol. Pract. 8/1 (2012) e1. [8] J.P. Majidi, B. Enterline, M.E. Ashley, L.L. Fowler, R. Ogorzalek, G.J. Gaudette, M. Stuart, Fulton, D.S. Ettinger, Chemotherapy and treatment scheduling: the Johns Hopkins Oncology Center Outpatient Department, Proc. Annu. Symp. Comput. Appl. Med. Care 154 (1993).

2109

[9] S. Sevinc, planCT: Chemotherapy scheduling system, in: Proceedings of the 14th National Biomedical Engineering Meeting, , IEEE Conference Publications, 2009, DOI: 10.1109/BIYOMUT.2009.5130274. [10] S. Sara, Chemotherapy patient scheduling and uncertainty (M.S. thesis), Purdue University, 2011, ProQuest: 1501911. [11] T. Tanaka, Infusion chair scheduling algorithms based on bin-packing heuristics, State University of York at Binghamton, 2011, ProQuest: 1499680. [12] A. Turkcan, B. Zeng, M.A. Lawley, Chemotherapy operations planning and scheduling, Optim. Online 1 (2010). [13] A. Sadki, X. Xie, F. Chauvin, Appointment scheduling of oncology outpatients, in: Proceedings of the IEEE International Conference on Automation Science and Engineering, 2011, pp. 513. [14] J.J. Griggs, et al., Appropriate Chemotherapy dosing for obese adult patients with cancer, Am. Soc. Clin. Oncol. Clin. Pract. Guideline 30 (13) (2012) 1553. [15] R.C.F. Leonard, D. Miles, R. Thomas, F. Nussey, Impact of neutropenia on delivering planned adjuvant chemotherapy: UK audit of primary breast cancer patients, Br. J. Cancer 89 (2003) 2062. [16] D. Roxanne, Next-day chemotherapy scheduling: a multidisciplinary approach to solving workload issues in a tertiary oncology center, J. Oncol. Pharm. Pract. 9 (2003) 37. [17] H. Pirnejada, C. Gaoc, R. Reddingiusd, A. Rijnevelde, R. Balb, Improving chemotherapy processes with a protocol-based information system: a pre and post-implementation study, Int. J. Med. Inf. 82 (2013) 220. [18] S. Martello, P. Toth, Knapsack Problems Algorithms and Implementations, John Wiley & Sons, Weat Sussex, England, 1990. [19] J. Johnson, Fast algorithms for bin packing, J. Comput. Syst. Sci. 8 (1974) 272. [20] R.M. Karp, Reducibility among combinatorial problems, Complexity Comput. Computations 85 (1972). [21] M.R. Garey, D.S. Johnson, Computers and intractability, A Guide to the Theory of NP-Completeness, vol. 223, , 1983. [22] M.R. Garey, D.S. Johnson, ‘Strong’ NP-completeness results: motivation, examples, and implications, J. ACM 25 (3) (1978) 499. [23] S. Khuri, T. Bäck, J. Heitkötter. The zero/one multiple knapsack problem and genetic algorithms. in: Proceedings of the 1994 ACM Symposium on Applied Computing (SAC '94), ACM, New York, NY, USA, 1994, pp. 188, DOI: 10.1145/ 326619.326694. 〈http://doi.acm.org/10.1145/326619.326694〉. [24] G. Galambos, G.J. Woeginger, On-line bin packing – a restricted survey, Math. Methods Oper. Res. 42 (1) (1995) 25. [25] D.S. Johnson, A. Demersm, J.D. Ullman, M.R. Garey, R.L. Graham, Worst-case performance bounds for simple one-dimensional packing algorithms, SIAM J. Comput. 3 (4) (1974) 299. [26] L. Epstein, L.M. Favrholdt, J.S. Kohrt, Comparing online algorithms for bin packing problems, J. Scheduling 15 (1) (2012) 13. [27] V. Boyer, M. Elkihel, D. El Baz, Heuristics for the 0–1 multidimensional Knapsack Problem, Eur. J. Oper. Res., ISSN 0377-2217199 (3) (2009) 658. [28] A. Fukunaga, Bin completion algorithms for multicontainer packing, knapsack, and covering problems, J. Artif. Intell. Res. 28 (2007) 393.

Algorithms for scheduling of chemotherapy plans.

Chemotherapy is used to control and cure cancer by using drugs to destroy cancer cells. Treatment schedules for chemotherapy may vary depending on the...
383KB Sizes 0 Downloads 0 Views