Monte_Carlo模拟.ppt

Monte_Carlo模拟.ppt

ID:49296352

大小:885.00 KB

页数:41页

时间:2020-02-02

Monte_Carlo模拟.ppt_第1页
Monte_Carlo模拟.ppt_第2页
Monte_Carlo模拟.ppt_第3页
Monte_Carlo模拟.ppt_第4页
Monte_Carlo模拟.ppt_第5页
资源描述:

《Monte_Carlo模拟.ppt》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MonteCarlo模拟内容提纲1.引言2.MonteCarlo模拟基本思想3.随机数生成函数4.应用实例举例5.排队论模拟6.MonteCarlo模拟求解规划问题引言(Introduction)MonteCarlo方法:蒙特卡罗方法,又称随机模拟方法,属于计算数学的一个分支,它是在上世纪四十年代中期为了适应当时原子能事业的发展而发展起来的。亦称统计模拟方法,statisticalsimulationmethod利用随机数进行数值模拟的方法MonteCarlo名字的由来:MonteCarlo是摩纳哥(monaco)的首都,该城以赌博闻名Ni

2、cholasMetropolis(1915-1999)Monte-Carlo,MonacoMonteCarlo方法的基本思想蒙特卡罗方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。源于美国在第二次世界大战研制原子弹的“曼哈顿计划”,该计划的主持人之一数学家冯·诺伊曼用驰名世界的赌城—摩纳哥的MonteCarlo—来命名这种方法,为它蒙上了一层神秘色彩。蒙特卡罗方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的“频率”来决定事件的“概率”。19世纪人们用蒲丰投针的方法来计算圆周率π,上世纪40年代电子

3、计算机的出现,特别是近年来高速电子计算机的出现,使得用数学方法在计算机上大量、快速地模拟这样的试验成为可能。蒲丰投针实验:法国科学家蒲丰(Buffon)在1777年提出的蒲丰投针实验是早期几何概率一个非常著名的例子。蒲丰投针实验的重要性并非是为了求得比其它方法更精确的π值,而是它开创了使用随机数处理确定性数学问题的先河,是用偶然性方法去解决确定性计算的前导。由此可以领略到从“概率土壤”上开出的一朵瑰丽的鲜花-蒙特卡罗方法(MC)蒲丰投针实验可归结为下面的数学问题:平面上画有距离为a的一些平行线,向平面上任意投一根长为l(l

4、在任意位置的可能性相同,试求针与平行线相交的概率P(从而求π)蒲丰投针实验:如右图所示,以M表示针落下后的中点,以x表示M到最近一条平行线的距离,以φ表示针与此线的交角:针落地的所有可能结果满足:其样本空间视作矩形区域Ω,面积是:针与平行线相交的条件:它是样本空间Ω子集A,面积是:symslphi;int('l/2*sin(phi)',phi,0,pi)%ans=l因此,针与平行线相交的概率为:从而有:蒲丰投针实验的计算机模拟:formatlong;%设置15位显示精度a=1;l=0.6;%两平行线间的宽度和针长figure;axis([0,

5、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);%样本空间Ωfori=1:nifx(i)

6、unter/n;pihat=2*l/(a*fren)%用频率近似计算πfigure(2)movie(frame,1)%播放帧动画1次一些人进行了实验,其结果列于下表:实验者年份投计次数π的实验值沃尔弗(Wolf)185050003.1596斯密思(Smith)185532043.1553福克斯(Fox)189411203.1419拉查里尼(Lazzarini)190134083.1415929蒙特卡罗投点法是蒲丰投针实验的推广:在一个边长为a的正方形内随机投点,该点落在此正方形的内切圆中的概率应为该内切圆与正方形的面积比值,即n=10000;

7、a=2;m=0;fori=1:nx=rand(1)*a;y=rand(1)*a;if((x-a/2)^2+(y-a/2)^2<=(a/2)^2)m=m+1;endenddisp(['投点法近似计算的π为:',num2str(4*m/n)]);xyo(a/2,a/2)基本思想由上面的例子可以看出,当所求问题的解是某个事件的概率,或者是某个随机变量的数学期望,或者是与之有关的量时,通过某种试验的方法,得出该事件发生的频率,再通过它得到问题的解。这就是蒙特卡罗方法的基本思想。蒙特卡罗方法的关键步骤在于随机数的产生,计算机产生的随机数都不是真正的随机

8、数(由算法确定的缘故),如果伪随机数能够通过一系列统计检验,我们也可以将其当作真正的随机数使用。rand('seed',0.1);rand(1)%每次运行程序产生的

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。