文档库 最新最全的文档下载
当前位置:文档库 › 蒙特卡罗方法简介

蒙特卡罗方法简介

蒙特卡罗方法简介
蒙特卡罗方法简介

第三章蒙特卡罗方法简介

3.1 Monte Carlo方法简介

Monte Carlo方法是诺斯阿拉莫斯实验室在总结其二战期间工作(曼哈顿计划)的基础上提出来的。Monte Carlo的发明,主要归功于Enrico Fermi、Von Neumann和Stanislaw Ulam等。自二战以来,Monte Carlo方法由于其在解决粒子输运问题上特有的优势而得到了迅速发展,并在核物理、辐射物理、数学、电子学等方面得到了广泛的应用。Monte Carlo的基本思想就是基于随机数选择的统计抽样,这和赌博中掷色子很类似,故取名Monte Carlo。

Monte Carlo方法非常适于解决复杂的三维问题,对于不能用确定性方法解决的问题尤其有用,可以用来模拟核子与物质的相互作用。在粒子输运中,Monte Carlo技术就是跟踪来自源的每个粒子,从粒子产生开始,直到其消亡(吸收或逃逸等)。在跟踪过程中,利用有关传输数据经随机抽样来决定粒子每一步的结果[6]。

3.2 Monte Carlo发展历程

MCNP程序全名为Monte Carlo Neutron and Photon Transport Code (蒙特卡罗中子-光子输运程序)。Monte Carlo模拟程序是在1940年美国实施“发展核武器计划”时,由洛斯阿拉莫斯实验室(LANL)提出的,为其所投入的研究、发展、程序编写及参数制作超过了500人年。1950年Monte Carlo方法的机器语言出现, 1963年通用性的Monte Carlo方法语言推出,在此基础上,20世纪70年代中期由中子程序和光子程序合并,形成了最初的MCNP程序。自那时起,每2—3年MCNP更新一次, 版本不断发展,功能不断增加,适应面也越来越广。已知的MCNP程序研制版本的更新时间表如下:MCNP-3:1983年写成,为标准的FORTRAN-77版本,截面采用ENDF /B2III。

MCNP-3A:1986年写成,加进了多种标准源,截面采用ENDF /B2I V[20]。

MCNP-3B::1988年写成具有阵列几何处理能力(即重复结构描述),多群截面和计数输出的图形化功能,截面采用ENDF /B2I V和ENDL2 851。

MCNP-4::1990年7月由LANL写成,截面采用ENDF /B2V。

MCNP-4.2:1991年3月由ORNL的RSIC写成,程序有较大改进,增加了基于Sandia国家实验室的ITS( Integrated Tiger Series)-连续能量电子输运包,将其编入MCNP程序,专用于UNIX系统,从此MCNP程序成为中子/光子/电子耦合输运程序。

MCNP-4A:1993年诞生,仍为UNIX系统,开始引入PVM并行,适合共享存储并行计算机,截面为ENDF/B2 V。

MCNP-4B:1997年3月正式推出,有PC版(需要LAHEY编译系统支持) ,UNIX版,采用ENDF/B2VI截面库和彩色图形系统,仍采用PVM并行编程。

MCNP-4B2:为MCNP-4B的升级版,其支持FORTRAN-90系统。

MCNP-4C:2000正式推出,在MCNP-4B基础上增加共振自屏、瞬发α本征值、微扰和多群伴随中子输运计算等处理,采用F90编译器,工作站版本支持PVM和SMPP并行。

MCNP-5:2003年推出。在这个版本中,完成了从FORTRAN-77到 FORTRAN-90的重新组织,支持以前的MCNP-4C2 /4C3全部功能,同时在提高

图形显示,易安装性以及更好的在线文档方面有较大改善。

另外,在MCNP系列版本中,出现MCNPX版本,该版本程序仍为该实验室研制,并由其负责维护和更新。MCNPX开始于1994年,作为MCNP-4B和LAHET-2 . 8的代码整合项目,并第1次在1999年对外发布,版本为2 .1 .5。2002年, MCNPX升级为MCNP- 4C,其变化包括支持FORTRAN-90系统,加强了12种新特性,并作为2.4.0版本对外发布。自从2002年开始,MCNPX测试组向全球300个机构中的1400多名用户进行公开测试,在加入了数10个新特性后作为2.5.0版对外发布。MCNPX现在已经成为世界上使用最为广泛的粒子输运程序之一[7]。

3.3 MCNP-3B/PC的输入文件

表3.1 MCNP输入数据物理量的单位

物理量

单位 物理量 单位 长度

cm 能量 MeV 时间

刹(810 ) 温度 MeV 原子密度

2410个原子/3cm 质量密度 g/3cm 截面 巴(bar ) 3.3.1 初始运行的输入文件

这一文件用于建立一个蒙特卡罗计算问题,对问题的几何结构、材料、计数要求等等给以描述,如果需要,便可直接运行。该文件按书写顺序包括如下内容: 信息块卡 该项是选择性的;可有可无。

(空行分隔)

标题卡

栅元描述卡

(空行分隔)

曲面描述卡

(空行分隔)

数据卡

(空行分隔)

其它卡 选择项

其中的标题卡不可省去,它限于一行,且占用 1-80 列,它作为 MCNP 各部分输出表的标题使用。 数据卡后面不管有没有空行分隔符, MCNP 都能运行, 不同的是如果数据卡后向有至行分隔符,则MCNP 将不再读后面的附加行(附加行存在) 。附加行一般为这个问题的说明或者是与这个输入文件本身有关的信息。那么,该空行分隔行能防止读入这些附加信息。

3.3.2 卡片书写格式

INP 文件中的每一行(我们称之为一张卡片) ,都限于使用 1-80 列并构成卡片映象。大部分输入卡片按行填写;然而,数据卡片也允许按列填写。 “$”

符号为它所在行数据的结束符号。在“$”符号后面的内容为注释内容,注释内容可从“$”符号后的任一列开始。标题卡例外,它只限于一行,整行都可填入用户的信息,即使全部空白也可(在输入文件的其余部分,空白卡则作分界符或终止符使用)。标题卡通常给出特定计算问题的信息。输入文件中,在标题卡之后及最后的空白结束卡之前,任何地方都可插入注释卡。注释卡的第一列必须标有字母“c”,且后面跟 4 个空格,第 6-80 列供用户填入任何注释内容。注释卡仅在输入文件内容的原型输出部分印出,输出文件的其它任何部分不再出现。FCn卡也是作为注释用的,但它将作为记数类型 n 的表头文字印出,比如可作为记数的标题出现。SCn 卡也是作为注释用的,但它将作为源概率分布 n 的表头文字印出。

l.行输入格式

栅元卡、曲面卡及数据卡的书写格式是相同的。第 l-5 列填写这些卡片相应的名字(或序号),而且可以写在 1-5 列的任何地方。如果 1-5 列为空白,则表示它是前一张卡片的继续卡。(完全的空白卡则作为两组卡片的分界符使用)。带有粒子标识符的卡可需要 5 列以上,但冒号必须写在第 6 列以前(包含第 6 列)。6-80 列是用自由格式填写 1-5 列卡片有关的数据项。填入的数据项之间均以空格(一个或多个)作为分隔。一般讲,填入的数据可以是任何类型,定点数、浮点数及八进制数等等,MCNP会根据所送入的变量类型进行适当转换。需要整数输入的地方必须填写整数。一个数据项必须在一张卡片上写完,不得跨到下一张卡片上。

2.列输入格式

列输入格式对于栅元参数和源分布是特别有用的。按行排列的栅元重要性或体积可读性差,并且当用户增加或删除栅元参数时容易出错。用列输入格式,一个栅元的所有栅元参数是放在标有这个栅元名字的那行上。如果要删除某个栅元参数,用户只需删除栅元参数这一行,而不需在每一个栅元参数卡上寻找属于该栅元的数据项。对源描述,相应 SI、SP及 SB的数据逐个放在每一行上。

3.3.3 栅元描述的一般卡片格式

格式: j m d geom params

j:栅元的题目序号,写在第 1-5 列,1≦j≦99999。“题目序号”是指由用户按任意所希望的次序选定的序号,在一个文件中,可以不连续。然而 MCNP 将按照读入的顺序对栅元进行编号,从 1 开始按增量为 1 单调上升。我们将此称之为栅元的“程序编号”。必须明白题目编号与程序编号的区别,因为后面叙述的一些卡片将会引用到这种或那种编号。不过多数情况下,用户给出的序号往往与程序编号一致,这也是避免混乱,减少错误的最可靠方法。

m:栅元的材料号,它是材料卡(Mm)中相应材料的序号。真空栅元,m=0。

d:栅元材料的密度。填入正值时,表示是原子密度(单位为 1024个原子/cm3);填入负值时,则是质量密度(单位为 gm/cm3)。对于真空栅元,该项不填,直接列出下一项内容。

geom:栅元的几何描述。它列出界定该栅元的所有曲面号(带有数将,表示坐向),及描述这些曲面所定义的曲面之间关系的布尔算符,布尔算将包括交(Intersection),用一个空格表示;联(Union),用“:”号表示;余(Complement),用“#”表示。这里所说的曲面号及栅元号都指的是题目编号。如果定义该栅元要用到一个虚设曲面,则它必须作为界定该概元的一个曲面列出(同样带有坐向数符)。

param:任选的栅元参数说明,其形式为:关键词=数值。

3.3.4 源的描述卡

对每一个 MCNP 问题都有四个源中的一个。四个源包括:①通用源(SDEF 卡);

②曲面源(SSR 卡);③临界源(KCODE 卡);④用户提供的源。除了临界源之外,其它源都能使用源分布函数,分布函数分别由 SIn、SPn、SBn 和 DSn 卡指定。

下列卡片用于指定源的信息:

助记名(1-5列)卡片内容助记名(1-5列)卡片内容SDEF 通用源SCn 源注释

SIn 源信息SSW 写曲面源

SPn 源概率SSR 读曲面源

SBn 源偏倚KCODE 迭代源

DSn 相关源KSRC 源的一些特点在一些情况下,MODE 卡也作为源描述部分来说明从源出发粒子的隐含类型。对源粒子的描述应包括如下信息:

i)几何位置(xxx,yyy,zzz);

ii)飞行方向(uuu,vvv,www)

iii)能量(ERG);

iv)开始时间(TME);

v)粒子类型(IPT);

vi)粒子统计权重(WGT);

vii)粒子开始栅元(ICL);

viii)粒子开始曲面(JSU),如果开始点不在曲面上该值为0。

如果对点探测器或者 DXTRAN球的问题还必须定义另外一些变量。源粒子的类型(中子或光子)则自动由 MODE 卡指定了。上述变量的任何一个都可能有一个概率分布。源粒子若出生在重要性为“0”的栅元,则是一个致命性错误。

3.3.5 FSn分段记数卡(记数类型 1,2,4,6,7)

格式: FSn S1 S2 … Sk

n:记数号;

Si:带数符的分段曲面的题目编号。

此卡不用于探测器。可以要求 Sdn 卡。该卡允许用户把一个栅元或曲面分成若干段来记数,其优点在于不必专为记数设置额外的栅元。在 FSn 卡上指定的分段曲面应与正规的问题曲面一起列出曲面描述卡,但它们不一定是实际几何的组成部分。因此无需按栅元与曲面间的关系把它们考虑得很复杂。

如果在FSn卡上填写k个曲面,就把曲面或栅元分成了k+1段。按照在 FSn 卡上列出的分段曲面的次序和坐向把记数n分成k+l段记数箱。采用分段记数时,通常只给出每段的结果,当在FSn卡末尾加上“T”时,则增加一个总的记数箱,同时给出整个曲面或栅元上的记数。分段是按如下方法做的:

Fn:n S(或C)

FSn S1 S2 … Sk

在曲面S(或栅元C)上的记数n将被FSn卡分成k+l个箱:

(1)相对曲面S1的坐向与数符相同的部分;

(2)相对曲面S2的坐向与数符相同的部分,但在其他段上记录过的除外;

…………

(k)相对曲面Sk的坐向与数符相同的部分,但在其他段上记录过的除外;(k+1)S(或C)上所有其余部分;

(k+2)如果在FSn卡末尾加上字符T,将给出整个曲面或栅元上的记数。

3.3.6 SDn分段除数卡(记数类型 1,2,4,6,7)

格式:SDn (D11 D12 … D1m)(D21 D22 … D2m)…(Dk1 Dk2 … Dkm) n:记数号;

k:Fn卡上的栅元或曲面个数,包括 T(如果存在);

m:FSn 卡上分割的箱数,包括剩余部分,如果FSn卡上有 T,也包括总的部分;

Dij:供记数n的第i个曲面或栅元的第j段的面积、体积或质量。括号是选择的。如果缺省此卡,若对栅元或曲面不分段,既没有给出 VOL 卡或 AREA 卡,并且 MCNP也不能自动计算体积或面积;或者对栅元或曲面分成段,但MCNP 也不能自动计算体积或面积;均将产生致命错误(记数类型 1 除外)[6]。

浅析蒙特卡洛方法原理及应用

浅析蒙特卡洛方法原理及应用 于希明 (英才学院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)。首先根据各随机变量的相应分布,产生N组随机数x1,x2,…,xk值,计算功能函数值Zi=g(x1,x2,…,xk)(i=1,2,…,N),若其中有L组随机数对应的功能函数值Zi≤0,则当N→∞时,根据伯努利大数定理及正态随机变量的特性有:结构失效概率,可靠指标。 二、蒲丰投针问题 作为蒙特卡洛方法的最初应用, 是解决蒲丰投针问题。1777 年, 法国数学家蒲丰提出利用投针实验求解圆周率的问题。设平面上等距离( 如为2a) 画有一些平行线, 将一根长度为2l( l< a) 的针任意投掷到平面上, 针与任一平行线相交的频率为p 。针的位置可以用针的中心坐标x 和针与平行线的夹角θ来决定。任意方向投针, 便意味着x与θ可以任意取一值, 只是0≤x ≤a, 0≤θ≤π。那么, 投针与任意平行线相交的条件为x ≤ l sinθ。相交频率p 便可用下式求

蒙特卡洛方法

蒙特卡洛方法 1、蒙特卡洛方法的由来 蒙特卡罗分析法(Monte Carlo method),又称为统计模拟法,是一种采用随机抽样(Random Sampling)统计来估算结果的计算方法。由于计算结果的精确度很大程度上取决于抽取样本的数量,一般需要大量的样本数据,因此在没有计算机的时代并没有受到重视。 第二次世界大战时期,美国曼哈顿原子弹计划的主要科学家之一,匈牙利美藉数学家约翰·冯·诺伊曼(现代电子计算机创始人之一)在研究物质裂变时中子扩散的实验中采用了随机抽样统计的手法,因为当时随机数的想法来自掷色子及轮盘等赌博用具,因此他采用摩洛哥著名赌城蒙特卡罗来命名这种计算方法,为这种算法增加了一层神秘色彩。 蒙特卡罗方法提出的初衷是用于物理数值模拟问题, 后来随着计算机的快速发展, 这一方法很快在函数值极小化、计算几何、组合计数等方面得到应用, 于是它作为一种独立的方法被提出来, 并发展成为一门新兴的计算科学, 属于计算数学的一个分支。如今MC方法已是求解科学、工程和科学技术领域大量应用问题的常用数值方法。 2、蒙特卡洛方法的核心—随机数 蒙特卡洛方法的基本理论就是通过对大量的随机数样本进行统计分析,从而得到我们所需要的变量。因此蒙特卡洛方法的核心就是随机数,只有样本中的随机数具有随机性,所得到的变量值才具有可信性和科学性。

在连续型随机变量的分布中, 最基本的分布是[0, 1]区间上的均匀分布, 也称单位均匀分布。由该分布抽取的简单子样ξ1,ξ2ξ3……称为随机数序列, 其中每一个体称为随机数, 有时称为标准随机数或真随机数, 独立性和均匀性是其必备的两个特点。真随机数是数学上的抽象, 真随机数序列是不可预计的, 因而也不可能重复产生两个相同的真随机数序列。真随机数只能用某些随机物理过程来产生, 如放射性衰变、电子设备的热噪音、宇宙射线的触发时间等。 实际使用的随机数通常都是采用某些数学公式产生的,称为伪随机数。真随机数只是一种数学的理想化概念,实际中我们所接触到的和使用的都是伪随机数。要把伪随机数当成真随机数来使用, 必须要通过随机数的一系列的统计检验。 无论伪随机数用什么方法产生,它的局限性都在于这些随机数总是一个有限长的循环集合, 而且序列偏差的上确界达到最大值。所以若能产生低偏差的确定性序列是很有用的,产生的序列应该具有这样的性质, 即任意长的子序列都能均匀地填充函数空间。 人们已经产生了若干种满足这个要求的序列,如Halton序列、Faure序列、Sobol序列和Niederreiter序列等。称这些序列为拟随机数序列。伪随机序列是为了模拟随机性, 而拟随机序列更致力于均匀性。 3、蒙特卡洛方法的原理 当问题可以抽象为某个确定的数学问题时,应当首先建立一个恰当的概率模型,即确定某个随机事件A或随机变量X,使得待求的解等

蒙特卡罗方法简介

第三章蒙特卡罗方法简介 3.1 Monte Carlo方法简介 Monte Carlo方法是诺斯阿拉莫斯实验室在总结其二战期间工作(曼哈顿计划)的基础上提出来的。Monte Carlo的发明,主要归功于Enrico Fermi、Von Neumann和Stanislaw Ulam等。自二战以来,Monte Carlo方法由于其在解决粒子输运问题上特有的优势而得到了迅速发展,并在核物理、辐射物理、数学、电子学等方面得到了广泛的应用。Monte Carlo的基本思想就是基于随机数选择的统计抽样,这和赌博中掷色子很类似,故取名Monte Carlo。 Monte Carlo方法非常适于解决复杂的三维问题,对于不能用确定性方法解决的问题尤其有用,可以用来模拟核子与物质的相互作用。在粒子输运中,Monte Carlo技术就是跟踪来自源的每个粒子,从粒子产生开始,直到其消亡(吸收或逃逸等)。在跟踪过程中,利用有关传输数据经随机抽样来决定粒子每一步的结果[6]。 3.2 Monte Carlo发展历程 MCNP程序全名为Monte Carlo Neutron and Photon Transport Code (蒙特卡罗中子-光子输运程序)。Monte Carlo模拟程序是在1940年美国实施“发展核武器计划”时,由洛斯阿拉莫斯实验室(LANL)提出的,为其所投入的研究、发展、程序编写及参数制作超过了500人年。1950年Monte Carlo方法的机器语言出现, 1963年通用性的Monte Carlo方法语言推出,在此基础上,20世纪70年代中期由中子程序和光子程序合并,形成了最初的MCNP程序。自那时起,每2—3年MCNP更新一次, 版本不断发展,功能不断增加,适应面也越来越广。已知的MCNP程序研制版本的更新时间表如下:MCNP-3:1983年写成,为标准的FORTRAN-77版本,截面采用ENDF /B2III。 MCNP-3A:1986年写成,加进了多种标准源,截面采用ENDF /B2I V[20]。

蒙特卡罗方法(MC)

蒙特卡罗方法(MC) 蒙特卡罗(Monte Carlo)方法: 蒙特卡罗(Monte Carlo)方法,又称随机抽样或统计试验方法,属于计算数学的一个分支,它是在本世纪四十年代中期为了适应当时原子能事业的发展而发展起来的。 传统的经验方法由于不能逼近真实的物理过程,很难得到满意的结果,而蒙特卡罗方法由于能够真实地模拟实际物理过程,故解决问题与实际非常符合,可以得到很圆满的结果。这也是我们采用该方法的原因。 蒙特卡罗方法的基本原理及思想如下: 当所要求解的问题是某种事件出现的概率,或者是某个随机变量的期望值时,它们可以通过某种“试验”的方法,得到这种事件出现的频率,或者这个随机变数的平均值,并 用它们作为问题的解。这就是蒙特卡罗方法的基本思想。蒙特卡罗方法通过抓住事物运动的几何数量和几何特征,利用数学方法来加以模拟,即进行一种数字模拟实验。它是以一个概率模型为基础,按照这个模型所描绘的过程,通过模拟实验的结果,作为问题的近似解。可以把蒙特卡罗解题归结为三个主要步骤:构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。 蒙特卡罗解题三个主要步骤: 构造或描述概率过程: 对于本身就具有随机性质的问题,如粒子输运问题,主要是正确描述和模拟这个概率过程,对于本来不是随机性质的确定性问题,比如计算定积分,就必须事先构造一个人为的概率过程,它的某些参量正好是所要求问题的解。即要将不具有随机性质的问题转化为随机性质的问题。 实现从已知概率分布抽样: 构造了概率模型以后,由于各种概率模型都可以看作是由各种各样的概率分布构成的,因此产生已知概率分布的随机变量(或随机向量),就成为实现蒙特卡罗方法模拟实验的基本手段,这也是蒙特卡罗方法被称为随机抽样的原因。最简单、最基本、最重要的一个概率分布是(0,1)上的均匀分布(或称矩形分布)。随机数就是具有这种均匀分布的随机变量。随机数序列就是具有这种分布的总体的一个简单子样,也就是一个具有这种分布的相互独立的随机变数序列。产生随机数的问题,就是从这个分布的抽样问题。在计算机上,可以用物理方法产生随机数,但价格昂贵,不能重复,使用不便。另一种方法是用数学递推公式产生。这样产生的序列,与真正的随机数序列不同,所以称为伪随机数,或伪随机数序列。不过,经过多种统计检验表明,它与真正的随机数,或随机数序列具有相近的性质,因此可把它作为真正的随机数来使用。由已知分布随机抽样有各种方法,与从(0,1)上均匀分布抽样不同,这些方法都是借助于随机序列来实现的,也就是说,都是以产生随机数为前提的。由此可见,随机数是我们实现蒙特卡罗模拟的基本工具。 建立各种估计量: 一般说来,构造了概率模型并能从中抽样后,即实现模拟实验后,我们就要确定一个随机变量,作为所要求的问题的解,我们称它为无偏估计。建立各种估计量,相当于对模拟实验的结果进行考察和登记,从中得到问题的解。 例如:检验产品的正品率问题,我们可以用1表示正品,0表示次品,于是对每个产品检验可以定义如下的随机变数Ti,作为正品率的估计量: 于是,在N次实验后,正品个数为:

数学建模——蒙特卡洛简介

——蒙特卡洛方法(案例) 蒙特卡罗方法是一种计算方法。原理是通过大量随机样本,去了解一个系统,进而得到所要计算的值。 它非常强大和灵活,又相当简单易懂,很容易实现。对于许多问题来说,它往往是最简单的计算方法,有时甚至是唯一可行的方法。 它诞生于上个世纪40年代美国的"曼哈顿计划",名字来源于赌城蒙特卡罗,象征概率。

第一个例子是,如何用蒙特卡罗方法计算圆周率π。 正方形内部有一个相切的圆,它们的面积之比是π/4。 现在,在这个正方形内部,随机产生10000个点(即10000个坐标对 (x, y)),计算它们与中心点的距离,从而判断是否落在圆的内部。 如果这些点均匀分布,那么圆内的点应该占到所有点的π/4,因此将这个比值乘以4,就是π的值。通过R语言脚本随机模拟30000个点,π的估算值与真实值相差%。 上面的方法加以推广,就可以计算任意一个积分的值。 比如,计算函数 y = x2 在 [0, 1] 区间的积分,就是求出下图红色部分的面积。 这个函数在 (1,1) 点的取值为1,所以整个红色区域在一个面积为1的正方形里面。在该正方形内部,产生大量随机点,可以计算出有多少点落在红色区域(判断条件 y < x2)。这个比重就是所要求的积分值。

用Matlab模拟100万个随机点,结果为。 四、交通堵塞 蒙特卡罗方法不仅可以用于计算,还可以用于模拟系统内部的随机运动。下面的例子模拟单车道的交通堵塞。 根据 Nagel-Schreckenberg 模型,车辆的运动满足以下规则。 当前速度是 v 。 如果前面没车,它在下一秒的速度会提高到 v + 1 ,直到达到规定的最高限速。 如果前面有车,距离为d,且 d < v,那么它在下一秒的速度会降低到 d - 1 。 此外,司机还会以概率 p 随机减速,将下一秒的速度降低到 v - 1 。 在一条直线上,随机产生100个点,代表道路上的100辆车,另取概率 p 为。 左图中,横轴代表距离(从左到右),纵轴代表时间(从上到下),因此每一行就表示下一秒的道路情况。 可以看到,该模型会随机产生交通拥堵(图形上黑色聚集的部分)。这就证明了,单车道即使没有任何原因,也会产生交通堵塞。

蒙特卡罗 算法

1、蒙特卡罗定位 足球机器人中自定位方法是由Fox提出的蒙特卡罗定位。这是一种概率方法,把足球机器人当前位置看成许多粒子的密度模型。每个粒子可以看成机器人在此位置定位的假设。在多数应用中,蒙特卡罗定位用在带有距离传感器的机器人设备上,如激光扫描声纳传感器。只有一些方法,视觉用于自定位。在足球机器人自定位有些不同,因为机器人占的面积相对比较小,但是机器人所在位置的面积必须相当准确的确定,以便允许同组不同机器人交流有关场地物体信息和遵守比赛规则。这种定位方法分为如下步骤,首先所有粒子按照一起那机器人的活动的运动模型移动。概率pi取决于在感知模型的基础上所有粒子在当前传感器上的读数。基于这些概率,就提出了所谓的重采样,将更多粒子移向很高概率的采样位置。概率平均分布的确定用来表示当前机器人的位置的最优估计。最后返回开始。 2、蒙塔卡罗 基本思想 当所求解问题是某种随机事件出现的概率,或者是某个随机变量的期望值时,通过某种“实验”的方法,以这种事件出现的频率估计这一随机事件的概率,或者得到这个随机变量的某些数字特征,并将其作为问题的解。 工作过程 蒙特卡罗方法的解题过程可以归结为三个主要步骤:构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。 蒙特卡罗方法解题过程的三个主要步骤: (1)构造或描述概率过程 对于本身就具有随机性质的问题,如粒子输运问题,主要是正确描述和模拟这个概率过程,对于本来不是随机性质的确定性问题,比如计算定积分,就必须事先构造一个人为的概率过程,它的某些参量正好是所要求问题的解。即要将不具有随机性质的问题转化为随机性质的问题。 2)实现从已知概率分布抽样 构造了概率模型以后,由于各种概率模型都可以看作是由各种各样的概率分布构成的,因此产生已知概率分布的随机变量(或随机向量),就成为实现蒙特卡罗方法模拟实验的基本手段,这也是蒙特卡罗方法被称为随机抽样的原因。最简单、最基本、最重要的一个概率分布是(0,1)上的均匀分布(或称矩形分布)。随机数就是具有这种均匀分布的随机变量。随机数序列就是具有这种分布的总体的一个简单子样,也就是一个具有这种分布的相互独立的随机变数序列。产生随机数的问题,就是从这个分布的抽样问题。在计算机上,可以用物理方法产生随机数,但价格昂贵,不能重复,使用不便。另一种方法是用数学递推公式产生。这样产生的序列,与真正的随机数序列不同,所以称为伪随机数,或伪随机数序列。不过,经过多种统计检验表明,它与真正的随机数,或随机数序列具有相近的性质,因此可把它作为真正的随机数来使用。由已知分布随机抽样有各种方法,与从(0,1)上均匀分布抽样不同,这些方法都是借助于随机序列来实现的,也就是说,都是以产生随机数为前提的。由此可见,随机数是我们实现蒙特卡罗模拟的基本工具。 (3)建立各种估计量

蒙特卡罗法

蒙特卡罗方法 蒙特卡罗方法(Monte Carlo method) 目录 [隐藏] ? 1 蒙特卡罗方法概述 ? 2 蒙特卡罗方法的提出 ? 3 蒙特卡罗方法的基本思想 ? 4 蒙特卡罗方法的基本原理 ? 5 蒙特卡罗方法在数学中的应用 ? 6 蒙特卡罗方法的应用领域 ?7 蒙特卡罗方法的工作过程 ?8 蒙特卡罗方法分子模拟计算的步骤 ?9 蒙特卡罗模型的发展运用 ?10 项目管理中蒙特卡罗模拟方法的一般步骤 ?11 非权重蒙特卡罗积分 ?12 蒙特卡罗方法案例分析 o12.1 案例一:蒙特卡罗模型在投资项目决策中的开发应用[1] ?13 参考文献 [编辑] 蒙特卡罗方法概述 蒙特卡罗方法又称统计模拟法、随机抽样技术,是一种随机模拟方法,以概率和统计理论方法为基础的一种计算方法,是使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。将所求解的问题同一定的概率模型相联系,用电子计算机实现统计模拟或抽样,以获得问题的近似解。为象征性地表明这一方法的概率统计特征,故借用赌城蒙特卡罗命名。 [编辑] 蒙特卡罗方法的提出 蒙特卡罗方法于20世纪40年代美国在第二次世界大战中研制原子弹的“曼哈顿计划”计划的成员S.M.乌拉姆和J.冯·诺伊曼首先提出。数学家冯·诺伊曼用驰名世界的赌城—摩纳哥的Monte

Carlo—来命名这种方法,为它蒙上了一层神秘色彩。在这之前,蒙特卡罗方法就已经存在。1777年,法国Buffon提出用投针实验的方法求圆周率∏。这被认为是蒙特卡罗方法的起源。 [编辑] 蒙特卡罗方法的基本思想 Monte Carlo方法的基本思想很早以前就被人们所发现和利用。早在17世纪,人们就知道用事件发生的“频率”来决定事件的“概率”。19世纪人们用投针试验的方法来决定圆周率π。本世纪40年代电子计算机的出现,特别是近年来高速电子计算机的出现,使得用数学方法在计算机上大量、快速地模拟这样的试验成为可能。 考虑平面上的一个边长为1的正方形及其内部的一个形状不规则的“图形”,如何求出这个“图形”的面积呢?Monte Carlo方法是这样一种“随机化”的方法:向该正方形“随机地”投掷N个点,有M个点落于“图形”内,则该“图形”的面积近似为M/N。可用民意测验来作一个不严格的比喻。民意测验的人不是征询每一个登记选民的意见,而是通过对选民进行小规模的抽样调查来确定可能的优胜者。其基本思想是一样的。 科技计算中的问题比这要复杂得多。比如金融衍生产品(期权、期货、掉期等)的定价及交易风险估算,问题的维数(即变量的个数)可能高达数百甚至数千。对这类问题,难度随维数的增加呈指数增长,这就是所谓的“维数的灾难”(Curse of Dimensionality),传统的数值方法难以对付(即使使用速度最快的计算机)。Monte Carlo方法能很好地用来对付维数的灾难,因为该方法的计算复杂性不再依赖于维数。以前那些本来是无法计算的问题现在也能够计算量。为提高方法的效率,科学家们提出了许多所谓的“方差缩减”技巧。 另一类形式与Monte Carlo方法相似,但理论基础不同的方法—“拟蒙特卡罗方 法”(Quasi-Monte Carlo方法)—近年来也获得迅速发展。我国数学家华罗庚、王元提出的“华—王”方法即是其中的一例。这种方法的基本思想是“用确定性的超均匀分布序列(数学上称为Low Discrepancy Sequences)代替Monte Carlo方法中的随机数序列。对某些问题该方法的实际速度一般可比Monte Carlo方法提出高数百倍,并可计算精确度。 [编辑] 蒙特卡罗方法的基本原理 由概率定义知,某事件的概率可以用大量试验中该事件发生的频率来估算,当样本容量足够大时,可以认为该事件的发生频率即为其概率。因此,可以先对影响其可靠度的随机变量进行大量的随机抽样,然后把这些抽样值一组一组地代入功能函数式,确定结构是否失效,最后从中求得结构的失效概率。蒙特卡罗法正是基于此思路进行分析的。

蒙特卡罗方法地解地的题目过程可以归结为三个主要步骤

蒙特卡罗方法的解题过程可以归结为三个主要步骤:构造或描述概率过程;实现从已知概率分布抽样;建立各种估计量。 蒙特卡罗方法解题过程的三个主要步骤: (1)构造或描述概率过程 对于本身就具有随机性质的问题,如粒子输运问题,主要是正确描述和模拟这个概率过程,对于本来不是随机性质的确定性问题,比如计算定积分,就必须事先构造一个人为的概率过程,它的某些参量正好是所要求问题的解。即要将不具有随机性质的问题转化为随机性质的问题。 (2)实现从已知概率分布抽样 构造了概率模型以后,由于各种概率模型都可以看作是由各种各样的概率分布构成的,因此产生已知概率分布的随机变量(或随机向量),就成为实现蒙特卡罗方法模拟实验的基本手段,这也是蒙特卡罗方法被称为随机抽样的原因。最简单、最基本、最重要的一个概率分布是(0,1)上的均匀分布(或称矩形分布)。随机数就是具有这种均匀分布的随机变量。随机数序列就是具有这种分布的总体的一个简单子样,也就是一个具有这种分布的相互独立的随机变数序列。产生随机数的问题,就是从这个分布的抽样问题。在计算机上,可以用物理方法产生随机数,但价格昂贵,不能重复,使用不便。另一种方法是用数学递推公式产生。这样产生的序列,与真正的随机数序列不同,所以称为伪随机数,或伪随机数序列。不过,经过多种统计检验表明,它与真正的随机数,或随机数序列具有相近的性质,因此可把它作为真正的随机数来使用。由已知分布随机抽样有各种方法,与从(0,1)上均匀分布抽样不同,这些方法都是借助于随机序列来实现的,也就是说,都是以产生随机数为前提的。由此可见,随机数是我们实现蒙特卡罗模拟的基本工具。 (3)建立各种估计量

蒙特卡罗方法学习总结

图1-1 蒙特卡罗方法学习总结 核工程与核技术2014级3班张振华20144530317 一、蒙特卡罗方法概述 1.1蒙特卡罗方法的基本思想 1.1.1基本思想 蒙特卡罗方的基本思想就是,当所求问题的解是某个事件的概率,或者是某个随机变量的数学期望,或者是与概率、数学期望有关的量时,通过某种试验方法,得出该事件发生的频率,或者该随机变量若干个具体观察值的算术平均值,通过它得到问题的解。 1.1.2计算机模拟打靶游戏 为了能更为深刻地理解蒙特卡罗方法的基本思想,我们学习了蒲丰氏问题和打靶游戏两大经典例子。下面主要对打靶游戏进行剖析、计算机模拟(MATLAB 程序)。 设某射击运动员的弹着点分布如表1-1 所示, 首先用一维数轴刻画出已知该运动员的弹 着点的分布如图1-1所示。研究打靶游戏,我 们不用考察子弹的运动轨迹,只需研究每次“扣动扳机”后的子弹弹着点。每一环数对应唯一确定的概率,且注意到概率分布函数有单调不减和归一化的性质。首先我们产生一个在(0,1)上均匀分布的随机数(模拟扣动扳机),然后将该随机数代表的点投到P 轴上(模拟子弹射向靶上的一个确定点),得到对应的环数(即子弹的弹着点),模拟打靶完成。反复进行N 次试验,统计出试验结果的样本均值。样本均值应当等于数学期望值,但允许存在一定的偏差,即理论计算值应该约等于模拟试验结果。 clear all;clc; N=100000;s=0; for n=1:N %step 4.重复N 次打靶游戏试验

x=rand(); %step 1.产生在(0,1)上均匀分布的随机数if(x<=0.1) %step 2.若随机数落在(0.0,0.1)上,则代表弹着点在7环g=7; s=s+g; %step 3.统计总环数elseif(x<=0.2) %step 2.若随机数落在(0.1,0.2)上,则代表弹着点在8环g=8;s=s+g; elseif(x<=0.5) %step 2.若随机数落在(0.2,0.5)上,则代表弹着点在9环g=9;s=s+g; else %step 2.若随机数落在(0.5,1.0)上,则代表弹着点在10环 g=10;s=s+g; end end gn_th=7*0.1+8*0.1+9*0.3+10*0.5; %step 5.计算、输出理论值fprintf('理论值:%f\n',gn_th); gn=s/N; %step 6.计算、输出试验结果 fprintf('试验结果:%f\n',gn);1.2蒙特卡罗方法的收敛性与误差 1.2.1收敛性 由大数定律可知,应用蒙特卡罗方法求近似解,当随机变量Z 的简单子样数N 趋向于无穷大(N 充分大)时,其均值依概率收敛于它的数学期望。 1.2.2误差 由中心极限定理可知,近似值与真值的误差为N Z E Z N αλ<-)(?。式中的αλ的值可以根据给出的置信水平,查阅标准正态分布表来确定。 1.2.3收敛性与误差的关系 在一般情况下,求具有有限r 阶原点矩()∞

蒙特卡洛方法1

很多时候,我们不清楚统计量的分布,或不确定对它所作的假设是否合理。蒙特卡罗模拟可以处理这些情况,它的应用包括: 1)当待检测统计量(the test statistics)从未知时,进行推断 2)当参数假设(parametric assumptions),评估推断方法的性能 3)在各种情况下进行假设检验 4)比较不同检测子(estimator)的质量 1.基本蒙特卡罗过程 用于推断统计的蒙特卡罗模拟的根本思想是:统计量的特征可通过从相同总体中重复抽样,并观察统计量在这些样本上的表现来获得。 第一步是决定一个伪总体(pseudo-population),假设它可以表达真实总体。这里“伪”是为了强调样本是利用计算机和伪随机数生成的。同时,这里讨论的蒙特卡罗模拟类型都是参数化的技术,应为都是从已知的或假设的分布中抽样。具体步骤: 1)确定伪总体,或可表达真实分布的模型 2)从伪总体中抽样 3)计算统计量的值 4)重复2、3,进行M次实验 5)利用4中获得的M个统计量值来研究统计量的分布 需要注意的是:从伪总体中抽样时,要保证所有相关特征反映同样的统计状况。例如,相同的样本大小和抽样策略。这意味着,通过此方法获得的统计量分布仅对此抽样过程和伪总体假设有效。 最后一步就是利用对统计量分布的估计来研究感兴趣的统计特征。如估计偏度、峰度、标准差等。 2.蒙特卡罗假设检验 在统计假设检验中,利用检验统计量null hypothesis应该被拒绝或接受的信度。当观测到检验统计量的值后,需要通过判断这个值是否与null hypothesis一致。估计检验统计量在null hypothesis下的分布是蒙特卡罗假设检验的目标之一。 回顾假设检验的critical value approach:首先给定置信水平(significance level)a;然后利用此a找到在null hypothesis为真下检验统计量分布上的置信区间(critical region)。而在蒙特卡罗方法中,我们利用假设统计量的估计分布来确定置信值的,步骤如下:

蒙特卡罗(Monte Carlo)方法简介

蒙特卡罗(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世纪,人们就知道用事件发生的"频率"来决定事件的"概率"。19世纪人们用投针试验的方法来决定圆周率π。本世纪40年代电子计算机的出现,特

蒙特卡罗方法及应用实验讲义2016

蒙特卡罗方法及应用 实验讲义 东华理工大学核工系 2016.8

实验一 蒙特卡罗方法基本思想 一、实验目的 1、了解蒙特卡罗方法方法的基本思想; 2、掌握蒙特卡罗方法计算面积、体积的方法; 3、掌握由已知分布的随机抽样方法。 二、实验原理 Monte Carlo 方法,又称统计模拟方法或计算机随机模拟方法,是一种基于“随机数”进行数值模拟的方法,一种采用统计抽样理论近似求解物理或数学问题的方法。 如待求量可以表述成某些特征量的期望值、某些事件出现的概率或两者的函数形式,那么可采用蒙特卡罗方法求解。在求解某些特征量的期望值或某些事件出现的概率时,必须构建合符实际的数学模型。例如采用蒙特卡罗方法计算某函数所围面积时,构建的数学模型是构造一已知面积的可均匀抽样区域,在该区域投点,由伯努利定理大数定理可知,进入待求区域投点的频率依概率1收敛于该事件出现的概率(面积之比)。 由已知分布的随机抽样方法指的是由已知分布的总体中抽取简单子样。具体方法很多,详见教材第三章。 三、实验内容 1、安装所需计算工具(MATLAB 、fortran 、C++等); 2、学习使用rand(m,n)、unifrnd(a,b,m,n)函数 3、求解下列问题: 3.0、蒲丰氏投针求圆周率。 3.1、给定曲线y =2 – x 2 和曲线y 3 = x 2,曲线的交点为:P 1( – 1,1 )、P 2( 1,1 )。曲线围成平面有限区域,用蒙特卡罗方法计算区域面积; 3.2 、计算1z z ?≥??≤??所围体积 其中{(,,)|11,11,02}x y z x y z Ω=-≤≤-≤≤≤≤。 4、对以下已知分布进行随机抽样:

蒙特卡洛方法及其在风险评估中的应用(1)

蒙特卡洛方法及其应用 1风险评估及蒙特卡洛方法概述 1.1蒙特卡洛方法。 蒙特卡洛方法,又称随机模拟方法或统计模拟方法,是在20世纪40年代随着电子计算机的发明而提出的。它是以统计抽样理论为基础,利用随机数,经过对随机变量已有数据的统计进行抽样实验或随机模拟,以求得统计量的某个数字特征并将其作为待解决问题的数值 解。 蒙特卡洛模拟方法的基本原理是:假定随机变量X1、X2、X3……X n、Y,其中X1、X2、X3……X n 的概率分布已知,且X1、X2、X3……X n、Y有函数关系:Y=F(X1、X2、X3……X n),希望求得随机变量Y的近似分布情况及数字特征。通过抽取符合其概率分布的随机数列X1、X2、X3……X n带入其函数关系式计算获得Y的值。当模拟的次数足够多的时候,我们就可以得到与实际情况相近的函数Y的概率分布和数字特征。 蒙特卡洛法的特点是预测结果给出了预测值的最大值,最小值和最可能值,给出了预测 值的区间范围及分布规律。 1.2风险评估概述。 风险表现为损损益的不确定性,说明风险产生的结果可能带来损失、获利或是无损失也无获利,属于广义风险。正是因为未来的不确定性使得每一个项目都存在风险。对于一个公司而言,各种投资项目通常会具有不同程度的风险,这些风险对于一个公司的影响不可小视,小到一个项目投资资本的按时回收,大到公司的总风险、公司正常运营。因此,对于风险的 测量以及控制是非常重要的一个环节。 风险评估就是量化测评某一事件或事物带来的影响的可能程度。根据“经济人”假设,收益最大化是投资者的主要追求目标,面对不可避免的风险时,降低风险,防止或减少损失, 以实现预期最佳是投资的目标。 当评价风险大小时,常有两种评价方式:定性分析与定量分析法。定性分析一般是根据风险度或风险大小等指标对风险因素进行优先级排序,为进一步分析或处理风险提供参考。这种方法适用于对比不同项目的风险程度,但这种方法最大的缺陷是在于,在多个项目中风险最小者也有可能亏损。而定量分析法则是将一些风险指标量化得到一系列的量化指标。通过这些简单易懂的指标,才能使公司的经营者、投资者对于项目分风险有正确的评估与判断,

蒙特卡洛方法 (MC) 方法

MCC 方法 蒙特卡罗方法的诞生 蒙特卡罗方法的产生可追溯到Buffon 投针实验。法国数学家Buffon 用此实验来估算π值,它的原理是这样子的:在桌面上划一组间距为d 的平行线,然后向桌面上随意抛掷长度为L 的细针,从针与平行线相交的概率就可以得到π值。 其中 [0,)A d ∈ [0,) x π∈ 由积分性质可得投针置于平行线上的概率为sin 1 2l d l p dAdx d π θ π π == ? ? 假如在N 次投针实验中,有M 次与平行线相交,则有2l M P d N π= = 图3.2 Buffon 的投针实验 图3.3 投针位置分析

1930年,费米利用蒙特卡罗方法研究了中子的扩散,并设计了一个蒙特卡罗机械装置,用于计算核反应堆的临界状态。 冯.诺依曼是蒙特卡罗方法的正式奠基者,他与Stanislaw Ulam 合作建立了概率密度函数、反累积分布函数的数学基础,以及伪随机数产生器,从而使得蒙特卡罗方法得以推广,成为科学领域一种常用的模拟方法。 蒙特卡罗方法的基本思想 对某一个待解决的物理问题(当这个物理问题可以抽象为数学问题时)建立一个概率模型,即确定某个随机事件X ,使得待求问题的解等于随机事件X 出现的概率或随机变量的数学期望值。然后进行模拟实验,重复多次地模拟随机事件X 。最后对随机实验结果进行统计平均,求出X 出现的频数作为问题的近似解。这就是蒙特卡罗方法的基本思想。 具体来说: 假设所要求的量x 是随机变量的数学期望 ,那么近似确定x 的方法是 对进行N 次重复抽样,产生相互独立的值的序列、、……、,并计算其算术平均值: 1 1 N N n n N ξξ ==∑ 根据大数定理有 P (l i m ) N N x ξ→∞ == 因此,当N 充分大时,下式 ()N E x ξξ≈= 成立的概率为1,亦即可以用 作为所求量x 的估计值。 用蒙特卡罗方法求解时,最简单的情况是模拟一个发生概率为P 的随机事件A 。考虑一个随机变量,若在一次试验中事件A 出现,则取值为1;若事件A 不出现, 则 取值为0。令q=1-p ,那么随机变 量 的数学期 望 ,此即一次试验中事件A出现的概率 。的方差

蒙特卡罗方法并行计算

Monte Carlo Methods in Parallel Computing Chuanyi Ding ding@https://www.wendangku.net/doc/2214312072.html, Eric Haskin haskin@https://www.wendangku.net/doc/2214312072.html, Copyright by UNM/ARC November 1995 Outline What Is Monte Carlo? Example 1 - Monte Carlo Integration To Estimate Pi Example 2 - Monte Carlo solutions of Poisson's Equation Example 3 - Monte Carlo Estimates of Thermodynamic Properties General Remarks on Parallel Monte Carlo What is Monte Carlo? ? A powerful method that can be applied to otherwise intractable problems ? A game of chance devised so that the outcome from a large number of plays is the value of the quantity sought ?On computers random number generators let us play the game ?The game of chance can be a direct analog of the process being studied or artificial ?Different games can often be devised to solve the same problem ?The art of Monte Carlo is in devising a suitably efficient game.

蒙特卡洛模拟法简介

蒙特卡洛模拟法简介 蒙特卡洛(Monte Carlo)模拟是一种通过设定随机过程,反复生成时间序列,计算参数估计量和统计量,进而研究其分布特征的方法。具体的,当系统中各个单元的可靠性特征量已知,但系统的可靠性过于复杂,难以建立可靠性预计的精确数学模型或模型太复杂而不便应用时,可用随机模拟法近似计算出系统可靠性的预计值;随着模拟次数的增多,其预计精度也逐渐增高。由于涉及到时间序列的反复生成,蒙特卡洛模拟法是以高容量和高速度的计算机为前提条件的,因此只是在近些年才得到广泛推广。 这个术语是二战时期美国物理学家Metropolis执行曼哈顿计划的过程中提出来的。 蒙特卡洛模拟方法的原理是当问题或对象本身具有概率特征时,可以用计算机模拟的方法产生抽样结果,根据抽样计算统计量或者参数的值;随着模拟次数的增多,可以通过对各次统计量或参数的估计值求平均的方法得到稳定结论。 蒙特卡洛模拟法的应用领域 蒙特卡洛模拟法的应用领域主要有: 1.直接应用蒙特卡洛模拟:应用大规模的随机数列来模拟复杂系统,得到某些参数或重要指标。 2.蒙特卡洛积分:利用随机数列计算积分,维数越高,积分效率越高。 3.MCMC:这是直接应用蒙特卡洛模拟方法的推广,该方法中随机数的产生是采用的马尔科夫链形式。 蒙特卡洛模拟法的概念 (也叫随机模拟法)当系统中各个单元的可靠性特征量已知,但系统的可靠性过于复杂,难以建立可靠性预计的精确数学模型或模型太复杂而不便应用则可用随机模拟法近似计算出系统可靠性的预计值。随着模拟次数的增多,其预计精度也逐渐增高。由于需要大量反复的计算,一般均用计算机来完成。

蒙特卡洛模拟法求解步骤 应用此方法求解工程技术问题可以分为两类:确定性问题和随机性问题。解题步骤如下: 1.根据提出的问题构造一个简单、适用的概率模型或随机模型,使问题的解对应于该模型中随机变量的某些特征(如概率、均值和方差等),所构造的模型在主要特征参量方面要与实际问题或系统相一致 2 .根据模型中各个随机变量的分布,在计算机上产生随机数,实现一次模拟过程所需的足够数量的随机数。通常先产生均匀分布的随机数,然后生成服从某一分布的随机数,方可进行随机模拟试验。 3. 根据概率模型的特点和随机变量的分布特性,设计和选取合适的抽样方法,并对每个随机变量进行抽样(包括直接抽样、分层抽样、相关抽样、重要抽样等)。 4.按照所建立的模型进行仿真试验、计算,求出问题的随机解。 5. 统计分析模拟试验结果,给出问题的概率解以及解的精度估计。 在可靠性分析和设计中,用蒙特卡洛模拟法可以确定复杂随机变量的概率分布和数字特征,可以通过随机模拟估算系统和零件的可靠度,也可以模拟随机过程、寻求系统最优参数等。 蒙特卡洛模拟法的实例 资产组合模拟: 假设有五种资产,其日收益率(%)分别为 0.02460.0189 0.0273 0.0141 0.0311 标准差分别为 0.95091.4259, 1.5227, 1.1062, 1.0877 相关系数矩阵为 1.0000 0.4403 0.4735 0.4334 0.6855 0.4403 1.00000.7597 0.7809 0.4343 0.4735 0.75971.0000 0.6978 0.4926 0.4334 0.78090.6978 1.0000 0.4289 0.6855 0.43430.4926 0.4289 1.0000 假设初始价格都为100,模拟天数为504天,模拟线程为2,程序如下%run.m

蒙特卡洛算法简介

算法简介 蒙特·卡罗方法(Monte Carlo method),也称统计模拟方法,是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为指导的一类非常重要的数值计算方法。是指使用随机数(或更常见的伪随机数)来解决很多计算问题的方法。蒙特·卡罗方法的名字来源于摩纳哥的一个城市蒙地卡罗,该城市以赌博业闻名,而蒙特·卡罗方法正是以概率为基础的方法。与它对应的是确定性算法。蒙特·卡罗方法在金融工程学,宏观经济学,计算物理学(如粒子输运计算、量子热力学计算、空气动力学计算)等领域应用广泛。 编辑本段背景知识 [1946: John von Neumann, Stan Ulam, and Nick Metropolis, all at the Los Alamos Scientific Laboratory, cook up the Metropolis algorithm, also known as the Monte Carlo method.] 1946年,美国拉斯阿莫斯国家实验室的三位科学家John von Neumann,Stan Ulam 和Nick Metropolis共同发明,被称为蒙特卡洛方法。它的具体定义是:在广场上画一个边长一米的正方形,在正方形内部随意用粉笔画一个不规则的形状,现在要计算这个不规则图形的面积,怎么计算列?蒙特卡洛(Monte Carlo)方法告诉我们,均匀的向该正方形内撒N(N 是一个很大的自然数)个黄豆,随后数数有多少个黄豆在这个不规则几何形状内部,比如说有M个,那么,这个奇怪形状的面积便近似于M/N,N越大,算出来的值便越精确。在这里我们要假定豆子都在一个平面上,相互之间没有重叠。蒙特卡洛方法可用于近似计算圆周率:让计算机每次随机生成两个0到1之间的数,看这两个实数是否在单位圆内。生成一系列随机点,统计单位圆内的点数与总点数,(圆面积和正方形面积之比为PI:1,PI为圆周率),当随机点取得越多(但即使取10的9次方个随机点时,其结果也仅在前4位与圆周率吻合)时,其结果越接近于圆周率。摘自《细数二十世纪最伟大的十种算法》CSDN JUL Y译 编辑本段算法描述 以概率和统计理论方法为基础的一种计算方法。将所求解的问题同一定的概率模型相联系,用计算机实现统计模拟或抽样,以获得问题的近似解。比如,给定x=a,和x=b,你要求某一曲线f和这两竖线,及x轴围成的面积,你可以起定y轴一横线y=c 其中c>=f(x)max,很简单的,你可以求出y=c,x=a,x=b及x轴围成的矩形面积,然后利用随机产生大量在这个矩形范围之内的点,统计出现在曲线上部点数和出现在曲线下部点的数目,记为:doteUpCount,nodeDownCount,然后所要求的面积可以近似为doteDownCounts所占比例*矩形面积。 编辑本段问题描述 在数值积分法中,利用求单位圆的1/4的面积来求得Pi/4从而得到Pi。单位圆的1/4面积是一个扇形,它是边长为1单位正方形的一部分。只要能求出扇形面积S1在正方形面积S中占的比例K=S1/S就立即能得到S1,从而得到Pi的值。怎样求出扇形面积在正方形面积中占的比例K呢?一个办法是在正方形中随机投入很多点,使所投的点落在正方形中每一个位置的机会相等看其中有多少个点落在扇形内。将落在扇形内的点数m与所投点的总数n的比m/n作为k的近似值。P落在扇形内的充要条件是x^2+y^2<=1。

相关文档