Laboratories must be able to deliver quality results, at the lowest cost, within the shortest time frame.
When redesigning laboratories to improve efficiency, there are significant costs and potential risks to consider. Any potential changes should be fully assessed to understand how they will impact against performance metrics.
In this on-demand webinar session, Tom Stephenson, Senior Healthcare Consultant at SIMUL8, discusses his experience of designing laboratory simulations and shares best practice techniques.
Tom studied at Loughborough University in the UK and is a Senior Healthcare Consultant at SIMUL8 Corporation.
He has managed large simulation projects for healthcare organizations worldwide. His background includes market access for pharmaceutical companies, disease pathways, health economics, and he has particular expertise in clinical operations and improving patient flow through hospitals.
Tom is passionate about creating successful simulation users and manages SIMUL8’s liaison with the educational world.
Hello, everybody. Just to give you a bit more information about myself, I have been a consultant for a little over five years now, working in healthcare the whole time. I have worked on a number of different simulations in that time and, especially recently, I have seen a growing need to test any changes in [01.30] laboratories. I have worked on quite a lot of different projects across the globe and I have found quite a lot of common elements whenever I have worked on any lab simulations, all in different types of lab work. Some of the projects have varied significantly and I am going to take you through a few different examples of that today.
We are going to start by looking at why you should use simulation for a lab, what I have found particularly [02.00] useful about this type of software and then I am going to go through a few common uses. Looking at new machinery, if I add a new machine to my process flow, how is that going to impact queues? How is it going to be utilized and also how is it going to affect the whole system?
I am going to talk about optimal layout, so whenever we have to change the layout of a lab, maybe we are centralising some of our lab services and we need to [02.30] redesign that lab.
Looking at demand changes as well, with a growing number of samples that might need to be tested, how we can include that in a simulation?
Taking it a step further, we have done some work on total lab automation recently and obviously that is such a big investment if you are doing that, but we know that it can bring a lot of benefits and SIMUL8 can really show those benefits.
Then, importantly [03.00] as well, maybe the area I work in most is looking at labs in relation to hospital flows. Whenever patients need test results to come back quickly they are relying on the lab and we do not want to increase that waiting time where we can.
I am going to hop into a simulation at the end as well, to show you some techniques, do some ‘how tos’ on things that I have found really useful when building any laboratory simulation.
Why use simulation? The first [03.30] real benefit is the visual element you get. You can build the simulation up to look like your real system. A lot of people will drop floorplans onto the simulation and build it over those and when you have that it looks exactly like your real system, so you can fully understand what is going on, see any queues building up and really relate to it. If you are sharing that with colleagues, it can increase engagement, it can mean people ask the right sorts of questions and you can get some really good communication. [04.00] Sometimes that even means that you find the solution before you have the results from the simulation, just from that better discussion that you might get. Overall, we hope this visualization is going to bring a better solution.
2. Easily capture real life variability
We need to capture the variability that happens in a lab and I think SIMUL8 really lends itself to that variation. We are not going to get samples evenly across the day. [04.30] Just as patient flow varies throughout the day, we might have more samples at different times of the day. If we are working in a larger, more central lab, we might have deliveries of bulk samples at a certain time. SIMUL8 easily allows you to capture that variation, which is really important if you want to see how your lab is going to work in real life.
3. Can model complex logic and rulesets
We can include any complex logic and rulesets. If there is [05.00] going to be a lot of logic, things like how many samples should be loaded into my machine before it starts, just because your machine can load 100 samples at a time, should you do that? What happens at the end of the day? What happens at the end of a staff shift? All of these rulesets we can build in. Also, things like resampling: if a certain percentage of samples have to go round the system again, and we know that might vary by sample type, we can include all of that information [05.30] into the simulation.
4. Whole systems thinking
It is really important to think about the whole system as well. If I am building a lab and I am looking at one machine, it is very easy to just focus on how will that machine work, how many parts can it get through, what will be the waiting time for that new machine. However, if we are implementing that new machine to maybe remove a bottleneck, it could be that we are pushing that bottleneck elsewhere, so our whole [06.00] system might not even improve that much and SIMUL8 can help illuminate that. You can get results such as throughput and time in system as well.
1. Assessing the impact of ROI and new machinery
A fairly common use is looking at that new machinery. When you are changing a lab there is going to be a lot of different options out there. There could be different brands to choose from, completely different machines and knowing which one [06.30] you need is going to be vital. It can be a very significant investment, so it is important to know the true impact before you make that investment. We see people who are looking at buying or adding a machine to their system using simulation. We also see people who are trying to sell their solutions using simulation; from the understanding you can get from seeing the new machine in [07.00] your process or in another process it really helps to get buy in for that selling process.
2. Simulation use
When we are doing this in a simulation we want to look at things like the waiting time. We want to look at how utilized the machine will be, how many parts we can get through, but also we want to look at the rest of the system: is it going to just move the bottleneck? If it does, how can we then make the system work well? How [07.30] is it impacting time in system and how is it impacting results against targets as well?
3. Case study
One example of a project that has been done really well looking at this was when we were looking at a histology lab in an anatomic pathway, comparing tissue processes in this pathway. This was being built by the company who would make the tissue [08.00] process and in this example it was really useful, because it was a system that had little standardization, not many standard processes, a lot of variation and that meant it was maybe difficult to collect any data. The advantage of using SIMUL8 for this one is that, where there was no data, we could build a simulation that could help thought and insight where we did not have that data [08.30]. Also, there were comments that the visuals really helped get buy in to making the change and, importantly, it can reduce the risk of adding that new machine.
4. Total or partial lab automation
You can take this further and look at total or at last partial lab automation as well. We know that probably, in the future, a lot of labs are going to be largely automated. As technology gets [09.00] better, there is going to be more and more pressure to move to this total or partial lab automation system. That is really good, because it can get you faster results, it can get you more accurate results, which are better for the patient. We can remove any human error, so the results are going to be more reliable. In addition, it can free up your staff to be able to do the more interesting work and not have to do any repetitive and boring tasks. [09.30]
5. Simulation uses
Again, if you are using a simulation, you could look at what is the speed of access to results. How is that going to improve with lab automation? How is it going to impact my staffing requirement as well? We might not need as many staff members and we can look in the long term; it might be a costly initial investment, but overall, if we do not need to rely on staff and as much [10.00] rework and things like that, the cost benefit could be a positive one.
6. Sysmex example
An example of a client who is working this problem at the moment is Sysmex, who are in partnership with GLP and they produce a really cool track system where the samples move around the lab in small cars. This system is really good, because it allows modular solutions, it does not [10.30] mean people have to use one brand for all their machines, so it integrates really well. What they are looking at is how, basically, their track system can improve a lab process and that can translate to small, medium or large labs. We are starting to find some real benefits of using simulation to show this and this is a project that is continuing today, .
7. Different layouts and demand patterns
[11.00] Next, we can look at different layouts and demand patterns. I guess now there is more of an emphasis on how you can make your lab more efficient, how you can deal with more samples in the space that you have. We do still see some people who are thinking about, expanding their lab or at least moving the room in which the lab is in. If we are doing that, again, we want to test [11.30] it to see how it is going to work. We want to be able to see if it is going to process the samples well, but also that it is going to be friendly for the staff.
8. Simulation uses
Some of the examples of this might be: reconfiguring machines, bigger or small labs, seeing if we are still going to be able to produce the results we need to, or testing demand changes. If the demand is changing, what is going to be the limiting factors, which part of the [12.00] process is going to be my bottleneck? Really, you need to know, with any of these changes, if you can still meet your targets. A lot of people as well are outsourcing at the moment. Obviously, it might save a lot of cost, it might increase the time it takes to get samples back to patients, though, but really without knowing that in detail it can be quite difficult to make that decision and that is where using simulation can really help. [12.30]
9. Large pharmaceutical client example
One example of this was a large pharmaceutical client we were working with who were looking at the effect of positioning an accumulator ahead of a cartoner and then testing that with different throughput rates. They were testing it with various capacities for the accumulator, to try to decide if we reconfigure this, what capacity should we go with? When we looked at this, [13.00] we found that there was not a huge difference in terms of the best capacity to choose, but getting up towards 10,000 capacity was where we saw the most efficient use, so that could lead and steer to which capacity works best in this configuration. If we have any more capacity, it is probably not going to help the system at all.
Those are the types of results you can use to help decision making. [13.30]
10. BJC example
Looking at this in a slightly different way, BJC were looking at two different layouts. You can see the two different layouts at the bottom of the slide there. They wanted to see which design was going to work best in terms of staff movement and so being able to move efficiently and reduce waste. Some of the results from that were reducing staff travel time in the sort station [14.00] by looking at the typical paths that staff walk through, and that was a 37% reduction. It helps determine the right staffing level as well. When you can look at how many staff are needed to operate the machines and also how much time is spent moving around the lab, you can really get a lot of good detail about the right staffing levels at different times of the day.
11. Impact on the hospital
Finally, a good use of simulation and the one we see all the time is the impact on the hospital. [14.30] It is really important that any patient gets their results accurately but also as quickly as possible, because we do not want to block the flows in the hospital, especially when there is such strict targets all over the world, strict targets around especially emergency departments and things like that. We do not want to do anything that is going to stop the flow. Simulation is really good for this because it allows parallel processing to be tested and I will show you an example [15.00] of that when I hop into the software later.
We want to be able to isolate the time taken for waiting for test results as well and that is something that you can do with simulation, because a lot of the time we might just see that a patient has been delayed, if we look at a lot of data, but not really be able to know why, so including this parallel process and seeing how long it takes is really good for highlighting the impact on the patient. [15.30]
12. Emergency Department example
One example of this is from a UK emergency department in London. They were looking at their new design for their emergency department, looking at all their different flows, but also included in this was a separate diagnostics pathway, which you can see on the right has quite a lot of different activities there, including things like x rays, CT scans and all the blood testing as well. Whenever [16.00] need that we can say, based on the different patient types, what is their chance of needing to have samples go to the lab and then how long does it take and, therefore, what is the time holding up the patient flow. If you have something like this, it is really good to be able to see what the delay is and then experiment with, if you change the system, how would that reduce your delays in the hospital and how can you do better against targets because of that.
13. Useful results
[16.30] In any of these laboratory simulations there are a few results that I think are really useful all the time. If we are looking at improving one area, we want to look at the utilization of that: is it 100% utilized, is it 50% utilized, what do we need it to be and how does that change over time?
We want to look at how long samples are waiting and that can be based on different types as well. You can have what is the maximum waiting time, the average waiting time [17.00] or, crucially, the time within a limit. When you have a target time to turn samples around, what percentage of the time are you within that and when does that change at different times of the day.
Also, we always want to look at the system: what is our throughput, what is the average time in the system and what is going to be the cost as well.
By looking at all of that, it is going to give you a really good evidence base for making the change [17.30] or not making the change that you want to make. All of these results are standard results within SIMUL8, so it is really easy to collect these. These will be collected automatically every time you run a simulation.
15. Useful simulation techniques
We always like to have some results on screen as well, so you can visualize. We have utilization charts here that show what percentage of time you are working or waiting, which is going to help you see which parts of the system [18.00] are most busy, and this is obviously going to change. If you make a change to one part of the system it is going to change the utilization elsewhere, so being able to see that as you make the change is really powerful.
I am going to now step into SIMUL8 to show you some of the techniques that are really useful. If you are already building labs, I hope you will find some of these very applicable.
I have a really simple [18.30] automated lab here. My samples are going to come through. If I press the Play button, we should start to see them moving along. They are going to come in to our centrifuge, go on, be decapped into our aliquot machine, into our rack before leaving, so it is a really simple, linear process. I am sure most processes in the lab are a lot more complex than this. [19.00] I am going to run this through for a week. It is just a simple, linear flow without much detail right now, but what I am going to do is add some detail to the system and show you how you can do that really well in SIMUL8 and really quickly as well.
The first one is the day planner. This was a feature we built maybe two years ago now and what that does is it makes it really easy to capture that variation [19.30] in arrivals that happens every day. If I look at my start point, I have this option to use the day planner and I can choose whatever interval I want. I am going to choose an hour. I can see this lab is only running nine until five and I can say how many samples I expect to receive between nine and 10, 10 and 11, 11 and 12 on each day. That might vary every day, but what is really nice about this is you can [20.00] quickly put any of those in and the simulation will automatically respond, at different times of the week, to these arrivals. I will click ‘Okay’ there. The other good thing about that is when you use that feature it creates a spreadsheet with the information in, so that makes it really easy to link to things like Excel, where you could just have loads of different schedules put in and you could easily copy and paste them into here and test them very quickly in the simulation. [20.30]
The next thing – oh, I have gone too far, let me just come back around the loop – is prioritization. We are going to want to prioritize some samples over others at certain times of the day to enable us to meet targets, really because we assume that some patients need those results back very quickly. What I have here is a little [21.00] queue set up for this centrifuge. Now, I am going to set a priority here just to show you the technique. I have four samples coming in and it is randomly typed one, two, three and four, and again I have just this checkbox that allows me to prioritize based on that value. What that is going to do is it is going to put the highest priority at the front of the queue, meaning the highest priority should get through the queue quicker. If I rerun this simulation now, [21.30] what is going to happen is – I will pause it. I have paused it here. In this queue, if I look in there, I can see at the front of my queue I have a type four, then a few type threes then a type two. They have automatically reprioritized themselves in that queue, so we will see how that impacts flow. I am going to run that through again [22.00] quite quickly now and what we can see and what is really useful is not only can you prioritize very easily but you can see the impact really easily as well. I can see that my average time in the queue here is about 101 minutes. For type ones it is about 111 minutes, for type twos 104, 98 for threes and 82 for fours. There is quite a big difference now [22.30] between my type ones and type fours and by refining this you can really make it accurate to real life and see how your different samples are going to get through the system compared to their targets. You can do that in the queues, but you can also do that in terms of the time in system as well. Again, I can see how long have my type ones, type twos, type threes and type fours spent in the system and it will probably be quite a significant improvement [23.00] as we move higher up the priorities.
The next one that is quite useful is setting any collect rules. A lot of machines in the lab are not just going to sample one sample at a time. We are going to wait until we have a build up of maybe four or five samples before they start going through the system [23.30] and we can control that really easily in SIMUL8. I have an example of this, just a simple one for the centrifuge, where we should see, as I run it, that the queue will build up until 10 samples are available and, at that point, it will collect the samples and move on. That is a really simple collect rule. Now, I could change that number. If I wanted to play around with different capacities, I could easily [24.00] change that number, but there are some other ways I can do that that are really effective as well. If it is going to vary depending on the type of sample that we have, I can use a sheet and I can say– if I just create a new one... I will call that ‘Collect’. What I could say [24.30] is that my type ones, I need to collect three of them, my type twos, I need to collect four of them. I would just add that to this spreadsheet and, again, the simulation will automatically respond to that. I can do things like set this collect to all as well, using ‘All’, which is a hidden feature that not many people know about. But what that could do is, at certain times of the day, if you want to change the rule, you could quickly change it to collect [25.00] all the samples that are waiting and run the machine before it is at full capacity. We can use them and change them to really put in the rules that you might see in a real system.
The next one that is really useful for looking at hospitals is batching. What we mean by batching, if I come to this different view here, [25.30] is it is all about parallel processing really. Whenever a person comes in and, say, a blood sample gets taken, we want to be able to say, in parallel, the patient can go and have any other tests or go to their cubicles and wait while, at the same time, the laboratory is working. Then what we can do is we can say that the patient is going to be waiting here and the time that they wait here is the time waiting for their [26.00] samples. To do that, all I need to do is, on this one, say, there is going to be two units that come out from here, so there is going to be a sample and there is going to be the patient and I am going to say you cannot leave the system until both of them are available by using this collect rule. Now, when I have that in my system, what I should see is that these two queues, if I just pause the simulation, I can see these two queues are building up [26.30] at a very similar rate and that is because all of these people in this queue are waiting for their lab test to come back. If I was to reduce the time it takes for the lab test to come back, I would reduce the time that patients are waiting here. You could add a lot of detail to this lab to look at all your staffing requirements and things like that, but importantly, whatever change you make you can see the impact on the patient, which gives [27.00] a really powerful message to improvements for any lab.
I always like to use a background image as well on a lab. This goes back to that visualization element we were talking about where, if you can have a visual that is going to represent reality, it is going to mean people can relate to it really easily. Now, I have done this in a really simple way. I have only spent five minutes changing this, [27.30] but this is the same process that you saw at the start. The only difference is I have changed some images slightly, I have built a wall around it, but instantly you should be able to relate to the system a little bit more and you will have to excuse my artwork here, it is not the best. Other people have done this really successfully. In this example here that was done by BJC, we can see we have a floorplan on there that is instantly relatable and you can see the samples moving around it. [28.00] You can see any queues building up, which is really quite powerful and it really does help, when you are showing this, to get that engagement. You can even make this 3D as well, so you can make these look very 3D and see samples moving around them. I will run this through to the end.
The final one is a bit of a bonus feature, because it is not really useful for everybody, but [28.30] if you were a company that, say, is building lots of labs, showing the impact of a lot of different labs, maybe you make equipment or you make total automation simulations and you want to keep using your feature in a simulation a lot of times, we can store components. If I hop to a new view again and look at this, this is a component. Let us say this is [29.00] the inner workings of my machine. I have built a lot of rules into this about when it collects samples, about how long it takes to process them and I know that I am going to want to build other simulations that have this same configuration, so I might want to store that as a reusable component. The way I do that is by selecting this whole process and I can create a component. Now that whole process is within this one building block [29.30] and I could put that into any simulation. What is really good about that is if I want to reuse this in completely different simulations, I can come in and I can look at my Properties and I can make this a reusable component. I already have a lab machine in here, but if I [30.00] save this as a lab machine and replace it, what that does is it now stores all that inner working and everything else in that one building block. Within my simulation I can then come in here – and this happens – and now when you open any SIMUL8 file, you can just drag your lab machine on and that makes it really easy to input that into any system.
Those are a few different techniques that I hope are useful. If you would like to know [30.30] more information about any of those techniques or anything else I spoke about today, we will make sure we give you the option to get in contact.
Thanks very much for listening. I have enjoyed speaking to everyone today. I hope that it has been informative. Does anybody have any questions?
Thanks very much, Tom. That was great, really interesting. There is [31.00] one question that has come in, which I will ask on the person’s behalf. It is: how long does it take you to build a lab sim? I know you have talked about several there, so I imagine they are different.
Yes, it does vary quite a lot. It depends what you are trying to do, I guess. If you are looking at building a whole new lab with a whole new layout, it is going to take longer than if you are building a system where you already have the system and you are just testing out [31.30] a few different machines in different configurations. You can build a lab flow and get results from it really quickly, within maybe half a day, but we have some projects where we are building these reusable components where you might be working on them for a couple of months before you have the final, polished version. What is important to remember with those types of simulations where you are building a lot of detail [32.00] into it is you should be looking to get value at all stages of that, especially as the simulation is very visual and it does help with communication. Even if you are spending a couple of months refining the simulation, you should be getting value from it the whole time.
Okay, thanks, Tom and thanks very much to the questioner. We have another question now and thanks very much for posting this. It is: ‘Can you change the timescale in timing system graphs? They seem to be odd numbers of minutes [32.30] instead of, say, hours’.
With that feature, the timescale that it uses is based on your simulation clock, so if you have your simulation clock set to minutes it is going to automatically use minutes. There are ways of building those graphs slightly differently so that you can put in any scale that you want. The default is just whatever scale you are using for the simulation, [33.00], though. There are some features that allow you to build graphs. It takes a little bit longer than just using the default ones, but that is a good thing to mention, because it is something that I could certainly take to our development team and see if there would be a way to make that automatic for the default graphs as well.
That is a great suggestion there. [33.30] If people listening have any questions, please do post those. One other that has come in is: ‘If you were thinking of merging a number of labs over a wide geographical area to get some efficiencies, how would you approach that project?’
When you have that type of project, I always like to start by building what the labs currently look [34.00] like. If I have three different labs, I want to see how they are all performing individually first, so I like to build them with all the inputs that they have for their current system. What that does is it helps you to validate a lot of the inputs as well, because you will know how those individual parts of the system work. You can build all those inputs and those arrivals and things like that, validate the system and then it is just really a matter of reorganising your arrivals that you have already [34.30] built into the one flow with the configuration that you have. I would always start by trying to build a base lab first that matches the real system, because then you can, one, validate it and, two, it will give you a lot of the inputs for the new system.
Okay, thank you very much, that is really helpful and thanks to the questioner as well. Okay, I think that is all the [35.00] questions that we have. If you have any other questions, please do send them in. We have our email there: info@SIMUL8.com.
Another question has just come in and I think we have time for it, thank you very much: what do you usually use to randomize the arrival volume other than the day planner? In the anatomic path lab we have some bunching, [35.30] but it is still random.
Yes. There are a number of different distributions stored within SIMUL8. Let me see if I can hop in and show you. Within any simulation we want to account for the variation that happens in a real system. I hope you can still see this screen. There are lots of different distributions within [36.00] the software that are built in and do not quote me on this, but I think there are 14. If we use some of them, like a fixed one, then that is going to show that there is going to be no variation. Now, we know that that does not really reflect reality at all, but a lot of these other distributions will automatically build in the variation that you are going to see in real life. You tend to see, with a lab, [36.30] a lot of arrivals that are all pretty close to each other with maybe the odd few that are spaced out more, possibly because of deliveries coming in or maybe if certain changeover activities need to happen, so something like an exponential distribution where we have a lot of arrivals all quite close to each other and then some arrivals more spread out can be useful. [37.00]
Another way that you could do it is you can use a schedule as well. What that does is you can put in your exact historic data and see how that exact flow would work with a change. That method will not give you as much flexibility to test different arrival patterns, but if you are just looking to test it against what would have happened, that can be [37.30] a really good way to do it too.
Thank you very much indeed to Tom for the presentation today. Thank you to you all for attending. We really appreciate your time and it was great to have that bit of discussion. We look forward to talking to you again. I think our next webinar is scheduled for next month and we are hoping to hear from Memorial Health, talking about some of their work on healthcare facilities, so I am excited about that.