蒲丰投针与蒙特卡洛(MonteCarlo)方法
- 格式:pdf
- 大小:137.84 KB
- 文档页数:3
蒙特卡罗法简单介绍和案例蒙特卡罗法历史悠久。
1773年法国G.-L.L.von 布丰曾通过随机投针试验来确定圆周率π的近似值,这就是应用这个方法的最早例子。
蒙特卡罗是摩纳哥著名赌城,1945年 J.von 诺伊曼等人用它来命名此法,沿用至今。
数字计算机的发展为大规模的随机试验提供了有效工具,遂使蒙特卡罗法得到广泛应用。
在连续系统和离散事件系统的仿真中,通常构造一个和系统特性相近似的概率模型,并对它进行随机试验,因此蒙特卡罗法也是系统仿真方法之一。
对于蒙特卡罗技术应用于不可预见费的估算的研究,是对蒙特卡罗技术应用的拓展,能更好地了解尝试其在项目管理方面更多的应用,用其解决项目管理的问题。
用蒙特卡罗技术研究不可预见费,尝试用蒙特卡罗解决一般项目的不可预见费求取问题,避免不可预见费过高过低的问题。
蒙特卡洛方法的基本思想是:将符合一定概率分布的大量随机数作为参数带入数学模型,求出所关注变量的概率分布,从而了解不同参数对目标变量的综合影响以及目标变量最终结果的统计特性。
蒙特卡洛方法的基本原理简单描述如下:假定函数),...,,(21nx x x f y =,蒙特卡洛方法利用一个随机数发生器通过抽样取出每一组随机变量 (ni i i x x x ,...,,21),然后按),...,,(21n x x x f y =的关系式确定函数的值),...,,(21ni i i i x x x f y =。
反复独立抽样(模拟)多次(i=1,2,…),便可得到函数的一组抽样数据(n y y y ,...,,21),当模拟次数足够多时,便可给出与实际情况相近的函数y 的概率分布与其数字特征。
蒙特卡罗法(Monte Carlo Simulation )也称随机模拟,它主要依据概率分布对随机变量进行抽样,然后将样本带入数学模型进行计算得到应变量。
虽然蒙特卡罗模拟技术只给出的是统计估计而非精确的结果且应用其研究问题需要花费大量的计算时间,但它对问题的维数不敏感,对求解对象是线性问题与否也没有原则性要求,因此在复杂系统的不确定分析中,蒙特卡罗方法成为不可或缺的手段。
蒲丰投针 ―― Monte Carlo 算法背景:蒙特卡罗方法(Monte Carlo ),也称统计模拟方法,是在二次世界大战期间随着科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为基础的一类非常重要的数值计算方法。
蒙特卡罗方法在应用物理、原子能、固体物理、化学、生态学、社会学以及经济行为等领域中得到广泛利用。
蒙特卡罗方法的名字来源于世界著名的赌城 —— 摩纳哥的蒙特卡罗。
其历史起源可追溯到1777年法国科学家蒲丰提出的一种计算圆周的方法 —— 随机投针法,即著名的蒲丰投针问题。
问题:设在平面上有一组平行线,间距为d ,把一根长L 的针随机投上去,则这根针和平行线相交的概率是多少?(其中 L < d )分析:由于 L < d ,所以这根针至多只能与一条平行线相交。
设针的中点与最近的平行线之间的距离为 y ,针与平行线的夹角为 (0 )。
相交情形 不相交情形易知针与平行线相交的充要条件是:sin 2Ly x θ≤=由于1[0,], [0, ]2y d θπ∈∈,且它们的取值均满足平均分布。
建立直角坐标系,则针与平行线的相交条件在坐标系下就是曲线所围成的曲边梯形区域(见右图)。
所以有几何概率可知针与平行线相交的概率是sin d 2212LL p d d πθθππ==⎰Monte Carlo 方法:随机产生满足平均分布的 y 和,其中1[0,], [0, ]2y d θπ∈∈,判断 y 是否在曲边梯形内。
重复上述试验,并统计 y 在曲边梯形内的次数 m ,其与试验次数 n 的比值即为针与平行线相交的概率的近似值。
clear;n = 100000; L = 1; d = 2; m = 0;for k = 1 : ntheta = rand(1)*pi; y = rand(1)*d/2;if y < sin(theta)*L/2m = m + 1; end endfprintf('针与平行线相交的概率大约为 %f\n', m/n)计算π的近似值利用该方法可以计算的近似值:sin d 22 22 1n LL m p d m d L d n πθθπππ⇒≈==≈⎰下面是一些通过蒲丰投针实验计算出来的的近似值:实验者 年代 投掷次数 相交次数 圆周率估计值 沃尔夫 1850 5000 2531 3.1596 史密斯 1855 3204 1219 3.1554 德摩根 1680 600 383 3.137 福克斯 1884 1030 489 3.1595 拉泽里尼 1901 3408 1808 3.1415929 赖纳192525208593.1795蒲丰投针问题的重要性并非是为了求得比其它方法更精确的π值,而是在于它是第一个用几何形式表达概率问题的例子。
蒙特卡罗方法概述§ 8.2 引例:蒲丰投针问题在用传统方法难以解决的问题中,有很大一部分可以用概率模型进行描述.由于这类模型含有不确定的随机因素,分析起来通常比确定性的模型困难.有的模型难以作定量分析,得不到解析的结果,或者是虽有解析结果,但计算代价太大以至不能使用.在这种情况下,可以考虑采用Monte Carlo 方法。
下面通过例子简单介绍Monte Carlo 方法的基本思想.Monte Carlo 方法是计算机模拟的基础,它的名字来源于世界著名的赌城——摩纳哥的蒙特卡洛,其历史起源于1777年法国科学家蒲丰提出的一种计算圆周π的方法——随机投针法,即著名的蒲丰投针问题。
这一方法的步骤是:1) 1) 取一张白纸,在上面画上许多条间距为d 的平行线,见图8.1(1)2) 2) 取一根长度为)(d l l <的针,随机地向画有平行直线的纸上掷n 次,观察针与直线相交的次数,记为m3)计算针与直线相交的概率.由分析知针与平行线相交的充要条件是ϕsin 21≤x 其中πϕ≤≤≤≤0,20d x 建立直角坐标系),(x ϕ,上述条件在坐标系下将是曲线所围成的曲边梯形区域,见图8.l (2).由几何概率知(*)22sin 210d l d d G g p ππϕϕπ===⎰的面积的面积 4)经统计实验估计出概率,n m P ≈由(*)式即?2=⇒=ππdl n m Monte Carlo 方法的基本思想是首先建立一个概率模型,使所求问题的解正好是该模型的参数或其他有关的特征量.然后通过模拟一统计试验,即多次随机抽样试验(确定m 和n ),统计出某事件发生的百分比.只要试验次数很大,该百分比便近似于事件发生的概率.这实际上就是概率的统计定义.利用建立的概率模型,求出要估计的参数.蒙特卡洛方法属于试验数学的一个分支.************************************************************************* 提示:设x 是一个随机变量,它服从区间[0,d/2]是的均匀分布,同理,ϕ是一个随机变量,它服从区间],0[π上的均匀分布。
浅析蒙特卡洛方法原理及应用于希明(英才学院1236103班测控技术与仪器专业6120110304)摘要:本文概述了蒙特卡洛方法产生的历史及基本原理,介绍了蒙特卡洛方法的最初应用——蒲丰投针问题求圆周率,并介绍了蒙特卡洛方法在数学及生活中的一些简单应用,最后总结了蒙特卡洛方法的特点。
关键词:蒙特卡洛方法蒲丰投针生活应用蒙特卡洛方法(Monte Carlo method),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。
它是以概率统计理论为基础, 依据大数定律( 样本均值代替总体均值) , 利用电子计算机数字模拟技术, 解决一些很难直接用数学运算求解或用其他方法不能解决的复杂问题的一种近似计算法。
蒙特卡洛方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域应用广泛。
一、蒙特卡洛方法的产生及原理蒙特卡洛方法于20世纪40年代美国在第二次世界大战中研制原子弹的“曼哈顿计划”计划的成员S.M.乌拉姆和J.冯·诺伊曼首先提出。
数学家冯·诺伊曼用驰名世界的赌城—摩纳哥的Monte Carlo—来命名这种方法,为它蒙上了一层神秘色彩。
在这之前,蒙特卡洛方法就已经存在。
1777年,法国数学家蒲丰(Georges Louis Leclere de Buffon,1707—1788)提出用投针实验的方法求圆周率π。
这被认为是蒙特卡洛方法的起源。
其基本原理如下:由概率定义知,某事件的概率可以用大量试验中该事件发生的频率来估算,当样本容量足够大时,可以认为该事件的发生频率即为其概率。
因此,可以先对影响其可靠度的随机变量进行大量的随机抽样,然后把这些抽样值一组一组地代入功能函数式,确定结构是否失效,最后从中求得结构的失效概率。
蒙特卡洛法正是基于此思路进行分析的。
设有统计独立的随机变量Xi(i=1,2,3,…,k),其对应的概率密度函数分别为fx1,fx2,…,fxk,功能函数式为Z=g(x1,x2,…,xk)。
蒙特卡罗(Monte Carlo)方法简介蒙特卡罗(Monte Carlo)方法简介蒙特卡罗(Monte Carlo)方法,也称为计算机随机模拟方法,是一种基于"随机数"的计算方法。
一起源这一方法源于美国在第二次世界大战进研制原子弹的"曼哈顿计划"。
Monte Carlo方法创始人主要是这四位:Stanislaw Marcin Ulam, Enrico Fermi, John von Neumann(学计算机的肯定都认识这个牛人吧)和Nicholas Metropolis。
Stanislaw Marcin Ulam是波兰裔美籍数学家,早年是研究拓扑的,后因参与曼哈顿工程,兴趣遂转向应用数学,他首先提出用Monte Carlo方法解决计算数学中的一些问题,然后又将其应用到解决链式反应的理论中去,可以说是MC方法的奠基人;Enrico Fermi是个物理大牛,理论和实验同时都是大牛,这在物理界很少见,在“物理大牛的八卦”那篇文章里提到这个人很多次,对于这么牛的人只能是英年早逝了(别说我嘴损啊,上帝都嫉妒!);John von Neumann可以说是计算机界的牛顿吧,太牛了,结果和Fermi一样,被上帝嫉妒了;Nicholas Metropolis,希腊裔美籍数学家,物理学家,计算机科学家,这个人对Monte Carlo方法做的贡献相当大,正式由于他提出的一种什么算法(名字忘了),才使得Monte Carlo方法能够得到如此广泛的应用,这人现在还活着,与前几位牛人不同,Metropolis很专一,他一生主要的贡献就是Monte Carlo方法。
蒙特卡罗方法的名字来源于摩纳哥的一个城市蒙地卡罗,该城市以赌博业闻名,而蒙特•罗方法正是以概率为基础的方法。
与它对应的是确定性算法。
二解决问题的基本思路Monte Carlo方法的基本思想很早以前就被人们所发现和利用。
早在17世纪,人们就知道用事件发生的"频率"来决定事件的"概率"。
概率模型的随机模拟与蒲丰投针实验第1章模拟** 模拟的概念每一个现实系统外部环境之间都存在着一定的数学的或者逻辑的关系,这些关系在系统内部的各个组成部分之间也存在。
对数学、逻辑关系并不复杂的模型,人们一般都可用解析论证和数值计算求解。
但是,许多现实系统的这种数学、逻辑模型十分复杂,例如大多数具有随机因素的复杂系统。
这些系统中的随机性因素很多,一些因素很难甚至不可以用准确的数学公式表述,从而无法对整个系统采用数学解析法求解。
这类实际问题往往可以用模拟的方法解决。
模拟主要针对随机系统进行。
当然,也可以用于确定性系统。
本文讨论的重点是其中的随机模拟。
采用模拟技术求解随机模型,往往需要处理大批量的数据。
因此,为了加速模拟过程,减少模拟误差,通常借助于计算机进行模拟,因此又称为计算机模拟。
计算机模拟就是在已经建立起的数学、逻辑模型的基础之上,通过计算机试验,对一个系统按照一定的决策原则或作业规则,由一个状态变换为另一个状态的行为进行描述和分析。
** 模拟的步骤整个模拟过程可以划分为一定的阶段,分步骤进行。
(1)明确问题,建立模型。
在进行模拟之前,首先必须正确地描述待研究的问题,明确规定模拟的目的和任务。
确定衡量系统性能或模拟输出结果的目标函数,然后根据系统的结构及作业规则,分析系统各状态变量之间的关系,以此为基础建立所研究的系统模型。
为了能够正确反映实际问题的本质,可先以影响系统状态发生变化的主要因素建立较为简单的模型,以后再逐步补充和完善。
(2)收集和整理数据资料。
模拟技术的正确运用,往往要大量的输入数据。
在随机模拟中,随机数据仅靠一些观察值是不够的。
应当对具体收集到的随机性数据资料进行认真分析。
确定系统中随机性因素的概率分布特性,以此为依据产生模拟过程所必需的抽样数据。
(3)编制程序,模拟运行。
选择适当的计算机语言。
按照系统的数学、逻辑模型编写计算机程序。
然后可以进行调试性模拟,分析模拟结果是否能够正确地反映现实系统的本质。
综合实验三 蒲丰投针问题实验一、实验目的1. 掌握几何概型、熟悉Monte Carlo 方法的基本思想;3.会用MATLAB 实现简单的计算机模拟二、实验内容在用传统方法难以解决的问题中,有很大一部分可以用概率模型进行描述.由于这类模型含有不确定的随机因素,分析起来通常比确定性的模型困难.有的模型难以作定量分析,得不到解析的结果,或者是虽有解析结果,但计算代价太大以至不能使用.在这种情况下,可以考虑采用Monte Carlo 方法。
下面通过例子简单介绍Monte Carlo 方法的基本思想.Monte Carlo 方法是计算机模拟的基础,它的名字来源于世界著名的赌城——摩纳哥的蒙特卡洛,其历史起源于1777年法国科学家蒲丰提出的一种计算圆周π的方法——随机投针法,即著名的蒲丰投针问题。
这一方法的步骤是:1) 取一张白纸,在上面画上许多条间距为d 的平行线,见图8.1(1)2) 取一根长度为()l l d <的针,随机地向画有平行直线的纸上掷n 次,观察针与直线相交的次数,记为m3)计算针与直线相交的概率.由分析知针与平行线相交的充要条件是 ϕs i n 21≤x 其中πϕ≤≤≤≤0,20d x 建立直角坐标系),(x ϕ,上述条件在坐标系下将是曲线所围成的曲边梯形区域,见图 8.l (2).由几何概率知(*)22s i n 210d l d d G g p ππϕϕπ===⎰的面积的面积 4)经统计实验估计出概率,n m P ≈由(*)式即?2=⇒=ππd l n m Monte Carlo 方法的基本思想是首先建立一个概率模型,使所求问题的解正好是该模型的参数或其他有关的特征量.然后通过模拟一统计试验,即多次随机抽样试验(确定m 和n ),统计出某事件发生的百分比.只要试验次数很大,该百分比便近似于事件发生的概率.这实际上就是概率的统计定义.利用建立的概率模型,求出要估计的参数.蒙特卡洛方法属于试验数学的一个分支.问题:(1) 经过n次试验后圆周率估计与的圆周 之间的差的绝对值的规律是?其中n分别取100,1000,2000,5000,10000,20000,50000(2) 参数l,d的不同选择,会对圆周率的估计有什么影响?可以选择d为l.5倍,2倍,3倍,4倍,5倍,8倍,10倍,20倍,50倍三、实验要求写出实验步骤、结果显示及分析四、实验分析以x 表示针的中点与最近一条平行线的距离,以j表示针与此线间的交角.显然0≤x≤a/20≤j≤p针与平行线相交的充要条件是x≤lsin(j)/2因(x,j)在图(4)中下面的矩形中等可能地取点,可见针与平行线相交的概率p 为图(4)正弦曲线线段与横轴围成的面积同图(4)中矩形面积的比.经计算得p= 另一方面得到如大量得投针实验,利用大数定理知:随着实验次数的增加,针与平行线相交的频率依概率收敛到概率p.那么在上式中以频率代替相应的概率p,则可以获得圆周率p的近似值.下面的程序是用matlab语言编写的计算机模拟投针以计算p 的近似值的程序.五、实验步骤1.编写MATLAB程序cleard=2l=0.5counter=0n=100x=unifrnd(0,d/2,1,n)fi=unifrnd(0,pi,1,n)for i=1:nif x(i)<1*sin(fi(i))/2counter=counter+1endendfren=counter/npihat=2*1/(d*fren)sqrt((pihat-pi)^2)结果显示:fren = 0.3300pihat =3.0303ans =0.1113以此类推:将n=1000,2000,5000,10000,20000,50000分别代入,可得:当n=1000时,fren =0.3240pihat =3.0864ans =0.0552当n=2000时,fren =0.3230pihat =3.0960ans =0.0456当n=5000时,fren =0.3204pihat =3.1211ans =0.0205当n=10000时,fren =0.3190pihat =3.1348ans =0.0068当n=20000时,fren =0.3172pihat =3.1521ans =0.0105当n=50000时,fren =0.3177pihat =3.1478ans =0.00622.改变d的取值,分别为1.5,2 ,3 ,4,5,8,10,20,50倍仍用1中的程序:cleard=3l=0.5counter=0n=100x=unifrnd(0,d/2,1,n)fi=unifrnd(0,pi,1,n)for i=1:nif x(i)<1*sin(fi(i))/2counter=counter+1endendfren=counter/npihat=2*1/(d*fren)sqrt((pihat-pi)^2)结果显示:d为1.5倍时fren =0.2300pihat =2.8986ans =0.2430d为2倍时fren =0.1700pihat =2.9412ans =0.2004d为3倍时fren =0.1100pihat =3.0303ans =0.1113d为4倍时fren =0.0800pihat =3.1250ans =0.0166d为5倍时fren =0.0600pihat =3.3333ans =0.1872d为8倍时fren =0.0400pihat =3.1250ans =0.0211d为10倍时fren =0.0300pihat =3.3333ans =0.1872d为20倍时fren =0.0100pihat =5ans =1.8539d为50倍时fren =0pihat =Infans =Inf六、结果分析1.经过n次试验后圆周率估计与的圆周π之间的差的绝对值的规律是:n的次数取值越多,圆周率估计与的圆周π之间的差的绝对值越小:圆周率越接近真值。
蒲丰问题与蒙特卡罗方法蒲公英——问题解决之良方;蒙特卡罗——数学精妙在此聚首。
蒲丰问题与蒙特卡罗方法是此前一直以来在统计学、学、社会学、商业学、教育学等不同学科中都非常热门的研究主题,它们也紧密联系在一起。
这篇文章中,将要讨论蒲丰问题与蒙特卡罗方法的内容和它们之间的关系。
一、蒲丰问题蒲丰问题是由博弈论学家Robert F.Pufet于1941 年提出的一个关于定量推理的问题,也是这一学科的早期的文献的一部分。
问题主要解释了通过使用定量理论处理各种不可预知的社会行为和变化。
蒲丰问题涉及对不同公司在不同时期进行价格水平、受欢迎程度、技术水平和其他重要因素的多变量考虑,考虑所有可能影响公司业绩的因素,使得各公司由者的选择决定其未来的地位,以及各公司之间的竞争关系。
二、蒙特卡洛方法蒙特卡罗方法也称模拟方法,是一种仿真技术,它能够对复杂系统中不可预料的事件进行模拟,研究决策理论,可以用来衡量伦理、风险和效用等等方面的影响。
实际上,它是一种抽象研究手段,能够将复杂的问题转换成可计算的形式,并且可以在有限的时间内运行快速完整的仿真模型,为进行有关决策的分析提供重要的依据。
三、蒲丰问题与蒙特卡罗方法的联系蒲丰问题与蒙特卡罗方法之间的关系非常密切,因为它们都可以用来模拟和研究企业决策、市场变化以及其他业绩因素。
从蒲丰问题中可以得出复杂的变量,包括公司表现、行业环境和市场趋势等,而蒙特卡罗方法可以模拟这些因素对于结果的影响,并且可以采取正确的策略以应对不确定性。
因此,通过将蒲丰问题与蒙特卡罗方法相结合,就可以得出根据不同的情况和态势,采取正确的管理策略和决策措施。
总之,蒲丰问题和蒙特卡罗方法二者有着密切的联系,它们影响着公司行为,从而使公司 and 决策能够更为恰当。
他们不仅可以帮助我们了解企业发展过程,而且可以模拟未来的变化,为采取正确的决策、策略、行动措施提供重要的参考。
Buffon投针问题摘要本文讨论了Buffon投针问题的解法及其不同解法之间的内在联系,同时从投针到投平面图形对Buffon投针问题给出了一些推广,并得到一般的结论,指出了其概率在探矿、近似计算中的应用。
关键词蒲丰投针概率随机试验近似计算一、引言蒲丰投针问题是由法国科学家蒲丰(Buffon)在1777年提出的,它是概率中非常有代表性的问题,它是第一个用几何形式表达概率问题的例子,其结论具有很强的理论与实际意义。
蒲丰针问题的解决不仅较典型的反应了集合概率的特征及处理方法,而且还可以由此领略到从“概率土壤”上开出的一朵瑰丽的鲜花——蒙特卡洛(Monte-Carlo)方法。
二、Buffon投针问题及其解法Buffon投针问题:平面上画有等距离的平行线,每两条平行线之间的距离为2a,向平面任意投掷一枚长为2l(l<a)的针,试求针与平行线相交的概率。
解:以x表示针的中点M到最近一条平行线的距离,以φ表示该针与平行线的夹角。
针与平行线的关系见图1.则有:0≤x≤a,0≤φ≤π,由它们所围成的矩形区域记为G1。
针与平行线相交的充要条件是:0≤x≤lsinφ,记满足这个关系的区域为g1(图2中的阴影部分)。
则所求概率为P1=g1的面积G1的面积=∫lsinφdφπaπ=2laπ三、Buffon投针问题不同解法及其内在联系上述解法是常见解法之一(记为解法一),这里讨论一下蒲丰针问题的其他解法及其之间的联系。
1.其他解法解法二:以x表示针的重点M到最近一条平行线的距离,y表示该针在此平行线上投影和长度,如图3所示。
易知x和y的取值范围是0≤x≤a,0≤y≤2l,这两个不等式确定了xOy平面上的矩形区域G2,针与平行线相交的充要条件是(y2)2+x2≤l2,该不等式确定了矩形区域G2(如图4所示)中的区域g2,从而所求概率为P2=g2的面积G2的面积=14·l·2l·π2l·a=lπ4a解法三:作垂直于平行线的直线,在该直线上选定一方向为正向,用z1,z2分别表示针头与针尾关于某平行线的纵坐标(如图5所示),该平行线的选取应使|z1+z2|≤2a。
蒲丰投针与蒙特卡洛(Monte —Carlo)方法1777年法国科学家蒲丰(Buffon )提出并解决了如下的投针问题:桌面上画有一些平行线,它们之间的距离都是,一根长为a )(a l l ≤的针随机地投在桌面上。
问:此针与任一直线相交的概率是多少?设表示针的中点到最近的一条平行线的距离,Y 表示针与平行线的夹角(如图),如果X 2sin l Y X <, 或Y lX sin 2<时,针与一条直线相交。
由于向桌面投针是随机的,所以用来确定针在桌面上位置的是二维随机向量。
并且在),(Y X X ⎟⎠⎞⎜⎝⎛2,0a 上服从均匀分布,在Y ⎟⎠⎞⎜⎝⎛2,0π上服从均匀分布,与Y 相互独立。
由此可以写出的联合概率密度函数:X ),(Y X⎪⎩⎪⎨⎧<<<<=其它20,204),(ππy ax ay x f 于是,所求概率为:∫∫∫∫===⎭⎬⎫⎩⎨⎧<<20sin 20sin 224),(sin 2πππal dxdy adxdy y x f Y l X P y ly lx ①由于最后的结果与π有关,因此有些人想利用它来计算π的值。
其方法是向桌面投针次,若针与直线相交次,则针与直线相交的频率为n k n k ,以频率代替概率,则有al n k π2=,所以aknl2=π。
下表列举了这些试验的有关资料。
投针试验的历史资料(折算为1)a 试验者 年份 针长投针次数n 相交次数k π的试验值Wolf 1850 0.85000 2532 3.1596 Smith1855 0.63204 1219 3.1554 De.Morgan 1860 1600 383 3.137 Fox 1884 0.751030 489 3.1595 Lazzerini 1901 0.833408 1801 3.1415929 Reina1925 0.5425208593.1795这个思路已被人们发展成为统计学的一个分支—随机试验法或称为蒙特卡洛(Monte—Carlo )方法,其中随机试验可借助计算机大量重复,以致结果更接近真值。
蒲丰投针与蒙特卡洛(Monte —Carlo)方法
1777年法国科学家蒲丰(Buffon )提出并解决了如下的投针问题:桌面上画有一些平行线,它们之间的距离都是,一根长为a )(a l l ≤的针随机地投在桌面上。
问:此针与任一直线相交的概率是多少?
设表示针的中点到最近的一条平行线的距离,Y 表示针与平行线的夹角(如图),如果
X 2sin l Y X <, 或Y l
X sin 2
<时,针与一条直线相交。
由于向桌面投针是随机的,所以用来确定针在桌面上位置的是二维随机
向量。
并且在),(Y X X ⎟⎠⎞⎜⎝⎛2,0a 上服从均匀分布,在Y ⎟⎠⎞
⎜⎝⎛2,0π上服从均匀分布,与Y 相互独立。
由此可以写出的联合概率密度函数:
X ),(Y X
⎪⎩⎪
⎨⎧<<<
<=其它
20,204
),(ππy a
x a
y x f 于是,所求概率为:
∫∫
∫∫
=
=
=
⎭
⎬⎫
⎩⎨⎧<<20sin 20sin 2
24),(sin 2π
ππa
l dxdy a
dxdy y x f Y l X P y l
y l
x ①
由于最后的结果与π有关,因此有些人想利用它来计算π的值。
其方法是向桌面投针
次,若针与直线相交次,则针与直线相交的频率为n k n k ,以频率代替概率,则有a
l n k π2=,所以ak
nl
2=
π。
下表列举了这些试验的有关资料。
投针试验的历史资料(折算为1)
a 试验者 年份 针长投针次数n 相交次数k π的试验值
Wolf 1850 0.85000 2532 3.1596 Smith
1855 0.6
3204 1219 3.1554 De.Morgan 1860 1
600 383 3.137 Fox 1884 0.751030 489 3.1595 Lazzerini 1901 0.833408 1801 3.1415929 Reina
1925 0.54
2520
859
3.1795
这个思路已被人们发展成为统计学的一个分支—随机试验法或称为蒙特卡洛(Monte—Carlo )方法,其中随机试验可借助计算机大量重复,以致结果更接近真值。
目前,蒙特卡洛方法广泛地应用于市场预测、证券投资、金融与保险行业,在计算机高度普及的今
①
这个概率也可以通过几何型概率来计算。
天,有着广阔的应用前景。
在随机模拟(蒙特卡洛方法)中,经常要产生正态分布的随机数,但一般计算机只具备产生区间(0,1)上的均匀分布的随机数(常称为伪随机数)的软件,怎样通过均匀分布的随机数来产生正态分布的随机数呢?利用中心极限定理可以获得正态分布(已知)的随机数。
具体做法如下:
),(2σµN )1,0(U ),(2σµN ),(2σµN 2,σµ(1)从计算机中产生均匀分布的随机数30个(当然,也可以是任意个,m 越
大越好,主要是符合中心极限定理的条件),记为;由于)1,0(U m 3021,,,u u u "2
1
)(=i u E ,
)30,,2,1(121
)("==i u D i 根据中心极限定理,可以认为
近似服从均值为∑=30
1
i i u 153021
=×,方
差为
5.23012
1
=×的正态分布。
(2)计算:5.2)
15(3021−+++=u u u v ",由中心极限定理,它可以看作是来自标准正态
分布的一个随机数;
)1,0(N (3)变换:v x σµ+=,由正态分布的性质可知,它可以看作是来自正态分布的一个随机数。
)
,(2σµN 重复以上步骤,即可得到正态分布的一组随机数。
这种做法的理论根据就是中心极限定理。
),(2σµN 蒙特卡罗(Monte Carlo )方法,或称计算机随机模拟方法,是一种基于“随机数”的计算方法。
这一方法源于美国在第一次世界大战间研制原子弹的“曼哈顿计划”。
该计划的主持人之一、数学家冯·诺伊曼用驰名世界的赌城—摩纳哥的Monte Carlo —来命名这种方法,为它蒙上了一层神秘色彩。
Monte Carlo 方法的基本思想很早以前就被人们所发现和利用。
早在17世纪,人们就知道用事件发生的“频率”来决定事件的“概率”。
19世纪人们用投针试验的方法来决定圆周率π。
二十世纪40年代电子计算机的出现,特别是近年来高速电子计算机的出现,使得用数学方法在计算机上大量、快速地模拟这样的试验成为可能。
考虑平面上的一个边长为1的正方形及其内部的一个形状不规则的“图形”,如何求出这个“图形”的面积呢?Monte Carlo 方法是这样一种“随机化”的方法:向该正方形“随机地”投掷个点有N M 个点落于“图形”内,则该“图形”的面积近似为。
N M /可用民意测验来作一个不严格的比喻。
民意测验的人不是征询每一个登记选民的意见,而是通过对选民进行小规模的抽样调查来确定可能的优胜者。
其基本思想是一样的。
科技计算中的问题比这要复杂得多。
比如金融衍生产品(期权、期货、掉期等)的定价及交易风险估算,问题的维数(即变量的个数)可能高达数百甚至数千。
对这类问题,难度随维数的增加呈指数增长,这就是所谓的“维数的灾难”(Course Dimensionality ),传统的数值方法难以对付(即使使用速度最快的计算机)。
Monte Carlo 方法能很好地用来对付维数的灾难,因为该方法的计算复杂性不再依赖于维数。
以前那些本来是无法计算的问题现在也能够计算。
为提高方法的效率,科学家们提出了许多所谓的“方差缩减”技巧。
另一类形式与Monte Carlo 方法相似,但理论基础不同的方法—“拟蒙特卡罗方法”(Quasi-Monte Carlo 方法)—近年来也获得迅速发展。
我国数学家华罗庚、王元提出的
“华—王”方法即是其中的一例。
这种方法的基本思想是“用确定性的超均匀分布序列(数学上称为Low Discrepancy Sequences)代替Monte Carlo方法中的随机数序列。
对某些问题该方法的实际速度一般可比Monte Carlo方法提出高数百倍,并可计算精确度。
评注:
1、理论依据:
利用二维随机变量的联合分布计算相关的概率(与π有关),据此进行模拟求出π的近似值;根据中心极限定理模拟正态分布的随机数。
2、应用与推广
建立一个与我们感兴趣的量(这里是π)有关的概率模型,然后设计适当的随机试验,通过实验的结果来确定这个量。
依照这样的思路,利用计算机技术,已经建立起一类称为随机试验法或蒙特卡罗(Monte—Carlo)法的计算机模拟方法,目前这种方法已广泛应用到经济管理当中。
参考文献:
谢国瑞等.概率论与数理统计[M].高等教育出版社.2002.8.
茆诗松等.概率论与数理统计[M].中国统计出版社.2000.7.。