lecture 5-Event-based simluation系统建模与仿真.pptVIP

  • 23
  • 0
  • 约1.92千字
  • 约 18页
  • 2018-10-26 发布于江苏
  • 举报

lecture 5-Event-based simluation系统建模与仿真.ppt

lecture 5-Event-based simluation系统建模与仿真

第5章 系统仿真算法 (General principles) 系统仿真算法 目前最常用的仿真算法有事件调度法(event scheduling)、活动扫描法(activity scanning)和进程交互法(process interaction)。 事件调度法是面向事件的,它记录事件发生的过程,处理每个事件发生时系统状态变化的结果。 活动扫描是面向活动的,它记录每个活动开始与终止的时间,从而记录实体从一种状态变为另一种状态的过程。 进程交互法是面向进程的,它记录每个进程推进的过程。 事件调度法 基本部件包括:事件表、时间控制程序和事件处理子程序。 事件表是按时间顺序存放所发生的事件以及这些事件的相关属性。 时间控制程序根据事件发生的间隔推进仿真钟。 事件处理子程序处理每种事件发生时系统状态所发生的变化。 5.1 基于事件的仿真 其核心是事件表(FEL): (e1, e2, e3, ……, en)。 如对应的事件发生时间分别为t1, t2 ,……, tn 。 则有: t1 t2 …………….. tn FEL是按事件的发生先后时间来安排次序 仿真时钟Clock的推进就是从事件表中选择最先要执行的事件(即表头元素)。将CLOCK设置为该事件的发生时间。 事件调度算法/时间推进算法 STEP 1: 从FEL中移去即将来临的事件。 STEP 2: 推进仿真时钟到即将来临的事件。 STEP 3: 执行即将来临事件:修改系统状态、改变实体属性、以及设置所需成员数。 STEP 4:产生新事件并放在FEL的正确位置。 STEP 5: 修改累计统计及计数器。 基于事件的仿真具体步骤 分析模型。 画出事件执行图(即事件逻辑图)。 建立基于事件的仿真表,进行仿真。 汇总数据。 例1 单通道队列 要求:对食品店收银排队现象进行仿真,预测服务员的利用率。 假设停止时间为60min。在仿真开始0时刻时,一个顾客到达并接受服务。 系统状态: LQ---- 排队的顾客数目; LS-----被服务的顾客数目; 实体:无需显式表达。 事件: Arrival(A); Departure(D); Stopping Event(E); 事件记录: (A,t), (D, t) ,(E, 60) 活动: 服务时间 Delay: 顾客在队列中等待 Example 2 The Checkout-Counter Simulation 其它已知均同上个例子Example3.3,但仿真要求预测系统中: 1)平均响应时间(mean response time) 2) 系统中逗留5min的顾客比例。 模型扩充 与Example 5.3基本相同。但由于要估算每个顾客的逗留时间,因而实体-每个顾客需要在模型中显式表达。因而,其模型扩展为: Entities (Ci, t) :顾客Ci在时刻t到达 Event noties: (A, t, Ci ) (D, t, Ci ) Set(队列): 在系统中的顾客队列 仿真结果计算: 平均响应时间: S(总响应时间)/ ND(顾客数目) 系统中逗留》=5min的顾客比例: F(总响应时间)/ ND(顾客数目) 事件调度法程序结构 本章作业 按到达时间间隔1 5 6 3 8和服务时间3 5 4 1 5重新仿真单服务员单队列的排队问题,CLOCK到15止。仿真目的为:估算服务员的忙闲程度以及在系统中排队时间5分钟的顾客比例 * * 1 4 5 1 5 2 4 服务 时间 2 5 7 3 6 1 1 到达 间隔 时间 系统模型 Figure 3.5 到达事件的执行 Fig. 3.6 离开事件的执行 B MQ LQ(t) LS(t) 统计数据 注释 FEL 状态 CLOCK 表5.1 checkout Counter 仿真表 仿真结果计算 服务员的利用率=? S ND F LQ(t) LS(t) 统计 FEL Checkout Line 状态 CLOCK 表5.2 checkout Counter 仿真表-Example 5.4

您可能关注的文档

文档评论(0)

1亿VIP精品文档

相关文档