蒙特卡洛法简述
一.简介:
1.蒙特卡洛方法又称随机模拟法,随机抽样技术,是一种随机模拟方法。
蒙特卡洛法使用随机数(伪随机数)以概率和统计理论方法为基础,将所要求解的问题同一定的概率模型相互联系,用计算机实现统计模拟和抽样,以获得问题近似解的一种方法
2.对于蒙特卡洛所使用的随机数要求
-
随机数均匀分布在01之间
-
序列之间没有相关性,相互独立
-
序列重复周期足够长,产生速度快,占用内存小
-
具有完全可重复性
3.蒙特卡洛方法应用举例
-
计算积分
-
随机行走
-
非线性整数规划
-
寿命价格预测
4.引例:布丰投针实验
利用随机数求出概率P,即可得到π的估计值
matlab代码
clear;clc;
l=1;
n=100000;
d=2;
m=0;
for k=l:n
x=unifrnd(0,d/2);
p=unifrnd(0,pi);
if x<0.5*sin(p)
m=m+1;
end
end
p=m/n
pi_m=1/p
一.计算积分
-
随机投点法
-
重要抽样法
修改概率分布抽样,使对模拟结果有重要作用的事件更多的出现,提高抽样效率,减少计算时间
-
分层抽样法
与重要抽样法不同,它并不改变原始的密度函数,而是将抽样区间划分成一些自区间,并根据不同贡献度使抽样点在不同区间数量不同。
-
相关抽样法