第1章 离散事件系统仿真概论
1.1 离散事件系统仿真基本概念
系统的状态通常可用一个或多个状态变量来表示。在离散系统中,状态变量仅在随机的时间点上发生瞬间的跃变,而在两个相邻的时间点之间,系统的状态保持不变。系统状态发生跃变的现象,是由于各种流动实体进入系统后,在各个环节上触发产生的随机离散事件所引起的,并且在离散事件发生的时刻上,可以启动或终止某一具体的活动,从而实现模仿真实系统行为的仿真运行。因此,流动实体、随机离散事件和活动都是离散系统仿真处理的对象,而其中最能反映系统本质属性的对象是随机离散事件。所以,离散系统仿真又称离散事件系统仿真。
1.实体
实体,是描述系统的要素之一,是系统中可单独辨识和刻画的构成要素。例如:工厂中的机器、商店中的服务员、生产线上的工件、道路上的车辆等。从仿真角度看,实际系统就是由相互间存在一定关系的实体集合组成的,实体间的相互联系和作用产生系统特定的行为。实体可分为两大类:临时实体和永久实体。
临时实体——在系统中只存在一段时间的实体。一般是按一定规律由系统外部到达系统,在系统中接受永久实体的作用,按照一定的流程通过系统,最后离开系统。临时实体存在一段时间后即自行消失,消失有时是指实体从物理意义上退出了系统的边界或自身不存在了,有时仅是逻辑意义上的取消,意味着不必再予以考虑。例如:进入商店的顾客、路口的车辆、生产线上的工件、进入防空火力网的飞机、停车场的汽车等。
永久实体——永久驻留在系统中的实体,是系统产生功能的必要条件。系统要对临时实体产生作用,就必须有永久实体的活动,也就必须有永久实体。可以说临时实体与永久实体共同完成了某项活动,永久实体作为活动的资源而被占用,如理发店中的理发员、生产线上的加工装配机械、路口的信号灯等。
属性和行为相同或相近的实体可以用“类”来描述,这样可以简化系统的组成和关系。比如,理发店服务系统可以看成是由“服务员”和“顾客”两类实体组成的,两类实体之间存在服务与被服务的关系。
2.属性
属性,是实体特征的描述,一般是系统所拥有的全部特征的一个子集,用特征参数或变量表示。选用哪些参数作为实体的属性与建模目的有关,一般按以下原则:实体分类、实体行为的描述、排队规则的确定。
3.活动
活动,是指实体在一段时间内持续进行的操作或过程。活动所占用的时间段称为忙期,忙期可以是定时的或随机的。
建模中,一般要给出忙期的计算公式或概率分布函数,保证一个实体一进入某一活动,其忙期就可以计算或从概率分布函数中抽取得到,如“服务员”对“顾客”的服务,其忙期就可以从指数分布函数抽样得到(服务时间)。很多情况下的活动是由几个实体协同完成的。
4.状态
对实体活动的特征状况划分,其表征量称为状态变量。在理发中,顾客有等待服务、接受服务等状态,服务员有忙、闲等状态。
活动总是与一个或几个实体的状态相对应。状态可作为动态属性进行描述。
5.事件
事件,是指导致系统状态产生变化的瞬间操作或行为。从某种意义上说,系统是由事件来驱动的。
事件发生的时刻称为事件点。不关心事件所代表的操作和行为意义时,事件与事件点是同义语。
若事件发生是有前提的,则称为条件事件。
活动、状态和事件三者间关系:事件的发生导致状态的变化,实体的活动可以与一定的状态相对应,因此可以用事件来标识活动的开始和结束,如图1-1所示。
6.进程
进程,是指一组按发生时间排列的事件/活动序列(见图1-1)。
图1-1 活动、状态、事件和进程
7.队列
队列,是指处于等待状态的实体序列。一般按新到的实体排在队尾的次序组成。在建模中,队列可作为一种状态或特殊实体对待。
8.仿真钟
仿真钟,是指用于表示仿真时间的变化,其推进方法与仿真策略有关。
9.统计计数器
离散事件系统的有些变化是随机的,一次仿真运行得到的状态变化过程只不过是随机过程的一次取样。如果进行另一次独立的仿真运行所得到的状态变化过程可能完全是另一种情况。一般只在统计意义下才有参考价值。因此,在仿真中需要一个统计计数部件,以便统计系统中的有关变量。例如:服务系统中的平均队长、顾客的平均等待时间、服务员的利用率等。