MonteCarlo方法

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1. 均匀性就是伪随机数列的 N 个数是否均匀分布在[0 ,1] 区间上。 若将[0 ,1]区间分成 k个相等的子区间(一般 k = 8 , 16 , 32) , 若所得伪随机数在[0 ,1]区间 上是均匀分布的 , 则虚假设H0 应为“每个伪随机数属于第 i组 的概率为
2. 频率检验
检验每组观测频数 ni与理论频数mi = N 1/k之间相差的显著性
Monte Carlo 方法解决实际问题的过程中 , 主要有以下几个内容 ① 建立简单而又便于实现的概率统计模型 , 使所求的解正是该模型的某 一事件的概率或数学期望 , 或该模型能够直接描述实际的随机过程。
② 根据概率统计模型的特点和计算的需求 , 改进模型 , 以便减小方差和 减低费用 , 提高计算效率。
选择递推函数必须注意以下几点 :
① 随机性好 ; ② 在计算机上容易实现 ; ③ 省时 ; ④ 伪随机数的周期长。
2 伪随机数的产生方法
最基本的伪随机数是均匀分布的伪随机数。 该方法是首先给一个 2r位的数 , 取其中间的 r位数码作为第一个伪随机数 , 然后将这个数平方 , 构成一个新的 2 r位的数 , 再取中间的 r位数作为第 二个伪随机数。 如此循环可得到一个伪随机数序列。 该方法的递推公式为
提高精度一位数 , 抽样次数要增加100 倍 ; 减小随机变量的标准 差 , 可以减小误差 。
Monte Carlo 方法具有以下四个重要特征 :
① 由于 Monte Carlo 方法是通过大量简单的重复抽样来实现的 , 因 此 , 方法和程序的结构十分简单 。
② 收敛速度比较慢 , 因此 , 较适用于求解精度要求不高的问题。
具体试验步骤如下 :
(1) 产生服从给定分布函数 g(x)的随机变量值 xi (2)检查 xi是否落入积分区域(a≤ x ≤ b) , 如果满足条件 , 则记录一次。
反复进行上述试验。 假设在 N 次试验后 , xi落入积分区域的总次数为 m , 那么 , 积分值近似表示为
对于随机性问题 , 可直接将实际的随机问题抽象为概率数学模型 , 然后 与求解确定性问题一样进行抽样试验和统计计算。
"quantum" Monte Carlo: random walks are used to compute quantum-mechanical energies and wavefunctions, often to solve electronic structure problems, using Schrödinger’s equation as a formal starting point;
作为所求量 x 的近似值。 由柯尔莫哥罗夫(Kolmogorov)大数定理可知 ,
即当 N 充分大时 , 有 成立的概率等于1 , 亦即可以用 ξN 作为所求量 x 的估计值。
根据中心极限定理 , 如果随机变量 ξ的标准差 σ 不为零 , 那么 Monte Carlo 方法的误差ε为
式中 , λα 为正态差 , 是与置信水平有关的常量。 Monte Carlo 方法 的收敛速度的阶为 o(N -1/2) , 误差是由随机变量的标准差 s和抽样次 数 N 决定的。
"volumetric" Monte Carlo: random number generators are used to generate volumes per atom or to perform other types of geometrical analysis;
kinetic" Monte Carlo: simulate processes using scaling arguments to establish timescales or by introducing stochastic effects into molecular dynamics.
Monte Carlo方法的基本思想
Monte Carlo 方法的基本思想是: 为了求解某个问题 , 建立一个恰 当的概率模型或随机过程 , 使得其参量(如事件的概率、随机变 量的数学期望等)等于所求问题的解 , 然后对模型或过程进行反 复多次的随机抽样试验 , 并对结果进行统计分析 , 最后计算所求 参量 , 得到问题的近似解。
假设对于下列积分
b
I f (x)dx
a
首先,按照均匀分布,随即采样区域[a,b],记采样点为Xi,每个采样点的 值p(x)=1/(b-a)。利用Monte Carlo算法,上述积分可以模拟为:
当N趋近于无穷大的时候,我们认为两者的值是一致的,所以可以利用上 述离散的方式模拟这个积分
Monte Carlo Integration
Monte Carlo 方法是随机模拟方法 ; 它不仅限于模拟随机性问题 , 还可 以解决确定性的数学问题。 对随机性问题 , 可以根据实际问题的概率法 则 , 直接进行随机抽样试验 , 即直接模拟方法。 对于确定性问题采用 间接模拟方法 , 即通过统计分析随机抽样的结果获得确定性问题的解。
用 Monte Carlo 方法解决确定性的问题主要是在数学领域 , 如计算重积 分、求逆矩阵、解线性代数方程组、解积分方程、解偏微分方程边界问题 和计算微分算子的特征值等。 用 Monte Carlo 方法解决随机性问题则在 众多的科学及应用技术领域得到广泛的应用 , 如中子在介质中的扩散问 题、库存问题、随机服务系统中的排队问题、动物的生态竞争、传染病的 蔓延等。
3. 独立性 按先后顺序排列的 N 个伪随机数中 , 每个数的出现是否与 其前后各个数独立无关。 对于两组伪随机数来说 , 独立性 就是指它们不相关 。
4. 组合规律性 将 N 个伪随机数按一定的规律组合起来 , 则各种组合的出现具 有一定的概率。
5. 无连贯性
将一次出现的 N 个伪随机数 , 按其大小分为两类或 k类 , 则各 类数的出现是否没有连贯现象。
MC meothds
"classical" Monte Carlo: samples are drawn from a probability distribution, often the classical Boltzmann distribution, to obtain thermodynamic properties or minimum-energy structures;
Monte Carlo(MC)方法是在简单的理论准则基础上(如简单 的物质与物质以及物质与环境相互作用) , 采用反复随机抽样 的手段 , 解决复杂系统的问题 。 该方法采用随机抽样的手法 , 可以模拟对象的概率与统计的问题。通过设计适当的概率模型 , 该方法还可以解决确定性问题 , 如定积分等。 随着计算机的迅 速发展 , MC 方法已在应用物理、原子能、固体物理 、化学、 材料、生物、生态学、社会学以及经济学等领域得到了广泛的 应用。
③ 建立随机变量的抽样方法 , 包括伪随机数和服从特定分布的随机变量 的产生方法。
④ 给出统计估计值及其方差或标准误差。
One-Dimensional Integrals
Methodical approaches rectangle rule, trapezoid rule, Simpson’s rule
[x]表示对 x 取整 , 运算 B(Mod M)表示 B被 M 整除后的余数。 数列{ξi }是分布在[0 ,1]上的。 该方法由于效率较低 , 有时周期较短 , 甚至会出现零 。
同余法
该方法也是由选定的初始值出发 , 通过递推产生伪随机数序列。由于 该递推公式可写成数论中的同余式 , 故称同余法。 该方法的递推公式 为
我们在对于[a,b]进行采样的时候,完全没有必要进行均匀采样,这样 做只是简单而已,我们可以根据一种概率分布来进行采样,从而使得 某些区域的采样密度更大。加入采样点的概率分布函数为P(x),那么 我们可以利用如下公式计算定积分的值:
证明:
3 Monte Carlo方法的收敛性和基本特点
设所求的量 x是随机变量ξ的数学期望 E(x) , 那么 , Monte Carlo 方法通常使用随机变量ξ的简单子样ξ1,ξ 2 , … ,ξN 的算术平均值 , 即
对于给定的初始值 ξ 1 , 逐个地产生 ξ 2 ,ξ 3 , …
数学方法产生的随机数存在两个问题 :
① 整个随机数序列是完全由递推函数形式和初始值唯一确定的 , 严格 地说不满足随机数的相互独立的要求。 ② 存在周期现象。
基于这两个原因 , 将用数学方法所产生的随机数称为伪随机数。 伪 随机数的优点是适用于计算机 , 产生速度快 , 费用低廉。 目前 , 多数计算机均附带有“随机数发生器” 。
Monte Carlo 方法
黄世萍
起源
这一方法源于美国在第二次世界大战进研制原子弹的"曼哈顿计划"。Monte Carlo方法创始人主要是这四位:Stanislaw Marcin Ulam, Enrico Fermi, John von Neumann和 Nicholas Metropolis。
1 Monte Carlo 方法基础
a , c , m分别称作倍数(multiplier) 、增值(Increment )和模 (modulus) , 均为正整数 。 x0 称为种子或初值 , 也为正整数。 该方法所产生伪随机数的质量 , 如周期的长度、独立性和均匀性 都与式中三个参数有关。
3 伪随机数的统计检验
伪随机数的特性好坏将直接影响到 Monte Carlo 的计算结果 , 因此要对 所产生的伪随机数序列进行随机性检验。 随机性检验主要包括均匀性检 验 、独立性检验、组合规律性检验和无连贯性检验。 χ检验是伪随机数 检验最常用的方法。
确定性问题的 Monte Carlo 方法求解
Monte Carlo 方法所能解决的问题可以分为两大类 确定性问题 随机性问题
确定性问题主要包括: 求解线性和非线性方程组、逆矩、椭圆型差分方程的边值、积分方程 以及多重积分等。
用 Monte Carlo 方法求解确定性问题的基本思想是 : 对于给定的确定性问 题 , 设计一个概率统计模型(或随机过程模型) , 然后采用一定的抽样 方法 , 按照所设计的概率统计模型进行抽样 , 最后把这个模型产生的一 个数字特征作为该确定性问题的近似解。
f (x) Sum areas of shapes approximating shape
of curve
b
Evaluating the general integral I f ( x ) d x
a
x
n uniformly separated points
Quadrature formula Ixi n1f(xi)b nai n1f(xi)
③ 收敛速度与问题的维数无关 , 因此 , 较适用于求解多维问题。
④ 问题的求解过程取决于所构造的概率模型 , 而受问题条件限制的 影响较小 , 因此 , 对各种问题的适应性很强。
随机数的产生
1 随机数与伪随机数
Monte Carlo 方法的核心是随机抽样。 在该过程中往往需要各种各样分 布的随机变量其中最简单、最基本的是在[0 ,1]区间上均匀分布的 随机变量。 在该随机变量总体中抽取的子样 ξ 1 ,ξ 2 , … ,ξN 称为随 机数序列 , 其中每个个体称为随机数。 用数学的方法产生随机数是目前广泛使用的方法。 该方法的基本思想 是利用一种递推公式 :
Stochastic approach Same quadrature formula, different selection of points
p(x)
n points selected from uniform distribution p(x)
x
I

b
n
a
n i1
f
(xi )
简单的例子
对积分进行变换 , 构造新的被积函数 g(x) , 使得该函数满足下列条件 :
g(x)是连续随机变量 ξ的概率密度函数。 定积分是概率积分 , 其积分值等于概率 Pr (a≤ ξ≤ b) , 即
这个步骤就是将一个积分转化为一个概率模型的过程 ; 然后 , 反复多次的 随机抽样试验 ,以抽样结果的统计平均作为索求概率的近似值 , 从而求得 该积分。
相关文档
最新文档