稳态卡尔曼滤波器的状态估计

State Estimation of Steady Kalman Filter

我正在系统上使用离散 卡尔曼滤波器

x(k+1)=A_k x(k)+B_k u(k)

y(k)=C_k x(k)

我已经根据可用的噪声 y(k) 估计了状态,该状态是从与状态的 参考轨迹 相同的系统状态方程生成的。然后我用错误的初始状态 x0 和一个大的初始协方差(模拟 1)对其进行了测试。我注意到 KF 效果很好,几步后增益 k 迅速收敛到一个非常小的接近零的值。我认为这可能是由过程噪音引起的Q。我将它设置得较小,因为 Q 代表模型的准确性。

现在我想将其修改为稳态卡尔曼滤波器。我使用 simulation-1 的稳定增益作为常数,而不是每次迭代中的计算。然后,五个方程可以简化为一个方程:

x(k+1)^=(I-KC)A x(k)^+(I-KC)B u(k)+K y(k+1)

我想用与 simulation-1 中相同的初始状态和协方差矩阵对其进行测试。但结果与参考轨迹甚至simulation-1的结果都大不相同。我用协方差矩阵 p_infi 测试了它,它是从 离散 Riccati 方程 :

求解的

k_infi=p_infiC'/(Cp_infi*C'+R)

这都不行。

我在想-

  1. 如何应用稳态 KF 以及如何为其设置初始状态?
  2. 稳态KF是否用于标量系统?
  3. 我应该将它与 LQ-controller 或其他一些一起使用吗?

稳态KF要求初始状态匹配稳态协方差。否则,KF 可能会发散。当滤波器进入稳态时,您可以开始使用稳态 KF。

稳态卡尔曼滤波器可用于具有多维状态的系统。

让我首先将讨论简化为具有固定转换矩阵的过滤器,A 而不是上面的 A_k。在这种情况下,当卡尔曼滤波器达到稳态时,可以提取增益并制作一个利用稳态卡尔曼增益的固定增益滤波器。该滤波器 不是 卡尔曼滤波器,它是固定增益滤波器。它的启动性能一般会比卡尔曼滤波器差。这是用固定增益代替卡尔曼增益计算所付出的代价。

固定增益滤波器没有协方差 (P),也没有 QR.

给定ACQ,可以计算稳态增益直接地。使用离散卡尔曼滤波器模型,并将后验协方差矩阵设置为等于从先前测量周期传播的后验协方差矩阵,其中有:

P = (I - KC) (A P A^T + Q)

求解 K 的方程会得到固定 AQ[= 的稳态卡尔曼增益44=] 和 C.

R在哪里?好吧,它在稳态增益计算中没有作用,因为测量噪声已在稳态下平均下来。稳态意味着状态估计与我们拥有的过程噪声量 (Q) 一样好。

如果A是随时间变化的,那么这个讨论的大部分内容都不成立。无法保证卡尔曼滤波器会达到稳态。可能没有Pinf.

在固定增益滤波器中使用来自卡尔曼滤波器的稳态增益的另一个隐含假设是所有测量将以相同的速率保持可用。卡尔曼滤波器对测量损失具有鲁棒性,固定增益滤波器则不然。