第六章 离散系统仿真2(时间步长法)
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
差新闻的随机数区间 (0.00,0.44] [0.44,0.66) [0.66,0.82) [0.82,0.94) [0.94,1.00)
计算机仿真的流程: 1)令每天的报纸订购数变化,40--100; 2)让时间从1开始变化(循环)到365; 3)产生新闻种类的随机数,确定当天的新闻类型; 4)产生需求量随机数,确定当天的报纸需求量; 5)计算当天的收入,计算累积利润, 6)比较得出最优定货量。
需求量
好新闻的需求概 率
0.03 0.05 0.15 0.20 0.35 0.15
一般新闻的需求概率
差新闻的需求概率
40 50 60 70 80 90
0.10 0.18 0.40 0.20 0.08 0.04
0.44 0.22 0.16 0.12 0.06 0.00
100
0.07
0.00
0.00
试确定下一年每天报贩应该订购的报纸数量。
西安工业大学-计算机科学与工程学院
6.3 时间步长法
• 时间步长法就是按照时间流逝的顺序,一步一步 的对系Hale Waihona Puke Baidu的活动进行仿真。在整个仿真的过程中 ,时间步长的长度固定不变。
• 它的基本思路是:在进行系统仿真的过程中,可 以把整个过程分成许多相等的时间间隔,时间步 长的长度可以根据实际问题分别取作秒,分,小时 ,天等。程序中按照这个步长前进的时钟就是仿 真的时钟。
西安工业大学-计算机科学与工程学院
4、进程。 若干个事件及若干个活动组成,它描述了 事件及活动之间的相互逻辑关系及时序关 系。
售票服务进程
排队活动 顾客到达事件 开始售票事件
售票活动 售票结束事件
西安工业大学-计算机科学与工程学院
5、仿真时钟 仿真时钟用于表示仿真时间的变化,仿 真时钟的推进呈现跳跃性,推进的速度具 有随机性。在仿真模型中时间控制部件是 必不可少的,以便按一定的规律来控制仿 真时钟的推进。 6、统计计数器 纪录每次仿真的结果。因为离散事件仿 真的仿真结果只有在统计意义下才能有参 考价值。
西安工业大学-计算机科学与工程学院
选取系统的一个初始的 状态作为仿真时钟的零 点,仿真时钟每步进一 次,就对系统的所有的 实体和属性以及活动进 行一次全部的扫描考察 ,按照预定的计划和目 标进行分析,计算和记 录系统状态的变化,这 个过程一直进行到仿真 的时钟结束为止。其流 程图为:
西安工业大学-计算机科学与工程学院
西安工业大学-计算机科学与工程学院
2、事件。 引起系统状态变化的行为称为事件。它 是在某一时间点的瞬时行为,从某种意义上 来说,系统是由事件来驱动的。事件不仅 用来协调两个实体之间的同步活动,还用于 各个实体之间传递信息。 3、活动。 用于表示两个可以区分的事件之间的过 程,它标志着系统状态之间的转移是实体在 两个事件之间 保持某一个状态的持续过程。
方案编号 方案1 方案2 方案3 方案4 方案5
重新订货点P/辆 125 125 150 175 175
重新订货量Q/辆 150 250 250 250 300
这个问题的已知条件是: 1.从发出货物到收到货物需隔三天 2.每辆自行车的保管费为0.75元/天,每辆 自行车的缺货损失费为1.80元/天,每次订 货费用为75元 3.每天自行车的需求量为0~99之间的均匀 分布的随机数
订货70份报纸的模拟表
天 1 2 3 4 5 6 7 8 9 合计 新闻日 新闻日 需求随 需求 退回保 每天利 销售收入 随机数 类型 机数 量 证收入 润 94 77 49 45 43 32 49 00 16 差 一般 一般 一般 一般 好 一般 差 好 80 20 15 88 98 65 86 73 24 60 50 50 70 90 80 70 60 70 120.00 100.00 100.00 140.00 140.00 140.00 140.00 120.00 140.00 1140.00 2.00 4.00 4.00 —— —— —— —— 2.00 —— 31.00 13.00 13.00 49.00 49.00 49.00 49.00 31.00 49.00
if remain<=p(i); booknumber=q(i); arrivedate=4; orderfee=bookfee; else orderfee=0; end storage(1)=remain; cost(i)=cost(i)+remain*storagefee+orderfee; for j=2:days dh=j; if abs(dh-arrivedate)<0.01 storage(j)=storage(j-1)+booknumber; booknumber=0; arrivedate=j; else storage(j)=storage(j-1); end n=round(99*nr(j)); if storage(j)>=n sale=n; remain=storage(j)-n; shortagenumber=0;
例1
库存问题
在物资的供应过程中,由于到货与销售不可能做到 同步同量,故总要保持一定的库存储备。如果库存过多, 就会造成积压浪费以及保管费的上升 ; 如果库存过少, 就会造成缺货。如何选择库存和订货策略,就是一个需 要研究的问题。库存问题有多种类型,一般比较复杂, 下面讨论一种简单的情况。 某自行车商店的仓库管理人员采取一种简单的定 货策略,当库存量降低到P辆的时候就向厂家订货,每 次订货Q辆,如果某一天的需求量超过了库存量,商店 就有销售损失和信誉损失,但如果库存量过多,就会 导致资金积压和保管费增加。若现在已有下面的五种 库存策略,试找出一种费用最少的策略。
4.原始库存为115辆,并假设第一天没有发出订货
这个问题用解析法分析很是麻烦,但是利用 计算机按天仿真仓库货物的变动情况却很是方便。 我们以150天为例,依次对这五种情况进行仿真, 最后比较总的费用,从而可以作出决策。
输入一些常数和初始的数据后,以一天为事件 步长进行仿真。 1.检查这一天是否是预定的到货日期,如果是则库 存量加Q, 并把预定到货日期量变为0 ; 如果不是 则库存不变; 2. 仿真这一天的需求量,这可用计算机语言得到。 若库存量大于需求量,则新的库存量减去需求量; 反之,则库存量变为0, 并且在总的费用里加上缺货 损失费. 3.检查实际的库存量加上预定到货量是否小于新的 到货点P ,如果是则需要申请订货。 如此反复进行150天,得出费用的总值,其流程 图如下:
方案编号 方案 1 方案 2 方案 3 总费用 /元 38679.75 31268.25 29699.25
方案 4 26094.00
方案 5 27773.25
比较五种方案的费用,可以看出方案4最好,这时在 150天中的总的费用为26094元。 其matlab程序为: 早上到货、全天销售、晚上定货 for i=1:5 storage(1)=storage0; n=round(99*nr(1)); sale=n; remain=storage(1)-n;
需求量 40 50 60 70 80 90 100
好新闻的随机数区间 (0.00,0.03] [0.03,0.08) [0.08,0.23) [0.23,0.43) [0.43,0.78) [0.78,0.93) [0.93,1.00]
一般新闻的随机数区间 (0.00,0.10] [0.10,0.28) [0.28,0.68) [0.68,0.88) [0.880.96) [0.96,1.00)
例2
报贩的策略
报贩需要确定下一年从报社订购的每天报纸 数,报纸每捆10张,只能整捆购买。每份报纸的 购进价为1.3元,零售价为2元,晚上将没有卖掉的 报纸退回,退回价为0.2元。报贩售出一份报纸赚 0.7元 ,退回一份报纸赔1.1元。报贩每天如果购 进的报纸太少,不够卖时会少赚钱,如果购得太多 卖不完时要赔钱。报纸可以分为3种类型的新闻日 :好、一般、差,它们的概率分别为0.35,0.45和 0.2,在这些新闻日中每天对报纸的需求分布的统 计结果下图:
西安工业大学-计算机科学与工程学院
7、事件表 事件表是一个有序的记录表,每个记录包括事 件发生的时间、事件的类型等一些内容。 事件1(事件属性表) 事件2(事件属性表) 事件3(事件属性表) …… 事件n(事件属性表) ……
西安工业大学-计算机科学与工程学院
二、离散事件仿真研究 1、仿真策略与方法 事件调度法; 活动扫描法; 进程交互法 2、研究的步骤 系统建模及模型改进;确定仿真算法 ; 建立仿真模型 ;设计仿真程序,运行仿真程 序,仿真模型的检验与改进 ;仿真结果输出 处理与分析。
120.00 333.00
作业: 仿真365天,经过计算机仿真后得到最优购货量 是每天多少份?平均每天利润多少元?
else
sale=storage(j); remain=0; shortagenumber=n-storage(j); end storage(j)=remain; if remain+booknumber<=p(i); booknumber=q(i); arrivedate=dh+arrivalinterval; orderfee=bookfee; else orderfee=0; end cost(i)=cost(i)+remain*storagefee+shortagenumber*lossfee+orderfe e; end; mincost=min(cost); end cost/(days/150) mincost/(days/150)
西安工业大学-计算机科学与工程学院
• 连续系统仿真:系统变换是随时间连续变 化的。
• 离散系统仿真:系统变化的事件不随时间 连续变化,其发生变化的规律是在离散时 刻随机发生的。 • 离散事件仿真的历史、发展及现状。
西安工业大学-计算机科学与工程学院
6.2 离散事件系统与模型
一、离散事件系统的基本要素 1、实体。 临时实体:在系统中指存在一段时间的 实体,这类实体是由系统的外部到达并进 入系统的,然后通过系统,并最终离开系统。 永久实体:永久性地驻留在系统中的实 体称为永久实体。
解: 我们通过计算机仿真来解决此问题。 最优策略应该是每天的利润最大。 利润=销售收入+退回报纸的收入-报纸成本 这是一个随机现象的计算机仿真问题, 故先确定各种情况的随机数的对应关系。 新闻日和需求量对应的随机数分别如下面两个表格 所示
新闻种类 好新闻 一般新闻 差新闻 出现概率 0.35 0.45 0.20 对应的随机数区间 (0.00,0.35) [0.35,0.80) [0.80,1.00)
第六章 离散系统仿真
西安工业大学-计算机科学与工程学院
6.1 离散事件概述
• 离散事件系统:指受事件驱动,系统状态 跳跃式变化的动态系统,系统的迁移发生 在一串离散事件点上 ,时间指针往往不按 照固定的增值向前推进,而是由事件或特 定的规则推动随机递进的。
• 例如:银行服务系统、售票系统、车间加 工调度系统、电话系统等。
西安工业大学-计算机科学与工程学院
三、离散仿真建模 1、明确仿真目的; 2、正确描述系统,包括:组成成分、变 量、参数、元素关系等; 3、仿真模型的建立,构建事件表; 4、输出函数的确定,确定性能参数。
西安工业大学-计算机科学与工程学院
四、仿真程序与推进机制 1、仿真程序的构成 仿真时钟,事件表,系统状态变量,初 始化子程序,事件子程序,调度子程序, 随机数产生子程序,输出函数子程序,统 计计数器,主程序。 2、仿真程序的推进机制 时间步长法;事件步长法。 3、同时发生事件的解决方法 同类同时事件:规定排队顺序 混合同时事件:一步法;解结法。