随机信号AR模型和MATLAB实现随机信号的参数建模方法建立随机信号的参数模型是研究随机信号的基本方法,这意味着随机信号x(n )由白噪声w(n )激励某一确定系统一旦白噪声参数确定,研究随机信号就可以转化为研究产生随机信号的系统。
对于平稳随机信号,三种常用的线性模型分别是AR模型(自回归模型Auto-regression model,MA模型)、滑动平均模型moving average model (ARMA模型)、自回归模型
通过自身多次过去值x(n-k )和当前激励值x(n )的线性组合来生成AR模型的随机信号x(n )。
该模型的系统函数如下。
p是系统的阶数,在系统的函数中只有极点,没有零点。 也称为全极模型。 系统是极端的原因,
考虑系统的稳定性,注意极点的分布位置,用ar(p )表示。
AR模型参数与自相关函数的关系实例分析:
解:
a .可获得的模型参数{ak},a1=-14/24,a2=-9/24,a3=1/24,赋值
利用自相关函数的对偶性质,得到44矩阵:
使用MATLAB程序:
a=[-14/24、-9/24和1/24 ]; A=[1,a(1),a )2),a )3); a(1)、1a )、a )、3 )、0; a(2)、a )1) a )、3 )、1、0; a(3)、a )2)、a )1); b=[1; 0; 0; 0 ); Rxx=A b; 寻求:
Rxx=4.9377 4.3287 4.1964 3.8654即rxx(0)=4.9377,rxx(1)=4.3287,rxx ) )2)=4.1964,rxx(3)=3.8654
再根据
使用MATLAB程序:
form=5:6rxx(m )=0; fork=1:3rxx(m )=Rxx(m )-a ) k ) ) rxx ) m-k ); endendRxx要求以下内容:
rxx=4.93774.32874.19643.86543.64813.4027即rxx(4)=3.6481,rxx(5)=3.4027
b .目前已知rxx(0)~Rxx(5) ),根据
使用MATLAB程序:
r=[rxx(1) rxx )2) rxx )3) rxx ) 4; rxx(2) rxx )1) rxx )2) rxx ) 3; rxx(3) rxx )2) rxx )1) rxx ) 2; rxx(4) rxx )3) rxx )2) rxx )1); R b请求:
ans=1.0000 -0.5833 -0.3750 0.0417即a1=-0.5833,a2=-0.3750,a3=0.0417,^2=1
c .根据
使用MATLAB程序:
xn=[0.42821.1454(5597 ) 1.8994 ) 1.6854 ) 2.3075 ) 2.4679 ) 1.9790.1.6063 ) 1.2804-0.2083 ) 0577.0206.3572 . rxx_OBS=xcorr(xn )./length ) xn; 求出rxx_OBS=rxx_OBS(Length(xn ) : end ) :
Rxx_obs=列1至1~8.9271.6618、1.5381、1.3545、1.1349、0.9060、8673、0.7520、16.7637、0.8497、0.8761、0.9608和0 630.58080.56220.51340.43010.39980.3050.2550列25-320.19970.12820.0637.0329-0.0015-0.0089-0.0143-0
寻求:
a1=-0.6984,a2=-0.2748,a3=0.0915,^2=0.4678
与真实AR模型参数的误差为e1=0.1151,e2=0.1002,e3=0.0498。 这是因为我们只有一部分观测数据,自相关序列的值与理想完全不同。 输入信号的方差误差较大: e=0.5322。 理由之一是计算机模拟的白噪声只有32点的长度,32时间序列的方差并不是正好为1。 给出观测值求解AR模型参数等直接解方程组时,阶数越高,直接解方程组的计算越复杂,需要采用特殊的算法减少计算量,提高精度。