第四章 随机随机模拟方法1

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第四章随机模拟方法第一节概述第二节随机模拟方法的特点第三节用蒙特卡罗方法求解确定性问题第四节随机模拟方法在随机服务系统中的应用第五节集装箱专用码头装卸系统的随机模拟第六节随机模拟方法在理论研究中的应用1第一节概述(一)随机(统计)模拟的定义2随机模拟即是计算机统计模拟,它实质上是计算机建模,而这里的计算机模型就是计算机方法、统计模型(如程序、流程图、算法等),它是架于计算机理论和实际问题之间的桥梁。它与统计建模的关系如下图。实际问题统计、逻辑模型计算机模拟(程序、算法)统计、计算机解实际解(二)随机模拟方法一般地,随机模拟分类如下:若按状态变量的变化性质分为连续随机模拟和离散随机模拟。而按变量是否随时间变化又可分为动态随机模拟和静态随机模拟。常用的随机模拟方法主要有以下几种:1.蒙特卡罗法2.系统模拟方法3.其它方法:包括Bootstrap(自助法)、MCMC(马氏链蒙特卡罗法)等。(三)puffon随机投针实验1777年Puffon(法)提出用投针实验求圆周率Pi的问题。间距为a的平行线,随机投掷一枚长为l(la)的针,试求此针与一平行线相交的概率P。456(四)Puffon投针的R实现7#应用R软件对buffon投针实验进行模拟pi的取值#先编写“buffon”函数,buffon-function(n,l=0.8,a=1){k-0theta-runif(n,0,pi);x-runif(n,0,1/2)for(iin1:n){if(x[i]=l/2*sin(theta[i]))k-k+1}2*l*n/(k*a)##函数最终输出的值,比如当给定参数n时,输出2*l*n/(k*a)}调用已编号的R程序buffon.R进行模拟,取n=100000,l=0.8,a=1。source(buffon.R)buffon(100000,l=0.8,a=1)##直接调用刚刚编写好的“buffon”函数,当然,l和a的取值由于在函数编写中已经给出了,因此这里不必再给出,可以直接用buffon(100000)。[1]3.142986还可以更改n的数值,与l、a的数值(见表4-1)buffon(100000,l=0.8,a=1)[1]3.119334buffon(1000000,l=0.8,a=1)[1]3.136941buffon(10000000,l=0.8,a=1)[1]3.142697另一种求pi的方法8910MC1-function(n){k-0;x-runif(n);y-runif(n)for(iin1:n){if(x[i]^2+y[i]^21)k-k+1##在n个值当中,有多少个i满足if函数}4*k/n}source(MC1.R);MC1(100000)[1]3.1426811(五)统计模拟的一般步骤第二节随机模拟方法的特点(一)方法新颖、应用面广、适用性强(二)随机模拟方法的算法简单,但计算量大(三)模拟结果具有随机性,且精度较低(四)模拟结果的收敛过程服从概率规律性12第三节用蒙特卡洛方法求解确定性问题(一)计算定积分为了简化计算,a=0,b=1。计算定积分值也就是求曲边梯形的面积S,常用方法有:(1).随机投点法1314记录实验次数N,成功次数M,用M/N作为概率p的估计值,即可得出定积分I的近似解。1516(2).平均估值法1718例:赶火车问题火车离站时刻13:0013:0513:10概率0.70.20.1一列列车从A站开往B站,某人每天赶往B站上车。他已经了解到火车从A站到B站的运行时间是服从均值为30min,标准差为2min的正态随机变量。火车大约下午13:00离开A站,此人大约13:30到达B站。火车离开A站的时刻及概率如表1所示,此人到达B站的时刻及概率如表2所示。问此人能赶上火车的概率有多大?表1:火车离开A站的时刻及概率表2:某人到达B站的时刻及概率人到站时刻13:2813:3013:3213:34概率0.30.40.20.1——问题的分析——这个问题用概率论的方法求解十分困难,它涉及此人到达时刻、火车离开站的时刻、火车运行时间几个随机变量,而且火车运行时间是服从正态分布的随机变量,没有有效的解析方法来进行概率计算。在这种情况下可以用计算机模拟的方法来解决。进行计算机统计模拟的基础是抽象现实系统的数学模型为了便于建模,对模型中使用的变量作出如下假定::火车从A站出发的时刻;:火车从A站到B站的运行时间;:某人到达B站的时刻;:随机变量服从正态分布的均值;:随机变量服从正态分布的标准差;1T2T3T2T2T此人能及时赶上火车的充分必要条件为:,所以此人能赶上火车的概率模型为:。123TTT123{}pTTT为了分析简化,假定13时为时刻t=0,则变量、的分布律为:1T3T05100.70.20.1283032340.30.40.20.11/minT()Pt3/minT()PtR软件求解的总算法:关系式成立产生随机数验证模型成立次数k=k+1否是计算估计结果k/n成立次数不变试验次数是否达到n次是否编写R程序①借助区间(0,1)分布产生的随机数,对变量、概率分布进行统计模拟;1T3T②根据变量、、概率分布及模拟程序、命令产生n个随机分布数;1T2T3T③使用随机产生的n组随机数验证模型中的关系表达式是否成立;④计算n次模拟实验中,使得关系表达式成立的次数k;⑤当时,以作为此人能赶上火车的概率p的近似估计;nkn24windows(7,2)#作图窗口大小prb=replicate(10,{#括号内程序重复100次x=sample(c(0,5,10),1,prob=c(0.7,0.2,0.1))y=sample(c(28,30,32,34),1,prob=c(0.3,0.4,0.2,0.1))plot(0:40,rep(1,41),type=n,xlab=time,ylab=,axes=FALSE)axis(1,0:40)r=rnorm(1,30,2)points(x,1,pch=15)i=0while(i=r){i=i+1segments(x,1,x+i,1)if(x+i=y)points(y,1,pch=19)Sys.sleep(0.1)}points(y,1,pch=19)title(ifelse(x+r=y,poor...missedthetrain!,Bingo!catchedthetrain!))Sys.sleep(4)x+ry})mean(prb)R程序:本节课结束你学到了什么?25

1 / 25
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功