蒙特卡洛积分和重要性采样(Importance Sampling)

本文介绍了蒙特卡洛积分的基本原理,通过随机变量对被积函数进行采样,以求得定积分的近似值。当采样数量足够大时,近似值能够很好地逼近原积分。此外,文章还探讨了重要性采样,即选择与被积函数相近的概率密度函数进行采样,以提高估计的准确性和收敛速度。这种方法在概率密度函数与被积函数形状接近时,能显著提升积分估计的效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、蒙特卡洛积分

  • 蒙特卡洛积分概述:简而言之蒙特卡洛积分就是,在求定积分时,如果找不到被积函数的原函数,无法使用经典牛顿-莱布尼茨积分法得到定积分结果的。而蒙特卡洛积分方法利用一个随机变量对被积函数进行采样,并将采样值进行一定的处理可以得到定积分的一个近似值,当采样数量很高时,得到的近似值可以很好的近似原积分的结果。这样一来,我们就不用去求原函数的形式,就能求得积分的近似结果。

  • 补充一些基础性公式:

    • 假设一连续型随机变量XXX的样本空间为DDD,其概率密度分布函数为p(x)p(x)p(x),则其数学期望为:E(X)=∫Dxp(x)dxE(X)= ∫_Dxp(x)dxE(X)=Dxp(x)dx
    • 若另一连续随机变量YYY满足Y=f(X)Y=f(X)Y=f(X),则YYY的数学期望为:E(Y)=∫Df(x)p(x)dxE(Y)= ∫_Df(x)p(x)dxE(Y)=Df(x)p(x)dx
  • 蒙特卡洛积分方法基础形式

    • 现在 假设我们要计算一个定积分:A=∫abf(x)dxA=∫_a^bf(x)dxA=abf(x)dx根据牛顿-莱布尼茨公式我们可以得到:A=∫abf(x)dx=F(b)−F(a)A=∫_a^bf(x)dx=F(b)-F(a)A=abf(x)dx=F(b)F(a)其中F(x)F(x)F(x)f(x)f(x)f(x)的一个原函数。
    • 如果我们不知道或者无法求得原函数,我们该怎么计算这个定积分呢。那么就需要借助蒙特卡洛积分(Monte Carlo Integration)方法
      • 首先我们可以在区间[a,b][a,b][a,b]上进行均匀采样得到:{ X1,…,XN}\{X_1,…,X_N\}{ X1,,XN},样本对于的函数值为:{ f(X1),…,f(XN)}\{f(X_1),…,f(X_N)\}{ f(X1),,f(XN)}
      • 然后再求和得到:FN≈b−aN∑i=1Nf(Xi)F_N≈\frac{b-a}{N} ∑_{i=1}^Nf(X_i)FNNbai=1Nf(Xi)
      • FNF_NFN作为A近似估值。
      • 这个和定积分的定义(黎曼积分)非常相似,只是在定积分的定义中{ X1,…,XN}\{X_1,…,X_N\}{ X1,,XN}是不均匀采样得到而是对区间[a,b]均匀划分得到:{ x1=a,…,xN=b}\{x_1=a,…,x_N=b\}{ x1=a,,xN=b}。根据定积分的定义如果划分的次数N趋于无穷大的时候FN=AF_N=AFN=A.如下图所示:
  • 蒙特卡洛积分方法的正确性进行进一步分析:

    • { X1,…,XN}\{X_1,…,X_N\}{ X1,,XN}是通过均匀分布采样得到的,则XiX_iXi也是随机变量并且服从均匀分布,即:XiX_iXi~U(a,b)U(a,b)U(a,b)

    • FNF_NFN{ X1,…,XN}\{X_1,…,X_N\}{ X1,,XN}的函数那么FNF_NFN是一个样本统计量也是一个随机变量。

    • 那么现在我们计算一下FNF_NFN的数学期望:E[FN]=E[b−aN∑i=1Nf(Xi)]=b−aN∑i=1NE[f(Xi)]=b−aN∑i=1N∫abf(x)p(x)dx=b−aN∑i=1N∫abf(x)1b−adx=b−aN1b−a∑i=1N∫abf(x)dx=1N∑i=1N∫abf(x)dx=∫abf(x)dx=AE[F_N ]=E[\frac{b-a}{N} ∑_{i=1}^Nf(X_i ) ]=\frac{b-a}{N} ∑_{i=1}^NE[f(X_i )] \\=\frac{b-a}{N} ∑_{i=1}^N∫_a^bf(x)p(x)dx=\frac{b-a}{N} ∑_{i=1}^N∫_a^bf(x) \frac{1}{b-a}dx\\=\frac{b-a}{N} \frac{1}{b-a} ∑_{i=1}^N∫_a^bf(x) dx=\frac{1}{N} ∑_{i=1}^N∫_a^bf(x)dx\\=∫_a^bf(x) dx=AE[FN]=E[Nba

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值