收藏 分享(赏)

概率实验一:随机数的生成与蒙特卡洛随机模拟方法 - 副本.ppt

上传人:gnk289057 文档编号:6837006 上传时间:2019-04-23 格式:PPT 页数:32 大小:569.50KB
下载 相关 举报
概率实验一:随机数的生成与蒙特卡洛随机模拟方法 - 副本.ppt_第1页
第1页 / 共32页
概率实验一:随机数的生成与蒙特卡洛随机模拟方法 - 副本.ppt_第2页
第2页 / 共32页
概率实验一:随机数的生成与蒙特卡洛随机模拟方法 - 副本.ppt_第3页
第3页 / 共32页
概率实验一:随机数的生成与蒙特卡洛随机模拟方法 - 副本.ppt_第4页
第4页 / 共32页
概率实验一:随机数的生成与蒙特卡洛随机模拟方法 - 副本.ppt_第5页
第5页 / 共32页
点击查看更多>>
资源描述

1、实验一 随机数的产生及蒙特卡洛随机模拟方法,实验目的,实验内容,学习随机数的产生及蒙特卡洛随机模拟方法 的基本过程与方法。,实验作业,2、蒙特卡洛随机模拟实例。,1、产生随机数的计算机命令。,数学模拟的方法,在实际问题中,面对一些带随机因素的复杂系统,用分析方法建模常常需要作许多简化假设,与面临的实际问题可能相差甚远,以致解答根本无法应用。这时,计算机模拟几乎成为唯一的选择。,在一定的假设条件下,运用数学运算模拟系统的运行,称为数学模拟。现代的数学模拟都是在计算机上进行的,称为计算机模拟。,计算机模拟可以反复进行,改变系统的结构和系数都比较容易。,一、随机数的产生,一)产生模拟随机数的计算机命

2、令,在Matlab软件中,可以直接产生满足各种分布的随机数,命令如下:,1产生m*n阶(a,b)均匀分布U(a,b)的随机数矩阵: unifrnd (a,b,m, n)产生一个a,b均匀分布的随机数: unifrnd (a,b),当只知道一个随机变量取值在(a,b)内,但不知道(也没理由假设)它在何处取值的概率大,在何处取值的概率小,就只好用U(a,b)来模拟它。,2产生mm*nn阶离散均匀分布的随机数矩阵: R = unidrnd(N) R = unidrnd(N,mm,nn),当研究对象视为大量相互独立的随机变量之和,且其中每一种变量对总和的影响都很小时,可以认为该对象服从正态分布。,若连

3、续型随机变量X的概率密度函数为其中 0为常数,则称X服从参数为 的指数分布。,指数分布的期望值为,排队服务系统中顾客到达间隔、质量与可靠性中电子元件的寿命通常服从指数分布。,例 顾客到达某商店的间隔时间服从参数为10(分钟)的指数分布(指数分布的均值为10),- 指两个顾客到达商店的平均间隔时间是10分钟.即平均10分钟到达1个顾客. 顾客到达的间隔时间可用exprnd(10)模拟。,设离散型随机变量X的所有可能取值为0,1,2,且取各个值的概率为其中 0为常数,则称X服从参数为 的泊松分布。,泊松分布在排队系统、产品检验、天文、物理等领域有广泛应用。,泊松分布的期望值为,6 产生1个参数为n

4、,p的二项分布的随机数binornd(n,p),产生mn个参数为n,p的二项分布的随机数binornd(n,p,m,n) 。,掷一枚均匀硬币,正面朝上的次数X服从参数为,p的二项分布,XB(1,p),总结:常见分布的随机数产生语句,补充:随机数的产生命令MATLAB可以直接产生满足各种分布的随机数 具体命令如下: 产生mn阶0,1上均匀分布的随机数矩阵rand(m,n) 产生一个0,1上均匀分布的随机数rand 产生mn阶a,b上均匀分布的随机数矩阵unifrnd (a,b,m, n) 产生一个a,b上均匀分布的随机数unifrnd(a,b) 产生一个1:n的随机排列(元素均出现且不重复)p=

5、randperm(n) 注意: randperm(6)与unifrnd (1,6,1, 6)的区别, 产生mn阶均值为mu方差为sigma的正态分布的随机数矩阵normrnd(mu,sigma,m,n) 产生一个均值为mu方差为sigma的正态分布的随机数 normrnd(mu,sigma) 产生mn阶期望值为mu (mu=1/)的指数分布的随机数矩阵exprnd(mu,m,n) 产生一个期望值为mu的指数分布的随机数exprnd(mu) 注意: 产生一个参数为的指数分布的随机数应输入 exprnd(1/), 产生mn阶参数为A1,A2,A3的指定分布name的随机数矩阵random(name

6、,A1,A2,A3,m,n) 产生一个参数为为A1,A2,A3的指定分布name的随机数 random(name,A1,A2,A3) 举例: 产生24阶的均值为0方差为1的正态分布的随机数矩阵 random(Normal,0,1,2,4) name的取值可以是(详情参见help random): norm or Normal / unif or Uniform poiss or Poisson / beta or Beta exp or Exponential / gam or Gamma geo or Geometric / unid or Discrete Uniform ,二、蒙特卡罗随

7、机模拟,蒙特卡洛(Monte Carlo)方法是一种应用随机数来进行计算机模拟的方法此方法对研究的系统进行随机观察抽样,通过对样本值的统计分析,求得所研究系统的某些参数,用蒙特卡洛方法进行计算机模拟的步骤:,1 设计一个逻辑框图,即模拟模型这个框图要正确反映系统各部分运行时的逻辑关系。2 模拟随机现象可通过具有各种概率分布的模拟随机数来模拟随机现象,一)频率的稳定性模拟,1.事件的频率 在一组不变的条件下,重复作n次试验,记m是n次试验中事件A发生的次数。频率 f=m/n,2.频率的稳定性,掷一枚均匀硬币,记录掷硬币试验中频率P*的波动情况。,function liti1(p,mm) pro=

8、zeros(1,mm); randnum = binornd(1,p,1,mm) a=0; for i=1:mma=a+randnum(1,i);pro(i)=a/i; end pro=pro num=1:mm; plot(num,pro),在Matlab中编辑.m文件如下:,在Matlab命令行中输入以下命令:,liti1(0.5,1000),在Matlab命令行中输入以下命令:,liti1(0.5,10000),练习掷一枚不均匀硬币,正面出现概率为0.3,记录前1000次掷硬币试验中正面频率的波动情况,并画图。,在Matlab命令行中输入以下命令:,liti1(0.3,1000),二)几何

9、概率模拟,1.定义,向任一可度量区域G内投一点,如果所投的点落在G中任意可度量区域g内的可能性与g的度量成正比,而与g的位置和形状无关,则称这个随机试验为几何型随机试验。或简称为几何概型。,2. 概率计算,P(A)=A的度量/S的度量,例5 两人约定于12点到1点到某地会面,先到者等20分钟后离去,试求两人能会面的概率?,解:设x, y分别为甲、乙到达时刻(分钟),令A=两人能会面=(x,y)|x-y|20,x60,y60,P(A)=A的面积/S的面积 =(602-402)/602=5/9=0.5556,function proguji=liti5(mm)%mm 是随机实验次数 frq=0;

10、randnum1=unifrnd(0,60,mm,1); randnum2=unifrnd(0,60,mm,1); randnum=randnum1-randnum2; proguji=0; for ii=1:mmif abs(randnum(ii,1)=20frq=frq+1;end end proguji=frq/mm,liti5(10000) proguji = 0.5557,在Matlab中编辑.m文件如下:,三)蒲丰投针实验: 法国科学家蒲丰(Buffon)在1777年提出 的蒲丰投针实验是早期几何概率一个非常 著名的例子。蒲丰投针实验的重要性并非 是为了求得比其它方法更精确的值,而

11、 是它开创了使用随机数处理确定性数学问题的先河, 是用偶然性方法去解决确定性计算的前导,由此可以领略到从“概率土壤”上开出的一朵瑰丽的鲜花蒙特卡罗方法(MC) 蒲丰投针实验可归结为下面的数学问题:平面上画有距离为a的一些平行线,向平面上任意投一根长为l(la)的针,假设针落在任意位置的可能性相同,试求针与平行线相交的概率P(从而求),蒲丰投针实验:如右图所示,以M 表示针落下后的中点, 以x表示M到最近一条 平行线的距离,以表示针与此线的交角: 针落地的所有可能结果满足: 其样本空间视作矩形区域, 面积是: 针与平行线相交的条件: 它是样本空间子集A,面积是: 积分计算 syms l phi;

12、 int(l/2*sin(phi),phi,0,pi); %ans=l 因此,针与平行线相交的概率为: 从而有: 特别当 时 p为统计频率,蒲丰投针实验的计算机模拟: format long; a=1; l=0.6; %显示精度, 线宽和针长 figure; axis(0,pi,0,a/2); %初始化绘图板 set(gca,nextplot,add); %初始化绘图方式为叠加 counter=0; n=2010; %初始化计数器和设定投针次数 x=unifrnd(0,a/2,1,n); phi=unifrnd(0,pi,1,n); %样本空间 for i=1:nif x(i)l*sin(ph

13、i(i)/2 %满足此条件表示针与线的相交plot(phi(i),x(i),r.); frame(i)=getframe; %描点并取帧title(Current Point ,num2str(i), Total ,num2str(n);counter=counter+1; %统计针与线相交的次数end end fren=counter/n; pihat=2*l/(a*fren) %用频率近似计算 %movie(frame,1) %播放帧动画1次,蒲丰投针实验计算圆周率,蒙特卡罗投点法是蒲丰投针实验的推广: 在一个边长为a的正方形内随机投点,该点落在此正方形的内切圆中的概率应为该内切圆与正方形

14、的面积比值,即 n=10000; a=2; m=0; for i=1:nx=rand(1)*a; y=rand(1)*a;if ( (x-a/2)2+(y-a/2)2 = (a/2)2 )m=m+1;end end disp(投点法近似计算的为: ,num2str(4*m/n);,x,y,o,作业:1.掷两枚不均匀硬币,每枚正面出现概率为0.4,记录前1000次掷硬币试验中两枚都为正面频率的波动情况,并画图。,2 : 两船欲停靠同一个码头, 设两船到达码头的时间各不相干,而且到达码头的时间在一昼夜内是等可能的. 如果两船到达码头后需在码头停留的时间分别是1 小时与2 小 时,试求在一昼夜内,任一船到达时,需要等待空出码头的概率. (频率估计概率),

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报