Mark S2 avatar image
Mark S2 asked Mark S2 commented

Patient Reassessment While Waiting for Location Resource

Hello all,

I am trying to build a model where patients can concurrently wait for an ED bed to become available and be reassessed (re-triaged) as they wait. Upon an ED bed becoming available, the patient reassessment 'sub process' is interrupted regardless of the sub process step (delay for reassessment, acquire resource, walking to patient, processing & release resource).

My thought was to do a token split, where 1 token would wait for a bed to be acquired and the other one would go to the reassessment loop. After a bed is acquired I thought to use the "release token" to reference the other split token to interrupt the reassessment sub process. There are five releases since a bed could be acquired during any of the sub process steps.

My logic makes sense to me, but I don't know how to reference the sub process activity in my 'Decide' block..and I probably chose the wrong split type (sibling). Can someone take a look at this model and help me correct it or offer a more elegant/concise solution?


ED Triage Reassessment Model_3.fsm


FlexSim 21.0.3
flexsim 21.0.3parallel processreassessment
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

1 Answer

Matthew Gillespie avatar image
Matthew Gillespie answered Mark S2 commented

Here's a way you could do this using the Max Wait Timer of the Join activity:


So you split the token and have one go to the left and start trying to acquire the ED Room while the 2nd one goes straight to the Join activity and waits for the first token. If the first token arrives within 10 minutes then they join up and the 1st token moves on. If not, then after waiting 10 minutes the 2nd token is released to the Acquire RN for Reassessment activity. After the reassessment the token again goes to the Join to wait another 10 minutes.

On the other side, after acquiring an ED room the 1st token goes to the decide which checks if the 2nd token is waiting on the Acquire RN for Reassessment step. If it is it releases the 2nd token to the Funnel activity on the right side of the join. Otherwise it just moves to the left funnel. (The funnel activities are only necessary because the Join needs to only have 2 input connectors to correctly join up 2 things. If you have 4 input connectors it will wait for 4 things to arrive.)

I chose to only release the token from the Acquire activity because it gets you most of the way there without being as complicated and it looks like there's a small bug with releasing a token from a Process activity early (the staff's state isn't being put back correctly). However, if you want to release the 2nd token if it's at any point in the reassessment block then you can change the decide condition so that it releases the 2nd token if it's not in the Join activity.

· 1
5 |100000

Up to 12 attachments (including images) can be used with a maximum of 23.8 MiB each and 47.7 MiB total.

Mark S2 avatar image Mark S2 commented ·

Thank you!!

0 Likes 0 ·