引言
线边库存物料的合理性问题是物流仿真中研究的重要问题之一,如果线边库存量过多,则会对生产现场的布局产生负面影响,增加成本,降低效益。
写在前面
仿真分析后对线边Buffer的使用情况进行合理的评估就是一个非常重要的事情。比较关心的参数包括:缓存位最大值、缓存位最小值和缓存位平均值。极值都可以十分方便地通过统计数据进行查看,而均值的评估,没办法直接获得,需要我们再处理后才能获取,下面波哥给大家提供两种缓存平均的计算方法。
Buffer的统计数据常用属性
- Minimum contents:最小值
- Maximum contents:最大值
通过上面的两个参数可以获得buffer的极值。
接下来波哥给大家讲解常见的两种方式,供大家参考,两种方式有利有弊。第一种较为方便快捷,第二种精准,但较为繁琐。
正文
方法1:缓存的平均占用率计算
可以通过通过buffer的统计属性间接计算平均缓存值。
如下计算公式去计算缓存均值
/*
Approximate estimation the average buffer method
*/
buffer_average:= (EventController.SimTime - EventController.StartStat) * Buffer.StatRelativeOccupation * Buffer.capacity / (Buffer.StatNumOut + Buffer.NumMU)
buffer的属性StatRelativeOccupation,提供了buffer再仿真过程中的物料dwelling times的时间总和与仿真时间的占比。
可以看出这种方式并不是十分准确,比较粗糙。
方法2:使用timesequence记录
timesequence设置时,只需要在record记录buffer的nummu值即可。
最后,求取第二列均值,即可获知,仿真期间的平均缓存量。
buffer_average := buffer.meanValue({2, 1}..{2, *})
并且,在拿到详细数据后,可以更加方便地分析,各个阶段的缓存情况,波哥建议使用第二种情况进行分析。