当前位置:文档之家› 建模与仿真

建模与仿真

实验设计(论文)报告课题名称:单一生产线建模与仿真学校:系别:班级:姓名:学号:日期: 2011年 4 月 16 日摘要:针对传统数值方法难以求解复杂排队系统模型的问题,采用新一代面向对象的Simio仿真软件进行建模和仿真分析。

采用Simio 软件构建序列表和运输器的仿真模型,认识关于SOURCE,SERVER,SINK 等对象的更多建模知识,对基于部件类型的处理时间及单个发生器和多种处理类型进行设定,然后对模型进行统计分析,并对系统的方案进行思考和改进。

分析结果表明,利用Simio软件可方便地对各领域的模型及其相关问题进行建模仿真,具有较大的应用潜力。

关键词:实体序列表;运输器;处理时间;发生器目录一.序言1.1 Simio系统仿真背景1.2 系统建模与仿真现状分析1.3 本课题的研究意义二.Simio系统仿真的模型2.1 模型的选择2.2 建立模型2.2.1系统模型2.2.2建立模型的步骤三.仿真的运行与调整3.1 仿真的运行3.2 仿真的调整3.2.1 能力选择调整3.2.2 参数选择的调整四.结论分析五.建议一、序言1.1背景Simio是由一个极富行业经验的团队所创造的。

本软件的缔造者C. Dennis Pegden博士拥有30年以上的仿真经验,是公认的行业领军人物。

当前在仿真软件市场份额上领先的SLAM和Arena就是在他的领导下研发的。

团队的其他成员的背后同样也闪耀着一连串仿真行业突破性进展的光芒。

正是这样一个团队,现在聚集到一起,集中他们的全部智慧以及总计超过100年的仿真经验为你创造出了下一代的仿真工具,也许是最好的仿真工具Simio。

作为仿真工具的革命性进展,Simio完全是从零开始开发的。

它采用了继“面向事件”和“面向过程”之后的“面向对象”的建模方法,并支持这三种建模方法的无缝衔接。

Simio还同时支持离散和连续系统建模,以及基于“智能主体”(Agent-Based)的大规模应用。

这些不同的建模范式可以在同一个模型中自由地揉合。

1.2 Simio系统建模与仿真现状分析当前,仿真技术已经成为分析、研究各种复杂系统的重要工具,它广泛应用于工程领域和非工程领域。

仿真可定义为:在全部时间内,通过对系统的动态模型性能的观测来求解问题的技术。

对复杂物流系统进行仿真,起目的是通过仿真了解物料运输、存储动态过程的各种统计、动态性能。

但由于现代生产物流系统具有突出的离散性、随机性的特点,因此人们希望通过对生产物流系统的计算机辅助设计及仿真的研究,将凭经验的猜测从屋里系统设计中去除,能使物流合理化从而提高企业生产率。

计算机的辅助仿真时在系统结构得到足够的定义,并存在描述系统预期表现的计算方法的情况下,由计算机推演的分析过程。

但传统的计算机仿真技术存在许多不尽人意之处,一是复杂系统的数学模型往往涉及许多领域的专门知识,难以建立;二是对系统各种特性的统计数据,难以理解。

人类对基于图像、声音等感官信息的理解能力远远大于对数据和文字等抽象信息的理解能力。

于是随着计算机硬件技术的发展,人们希望并可以借助二维和三维虚拟仿真软件建立物流系统的系统仿真模型。

下图是Simio主要应用领域生产制造和装配布局规划卫生医疗机场军事补给商业流程战略/策略分析市场动力学呼叫中心经济资产和组合优化运输社会系统分析复杂供应链人口动力学电力系统计算机和电信网络物流系统设计人群和车辆移动应急和疏散规复杂自适应系统划生物和生态现象分析仓储系分拨中心统快速消费品服务系统国防农业系统灾害管理精益、6西格玛1.3本课题的研究意义将一个小型制造单元,有3个工作站构成,4个部件被加工,工作站的布局是单向环形的,用Simio创建系统模型并进行仿真,通过对参数的设定,观察部件不同工作站在什么产量、加工时间、部件类型和人员数量下达到最优。

二、Simio系统仿真的模型2.1模型的选择一个制造单元对不同部件的加工的模型。

2.2 建立模型2.2.1系统模型一个小型的制造单元,由3个工作站组成,有4种部件被加工。

工作站A,B,C的布局是单向环形的,部件的加工按照这种布局流动。

如下图所示:布局:所有的部件从“Parts Arrive ”这个SOURCE 到达,在”Parts Leave ”这个SINK 处离开。

工作站之间的移动速度是每小时2英里的常数。

注意SIMIO 中实体默认速度是英里/秒。

每个工作站之间的距离(码)如下表所示:工作站路径距离(码) Parts Arrive工作站A25 工作站A 工作站B 35 工作B Parts Leave 20 Parts Leave工作站C30 工作站C Part Arrive40部件:每种部件到达如下:·部件1随即到达,时间间隔平均15分钟。

Station A Station BParts LeaveStation CParts Arrive移动方向·部件2到达间隔平均为17分钟,标准差为3分钟。

·部件3到达时间间隔是14-18分钟的任意值。

·每1小时10分钟到达,每次到达批量为5个。

每种部件(实体)类型在工作站时间的序列(路线)是不同的,实际上,并不是每个部件都经过所有的设备。

见下表给定的顺序:服务器的属性:·工作站A有一台设备,加工时间为2-8分钟,最可能时间是5分钟。

·工作站B有二台设备,每台加工时间5-11分钟,最可能时间9分钟。

·工作站C有二台设备,在每天的前4小时内运行,1台设备在每天的最后4小时运行,每个设备的加工时间2-11分钟,可能值是6分钟。

2.2.2 系统模型建立的步骤一、建立模型步骤1:首先用3个SOURCE和4个实体建立这个SIMIO模型(拖动4个MODELENTITIES到建设区),因为每个产品的到达过程都不同,必须用4个SOURCE,我们还需要三个服务器(代表每一个工作站)和1个SINK,并给每个对象取名,包括实体,以方便后面识别。

步骤2:也许模拟环状路线的最佳方法是在每个站点的入口和出口处,使用BASICNODE。

这使实体能够按照序列移动而不用进入不必要的工序。

步骤3:用连线(CONNECTORS)和路径(PATHS)把所有的对象连起来,在环形的行路和服务器对象之间是0距离的,我们用连线。

工作站之间的距离将使用5条PATH来计算,它们连接每个入口和出口节点。

如图2.1图2.1步骤4:修改每个实体的属性,现在它们以每小时2英里的理想速度(Desired Speed)移动。

步骤5:修改每个SOURCE对象的属性,使它们对应正确的部件,使它们对应正确的部件,具有期望到达间隔和到达批量。

对于部件1.2.3,我们分别选择了指数分布,正态分布,和均匀分布作为到达间隔的分布函数。

开始了相应的参数。

对于部件4,我们选择了到达时间间隔为常数70分钟,Entities Pert Arrival属性为5.(以部件2为例,如图2.2)步骤6:给5条路径设定距离,使它们对应于工作站之间的距离。

你必须把Drawn To Scale属性改成“False”并定义路径的逻辑长度。

(图2.2)(图2.3)步骤7:使用Pert分布设定每台设备加工时间,通常我们更喜欢用Pert分布代替三教分布。

Pert分布和三角分布类似(最小值,最可能值,最大值),但是它的尾巴更“窄“。

二.设定能力步骤1:设定工作站A和B的能力分别为1和2,。

对于工作站C,我们需要增加计划表体现能力方面的变化。

:步骤2:在“Data”标签页左手的面板上选择“Scheduals”,选择”Add Schedual”,修改工作计划表的名称为SchedualForC,Starting Date属性默认值,和仿真运行设置保持一致,我们需要把Days in Work Pattern属性为1,并在高亮选中“Work Cycle”中从12am开始的前4个小时,右键单击添加一个周期项目(Cycle Item).对话框中设定项目为“On Shift”,值为2,并点击OK,现在选中后面4个小时,添加周期项目,修改项目设为“On Shift”,值为1.(如图2.4所示)图 2.4步骤3:回到“Facility”视图,设置工作站C的Capacity Type属性为“WorkSchedual”,添加你的工作计划SchedualForC. (如图2.5)图 2.5三.增加序列步骤1:点击“Add Sequence Table”按钮,重命名为SequencePart1,代表部件1的序列。

采用同样的方法,增加其余3种实体的序列表。

如图2.6步骤2:下面增加部件1要访问的节点序列。

只需要添加部件1访问的工作节点以及最终的出口。

当实体序列设定好以后,实体永远会按照最短路径到达列表中的第一个节点。

部件1的正确序列如图2.7图2.6 图2.7步骤3:同样为另外3个实体设定序列表。

如果你的工作站采用不同的命名方式,那么序列表中显示的名字也会不同。

步骤4:回到“Facility”视图,选中Part1实体,设定IntialSequence属性为“SequencePart1”.同样,为其他实体选择相应的序列表。

步骤5:模型中7个TRANSFERNODE(SOURCE和SERVER的输出节点),将它们的Entity Destination Type属性改成“By Sequence”。

如图2.8下所示图2.8四.修饰:推车运输步骤1:删除Sink对象和前面BASICNODE之间连线,接着,在两者之间插入一个TransferNode,命名为TransferCart。

用Path连接BASICNODE和这个转移节点,将它的长度设成10码。

用Path连接TRANSFERNODE和Sink(确保路径是双向的,小车能来回移动),路径长度设为300码。

步骤2:在Facility视图中,从标准库中拖1个Vechile对象到工作区,步骤3:将转移节点的Ride On Transporter属性改成“True”,选择“True”,选择“Cart”作为运输器的名字。

如图2.9所示图2.9步骤4:设定Cart的Intial Desired Speed属性为每秒4英尺,搭载能力(Ride Capacity)设定为3,并保证Intial Node(Home)为新增加的TransferCart节点,该节点是小车的初始节点。

现在把Cart的Idle Action属性设为“Park At Home”。

如图2.10所示图2.10步骤5:点击TransferCart节点,从”Appearance”菜单下选择“Draw Quene”.选中ParkingStation.Contents,在Facility视图出现一个十字光标,在画布上从左至右画一条队列线,结束时点击鼠标。

相关主题