蒙特卡罗模拟及例
蒙特卡洛(Monte Carlo)模拟法

当科学家们使用计算机来试图预测复杂的趋势和事件时, 他们通常应用一类需要长串的随机数的复杂计算。
设计这种用来预测复杂趋势和事件的数字模型越来越依赖于一种称为蒙特卡罗模似的统计手段, 而这种模拟进一步又要取决于可靠的无穷尽的随机数目来源。
蒙特卡罗模拟因摩纳哥著名的赌场而得名。
它能够帮助人们从数学上表述物理、化学、工程、经济学以及环境动力学中一些非常复杂的相互作用。
数学家们称这种表述为“模式”, 而当一种模式足够精确时, 他能产生与实际操作中对同一条件相同的反应。
但蒙特卡罗模拟有一个危险的缺陷: 如果必须输入一个模式中的随机数并不像设想的那样是随机数, 而却构成一些微妙的非随机模式, 那么整个的模拟(及其预测结果)都可能是错的。
最近, 由美国佐治亚大学的费伦博格博士作出的一分报告证明了最普遍用以产生随机数串的计算机程序中有5个在用于一个简单的模拟磁性晶体中原子行为的数学模型时出现错误。
科学家们发现, 出现这些错误的根源在于这5个程序产生的数串其实并不随机, 它们实际上隐藏了一些相互关系和样式, 这一点只是在这种微小的非随机性歪曲了晶体模型的已知特性时才表露出来。
贝尔实验室的里德博士告诫人们记住伟大的诺伊曼的忠告:“任何人如果相信计算机能够产生出真正的随机的数序组都是疯子。
”蒙特卡罗方法(MC)蒙特卡罗(Monte Carlo)方法:蒙特卡罗(Monte Carlo)方法,又称随机抽样或统计试验方法,属于计算数学的一个分支,它是在本世纪四十年代中期为了适应当时原子能事业的发展而发展起来的。
传统的经验方法由于不能逼近真实的物理过程,很难得到满意的结果,而蒙特卡罗方法由于能够真实地模拟实际物理过程,故解决问题与实际非常符合,可以得到很圆满的结果。
这也是我们采用该方法的原因。
蒙特卡罗方法的基本原理及思想如下:当所要求解的问题是某种事件出现的概率,或者是某个随机变量的期望值时,它们可以通过某种“试验”的方法,得到这种事件出现的频率,或者这个随机变数的平均值,并用它们作为问题的解。
数学建模蒙特卡洛模拟方法详细案例

数学建模蒙特卡洛模拟方法详细案例
数学建模中的蒙特卡洛模拟方法是一种基于随机数生成和概率统计的方法,可以用于求解各种复杂的问题。
下面是一个详细的案例,以帮助你更好地理解蒙特卡洛模拟方法的应用。
案例:估计圆周率
假设我们要求解圆周率(π)的值。
我们可以使用蒙特卡洛模拟方法来估计π的值。
1. 定义问题的概率模型:在这个案例中,我们使用一个简单的概率模型,即在一个边长为1的正方形内随机生成点,并计算这些点到正方形中心的距离。
2. 生成随机数:使用随机数生成器生成一系列的随机数,这些随机数代表点在正方形内的坐标。
3. 计算点到中心的距离:对于每个生成的点,计算它到正方形中心的距离。
4. 计算落在圆内的点的比例:将落在半径为1的圆内的点的数量除以总的点数。
这个比例近似于圆的面积与正方形的面积之比,也就是π/4。
5. 通过比例求解π:将步骤4中的比例乘以4,即可得到π的近似值。
通过多次重复上述步骤并取平均值,可以进一步提高估计的准确性。
需要注意的是,蒙特卡洛模拟方法是一种基于随机数生成和概率统计的方法,其结果具有一定的随机性和误差。
因此,在应用蒙特卡洛模拟方法时,需要选择合适的随机数生成器和概率模型,以确保结果的准确性和可靠性。
蒙特卡罗算法举例

蒙特卡罗算法举例
蒙特卡罗算法(Monte Carlo algorithm)是一种基于随机样本的计算方法,它通过模拟大量的随机数据来获得问题的概率性结果。
这种算法可以用于估计数学问题、物理问题、金融问题以及其他实际应用中的复杂问题的解。
下面将以几个实际例子来说明蒙特卡罗算法的应用。
例1:估计圆周率π的值
具体步骤:
1.在正方形内生成大量均匀分布的随机点。
2.统计落入圆形内的点的数量。
3.通过落入圆形的点的数量与总点数的比例来估计π的值。
例2:绘制希腊国旗
具体步骤:
1.建立一个正方形区域。
2.在正方形区域内随机生成大量的点。
3.统计每个小正方形内的点的数量。
4.将每个小正方形的点的数量转化为绘制像素点的比例。
例3:计算投资回报率的概率分布
具体步骤:
1.建立资产的收益率分布模型,可使用历史数据进行参数估计。
2.随机生成资产的未来收益率。
3.根据资产的权重计算投资组合的回报率。
4.迭代多次,统计投资组合回报率的概率分布。
例4:模拟森林火灾蔓延的概率
具体步骤:
1.建立一个森林地区的模型,包括地形、植被分布等信息。
2.随机生成火源的起始位置。
3.模拟火势的蔓延规律,考虑风向、植被密度等因素。
4.统计火灾烧毁的面积。
以上是几个蒙特卡罗算法的应用示例。
蒙特卡罗算法的优点是可以解决复杂问题,并提供概率性结果。
但需要注意的是,结果的准确性受到样本数量的影响,样本数量越大,结果越接近真值。
此外,算法的运行效率也是一个需要考虑的因素。
蒙特卡洛模拟计算var例题

蒙特卡洛模拟计算var例题
蒙特卡洛模拟是一种基于随机抽样的数值计算方法,可以用来
估计复杂系统的性质,比如金融领域中的价值-at-risk (VaR)。
VaR
是用来衡量金融资产或投资组合在一定时间内可能出现的最大亏损,通常以一定的置信水平来表示。
蒙特卡洛模拟可以用来估计资产或
投资组合的VaR。
假设我们要使用蒙特卡洛模拟来计算某个投资组合的VaR。
首先,我们需要确定投资组合的收益率的概率分布。
然后,我们可以
通过随机抽样生成大量的可能的未来收益率路径。
接着,我们对这
些路径进行模拟,计算投资组合在未来一定时间内可能出现的亏损。
最后,我们可以根据这些模拟结果来估计投资组合在特定置信水平
下的VaR。
在进行蒙特卡洛模拟时,需要考虑的因素包括,投资组合的收
益率分布假设、抽样路径的数量、时间段的选择、模拟的时间步长等。
这些因素都会影响最终的模拟结果。
除了计算VaR,蒙特卡洛模拟还可以用来估计其他金融衍生品
的价格、风险敞口等。
它的优点在于可以处理复杂的金融模型和市
场情景,但缺点是计算量大,需要大量的随机抽样和计算,运行时间较长。
总的来说,蒙特卡洛模拟是一种强大的数值计算方法,可以用来估计金融领域的各种风险指标,包括VaR。
通过合理的模拟设计和参数选择,可以得到比较准确的估计结果,帮助投资者和风险管理者更好地理解和管理风险。
蒙特卡洛方法及其应用

【最新资料,WORD文档,可编辑修改】蒙特卡洛方法及其应用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风险评估概述。
风险表现为损损益的不确定性,说明风险产生的结果可能带来损失、获利或是无损失也无获利,属于广义风险。
正是因为未来的不确定性使得每一个项目都存在风险。
对于一个公司而言,各种投资项目通常会具有不同程度的风险,这些风险对于一个公司的影响不可小视,小到一个项目投资资本的按时回收,大到公司的总风险、公司正常运营。
因此,对于风险的测量以及控制是非常重要的一个环节。
风险评估就是量化测评某一事件或事物带来的影响的可能程度。
根据“经济人”假设,收益最大化是投资者的主要追求目标,面对不可避免的风险时,降低风险,防止或减少损失,以实现预期最佳是投资的目标。
当评价风险大小时,常有两种评价方式:定性分析与定量分析法。
定性分析一般是根据风险度或风险大小等指标对风险因素进行优先级排序,为进一步分析或处理风险提供参考。
这种方法适用于对比不同项目的风险程度,但这种方法最大的缺陷是在于,在多个项目中风险最小者也有可能亏损。
蒙特卡洛模拟法及其Matlab案例

0.4403 1.0000 0.7597 0.7809 0.4343
0.4735 0.7597 1.0000 0.6978 0.4926
假设初始价格都为100,模拟天数为504天,模拟线程为2,程序如下
%run.m
ExpReturn = [0.0246 0.0189 0.0273 0.0141 0.0311]/100; %期望收益
Sigmas = [0.9509 1.4259, 1.5227, 1.1062, 1.0877]/100;%标准差
2.蒙特卡洛积分:利用随机数列计算积分,维数越高,积分效率越高。
3.MCMC:这是直接应用蒙特卡洛模拟方法的推广,该方法中随机数的产生是采用的马尔科夫链形式。
四 资产组合模拟
假设有五种资产,其日收益率(%)分别为
0.0246 0.0189 0.0273 0.0141 0.0311
4.按照所建立的模型进行仿真试验、计算,求出问题的随机解。
5. 统计分析模拟试验结果,给出问题的概率解以及解的精度估计。
三 蒙特卡洛模拟法的应用领域
蒙特卡洛模拟法的应用领域主要有:
1.直接应用蒙特卡洛模拟:应用大规模的随机数列来模拟复杂系统,得到某些参数或重要指标。
0.4735 0.7597 1.0000 0.6978 0.4926
0.4334 0.7809 0.6978 1.0000 0.4289
0.6855 0.4343 0.4926 0.4289 1.0000
PortExact = ret2tick(PortRetExact, repmat(StartPrice, 1, NumSim))r');
蒙特卡洛方法例题

蒙特卡洛方法例题
蒙特卡洛方法是一种基于随机抽样的数值计算方法,它通过大量模拟实验来近似求解问题。
这种方法在20世纪40年代由美国物理学家蒙特卡洛提出,如今已经在各个领域得到了广泛的应用。
蒙特卡洛方法的原理很简单,关键是确定概率模型。
首先,我们需要建立一个与问题相关的概率模型,然后生成一系列随机数,根据这些随机数计算出对应的数值结果,最后对结果进行统计分析,以得到问题的近似解。
下面我们通过一个例子来说明蒙特卡洛方法的具体应用。
例题:设随机变量X服从正态分布,即X ~ N(μ, σ^2),求X的期望值和方差。
解:我们可以使用蒙特卡洛方法来求解这个问题。
1.确定概率模型:我们已经知道随机变量X服从正态分布,所以概率模型为X = μ + σZ,其中Z ~ N(0, 1)。
2.生成随机数:生成一个标准正态分布的随机数Z1。
3.计算累积概率:根据正态分布表,查找Z1对应的概率值。
4.计算X的期望值和方差:根据概率模型,计算X的期望值μ"和方差σ"。
通过大量的蒙特卡洛模拟实验,我们可以得到X的期望值和方差的近似值。
蒙特卡洛方法在实际应用中具有广泛的应用价值,例如求解复杂数学问题、线性方程组、非线性方程或方程组、进行参数估计和假设检验等。
然而,
它也存在一定的局限性,如计算速度较慢、对采样点的数量要求较高等。
总之,蒙特卡洛方法是一种实用且高效的数值计算方法,在各个领域都取得了显著的成果。
蒙特卡罗模拟及例

1)问题背景
返回 D 吸收
三种 状态
穿透
阐述中子的运动, 2)简化假设: 为模拟做理论准备 *1 假定屏蔽层平行板厚度为D=3d,其中d 为两次碰撞之间中子的平均游动距离;
*2 假设在第10 次碰撞以后,中子速度下降到 为某一很小数值而终止运动(被引收). *3 假定中子在屏蔽层内相继两次碰撞之间游 动的距离服从指数分布;
4
计算机上做n次掷点试验: 产生n 对二维随机点(xi,yi) ,i=1 ,2, …, n .
其中,xi 和yi 是RND 随机数对. 检查每对数是否满足: 相当于第i 2 2 x i yi 1 个随机点落 在1/4圆内. 若有k 个点落在l/4圆内 随机事件“点落入1/4圆内”的 频率为 k/n
中子数(个) 穿透(%)
100 1000 3000 5000 30.0 26.0 26.5 26.3
吸收(%)
28.0 23.4 21.8 22.0
返回(%)
42.0 50.6 51.7 51.7
中子穿透屏蔽层的百分比超过了1/4,模拟结 果表明屏蔽层厚度D=3d不合适.
问
多厚的屏蔽层才能使穿透的概率 题: W<10-6?
注:平均值法本质上是用样本平均值作为
总体教学期望的估计。
2. 蒙特卡罗模拟试验次数的确定
M-C 模拟是一种试验近似方法 , 试验次 数如何确定?
希望:模拟次数较少、 模拟精度较高
?
频率法的讨论 频率法是用事件A出现的频率作为概率p 的估计: kn ˆ p n 问题:试验次数 n 多大时,对给定的置信度 1-α(0<α<1),估计精度达到ε.
三、 蒙特卡罗模拟及例
蒙特卡罗(Monte-Carlo)模拟,又称蒙特卡 罗方法、统计试验法等. M-C模拟是静态模拟,描述特定时间点上的 系统行为. 模拟过程中 基本思想:把随机事件 不出现时间 (变量)的概率特征与 参数。 数学分析的解联系起来.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
问题:试验次数 n 多大时,对给定的置信度 1-α(0<α<1),估计精度达到ε.
?
即问:取多大的n 使
P
成立?
pˆ
p
P
kn n
p 1
答案:
n
p(1 2
p) z2
证明
其中, zα是正态分布的临界值。
平均值法 在给定α和ε下所需的试验次数 的估计式为
n S
a.e.
当n 足够大时,得近似公式:
I
ab
f
( x)dx
(b
a)
1 n
n
f
i 1
(i
)
注:平均值法本质上是用样本平均值作为 总体教学期望的估计。
2. 蒙特卡罗模拟试验次数的确定
M-C 模拟是一种试验近似方法 , 试验次数如何确定?
希望:模拟次数较少、 模拟精度较高
频率法的讨论
频率法是用事件A出现的频率作为概率p 的估计:
5) 模拟结果分析 要求穿透屏蔽层的概率数量级为10-6~10-10,按假设条件得到一次模拟结果如下:
中子数(个) 穿透(%) 吸收(%)
100
30.0
28.0
1000
26.0
23.4
3000
26.5
21.8
5000
26.3
22.0
中子穿透屏蔽层的百分比超过了1/4,模拟结 果表明屏蔽层厚度D=3d不合适.
1. 蒙特卡罗法计算定积分举例
例1 用M-C 模拟求圆周率π的估计值.
设二维随机变量
(X, Y)在正方形内服从均匀分布.
1
(X, Y)落在圆内的 概率为:
P{X2+Y2≤1}=
0
1
4
计算机上做n次掷点试验: 产生n 对二维随机点(xi,yi) ,i=1 ,2, …, n .
其中,xi 和yi 是RND 随机数对. 检查每对数是否满足:
由于碰撞的能量损失,中子穿过屏蔽层的平 均速度会逐层下降.
设WD 是中子穿过厚度为D 屏蔽层的概率,则 穿过整个屏蔽层的概率W满足
W WDm
利用模拟结果:当D=3d,WD≈0.25,令 (WD)m<10-6, 或 (m)4>10 6
m log106 6 9.967 log 4 0.602
取屏蔽层的厚度 x=10D=30d, 可使穿透屏蔽层的概率w<10-6
1)问题背景
D
返回 吸收
三种状态
2)简化假设:
穿透
阐述中子的运动, 为模拟做理论准备
*1 假定屏蔽层平行板厚度为D=3d,其中d 为两次碰撞之间中子的平均游动距离;
*2 假设在第10 次碰撞以后,中子速度下降到 为某一很小数值而终止运动(被引收).
*3 假定中子在屏蔽层内相继两次碰撞之间游 动的距离服从指数分布;
(2) 将(ri, ,
ri
,
第i 次中子的移动距离和弹射角。 (i=1,2,3,…,10)
(3) 将(Ri, θi) 代入公式 xi = xi-1+Ricosθi ,i=1,2,…,10
计算出第i 次碰撞中子与内壁的距离xi . (4) 判断中子是否穿透屏蔽层.
(3)计算 原理分析:
作b为I的a估计n值。f n i1
(ui
)
设随机变量ζ1,ζ2,…,ζn相互独立,且 ζi~U(0,1)
{f(ξi)},i=1,2,…,n 相互独立同分布
E[
f
(i
)] b
1
a
ab
f
( x)dx
b
I
a
由(强)大数定律知
lim
n
1 n
n
i 1
f
(i
)
b
I
a
即以概率为1 成立。
返回(%)
42.0 50.6 51.7 51.7
问 题:
多厚的屏蔽层才能使穿透的概率 W<10-6?
如何解决这个问题?
思路?
1. 计算机收索法
增大屏蔽层的厚度,如D=6d、12d、24d、 36d,…,交由计算机进行模拟,并搜索到所 求解.
2. 分析法
设计屏蔽层的厚度: x=mD
DD
D
……
12
m
将屏蔽层视为 m层厚度均为D 的平行板.
*4 中子经碰撞后的弹射角θ~ U(0, 2π).
3)中子运动的数学描述 引进变量:
弹射角θi —第i 次碰撞后中子的运动方向与x 轴正向的夹角.
xi — 第i 次碰撞后中子所处位置与屏蔽层内壁的距离.
R i —中子在第 i 次碰撞前后的游动距离.
以上三个变量均为 随机变量
0 xi
x
θi
DD
中子在屏蔽层里随机游动,第 i 次碰撞以后,按照它的位置坐标 xi,可能有以下三 种情况发生:
2
z2 S 2 / 1
n0 1
2
n0
(
i 1
xi
x )2
试验次数估计式的分析
1.
n
p(1 2
p) z2
为估计概率p做模拟,却又需 要用p去估计模拟次数n.
n S
2
z2 S 2 / 1
n0 1
2
n0
(
i 1
xi
x )2
解决方法:先做n0 次模拟(称为学习样本),根据学习样本
如何计算S2 ?
分析:实际上概率值为
恰为1/4圆的面积
01
1 x2dx 4
频率法利:用随机变量落进指定区域内的频率来计算定积分。
平均值法: 利用随机变量的平均值(数学期望 ) 来计算定积分。
I ab f ( x)dx
平均值法的算法如下:
(1) 产生RND 随机数:r1,r2,…,rn;
(2)令 ui=a+(b-a)ri,i=1,2,…,n;
xi2 yi2 1
若有k 个点落在l/4圆内
随机事件“点落入1/4圆内”的 频率为 k/n
根据概率论中的大数定律,事件发生的频率依 概率收敛于事件发生的概率p,即有
相当于第i个随机点 落在1/4圆内.
lim
n
P{
k n
p
}
1
得圆周率π的估计值为
ˆ =4k/n
且当试验次数足够大时,其精度也随之提高。
(1) xi<0,中子返回反应堆;
(2) xi>D,中子穿透屏蔽层;
(3) 0<xi<D,若i<10,中子 在屏蔽层内继续运动, 若 i=10,中子被屏蔽层吸收。
中子三状态 判别准则
经过第i 次碰撞,中子在屏蔽层内的位置是 xi=xi-1+Ricosθi ,i=1,2,…,10 ,
4)模拟过程 (1) 产生RND随机数对(ri, ui );
(1)先求出p的估计,再估计模拟次数n :
n
pˆ (1 2
pˆ ) z2
(2)计算出的样本方差S2 ,用来估计n.
2. M -C模拟的估计精度ε与试验次数n的平 方根成反比.
例2 核反应堆屏蔽层设计问题
核反应堆屏蔽层是用一定厚度的铅包围反应 堆,用以阻挡或减弱反应堆发出的各种射线。在 各种射线中,中子对人体伤害极大,因此,在屏 蔽层的设计中,了解中子穿透屏蔽层的概率,对 反应堆的安全运行至关重要。