Introduction to Discrete Event Simulations in Healthcare

An introduction to Discrete Events Simulations (DES) in healthcare with an overview of the use of DES for modelling outpatient services appointments at Providence Healthcare.

Kevin Wang, Neil Mistry https://www.linkedin.com/in/mingkun-wang/, https://www.linkedin.com/in/neilmistry/
2023-04-18

Discrete Events Simulation at Providence Outpatient Care & Services Covid-19 Recovery scheduling

Discrete Events Simulations (DES) are a method of modeling the operation of real world systems. DES does this by modeling a series of events in time. Events are ordered by time of occurrence, and the DES system updates its state as it traverses through each event.

This type of simulation is useful at modeling a system with many uncertain (or probabalistic) steps. For example, in the Emergency Department, you won’t know when your next patient will arrive and you won’t know the condition this patient will arrive in. In systems where there are a complex number of steps, many different resources, inputs and outputs, DES may be one of the better ways to approach modelling.

DES are built primarily for two purposes, to assess: (1) the current system and uncover bottlenecks, and (2) how changes to our system will impact its performance. We typically do this to test potential improvements to our system. This could be a change in our process, additional resources, changes to inputs or outputs and changes in our schedules. DES will allow us to measure things that are important to us in the current state and with changes to our system.

The underlying statistical theorems that support DES come from Queueing theory. A classic example of queueing theory is the Call Center. In a Call Center you have incoming calls, and you know roughly how many calls you can expect in any given time period, such as a Monday, or between 5-8pm on a Friday. Therefore you know the frequency of calls and have some expectation on the variation of calls throughout the week.

Poisson Call Center Queue

However you do not know exactly when your next call will arrive (remember this is probabilistic or uncertain). This is known as a Poisson arrival process, and is modeled as:

Poisson Call Center Queue

Lambda \(\Lambda\) is the only parameter that Poisson depends on. This is your arrival rate (on average). Queueing theory works well for a simple queue like this, where you have a single entry point for your customers, a single type of service (answering the call) with some probabalistic length of time and one exit for your customer (end of call).

However with more complex system, like those in hospitals and other healthcare settings, we may have patients who arrive in multiple ways, have multiple possible treatments or interventions, and could have multiple exits (admission, discharge), the formulas for Queueing theory become impractical to model these systems. That is when we need DES!

Background

Simulation had long been used in manufacturing as there can be considerable variability in process outputs in a manufacturing line. In addition to variability, having a bird’s eye view of the entire process can allow us to easily assess bottlenecks in our system. Bottlenecks could be caused by variability in our process outputs, overproduction, excess inventory, high down time or failures in machines, or a lack of staff or resources.

We can then make assessments to changes in our system. Let’s say for example we add an additional staff member at a point in our process. Does this improve our bottleneck? What if we replicate a few steps in our process and run parallel production? Will the cost to implement this strategy be outweighed by the benefits gained by a reduced bottleneck in this area? We can assess this in our simulation before trying it in our real world system.

In healthcare we see DES used, for examples, to evaluate and assess operational changes Emergency Departments, Operating Room Suites, Intensive Care Units, and Inpatient and Outpatient units. At Unity Health Toronto we used DES in the past to help us evaluate changes to the physical layout in the Emergency Department (ED), assess changes to physician scheduling in the ED and most recently, assess patient appointment scheduling for outpatient services.

An Example of DES in the Real World: Providence Outpatient DES Project

Providence Healthcare (one of the three hospitals in the Unity Health Toronto network) had challenges scheduling outpatient appointments with the onset of the second wave of the Covid-19 in 2021.

Outpatient Services consists of multiple clinics providing medical appointments. Each patient arrives, registers, and wait for the appointment in the waiting areas or vehicle. They will then be escorted to clinical waiting areas or directed into a room. After the appointment, they may continue to wait in the clinical waiting areas for follow-ups or leave the hospital. During this process, there may be congestion resulting from a combination of patient behaviors, system resource and capacity (early-arrival of wheel-trans patients, max room capacity, lack of therapists); A smooth outpatient process is important for the hospital system to run efficiently for optimal patient care and quality of service.

We modeled the clinic in its current state and explored alternative appointment schedules to increase the number of patients flowing through outpatient services while maintaining social distancing practices.

Outpatient clinic appointment process at Providence Healthcare in August 2020

Under certain pandemic-based restrictions, all individuals were required to maintain social distancing between each other. To minimize unnecessary contact, the Outpatient Service Department wanted to control the maximum number of patients in each area of the department. Planning to re-open more outpatient services (and to reduce the backlog created by shutdowns during the first two waves of the pandemic), the Outpatient Service Department modeled new schedules by adding additional appointments with a combination of more staffing, longer hours, more patients and additional working days.

How we approached a DES solution

The solution that was developed for the Providence Healthcare Outpatient Service Department consists of two parts:

  1. A simulation model that recreates the physical space capacity and analyzes the system & process performance

  2. Designing a web user interface that requires users to input key features of the simulation for testing different scenarios. In addition, the model would output key performance indicators to help access the performance of the proposed plans/system.

The primary input that our user can manipulate to test out scenarios is the appointment schedule. This appointment schedule includes a breakdown of the types and quantities of appointments that would be seen in Outpatient Services by the day of the week (Mon, Tue, Wed, and so on).

The simulation model consists of three main parts:

All of our performance metrics (wait time, current number in system) are recorded through a trial of runs and outputted to the user. Utilization plots for clinics and service providers are also plotted.

Conclusions

We can use DES to test how changes to our system can affect the outcomes we are interested in improving.

At Providence health, we were able to test alternative patient schedules to measure their impact on throughput on our outpatient clinics. We tested several schedules that would increase the number of patients we would see, and our DES could tell us if we would maintain our social distancing requirements. Ultimately we were able to create schedules that could increase the number of patients we could see, even with our current staffing schedules.

Limitation

One limitation in our DES is the service time for each appointment. We simplified the length of time a patient may spend at an appointment by ignoring some of the variabilities in process times due to the lack of data. Instead of fitting a time distribution, we had to use a more deterministic approach by assuming a static service time for all the servicing times involved in the model.

DES software

There are many available software applications that can build DES models. Some provide an installer and can be used on a windows PC (ARENA, Anylogic, FlexSim, Simul8, etc). This is great for use in 1 time simulations when you will infrequently reassess your system.

We also have DES software that can be hosted remotely and can accept simulations as jobs (Simul8 has this feature). This type of software can be useful when you want to run a simulation more frequently, perhaps even live to predict possible incoming bottlenecks.

There are also many open source DES packages now available. Examples include DESMO-J, which is available in Java, Facsimile, in Scala, and SimPy, available in Python.

Data Science and Advanced Analytics wanted to host an application for users to enter patient schedules and run the simulation remotely and on-demand. We chose SimPy to accomplish this.