Arena仿真中文教程
目录
第一章:Arena3.0基础知识
本节介绍Arena3.0安装到硬盘上以后如何创建Arena的工作环境。
1.1 Arena3.0的安装和调试
Arena3.0的安装同一般的软件类似,打开disk1文件夹,双击应用文件Setup.exe运行安装程序,设置好安装路径后开始安装,安装结束后点击Finish完成安装。
如果是在Windows98操作系统下安装Arena3.0需要在安装前预装Visual Basic 6.0,否则,Arena3.0不能运行。
1.2 Arena3.0的面板、菜单和工具栏
1.2.1 Arena3.0的启动
在Arena安装完成后,Arena会在桌面上自动生成快捷方式的图标,双击图标即可进入Arena界面;同时,也可以在硬盘上的Arena\目录下双击Arena.exe文件进入。
在进入Arena后点击工具栏上的新建图标,打开Arena3.0的操作桌面(Desktop),如图1-1:
图1-1
1.2.2 Desktop操作桌面简介
1.操作桌面的结构
Arena提供了十分方便的操作桌面以保证用户能够快速、简洁的建立仿真模型。
Arena的操作桌面主要由工具栏(Toolbars)、菜单栏、状态栏(Status bar)、建模界面组成。下文对这几部分的主要功能将一一介绍。
2、工具栏:工具栏集中了我们建立仿真模型所要用到的主要工具,它由Standard(标准工具栏)、(视图工具栏)等组成,下面将注意介绍:
●Standard:这个工具栏提供了新建、保存和打印等功能,如图1-2:
图1-2
●View:提供了视图功能,用户对建模区进行视图操作如图1-3:
图1-3
其中经常用到的功能有:
Zoom in:放大
Zoom out:缩小
View All:建模区全部视图,即,以建立模型的全部视图。
View Previous:当前视图的前一视图。
View Region:选择视图区域。
●Arrange:Arena3.0为了用户能够创建生动、形象的动画,提供了功能齐全的
绘图工具,Arrange工具栏(图1-4)就是为Arena的绘图提供支持的。
图1-4
它主要的功能有:
Bring to front:移到最上
Send to back:移到最下
Group:合并
Ungroup:取消合并
Vertical Flip:垂直对齐
Horizontal Flip:水平对齐
Rotate:旋转
Connect:连接
●Draw:这个工具栏(图1-5)提供了简单的绘图工具,用户可以利用这些工具在模型中绘制简单的图形。
图1-5
●Color:利用这个工具栏,用户可以向绘制的图形添加颜色(图1-6)。
图1-6
●Animate:Arena3.0提供了强大的动画工具,用户运行仿真模型时能够通过动画,观察、分析仿真系统的运行情况。Animate工具栏(图1-7)提供了在Arena3.0建模中需要的各种动画组件。
1-7
●Template:Template提供了建立仿真系统所需要的模块,后面的章节中将详细介绍。
●Run:这个工具栏的主要功能是控制仿真系统的运行,如图:1-8。
图1-8
主要的功能如下:
Go:仿真系统开始运行。
Step:分步进行仿真。在建立仿真系统时,常常会出现一些错误,而且这些错误很难被发现,利用Step功能可以分步的进行仿真,详细的观察整个仿真的过程,这样比较容易发现系统中的错误。
Fast-forward:快速仿真而不显示动画。
Pause:系统暂停。
Start over:回到仿真系统运行前的状态,准备重新进行仿真。
End:退出仿真运行模式,进入编辑模式。
●Run Interaction:这个工具栏的主要功能是在仿真系统运行前,对仿真系统进
行检查和纠错,如图1-9:
图1-9
主要的功能有:
Check:在不运行仿真系统的情况下对仿真系统进行编译,常用来验证系统,找出系统的错误。
Command:激活Command窗口,在窗口中用户可以输入命令来同运行中的仿真系统交互和监控。可以实现设置仿真中断条件,检查系统队列中实体数,输出仿真报告等功能。属于较高级的应用。
Break:设置仿真运行中断的时间和条件。
Trace:产生仿真运行中的历史文件。这些文件常用来发现和纠正仿真系统中的错误。
Watch:激活Watch窗口,用户可以通过设置实时的了解仿真系统中一些变量(variable)和表达式(Expression)的值
Report:激活Report窗口,在仿真运行时暂停时,可以通过这个口看到暂停时的系统状态。
Show Modules:选择是否显示仿真模型中的模块。
●Integration:为了能够便于用户设计各种类型的仿真系统,Arena3.0提供了VBA
(Visual Basic Application)工具,Integration工具栏提供了用户创建VBA程序所需要的工具。
图1-10
Module Data Transfer:可以激活Module Data Transfer Wizard,通过这个向导,用户可以输入或输出模块中的数据。
Visual Basic Editor:开启Visual Basic 编译器。
VBA Design Mode:切换VBA设计模式(VBA Design Mode)VBA使用模式(VBA Use Mode)
3、菜单栏
Arena的菜单栏主要由File、Edit、View、Tools、Arrange、Module、Run、Window、
Help 菜单组成,如图1-11:
图 1-11
File 、Edit 、View 、Window 、Help 这几个菜单的功能同其它软件的功能类似,这里就不再详述了,下面主要介绍其它四个菜单的功能。
Tools :Arena 的Tools 菜单主要为用户提供了一些建立仿真系统所必需的工具。常用的工具有:输入分析器(Input analyzer )、输出分析器(Output analyzer )。这两个工具在后面的第二章和第五章将详细介绍。
● Arrange :此菜单的功能同Arrange 的功能基本相同。
Module :这个菜单的功能主要是完成对模板的操作。多数功能在工具栏中已
经介绍这里只介绍如下内容:
Template Panel :它的功能是加载和卸载模板(Template )。当鼠标移到这一命
令时会弹出一个菜单,包含了Attach 和Detach 两个命令。当我们点击Attach 时会出现窗口(图1-12)。
图1-12
用户可以选择想要在工具栏中
的Template Bar 中添加的模板。
点击Detach 时,可以将Template
Bar 中所有的模板剔除。
● Run :这个菜单主要的功能是控
制仿真系统的运行,其中主要的功能
在Run Interaction 工具栏中已经介
绍,下面将简要介绍其余的功能:
Review Errors :用来检查编译后
仿真系统产生的错误。
View Results :在仿真系统运行
结束后,查看系统报告。
SIMAN :选择这一命令时会有
弹出菜单,包含两个选项:View 和Write 。
由于Arena 的仿真系统是建立在仿真语言SIMAN 的基础上,所以,用户可以
打开仿真系统的SIMAN 源代码进行编辑。当执行View 命令时,Arena 将打开SIMAN 源代码供用户查看;当执行Write
命令时,将在模型目录中产生仿真系统
的SIMAN模型和实验文件。
●Setup:当执行该命令时,将出现Setup窗口(图1-13),用户可以对系统参数
进行设定。
●Speed:这个命令会弹出三个子命令,分别是:Increase Speed—增加仿真系统
的运行速度;Decrease Speed—减慢仿真系统的运行速度;Speed Factor—设置仿真
系统的运行速度。
4、状态栏和建模界面
建模界面:
建模界面就是Arena为建立仿真系统提供的区域,如图1-14:
图1-14
Arena是一种面向对象的仿真工具,用户可以不用编写程序而直接使用Arena提供的仿真模块来建立仿真系统。方法就是将Template(模版)工具栏中的Module(模块)拖到建模界面上,根据对象系统的状况将这些模块连接起来,同时设置好参数,就可以完成对对象系统的仿真。
在建模界面中,用户可以建立仿真系统的逻辑模型和动画模型对对象系统进行仿真,图1-14就是一个加油站仿真系统的模型。
状态栏
状态栏位于Arena桌面的右下角,主要的功能是显示光标在建模界面中的坐标值。
1.3 一个简单的例子
为了让大家快速的了解Arena建立仿真模型的过程,本书将建立一个最简单的仿真系统——单队列、单服务台的排队系统。
1.3.1 模板的添加
在建立模型之前,需要在Template工具栏上添加建立模型需要的模板。建立单队列、单服务台的模型,只要Common模板就足够了,加载改模板的过程是点击Template工具栏上的Attach(或点击菜单“Module\Template Panel\Attach”),出现Attach Template Pancel窗口(图1-12)
选择Common 后点击“打开”,即完成了Common 模板的加载。加载
后Template 工具栏上的Common 模板如图1-15所示:
在建模时,主要用到的模块有:“Arrive ”、“Server ”“Depart ”、
“Simulate ”、“Animate ”。
1.3.2 单队列、单服务台仿真模型的建立
1、Arrive 模块
Arrive 模块的主要功能是按一定的概率分布产生实体(entities )实体。
在本例中,实体代表到达服务系统的顾客。
首先,点击Template 工具栏Common 模板中的Arrive
,在光
标移到建模区域时会变成十字,选择你要加在模块的位置,单击鼠标,表
完成了模块的加载。加载后的Arrive 模块的图标为,双击图标,
打开Arrive 对话框(图1-16):
对话框由三部分组成,分别是:Enter Data 、Arrival Data 、Leave Data 。
在Enter Data 区域的单选框中选择Station ,在后面的组合框中填入“In
Door ”作为Arrive 模块的名字。
在Arrival Data 区域填入如下内容:
● 在Batch Size 填入1,表示每次到达的实
体数是1;
● First Creation 文本框中填入的数值表示
第一个实体到达的时间(缺省值为0);
● 在Time Between 中的下拉菜单中我们可
以选择实体到达时间间隔的概率分布。
Arena 提供了十几种概率分布供用户选
择,在本例中,实体到达系统的时间间
隔服从参数是5指数分布,所以填入
“EXPO (5.0)”。
● Max Batches 表示在一次仿真中产生实体
的最大数量,如果不填则表示对实体数
没有限制。
● Mark Time Attribute :Arrive 在产生每个
实体时,都通过该组合框赋给实体一个
属性(属性默认命为Time of Arrival ),
这个属性将记录产生这个实体时的系统
时间。通过这个属性可以计算实体的系
统逗留时间。
● 在Leave Data 区域中的单选框内,需要
选择实体离开Arrive 模块的方式。实体离
开Arrive 模块的方式有以下两种:
Route :实体在Arrive 对应的Station (关于Station 将在下文进一步介绍)位置产生,经过一段时间,位移到后面对应的模块。
Connect:实体产生后不需要任何时间直接到达下一个模块。
Connect的本质是模块间的一种逻辑联系,可以认为实体是在下个模块产生的;而Route 除了逻辑联系外,也是一种物理联系,实体在Arrive模块产生,位移一段时间后到达下一个模块。
2、Server模块
Server模块的主要功能是对实体的延时处理,这种延时可以看成是生产加工、服务、等待。Server的核心成分是资源及其相应的队列。
按照前文的方法向建模界面中填加Server模块。双击打开Server对话框(图1-17)。
图1-17
同Arrive模块类似,Server模块也由三个功能区域组成,分别是:Enter Data、Server Data、Leave Data。
在Enter Data区域内,需要填入Server模块的名称Machine。
Server Data是Server模块中最重要的部分,本例需要进行如下设置:
Resource:在这个组合框中填入资源的名称Machine_R。
Capacity Type:它的主要功能是选择实体占用Resource的方式,下拉菜单种有两种Arena 默认的占用子方式:Capacity和Schedule。前者表示占用资源的实体的数量不变;后者按一定的计划改变占用资源的实体数量。(下文中将详细介绍Schedule的资源占用方式)本例中选择Capacity的占用方式。
在选择Capacity后,下发会出现Capacity文本框,表示了资源允许实体同时占用的最大数量,默认值为1,本例中使用默认值,表示一次最多只能对一个实体进行服务。
Process Time:在这个组合框中,需要填入延迟时间的概率分布。本例中,机器的服务时间服从三角分布参数为TRIA(1,4,8)。
在选择复选框Resource Statistics后,在仿真结果报告中将会输出对Server模块的统计,主要内容有:系统资源忙的个数、资源队列的平均长度、可利用资源的平均个数。
在Leave Data区域中,需要对实体离开Server模块的方式进行选择,同Arrive模块类似,仍旧选择Connect。
3、Depart模块
Depart模块的主要功能是消除系统中的实体。这种消除实体的过程可以看作是顾客离开
服务系统或是工件完成加工出厂。
在建模界面中添加Depart 模块,双击图标打开Depart 对话框(图1-18)。
图1-18
Depart 模块也是由三个功能区域组成,分别是Enter Data 、Count 、Tally 。
在Enter Data 区域中填入Depart 模块的名称Out Door 。
Count 区域的功能是统计经过Depart 的实体个数,在本例中,可以看作是统计完成加工的产品的数量。
在Count 区域的单选框中选择Individual Counter ,表示对某一个变量计数(相对于集合而言);在下面的Counter 组合框中填入变量的名称Production ;最后的Increment 文本框中填入1,表示每当一个实体经过Depart 模块,变量Production 的值就增加1。
完成上面的操作后Arena 会在Depart 图标的上方自动生成Variable
图像工具,图标为双击该图标打开Variable 对话框(图
1-19)。
用户可以点击Area 、Border 和Font 按钮对
Variable 的图形外观进行设置。
在仿真系统运行时,Variable Dialog 会实时
的输出变量值,在此对话框中,可以输入变量的
名称,更改对图标的颜色设置等。
Tally 区域的主要功能是计算一些变量的
值。
在单选框中选择Individual Tally ,表示计算单个变量的参数(相对于集合而言);在下面的
Tally 组合框中输入变量的名称Flowtime 。
Type Statistics 单选框由三个选项:
Interval :记录在到达Depart 模块后,实体某些属性值的差,这个属性的值是先前定义并记录过值的。
例如:在本例中计算实体系统逗留时间的过程是这样的:在上文Arrive 模块的Arrival Data 区域中的Mark Time Attribute 组合框中定义了属性Time of Arrival ,Arrival 模块创建实体时将该时刻的系统时间赋给该属性记为1T ;在Depart 模块的Tally 区域中的
Type Statistics
选择Interval ,然后在下面的Attribute 组合框中的下拉菜单中选择属性Time of Attribute 。(Arena 在建模时会自动记录已经定义过的各种名称,如:属性名、变量名、模块名,当后面建模时用到这些名称时,直接可以在下拉菜单里选择,以免由于输入错误导致系统无法运行)在实体到达Depart 模块时,Depart 模块记录下此时的系统时间2T ,然后计算出系统逗留时间21T T T =-,然后将T 值赋给变量Flowtime 。
Between :记录到达Depart 的两个实体到达的时间间隔。
Expr :每到达一个实体都记录下指定表达式的值。
4、实体的连接
在这个模型中,实体在Arrive 模块产生,到达Server 模块接受服务后,在Depart 模块离开系统,在设置好模块后,需要将各个模块连接起来。
在Arena 中模块间的连接方式主要有两种:Connect 和Route ,在前文Arrive 和Server 模块已经设置了Connect 的离开方式,在本例中用Connect 连接各个模块。
点击工具栏的Connect
图标或菜单中的Module\Connect ,将三个模块连接起来,如图:
在连接好三个模块后,仿真系统的逻辑部分就完成了。
5、Animate 模块
在进行仿真时,需要对系统的一些变量进行实时的统计,通过图表来表示。下面要介绍Animate 模块,在仿真系统中建立图表对仿真系统进行统计。
在建模界面中添加Animate 模块,双击图标打开Animate 对话框(图1-20)。
Animate 主要由三个功能区域,分别是:Data
Object 、Information 、Display As 。
在第一个Animate 模块中需要显示Server 模块
中资源的队列长度,即,队列中实体的数量。
在Data Object 区域内的单选项需要用户选择显
示对象的类型。在本例中,需要显示队列长和机器
状态,所以,在第一个Animate 中选择Queue 选项。
在选择Queue 选向后,下方出现Queue Name
组合框,在组合框中填入队列的名称Machine_R_Q
(下拉菜单中由该项)。需要说明的是,在定义Server
模块时,Server 模块默认的队列名称为
Mechine_R_Q ,这里填入的队列名称必须同Server
模块中的名称保持一致。
在选择Queue 后Information 选项中会出现多选
项,本例选择Number in Queue ,表示显示队列中的实体个数。
在Display As 区域中由四个复选框,每个选项对应Animate 模块对应的四种图形工具:
Variable :显示变量值。
Level :用柱体水平高度表示变量值。
Histogram :用柱状图表示变量值。
Plot :用折线图表示变量的值。
本例中选择用折线图(Plot )显示队列长度,所以选择Plot 选项。 在关闭对话框后,双击图标,打开Plot 对话框(图1-21)。
图 1-21
Time Range 文本框中需要填入折线图的时间长度(默认值为60),本文的仿真时间为15,所以填入15。
Refresh 区域的功能是根据仿真的进行实时的更新折线图区域。在本例中由于折线图的时间长度同仿真运行时间相等,所以选择None 。
在Border 区域中选择Bounding Box ,在下面的复选框中选择X-Label 。
右面的按钮Area 、Border 、Fill Area 可以选择折线图的颜色。
在设置Animate 模块后,Plot 对话框的Expression 列表框中默认表达式为NQ (Machine_R_Q )。
在列表框的旁边有Add 、Edit 、Delete 按钮,可以对列表框中的选项进行添加、编辑和删除操作。点击Edit 按钮打开Plot Expression
对话框(图1-22)
在Plot Expression 对话框中,文本框
Minimum 和Maximum 中填入队列长的范围最小
值为0,最大值为3。在右下角的单选框选择
Stepped 。
在第二个Animate 模块中需要显示资源的
忙闲状态,在本例中仍用折线图来表示,资源忙
态在折线图中用1来表示,闲态用0表示。
由于同前面的Animate 模块设置类似,这里就
不再重述了。 6、Simulate 模块。
在建立好仿真系统的逻辑模型后,需要对仿真模型的运行进行控制,在Arena3.0
中是
通过Simulate 模块对仿真系统进行控制的。
在建模界面中添加Simulate 模块,图标为。双击图标打开Simulate 对话框(图1-23)
该对话框主要有两个功能区域:Project 和
Replicate 。
在Project 区域,在Title 文本框内填入仿真系
统的名称;在Analyst 文本框中填入分析者的名称;
在最后一项Data 中填入建模的时间。
在Replicate 区域,在Number of Replicatior
文本框内输入独立重复仿真系统运行的次数,默
认值为1;在Beginning Time 文本框中输入仿真开
始的系统时间,默认值为0;在Length of
Replication 中填入仿真进行的时间,本例中的仿真
系统的仿真运行时间为15。
最后,在下面Between Replications 复选框中
选择Initialize Sys 和Initialize StatWWWi ,分别表
示在独立重复仿真之前对系统状态初始化和对系
统参数的统计初始化。
通过以上的工作,已经完成了单队列、单服
务台仿真模型的建立,经过编译如果没有错误就可
以运行了。 1.3.3 单队列、单服务台仿真模型运行
1、仿真系统的运行 点击或点击菜单中的Run\Check ,确认仿真模型
没有错误后,点击工具栏中的图标
或点击菜单中的Run\go 开始仿真运行。仿真运行结束后Arena 会自动生成
仿真输出报告。
在仿真系统运行结束后,会出现如下对话框,选择“确定”打开仿真的输出报告。如下图: ARENA Simulation Results
squall - License #9400000 Summary for Replication 1 of 1
Project: Simple Processin Run execution date : 8/12/2004
Analyst: Desdemona Rocket Model revision date: 8/12/2004
Replication ended at time : 15.0
TALLY VARIABLES
Identifier Average Half Width Minimum Maximum Observations
_______________________________________________________________________________
Machine_R_Q Queue Time .18608 (Insuf) .00000 .55824 3
Flowtime 3.7669 (Insuf) 2.9552 4.5786 2
DISCRETE-CHANGE V ARIABLES
Identifier Average Half Width Minimum Maximum Final Value _______________________________________________________________________________
Machine_R Busy .84926 (Insuf) .00000 1.0000 1.0000
# in Machine_R_Q .27271 (Insuf) .00000 2.0000 2.0000
Machine_R Available 1.0000 (Insuf) 1.0000 1.0000 1.0000
COUNTERS
Identifier Count Limit
_________________________________________
Production 2 Infinite
Simulation run time: 0.00 minutes.
Simulation run complete.
Arena的输出报告将需要输出的变量分类,前文在Depart模块中设置好了需要统计的变量,这些都在仿真系统的输出报告得到显示。
对于每个输出的变量,报告中进行了初步的统计,输出了Average、Half Width、Minimum、Maximum,分别为均值、(置信区间)半长、最小值、最大值。用户可以很方便的看到仿真的结果。
这样,便完成了对单队列、单服务台模型的仿真。通过这个例子可以看出利用Arena 可以方便的进行离散事件系统仿真。
在建模中如果出现问题请参考帮助文件和例子Mod_03_1(Arena安装目录下的Examples目录中)。
第二章:Arena3.0的输入分析工具——Input Analyzer
2.1 Arena
3.0的数据输入
在建立仿真系统时,输入数据正确与否直接影响仿真输出结果的正确性,因此,输入分析在仿真的过程中具有十分重要的作用。
在系统仿真界,专家们形成了一种共识:“Garbage in,garbage out”。当输入的数据有问题时,不可能得到正确的结论。这就要求用户能够按照合理的方法,收集到准确的数据。同时,还要考虑到收集数据带来的成本。
在收集到原始数据后,Arena提供了两种输入数据的方法:一种是通过Write等模块直接输入;另外一种是利用Input Analyzer工具对数据进行分析,得到原始数据的分布函数,根据分布函数由Arena生成数据输入系统。
本章主要介绍的内容就是如何使用Input Analyzer工具进行仿真建模前的数据输入分析。
2.2 输入分析器Input Analyzer
2.2.1 Input Analyze的面板、菜单和工具栏
Input Analyzer的主要功能是依据用户提供的原始数据,根据用户的需求拟合出这组数据的分布,并给出分布函数的表达式、参数和各种检验的结果。
在得到数据的分布后,Input Analyzer在结果中输出了很多的检验结果,用户可以根据这些检验判断数据的拟合的优良程度。
点击菜单中的Tools/Input Analyzer打开Input Analyzer点击工具栏中的新建图标,或点击菜单中的File/New新建一个输入分析文件,界面如图2-1所示:
图2-1
Input Analyzer的界面非常简洁,除了菜单、工具栏外,白色区域显示数据的拟合的直方图和曲线,下面灰色的步分将输出对拟合的分布函数的检验及相关的参数。
Input Analyzer的菜单同其它Arena的菜单类似,这里将介绍Fit和Option菜单。
Fit菜单的主要功能是对输入的数据进行拟合,Input Analyzer能够按照12种分布函数进行拟合,这些分布函数在下表中列出
表2-1
名称
Beta
Empirical
Erlang
Exponential
Gamma
Johnson
Lognormal
Normal
Possion
Triangler
uniform
Weibull
这些分布中有连续的分布(占大多数)如:Normal、Exponential分布等;离散的分布,如:Possion分布。在建立仿真系统时,连续的分布一般用来描述系统中的表示持续时间的变量,如:机器加工时间,工件运输的时间等;离散的分布用来描述发生在一定时间间隔的事件或者不同批次工件的随机数量。
Fit菜单的最后一项是Fit All,在工具栏中的图表为,功能是在目前的设置下,选择
最合适的分布函数对数据进行拟合,选择的依据是各种分布函数拟合后的检验的比较。
Options菜单的主要功能是用户对分布函数的拟合进行设置,有如下命令:
●Data Fit:点击这个命令会出现如下对话框,如图2-2:
图2-2
在复选框中主要有三个选项,分别是:
Include KS Test:是否在拟合后进行K-S检验;
Output Summary Files:是否输出结果文件;
Auto Data Translation:是否通过数据转换保证数据的非负条件,如果不选,则不能拟合成Erlang、Exponential、Weibull、Lonormal、Gamma分布。
●Parameters:点击这个命令出现如下对话框,如图2-3:
图2-3
改对话框主要由三个文本框组成:
Number of:直方图中的区间数,即直方的个数。
Low Value:直方图的下限值,低于这个值将被系统忽略。
High Value:值方图的上限值,高于这个值将被系统忽略。
Color:设置直方图的颜色。
2.2.2 利用Input Analyzer进行仿真输入分析
下面以一个简单的例子介绍Input Analyzer的使用。
1、数据的输入
Input Analyzer可以输入任何包含数据的ASCII文本文件,在文本文件中,输入数据用空格将它们分开即可。Input Analyzer默认的文件扩展名为.dst,但是.txt文件也可以打开(推荐采用这种数据文件)。
点击或菜单中的File/New新建一个Input文件,然后点击工具栏上的Use Existing
Data File图标或菜单中的File/Data File/Use Existing,打开Arena安装目录下的Examples 子目录中的partbprp.dst文件,Input Analyzer按照用户的设置绘出直方图,如图2-4所示:
图2-4
在直方图的下方,给出了对这组数据的初步统计和直方图的设置。
在初步统计中给出了输入数据的样本数(Number of Data Points)、最小值(Min Data Value)、最大值(Max Data Value)、均值(Sample Mean)和标准差(Sample Std Dev)。
同时,给出了直方图的取值区间(Histogram Range)和间隔数(Number of Intervals)。
2、拟合分布函数
如果用户需要将数据拟合成理论分布,最好的方法是点击工具栏中的图标或菜单
Fit/Fit All,Input Analyzer将选择最好的分布拟合数据。本例中拟合最好的分布是Gamma分布,如图2-5:
图2-5
Input Analyzer给出了Gamma分布的概率密度函数的曲线。在此图的下方,给出拟合报告如下:
Distribution Summary
Distribution: Gamma
Expression: 3 + GAMM(0.775, 4.29)
Square Error: 0.003873
Chi Square Test
Number of intervals = 7
Degrees of freedom = 4
Test Statistic = 4.68
Corresponding p-value = 0.337
Kolmogorov-Smirnov Test
Test Statistic = 0.0727
Corresponding p-value > 0.15
在报告中,首先给出了分布函数种类,随后给出了分布函数的表达式,下面是方差值Square Error。方差值越小,说明拟合的程度越好。
χ检验和K-S检在后面Input Analyzer给出了两种对分布函数拟合程度的检验:分别是2
验。
在2χ检验(Chi Square Test)中给出了区间数(Number of intervals)、自由度(Degrees of freedom)、Test Statistic值、和Corresponding p-value值,K-S检验类似。如果Corresponding p-value值小于0.05,则认为这种分布函数不能很好的表现这组数据的分布规律。
以上便是利用Input Analyzer进行仿真输入分析的一般过程。
第三章:利用Arena3.0建模(一)
在这一章里,将通过两个生产中实例的仿真建模来讲解利用Arena3.0建模的方法,过程和需要注意的事项;同时,也希望能够培养读者根据实际问题建模的能力,使仿真系统能够准确的反映实际系统的真实情况。
在本章和下一章将要介绍两个仿真模型的建模过程,读者可以通过这两个模型了解Arena3.0的功能;同时,也能从的建模过程中寻找Arena3.0建模的一般方法。
3.1 电子器件封装测试系统模型
在一个生产电子产品的车间里有一个封装系统,它位于整个生产线的末端,主要功能是将前面工序生产的零件A和B分别进行封装,通过检测,将不合格的产品重新加工。车间管理人员希望能够对这个装配系统进行改进,从而提高生产率。为了降低决策的风险,将要对这个系统进行仿真,通过对仿真输出数据的分析为决策提供依据。
在建模前,首先要对封装系统进行了详细的流程分析,获得系统的一些参数:
1、工件A到达系统的时间间隔服从参数为5的指数分布—EXPO(5);在进行封
装前,工件A要先进行封装准备(Part A Prep),A到达封装准备工序的时间为
2分钟,封装准备的时间服从三角分布—TRIA(1,4,8);在完成准备工序后,
工件2分钟后到达封装工序。
2、工件B成批到达系统,每批工件有4个B工件,每批B工件到达系统的时间间
隔服从参数为30的指数分布—EXPO(30);同A相同,B也要进行封装准备
工序,B到达准备工序的时间同为2分钟。在封装准备工序(Part B Prep),每
批B工件解开批次,逐个加工,准备的时间服从三角分布—TRIA(3,5,10);
在完成准备工序后,经2分钟到达装配封装工序。
3、在封装(Sealer)工序中,将完成对工件的加工、封装和检验,对于两种工件来
说,它们总的加工时间是不同的,A工件的加工时间服从三角分布—TRIA(1,
3,4),B工件的加工时间服从正态分布—N(2.4,0.5)。大约有91%的工件能
够顺利通过检验,它们将作为一级品(Shipped Parts)直接出厂,运出系统的时
间为2分钟;而其它不合格的产品将被送至下一个工序重新加工,运输时间为
2分钟。
4、在重新加工(Rework)工序中,封装工序不合格的产品将在这里得到修理、重
新装配和清洗,这些工作总的时间服从参数为45的指数分布—EXPO(45)(A
和B工件的时间分布相同)。经过重新加工后,80%的工件得到修复,作为二等
品(Savaged parts)出厂;而其它的工件作为废品(Scrapped parts)统一进行回
收。它们离开系统的时间都是2分钟。
流程如图3-1所示:
通过对封装测试系统的仿真,管理人员希望得到以下数据:
资源:资源利用率、资源平均对长。
实体:分别统计一等品、二等品和废品的系统逗留时间,平均等待时间。
仿真的运行时间定为2000分钟;而且在仿真的过程中能够看到准确反映系统实际情况的动画,并要求能够实时观测到三种产品的产量。
Scrapped
Salvaged and
Shipped
shipped
图3-1
3.2 利用Arena3.0建立仿真模型
通过前面的分析,对电子器件封装测试系统的工作流程有了清晰的了解。下面将遵循原系统的逻辑流程建立仿真模型。
3.2.1 根据系统流程建立仿真系统的逻辑框架
根据系统的流程选择模块。在这个模型中仍旧主要用Common模板中的模块构建仿真系统。
●在这个系统中,由两种实体进入系统,所以,选择两个Arrive模块加入系统,分
别负责生成A
和B。
●实体A和B在封装之前都要进行封装准备的工序,分别在对应的机器旁停留一段
时间,所以,在模型中加入两个Server模块表示对A、B进行加工的两台机器。
●实体A和B在封装工序有相同的机器对其进行封装加工,但是,在加工完毕后将
对这两种工件进行监测,合格与不合格的工件被区分开,进行不同的加工。所以,
为了完成实体的区分,这里需要用Inspect模块来仿真。
●在封装加工完成后,合格的产品将离开系统,这里需要添加一个Depart模块;不
合格的产品将被送到Rework工序中心加工,在加工结束后同样需要对工件进行检
验,所以Rework工序也要用Inspect来表示资源。
●工件离开Rework后,合格与不合格的产品都将离开系统,用两个Depart模块实现。
这样,这个仿真系统的框架已经建立完成,如图3-2所示:
图3-2
3.2.2 模型参数的设置
在完成仿真系统的逻辑框架后,需要根据系统的实际情况设置各个模块的参数,完成仿真系统的逻辑模型。
一、设置产生实体A的Arrive模块
第5章Arena建模基本操作 5.1 Arena建模概述 5.1.1Arena功能与特点 Arena是一种支持用于离散事件仿真可视化交互式仿真软件(VIS)。应用Arena,用户可以交互地建立模型,创建系统的动画,运行仿真器,收集仿真输出的数据,创建查看需要的统计报告。Arena还包括输入分析器,它是一个输入数据分析的工具。 用流程图将系统表示成实体相关活动的逻辑网络。 Arena通过完整层次化结构(hierarchical)保持了建模的灵活性。Arena支持分层建模,即一些模型元素可以代表一个下层模型;下层模型可以包含更深一层的模型。分层建模可以将复杂的模型分解成更小更容易理解的模型单元。
5.1 Arena建模概述 5.1.1Arena功能与特点 提供了13个(Arena10.0)建模模板(Template),每个模板中提供了许多用于图形仿真建模与分析的模块(Module),将这些模块组合起来就能构建出各种不同的仿真模型(Model)。 为了便于组织和显示,各模块按类型组合在一个面板(Panel)中构成模板。通过面板间的切换,可以很方便地找到所有的仿真建模构件集。不同模板的面板中的模块可以在同一个模型中混合使用。 Arena是与微软Office兼容的产品,它的工具栏和菜单栏与Office是类似的。同时Arena使用网络化多媒体动画技术(OLE 动画)和VBA视窗技术与桌面应用程序的整合。嵌入在流程导航工具Visio里的接口使得用Visio画的流程图可以自动导入Arena中。 5.1 Arena建模概述 5.1.1Arena功能与特点 Arena应用领域 ?物流领域,Arena的应用涉及从供应商到客户的整个供应链,包括供应 商管理、库存管理、制造过程、分销物流、配送中心选址规划/商务过 程以及客户服务等。 ?制造过程仿真: ①生产过程中的工艺过程计划、设备布置等; ②生产管理中的生产计划、库存管理; ③制造过程的经济性、风险性分析,辅助企业投资决策; ④各种先进制造模式如虚拟组织及敏捷供应链管理的可视化仿真等。?服务系统应用,Arena常用来进行医疗系统的医院临床设备、医生、护 士的配备方案选择和医疗改善等;交通运输中的高速公路的交通控制, 出租车的管理和路线控制,港口运输计划模型,车辆调度;公共服务的 紧急救援系统等。
1.某企业平均每隔0.5小时收到一个客户订单,客户订购的数量有10%的可能 性是1件,30%的可能性是2件,40%的可能性是3件,20%的可能性是4件。企业在收到顾客订单后,首先检查现有库存是否能满足顾客订单的需求。 如果库存数量大于或等于顾客订单订货数量,则直接向顾客交付货物。如果库存数量小于顾客订单订购数量,有25%的顾客愿意选择继续等待,而其他顾客则会选择其他企业另行购买。这些选择继续等待的顾客中,最短的在等待1小时后向企业查询是否到货,最长的在等待48小时后向企业查询是否到货,而大多数顾客会在等待24小时后向企业查询是否到货。如再次查询仍未到货,这些顾客有75%的可能选择其他企业另行购买。 该企业对该产品的库存控制设有最大和最小值。该企业的仓库管理员每隔1小时检查一次该商品的库存情况,如果该商品库存低于最低的安全库存,则向供应商发出采购订单,订购数量是当前库存水平到该商品最大库存之差。 采购订单发出后,会在96小时后收到供应商送货。该企业现有该商品库存500件,该商品向供应商采购单价为380元/件,该商品的天库存持有成本为采购单件的0.05%,每件商品的缺货成本是10元,每次订货成本是3000元。 问:对于表1所示的几种库存控制的方案,以30天为限,哪种从成本上是最优的? 表1 不同的库存控制方案 方案 1 2 3 4 5 最大值2000 1200 1000 1800 1500 最小值300 320 280 250 500
2.一个小型的配送中转系统有3个运入站和4个运出站,卡车以时间间隔UNIF (35,55)到达3个运入站中的一个,每辆卡车包含的托盘数为UNIF(15,30),假设卸载时间为0。每个托盘以相同的概率被送至其中一个运出站,站前的运输由3个叉车来完成,叉车的运送速度为每分钟60英尺。假设任意一对运入站和运出站之间的距离均为50英尺,同时假设相邻的运入站之间或相邻的运出站之间的距离为15英尺。 (1)建立以上问题的仿真模型。如果没有新的运送请求,假设叉车停留在最后卸载的地方。 (2)修改模型,使空叉车都返回到中间的运入站(运入站2)等待下一次装运。 (3)修改模型,为每个运入站分配一辆叉车,当没有运送请求时,叉车都返回到所分配的运入站区。 将托盘的系统逗留时间作为主要性能指标,比较以上三种系统的结果。要使用恰当的统计分析来支持你的结论。
Arena仿真中文教程 目录
第一章:基础知识 本节介绍安装到硬盘上以后如何创建Arena的工作环境。 的安装和调试 的安装同一般的软件类似,打开disk1文件夹,双击应用文件运行安装程序,设置好安装路径后开始安装,安装结束后点击Finish完成安装。 如果是在Windows98操作系统下安装需要在安装前预装Visual Basic ,否则,不能运行。 的面板、菜单和工具栏 1.2.1 A的启动 在Arena安装完成后,Arena会在桌面上自动生成快捷方式的图标,双击图标即可进入Arena界面;同时,也可以在硬盘上的Arena\目录下双击文件进入。 在进入Arena后点击工具栏上的新建图标,打开的操作桌面(Desktop),如图1-1:
图1-1 1.2.2 Desktop操作桌面简介 1.操作桌面的结构 Arena提供了十分方便的操作桌面以保证用户能够快速、简洁的建立仿真模型。 Arena的操作桌面主要由工具栏(Toolbars)、菜单栏、状态栏(Status bar)、建模界面组成。下文对这几部分的主要功能将一一介绍。 2、工具栏:工具栏集中了我们建立仿真模型所要用到的主要工具,它由Standard(标 准工具栏)、(视图工具栏)等组成,下面将注意介绍: Standard:这个工具栏提供了新建、保存和打印等功能,如图1-2: 图 1-2 View:提供了视图功能,用户对建模区进行视图操作如图1-3: 图 1-3 其中经常用到的功能有: Zoom in:放大 Zoom out:缩小 View All:建模区全部视图,即,以建立模型的全部视图。 View Previous:当前视图的前一视图。 View Region:选择视图区域。 Arrange:为了用户能够创建生动、形象的动画,提供了功能齐全的绘图工具,Arrange工具栏(图1-4)就是为Arena的绘图提供支持的。 图1-4 它主要的功能有:
离散时间系统仿真 第一章:Arena3.0基础知识 本节介绍Arena3.0安装到硬盘上以后如何创建Arena的工作环境。 1.1 Arena3.0的安装和调试 Arena3.0的安装同一般的软件类似,打开disk1文件夹,双击应用文件Setup.exe运行安装程序,设置好安装路径后开始安装,安装结束后点击Finish完成安装。 如果是在Windows98操作系统下安装Arena3.0需要在安装前预装Visual Basic 6.0,否则,Arena3.0不能运行。 1.2 Arena3.0的面板、菜单和工具栏 1.2.1 Arena3.0的启动 在Arena安装完成后,Arena会在桌面上自动生成快捷方式的图标,双击图标即可进入Arena界面;同时,也可以在硬盘上的Arena\目录下双击Arena.exe文件进入。 在进入Arena后点击工具栏上的新建图标,打开Arena3.0的操作桌面(Desktop),如图1-1: 图1-1
1.2.2 Desktop操作桌面简介 1.操作桌面的结构 Arena提供了十分方便的操作桌面以保证用户能够快速、简洁的建立仿真模型。 Arena的操作桌面主要由工具栏(Toolbars)、菜单栏、状态栏(Status bar)、建模界面组成。下文对这几部分的主要功能将一一介绍。 2、工具栏:工具栏集中了我们建立仿真模型所要用到的主要工具,它由Standard(标 准工具栏)、(视图工具栏)等组成,下面将注意介绍: z Standard:这个工具栏提供了新建、保存和打印等功能,如图1-2: 图 1-2 z View:提供了视图功能,用户对建模区进行视图操作如图1-3: 图 1-3 其中经常用到的功能有: Zoom in:放大 Zoom out:缩小 View All:建模区全部视图,即,以建立模型的全部视图。 View Previous:当前视图的前一视图。 View Region:选择视图区域。 z Arrange:Arena3.0为了用户能够创建生动、形象的动画,提供了功能齐全的 绘图工具,Arrange工具栏(图1-4)就是为Arena的绘图提供支持的。 图1-4 它主要的功能有: Bring to front:移到最上 Send to back:移到最下 Group:合并 Ungroup:取消合并 Vertical Flip:垂直对齐 Horizontal Flip:水平对齐