离散事件系统的建模仿真技术
摘要: 在现代社会,系统仿真,特别是离散事件系统仿真,已成为各种科研领域的研究热点,也是国家和国防关键技术发展计划之一。离散事件系统是一类在工程技术、经济、军事等领域常见的系统,它们的状态在一些不均匀的离散时刻发生变换且状态变换的内部机制比较复杂,往往无法用常规的数学方法来描述,而离散事件系统仿真是当前研究这一类系统的最有用处的方法之一。本文主要介绍了离散事件系统的概念、特点、要素、建模步骤,并以售票窗口服务系统为例介绍了建模的主流方法,即实体流图法和活动周期图法。
关键词:离散事件系统;仿真;建模 一、离散事件系统仿真一般概念
1、离散事件系统(Discrete Event System,DES):指系统的状态在一些离散时间点上由于某种事件的驱动而发生变化。
2、离散事件系统的特点
(1)系统中的状态只是在离散时间点上发生变化,而且这些离散时间点一般是不确定的;
(2)系统中的状态变化往往无法用数学公式表示; (3)描述方式通常为图、表等接近自然语言的方式; (4)时间是仿真中的一个关键变量; (5)离散事件系统总包含排队过程[1]。 3、离散事件系统的要素
(1)实体(Entity):组成系统的物理单元。
永久实体:在整个仿真过程中始终存在。也称被动实体。
临时实体:在系统中只存在一段时间。也称主动实体、活动实体。 (2)属性(Attributes) :是指某一实体的特性,是实体所拥有的全部特征的一个子集,用特征参数变量表示。
(3)状态(Status) :是指系统在某一时刻实体及其属性值的集合。机器的状态:{开、停};或者{忙、空闲、停止} 。
状态可作为动态属性进行描述。
(4)事件(Event) : 引起离散事件系统状态发生变化的行为。
(5)活动(Active) : 引是实体在两个事件之间保持某一状态的持续过程。 顾客到达事件与顾客开始接受服务事件之间可以称为排队活动。服务开始与服务结束之间存在顾客接受服务活动。
(6)进程(Process) : 是由与某类实体相关的事件和若干活动组成的,它描述了这些事件和活动间的相互逻辑关系和时序关系。
“顾客到达系统—排队—开始接受服务—服务结束”的过程就构成了一个进程。
事件,活动,进程三者之间的关系如图一所示
图一 事件,活动,进程三者之间的关系示意图
(7)仿真时钟 : 用于表示仿真时间的变化及作为仿真过程的时序控制,它是系统运行时间在仿真过程中的表示。
在离散事件系统仿真中有两种不同的时钟推进的方式:固定步长时间推进机制和下一事件时间推进机制。它们的主要差别在于仿真效率不同。
(8)系统环境(System Environment) : 是系统周围的实体和活动[2]。 4、离散事件系统仿真的基本步骤 (1)阐明问题,设定仿真目标。 (2)系统分析,进行仿真建模。 (3)采集系统实际的输入输出数据。 (4)编制计算机仿真程序。 (5)仿真结果统计分析。 (6)仿真模型验证和确认。 (7)仿真实验设计和仿真运行[3]。 5、离散系统实例 系统 实体 属性 活动 系统状态 事件 工业生产 机器、零件 生产能力、故障加工要求 信号长度、传输终端 库房容量 加工时间、故障时间 传输 机器忙、机器闲 加工开始、加工结束 信号开始传输、信号传输结束 需求 通信 信号、信道 信道发送忙、信道发送闲 库存水平、欠付需求 系统总车数、红绿灯 仓储 仓库、物品 道路、交叉口车辆信号机 进货 交通 车道数、车型、车速周期 运动时间、信号时间 车辆到达、绿灯开始 二、离散事件系统建模方法
主流方法:实体流图法和活动周期图法。 1、实体流图法 (1)实体流程图
借助实体流程图,可以表示事件、状态变化及实体间相互作用的逻辑关系。 常用符号:菱形框——判断;矩形框——事件、状态、活动等中间过程;圆端矩形框——开始和结束;箭头线——逻辑关系。
(2)建模的一般步骤如下:
1)明确组成系统的各个实体及其属性。
2)分析各实体的状态和活动,及其相互间的影响。 3)确定引起实体状态变化的事件。
4)分析各种事件发生时实体状态是如何变化的。
5)在一定的服务流程下,分析与队列实体有关系的特殊操作(如换队等)。 6)根据以上分析,以临时实体的流动为主线,用约定的图示符号画出被仿真系统的实体流图。
7)确定模型参数的取值、参变量的计算方法及属性描述变量的取值方法。 8)确定队列的排队规则[4]。 (3)实例分析: 售票窗口服务系统[5]
剧院雇佣一名售票员同时负责剧票的窗口销售和对电话问询者的咨询服务: 窗口服务比电话服务有更高的优先级;问询者打来电话由电话系统存储后,按先来先服务的原则一一予以答复;建模目的:研究售票员的忙闲率;此例中有两类实体同时流动,可能出现资源冲突。
分析:
实体 售票员 购票者 电话问购票者 (永久) (临时) 询者 队列 (临时) 窗口售买票(与问询(与票/电话售票员售票员服务 协同) 协同) 空闲/回电话/售票 等待/接等待/接受服务 受服务 长度 电话问询者 队列 活动 状态 长度
售票窗口服务系统的实体流图如图二所示:
图二 售票窗口服务系统实体流图
2、活动周期图法
以直观的方式显示了实体的状态变化历程和各实体之间的交互作用关系,便