我已经阅读了卡尔曼滤波器的描述,但是在实际中如何结合起来尚不清楚。它似乎主要针对机械或电气系统,因为它需要线性状态转换,并且出于相同的原因(它需要线性状态转换),对于异常检测或定位状态转换没有用(是正确的吗?)。在实践中,通常如何使用卡尔曼滤波器找到期望预先知道的分量。我已经列出了组件,如果我对需要提前知道的内容的理解不正确,请更正我。

我相信不需要“预先”知道这些内容:


过程噪声$ \ mathbf w $
观察噪声$ \ mathbf v $

我相信使用卡尔曼滤波器需要预先知道这些:


我们应用于$ \ mathbf x $的线性状态转换模型(我们需要事先知道这一点,因此我们的状态必须受已知法律支配,即,当从一种状态到另一种状态的过渡得到很好的理解并确定性地直到一点点噪声时,卡尔曼滤波器对于校正测量很有用-它不是一个异常发现器或寻找随机状态变化的工具)
控制向量$ \ mathbf u $
用于控制向量$ \ mathbf u $的控制输入模型(我们需要事先知道,所以要使用卡尔曼滤波器,我们还需要预先了解我们的控制值如何影响模型,最多至多是高斯噪声,并且该影响必须是线性的。维基百科的文章,即取决于时间$ k $)-看来我们需要提前知道这一点,随着时间的流逝,我认为实际上它被认为是恒定的?
(线性)观察模型$ \ mathbf H $
协方差$ \ mathbf R $(在Wikipedia文章中似乎也与时间有关)-与$ \ mathbf Q $类似。是的,我知道其中许多依赖时间,我只是将所有下标都弄乱了。如果您愿意,可以随意想象每个变量名右下方的小写字母$ k $。

评论

另请参阅:ilectureonline.com/lectures/subject/SPECIAL%20TOPICS/26/190

#1 楼

在某些情况下,让我们回到卡尔曼滤波器方程式:
\ mathbf {G}(k)\ mathbf {u}(k)+ \ mathbf {w}(k)\\
\ mathbf {z}(k)= \ mathbf {H}(k)\ mathbf {x}(k)+ \ mathbf {v}(k)$。

简而言之,对于普通香草KF:

$ \ mathbf {F}(k )$必须完整定义。这直接来自系统的微分方程。如果不是这样,您将遇到双重估计问题(即同时估计状态和系统模型)。如果没有系统的微分方程,那么KF不适合您!根据定义,$ \ mathbf {x}(k)$是未知的。毕竟,如果您知道的话,那将不是估计问题!必须完全定义控制向量$ \ mathbf {u}(k)$。在没有附加系统建模的情况下,控制矢量的唯一不确定性可能是AWGN,它可能会合并到过程噪声中。已知矩阵$ \ mathbf {G}(k)$将控制输入与状态相关联,例如,副翼运动如何影响飞机的侧倾。在数学上,这是KF开发的一部分。

根据定义,系统过程噪声$ \ mathbf {w}(k)$也是不可知的(因为它是随机噪声!)。但是,必须知道噪声统计量,对于普通香草KF,噪声统计量必须为零均值AWGN,且具有已知的协方差$ \ mathbf {Q}(k)$。有时,噪声的协方差在样本之间可能会发生变化,但是在许多情况下它是固定的,因此$ \ mathbf {Q} $是一个常数。在某些情况下,这是众所周知的,但在许多情况下,将在系统开发过程中对其进行“调整”。

观察是一个类似的故事。必须完全定义将您的测量与状态$ \ mathbf {H}(k)$相关的矩阵。还知道您的测量值\\ mathbf {z}(k)$,因为这是传感器的读数!

然而,传感器的测量结果被AWGN $ \ mathbf {v}(k)$破坏,根据定义,该噪声是随机噪声。必须知道噪声的统计量,其为零均值,协方差$ \ mathbf {R}(k)$。同样,协方差可能会随时间变化,但是对于许多应用程序来说,它是一个固定值。通常,您的传感器会从数据表中获得已知的噪声特性。否则,确定需要使用的传感器的均值和方差并不难。是的,也可以根据经验进行“调整”。问题的思考。看着。维基百科页面太混乱了,无法有效学习:(

在AVR Freaks上,我前段时间写了卡尔曼滤波器的“等式”简介,试图介绍它的位置。

如果您不害怕数学,那么有几本值得读的书是高年级本科生/早期研究生的水平,可以尝试布朗和黄某,其中包括所有的理论知识和丰富的知识。高度推荐但我还没有读过的另一个示例是Gelb,它具有便宜的独特优势!

评论


$ \ begingroup $
+1为AVR Freaks链接!做得很好。可能会在课堂上使用它。 :-)
$ \ endgroup $
– Peter K.♦
2012年9月4日16:39