Track the intersection of different patient flows

Track the intersection of different patient flows

ksenia_f
Not applicable
51 Views
14 Replies
Message 1 of 15

Track the intersection of different patient flows

ksenia_f
Not applicable

[ FlexSim 21.0.1 ]

Hi!

There is a task to track the intersection of different patient flows. How can this be done? Perhaps using dashboards? Thanks.

0 Likes
Accepted solutions (1)
52 Views
14 Replies
Replies (14)
Message 2 of 15

jason_lightfootVL7B4
Autodesk
Autodesk

@Ksenia F Could you give is a little bit more detail about what you want to see/track - in an example ideally?

0 Likes
Message 3 of 15

ksenia_f
Not applicable

I have a model with different patient flows (planned and emergency). I am changing the location of offices and entrances to reduce the number of intersections within the department. What dashboards can be used to track this and ultimately provide the best option. I understand that you can just look at the model and follow the patients visually, but I would like to use graphs.

Test1.fsm

0 Likes
Message 4 of 15

cliff_king
Not applicable

Would the heatmaps available with A* give you what you need? There are several options for how to display the color gradients and there are even ways to extract the data behind the color gradients if you like (search for heatmaps in Answers for how to do this).

36665-1612809296870.png

36666-1612809326639.png

0 Likes
Message 5 of 15

ksenia_f
Not applicable

Thanks for the idea, @Cliff King

But, heatmaps shows staff + patients workload, and my task is to show the places where patients of different patient flows intersect. Can this be done? Thank you in advance!

0 Likes
Message 6 of 15

Jeanette_Fullmer
Community Manager
Community Manager
Accepted solution

Hello @Ksenia F,

I took your model and implemented several things from this post and model.

The model uses an agent proximity system to detect when a planned patient comes within 2 meters of an emergency patient. I created a second label set so that patients that are planned (Emergency = 0) and emergency patients (Emergency = 1) can be distinguished from each other. The patients are added to the agent system at the beginning of their process flows. The rules specified in the proximity system are to ensure that only data is received from one of the patients in the case of an interaction of planned and emergency patients.

36741-1613079329929.png

When an emergency patient enters the proximity of a planned patient a trigger is sent to a visual object that draws a disk at that interaction so you know where the patient is interacting in the model.

36752-1613080570586.png

Here is the model for you to reference.

HC Agent proximity system statistics and heat map.fsm

Message 7 of 15

ksenia_f
Not applicable

Hello @Jeanette F !

Yes, this is exactly what I need. I am currently trying to port this method to another more complex model where 3 threads are involved. And I got this error: "time: 0.000000 exception: FlexScript exception: MODEL: / Tools / ProcessFlow / Плановые / Assign Labels> labels / 1/2

time: 0.000000 exception: FlexScript exception: MODEL: / Tools / ProcessFlow / Плановые / Custom Code> variables / codeNode ".

I don't understand how to remove it. I am attaching the model for better understanding. Thanks!

Agentmodel.fsm

0 Likes
Message 8 of 15

jason_lightfootVL7B4
Autodesk
Autodesk

When you assign the agent label you have a spelling mistake "ProxinitySystem" should be "ProximitySystem"

0 Likes
Message 9 of 15

ksenia_f
Not applicable

@jason.lightfoot thank you!

0 Likes
Message 10 of 15

ksenia_f
Not applicable

Hello @Jeanette F!

I am having a problem trying to apply this method in a model with 3 patient streams. I think I followed the sequence exactly, but the statistical table is not populated and does not recognize intersections. What could be the mistake? I attach the model.

agentmodel.fsm

0 Likes
Message 11 of 15

Jeanette_Fullmer
Community Manager
Community Manager

Hello @Ksenia F,

I don't see where you assign the label Planned in your label sets or on the patients in the process flow. You can add them in a label set by going to People Settings in the Toolbox. This is the label you use in the Agent System to collect data from only planned patients who encounter emergency patients.

Image.png

Also in the statistics collector Proximity Times you have to select what event will trigger what in the columns tab. The On Enter Proximity event will update the EnterTime. The On Exit Proximity Event will update the Exit Time and Duration.

Image.png

agentmodel_v1.fsm

0 Likes
Message 12 of 15

ksenia_f
Not applicable

Thanks for the help @Jeanette F!.

0 Likes
Message 13 of 15

yulia_k
Not applicable
Hello @Jeanette F !
I opened a model which you implemented your idea. I noticed that a red circle appears next to the elevator (at about 08:11), although the intersection occurred elsewhere. Could it be a mistake when describing the "on draw" trigger? When I used your idea on my model, a similar nuisance arose (the intersection was fixed in a place where it could not be). Thank you in advance!36906-1.jpg
0 Likes
Message 14 of 15

Jeanette_Fullmer
Community Manager
Community Manager

Hello @Yulia K and @Ksenia F,

This problem was occurring because when the patient is at a location their coordinates become relative to the objects location rather than to the model.

For example, here are the coordinates for the reception desk.

37054-1613760042166.png

Here are the coordinates for the patient at the desk.

37040-1613760102376.png

So the code in the visual tool Heat Map On Message Trigger needs to be altered. The line that sets the position needs to be.

Vec3 pos = fromObject.getLocation(0.5, 0.5, 0.0).project(fromObject.up, model());

Here is the updated model for you to reference.

HC Agent proximity system statistics and heat map.fsm

Message 15 of 15

yulia_k
Not applicable

Thank you. This solved my problem.

0 Likes