AR模型和ARMA模型谱估计仿真.docx
文本预览下载声明
AR模型和ARMA模型谱估计仿真一、问题重述有两个ARMA过程,其中信号1是宽带信号,信号2是窄带信号,分别用AR谱估计算法、ARMA谱估计算法和周期图法估计其功率谱。产生信号1的系统函数为:激励白噪声的方差为1.产生信号2的系统函数为:激励白噪声的方差为1.每次实验使用的数据长度为256.二、模型分析很多随机过程可以由或近似由均值为零、方差为的白噪声序列经过具有有理想传输函数的ARMA线性系统来得到。称该随机过程为ARMA过程。由上式可知只要估计出模型的参数(和),即可求出功率谱。1.AR模型的建立:AR模型是一种特殊的ARMA模型,利用AR(p)模型,即:逼近采样样本,此时功率谱表达式为:需要求解得未知量为参数,当阶数p已知时,利用的自相关函数与AR模型参数的关系,可建立Y-W方程,解该方程,即可得到AR参数。对于(p+1)元线性方程,若采用matlab中的函数,则使用的是高斯消去法运算量为数量级。采用下面的Levinson-Durbin算法。它可以将运算量减少到数量级。递推公式的获取方法如下:①令p=1,得一阶AR模型对应的尤勒—沃克方程为可解得②令p=2,得二阶AR模型对应的尤勒—沃克方程为解此方程组,得③令p=3,4,…,由递推规律可得到下式:式中,.按照此递推式即可方便解出Ar模型参数a。2.ARMA模型ARMA(p,q)的差分方程如下:由此可得出自相关的关系:当mq时的自相关函数关系可得,建立超定方程(Mp+q):利用最小二乘解得:利用Kaveh谱估计方法,在计算出a后直接计算参数,则此时功率谱估计式变为:而参数可以由以下关系式求出:三、实验内容信号一:按照题目要求要对信号一分别使用AR(4),AR(8),ARMA(4,4),ARMA(8,8)模型和周期图法进行估计,做20次独立实验结果绘制在一张图上,并绘制20次的平均谱和真实谱。信号一是均值为0,方差为1的白噪声通过如下系统函数产生的。得到如下实验结果:信号二:按照题目要求要对信号二分别使用AR(4),AR(8),AR(12),AR(16),ARMA(4,2),ARMA(8,4), ARMA(12,6)模型和周期图法进行估计,做20次独立实验结果绘制在一张图上,并绘制20次的平均谱和真实谱。信号一是均值为0,方差为1的白噪声通过如下系统函数产生的。实验结果如下图所示:四、结果分析为比较算法的不同,现对两种不同的信道做以分析,信道零极点图如下:由此可知信道二比信道一更不稳定。实验结果展示出采用不同方法有着不同的特点,周期图法做出的谱估计图最差,毛刺较多,对稳定性较差的系统估计不是很好。AR模型有较好的性能,估计谱比较平滑,但对稳定性较差的系统的估计也不是很好。ARMA模型估计谱也比较平滑,其性能的最主要优点体现在其对稳定性较差的系统的估计能力比较强,但是在每次估计时会出现某些极差的数据点,其算法稳定性较差。同时通过实验可以看出,AR和ARMA的性能并不是阶数越大越好,所以应该采用一定的方法确定其阶数,能得到较好效果。附件AR模型法clear;clc;echo off;close all;h1={[1 0.3544 0.3508 0.1736 0.2401] [1 -1.3817 1.5632 -0.8843 0.4906]};h2={[1 1.5857 0.9604] [1 -1.6408 2.2044 -1.4808 0.8145]};sigma=1;h=h2;%% 绘制信道功率谱[H,w]=freqz(cell2mat(h(1)),cell2mat(h(2)),400);Htol=zeros(400,20);%% 产生500点数据for k=1:20, %做20次谱估计实验N=500;ha=cell2mat(h(1));hb=cell2mat(h(2));Na=length(ha);%噪声项系数长度Nb=length(hb);%信号项系数长度x=zeros(1,N+Nb-1);e=wgn(1,N+Na-1,sigma,linear,real);for i=1:1:N, x(i+Nb-1)=fliplr(ha)*e(i:i+Na-1)-fliplr(hb(2:Nb))*x(i:i+Nb-2);endx=x(5:end);%% 奇异值分解法确定模型阶数% for k=1:20,temp=xcorr(x,biased);cor_l=round(length(temp)/2);Cxx=zeros(cor_l,cor_l);for i=1:cor_lCxx(i,:)=temp(cor_l+1-i:length(temp)+1-i);end[X,B]=eig(Cxx);V=diag(B)./max(diag(B));%归一化特征值% figure;% plo
显示全部