欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > PPT文档下载  

    《蒙特卡罗算法》PPT课件.ppt

    • 资源ID:5600681       资源大小:870KB        全文页数:60页
    • 资源格式: PPT        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    《蒙特卡罗算法》PPT课件.ppt

    1,Monte Carlo Simulation Methods(蒙特卡罗模拟方法),主要内容:一.M-C方法概述.二.随机数的生成.三.模拟训练.四.实验题目.,成信院数学与信息科学系 李胜坤,2,蒙特卡洛(Monte Carlo)方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。这一方法源于美国在第二次世界大战中研制原子弹的“曼哈顿计划”。该计划的主持人之一、数学家冯诺伊曼用驰名世界的赌城摩纳哥的Monte Carlo来命名这种方法,为它蒙上了一层神秘色彩。,一.M-C方法概述,3,基本思想很早以前就被人们所发现和利用。17世纪,人们就知道用事件发生的“频率”来决定事件的“概率”。19世纪人们用投针试验的方法来决定。高速计算机的出现,使得用数学方法在计算机上大量模拟这样的试验成为可能。,4,从Buffon(蒲丰)投针问题谈起,5,6,7,数值积分问题,选取(0,1)中随机数序列x1,x2,x3,xn。则,误差约,它并不能和一些高级的数值积分算法比拟,但对多维情况,MC方法却很有吸引力。,8,我们可产生一系列随机数可简单取3个随机数构成一个随机点,即,相应地,,一般地,,9,Monte Carlo数值积分的优点,与一般的数值积分方法比较,Monte Carlo方法具有以下优点:,10,M-C的基本思路,1.针对实际问题建立一个简单且便于实现的概率统计模型,使所求的量(或解)恰好是该模型某个指标的概率分布或者数字特征。,2.对模型中的随机变量建立抽样方法,在计算机上进行模拟测试,抽取足够多的随机数,对有关事件进行统计,3.对模拟试验结果加以分析,给出所求解的估计及其精度(方差)的估计,4.必要时,还应改进模型以降低估计方差和减少试验费用,提高模拟计算的效率,11,回顾几种连续型分布,1.均匀分布U(a,b)其概率密度函数为,有,12,均匀性特点:均匀分布随机变量X落在(a,b)内任意子区间的概率只与子区间的长度有关,而与子区间的位置无关.可假设有这种特性的随机变量服从均匀分布.,均匀分布随机变量X的取值具有”均匀性”,13,2.正态分布正态分布随机变量X的概率密度函数是,正态分布由两个参数 和 唯一确定.其中 是X的均值(数学期望):=E(X),它确定了概率曲线的中心位置,而 是X的标准差:,它确定了概率曲线的”宽窄”程度.,14,在许多实际问题中,有一类随机变量可以表示成为许多相互独立的随机变量之和,而其中每个随机变量对总和只起微小的影响,这类随机变量往往服从或近似服从正态分布.在实际应用中,如果我们分析到一个随机变量受到较多独立的微小因素的叠加影响,就可以用正态分布来模拟这个变量.如:工厂产品的测量尺寸,农作物的收获量,某地区成年人的身高,体重等可看成服从正态分布的随机变量.,15,3.指数分布指数分布随机变量X的概率密度为,指数分布常用来描述寿命问题.,16,二.随机数的生成,1.蒙特卡罗模拟的关键是生成优良的随机数。2.在计算机实现中,我们是通过确定性的算法生成 随机数,所以这样生成的序列在本质上不是随机 的,只是很好的模仿了随机数的性质(如可以通过 统计检验)。我们通常称之为伪随机数(pseudo-random numbers)。3.在模拟中,我们需要产生各种概率分布的随机数,而大多数概率分布的随机数产生均基于均匀分布U(0,1)的随机数。,17,U(0,1)随机数的生成,乘同余法:,称为种子,a 是乘因子,m是模数,18,一个简单的例子,19,一个简单的例子(续),上面的例子中,第一个随机数生成器的周期长度是 10,而后两个生成器的周期长度只有它的一半。我们自然希望生成器的周期越长越好,这样我们得到的分布就更接近于真实的均匀分布。,20,线性同余生成器(混合同余法)(Linear Congruential Generator),c是非负整数.通过适当选取参数c可以改善随机数的统计性质(独立性,均匀性).,21,常用的线性同余生成器,22,复杂一些的生成器,Multiple recursive generator,23,算法实现,许多程序语言中都自带生成随机数的方法,如 c 中的 random()函数,Matlab中的rand()函数等。但这些生成器生成的随机数效果很不一样,比如 c 中的函数生成的随机数性质就比较差,如果用 c,最好自己再编一个程序。Matlab 中的 rand()函数,经过了很多优化。可以产生性质很好的随机数,可以直接利用。,24,从U(0,1)到其它概率分布的随机数,1.离散型随机数的模拟2.连续型随机数的模拟3.正态随机数的模拟,25,1.离散型随机数的模拟,设随机变量 的分布律为令将 作为区间(0,1)的分点.若随机变量,有,26,令则有据此,可得产生 的随机数的具体过程为:每产生一个(0,1)区间上均匀分布随机数,若 则令 取值.,27,例1:,离散型随机变量X有如下分布律:X 0 1 2P(x)0.3 0.3 0.4设 是(0,1)上均匀分布的随机数,令则 是具有X分布律的随机数.,28,2.连续型随机数的模拟,a.逆变换方法(常用)(Inverse Transform Method)b.舍取方法(Acceptance-Rejection Method),定理:设随机变量Y的分布函数F(y)是连续函数,而U是在(0,1)上均匀分布的随机变量,令,则Y与X有相同的分布.,29,30,31,32,舍取方法,舍取方法(Acceptance-Rejection)方法最早由 Von Neumann提出,现在已经广泛应用于各种随机数的生成。,基本思路:,通过一个容易生成的概率分布 g 和一个取舍准则生成另一个与 g 相近的概率分布 f。,33,具体步骤:,34,下面我们验证由上述步骤生成的随机数 Y 确实具有密度函数 f(x),35,所以为了提高舍取法的效率,我们应该使 c 的取值尽可能的小,也就是使 f 和 g 的分布更为相近。,36,3.标准正态分布随机数的生成,正态分布是概率统计中最重要的分布,在此我们着重讨论如何生成标准正态分布随机数。,引理:,37,Box-Muller 算法,38,利用中心极限定理,设 是n个相互独立的在(0,1)上均匀分布的随机变量,由中心极限定理知 渐近服从正态分布N(0,1).一般取n=10即可,若取n=12,则上式简化为 再由公式 即可得到正态分布 的随机数.,39,Matlab程序,Function r=rnd-u(a,b)%产生在a,b间均匀分布的随机数r=a+(b-a)*rand;return,40,Matlab程序,Function r=rnd-beta(lamda)%模拟指数分布%lamda表示指数分布的参数r=-log(rand)/lamda;return,41,Matlab程序,Function y=rnd(mean,segema)%模拟均值为mean,方差为segma的正态分布r=rand(1,12);x=sum(r)-6;y=segma*x+mean;return,42,三.模拟训练,例1.模拟求近似圆周率在边长为1的正方形内有一半径为0.5的内切圆.现在模拟产生在正方形内均匀分布的点n个.如果有m个在圆内,则圆面积与正方形的面积比可近似为m/n.即/4m/n 4m/n,43,n=10000m=0;For i=1:n if rand2+rand2=1 m=m+1;endendMypi=4*m/n,44,例2.用M-C法估算定积分.求定积分.,分析:对于,如果f(x)=0,则可以通过模拟估算.构造一个矩形包含曲边梯形,dmax f(x).产生n(足够大)个在矩形区域内的点,如果落在由函数f(x)构成的曲边梯形内的点为m个,则所求定积分为.,45,n=106;a=0;b=1;d=1;m=0;for i=1:n x=a+rand*(b-a);y=d*rand;if y=x2 m=m+1;endends=m/n*(b-a)*d,46,n=106;x=rand(1,n);y=x.2;s=sum(y)/n,采用前面讲的方法:,47,例3.渡口模型问题描述:一个渡口的渡船营运者拥有一只甲板长32米,可以并排停放两列车辆的渡船.他在考虑怎样在甲板上安排过河车辆的位置,才能安全地运过最多数量的车辆.分析:怎样安排过河车辆,关心一次可以运多少辆各类车.准备工作:观察数日,发现每次情况不尽相同,得到下列数据和情况:(1)车辆随机到达,形成一个等待上船的车列;(2)来到车辆,轿车约占40%,卡车约占55%,摩托车约占5%;(3)轿车车身长3.55.5米,卡车车身长为810米.,48,问题分析:这是一个机理较复杂的随机问题,是遵”先到先服务”的随机排队问题.解决方法:采用模拟模型方法.因此需考虑以下问题:(1)应该怎样安排摩托车?(2)下一辆到达的车是什么类型?(3)怎样描述一辆车的车身长度?(4)如何安排到达车辆加入甲板上两列车队中的哪一列中去?,本实验主要模拟装载车辆的情况,暂时不考虑渡船的安全.,49,模型建立:设到达的卡车,轿车长度分别为随机变量,.结合实际,这里不妨设卡车,轿车的车身长度,均服从正态分布.由于卡车车身长810米,所以卡车车长 的均值为(8+10)/2=9米,由概率知识中的”3”原则,其标准差为(9-8)/3=1/3,所以得到.同理可得.,50,模拟程序设计:由以上的分析,程序设计时应划分的主要模块(函数)如下:(1)确定下一辆到达车辆的类型:(2)根据车的类型确定到达车辆的长度;(3)根据一定的停放规则,确定放在哪一列.,51,function r=makeid%模拟下一辆到达车的类型t=rand;if t=0.55 r=1;%到达卡车elseif t=0.95 r=2;%到达轿车else r=3;%到达摩托车end,52,function len=getlength(id)%根据车的类型,产生车长随机数switch id case 1,len=min(9+randn*(1/3),10);case 2,len=min(4.5+randn*(1/3),5.5);case 3;len=0;end,53,function full,pos=getiffull(L,newlen)%增加车长为len后是否可行(是否满)%pos表示加到那一列去full=0;pos=0;if L(1)L(2)if L(2)+newlen32 pos=2;else full=1;endelse if L(1)+newlen32 pos=1;else full=1;endend,54,function sim_dukou%渡口模型的模拟n=input(输入模拟次数:);if isempty(n)|(n500)n=500;endN=zeros(1,3);for i=1:n isfull=0;L=0,0;while isfull id=makeid;N(id)=N(id)+1;newlen=getlength(id);isfull,pos=getiffull(L,newlen);if isfull L(pos)=L(pos)+newlen;end endenddisp(平均每次渡船上的车数)mean_n=N/n,55,四.实验题目,赶上火车的概率问题描述:如图,一列火车从A站开往B站,某人每天赶往B站上这趟火车.他已了解到:(1)火车从A站到B站的运行时间是均值为30分钟,标准差为2分钟的随机变量;(2)火车在下午大约1点离开A站,离开时刻的频率分布如下:,56,此人到达B站的时刻频率分布为:,问他能赶上火车的概率是多少?,57,变量说明,:火车从A站出发的时刻;:火车从A站到B站的运行时间,单位:分钟;:他到达B站的时刻,问题分析与假设:此题包含多个随机因数.这里假设,都是随机变量,其中 服从正态分布.,58,模型建立,很显然,他能及时赶上火车的条件是:+.为了简化计算,将下午1点记为0时刻.和 的分布律如下:,59,如果r为在(0,1)均匀分布的随机数,为了模拟随机变量,可以通过如下方法:其中,和 分别用来模拟随机变量 和.,60,function pro_huoche%模拟赶上火车的概率n=input(输入模拟次数:)m=0;for i=1:n r1=rand;if r1=0.7 t1=0;elseif r1=0.9 t1=5;else t1=10;end r3=rand;if r3=0.3 t3=28;elseif r3=0.7 t3=30;elseif r3=0.9 t3=32;else t3=34;end t2=30+randn*2;if t3(t1+t2)m=m+1;endendp=m/nend,

    注意事项

    本文(《蒙特卡罗算法》PPT课件.ppt)为本站会员(小飞机)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开