[英]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
代表模型的准确性。
现在,我想将其修改为稳态Kalman滤波器 。 我将来自Simulation-1的稳定增益用作常数,而不是将其用于每次迭代中的计算。 然后,可以将这五个方程简化为一个方程:
x(k + 1)^ =(I-KC)A x(k)^ +(I-KC)B u(k)+ K y(k + 1)
我想使用与Simulation-1中相同的初始状态和协方差矩阵对其进行测试。 但是结果与参考轨迹甚至模拟1的结果都大不相同。 我已经使用协方差矩阵p_infi
对其进行了测试,该矩阵可以通过离散Riccati方程求解 :
k_infi = p_infi C'/(C p_infi * C'+ R)
这都不起作用。
我想知道-
让我首先将讨论简化为具有固定过渡矩阵(上面是A而不是A_k)的滤波器。 在这种情况下,当卡尔曼滤波器达到稳态时,可以提取增益并制作一个利用稳态卡尔曼增益的固定增益滤波器。 该滤波器不是卡尔曼滤波器,而是固定增益滤波器。 它的启动性能通常会比Kalman滤波器差。 那就是用固定增益代替卡尔曼增益计算所要付出的代价。
固定增益滤波器没有协方差( P ),也没有Q或R。
给定A , C和Q ,可以直接计算稳态增益。 使用离散卡尔曼滤波器模型,并设置a-后验协方差矩阵等于从先前测量周期传播的a-后验协方差矩阵,则有:
P =(I-KC)(APA ^ T + Q)
求解K的方程可得到固定的A , Q和C的稳态卡尔曼增益。
R在哪里? 那么它在稳态增益计算中不起作用,因为测量噪声已在稳态下平均下来。 稳态意味着状态估计值与我们拥有的过程噪声量( Q )一样好。
如果A是随时间变化的,则此讨论中的大部分内容将不成立。 无法保证卡尔曼滤波器将达到稳态。 可能没有Pinf 。
在固定增益滤波器中使用来自卡尔曼滤波器的稳态增益的另一个隐含假设是,所有测量将以相同的速率保持可用。 卡尔曼滤波器对测量损耗具有鲁棒性,而固定增益滤波器则不然。
稳态KF要求初始状态匹配稳态协方差。 否则,KF可能会分歧。 当滤波器进入稳态时,您可以开始使用稳态KF。
稳态卡尔曼滤波器可用于具有多维状态的系统。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.