《第5讲 蒙特卡洛方法的应用优秀PPT.ppt》由会员分享,可在线阅读,更多相关《第5讲 蒙特卡洛方法的应用优秀PPT.ppt(49页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第5讲 蒙特卡洛方法的应用现在学习的是第1页,共49页一、一、MC MC 的起源和发展的起源和发展 随机模拟方法,也称为Monte Carlo方法,是一种基于“随机数”的计算方法。这一方法源于美国在第一次世界大战进行的研制原子弹的“曼哈顿计划”。该计划的主持人之一、数学家冯诺伊曼用驰名世界的赌城摩纳哥的Monte Carlo来命名这种方法,为它蒙上了一层神秘色彩。冯诺伊曼是公理化方法和计算机体系的领袖人物,Monte Carlo方法也是他的功劳。现在学习的是第2页,共49页事实上,Monte Carlo方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的“频率”来决
2、定事件的“概率”。18世纪下半叶的法国学者Buffon提出用投针试验的方法来确定圆周率的值。这个著名的Buffon试验是Monte Carlo方法的最早的尝试!现在学习的是第3页,共49页历史上曾有几位学者相继做过这样的试验。不过呢,他们的试验是费时费力的,同时精度不够高,实施起来也很困难。然而,随着计算机技术的飞速发展,人们不需要具体实施这些试验,而只要在计算机上进行大量的、快速的模拟试验就可以了。Monte Carlo方法是现代计算技术的最为杰出的成果之一,它在工程领域的作用是不可比拟的。现在学习的是第4页,共49页BuffonBuffon试验试验 假设平面上有无数条距离为1的等距平行线,
3、现向该平面随机投掷一根长度为 的针(),则我们可计算该针与任一平行线相交的概率。这里,随机投针指的是:针的中心点与最近的平行线间的距离 均匀的分布在区间 上,针与平行线的夹角 (不管相交与否)均匀的分布在区间 上。因此,针与线相交的充要条件是 现在学习的是第5页,共49页BuffonBuffon试验试验从而针线相交的概率为根据上式,若我们做大量的投针试验并记录针与线相交的次数,则由大数定理可以估计出针线相交的概率 ,从而得到 的估计值。针与线的位置关系:现在学习的是第6页,共49页functionpiguji=buffon(llength,mm)%llength是针的长度%mm是随机实验次数f
4、rq=0;xrandnum=unifrnd(0,0.5,1,mm);phi=unifrnd(0,pi,1,mm);forii=1:mmif(xrandnum(1,ii)buffon(.6,1000)piguji=3.1662buffon(.6,10000)piguji=3.1072buffon(.6,100000)piguji=3.1522buffon(.6,1000000)piguji=3.1386buffon(.6,1000000)piguji=3.1451buffon(.6,1000000)piguji=3.1418buffon(.6,1000000)piguji=3.1448buffo
5、n(.6,1000000)piguji=3.1405buffon(.6,1000000)piguji=3.1394现在学习的是第8页,共49页二、二、MC MC 的原理的原理应用Monte Carlo方法求解工程技术问题可以分为两类:确定性问题 随机性问题现在学习的是第9页,共49页思路思路1、针对实际问题建立一个简单且便于实现的概率统计模型,使问题的解对应于该模型中随机变量的概率分布或其某些数字特征,比如,均值和方差等。所构造的模型在主要特征参量方面要与实际问题或系统相一致的。2、根据模型中各个随机变量的分布,在计算机上产生随机数,实现一次模拟过程所需的足够数量的随机数。通常先产生均匀分布的
6、随机数,然后生成服从某一分布的随机数,再进行随机模拟试验。现在学习的是第10页,共49页3、根据概率模型的特点和随机变量的分布特性,设计和选取合适的抽样方法,并对每个随机变量进行抽样(包括直接抽样、分层抽样、相关抽样、重要抽样等)。4、按照所建立的模型进行仿真试验、计算,求出问题的随机解。5、统计分析模拟试验结果,给出问题的估计以及其精度估计。6、必要时,还应改进模型以降低估计方差和减少试验费用,提高模拟计算的效率。现在学习的是第11页,共49页收敛性收敛性:由大数定律,Monte-Carlo模拟的收敛是以概率而言的误差误差:用频率估计概率时误差的估计,可由中心极限定理,给定置信水平 的条件下
7、,有:模拟次数模拟次数:由误差公式得现在学习的是第12页,共49页三、三、MCMC的应用举例的应用举例 1 1、定积分的、定积分的MCMC计算计算 随机投点法随机投点法 样本平均值法样本平均值法 几种降低估计方差的几种降低估计方差的MCMC方法方法 2 2、系统的可靠性数值模拟计算问题系统的可靠性数值模拟计算问题现在学习的是第13页,共49页1 1、定积分的、定积分的MCMC计算计算事实上,不少的统计问题,如计算概率、各阶距等,最后都归结为定积分的近似计算问题。下面考虑一个简单的定积分为了说明问题,我们首先介绍两种求 的简单的MC方法,然后给出几种较为复杂而更有效的MC方法。现在学习的是第14
8、页,共49页在计算积分上,MC的实用场合是计算重积分其中 是 维空间的点,当 较大时,用MC方法比一般的数值方法有优点,主要是它的误差与维数 无关。现在学习的是第15页,共49页现在学习的是第16页,共49页随机投点法随机投点法 方法简述方法简述:设,有限,并设 是在 上均匀分布的二维随机变量,其联合密度函数为 。则易见 是 中 曲线下方的面积。假设我们向 中进行随机投点,若点落在 下方,(即 称为中的,否则称为不中,则点中的概率为 。若我们进行了 次投点,其中 次中的,则用频率来估计概率 。即 。现在学习的是第17页,共49页那么我们可以得到 的一个估计 具体试验步骤为现在学习的是第18页,
9、共49页求解定积分的算例求解定积分的算例例例 计算定积分事实上,其精确解为用随机投点法求解:注注 增加样本数目,可提高计算精度,但计算时间也会提高。sjtdf(0,4,4,1000000)result=7.2336现在学习的是第19页,共49页functionresult=sjtdf(a,b,m,mm)%a是积分的下限%b是积分的上限%m是函数的上界%mm是随机实验次数frq=0;xrandnum=unifrnd(a,b,1,mm);yrandnum=unifrnd(0,m,1,mm);forii=1:mmif(cos(xrandnum(1,ii)+2=yrandnum(1,ii)frq=fr
10、q+1;endendresult=frq*m*(b-a)/mm现在学习的是第20页,共49页注注1 1 随机投点法的思想简单明了,且每次投点结果服从二项分布,故 ,其中注注2 2 可证 是 的无偏估计。若用估计的标准差来衡量其精度,则估计 的精度的阶为 。注注3 3 这里,定积分的解,就对应我们选定的随机变量的概率值。现在学习的是第21页,共49页例例 的计算的计算1.单位圆的面积等于 2.3.用随机投点法求用随机投点法求 的值的值2023/2/24现在学习的是第22页,共49页sjtdf_pi1(1000)piguji=3.0520sjtdf_pi1(10000)piguji=3.1204s
11、jtdf_pi1(100000)piguji=3.1296functionpiguji=sjtdf_pi1(mm)%mm是随机实验次数frq=0;xrandnum=unifrnd(0,1,1,mm);yrandnum=unifrnd(0,1,1,mm);forii=1:mmifxrandnum(1,ii)2+yrandnum(1,ii)2sjtdf_pi2(1000)piguji=3.2120sjtdf_pi2(10000)piguji=3.1260sjtdf_pi2(100000)piguji=3.1373functionpiguji=sjtdf_pi2(mm)%mm是随机实验次数frq=0
12、;xrandnum=unifrnd(0,1,1,mm);yrandnum=unifrnd(0,1,1,mm);forii=1:mmif(sqrt(1-xrandnum(1,ii)2)=yrandnum(1,ii)frq=frq+1;endEnd,piguji=4*frq/mm现在学习的是第24页,共49页样本平均值法样本平均值法 基本原理基本原理:对积分 ,设 是 上的一个密度函数,改写可见,任一积分均可以表示为某个随机变量(函数)的期望。由矩法,若有 个来自 的观测值,则可给出 的一个矩估计。最简单的,若,有限,可取 。现在学习的是第25页,共49页设 是来自 的随机数,则 的一个估计为 具
13、体步骤为注注 可证 是 的无偏估计。一般而言,样本均值法要比随机投点法更有效。现在学习的是第26页,共49页求解定积分的算例求解定积分的算例例例 计算定积分事实上,其精确解为样本平均值法求解:注注 增加样本数目,可提高计算精度,但计算时间也会提高。ybjzf(0,4,4,1000)result=7.3036 ybjzf(0,4,4,10000)result=7.2970 ybjzf(0,4,4,100000)result=7.2578现在学习的是第27页,共49页functionresult=ybjzf(a,b,m,mm)%a是积分的下限%b是积分的上限%积分函数cos(x)+2%mm是随机实
14、验次数sum=0;xrandnum=unifrnd(a,b,1,mm);forii=1:mmsum=sum+cos(xrandnum(1,ii)+2;endresult=sum*(b-a)/mm现在学习的是第28页,共49页例例 的计算的计算1.单位圆的面积等于 2.3.用样本平均值法求用样本平均值法求 的值的值2023/2/24现在学习的是第29页,共49页functionresult=ybjzf1(a,b,m,mm)%a是积分的下限%b是积分的上限%积分函数%mm是随机实验次数xrandnum=unifrnd(a,b,1,mm);sum=sum(sqrt(1-xrandnum.2);res
15、ult=sum*(b-a)/mm;result=result*4ybjzf1(0,1,1,100)result=3.08745746887753ybjzf1(0,1,1,1000)result=3.15500646827616ybjzf1(0,1,1,10000)result=3.11911714237706ybjzf1(0,1,1,100000)result=3.14014654862983ybjzf1(0,1,1,1000000)result=3.14093979612119现在学习的是第30页,共49页functionresult=ybjzf1(a,b,m,mm)%a是积分的下限%b是积
16、分的上限%积分函数%mm是随机实验次数sum=0;xrandnum=unifrnd(a,b,1,mm);forii=1:mmsum=sum+1/(1+xrandnum(1,ii)2);endresult=sum*(b-a)/mm;result=result*4ybjzf2(0,1,1,100)result=3.04500162146030ybjzf2(0,1,1,1000)result=3.14857120401090ybjzf2(0,1,1,10000)result=3.14530178564491ybjzf2(0,1,1,100000)result=3.14069143292954现在学习
17、的是第31页,共49页几种降低估计方差的几种降低估计方差的MCMC方法方法重要抽样法重要抽样法 特点:相对样本均值法而言,样本均值法是由于假设 是均匀分布的概率密度,故采用的是均匀抽样,各随机数 是均匀分布的随机数,各 对 的贡献是不同,大则贡献大,但在抽样时,这种差别未能体现出来。而重要抽样法,则希望贡献率大的随机数出现的概率大,贡献小的随机数出现概率小,从而提高抽样的效。现在学习的是第32页,共49页几种降低估计方差的几种降低估计方差的MCMC方法方法重要抽样法重要抽样法关键因素在于 的选取,使得估计的方差较小。重要抽样法的基本思想,就是通过选取与 形状接近的密度函数 来降低估计的方差。现
18、在学习的是第33页,共49页几种降低估计方差的几种降低估计方差的MCMC方法方法分层抽样法分层抽样法 同样是利用贡献率大小来降低估计方差的方法。它首先是把样本空间 分成一些小区间 ,且诸 不交,然后在各个小区间内的抽样数由其贡献大小决定。对 贡献大的 抽样多,可提高抽样效率。如果能够提出较好抽样区间的分配和各子区间内抽样次数的分配方案,分层抽样法估计积分可以达到非常令人满意的效果。现在学习的是第34页,共49页几种降低估计方差的几种降低估计方差的MCMC方法方法关联抽样法关联抽样法 将需要估计的积分分解成两个积分之差,对 的估计转化为对 ,的估计的差。则相应的,其估计的方差的大小则与 ,的估计
19、的正相关度有关,若两者的相关程度越高,则 的估计方差越小。这便是关联抽样法的基本出发点。现在学习的是第35页,共49页一个元件(或系统)能正常工作的概率称为元件(或系统)的可靠性系统由元件组成,常见的元件连接方式:串联并联12212 2、系统的可靠性计算问题、系统的可靠性计算问题 现在学习的是第36页,共49页例例 设两系统都是由 4个元件组成,每个元件正常工作的概率为 p=0.5,每个元件是否正常工作相互独立.两系统的连接方式如下图所示,比较两系统的可靠性.A1A2B2B1S1:现在学习的是第37页,共49页function Rguji=litiR01(0.5,0.5,0.5,0.5,mm)
20、frq=0;randnuma1=binornd(1,0.5,1,mm);randnuma2=binornd(1,0.5,1,mm);randnumb1=binornd(1,0.5,1,mm)randnumb2=binornd(1,0.5,1,mm);Rguji=frq/mm现在学习的是第38页,共49页function Rguji=litiR01(0.5,0.5,0.5,0.5,mm)frq=0;randnuma1=binornd(1,0.5,1,mm);randnuma2=binornd(1,0.5,1,mm);randnumb1=binornd(1,0.5,1,mm)randnumb2=b
21、inornd(1,0.5,1,mm);for ii=1:mm if(randnuma1(1,ii)=1)&(randnuma2(1,ii)=1)pass1=1;else pass1=0;end if(randnumb1(1,ii)=1)&(randnumb2(1,ii)=1)pass2=1;else pass2=0;end if(pass1+pass2)=1 frq=frq+1;end End,Rguji=frq/mm现在学习的是第39页,共49页例例 设两系统都是由 4个元件组成,每个元件正常工作的概率为 p,每个元件是否正常工作相互独立.两系统的连接方式如下图所示,比较两系统的可靠性.A1
22、A2B2B1S1:现在学习的是第40页,共49页A1A2B2B1S2:现在学习的是第41页,共49页例例 设两系统都是由 4个元件组成,每个元件的寿命服从参数为的指数分布,每个元件是否正常工作相互独立.两系统的连接方式如下图所示,求两系统寿命大于T=100的概率.A1A2B2B1S1:现在学习的是第42页,共49页例例 设两系统都是由 4个元件组成,每个元件的寿命服从参数为的指数分布,每个元件是否正常工作相互独立.两系统的连接方式如下图所示,求两系统寿命大于T=100的概率.A1A2B2B1S1:现在学习的是第43页,共49页A1A2B2B1S2:现在学习的是第44页,共49页function
23、 Rguji=litiR1(t,thetaa1,thetaa2,thetab1,thetab2,mm)%t 是要求系统生存的寿命%thetaa1 是元件A1的数学期望%thetaa2 是元件A2的数学期望%thetab1 是元件B1的数学期望%thetab2 是元件B2的数学期望%mm 是随机实验次数frq=0;randnuma1=exprnd(thetaa1,1,mm);randnuma2=exprnd(thetaa2,1,mm);randnumb1=exprnd(thetab1,1,mm);randnumb2=exprnd(thetab2,1,mm);for ii=1:mm if(rand
24、numa1(1,ii)t)&(randnuma2(1,ii)t)pass1=1;else pass1=0;end if(randnumb1(1,ii)t)&(randnumb2(1,ii)t)pass2=1;else pass2=0;end if(pass1+pass2)=1 frq=frq+1;end End,Rguji=frq/mm现在学习的是第45页,共49页function Rguji=litiR2(t,thetaa1,thetaa2,thetab1,thetab2,mm)%t 是要求系统生存的寿命%thetaa1 是元件A1的数学期望%thetaa2 是元件A2的数学期望%theta
25、b1 是元件B1的数学期望%thetab2 是元件B2的数学期望%mm 是随机实验次数frq=0;randnuma1=exprnd(thetaa1,1,mm);randnuma2=exprnd(thetaa2,1,mm);randnumb1=exprnd(thetab1,1,mm);randnumb2=exprnd(thetab2,1,mm);for ii=1:mm if(randnuma1(1,ii)t)|(randnumb1(1,ii)t)pass1=1;else pass1=0;end if(randnuma2(1,ii)t)|(randnumb2(1,ii)t)pass2=1;else
26、 pass2=0;end if(pass1*pass2)=1 frq=frq+1;end End,Rguji=frq/mm现在学习的是第46页,共49页四、四、EMEM算法及其算法及其MCMCMCMC方法方法EM算法:算法:是一种迭代方法,最初由Dempster等提出,并主要应用于较为复杂的后验分布,来计算后验均值或后验众数,即极大似然估计的一种数据添加算法。最大优点是简单和稳定。MCMC算法:算法:当后验分布较为复杂时,对于后验分布的积分计算,像后验均值、后验方差、后验分布的分位数等等,就不得不求助于MCMC算法。他在统计物理学中得到广泛的应用,近年来,迅速发展到Bayes统计、显著性检验、极大似然估计等方面。关于这两方面的详细知识,感兴趣的可自己阅读!现在学习的是第47页,共49页2.用随机投点法、样本平均值法用随机投点法、样本平均值法计算定积分1.设两系统都是由 5个元件组成,每个元件的寿命服从期望为5的指数分布,每个元件是否正常工作相互独立.两系统的连接方式如下图所示,求系统寿命大于T=3的概率.(用随机投点法)用随机投点法)作业作业:A1A2B2B1C现在学习的是第48页,共49页2.用随机投点法、样本平均值法用随机投点法、样本平均值法计算定积分现在学习的是第49页,共49页