Kalman Filter
Xianling Wang
July23,2016v1.0
目录
一、简介2
二、线性卡尔曼滤波方法2
2.1滤波方法描述 (2)
2.2滤波过程的其他细节 (3)
三、后记4
一、简介
卡尔曼滤波器(Kalman Filter)的核心功能是对观测值进行优化,尽可能降低误差的影响,使其更加贴近系统的实际值。
二、线性卡尔曼滤波方法
2.1滤波方法描述
假设系统在t时刻的状态由x t描述,x t包含了若干个变量,因此以向量的形式出现。同时假设系统状态相对于时间变化的机理是可知的,由式(1)描述,即
x t+1=F t x t+B t u t+w t(1)其中,F t为状态转移矩阵,描述t时刻状态对t+1时刻状态的影响程度;u t表示外界控制因素;B t为控制矩阵,描述外界控制因素对t+1时刻状态的影响程度;w t表示不可控的过程噪声,假设其协方差矩阵为Q t。式(1)所描述的关系是线性的,因此对其误差消除的滤波方法称为线性卡尔曼滤波方法。
假设对系统状态的观测是间接的,而且存在一定误差,即
z t=H t x t+v t(2)其中,z t为所用观测工具可以观测到的直接变量,不一定等同于系统状态中的变量,但却是和系统状态中的变量存在一定线性关系的变量;H t描述直接观测变量和系统状态变量之间的线性关系;v t表示观测误差,假设其协方差矩阵为R t。
虽然t时刻的观测值都是带有误差的,但由于系统状态相对于时间变化的机理是可知的,因此结合t?1时刻的某些信息可以削减该误差,提升t时刻观测值的精确度,得到t时刻的最优估计值,该估计值相对实际值的误差协方差为P t。
为了获得t时刻系统状态的最优估计值,线性卡尔曼滤波器需要以下3个方面的信息:
1.t?1时刻的最优估计值?x t?1;
2.t?1时刻最优估计值相对于实际值的误差协方差P t?1;
3.t时刻的观测值z t;
在获知这些信息的条件下,t时刻系统状态的最优估计值可以依据以下5个公式逐步获得:
1.由t?1时刻的最优估计值?x t?1,结合式(1)系统状态相对时间变化的机理,
预测t时刻的系统状态?x t|t?1,即
?x t|t?1=F t?1?x t?1+B t?1u t?1(3)
2.由t?1时刻最优估计值相对实际值的误差协方差P t?1,结合式(1)获得t时
刻预测状态相对于实际状态的误差协方差P t|t?1,即
P t|t?1=F t?1P t?1F T
t?1
+Q t?1(4)该式可以根据定义展开P t|t?1,并且结合最优估计误差x t?1??x t?1与过程噪声w t之间的非相关性获得。
3.由P t|t?1计算卡尔曼因子K t,即
K t=P t|t?1H T
t (
H t P t|t?1H T
t
+R t
)?1
(5)
4.由t?1时刻对t时刻的预测?x t|t?1、卡尔曼因子K t以及t时刻的观测z t共同
得到t时刻对系统状态的最优估计,即
?x t=?x t|t?1+K t (
z t?H t?x t|t?1
)
(6)
5.由t?1时刻对t时刻的预测误差和卡尔曼因子K t更新t时刻的估计误差,即
P t=P t|t?1?K t H t P t|t?1(7)其中,式(5-7)的引出与高斯噪声的特性有关[1]。
2.2滤波过程的其他细节
?估计误差P t是迭代更新的,因此P t并不是准确的,而其初值并不是非常重要。
?卡尔曼滤波器隐式地使用了0至t时刻的所有样本信息,体现在P t的逐步迭代更新上。
?式(4)和式(5)中的Q t?1和R t为过程噪声和观测噪声协方差,这两个噪声为平稳过程,因此其下标可以去掉。
?Q和R作为迭代的重要参数,对卡尔曼滤波器的性能起到一定影响,应该尽可能提前对其进行统计,否则只能多次测试。
?t=1时刻做初次估计时,不存在先前时刻的预测值,因此可以将观测值直接作为最优估计使用。
?所谓卡尔曼滤波器的预测作用,仅仅是结合系统机理根据t时刻对t+1时刻进行粗糙的预测,并不是根据0至t时刻的所有样本对系统状态的后续发展做
出长期的预测。
三、后记
非常好!
参考文献
[1]Faragher R.Understanding the Basis of the Kalman Filter via a Simple and Intuitive
Derivation[J].IEEE Signal Processing Magazine,2012,29(5):128–132.