动态系统模拟的方法
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例1 M/M/1:到达间隔时间服从指数分布,服务时 间服从指数分布,单服务台; M/M/C:间隔时间和服务时间都服从指数分布, C个平行服务台(顾客仅一列); CI/G/1:单服务台,有一般分布的相互独立的间 隔时间和一般随机服务时间。 4. 间隔时间和服务时间的分布
5.排队系统的主要研究指标 1)队长:在系统中的顾客数(平均值记为LS); 排队长(队列长):在系统中排队等待服务 的顾客数(LQ)。
系统模拟是研究系统,特别是动态系统的 重要方法,对于: 1). 结构复杂的系统; 2). 很难用解析方法求出变量关系的系统; 3). 内部机理不明的“黑箱”系统; 4). 为验证用其他方法建立的模型及结果。 应是较好的选择。 一. 排队系统简介
动态系统是随时间变化的,含有随机因素的 系统,其中排队系统是重要而常见的动态系统。 对排队系统进行模拟,首先要清楚它的运行 机制。
1)在理发店系统中规定顾客的排队规则是FIFO; 2)任何人无优先权; 3)第一名顾客一定接受A服务员的服务。 4.模拟准备工作 1)画出模拟过程的流程图 流程图显示模拟必须遵循的路径,能帮助编 写计算机程序。 2)产生随机数进行模拟 按照需要产生一系列RND随机数 r1,r2,…,rn, 用来模拟系统的事件和活动。 注意:不能重复使用同一个随机数。
例如商店的顾客,港口的轮船,或发往电力 调度系统的一条指令。 本例中的实体?
(3) 事件:使系统状态发生变化的瞬时现象。 如例中事件: 一名新顾客的到达;A开始服务; A结束服务;B开始服务;B结束服务。… (4)活动:两个事件间的持续时间。 常数或随 例中有下述活动: 机变量 1) 顾客排队时间,即顾客到达至接受服务的持 续时间; 2) 顾客们到达的间隔时间; 3) A的服务时间和B的服务时间。
分析与问题思考:
1.模拟模型中用指数分布随机变量模拟顾客 的到达间隔时间,能否用其他随机分布? 2.为顾客的服务时间由理发方式确定为两个常 数,若服务时间是随机变量如何模拟?
Leabharlann Baidu
注:事件在时间轴上占据一个点,而活动则占 据时间轴上的一段。 排队时间 服务时间
到达间隔时间
通常是具有某种 分布的随机变量
(5) 特征(属性):给定实体的性质。 例如一条指令的长短,卡车是满载还是空载。 在模拟中实体的特征可以保持不变,也可以改变; 一个实体可能有多种特征。
例中每个顾客只有一个特征:需要服务的种类。 还可以考虑顾客的其他特征,如性别,是否有 优先权等等。 时间步长法 2. 动态系统模拟的两种方法 面向事件法 (1)时间步长法(固定时间增量法) 人们去考察某一对象系统的状态和活动变化过程 时,通常总是随时间的进程来逐步考察和分析。 基本步骤为: 1)选取对象系统的一个初始起点作为模拟时 钟的零点; 2)选定一个合适的时间步长。
队列
单列
不能中 途退出 单队— 单服务台
多列(各列间不能相互转移)
(3)服务机构 1)排队方式:
1
多服务台(串列) 1 2
…
n
1
2 … n
单队— 多 服务台 (并列)
2) 服务时间: 确定型的与随机型的 排队论讨论相继到达时间和服务时间,二者 中至少有一个是随机型的。 随机服务时间的分布中数学期望、方差等参 数都不受时间的影响。
(2)面向事件法(可变时间增量法) 采用不等时间间隔步长的,仅在人们关心的 事件发生的时间点上考察系统的状态变化,从 而加快模拟的求解过程。 基本思想:对对象系统的一系列不同性质的 事件,按照发生时间的先后顺序逐个进行考察。 时间是可变的 t 0 模拟方法:编制计算机程序时设置一面“模拟 钟”,当有一个事件发生时,才向前走一步, 模拟钟走过一步后,自动地寻找下一个最先使 系统状态发生变化的事件。
用时间步长法对理发店系统进行模拟。 模拟的假定条件: *1 任一分钟内到达一位顾客的概率p=0.5。 *2 同一分钟内不会有一个以上顾客到达。 如果观察到一分钟内有一 概率 p 可以是 位以上顾客来到,就应将时间 (0, 1)上的任 步长取得更短一些。 意实数。 *3 如果店里两名服务员都空闲,则由顾客随意 选择一位服务员。 *4 先到先服务(FIFO) 的排队规则。 *5 顾客都会耐心等待服务,而且服务员都 不能休息。
活动: 到达间隔时间(指数分布,均值为3分钟); 队列(队长无限制),
A的服务时间(剪发5分钟;洗和剪8分钟) ; B的服务时间(剪发5分钟;洗和剪8分钟) ; 事件: 顾客到达, A开始服务,A结束服务, B开始服务, B结束服务。 初始状态: 队长=0;A空闲,B空闲。
结束状态: 第十个顾客到达。 注:采用面向事件法时,应重点考虑活动, 即 两件事件之间的持续时间。 (2) 写出系统的运转规则。 对系统的排队规则或其他运转规则给出明确说明.
3) 从模拟时钟的零点开始,每推进一个时间 步长: 对系统的活动和状态按照预定的规则和目的进行 考察、 分析、 计算、 记录 结束 时刻 Δt
0 直到预定模拟结束时刻为止。 t
续例2 一个理发店内有两位服务员 A和 B,顾 客们随机到达店内,其中60%的顾客仅需剪发, 每位花5分钟时间,另外的40%顾客既要剪发又 要洗发,每位花费时间8分钟。
停止模拟过程 事先规定运行时间; 的两种方式: 设置为某个特定事件发生; 两种模拟方法的比较: 1.如果一个系统的事件出现无明显的规律,常 采用面向事件法,可以节约计算机运算时间。 2.如果对象系统中事件发生得非常频繁,而且 具有一定的规律,为获取较多的信息,可采用 时间步长法。
3.系统运行机制的描述 模拟思路必须清晰,对模拟的系统对象的运行 机制、模拟变量做到心中有数。
3.排队模型的分类 三 顾客相继到达间隔时间的分布(X); 个 主 服务时间的分布(Y) ; 要 服务台个数(Z) 。 特 用符号 X/Y/Z 表示排队模型的类别。 征 M—指数分布(Markov性); D— 确定型(Deterministic); EK—K阶爱尔朗分布(Erlang); GI—一般相互独立(General Independent)的随 机分布; G— 一般(General)随机分布。
1. 系统模拟的部分术语 (1)系统状态(变量):在任意时刻,为描述 系统需要的含有全部信息的变量集合。 例2中有三个状态变量: 1).等待服务的顾客数; 2). A是否正在服务(是或否); 3). B是否正在服务。 (2) 实体:需要明确描述的系统对象或组成部分。 实体是系统的可分离部分,或许是系统的永 久部分,如服务员、设备装置等。或许可进入和 退出系统。
通过假设进一步明确理发店系统的运行,为 模拟工作做好准备。 对理发店系统进行了部分简化,是一种理想 化的模拟。基于解决实际问题的目标,在模拟 模型中可以考虑更复杂的情形。 根据假设模拟变量处理如下 1)取时间步长Δt=1(分钟),在任一分钟内有 一名顾客到达的概率是0.5; 2)每位顾客服务时间取为两类顾客的平均服务 时间:5×0.6+8×0.4= 6.2(分)。 时间步长法自然易理解, 模拟过程 但需加快模拟速度。
1. 排队过程的一般表示
顾客 来到 顾客源 排队结构 顾客 离去 服 务 机 构
排队系统 2.排队系统的组成和特征
(1) 输入过程
对于顾客逐个到达随机性输入过程: 1) 顾客的到达是相互独立(或相互关联)的; 2) 输入过程是平稳的、对时间是齐次的;
指相继到达的时间间隔的分布和所含参 数(均值、方差等)不随时间改变。 (2) 排队规则 即时制或损失制(如,普通市内电话)。 先到先服务(FIFO) 等 后到先服务(LIFO) 待 随机服务(KS) 制 有优先权的服务
(1) 列出实体、实体特征、状态,活动: *需明确模拟的实体以及允许并行的实体个数; *对每个活动写出初始状态,活动的持续时间; *写出模拟的初始状态和结束时间(或结束状态 ) 例:理发店系统,系统的有关模拟变量、因素 如下: 顾客(特征: P(单剪)=0.6;P(洗和剪)=0.4), 实体: 服务员A,服务员B。
三种常用的 理论分布
2) 逗留时间:顾客在系统中的停留时间(WS); 等待时间:一个顾客在系统中的排队停留时间(WQ) (3)忙期(Busy Period):服务机构一次连续工作 的时间长度(反映服务员的工作强度)。
二. 动态系统模拟实例及模拟方法
结合实例介绍随机动态系统的模拟的方法 例2 一个理发店内有两位服务员 A和 B,顾客 们随机到达店内,其中60%的顾客仅需剪发, 每位花5分钟时间,另外的40%顾客既要剪发又 要洗发,每位花费时间8分钟。 理发店是一个动态随机系统,分析系统的运 行效率。