question

Akshay P avatar image
0 Likes"
Akshay P asked Shankar Narayan answered

Waiting time vs Processing time for an object

Dear all,

I would like to obtain the statistics regarding the waiting time vs processing time for all my flow-objects in my simulation. I have been reading up in the forum as well as the manual and I have only found state charts (but they seemed to be more focused on TEs as well as fixed resources, but not the objects that are being processed by them).

Can someone tell me which statistics can help me with the above stated problem?

Regards,

Akshay Pundirstatic-tandemadjusted.fsm

FlexSim 19.1.2
dashboardssimulationprocess timestatswaiting times
5 |100000

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

tannerp avatar image
0 Likes"
tannerp answered Akshay P commented

Hi @Akshay P,

This is a great question. I don't currently know of any templates that do this within the software, and our resident statistics expert is not in the office today, but here's my best attempt at a solution.

I used an Item Trace Gantt chart, which shows where the flow items are at different times in the simulation and looks like the image below.

This chart creates a standard Statistics Collector with time values we can use to calculate the waiting time and processing time. The only thing that's missing is we don't know which objects represent either "waiting" or "processing." To include this, I simply put a binary label called "timeType" on each of the queues and processors that indicated whether the object was a 0 - "waiting" or 1 - "processing" type object.

Opening up the statistics collector through the tree as shown below, we can add a data tracker on this "object type" label that listens to the event object and checks the label to see if the item just finished waiting or processing.

From the Stats Collector Properties window, we can go to the General tab and click Export Table after a model run to collect all the data in a CSV file.

I couldn't find a good way to aggregate and show this data in FlexSim (I couldn't find a function to calculate the difference in dates), so I took the raw data (shown below) and ran a sql query to aggregate the data to what we need.

The SQL Query I used was the following:

  1. SELECT item, SUM(DATEDIFF(starttime,endtime,"second")) AS timeDiff, objecttype
  2. FROM time_type_test
  3. GROUP BY item, objecttype
  4. ORDER BY item

The results came out to look like this:

As you can see, we now have data that we can work with to see how much time each item spent waiting vs processing. To explain each column:

1) The "item" column is just the number of the item that entered the system in chronological order.

2) The "timeDiff" column is the SUM of the calculated DIFFERENCES between start and finish times GROUPED BY the type of time, whether "waiting time" (=0) or "processing time" (=1).

3) The "objecttype" column tells us whether the object that the flow item entered/exited was a "waiting" type or a "processing" type object.

I know this is a bit of external work to get this data, so hopefully we can find a way to get this within FlexSim, but for now, maybe this will help. Let me know what feedback you have...

Here's the model I used for reference:

time-flow-items.fsm


· 15
5 |100000

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

Shankar Narayan avatar image
2 Likes"
Shankar Narayan answered

Hello @Akshay P

Can this original question not be answered simply by using Milestone charts? We use that a lot to paint the various Sankey diagrams which is essentially tracking flow items through it's life cycle in the system at various stages. Each milestone captures all the stats you want and the Sankey is a great way to tell the story. Not sure if this applies to your specific model situation.

5 |100000

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