matlab 已知门限怎么求虚警概率蒙特卡罗仿真

如题所述

第1个回答  推荐于2016-08-11
  检测性能的蒙特卡罗仿真 一、实验目的 进一步熟悉蒙特卡洛仿真方法及其在检测性能分析中的应用。 二、实验内容 仿真高斯白噪声中恒定电平检测的性能。 设有两种假设: H0: zi = vi H1: zi = A + vi (i = 1, 2, …, N) (i = 1, 2, …, N) 其中{vi}是服从均值为零、方差为 σ2 的高斯白噪声序列,假定参数 A 是已知的,且 A>0,采用纽曼—皮尔逊准则,假定虚警概率为 10-4, 仿真分析检测概率与信噪比的关系曲线。 三、实验要求 信噪比用分贝表示,仿真曲线要和理论计算曲线进行比较。 四、实验原理 纽曼—皮尔逊准则原理 设虚警概率 为常数。纽曼—皮尔逊准则判决表达式为 门限 λ 由给定的虚警概率确定,即 本实验中,纽曼—皮尔逊准则判决函数为 将 代入,有 故 即 故 此时,虚警概率 PF 和检测概率 PD 分别为 1 故 从而 其中 知,故 , 可以看作信噪比。 d 本实验中虚警概率 已 取定观测次数 N,则可得出 PD—d 的关系曲线(检测器的检测性能曲 线) 。 蒙特卡罗仿真原理 蒙特卡罗仿真主要是利用统计方法估算积分值, 类似于向一个有 内切圆的正方形中多次重复掷米粒来估算圆的面积(以便估算圆周 率)这样的方法,原理上属于古典概型。应用蒙特卡罗仿真的一般步 骤是: (1)建立合适的概率模型; (2)进行多次重复试验; (3)对重复试验结果进行统计分析、分析精度。 2 重复试验次数越多,仿真结果越准确。 五、实验过程及结果 绘制理论检测性能曲线代码如下(观测次数取 8) : d=0.1:0.01:10; A=1; sigma=A./d; pf=10e-4; N=8; pd1=Q(Qinv(pf)*ones(1,length(d))-sqrt(N)*d); plot(20*log(d),pd1,'k'); grid xlabel('信噪比d(dB)'); ylabel('PD'); title('理论检测性能曲线'); 仿真结果如下图: 绘制蒙特卡罗仿真检测性能曲线的代码如下(仿真 500 次) : d=0.1:0.01:10; A=1; sigma=A./d; pf=10e-4; 3 N=8; M=500; lamda=sigma/sqrt(N)*Qinv(pf); pd2=zeros(1,length(d)); for i=1:length(d); for j=1:M; samp=A*ones(1,N)+sigma(i)*randn(1,8); if sum(samp)/N>lamda(i) pd2(i)=pd2(i)+1; end; end pd2(i)=pd2(i)/M; end plot(20*log(d),pd2,'k'); grid xlabel('信噪比d(dB)'); ylabel('PD'); title('蒙特卡罗仿真曲线'); 仿真结果如下图: 当增加仿真次数时, 仿真结果与理论结果越来越接近, 情况如下: 仿真 仿真结果 次数 4 1000 5000 10000 5 50000 6本回答被提问者采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网