【发布时间】:2014-03-30 10:04:10
【问题描述】:
我有一个积分要评估
"x^(-0.5)" ; x in [0.01,1]
我正在使用重要性采样 MC : 该理论说,必须使用近似 PDF 来计算期望值(它几乎肯定会收敛到积分的平均值)
在绘制给定积分和指数 PDF 之后,仅基于绘图,我选择了
rexp 和 dexp 生成 PDF - 我的代码看起来像这样 -
#Without Importance Sampling
set.seed(1909)
X <- runif(1000,0.01,1)
Y <- X^(-0.5)
c( mean(Y), var(Y) )
#Importance sampling Monte Carlo
w <- function(x) dunif(x, 0.01, 1)/dexp(x,rate=1.5)
f <- function(x) x^(-0.5)
X= rexp(1000,rate=1.5)
Y=w(X)*f(X)
c( mean(Y), var(Y) )
有人可以确认我的思路是否正确吗? 如果错了,我应该如何处理这个问题? 请说明 - 我已经理解了这个理论,但事实证明实施对我来说是有问题的。
对于不那么简单的积分,
1.) f(x) = [1+sinh(2x)ln(x)]^-1 仅在观察绘图后,我才选择 normal PDF = g(x)(平均值 = 0.5 和 SD = 5)作为近似值。我为它写了一个类似的代码,但它说在重要性采样的情况下会产生 NaN。 (理想情况下这意味着未定义的函数,但我不知道如何解决)。
2.) f(x,y) = exp(-x^4 - y^4)
如何为上述函数选择 g(x,y) ?
【问题讨论】:
标签: r statistics pdf-generation probability