简体   繁体   English

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

[英]State Estimation of Steady Kalman Filter

I am working with discrete Kalman Filter on a system. 我正在使用系统上的离散卡尔曼滤波器

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

y(k)=C_k x(k) y(k)= C_k x(k)

I have estimated the state from the available noised y(k) , which one is generated from the same system state equations with Reference Trajectory of the state. 我已经根据可用的噪声y(k)估计了状态,该噪声是根据具有状态参考轨迹的相同系统状态方程生成的。 Then I have tested it with wrong initial state x0 and a big initial co-variance (simulation 1). 然后,我用错误的初始状态x0和较大的初始协方差(模拟1)对其进行了测试。 I have noticed that the KF works very well, after a few steps the gain k quickly converges to a very small value near zero. 我注意到, KF运作良好,经过几步,增益k迅速收敛到接近零的很小的值。 I think it is may be caused by the process noise Q . 我认为可能是由于过程噪声Q引起的。 I have set it small because the Q stands for the accuracy of the model. 我将其设置为较小值是因为Q代表模型的准确性。

Now I want to modify it to a steady state Kalman Filter . 现在,我想将其修改为稳态Kalman滤波器 I used the steady gain from simulation-1 as constant instead of the calculation in every iteration. 我将来自Simulation-1的稳定增益用作常数,而不是将其用于每次迭代中的计算。 And then, the five equations can be simplified to one equation: 然后,可以将这五个方程简化为一个方程:

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

I want to test it with same initial state and co-variance matrix as the one in simulation-1. 我想使用与Simulation-1中相同的初始状态和协方差矩阵对其进行测试。 But the result is very different from reference trajectory and even the result of simulation-1. 但是结果与参考轨迹甚至模拟1的结果都大不相同。 I have tested it with the co-variance matrix p_infi , which is solved from the Discrete Riccati Equation : 我已经使用协方差矩阵p_infi对其进行了测试,该矩阵可以通过离散Riccati方程求解

k_infi=p_infi C'/(C p_infi*C'+R) k_infi = p_infi C'/(C p_infi * C'+ R)

This neither works. 这都不起作用。

I am wondering- 我想知道-

  1. How should I apply steady state KF and how should I set the initial state for it? 我应该如何应用稳态KF以及如何为其设置初始状态?
  2. Is steady state KF used for scalar system? 稳态KF是否用于标量系统?
  3. Should I use it with LQ-controller or some others? 我应该将其与LQ控制器或其他一些控制器一起使用吗?

Let me first simplify the discussion to a filter with a fixed transition matrix, A rather then A_k above. 让我首先将讨论简化为具有固定过渡矩阵(上面是A而不是A_k)的滤波器。 When the Kalman filter reaches steady-state in this case, one can extract the gains and make a fixed-gain filter that utilizes the steady-state Kalman gains. 在这种情况下,当卡尔曼滤波器达到稳态时,可以提取增益并制作一个利用稳态卡尔曼增益的固定增益滤波器。 That filter is not a Kalman filter, it is a fixed-gain filter. 该滤波器不是卡尔曼滤波器,而是固定增益滤波器。 It's start-up performance will generally be worse than the Kalman filter. 它的启动性能通常会比Kalman滤波器差。 That is the price one pays for replacing the Kalman gain computation with fixed gains. 那就是用固定增益代替卡尔曼增益计算所要付出的代价。

A fixed-gain filter has no covariance ( P ) and no Q or R . 固定增益滤波器没有协方差( P ),也没有QR。

Given A , C and Q , the steady-state gains can be computed directly. 给定ACQ ,可以直接计算稳态增益。 Using the discrete Kalman filter model, and setting the a-posteriori covarance matrix equal to the propagated a-posteriori covariance matrix from the prior measurement cycle one has: 使用离散卡尔曼滤波器模型,并设置a-后验协方差矩阵等于从先前测量周期传播的a-后验协方差矩阵,则有:

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

Solving that equation for K results in the steady-state Kalman gains for fixed A , Q and C . 求解K的方程可得到固定的AQC的稳态卡尔曼增益。

Where is R ? R在哪里? Well it has no role in the steady-state gain computation because the measurement noise has been averaged down in steady-state. 那么它在稳态增益计算中不起作用,因为测量噪声已在稳态下平均下来。 Steady-state means the state estimate is as good as it can get with the amount of process noise ( Q ) we have. 稳态意味着状态估计值与我们拥有的过程噪声量( Q )一样好。

If A is time-varying, much of this discussion does not hold. 如果A是随时间变化的,则此讨论中的大部分内容将不成立。 There is no assurance that a Kalman filter will reach steady-state. 无法保证卡尔曼滤波器将达到稳态。 There may be no Pinf . 可能没有Pinf

Another implicit assumption in using the steady-state gains from a Kalman filter in a fixed gain filter is that all of the measurements will remain available at the same rates. 在固定增益滤波器中使用来自卡尔曼滤波器的稳态增益的另一个隐含假设是,所有测量将以相同的速率保持可用。 The Kalman filter is robust to measurement loss, the fixed-gain filter is not. 卡尔曼滤波器对测量损耗具有鲁棒性,而固定增益滤波器则不然。

Steady state KF requires the initial state matches the steady state covariance. 稳态KF要求初始状态匹配稳态协方差。 Otherwise, the KF could diverge. 否则,KF可能会分歧。 You can start using the steady state KF when the filter enters the steady state. 当滤波器进入稳态时,您可以开始使用稳态KF。

The steady state Kalman filter can be used for systems with multiple dimension state. 稳态卡尔曼滤波器可用于具有多维状态的系统。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM