question

Ralpho S avatar image
0 Likes"
Ralpho S asked tannerp edited

How to build a single cycle time from several cycle times inside a Global Table?

Hi, basic-process-time.fsm

I am trying to make a processor read 10 inputs from a global table and combine them (process time 1 + process time 2 +... process time 10 ) to generate a total process time for the station.

This way, I understand that I can better capture the real behavior of my process.

The problem is, I don't really know how to tell my processor to read lines 1 to 10 from a global table, and combine their results as a sum.

As you can see on the global table ProcessTime, my cycle time info will always be a distribution. That's why I intend to analyze them task by task instead of a single generic cycle time for the station.

1) Is it possible to read this distributions from a global table and combine their results into a process cycle time for my station? How?

2) I am using a normal distribution for this case. But what I really need is a way to limit maximum and minimum values for this distribution. Something like a Truncated Normal curve "Tnormal". The only difference from the normal curve, is that it accepts 2 more parameters besides average and stdev, I can limit maximum and minimum values in order to better fit a real process.

Ex: If the average of a process is 3 seconds, the operator might take 10 seconds to finish due to a distraction, but he cant perform under 1.5 seconds, never. So here, the normal curve wouldn't be enough to represent this curve. it should be like Tnormal( 3.0,2.0,1.5,10.0 ).

How can I represent this kind of distribution inside flexSim?

Ill attach a dumy model to help on understanding.

Appreciate as always.

FlexSim 19.2.4
process time globaltable
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

Benjamin W2 avatar image
1 Like"
Benjamin W2 answered tannerp edited

Hello @Ralpho S,

Check out this custom code for the processing time on your Processor1:

Table table = Table("ProcessTIme");
Array times = Array(0);
double timesum = 0;


for (int i = 1; i <= table.numRows; i++)
{
	timesum += table[i][2];
}


return timesum;

This will aggregate your time table.

For your distributions, it sounds like you are describing an exponential distribution. Flexsim has this statistical distribution built in.

I hope this helps!

· 4
5 |100000

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

Benjamin W2 avatar image Benjamin W2 commented ·

Check out the attached model:

timeaggregation.fsm

0 Likes 0 ·
Ralpho S avatar image Ralpho S commented ·

@Benjamin W2

Thank you Benjamin! very nice solution, this will also be useful for many other situations.

I was looking into the exponencial curve you mentioned, and I am not sure yet. I also came up trying the Erlang distribution, and I think it fits better for a human cycle time.

The normal behavior is to have more cycles at the mean rate, and less on the minimum value.

(Fig. Erlang) erlang.jpg

Looking at the exponencial, the minimum value will ocurr more often than the mean one.

(Fig. Exponencial)exponencial.jpg

I dont have that much experience with statistical distributions yet, still researching on this.

Do you have any indication to give me regarding whats the best distribution for manufactory human cycle time?

Thanks alot for all your help! Appreciate it.

0 Likes 0 ·
erlang.jpg (42.2 KiB)
exponencial.jpg (39.7 KiB)
tannerp avatar image tannerp Ralpho S commented ·

There's not a set distribution for any given application. There are simply too many factors that influence the statistical models for any given operation. The best thing that you could do is track information for your operations over a couple shifts or perhaps over a week, then see what type of distribution the results most closely resemble.

If you're just looking to compare results of two different line setups or inventory management strategies, I personally think that just about any distribution will work as long as you're consistent.

0 Likes 0 ·
Ralpho S avatar image Ralpho S tannerp commented ·

I understand, this is the best way to go.

Thank you very much!

1 Like 1 ·