
本文介绍蒙特卡洛方法计算积分以及减小方差的几种处理方式.
一、Monte Carlo积分
MC方法:将积分转换为易模拟的随机变量的期望,再由大数定律对期望进行估计。
1.先看简单情况
分析:
R代码:
# 生成U(0,1)分布的随机数
m <- 10000
x <- runif(m)
# 计算估计值
thetaHat <- mean(exp(-x))
print(thetaHat)
## 0.6328353
# 真实值
print(1-exp(-1))
## 0.6321206
可见估计值和真实值的偏差非常小。
2.区间变化情况
分析:
R代码:
# Phi(x)中的x
x <- 2
m <- 10000
z <- rnorm(m)
thetaHat <- mean(z <= x)
# 打印估计值
print(thetaHat)
## 0.9774
# 打印真实值
print(pnorm(x))
##0.9772499
3.MC积分置信区间
如果要求