随机过程模拟_第1页
随机过程模拟_第2页
随机过程模拟_第3页
随机过程模拟_第4页
随机过程模拟_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、回顾:n随机模拟n随机数的生成n随机过程模拟:n建立模型:时间步长,事件表法例子:出行天气模拟;市场服务;战争模拟二、随机型动态系统仿真1. 时间步长法n与确定型离散时间动态系统模拟方法一样,在进行系统模拟时把整个仿真的时间过程分为许多相等的时间间隔。n步长的长度根据实际问题来决定, 通过循环程序控制时间步进的过程。n只是在每一个时间步长上仿真系统动态时, 引入随机数以模拟随机因素的影响。 n例4.市场服务n超市有两个出口的收款台,n两项服务:收款、装袋。n两名职工在出口处工作。n有两种安排方案:n开一个出口,一人收款、一人装袋;n开两个出口,每个人既收款又装袋。n问商店经理应选择哪一种收款台

2、的服务方案 n目标:选择什么方案?n依据是什么?n主体:顾客和商家n顾客的满意度排队时间尽可能的短,服务时间短。n商家希望付出的人力少,得到更好的顾客满意度。n排队问题有随机因素参加随机模拟n研究开一个收款台的情况研究开一个收款台的情况n假设:假设:n 1. 1. 顾客的到达是随机的。顾客的到达是随机的。n 2. 2. 收款装袋的时间是相同的。收款装袋的时间是相同的。n 3. 3. 收款与装袋同时进行收款与装袋同时进行n时间步长法:时间步长法:n 把整个仿真过程分为许多相等的时间间隔把整个仿真过程分为许多相等的时间间隔n 每个间隔为一个时间单位每个间隔为一个时间单位时间步长。时间步长。n 在每

3、个时间步长内模拟系统的动态。在每个时间步长内模拟系统的动态。 n 仿真时钟:用以控制时间步进的过程仿真时钟:用以控制时间步进的过程n (每一次步进一个步长)(每一次步进一个步长)n参量、变量:n n(t) 到达顾客人数,L(t) 队列长, 服务时间n T1 总合排队时间, T2 总合服务时间,t 时间步长n模型:平衡关系n 当L(t)=0 且n(t)=0 时n L(t+t)=L(t); n T1(t+t)=T1(t); T2(t+t)=T2(t);n 否则n L(t+t)=L(t)+n(t)-1;n T1(t+t)=T1(t)+L(t+t) t;n T2(t+t)=T2(t)+ n取时间步长t

4、=1,收款或装袋的时间=1。n仿真30分钟内收款台处的排队情况L=zeros(1,31); % L 等待的顾客人数,等待的顾客人数,T1=zeros(1,31); %T1总合等待时间,总合等待时间,T2=zeros(1,31); %T2总合服务时间总合服务时间,L1=zeros(1,31); %L1总合到达顾客人数。总合到达顾客人数。t=1;tau=1;x=0:30;r=rand(1,30); %随机数随机数%随机模拟随机模拟顾客到来情况顾客到来情况for i=1:30; t=t+1; if 0=r(i) & r(i)0.4 n=0; elseif 0.4=r(i) & r(i)eL)L3=s

5、um(L(L2) %未被服务的顾客等待时未被服务的顾客等待时间总和间总和g1=(T1(end)-L3)/eL %平均等待时间平均等待时间g2=g1+tau %平均逗留时间平均逗留时间g3=eL/30 %平均每分钟服务的顾客人数平均每分钟服务的顾客人数na=x,r,L,L1,T1,T2 n 0 0 0 0 0 0n 1.0000 0.0153 0 0 0 0n 2.0000 0.7468 1.0000 2.0000 1.0000 1.0000n 3.0000 0.4451 1.0000 3.0000 2.0000 2.0000n 4.0000 0.9318 2.0000 5.0000 4.000

6、0 3.0000n 5.0000 0.4660 2.0000 6.0000 6.0000 4.0000n 6.0000 0.4186 2.0000 7.0000 8.0000 5.0000n 7.0000 0.8462 3.0000 9.0000 11.0000 6.0000n 8.0000 0.5252 3.0000 10.0000 14.0000 7.0000n 9.0000 0.2026 2.0000 10.0000 16.0000 8.0000n 10.0000 0.6721 2.0000 11.0000 18.0000 9.0000n 11.0000 0.8381 3.0000 13

7、.0000 21.0000 10.0000n 12.0000 0.0196 2.0000 13.0000 23.0000 11.0000n 13.0000 0.6813 2.0000 14.0000 25.0000 12.0000n 14.0000 0.3795 1.0000 14.0000 26.0000 13.0000n 15.0000 0.8318 2.0000 16.0000 28.0000 14.0000n 16.0000 0.5028 2.0000 17.0000 30.0000 15.0000n 17.0000 0.7095 3.0000 19.0000 33.0000 16.0

8、000n 18.0000 0.4289 3.0000 20.0000 36.0000 17.0000n 19.0000 0.3046 2.0000 20.0000 38.0000 18.0000n 20.0000 0.1897 1.0000 20.0000 39.0000 19.0000n 21.0000 0.1934 0 20.0000 39.0000 20.0000n 22.0000 0.6822 0 21.0000 39.0000 21.0000n 23.0000 0.3028 0 21.0000 39.0000 21.0000n 24.0000 0.5417 0 22.0000 39.

9、0000 22.0000n 25.0000 0.1509 0 22.0000 39.0000 22.0000n 26.0000 0.6979 0 23.0000 39.0000 23.0000n 27.0000 0.3784 0 23.0000 39.0000 23.0000n 28.0000 0.8600 1.0000 25.0000 40.0000 24.0000n 29.0000 0.8537 2.0000 27.0000 42.0000 25.0000n 30.0000 0.5936 2.0000 28.0000 44.0000 26.0000neL= 26 %已被服务的人数n(30分

10、钟内服务的顾客人数)nL2 = 30 31nL3 = 4 %未被服务的顾客等待时间总和ng1 = 1.5385 %(已被服务顾客)平均等待时间ng2 = 2.5862 %平均逗留时间n=平均等待时间+服务时间ng3 = 0.8667 %平均每分钟服务的顾客人数n注意:n必须经过多次模拟,求得统计意义上的顾客平均等待时间,以及平均每分钟服务人数。n问题1. 编写设两个收款台时的仿真程序,根据两个模拟结果评价两个方案n问题2. 编写设一个收款台,取时间步长t=1,收款和装袋的时间=2的仿真程序。 n2. 事件表法(面向事件法):n将整个仿真过程分解成时间点的序列,按事件发生的前后顺序逐个进行分析。

11、n每处理一个事件就前进一步,每步的时间可能不同,记录每步的时间。n每前进一步,对系统状态计算更新一次,称为仿真计算。记录状态变化。n设置状态阈值或停止时间,结束仿真过程。得到系统状态随时间变化全过程。例4. 市场服务一个收款台情况假设:1.顾客的到达收款台是随机的,平均时间间隔为0.5分钟,即间隔时间服从=2的(负)指数分布。2.对不同的顾客收款和装袋的时间服从正态分布 N(1,1/3)。参量,变量: t(i): 第i位顾客到达时间, t2(i):第i位顾客受到的服务时间(随机变量),T(i): 第i位顾客离去时间.将第i位顾客到达作为第i件事发生; t(i+1)- t(i)= t1(i) (

12、随机变量)平衡关系:当 t(i+1)T(i) 时, T(i+1)=t(i+1)+t2(i+1);否则, T(i+1)=T(i)+t2(i+1)模拟20位顾客到收款台前的排队情况。注:1.练习写随机过程仿真伪代码。2.多次模拟,得统计意义上的平均等待时间等。MatlabMatlab程序程序function y=paiduiren(n)t=zeros(1,n);%每位顾客到达时间T=zeros(1, n);%每位顾客离去时间w=zeros(1, n);%顾客等待时间累加t1=exprnd(2,1, n);%服从均值为2的指数分布的随机数 t2=normrnd(1,1/3,1, n);%服从正态分布

13、的随机数t(1)=t1(1); T(1)=t(1)+t2(1);for i=1:n-1 t(i+1)=t(i)+t1(i); if t(i+1)=T(i); T(i+1)=t(i+1)+t2(i+1); w(i+1)=w(i); else T(i+1)=T(i)+t2(i+1); w(i+1)=T(i)-t(i+1)+w(i);end;end;g1=w(end)/n; %平均等待时间g2=sum(T-t)/n; %平均逗留时间g3= n / T(end);%平均每分钟服务的顾客人数y=g1 g2 g3;问题3.进一步建模分析市场服务的问题, 10. 假设一位服务员收款又装袋所需的服务时间服从正

14、态分布 N(2,2/3),两位服务员分别收款装袋所需的服务时间服从正态分布 N(1,1/3). 20. 假设顾客到达的平均时间间隔是0.9分钟。根据两个模拟结果评价两个服务员在一个收款台和分别在两个收款台的工作方案。两个款台:由于一位服务员既要收款又要装袋,所以设一个收款台的服务时间服从正态分布 N(2,2/3)。平衡关系:当 t(i+1)max(T(i),T(i-1),即前两位顾客都已离开收款台,或t(i+1)max(min(T(i),T(i-1),max(T(1:i-2) 即前两位顾客中至少有一位已经离开,两位之前的顾客都已离开时,第i+1位顾客到达收款处时至少有一个收款台是空闲着, 所以

15、他马上接受服务 T(i+1)=t(i+1)+t2(i+1),没有增加顾客等待的总时间; n否则, 他要排队等待前两位中还逗留在收款台的那位顾客离去n或在两位前的某位因收款拖延较长时间的顾客离去,n记他跟随的那位顾客的离去时间为k,即nk=max(min(T(i),T(i-1),max(T(1:i-2),n则 T(i+1)=k+t2(i+1),n顾客等待的总时间增加 k-t(i+1)。n例 5*. 计划对敌方一个有很好的防卫的目标使用高空战略轰炸机实行空中打击。 n 每一架轰炸机如果它能够穿过空中防线且发现目标n将有0.5的可能摧毁目标。n轰炸机发现目标的概率是0.9。n目标由两个地对空导弹(S

16、AM)阵地和若干防空火炮保护。n飞机的飞行高度使得它们有效的避开了防空火炮。n每一个SAM阵地有它自己的计算机指挥设备它能够跟踪两架飞机,同时指挥两枚导弹。n情报估计一枚导弹有0.6的概率摧毁目标飞行器。n两个SAM阵地共用一个目标搜索雷达,n雷达对于5英里以上的高空轰炸机非常有效。n搜索雷达的有效范围是15英里。n轰炸机以500英里/小时的速度在5英里的高空飞行n发起攻击需要在目标的上空盘旋一分钟。n每一个SAM阵地每30秒可以发射一枚导弹,n导弹以1000英里/小时的速度飞行。n要派出多少架轰炸机才能确保摧毁这个目标。n分析:n1. 我们希望知道要多少架飞机去完成这个任务。目的是摧毁目标,

17、n我们不可能要求100%地保证成功。 n希望有99%的把握摧毁目标。n稍后我们将在这个数上做灵敏性分析。n2. 假设N架飞机被派出执行这个任务。n在它们完成攻击目标之前被空防击落的飞机的数目是随机变量。n用X表示这个随机变量。n3. 为了得到任务完成的概率S的表达式,n我们将分成两个阶段进行。n首先将得到给定在完成攻击目标的任务之前nX = i 架飞机被击落时任务完成的概率Pi。n一旦将得到X的概率分布,这时就可以算出n S=PiPrX=i n 4. 如果N架飞机被派出同时X= i 在它们到达目标之前被击落,这时就有(N - i)架攻击的飞机n如果 p 是一架攻击的飞机摧毁目标的概率,n则(1

18、 - p)为一架攻击的飞机没有摧毁目标的概率n(N i) 架攻击的飞机至少一架摧毁目标的概率是 n Pi=1-(1-p)N-i,n5. 在飞往目标的途中在攻击之前暴露于空中防线的全部时间是n同时再加上在目标上空盘旋的一分钟,一共是2.8分n在这段时间内每个SAM阵地可以发射5枚导弹。n于是,攻击的飞机将暴露于总共m10枚导弹的射程之内。n我们假设被击落的飞机的数量X将有二项分布分小时分小时英里英里8 . 160/50015其中其中q 表示导弹成功击落飞机的概率。表示导弹成功击落飞机的概率。imiimqqCiX)1 (Prn假设:n1. 每一架飞机发现目标是独立的,且以相同的概率发现目标;n2.

19、 SAM阵地不会朝着同一架飞机射击两次。n参量、变量: nN = 派出的轰炸机的数量 nm = 发射的导弹的数量 np = 一架轰炸机能够摧毁目标的概率 nq = 一枚导弹能够击落轰炸机的概率 X = 攻击之前被击落的轰炸机的数量 nPi = 给定X = i 完成任务的概率 n目标: 求最小的N使得S0.99 n模型n算法: BOMBING RUN PROBLEMn变量: N = 派出的轰炸机的数量n m = 发射的导弹的数量n p = 一架轰炸机能够摧毁目标的概率n q = 一枚导弹能够击落轰炸机的概率n S = 任务完成的最终概率n输入: N,m,p,qn过程:过程:n Begin n S

20、0n for i=0 to m don Begin n P 1-(1-p)N-1n B Binomial(m, I, q)n S S+PBn Endn Endn输出:输出: S n输入输入n m=10, p=0.90.5, q=0.6n取不同的取不同的N进行模拟,可以得到进行模拟,可以得到nN 10 11 12 13 14 15 16 17 18 19 20 nS .86 .92 .96 .978 .988 .99 .992 .998 .999n结论结论n最少需要最少需要N = 15架飞机架飞机n才能保证有才能保证有99%的可能完成任务。的可能完成任务。 n灵敏性分析灵敏性分析n坏的天气将降低发现目标的概率,它是坏的天气将降低发现目标的概率,它是p=0.90.5 的一个因子,的一个因子,n如果发现目标的概率如果发现目标的概率0.9降低到降低到0.5,n则则 p = 0.25,n对于对于S 0.99我们将需要至少我们将需要至少N = 23架飞机。架飞机。n如果发现目标的概率是如果发现目标的概率是0.3,n则需要则需要N = 35架飞机。架飞机。 n在坏的天气

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论