实验单服务台单队列排队系统仿真[共16页]_第1页
实验单服务台单队列排队系统仿真[共16页]_第2页
实验单服务台单队列排队系统仿真[共16页]_第3页
实验单服务台单队列排队系统仿真[共16页]_第4页
实验单服务台单队列排队系统仿真[共16页]_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

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

文档简介

1、 售后服务实验单服务台单队列排队系统仿真 实验 2 排队系统仿真一、 学习目的1了解仿真的特点2学习如何建构模型3熟悉 eM-Plant 基本的对象和操作4掌握排队系统的特点与仿真的实现方法二、 问题描述该银行服务窗口为每个到达的顾客服务的时间是随机的,表 2.4 是顾客服务时间纪录的统计结果表 2.4 每个顾客服务时间的概率分布服务时间(min)概率密度0.1累计概率0.1123450.850.951.00.05对于上述这样一个单服务待排队系统,仿真分析 30 天,分析该系统中顾客的到达、等待和被服务情况,以及银行工作人员的服务和空闲情况。三、 系统建

2、模3.1 仿真目标通过对银行排队系统的仿真,研究银行系统的服务水平和改善银行服务水平的方 法,为银行提高顾客满意度,优化顾客服务流程服务。3.2系统建模3.2.1 系统调研1.系统结构:银行服务大厅的布局,涉及的服务设备2.系统的工艺参数:到达-取号-等待-服务-离开3.系统的动态参数:顾客的到达时间间隔,工作人员的服务时间4.逻辑参数:排队规则,先到先服务5.系统的状态参数:排队队列是否为空,如果不为空队长是多少,服务台是否为空6.系统的输入输出变量:输入变量确定其分布和特征值,顾客的到达时间间隔的概率分布表和每个顾客被服务时间的概率分布.输出变量根据仿真目标设定.包括队列的平均队长、最大队

3、长、仿真结束时队长、总服务人员、每个顾客的平均服务时间、顾客平均排队等待服务时间、业务员利用率等。3.2.2 系统假设1取号机前无排队,取号时间为 02顾客排队符合先进先出的排队规则3一个服务台一次只能对一个顾客服务4所有顾客只有一种单一服务5仿真时间为 1 个工作日(8 小时)6等候区的长度为无限长3.2.3 系统建模系统模型:3.2.4 仿真模型 1实体:银行系统中的实体是人(主动体)2属性:到达时间间隔、接受服务的时间、接受服务类型3事件:顾客到达、开始取号、取号结束、进入队列、出队列、接受服务、服务完成、离开银行。4活动:到达、取号、排队、服务、离开5资源:取号机、排队的座椅、服务柜台

4、4 系统仿真4.1eM-plant 界面与主要控件介绍21. 实体:eM-Plant 中包括 3 类实体:entity,container,transporter。Entity,属于被动体,本身在系统中不能移动,需和主动资源配合才能移动,常用于生产线上的半成品、仓库中的货物等;container,属于被动体,本身在系统中不能移动,需要和主动资源配合才能移动。做容器使用,在 container 中可以存储 entity,如集装箱、托盘、纸箱等;transporter 属于主动体,在系统中无论主动资源还是被动资源,均可以移动。常用于带动力的实体,如车辆、AGV 小车、人等。实体在仿真系统中必不可少

5、,任何系统具有 1 个或者 1 个以上的实体。2. toolboxstoolboxs 是 在 仿 真 过 程 中 需 要 使 用 的 各 重 控 件 包 括 :materialFlow,Resources,InformationFlow,UserInterface,Tools 等 5 个面板。 本课程重点学习:materialFlow,InformationFlow,UserInterface 三个面板。下面分别介绍如下:connection,连接线,表示实体的移动(或者资源之间的关系),如顾客到达后取号,则顾客到达资源则与取号机资源。实体从顾客到达资源进入取号机资源则二者之间去有 conne

6、ction 连接。EventController,仿真钟,仿真系统钟必备资源,有且只能有一个,表示仿真过程钟的时间轴。source,drain,开始和结束资源,仿真系统钟必备资源,可以有多个,表示仿真系统的开始点和结束点。一般来说一个资源对应一个活动,对应实体在其上的一个时间段。一个活动或者一个资源有两个事件,开始事件和结束事件。但是source 和 drain 是一种特殊的资源,只有一个事件,它表示一个时间点,而不是时间段。singleProc,ParallelProc,单工作台和并行工作台资源。可以表示任意的加工活动,如顾客接收银行业务员服务活动,取号机取号活动等。如果只有一个柜台提供服务

7、,则使用 singleproc,如果有多个柜台且服务时间和服务方式相同,则使用 ParallelProc。如果有多个柜台且服务时间和服务方式不同,则使用多个singleProc。placebuffer,buffer,等候区。不同之处在于 placebuffer 进来的顺序和出来的 顺 序 没 有 关 系 , 而 buffer 则 保 证 最 先 进 来 最 先 出 去 ( FIFO ,FirstInFirstOut),凡是需要排队等候的地方剧需要用 buffer 或者 placebuffer,一般来说 buffer 更长用一些,实际的许多排队系统一般都是 FIFO 的排队规则。lines,传送

8、带资源。entity,container,transporter 均可以在其上被传送。 常用于运输皮带、链式输送机、辊子输送机等。track,道路。上述资源中唯一不带动力的资源,只有主动体才可以在其上运动,entity 和 container 则无法使用 track 资源。常用于道路、轨道。flowcontrol,流控。实体在加工过程中根据不同的情况会有不同的流向。method。前面已提及,除了 source 和 drain,其他的资源可以表示一个活动(时间段),具有开始事件和结束事件。eM-Plant 软件中有很多类和对象,可以简化构建仿真系统的过程,因此如果没有特殊的要求,一般系统会自动执

9、行。但是,根据实际问题的需要,需要编制自己的开始事件和结束事件。如本实验中,在对顾客进行服务前(开始服务事件),需要考虑顾客的服务时间是多少,系统无法自动完成,则必须使用 method 创建一个开始服务事件,插入服务台资源中,通过编程实现任意顾客的服务时间。Method 是编程工具,而编程则是对事件的编程。Variable。全局变量,在 C 语言中,存在全局变量和局部变量,eM-Plant 中与其相似,在 method 中定义的变量属于局部变量,但是,某些时候,某个变量需要在不同的 mothod 中使用,此时则用到全局变量。table。表,用于储存数据。chart,制作各种图表3.FrameF

10、rame 是仿真系统的工作界面,在 Frame 中建模并运行仿真系统。银行系统中,顾客取号后排队等着叫号,根据不同的排队号类别被分成了多个排队队列,取号后分成多个队列则有 flowcontrol 控制。在 Frame 中如图所示:顾客到达(source)后取号(singleproc)根据不同的顾客类型分类(flowcontrol),分为个人客户和企业客户,分别进入个人客户队列和企业客户 队列进行排队。在系统中有 3 个个人客户服务台(singleproc),如果任何一个个人客户服务台为空,则查找个人客户队列如果不为空,则选择最早进入的客户进 行 服 务 。 系 统 中 有 n 个 企 业 客

11、户 服 务 台 , 则 使 用 一 个 多 服 务 台 资 源(prallelproc)表示,任意一个服务台完成对顾客的服务后,顾客离开(drain),它们之间的关系用连接线表示(connection)。针对本实验的单服务台系统则可以简单表示为:4. 资源管理器资源管理器的效用是对资源进行管理;包括 MaterialFlow、Resources、InformationFlow、UseInterFace、MUs、Tools、其效用与 tools 中的效用相同。用户可以自己创建新的文件夹,创建新的 Frame 来实现仿真系统的构建。5. consoleconsole,控制台,呈现编译和调式过程中的

12、各种信息,包括出错信息、警告信息、输出信息等。4.2 完成排队仿真系统1.启动 eM-PlantProfessional开始程序TecnomatixeM-Plant7.0eM-PlantProfessional打开后如图所示:2.创建新的模型,点选菜单栏 出现下图:3.新增文件夹点选 Model,按鼠标右键,出现 object 的效用表,选择 NewFolder然后选中新建文件夹并右击出现快捷菜单,选择 Rename 进行重新名,名为 “QueueSystem”。4.创建新的 Frame,命名为“QueueFrame”选中 QueueSystem 文件夹,右击,选择 NewFrame,然后右击

13、 Frame 重命名5.创建主要控件(根据个人喜好,可将 Frame 最大化)选中 tools 工具栏中的 source 按钮,然后在 Frame 中单击创建 source 控件。用同样的方法创建 buffer、singleproc、drain、eventcontroller 等控件,同时用 connection 将其连接起来。6.创建一个实体选中 MUs 目录下的 Entity,然后按住 Ctrl,并拖到 QueueSystem 目录下,就复制过来了,右击改名为 person。7.设置各控件属性双击 source,打开其属性对话框,修改 Attributes 选项卡里面的 MU 值,单击后面

14、的按钮,打开 selectobject 对话框,选择前面新建的 person,单击 OK。双击 buffer 按钮,先设置 Attributes 选项卡中的 Capacity 属性值,将其改为-1,表示无限量,单击 Apply,然后选择 times 选项卡,将 processingtime 改为 0,单击 OK。双击 Drain,将 times 选项卡中的 processingtime 值改为 0,单击 OK。双击 Eventcontroller,选择 settings 选项卡,根据要求,设置 Data 为开始时间,End 为结束时,单击 OK。8.创建 Method 以及 Tablefile

15、在 tools 工具栏中选择 Method 按钮和 Tablefile 按钮,然后在 Frame 中创建相应的 Method 和 Tablefile,右击弹出快捷菜单,选择 Rename 进行改名,分别创 建 6 个 Method 和 3 个 Tablefile。Method:reset、init、endsim、arrivalintervaltime、customsevertime、putequeuelength;Table、customsTab、customs20Tab。9创建两个全局变量在 tools 工 具 栏 里 面 选 择 Variable 按 钮 , 创 建 两 个 全 局 变 量

16、 :SimulationTimes、QueueNumberCount,将两个全局变量中 Value 选项卡中的DataType 都改为 integer,单击 OK。10.修改 person 属性在左边根目录下双击 Person,弹出对话框,选择 CustomAttributes 选项卡。单击 new 按钮,新建一个属性变量,Name 为 arrivaltime,DataType 为 time。单击 OK,返回前面对话框,再新建两个类型为 time 的 serverTime 和 waitTime的属性变量。11.编辑表格属性设置 QueueTab 第 1 列的 DataType 为 intege

17、r,第 2 列的 datatype 为 integer,第 3 列的 DataType 为 real,第 4 列的 DataType 为 integer,第 5 列的 DataType为 integer。设置 CustomsTab 第 1 列的 DataType 为 integer,第 2 列的 DataType 为 integer,第 3 列的 DataType 为 time,第 4 列的 DataType 为 time,第 5 列的 DataType 为real。设置 customs20Tab 的第 1 列的 DataType 为 integer,第 2 列的 DataType 为time

18、,第 3 列的 DataType 为 time,第 4 列的 DataType 为 time,第 5 列的DataType 为 time。 操作:双击 queuetab 表,出现表格窗口。单击表格菜单栏中的 formatinheritformat 将其前面的勾去点。选中第一列,单击 formatformat,出现 listformat 对话框,将 DataType 改为integer,单击 OK。其他表格按同样方法设置。12.编写代码双击 Method,在里面编写相应的代码,具体见后面代码。13.控制编写完代码后需要把 method 放到相应的位置,来控制仿真的运行,双击 source,选择

19、controls 选项卡,将 Entrance 属性值设为.ArrivalIntervalTime。双击 singleproc,选择 controls 选项卡,将 Entrance 属性值设为.同样设置 drain 中 entrance 属性值为.QueueFrame.ComputeQueueLength14.代码Reset 代码:isdodeleteMovables;QueueNumberCount:=0;end;Init 代码isdo QueueNumberCount:=0;end;Endsim 代码istab:table;do;(tab);QueueTab1,SimulationTime

20、s:=SimulationTimes;QueueTab2,SimulationTimes:=tab4,1;QueueTab4,SimulationTimes:=tab9,1;QueueTab5,SimulationTimes:=tab6,1;(tab);CustomsTab1,SimulationTimes:=SimulationTimes;CustomsTab2,SimulationTimes:=tab5,1;CustomsTab3,SimulationTimes:=tab20,1;CustomsTab4,SimulationTimes:=tab15,1;CustomsTab5,Simula

21、tionTimes:=tab17,1;ifSimulationTimes0.0andrand0.125andrand0.250andrand0.375andrand0.5andrand0.625andrand0.75andrand0.875andrand0.0andrand0.1andrand0.3andrand0.6andrand0.85andrand0.95andrand=1.0then:=60*6;end;end;ComputeQueueLength 代码isdoQueueNumberCount:=QueueNumberCount+1;QueueTab3,SimulationTimes:=(QueueTab3,SimulationTimes*(QueueNumberCount-1)+)/QueueNumberCount;ifsimulationTimes=1andQueueNumberCount=1thenCustoms20Tab1,QueueNumberCount:=QueueNum

温馨提示

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

评论

0/150

提交评论