《实验三:检测性能的蒙特卡罗仿真.docx》由会员分享,可在线阅读,更多相关《实验三:检测性能的蒙特卡罗仿真.docx(6页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、检测性能的蒙特卡罗仿真一、实验目的在理论课中介绍了蒙特卡罗仿真方法及其在检测性能分析中的应用,本实验的目的是进一步熟悉该方法.二、实验内容仿真高斯白噪声中恒定电平检测的性能。设有两种假设:(1)其中是服从均值为零,方差为的高斯白噪声序列,假定参数是已知的,且,采用纽曼-皮尔逊准则,假定虚警概率为,仿真分析检测概率与信噪比的关系曲线.三、实验要求信噪比用分贝表示,仿真曲线要和理论计算曲线进行比较.四、实验原理该实验用到的原理主要是检测理论中的纽曼-皮尔逊准则,该方法的最重要的特点就是不需要利用到先验概率来确定门限,而是通过确定一定的虚警概率来确定,下面将原理介绍如下:设虚警概率PF=为常数。构造
2、一个目标函数(2)我们的目标就是得到一种最佳分划使得达到最小,通过求解可以得到纽曼皮尔逊准则判决表达式为(3)门限由给定的虚警概率确定,即(4)本实验中,纽曼皮尔逊准则判决函数为(5)将(6)代入,有(7)故(8)即(9)故(10)此时,虚警概率和检测概率分别为(11)(12)故(13)从而(14)其中,可以看作信噪比。本实验中虚警概率已知,故(15)取定观测次数N,则可得出的关系曲线(检测器的检测性能曲线)。蒙特卡罗方法:蒙特卡罗方法也称为统计试验方法,它是采用统计的抽样理论来近似求解数学问题或物理问题,它既可以求解概率问题,也可以求解费概率问题,蒙特卡罗方法是系统模拟的重要方法。应用蒙特卡
3、罗仿真的一般步骤是:(1)建立合适的概率模型;(2)进行多次重复试验;(3)对重复试验结果进行统计分析、分析精度。五、实验过程及结果1. 理论检测性能曲线由可知,对于理论上的实验曲线代码为:% Sandy% 2015.12.18clear;clc% 理论检测性能曲线d = 0:0.01:10; %信噪比A = 1; %信号sigma = A./d; %噪声方差PF = 10e-4; %虚警概率N = 8; %观测次数 PD0=1-normcdf( sqrt(2).*erfinv(1-2.*PF) - sqrt(N)*d );% PD = Q( Q-1(PF) - sqrt(N)*d ); %
4、Q(x) = 1-normcdf(x); % Q-1(x) = sqrt(2).*erfinv(1-2.*x);figure;plot(20*log(d),PD0);xlabel(信噪比d(dB));ylabel(PD);title(理论检测性能曲线);在该实验代码中取观测次数8。得到的实验 结果如下图所示:2. 蒙特卡罗仿真检测性能曲线具体的代码如下:% Sandy% 2015.12.18clear;clc% 蒙特卡罗仿真 d = 0:0.01:10; % 信噪比A = 1; % 信号sigma = A./d; % 噪声方差PF = 10e-4; % 虚警概率N = 8; % 观测次数 ga
5、ma = sigma/sqrt(N)*(sqrt(2).*erfinv(1-2.*PF); % 门限值 纽曼皮尔逊准则% 高斯白噪声之流电平检测 % gama = sigma/sqrt(N) * Q-1(PF)% Q-1(x) = sqrt(2).*erfinv(1-2.*x); % -M = 100; % 重复次数PD1 = zeros(1,length(d); % 检测概率 (记录大于门限的次数)for i=1:length(d); for j=1:M; samp=A*ones(1,N)+sigma(i)*randn(1,8); % N次观测值 if sum(samp)/Ngama(i)
6、% 门限判别 PD1(i)=PD1(i)+1; end; end PD1(i)=PD1(i)/M;end% -M = 500; % 重复次数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)/Ngama(i) PD2(i)=PD2(i)+1; end; end PD2(i)=PD2(i)/M;end% -M = 1000; % 重复次数PD3 = zeros(1,length(d); % 检测概率 (
7、记录大于门限的次数)for i=1:length(d); for j=1:M; samp=A*ones(1,N)+sigma(i)*randn(1,8); if sum(samp)/Ngama(i) PD3(i)=PD3(i)+1; end; end PD3(i)=PD3(i)/M;end% -M = 50000; % 重复次数PD4 = 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)/Ngama(i) PD
8、4(i)=PD4(i)+1; end; end PD4(i)=PD4(i)/M;end% - figure;subplot 221;plot(20*log(d),PD1);xlabel(信噪比d(dB));ylabel(PD);title(蒙特卡罗仿真曲线(M=100);subplot 222;plot(20*log(d),PD2);xlabel(信噪比d(dB));ylabel(PD);title(蒙特卡罗仿真曲线(M=500);subplot 223;plot(20*log(d),PD3);xlabel(信噪比d(dB));ylabel(PD);title(蒙特卡罗仿真曲线(M=5000)
9、;subplot 224;plot(20*log(d),PD4);xlabel(信噪比d(dB));ylabel(PD);title(蒙特卡罗仿真曲线(M=50000);结果如下图:当M=100时,可以看到此时整体的曲线还是趋近于理论曲线的,但是由于仿真的次数较少,曲线上的毛刺较多,这就意味着PD的计算存在着一定的波动,这是由于蒙特卡罗方法本身的概率特性造成的。当M=500时,可以看到曲线的光滑程度有了一定的改善,毛刺少了许多,但是总体来说,曲线的平滑度还是较差,曲线上的毛刺仍有。当M=5000时,相对于前面两个图像,曲线的平滑度有了很大的提高,但是还是能够辨别出一定的毛刺。当M=50000时,可以清楚地看到该结果与理论值已经十分的吻合。曲线的光滑度等方面都已经很接近,但是计算机处理的时间也随之增加。