2.2.1 Assumptions
The following assumptions are made for the patient appointment scheduling problem for CT simulation and LINAC treatments.
-
As the appointment durations are personalized according to the patient’s treatment plan, non-block scheduling is deployed; appointments are booked on the allocated CT simulators and LINACs if the capacity of the respective machine is not exceeded.
-
The scheduling model books all urgent and standard patients who arrive each day as a batch at end-of-day. Patients are prioritized based on their urgency level and treatment protocol. Different prioritizations have different wait time targets.
-
The planning horizon is 20 business days, which is long enough to book the first treatment appointment for every urgent and standard patient. There is no wait list for patients not scheduled. If the first RT appointment is scheduled, all subsequent appointments are scheduled.
-
RT treatments in RMP are booked on consecutive business days.
-
Due to the availability of a large amount of historical data that we can analyze, the number of patient arrivals each day can be forecasted, hence are assumed to be known (for example, the arrivals of emergency and planned delayed patients and their appointments on each machine can be estimated). In addition, the treatment length and frequency are estimated by radiation oncologists at the consultation stage and are assumed to be known in advance.
-
For each patient, the first treatment appointment is longer than the consecutive treatment sessions. The rest of the treatment appointments have the same duration.
-
The CT scanners are identical machines, but the LINACs have different capabilities. Treatments for different cancer sites are performed on a pre-allocated subset of LINACs.
-
The daily capacity of CT simulators and LINACs is fixed. Machine maintenance or down time is not considered in the model due to the lack of relevant data. The current total capacity; in other words, no machines are going to be added or removed.
-
The human resources related to the CT simulations and radiation treatments are assumed to be consistent with the machines’ availabilities.
-
Patient preferences, appointment cancelations, and patient no-shows are not considered in the model. Since we are assigning patient treatments to a day, we assume that a separate routine could be used to satisfy patient time-of-day preferences.
2.2.2 Notations
Variable definitions:
\({d}_{1j}\) = day index of CT appointment booked for patient j
\({d}_{2j}\) = day index of the first radiation treatment session booked for patient j
\(d\) = index for days in the planning horizon (0 to D)
\({W}_{j}=\) the wait time (number of days) of patient j for the first treatment session
\({O}_{j}=\) the overage of wait time that is greater the wait time target for patient j
\({U}_{j}=\) the underage of wait time that is smaller than the wait time target for patient j
\({z}_{j}=\) 1, if patient j waits more than the official wait time target for the first treatment session
\({X}_{jdc}\) = 1, if patient j is booked for CT simulation on day d on CT scanner c
0, otherwise
\({{Y}^{s}}_{jdl}\) = 1, if patient j’s sth treatment session is booked on LINAC machine l on day d
0, otherwise
\({L}_{lj}\) = 1, if patient j is assigned to LINAC machine l
0, otherwise
Parameters:
The following parameters can be obtained from the data or as a result of historical data analysis and parameter estimations.
\({C}_{j}=\) consultation date of patient j
\({p}_{j}\) = the minimum number of days required for processing the pre-treatment steps, i.e., contouring, planning, and reviewing before proceeding to the treatment stage
\({S}_{j}\) = the number of treatment sessions prescribed for patient j
\({n}_{j}\) = the number of days needed in between two radiation treatment sessions
\({pr}_{j}\) = priority weight assigned to patient j based on category of patient j. (Urgent patients are given a higher priority.)
\({Target}_{j}=\) the wait time target of patient j
Machine capacities:
\({m}_{ld}\) = LINAC \(l\)’s daily capacity (available working time)
\({m}_{cd}\) = CT scanner \(c\)’s daily capacity (available working time)
Appointment durations:
\({D}_{cj}\) = Duration of CT appointment for patient j
\({D}_{ljs}\) = Duration of \({s}^{th}\) treatment session for patient j
Sets:
P = the set of patients to be booked
\({M}_{c}\) = the set of CT simulators in the facility
\({M}_{l}\) = the set of LINACs in the facility
\({M}_{lj}\) = the set of LINACs capable to treat patient j
2.2.3 Mixed integer model formulation
The problem is formulated as an MIP with the objective function to minimize the weighted number of patients exceeding the wait time targets based on priority, while ensuring the requirements of scheduling guidelines and treatment protocols are satisfied.
Objective: \(min \sum _{j=1}^{J}{z}_{j}\times {pr}_{j}\)
s.t.
$${W}_{j}={d}_{2j}-{C}_{j}, \forall j$$
$${Target}_{j}={W}_{j}-{O}_{j}+{U}_{j}, \forall j$$
(1) This constraint set defines the wait time, overage, and underage of wait time.
$${O}_{j}\le {z}_{j}\times M, \forall j$$
(2) Constraints for the number of patients exceeding the wait time target:
if \({O}_{j}>0, {z}_{j}=1\); if \({O}_{j}=0,{ z}_{j}=0\).
M is a very large number to ensure the correct definition of \({z}_{j}\).
$${d}_{2j}- {d}_{1j}\ge {p}_{j}, \forall j$$
(3) The time between CT simulation and first treatment appointment should be sufficient for processing the intermediate pre-treatment steps.
$$\sum _{l=1}^{{M}_{l}}\sum _{d=0}^{D}{Y}_{jdl}^{1}\times d= {d}_{2j}, \forall j$$
(4) Constraint for booking the patient j’s first treatment session on day \({d}_{2j}\).
$$\sum _{l=1}^{{M}_{L}}\sum _{d={d}_{1j}+{p}_{j}}^{D}{Y}_{jdl}^{1}=1, \forall j$$
(5) Only one first treatment appointment should be booked.
$$\sum _{c=1}^{{M}_{c}}\sum _{d=0}^{D}{X}_{jdc}=1, \forall j$$
(6) Only one CT appointment should be booked.
$$\sum _{l=1}^{{M}_{l}}{L}_{lj}=1, \forall j$$
(7) Every patient is assigned to one treatment machine.
$$\sum _{d=0}^{D}{Y}_{jdl}^{s}= {L}_{lj} , \forall j, l,s$$
(8) All treatment sessions are booked on the LINAC unit patient j is assigned to.
$${Y}_{jdl}^{s}=0, for l\notin {M}_{lj}, \forall j,d,s$$
(9) The patient j should only be treated on LINAC units that are capable for this site group.
$${Y}_{jdl}^{s}={Y}_{j{d}^{{\prime }}l}^{{s}^{{\prime }}}, \forall j,l$$
$${s}^{{\prime }}=s+1, \forall \text{s}=1,\dots , {S}_{j}-1$$
$${\text{d}}^{{\prime }}=\text{d}+1, \forall d$$
(10) All treatment appointments are booked 1 business days apart.
$$\sum _{j=1}^{J}{D}_{cj}{ X}_{jdc}\le {m}_{cd}, \forall d, c$$
$$\sum _{j=1}^{J}\sum _{s=1}^{{S}_{j}}{D}_{ljs} {Y}_{jdl}^{s}\le {m}_{ld}, \forall d, l$$
(11) All the appointments booked on a CT or LINAC machine on a certain day should be within the machine capacity on that day.
$${Y}_{jdl}^{s}\in \left\{0, 1\right\}, \forall j, d, l$$
$${X}_{jdl}\in \left\{\text{0,1}\right\}, \forall j,d,l$$
$${z}_{j}\in \left\{\text{0,1}\right\}, \forall j$$
$${L}_{lj}\in \left\{\text{0,1}\right\}, \forall j,l$$
$${d}_{1j}\ge 0, \forall j$$
$${d}_{2j}\ge 0, \forall j$$
$${O}_{j}\ge 0, \forall j$$
$${U}_{j}\ge 0, \forall j$$
(12) The variable domains.
The objective is to minimize the sum of the number of patients with excessive wait time (definied as over their wait time targets. The primary output of the model is going to be a daily schedule of the appointment dates for CT simulations and LINAC treatment sessions. The MIP model is run daily to estimate the machines utilization in the following weeks, based on the scheduling results on patient’s appointments. Patients who were scheduled on previous days reduce machine capacity in the future. The model schedules all new patients that arrived today.
2.2.4 Parameter Estimations
Data was obtained from the RMP’s appointment booking and treatment record systems, including patient diagnosis, pre-treatment processes and appointment data. The data is used to estimate model parameters as well as to create test cases for the machine utilization estimation for urgent and standard patients.
2.2.4.1 Pre-treatment Duration Estimation
The pre-treatment process takes place after CT simulation and before the first treatment appointment. Based on the historical data from RMP, the majority of the pre-treatment time takes place during the contouring and planning stages. The contouring and planning time of the treatment plans are related to cancer sites, categories, and treatment intent, which is related to the total RT dose prescribed, and the number of treatment fractions. To test for feature importance, an ANOVA test is used for categorical features (site groups, categories, and treatment intents) and Pearson correlation is used for numeric features (total dosage and number of fractions). Based on feature importance testing, all the above-mentioned features are correlated to the contouring and planning durations.
Contouring and planning in the cancer center are manual processes and the exact time needed to complete contouring and planning may be affected by other factors not captured in the data. For example, it is possible that the planning process was complete, but the timestamp of completion is recorded a few days later, causing a prolonged planning time duration being recorded. Due to these reasons and other associated human resources factors, the contouring and planning time did not fit logically to any regression models. So, we decided to use the 80th percentile in each combination of the main feature groups (site groups, patient categories, and treatment intents) to represent the estimated contouring and planning time. In 80% of the time, the contouring and planning processes should be finished in the estimated period using 80th percentile. As input to the scheduling model, the estimations will ensure that reasonable time is left between CT simulation and first LINAC treatment session.
2.2.4.2 Wait Time Targets Estimation
At RMP, there are no specific wait time targets for patients of different categories and treatment intents, except that the standard patients have the CARO wait time target of 10 business days. Instead, RMP have scheduling guidelines specifying which day to book patient appointments for CT and radiation treatments, according to their site group, category, and treatment intent. As a result, the wait time targets, 𝑇𝑎𝑟𝑔𝑒𝑡_𝑗 in the model, are not specified for urgent and palliative patients who are higher priority. In order to formulate a quantitative objective function for the model, we derived the average wait time for the high priority patient groups with recent data (2018–2019) and used the averages as the parameters for the wait time targets. Patients are classified based on their category and treatment intent, as these factors affect the patient prioritization at RMP.
The respective wait time target parameters are summarized in Table 1. For urgent palliative, other urgent, as well as standard palliative patients, their internal wait time targets are estimated by the average wait time for the patient group, because these patients are high priority at RMP. Hence their average wait time rounded to the nearest integer can be estimated as their wait time targets. For other standard patients, the wait time target is the official wait time target of 10 business days, as suggested by CARO.
Table 1
Patient categories and intents
|
Wait time targets
|
Urgent palliative
|
2 days
|
Other urgent (complex palliative and curative)
|
3 days
|
Standard palliative
|
4 days
|
Other standard (complex palliative and curative
|
10 days
|
2.2.4.3 Machine Capacity Calculation
The total machine capacity is provided by RMP. However, as Emergency and Planned Delay patients are not included in the current model, their appointment time on the machines is considered to be “reserved” and excluded from the total machine capacity. Time series forecasting is used to estimate the total appointment time to be booked on every machine for these two types of patients, so that sufficient time on the machines is reserved every day. Different time series forecasting methods, including Seasonal Naïve, Moving Average (MA), Simple Exponential Smoothing (SES) and Autoregressive Integrated Moving Average (ARIMA) were used to estimate the appointment time for Emergency and Planned Delay patients. SES forecasting model had the best performance for model selection with cross validation. Hence SES is used to estimate the total time reserved on each machine for emergency and planned delayed patients every month. Figure 2 illustrates two examples of forecasting number of minutes booked on LINAC unit ‘EA07’ for emergency patients and planned delay patients respectively.
In the graphs, the dark blue lines are the forecasted values in each month. The dark and light colored regions are the 80% and 90% confidence intervals for the estimations respectively.
2.2.4.4 Weighting Factors for Patient Groups
In the current scheduling practice RMP, urgent patients are prioritized for both CT and LINAC treatment appointments. Based on the analysis of historical data, their average wait time for the first radiation treatment is usually 2 to 3 days after consultation (with average wait time for CT of 0–1 day). Our model aims to reproduce this prioritization by penalising extra wait time for urgent patients. This is achieved by assigning a larger weighting factor to urgent patients if they wait longer than their wait time targets. This set of weighting factors for urgent and standard patients are calibrated with the wait time statistics of the model output for urgent patients. The priority weights assigned for urgent and standard patients are 1000 and 1 respectively.
2.2.5 Simulation
Historical data is used as test cases for the arrival of urgent and standard patient categories. The testing period is from 2019-06 to 2020-02 with a three-month warm-up period prior to the test period. Monthly utilizations for CT and LINAC are computed and compared with the actual machine utilization as recorded in the dataset.
The total capacity of the two types of machines is the product of the number of machines in RMP and the average monthly CT and LINACs capacity respectively according to the CT and LINAC machine schedule. The CT and LINAC capacity is adjusted by subtracting the time reservation for emergency and planned-delay patients from the machines’ total capacity. We assume there are 20 business days in each month and the average daily capacity of each machine is assumed to be the same throughout the testing period as the recent LINAC average daily capacity in 2019 to 2020. The formulas used to compute machine utilization rate are shown below:
Average CT Simulator utilization rate:
$$Average utilization \left(\%\right)=\frac{Total appointment time booked on CTs}{Total CT{s}^{{\prime }}capacity}\times 100$$
Average LINAC utilization rate:
$$Average utilization \left(\%\right)=\frac{Total appointment time booked on LINACs}{Total LINAC{s}^{{\prime }}capacity}\times 100$$