卡尔曼滤波估计线性预测器最优权值

                

卡尔曼滤波在维纳滤波中的应用

  • 考虑到最优权值是一个常值向量,因此状态方程为w(n)=w(n-1)
  • 观测方程就是由滤波器的最优滤波误差推导出:d(n)=uT(n)w*(n)+e(n)
  • 然后对应到观测方程和状态方程

 

  • 仿真时的权向量初始值为[0 0]T,估计误差相关矩阵P的初始值为I;

假设信号u(n)由一个四阶AR模型产生:u(n)-1.6u(n-1)+1.46u(n-2)-0.616u(n-3)+0.1525u(n-4)=v(n)

以该序列作为输入的四阶线性预测模型,用卡尔曼滤波估计该模型的最优权值;四阶线性预测模型要估计4个权值;且最终的权值应该和表达式的4个系数要接近。

clc,clear all,close all
for num=1:100
%% 产生给定方差的高斯白噪声
N=3000;
gv=0.0332;
v=rand(1,N)*sqrt(gv);
%% 给定 AR 模型产生 u(n)序列
a1=-1.6;
a2=1.46;
a3=-0.616;
a4=0.1525;
u(1)=0;u(2)=0;u(3)=0;u(4)=0;
for i=1:(N-4)
u(i+4)=-a1*u(i+3)-a2*u(i+2)-a3*u(i+1)-a4*u(i)+v(i+4);
end
%% 卡尔曼滤波
N2=2000;
Jmin=0.005;
for i=5:N2
U(:,i)=[u(i-1);u(i-2);u(i-3);u(i-4)];
end
P_esti=diag([1,1,1,1]);
W_esti=zeros(4,N2);
for l=1:N2
P_pre=P_esti;
A=(U(:,l))'*P_pre*U(:,l)+Jmin;
K=P_pre*U(:,l)/A;
alpha(l)=u(l)-(U(:,l))'*W_esti(:,l);
W_esti(:,l+1)=W_esti(:,l)+K*alpha(l);
P_esti=P_pre-K*(U(:,l))'*P_pre;
epsilon=W_esti(:,l+1)-W_esti(:,l);
MSE(l)=(W_esti(:,l+1)-W_esti(:,l))'*(W_esti(:,l+1)-W_esti(:,l));
end
% figure,plot(1:N2+1,W_esti) %单次W_estisum(:,:,num)=W_esti;
MSEsum(:,:,num)=MSE;
end
wmean=mean(W_estisum,3);
figure,plot(1:N2+1,wmean)
MSEmean=mean(MSEsum,3);
figure,plot(1:N2,MSEmean)

单次实验的权向量迭代结果和100次独立实验求平均的权向量迭代结果:

             

均方误差变化曲线:

                                                     

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
卡尔曼滤波是一种基于状态空间模型的最优估计算法,主要用于系统状态的估计和预测。而AR模型是一种自回归模型,用于描述时间序列数据的相关性和趋势。 对于一个四阶AR模型,其表达式可以表示为: x(t) = a1*x(t-1) + a2*x(t-2) + a3*x(t-3) + a4*x(t-4) + w(t) 其中,x(t)表示时间t的观测值,w(t)表示噪声项,a1~a4为待估计权值卡尔曼滤波的思想是通过观测数据和系统模型的预测,不断地进行状态估计和修正。在估计四阶AR模型的最优权值时,我们可以将其转化为一个状态空间模型,然后使用卡尔曼滤波算法进行估计。 首先,在状态空间模型中,我们可以定义一个4维状态向量x(k)=[x(k), x(k-1), x(k-2), x(k-3)],表示当前时刻和过去三个时刻的观测值。另外,我们还可以定义一个4维过程噪声向量v(k)=[w(k), w(k-1), w(k-2), w(k-3)],表示噪声项。 然后,我们可以建立一个状态转移方程,描述状态向量在时间上的变化: x(k) = F*x(k-1) + v(k) 其中,F为状态转移矩阵,由权值a1~a4确定。 接着,我们可以得到观测方程,用于连接状态向量和观测数据: z(k) = H*x(k) + n(k) 其中,z(k)表示观测值,H为观测矩阵。n(k)表示观测噪声。 最后,通过卡尔曼滤波算法,可以根据观测数据和系统模型,递归地进行状态估计和修正。具体步骤包括预测步骤、更新步骤和修正步骤。 预测步骤中,利用状态转移方程和动态模型,根据上一时刻的估计值,预测当前时刻的状态和协方差。 更新步骤中,通过观测方程,将观测数据与预测值进行比较,得到更新后的状态和协方差。 修正步骤中,根据更新后的状态和协方差,计算最优权值a1~a4。 通过以上步骤,我们可以估计最优权值,从而实现对四阶AR模型的最优估计。这样,我们可以利用卡尔曼滤波算法对时间序列数据进行预测和分析,提高数据处理的效果和准确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值