求matlab代码,有关simulation。急!! 30

Useconditioningmethodforvariancereductiontoestimateθ=P(U+Z>4)whereU~Exp(1)andZ~Exp(1/... Use conditioning methodfor variance reduction toestimate θ=P(U+Z>4) where U~Exp(1) and Z~Exp(1/2). Describe the procedure in detail.
目前有答题思路
Step1: Generate u(i)=-log(rand(1)),i=1,...,n
Step2: evaluate each exp(-1/2*(4-u(i))), take theaverage of all the values to estimate θ
求大神解答!!!
展开
 我来答
匿名用户
2016-05-08
展开全部

按照题主给的步骤,大致可以这样写代码:

>> n=10000;
>> u=-log(rand(n,1));
>> Q=exp(-1/2*(4-u));
>> mean(Q)
ans =
    0.2678

这里用的是向量化代码,需要的话,也很容易改成题主所给的循环方式。

 

如果直接生成随机数,则代码大致如下:

>> n=10000;
>> u=-log(rand(n,1));
>> z=-1/2*log(rand(n,1));
>> sum(u+z>4)/n
ans =
    0.0369

如果使用统计工具箱(Statistics Toolbox)的函数,可以更简单一些:

>> n=10000;
>> u=exprnd(1,n,1);
>> z=exprnd(1/2,n,1);
>> sum(u+z>4)/n
ans =
    0.0368

这和题主所给算法结果差别较大,怀疑是算法有误(后面的方法是直接生成随机数来计算概率的,很直观,错误的可能性很小)。

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式