Workflow of the infusion center was formulated via shadowing at the infusion center and gathering scrubbed data stored in the infusion center’s archive. A functional flow block diagram of the workflow of the infusion center is recreated below:

The first step of the process occurs outside the actual infusion center. After visiting a physician, the physician’s office decides whether or not treatment is necessary for the patient at the local infusion center. The physician’s office schedules an appointment for the patient via phone call (or simplistically, a 24/7 online automated scheduling service) at the infusion center. After the phone call, patients wait a minimum period of time, on the order of weeks, before they actually enter the clinic for their appointment. However, every patient has the ability to cancel or not show up to the actual scheduled appointment, including the day of the scheduled treatment, with percentage rates of 10% and 5% respectively. If a patient happens to cancel or not show up, they immediately loop back to the scheduling step and repeat the process, although with a heightened priority. Patients who cancel are required to be rescheduled for treatment within the next 2 days, plus or minus a day. Those who miss appointments are required to return to the clinic within the next 3 days, plus or minus a day.

Assuming the patient shows up for treatment, the following steps occur:

  • The patient checks in at the front desk
  • The patient resides in the waiting room before being beckoned by a nurse
  • If a nurse is not busy, a nurse takes the patient to check height and weight
  • The patient is then taken to a bed or chair, if unoccupied, where a nurse
    • takes vitals and asks questions
    • takes blood sample(s) and sends sample(s) off for lab work
  • If blood work is favorable for treatment, patient continues on in process
    • If the bloodwork results are unfavorable for treatment, the patient is discharged and is asked to return the next day
  • Following good blood work, the patient awaits their drug to be prepared while the patient is setup for treatment by a nurse
  • The patient then receives treatment, post-treatment, and is discharged.

After being discharged, the majority of patients will require additional treatment and will loop back to scheduling where they are scheduled for 30 days out. There are a number of parameters that define the system. Physicians schedule appointments at a rate of 1 patient every 105 minutes; this communication follows an exponential distribution. The day of treatment is also dependent on the type of treatment a patient requires. Patients are categorized into 5 types:

Table 1:  Patient Type Definitions
Patient Tag: Patient Type: Description:
1 INF Infusion, transfusion, or injection
2 CMO-SHORT Chemotherapy- shortened treatment
3 CMO-LONG Chemotherapy- long treatment
4 FUP Follow-up appointment; no drugs
5 MISC Small percentage of uncategorizable patients (new patients, emergency sick visit patients, and other procedures unrelated to infusion or chemotherapy treatment)

After parsing through data collected from the infusion center, percentages for each patient type for each day of the week were calculated. These patient type percentages are multiplied by the weekly scheduling capacity to create our scheduling capacities for each type of patient.

Patient Type Monday Tuesday Wednesday Thursday Friday Average
INF 31.25% 24.11% 26.32% 18.03% 24.32% 24.64%
CMO-Short 25.00% 22.70% 27.49% 25.68% 23.24% 24.88%
CMO-Long 8.75% 5.67% 7.60% 4.92% 5.41% 6.43%
FUP 20.63% 22.70% 16.37% 34.97% 27.57% 24.76%
MISC 14.38% 24.82% 22.22% 16.39% 19.46% 19.29%

It is important to note that patient type percentages are based on data collected over a three week period. For example, the percentages for Monday were calculated by averaging the patient type distributions for 3 Mondays worth of data. Patient appointments are scheduled exponentially. Arriving patients are given a patient type and number of treatments; these characteristics are determined by discrete distributions. The patient type distribution is based on the “Average” distribution shown above, while the number of treatments distribution is based on shadowing observations. See the objective section of this paper for a visualization of these discrete distributions.

The core of optimizing the scheduling process centers around the logic of scheduling an individual patient. Once the scheduling capacity has been calculated for each day of the week, the scheduling logic can appropriately place a patient into the schedule. There are a total of five cases for scheduling a patient; these cases are dependent upon whether the patient is originating from the start block, the no-show route, the cancel route, the bad blood route, or the multiple treatments route. The methodology behind how a patient is scheduled is similar in each case; however, the target date and its constituents are different. In general, scheduling logic followed the following format:

  1. Check the schedule for target date. Determine whether the current count of patients in the schedule is less than the scheduling capacity. If the current count is less than the scheduling capacity, place the individual in the schedule for the target date. The target date is different for each route leading to the scheduling queue block. For instance, the target date for a patient looping around for another treatment is thirty days.
  2. If the target date’s current patient count is greater than the scheduling capacity, check the day before the target date. If the current scheduling count is less than the scheduling capacity for this day, then schedule the patient for this date. Else, place the patient into the day after the target date no matter what the current count of the schedule exhibits.
  1. This general logic of checking the target date, day before, and day after is displayed in all of the routes except for the bad blood route. If a patient has bad blood, they must be scheduled within the next two days. Additionally, some routes, like the multiple treatment routes, took this logic further checking the following dates: the target, the day before, the day after, two days before, and two days after.

Included are complete samples of code for the logic of each of the six routes in the appendix under the scheduling logic section. Please reference this section for any additional clarifications regarding the logic of a particular route.