什么是物流仿真
物流仿真是针对物流系统进行系统建模,并在电子计算机上编制相应应用程序,模拟实际物流系统运行状况,并统计和分析模拟结果,用以指导实际物流系统的规划设计与运作管理。
仿真技术已经成为分析、研究各种复杂系统的重要工具,它广泛用于工程领域和非工程领域。仿真可定义为:在全部时间内,通过对系统的动态模型性能的观测来求解问题的技术。物流系统是企业生产的一个重要组成部分,物流合理化是提高企业生产率最重要的方法之一。因此对物流系统的设计和仿真的研究,也日益受到人们的重视。
物流系统仿真的核心技术
物流系统的仿真是典型的离散事件系统仿真,其核心是时钟推进和事件调度的机制。离散事件系统是指系统状态在某些随机时间点上发生离散变化的系统。这种引起状态变化的行为称为“事件”,因而这类系统是由事件驱动的;而且,”事件”往往发生在随机时间点上,亦称为随机事件,因而离散事件系统一般都具有随机特性;系统的状态变量往往是离散变化的。
1、仿真时钟
仿真时钟用于表示仿真时间的变化。在离散事件系统仿真中,由于系统状态变化是不连续的,在相邻两个事件发生之前,系统状态不发生变化,因而仿真钟可以跨越这些“不活动”周期。从一个事件发生时刻,推进到下一个事件发生时刻。由于仿真实质上是对系统状态在一定时间序列的动态描述。因此,仿真钟一般是仿真的主要自变量。仿真钟推进方法有三大类:事件调度法、固定增量推进法和主导时钟推进法。
应指出,仿真时钟所显示的是系统仿真所花费的时间,而不是计算机运行仿真模型的时间。因此,仿真时间与真实时间成比例关系。象物流系统这样复杂的机电系统,仿真时间可比真实时间短的多。真实系统实际运行若干天,若干月,用计算机仿真也只需要几分钟。
2、事件调度法
事件调度法是面向事件的方法,是通过定义事件,并按时间顺序处理所发生的一系列事件。记录每一事件发生时引起的系统状态的变化来完成系统的整个动态过程的仿真。由于事件都是预定的,状态变化发生在明确的预定的时刻,所以这种方法适合于活动持续时间比较确定的系统。
事件调度法中仿真钟是按下一时间步长法来推进的。通过建立事件表,将预定的事件按时间发生的先后顺序放入事件表中。仿真钟始终推进到最早发生的时间时刻。然后处理该事件发生时的系统状态的变化,进行用户所需要的统计计算。这样,仿真钟不断从一个事件发生时间推进到下一个最早发生的事件时间,指导仿真结束。
3、随机数和随机变量的产生
物流系统中工件的到达、运输车辆的到达和运输时间等一般都是随机的。对于有随机因素影响的系统进行仿真时,首先要建立随机变量模型。即确定系统的随机变量并确定这些随机变量的分布类型和参数。对于分布类型是已知的或者是可以根据经验确定的随机变量,只要确定它们的参数就可以了。
建立了随机变量模型后还必需能够在计算机中产生一系列不同分布的随机变量的抽样值来模拟系统中的各种随机现象。随机变量的抽样值产生的实际做法通常是,首先产生一个区间的、连续的、均匀分布的随机数,然后通过某种变换和运算产生其所需要的随机变量。
得到区间均匀分布的、有良好的独立性、周期长的随机数后,下面的问题是如何产生与实际系统相应的随机变量。产生随机变量的前提是根据实际系统随机变量的观测值确定随机变量的分布及其参数。
反变换法是最常用的方法,反变换法以概率积分反变换法则为基础,设随机变量X的分布函数为F(X);UI是区间均匀分布的随机数,利用反分布函数
X=F-1(μ)
就可以得到所需要的随机变量X。
物流系统三维虚拟仿真的计算机实现
三维虚拟仿真(3D Virtual Simulation)就是利用三维建模技术,构建现实世界的三维场景并通过一定的软件环境驱动整个三维场景,响应用户的输入,根据用户的不同动作做出相应的反应,并在三维环境中显示出来。三维仿真的关键技术主要有动态环境建模技术、实时三维图形生成技术、立体显示和传感器技术、应用系统开发工具、系统集成技术等。
1、仿真平台的组成
仿真平台通常构建在基于Windows系统的PC机或图形工作站上。仿真平台主要有以下4个模块组成:特征造型数据类库、三维场景管理模块和交互接口模块。
各模块功能如下:
特征造型数据类库:有各类设备的抽象类组成。设备类中封装了各类设备的造型特征,以及设备的行为。
三维场景管理模块:负责三维场景的构造、变换及显示。
交互接口模块:处理人机交互输入。
2、面向对象的仿真建模方法
计算机仿真主要包括仿真建模、程序实现、仿真结果的统计分析三大部分。建模阶段,主要根据研究目的、系统的先验知识及实验观察的数据,对系统进行分析,确定各组成要素以及表征这些要素的状态变量和参数之间的数学逻辑关系,建立被研究系统的数学逻辑模型。
在面向对象系统仿真建模时,对象是基本的运行时实体,既包括数据(属性),又包括作用于数据的操作(行为),所以一个对象把属性和行为封装成一个整体。一个类定义了一组大体上相似的对象。一个类所包含的方法和数据描述一组对象的共同行为和属性。对象之间进行通信的方式叫消息机制。不同层次类之间共享数据和操作的机制叫继承。一切事物以对象为唯一模型,对象间除了互相传送消息外,没有别的联系。
3、三维图形仿真工具OpenGL
OpenGL最初是SGI公司为其图形工作站开发的可以独立于操作系统和硬件环境的图形开发系统。目前,OpenGL已经成为高性能图形和交互式图像处理的工业标准,OpenGL已被多家大公司采用作为图形标准,并能够在多种平台上应用。
OpenGL实际是一个3D的API(Application Programming Interface),它独立于硬件设备和操作系统,以它为基础开发的应用程序可以十分方便地在各种平台间移植。从程序员的角度来看,OpenGL是一组绘图命令和函数的集合。在微机版本中,OpenGL提供了三个函数库,它们是基本库、实用库和辅助库。利用这些命令或函数能够对二维和三维几何形体进行数学描述,并控制这些形体以某种方式进行绘制。
OpenGL不仅能够绘制整个三维模型,而且可以进行三维交互、动作模拟等。具体功能主要有:模型绘制、模型观察、颜色模式的指定、光照应用、图像效果增强、位图和图像处理、纹理映射、实时动画。
4、三维仿真建模场景的构造和管理
1)运用OpenGL进行绘图并且最终在计算机屏幕上显示三维景物的基本步骤是:
建立物体模型,并对模型进行数学描述,通过用几何图元(点、线、多边形、位图)构造物体表面而实现。
在三维空间中布置物体,并且设置视点(viewpoint)以观察场景。
计算模型中物体的颜色,在应用程序中可以直接定义,也可以由光照条件或纹理间接给出。
光栅化(rasterization),把物体的数学描述和颜色信息转换成可在屏幕上显示的象素信息。
2)几何模型的变换:仿真模型所描述的现实世界中的物体都是三维的,而计算机输出设备CRT只能显示二维图像。OpenGL通过一系列的变换实现以平面的形式来表示三维的形体。
3)碰撞检测
碰撞检测是交互式场景漫游需要解决的一个重要问题。每当接收到用户漫游场景的输入,系统都要进行检测,判断根据用户的输入而得到的新的视点是否会与场景中的物体发生碰撞或进入物体内部。由于仿真场景中的设备大多以较为规则的形体叠加而成,所以根据具体设备的形状将设备简化为尽可能贴近设备的长方体包围盒或长方体包围盒的集合,并且将视点转化为一个点。这样,碰撞检测转化为判断一个点是否与长方体相交的问题。从而加快的实时响应速度,取得较好的漫游效果。
国外的三维物流仿真软件
1、AUTOSIMULATION的AUTOMOD
AUTOMOD是目前市面上比较成熟的三维物流仿真软件。主要包括了三大模块:AutoMod、AutoStat和AutoView。AutoMod 模块提供给用户一系列的物流系统模块来仿真现实世界中的物流自动化系统。主要包括输送机模块(辊道、链式),自动化存取系统(立体仓库、堆垛机),基于路径的移动设备(AGV等),起重机模块等。AutoStat模块为仿真项目提供增强的统计分析工具,由用户定义测量和实验的标准,自动在AutoMod的模型上执行统计分析。
主要特点是:基于发展策略运算法则的最优化分析,用户为得到更好的模型来定义输出审核,多CPU并行计算等。AutoView可以允许用户通过AutoMod模型定义场景和摄像机的移动,产生高质量的AVI格式的动画。用户可以缩放或者平移视图,或使摄像机跟踪一个物体的移动,如叉车或托盘的运动。AutoView可以提供动态的场景描述和灵活的显示方式。
2、3i的SIMAnimation
SIMAnimation 是美国3i公司设计开发的集成化物流仿真软件。SIMAnimation使用的是先进的基于图像的仿真语言,这种语言可以简化仿真模型的创建。由于他OOP编程方法,仿真系统可以非常简单的创建模型。许多的先进软件工具都合成为一种语言,它包括布局编辑器,完全的二维和三维的动画,曲线拟合,路线优化软件,试验编辑器和完整的用户报表编辑器。同时仿真模型还包括丰富的交互特点,允许使用者去改变参数输入,其目的是通过模拟实际生产情况及市场波动对系统造成的冲击,从而避免了在理想化状态下系统设计所无法预料的各种因素,对系统的堵塞有着形象和直观的解决方案。
SIMAnimation不同于其他的仿真系统,它可以处理系统物理元素和逻辑元素。SIMAnimation提供先进的特点去允许用户仿真复杂的运动,像动力学和速度,像机器人、车床、传输通道、特殊空间中显示,包括传输、旋转、有形物体、视角和不断运动视觉。在算法上,SIMAnimaiton在保证出库有限的情况下,按路径最短原则进行自动定位和设计路经,实现多回路运输。
SIMAnimation使用OpenGL三维建模技术,集三维实体光照、材质视点变换、漫游于一体,提供真正的三维动画和虚拟的现实世界,使仿真模型更加容易理解。同时使管理、生产、工程人员的意见交流更加容易。
SIMAnimation使用Petri网模型技术。它包含两个程序:建模部分是针对于物理和逻辑模型。在用户定义物理和逻辑模型之后,他就可以编辑成为一个可执行模型,在这个模型中仿真和动画同时运行,并且运行非常快,实现了完全交互化。而且它可以随时停止来观察统计和模型状态。
3、ShowFlow
ShowFlow仿真软件可为制造业和物流业提供建模、仿真、动画和统计分析工具。ShowFlow可以提供生产系统的生产量,确定瓶颈位置,估测提前期和报告资源利用率。ShowFlow还可以被用来支持投资决定,校验制造系统设计的合理性,通过对不同的制造策略进行仿真实验来找出最优解。
ShowFlow主要包括几大模块:建模、仿真、统计、分析、动画和文档输出。
建模:可以定义队列,缓冲器,等待区域,操作任务,运输工具,输送机,AGV,立体化仓库,自动存取设备,路径等基本元素的标准属性和特殊属性。
仿真:采用优化的仿真运算法则技术(OSAT),固定的或变化的时间仿真运行,可对离散事件进行仿真。
统计:可对多种概率分布(均匀、正态、指数、爱尔朗、经验分布等)进行统计分析,并带有随机数生成器。
分析:输入数据分析,包括数据设置分析、最合适建议等,并可导入微软的Excel的数据。输出数据分析,包括可输出队列曲线图、柱状图、饼状图等,动态图表显示,用户自定义图表格式,并可将数据输出到微软的Excel中。
动画和文档:可产生二维、三维动画,可对摄像机进行移动,缩放,旋转。可按功能性或元素排序自动生成模型文档,产生仿真事件跟踪报告,输入参数值列表等。
纵观国外三维物流仿真软件,都具有虚拟现实、动态反映物流现实状况的显著优势,应用表现形式灵活多样。但相比之下,美国3i公司的SIMAnimation具有多方面独特优势:
建模能力强,具有精确性较高的建模功能。
在仿真软件开发和终端用户实用方面,具有较高的灵活性。
参数化建模是SIMAnimation较之其他软件的独特优势,它可以通过多元非线性参数设置,建立精确度较高的三维实体。
SIMAnimation仿真运行结束后可根据统计数据生成仿真报告,仿真报告以表格、直方图、饼状图等形式表示,显示了各个物流设备的利用率、空闲率、阻塞率等数据。用户可根据仿真报告提供的数据对物流系统的优缺点进行判断,做出科学决策。