如何使用Arena软件Variable模块

Variable是最常用的图表模块之一,它用来给系统变量赋值。Variable是一个包罗万象的存在,下面是我对Variable的几点理解。

工具/原料

Arena软件
Project Bar>Basic Process>Schedule

方法/步骤

在建立模型的时候,我们经常要给某一个变量赋值。

赋值的方式有很多种,如果是给单个实体的某种性质赋值,我们考虑用“Attribute”,它相当于一个物体的标签。而如果是给全局的某一个变量赋值,我们就需要用到“Variable”。比如库存量,或是订单数等等。它相当于张贴在墙上的状态表,表格的内容是可以自定义的。我们可以根据情况对这张状态表的内容随时作出修改。

当然,这张表格的一些常用内容,Arena已经帮你写好了。比如系统时间,就是一种Variable,它的名字叫做“TNOW”。

另外,编辑某一个步骤的时候自然地会产生与之相关的变量,这时Arena会自动生成它的名字以备使用。比如队列长度,编辑某一使用资源的步骤时,自然有可能会产生一个队列,它也是一种系统变量,在Arena里具备统一的格式。像是NQ(Process1.Queue)就是Process1这个步骤的排队长度。

还有一种情况就是,当一个变量的数值既不是一个单纯的数字,又不能用系统中常用的数学表达式表达,就是考虑让Variable出场的时候了。与功能相近的Expression不同的是,Variable具有一个初始值。

举例,下面这个Create模块里面,MaxCall便是我们定义的一个Variable。

Variable最常见的出现方式是出现在Assign模块里面,Assign专门用来给变量赋值。如图,Assignments里面的Type,相关的有Variable,Variable(1D),Variable(2D),分别代表变量是一个数值,一列数值,还是一个矩阵其中的一个数值。如图,Total WIP代表了进入系统的工作量(WIP=Work in Progress)。在这一步Assignment里,一个实体进入,说明工作量+1。

下面我们来看一下Variable(2D)的情况。

Assign里面的每一行我来解释一下:

第一行Attribute,Education,disc(0.3,1,0.6,2,1,3):假设在我的工作单位中,有30%的人是专科学历,他们的Education属于第一种情况;30%是本科学历,Education属于第二种情况,40%是研究生学历,是第三种情况。

以此类推,第二行也是对Experience的三种情况做出一个归纳:这些人中,有30%是一年工作经验,30%是两年工作经验,40%是多年工作经验。

第三行,Wage 这个Variable是一个2D Array。数值由两个变量影响。Row 的值是由Education提供, Column的值是由Experience提供。

打开Variable图表模块,对其数值进行编辑。

Rows, Columns是行和列的个数。如果不需要,留下空白,不要写1。

Data Type可选数据是数值(Real)还是字符串(String)。

Clear Option是指什么情况下我们还原Variable的初始值,可以在系统重置的时候还原(System),可以是统计数量重置的时候还原(Statistics),或者不还原(None)。

File Name,我们可以从外部导入Variable的数值。

Initial Value,初始值,写入需要的数值。如果不填,默认为0。

再来就是选择是否要Report Statistic。

如图,我们的工资是根据学历和工作年限来制定的一个数值。

例如,一个一年工作经验的专科生,Education属于第一种情况,Experience也属于第一种情况,应该对应第一行第一列,工资是18。

数据的录入可以理解为下图。

下图展示了Report Statictic的情况,增加一个变量名字叫哦Wage Record,Type是Variable,这种情况下可以点选Report Statictic这个选项。报告中就会有相应的数据。

以上,是对包罗万象的Variable一个简单的理解!谢谢读者朋友们捧场!

注意事项

Arena软件中内置了许多我们最关心的模型变量,了解它们对建模很有帮助。推荐给大家一个软件自带的说明:Arena Variables Guide,非常实用。在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Rockwell Software\Arena\Online Books

本文内容整理自网络, 文中所有观点看法不代表淘大白的立场