蒙特卡罗算法

蒙特卡罗算法

ID:45743056

大小:1.04 MB

页数:60页

时间:2019-11-17

蒙特卡罗算法_第1页
蒙特卡罗算法_第2页
蒙特卡罗算法_第3页
蒙特卡罗算法_第4页
蒙特卡罗算法_第5页
资源描述:

《蒙特卡罗算法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、MonteCarloSimulationMethods (蒙特卡罗模拟方法)主要内容:一.M-C方法概述.二.随机数的生成.三.模拟训练.四.实验题目.成信院数学与信息科学系李胜坤1蒙特卡洛(MonteCarlo)方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。这一方法源于美国在第二次世界大战中研制原子弹的“曼哈顿计划”。该计划的主持人之一、数学家冯·诺伊曼用驰名世界的赌城—摩纳哥的MonteCarlo—来命名这种方法,为它蒙上了一层神秘色彩。一.M-C方法概述2基本思想很早以前就被人们所发现和利用。17世纪,人们就知道用事件发生的“频率”来决定事件的“概率”

2、。19世纪人们用投针试验的方法来决定π。高速计算机的出现,使得用数学方法在计算机上大量模拟这样的试验成为可能。3从Buffon(蒲丰)投针问题谈起45试验者时间(年)针长投针次数相交次数π的估计值Wolf18500.80500025323.15956Smith18550.60320412183.15665Fox18840.7510304893.15951Lazzarini19250.83340818083.141592926数值积分问题选取(0,1)中随机数序列x1,x2,x3,……xn。则误差约,它并不能和一些高级的数值积分算法比拟,但对多维情况,MC方法却很有吸引力。7

3、我们可产生一系列随机数可简单取3个随机数构成一个随机点,即相应地,一般地,8MonteCarlo数值积分的优点与一般的数值积分方法比较,MonteCarlo方法具有以下优点:9M-C的基本思路1.针对实际问题建立一个简单且便于实现的概率统计模型,使所求的量(或解)恰好是该模型某个指标的概率分布或者数字特征。2.对模型中的随机变量建立抽样方法,在计算机上进行模拟测试,抽取足够多的随机数,对有关事件进行统计3.对模拟试验结果加以分析,给出所求解的估计及其精度(方差)的估计4.必要时,还应改进模型以降低估计方差和减少试验费用,提高模拟计算的效率10回顾几种连续型分布1.均匀分布U

4、(a,b)其概率密度函数为有11均匀性特点:均匀分布随机变量X落在(a,b)内任意子区间的概率只与子区间的长度有关,而与子区间的位置无关.可假设有这种特性的随机变量服从均匀分布.均匀分布随机变量X的取值具有”均匀性”122.正态分布正态分布随机变量X的概率密度函数是正态分布由两个参数和唯一确定.其中是X的均值(数学期望):=E(X),它确定了概率曲线的中心位置,而是X的标准差:,它确定了概率曲线的”宽窄”程度.13在许多实际问题中,有一类随机变量可以表示成为许多相互独立的随机变量之和,而其中每个随机变量对总和只起微小的影响,这类随机变量往往服从或近似服从正态分布.在实际应用

5、中,如果我们分析到一个随机变量受到较多独立的微小因素的叠加影响,就可以用正态分布来模拟这个变量.如:工厂产品的测量尺寸,农作物的收获量,某地区成年人的身高,体重等可看成服从正态分布的随机变量.143.指数分布指数分布随机变量X的概率密度为指数分布常用来描述寿命问题.15二.随机数的生成1.蒙特卡罗模拟的关键是生成优良的随机数。2.在计算机实现中,我们是通过确定性的算法生成随机数,所以这样生成的序列在本质上不是随机的,只是很好的模仿了随机数的性质(如可以通过统计检验)。我们通常称之为伪随机数(pseudo-randomnumbers)。3.在模拟中,我们需要产生各种概率分布的

6、随机数,而大多数概率分布的随机数产生均基于均匀分布U(0,1)的随机数。16U(0,1)随机数的生成乘同余法:称为种子,a是乘因子,m是模数17一个简单的例子18一个简单的例子(续)上面的例子中,第一个随机数生成器的周期长度是10,而后两个生成器的周期长度只有它的一半。我们自然希望生成器的周期越长越好,这样我们得到的分布就更接近于真实的均匀分布。19线性同余生成器(混合同余法) (LinearCongruentialGenerator)c是非负整数.通过适当选取参数c可以改善随机数的统计性质(独立性,均匀性).20常用的线性同余生成器ModulusmMultiplieraR

7、eference2^31-1=214748364716807Lewis,Goodman,andMiller39373L’Ecuyer742938285FishmanandMoore950706376FishmanandMoore1226874159FishmanandMoore214748339940692L’Ecuyer214748356340014L’Ecuyer21复杂一些的生成器Multiplerecursivegenerator22算法实现许多程序语言中都自带生成随机数的方法,如c中的random()函数

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

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

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