Arena仿真中文教程.doc_第1页
Arena仿真中文教程.doc_第2页
Arena仿真中文教程.doc_第3页
Arena仿真中文教程.doc_第4页
Arena仿真中文教程.doc_第5页
已阅读5页,还剩54页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

离散时间系统仿真第一章: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-11.2.2 Desktop操作桌面简介1 操作桌面的结构Arena提供了十分方便的操作桌面以保证用户能够快速、简洁的建立仿真模型。Arena的操作桌面主要由工具栏(Toolbars)、菜单栏、状态栏(Status bar)、建模界面组成。下文对这几部分的主要功能将一一介绍。2、工具栏:工具栏集中了我们建立仿真模型所要用到的主要工具,它由Standard(标准工具栏)、(视图工具栏)等组成,下面将注意介绍:l Standard:这个工具栏提供了新建、保存和打印等功能,如图1-2:图 1-2l View:提供了视图功能,用户对建模区进行视图操作如图1-3:图 1-3其中经常用到的功能有: Zoom in:放大 Zoom out:缩小 View All:建模区全部视图,即,以建立模型的全部视图。 View Previous:当前视图的前一视图。 View Region:选择视图区域。 l Arrange:Arena3.0为了用户能够创建生动、形象的动画,提供了功能齐全的绘图工具,Arrange工具栏(图1-4)就是为Arena的绘图提供支持的。图1-4它主要的功能有: Bring to front:移到最上 Send to back:移到最下 Group:合并 Ungroup:取消合并 Vertical Flip:垂直对齐 Horizontal Flip:水平对齐 Rotate:旋转 Connect:连接 l Draw:这个工具栏(图1-5)提供了简单的绘图工具,用户可以利用这些工具在模型中绘制简单的图形。图1-5l Color:利用这个工具栏,用户可以向绘制的图形添加颜色(图1-6)。图 1-6l Animate:Arena3.0提供了强大的动画工具,用户运行仿真模型时能够通过动画,观察、分析仿真系统的运行情况。Animate工具栏(图1-7)提供了在Arena3.0建模中需要的各种动画组件。1-7l Template:Template提供了建立仿真系统所需要的模块,后面的章节中将详细介绍。l Run:这个工具栏的主要功能是控制仿真系统的运行,如图:1-8。图 1-8主要的功能如下: Go:仿真系统开始运行。 Step:分步进行仿真。在建立仿真系统时,常常会出现一些错误,而且这些错误很难被发现,利用Step功能可以分步的进行仿真,详细的观察整个仿真的过程,这样比较容易发现系统中的错误。 Fast-forward:快速仿真而不显示动画。 Pause:系统暂停。 Start over:回到仿真系统运行前的状态,准备重新进行仿真。 End:退出仿真运行模式,进入编辑模式。 l Run Interaction:这个工具栏的主要功能是在仿真系统运行前,对仿真系统进行检查和纠错,如图1-9:图 1-9主要的功能有: Check:在不运行仿真系统的情况下对仿真系统进行编译,常用来验证系统,找出系统的错误。 Command:激活Command窗口,在窗口中用户可以输入命令来同运行中的仿真系统交互和监控。可以实现设置仿真中断条件,检查系统队列中实体数,输出仿真报告等功能。属于较高级的应用。 Break:设置仿真运行中断的时间和条件。 Trace:产生仿真运行中的历史文件。这些文件常用来发现和纠正仿真系统中的错误。 Watch:激活Watch窗口,用户可以通过设置实时的了解仿真系统中一些变量(variable)和表达式(Expression)的值 Report:激活Report窗口,在仿真运行时暂停时,可以通过这个口看到暂停时的系统状态。 Show Modules:选择是否显示仿真模型中的模块。l 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-11File、Edit、View、Window、Help这几个菜单的功能同其它软件的功能类似,这里就不再详述了,下面主要介绍其它四个菜单的功能。Tools:Arena的Tools菜单主要为用户提供了一些建立仿真系统所必需的工具。常用的工具有:输入分析器(Input analyzer)、输出分析器(Output analyzer)。这两个工具在后面的第二章和第五章将详细介绍。l Arrange:此菜单的功能同Arrange的功能基本相同。Module:这个菜单的功能主要是完成对模板的操作。多数功能在工具栏中已经介绍这里只介绍如下内容:Template Panel:它的功能是加载和卸载模板(Template)。当鼠标移到这一命令时会弹出一个菜单,包含了Attach和Detach两个命令。当我们点击Attach时会出现窗口(图1-12)。图1-12用户可以选择想要在工具栏中的Template Bar中添加的模板。点击Detach时,可以将Template Bar中所有的模板剔除。 l Run:这个菜单主要的功能是控制仿真系统的运行,其中主要的功能在Run Interaction工具栏中已经介绍,下面将简要介绍其余的功能:Review Errors:用来检查编译后仿真系统产生的错误。View Results:在仿真系统运行结束后,查看系统报告。图 1-13SIMAN:选择这一命令时会有弹出菜单,包含两个选项:View和Write。由于Arena的仿真系统是建立在仿真语言SIMAN的基础上,所以,用户可以打开仿真系统的SIMAN源代码进行编辑。当执行View命令时,Arena将打开SIMAN源代码供用户查看;当执行Write命令时,将在模型目录中产生仿真系统的SIMAN模型和实验文件。l Setup:当执行该命令时,将出现Setup窗口(图1-13),用户可以对系统参数进行设定。l Speed:这个命令会弹出三个子命令,分别是:Increase Speed增加仿真系统的运行速度;Decrease Speed减慢仿真系统的运行速度;Speed Factor设置仿真系统的运行速度。4、状态栏和建模界面建模界面:建模界面就是Arena为建立仿真系统提供的区域,如图1-14:图 1-14Arena是一种面向对象的仿真工具,用户可以不用编写程序而直接使用Arena提供的仿真模块来建立仿真系统。方法就是将Template(模版)工具栏中的Module(模块)拖到建模界面上,根据对象系统的状况将这些模块连接起来,同时设置好参数,就可以完成对对象系统的仿真。在建模界面中,用户可以建立仿真系统的逻辑模型和动画模型对对象系统进行仿真,图1-14就是一个加油站仿真系统的模型。状态栏状态栏位于Arena桌面的右下角,主要的功能是显示光标在建模界面中的坐标值。1.3 一个简单的例子为了让大家快速的了解Arena建立仿真模型的过程,本书将建立一个最简单的仿真系统单队列、单服务台的排队系统。1.3.1 模板的添加在建立模型之前,需要在Template工具栏上添加建立模型需要的模板。建立单队列、单服务台的模型,只要Common模板就足够了,加载改模板的过程是点击Template工具栏上的Attach(或点击菜单“ModuleTemplate PanelAttach”),出现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。图1-15在Enter Data区域的单选框中选择Station,在后面的组合框中填入“In Door”作为Arrive模块的名字。在Arrival Data区域填入如下内容:l 在Batch Size 填入1,表示每次到达的实体数是1;l First Creation文本框中填入的数值表示第一个实体到达的时间(缺省值为0);l 在Time Between中的下拉菜单中我们可以选择实体到达时间间隔的概率分布。Arena提供了十几种概率分布供用户选择,在本例中,实体到达系统的时间间隔服从参数是5指数分布,所以填入“EXPO(5.0)”。l Max Batches表示在一次仿真中产生实体的最大数量,如果不填则表示对实体数没有限制。图 1-16l Mark Time Attribute:Arrive在产生每个实体时,都通过该组合框赋给实体一个属性(属性默认命为Time of Arrival),这个属性将记录产生这个实体时的系统时间。通过这个属性可以计算实体的系统逗留时间。l 在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-18Depart模块也是由三个功能区域组成,分别是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区域的主要功能是计算一些变量的值。图 1-19在单选框中选择Individual Tally,表示计算单个变量的参数(相对于集合而言);在下面的Tally组合框中输入变量的名称Flowtime。Type Statistics单选框由三个选项:Interval:记录在到达Depart模块后,实体某些属性值的差,这个属性的值是先前定义并记录过值的。例如:在本例中计算实体系统逗留时间的过程是这样的:在上文Arrive模块的Arrival Data区域中的Mark Time Attribute组合框中定义了属性Time of Arrival,Arrival模块创建实体时将该时刻的系统时间赋给该属性记为;在Depart模块的Tally区域中的Type Statistics选择Interval,然后在下面的Attribute组合框中的下拉菜单中选择属性Time of Attribute。(Arena在建模时会自动记录已经定义过的各种名称,如:属性名、变量名、模块名,当后面建模时用到这些名称时,直接可以在下拉菜单里选择,以免由于输入错误导致系统无法运行)在实体到达Depart模块时,Depart模块记录下此时的系统时间,然后计算出系统逗留时间,然后将值赋给变量Flowtime。Between:记录到达Depart的两个实体到达的时间间隔。Expr:每到达一个实体都记录下指定表达式的值。4、实体的连接在这个模型中,实体在Arrive模块产生,到达Server模块接受服务后,在Depart模块离开系统,在设置好模块后,需要将各个模块连接起来。在Arena中模块间的连接方式主要有两种:Connect和Route,在前文Arrive和Server模块已经设置了Connect的离开方式,在本例中用Connect连接各个模块。点击工具栏的Connect图标或菜单中的ModuleConnect,将三个模块连接起来,如图:在连接好三个模块后,仿真系统的逻辑部分就完成了。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模块中的名称保持一致。图 1-20在选择Queue后Information选项中会出现多选项,本例选择Number in Queue,表示显示队列中的实体个数。在Display As区域中由四个复选框,每个选项对应Animate模块对应的四种图形工具:Variable:显示变量值。Level:用柱体水平高度表示变量值。Histogram:用柱状图表示变量值。Plot:用折线图表示变量的值。本例中选择用折线图(Plot)显示队列长度,所以选择Plot选项。在关闭对话框后,双击图标,打开Plot对话框(图1-21)。图 1-21Time 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表示。图 2-22由于同前面的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-23通过以上的工作,已经完成了单队列、单服务台仿真模型的建立,经过编译如果没有错误就可以运行了。1.3.3 单队列、单服务台仿真模型运行1、仿真系统的运行点击或点击菜单中的RunCheck,确认仿真模型没有错误后,点击工具栏中的图标或点击菜单中的Rungo开始仿真运行。仿真运行结束后Arena会自动生成仿真输出报告。在仿真系统运行结束后,会出现如下对话框,选择“确定”打开仿真的输出报告。如下图:ARENA Simulation Resultssquall - License #9400000Summary for Replication 1 of 1Project: Simple Processin Run execution date : 8/12/2004Analyst: Desdemona Rocket Model revision date: 8/12/2004Replication ended at time : 15.0TALLY VARIABLESIdentifier Average Half Width Minimum Maximum Observations_Machine_R_Q Queue Time .18608 (Insuf) .00000 .55824 3Flowtime 3.7669 (Insuf) 2.9552 4.5786 2DISCRETE-CHANGE VARIABLESIdentifier 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.0000Machine_R Available 1.0000 (Insuf) 1.0000 1.0000 1.0000COUNTERSIdentifier Count Limit_Production 2 InfiniteSimulation run time: 0.00 minutes.Simulation run complete.Arena的输出报告将需要输出的变量分类,前文在Depart模块中设置好了需要统计的变量,这些都在仿真系统的输出报告得到显示。对于每个输出的变量,报告中进行了初步的统计,输出了Average、Half Width、Minimum、Maximum,分别为均值、(置信区间)半长、最小值、最大值。用户可以很方便的看到仿真的结果。这样,便完成了对单队列、单服务台模型的仿真。通过这个例子可以看出利用Arena可以方便的进行离散事件系统仿真。在建模中如果出现问题请参考帮助文件和例子Mod_03_1(Arena安装目录下的Examples目录中)。第二章: Arena3.0的输入分析工具Input Analyzer2.1 Arena3.0的数据输入在建立仿真系统时,输入数据正确与否直接影响仿真输出结果的正确性,因此,输入分析在仿真的过程中具有十分重要的作用。在系统仿真界,专家们形成了一种共识:“Garbage in,garbage out”。当输入的数据有问题时,不可能得到正确的结论。这就要求用户能够按照合理的方法,收集到准确的数据。同时,还要考虑到收集数据带来的成本。在收集到原始数据后,Arena提供了两种输入数据的方法:一种是通过Write等模块直接输入;另外一种是利用Input Analyzer工具对数据进行分析,得到原始数据的分布函数,根据分布函数由Arena生成数据输入系统。本章主要介绍的内容就是如何使用Input Analyzer工具进行仿真建模前的数据输入分析。2.2 输入分析器Input Analyzer2.2.1 Input Analyze的面板、菜单和工具栏Input Analyzer的主要功能是依据用户提供的原始数据,根据用户的需求拟合 出这组数据的分布,并给出分布函数的表达式、参数和各种检验的结果。在得到数据的分布后,Input Analyzer在结果中输出了很多的检验结果,用户可以根据这些检验判断数据的拟合的优良程度。点击菜单中的Tools/Input Analyzer打开Input Analyzer点击工具栏中的新建图标,或点击菜单中的File/New新建一个输入分析文件,界面如图2-1所示:图 2-1Input Analyzer的界面非常简洁,除了菜单、工具栏外,白色区域显示数据的拟合的直方图和曲线,下面灰色的步分将输出对拟合的分布函数的检验及相关的参数。Input Analyzer的菜单同其它Arena的菜单类似,这里将介绍Fit和Option菜单。Fit菜单的主要功能是对输入的数据进行拟合,Input Analyzer能够按照12种分布函数进行拟合,这些分布函数在下表中列出表2-1名称BetaEmpiricalErlangExponentialGammaJohnsonLognormalNormalPossionTriangleruniformWeibull这些分布中有连续的分布(占大多数)如:Normal、Exponential分布等;离散的分布,如:Possion分布。在建立仿真系统时,连续的分布一般用来描述系统中的表示持续时间的变量,如:机器加工时间,工件运输的时间等;离散的分布用来描述发生在一定时间间隔的事件或者不同批次工件的随机数量。Fit菜单的最后一项是Fit All,在工具栏中的图表为,功能是在目前的设置下,选择最合适的分布函数对数据进行拟合,选择的依据是各种分布函数拟合后的检验的比较。Options菜单的主要功能是用户对分布函数的拟合进行设置,有如下命令:l Data Fit:点击这个命令会出现如下对话框,如图2-2:图 2-2在复选框中主要有三个选项,分别是:Include KS Test:是否在拟合后进行K-S检验;Output Summary Files:是否输出结果文件;Auto Data Translation:是否通过数据转换保证数据的非负条件,如果不选,则不能拟合成Erlang、Exponential、Weibull、Lonormal、Gamma分布。l Parameters:点击这个命令出现如下对话框,如图2-3:图 2-3改对话框主要由三个文本框组成:Number of:直方图中的区间数,即直方的个数。Low Value:直方图的下限值,低于这个值将被系统忽略。High Value:值方图的上限值,高于这个值将被系统忽略。l 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-5Input Analyzer给出了Gamma分布的概率密度函数的曲线。在此图的下方,给出拟合报告如下:Distribution SummaryDistribution: GammaExpression: 3 + GAMM(0.775, 4.29)Square Error: 0.003873Chi Square TestNumber of intervals = 7Degrees of freedom = 4Test Statistic = 4.68Corresponding p-value = 0.337 Kolmogorov-Smirnov TestTest Statistic = 0.0727Corresponding p-value 0.15在报告中,首先给出了分布函数种类,随后给出了分布函数的表达式,下面是方差值Square Error。方差值越小,说明拟合的程度越好。在后面Input Analyzer给出了两种对分布函数拟合程度的检验:分别是检验和K-S检验。在检验(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分钟;而且在仿真的过程中能够看到准确反映系统实际情况的动画,并要求能够实时观测到三种产品的产量。图 3-13.2 利用Arena3.0建立仿真模型通过前面的分析,对电子器件封装测试系统的工作流程有了清晰的了解。下面将遵循原系统的逻辑流程建立仿真模型。3.2.1 根据系统流程建立仿真系统的逻辑框架根据系统的流程选择模块。在这个模型中仍旧主要用Common模板中的模块构建仿真系统。l 在这个系统中,由两种实体进入系统,所以,选择两个Arrive模块加入系统,分别负责生成A和B。l 实体A和B在封装之前都要进行封装准备的工序,分别在对应的机器旁停留一段时间,所以,在模型中加入两个Server模块表示对A、B进行加工的两台机器。l 实体A和B在封装工序有相同的机器对其进行封装加工,但是,在加工完毕后将对这两种工件进行监测,合格与不合格的工件被区分开,进行不同的加工。所以,为了完成实体的区分,这里需要用Inspect模块来仿真。l 在封装加工完成后,合格的产品将离开系统,这里需要添加一个Depart模块;不合格的产品将被送到Rework工序中心加工,在加工结束后同样需要对工件进行检验,所以Rework工序也要用Inspect来表示资源。l 工件离开Rework后,合格与不合格的产品都将离开系统,用两个Depart模块实现。这样,这个仿真系统的框架已经建立完成,如图3-2所示:图3-23.2.2 模型参数的设置在完成仿真系统的逻辑框架后,需要根据系统的实际情况设置各个模块的参数,完成仿真系统的逻辑模型。一、设置产生实体A的Arrive模块对该模块的设置入图3-3所示:l 将Arrive对应的Station模块命名为Part A Arrive。l Batch Size填入1,表示工件A非成批到达。l 在Time Between中填入到达时间间隔的分布EXPO(5)。l 在本例中仍要统计每个工件的系统逗留时间,所以在Mark Time Attribute中选择Arrival Time。l 在本例中,工件在进入系统后要经过一段时间才能到达下一个工序,所以选择Route显示实体在资源间流动的过程。在选择Route选项后,会出现Station组合框,在这个组合框中需要填入实体在离开Arrive模块后到达的下一个模块的名称,本例中如果把对工件A进行封装准备的Server模块命名为Part A Prep,那么,在Station组合框中就填入Part A Prep。在Route选项后面有三个单选项,它们的功能是:StNm:实体移动的时间是一个固定值或者服从某种概率分布。Seq:表示实体按照预先定义好的顺序和时间移动。Expr:实体移动时间由表达式给出。在Route Time组合框中填入实体移动的时间或时间的分布。在本例中,填入时间2。图 3-3l 由于选择实体采用Route的移动方式,因此,需要定义实体的移动路线。Arena3.0是利用Route工具连接模块,定义移动路线的。点击Animate工具栏中的Route图形工具,图标为,在出现的Route对话框中使用模认设置,点击OK,鼠标变成十字,将Arrive模块对应的Station工具与A封装准备工序对应的Server模块的Station工具Part A Prep(图标为)连接起来。二、设置产生实体B的Arrive模块对产生实体B的Arrive模块的设置同A类似。l 将Arrive对应的Station模块命名为Part B Arrive。l 由于工件B是每4个一批,成批的到达系统,所以在Batch Size填入4。l 在Time Between中填入到达时间间隔的分布EXPO(30)。l 在Mark Time Attribute中选择Arrival Time。l 在本例中,工件在进入系统后要经过一段时间才能到达下一个工序,所以选择Route显示实体在资源间流动的过程。l 选择Route选项,在Station中填入Part B Prep;在Route Time中填入2l 按照上文的方法,用Route工具将Station连接起来。三、设置封装准备模块在这个工序中由两个Server模块进行仿真,在第一章中已经介绍了这个模块参数的设置,这里不在详细介绍了,各项参数的设置如下:工件A:(图3-4)l Station:输入模块名称:Part A Prep。l Resource:填入资源名称Part A Prep_R。l Process Time:加工时间的概率分布TRIA(1,4,8)。图 3-4l 选择Route选项,在Station中填入对下一个工序进行仿真的模块的名称Sealer,Route Time填入工件的运输时间2。工件B:(图3-5)图 3-5l Station:输入模块名称Part B Prep。l Resource:填入资源名称Part B Prep_R。l Process Time:加工时间的概率分布TRIA(3,5,10)。l 选择Route选项,在Station中填入对下一个工序进行仿真的模块的名称Sealer,Route Time填入工件的运输时间2。l 最后用Route工具将Station连接起来。四、设置封装模块在这个模块中,需要完成对两种工件的加工和检测,双击图标,打开Inspect对话框,如图3-6:图 3-6根据实际情况需要对其进行如下设置:l 在Enter Data区域的Station组合框中输入模块的名称Sealer。l 在Server Data区域中,同Server模块类似,在Resource组合框中填入资源的名称Sealer_R。后面的Capacity Type和Capacity都使用Arena默认的值。l 在后面的Process Time组合框中,需要填入工件加工时间或加工时间的概率分布。但是在本例中,有两种工件在这个Inspect模块中加工,而且,A和B两种工件进行封装操作时的时间服从不同的概率分布,因此,不能按前文设置加工时间的方式。Arena是通过为每个实体定义加工时间的属性来解决这个问题的。在产生A实体,名为Part A Arrive的Arrive模块的Arrive对话框中点击按钮,打开Assign对话框(图3-7):图 3-7在这个对话框中,用户可以根据需要为实体定义若干个属性,每个属性都在列表框中显示。通过列表框左边的按钮,用户可以完成填加Add、编辑Edit和删除Delete操作,点击Add按钮,在出现的对话框中进行属性的添加(图3-8)。l 出现的对话框中,首先选择Attribute选项,表示为产生的实体添加属性;l 在选择Attribute选项后

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论