三阶的kalman滤波器发散,估计出的数值不正常(10的50次方),请问该咋解决

首先要明确的就是,是不是模型错了。因为在不是强非线性的情况下,普通的EKF也是很难发散的,即便噪声参数随便写,数量级查得离谱的情况下往往也不容易发散。也许就是一个小小的负号就会导致滤波器发散。其次就是滤波器状态的初始化出问题了。卡尔曼滤波在用的时候,初始化是十分重要的,如果没有初始化或者是初始化的不好,也会导致发散。这里的初始化包括的是状态初始化和P矩阵的初始化,状态和P矩阵在初始化的时候都不要初始为零向量和零矩阵,不然会收敛慢或者是发散。P矩阵可以初始化为单位矩阵,状态量可以初始化为一堆0.01。UD分解是用特征矩阵的方法来抑制发散的,如果初始化出了问题,矩阵求逆那一步也是会有问题的。所以你需要,首先检查初始化,其次检查模型。
■网友
你可以看看秦永元的书,《卡尔曼滤波与组合导航原理》。第三章有卡尔曼滤波发散抑制这一章。但是我对卡尔曼滤波技术处理不是很熟悉,只是停留在应用层面的。


    推荐阅读