首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Q:[任何逻辑]测量生产吞吐率

Q:[任何逻辑]测量生产吞吐率
EN

Stack Overflow用户
提问于 2017-10-05 02:29:26
回答 2查看 959关注 0票数 2

我想知道如何测量这条生产线的吞吐量。

问题:是否有任何方法来测量代理在接收器块之间的离开时间?>>(我将通过反转偏离值之间的时间来计算吞吐量。)

目前,我只是简单地根据Little定律计算吞吐量,它使用的是线路的平均提前时间和WIP级别。我不知道基于这个计算的吞吐量值是否等于离港时间的倒置值?

我希望你们能帮我解决这个问题。提前感谢!

EN

回答 2

Stack Overflow用户

发布于 2017-10-05 13:45:47

有一个函数" time ()“返回模型时间单位中的当前模型时间。使用此函数,您可以知道代理A和代理B离开系统的时间,并计算这些时间之间的差异。您可以通过在“接收器”块的"On“字段中编写如下代码来做到这一点:

代码语言:javascript
复制
statistic.add(time() - TimeOfPreviousAgent);
TimeOfPreviousAgent = time();

"TimeOfPreviousAgent“是”双重“类型的变量;”统计“是用于收集测量数据的”统计“元素。

在教程银行办事处中描述了测量流程中时间的这种方法。

作为另一种选择,您可以将每个代理的剩余时间存储到集合中。然后,您需要对存储在集合中的样本进行迭代,以查找每对样本之间的差异。

票数 2
EN

Stack Overflow用户

发布于 2017-10-11 07:20:45

不确定这是否有帮助,但它源于塔蒂亚娜的回答。在代理状态图中,可以创建变量TimeIn、TimeOut和TimeInSystem。然后在Statechart入口点

代码语言:javascript
复制
TimeIn = time();

在最后一个州,

代码语言:javascript
复制
TimeOut = time();
TimeInSystem = TimeOut - TimeIn; 

要观察每个代理的这些时间,可以使用以下代码,

代码语言:javascript
复制
System.out.println("I came in at " + TimeIn + " and exited at " TimeOut + " and spent " + TimeInSystem + " seconds in the system";

然后,为了进行统计分析,可以通过在主变量TotalTime、TotalAgentsServiced、AvgServiceTime、MaxServiceTime、MinServiceTime中创建一个函数来计算所有代理的最小吞吐量、平均吞吐量和最大吞吐量,然后添加一个函数调用,称为TrackAvgTimeInSystem .在函数中添加参数NextAgent,类型为double。在功能体中有,

代码语言:javascript
复制
TotalTime += NextAgent;
TotalAgentsServiced += 1;
AverageServiceTime = TotalTime/TotalCarsServiced;

if(MinServiceTimeReported == 0)
{
    MinServiceTime = NextAgent;
}
else if(NextAgent < MinServiceTime)
{
    MinServiceTime = NextAgent;
}
if(NextAgent > MaxServiceTime)
{
    MaxServiceTime = NextAgent;
}

然后,在代理的状态图中,在最后一个状态调用函数

代码语言:javascript
复制
get_Main().TrackAvgTimeInSystem(TimeInSystem);

然后计算所有代理的最小、最大和平均吞吐量。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46576973

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档