卡尔曼最优预测以及最优滤波方程的相关推导--最优滤波篇

        上一篇帮大家回忆了相关数学基础,介绍了相关问题背景以及最优预测方程的推导,本篇将开启卡尔曼最优滤波方程的推导。同时,在本篇的最后会给出两个详细的实际应用的例子帮助大家理解应用卡尔曼最优滤波。

一、问题的提法

        对于线性离散系统,其状态空间描述为:

                                                  \left\{ \begin{array}{ll} X(k+1) = \Phi(k+1,k)X(k)+G(k+1,k)U(k) + \Gamma(k+1,k)W(k) \\ Z(k)=H(k)X(k)+V(k) \end{array} \right.

在最优滤波篇中,我们的基本假设跟前面的最优预测的部分相同。因此我们可以把问题描述为:在给出观测序列Z(0),Z(1),...,Z(k+1)的条件下,要求找出X(k+1)的线性最优估计\hat{X(k+1|k+1)},使得估计值\hat{X(k+1|k+1)}X(k+1)之间的误差:X(k+1|k+1)=X(k+1)-\hat{X(k+1|k+1)}的方差最小,同时要求估计值\hat{X(k+1|k+1)}是观测序列Z(0),Z(1),...,Z(k+1)的线性函数,且估计是无偏的,即E[\hat{X(k+1|k+1)}]=E[X(k+1)]

二、线性离散系统的卡尔曼最优滤波方程

        通常在推导卡尔曼最优滤波方程时,我们同样先忽略控制输入信号的作用,即认为输入为0,这样我们可以得到系统的状态空间描述为:

                                                 \left\{ \begin{array}{ll} X(k+1) = \Phi(k+1,k)X(k) + \Gamma(k+1,k)W(k) \\ Z(k)=H(k)X(k)+V(k) \end{array} \right.

在获取到观测序列Z(0),Z(1),...,Z(k)后,假定我们已经找到状态X(k)的最优滤波估计\hat{X(k|k)},同样在k+1时刻,在还未获取到观测值Z(k+1)的情况下,我们可以先得到一步最优估计\hat{X(k+1|k)},由于W(k)为零均值的白噪声序列,其最优估计为0,因此:

                                                                         \hat{X(k+1|k)} = \Phi(k+1,k)\hat{X(k|k)} \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (2.1)

同样V(k)也是零均值的白噪声序列,我们可以得到观测值Z(k+1)的预测值:

                                                                         \hat{Z(k+1|k)}=H(k+1)\hat{X(k+1|k)}

在我们获取到观测值Z(k+1)之后,跟在最优预测里面一样,我们来讨论一下观测值Z(k+1)以及其预测值\hat{Z(k+1|k)}之间的误差,以期用于修正对X(k+1)的预测值\hat{X(k+1|k)}从而得到\hat{X(k+1|k+1)}

                                                                  Z(k+1|k)=Z(k+1)-\hat{Z(k+1|k)}

                                                                                      =H(k+1)X(k+1)+V(k+1)-H(k+1)\hat{X(k+1|k)}

                                                                                      =H(k+1)X(k+1|k)+V(k+1)

式中的X(k+1|k)=X(k+1)-\hat{X(k+1|k)}是状态X(k+1)的预测估计误差。不难看出,误差主要由X(k+1|k)以及Z(k+1)的观测误差项V(k+1)构成。一般来讲Z(k+1|k)的维数与X(k+1)的维数不同,因而也不能直接使用Z(k+1|k)来修正\hat{X(k+1|k)}。同样,由于采用的是线性最小方差估计,因此跟最优预测一样,我们使用加权的方法来修正,同样引入一个待定的最优滤波增益矩阵K(k+1),此时我们可以获得X(k+1)的线性最小方差估计\hat{X(k+1|k+1)}

                                                           \hat{X(k+1|k+1)} = \hat{X(k+1|k)} + K(k+1)Z(k+1|k)

也就是:

                                            \hat{X(k+1|k+1)} = \hat{X(k+1|k)} + K(k+1)[Z(k+1)-H(k+1)\hat{X(k+1|k)}] \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ (2.2)

也可以写为:

                                         \hat{X(k+1|k+1)} = \hat{X(k+1|k)} + K(k+1)[H(k+1)X(k+1|k) + V(k+1)]

下面我们来求最优增益滤波矩阵K(k+1)。由正交定理,X(k+1)的滤波估计误差:

                                X(k+1|k+1) = X(k+1)-\hat{X(k+1|k+1)}

                                                           =X(k+1)-\hat{X(k+1|k)} - K(k+1)[H(k+1)X(k+1|k) + V(k+1)]

                                                           =X(k+1|k)-K(k+1)H(k+1)X(k+1|k)-K(k+1)V(k+1)

应与观测值Z(k+1)正交,也就是:

                                                                               E[X(k+1|k+1)Z(k+1)^T]=0

即:

                        E\left \{ [X(k+1|k)-K(k+1)H(k+1)X(k+1|k)-K(k+1)V(k+1)][H(k)X(k+1)+V(k+1)]^T \right \}

                   

  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值