Friday, April 1, 2022

Computer Simulation can be affordable: You can get enormous benefits with Small Computer Simulations using only a few pieces of information and not break the bank with gigantic consulting fees!!!







Often when performing Discrete Event Computer Simulations for clients, it is because they need to make "What if" decisions on their complex operations that could be costly to get wrong. 


Frequently, you will need a large complex Computer Simulation, which can be a pricey endeavor (most organizations will hire Simulation Engineers/Consultants), which is still worth it because of a 10:1 ROI very common with Computer Simulation. 


BUT


Sometimes all you need is a quick tiny model (in a well-scoped project) to give you answers using some limited data and with some underlying assumptions using simulation, which can be somewhat affordable (even affordable for a small business). 


What is a Tiny Model?

I am defining a "Tiny Model" as any Custom Discrete Event Computer Simulation where the entire project timeline can fit under 1 week. 

Typically, these models have 5 or less processes associated with them and use Subject Matter Expert assumptions rather than historical data to provide the variability for these models.  

However, if historical data is already available, found to be reliable, and analysis of this data can be performed in a few hours, you can use a mix of Subject Matter Expert assumptions AND data.

For my models I use ExtendSim software.

It's also typical to have someone experienced in Industrial Engineering or Operations Research build these models for you. 

If interested in learning more about how I can help, you can reach me at Astrozuggs@gmail.com


Why you need Computer Simulation 


Making decisions by "gut" or "feel" is very risky because of the complexity and variability in most operations (it's virtually impossible to get it exactly right) and even if the "gut" decision panned out somewhat…. how do you know it was an optimal decision? How do you know that you didn't leave money on the table? 


Example Simulation Video below


Need Tiny Computer Simulation? Contact me at Astrozuggs@gmail.com 


A great example of how you can create a small Discrete Event Computer Simulation can be found in the book "Healthcare Management Engineering: What Does This Fancy Term Really Mean? The Use of Operations Management Methodology for Quantitative Decision-Making in Healthcare Settings". 

It discusses how traditional management approaches to problem-solving and decision-making might not be the best way to go….and often point you to do the wrong thing, which can be costly or can impact revenue. 


Instead…why not use Computer Simulation! In the book, there is example 2.3.1 "Flu Clinic: Centralized or Separate Locations Example", which uses a walk-in clinic that provides Flu Vaccinations during flu season, which was receiving complaints from patients about the wait time. 


Traditional management approach

A traditional management approach is to have a brainstorming session, at which point, it was decided to split the clinic into 2 smaller clinics and place them in more convenient locations. 


Discrete Event Computer Simulation Setup 


Well…let's make a quick Computer Simulation to test out this change with some basic information that we already know. 


Simulate Patients arriving randomly 


It is explained that for the current large clinic there would be the following:


• 28 patients arrive per hour (i.e., On average, a patient every 2 minutes and 8 seconds) 

• It takes on average 8 minutes to register and give the flu vaccine to the patient 

• There are 4 exam rooms that can be used 

• Clinic is open for 12 hours (7a – 7p) 


And for the future 2 smaller clinics, it was decided to split everything evenly, specifically,


• 14 patients arrive at each clinic per hour 

• It takes on average 8 minutes to register and give the flu vaccine to the patient 

• There are now only 2 exam rooms for each clinic 

• Clinic is open for 12 hours (7a – 7p) 


To simulate 28 patients arriving randomly each hour, the authors use an exponential inter-arrival time of 2.143 minutes between arrivals for the Large Clinic scenario and 14 patients arriving randomly each hour at each small clinic with an inter-arrival time of 4.2857 minutes between arrivals, which I will use as well. 


Simulate how long it takes to get a patient vaccinated


To simulate the registration and administration of the flu vaccine, the authors use an exponential distribution with a mean of 8 minutes, which I will use as well. 


Results 


The results are as follows: 


As expected, (because of the patient complaints), with 1 large clinic the average time in the waiting room was 15 minutes with the longest wait up to 61 minutes AND at the end of the day, there were 11 patients still waiting to be seen…. Ouch!!!! 


How much more efficient were the 2 smaller clinics?


With 2 smaller clinics, the average time in the waiting room increased to 26 minutes with the longest wait up to 98 minutes AND at the end of the day, there were 39 patients still waiting to be seen. 


Wait! Did you catch that? Their decision to make 2 smaller clinics made things worse for their patients!!! How can this be? This doesn't make sense! Why did things get worse? 


Here is why: 


Basically, if you split up resources in a process whose duration times are random, with no other changes, your performance will decrease. 


Because patients arrive randomly, there will be times, for example, at one of the small clinics where both exam rooms are being used and a 3rd patient arrives. This patient will be forced to wait. If this happened at the larger clinic (with 4 exam rooms), they could have been helped in one of the other 2 available rooms. 


So, you see, there was an unintended consequence by splitting up the rooms that made things worse. 


Could you imagine being the decision-maker for these 2 clinics and spending hundreds of thousands if not millions of dollars to build out these 2 clinics only to realize that you made things worse?


Wouldn't it have been better for you to hire someone to build a computer simulation at a fraction of the cost and get it right? 


Run your Simulation multiple times to account for real-world variability


It should be noted that each simulation run will be different than another and as such, you will want to run multiple simulation runs to see the effect of your scenarios over long periods of time. 


I happened to run the above-mentioned scenario 100 times to see how different each run was from the other. 


Some run's results were not as bad as the first one, and a few runs were somewhat close to each other, however, over time, having 2 smaller clinics made things almost 30% worse. 


So, you can see not every Computer Simulation Project needs to be a 3-5 month-long complex project with hundreds of observations and gigabytes worth of data. 


Sometimes you can get enormous benefits from building a Computer Simulation around a small, but well-scoped process with a few pieces of information and not "break the bank" with enormous consulting fees or long project run times.