在S. Thrun撰写的Probablistic Robotics中,在扩展卡尔曼滤波器的第一部分中,它讨论了使用一阶泰勒展开来线性化过程和观察模型。

公式3.51状态:

$ g(u_t,x_ {t-1})\ approx g(u_t,\ mu_ {t-1})+ g \ prime (u_t,\ mu_ {t-1})(x_ {t-1}-\ mu_ {t-1})$

我认为$ \ mu_ {t-1} $是州根据上一个时间步长进行估算。我的问题是:什么是$ x_ {t-1} $?

此外,此后的EKF算法(表3.3)在任何地方均不使用因数$(x_ {t-1}-\ mu_ {t-1})$,仅使用$ g \ prime (u_t,\ mu_ {t-1})$。因此,在对$ x_ {t-1} $感到困惑之后,我想知道它在算法中的去向。

#1 楼

传播步骤之后,我们需要找到描述新估计的高斯参数。这些是均值$ \ mu $和协方差$ \ Sigma $。您具体询问了均值,所以我们开始。

请注意,传播状态的均值的定义是对传播状态的期望。考虑到泰勒级数展开式的期望,我们有(请注意,我在用上标的缩写表示法-用于先前):

$$ x = g(x ^-,u)$$

然后通过泰勒级数展开,

$$ x \ approx g(x ^-,u)+ g ^ \ prime(x ^-,u)(xx ^-) $$

以先验收益的平均值计算近似函数$ g()$:

$$ x \ approx g(\ mu,u)+ g ^ \ prime(\ mu,u)(x- \ mu)$$

因此,让我们使用$ \ mathbb {E} $作为期望运算符来查找输出的期望值(即我们后验估计的平均值。

$$ \ mu = \ mathbb {E} [x] $$
$$ \ mu \ approx \ mathbb {E} [g(x ^-,u)+ g ^ \ prime(x ^-,u)(x- \ mu ^- )] $$

$$ \ mu \ approx \ mathbb {E} [g(x ^-,u)] + \ mathbb {E} [g ^ \ prime(x ^-,u )(x- \ mu ^-)] $$

现在用$ G $代替,函数$ g $的雅可比行列也取平均值。

$ $ \ mu \ approx \ mathbb {E} [g(x ^-,u)] + \ mathbb {E} [G \ cdot(x- \ mu ^-)] $$
$$ \ mu \大约\ mathb b {E} [g(x ^-,u)] + \ mathbb {E} [G \ cdot x-G \ cdot \ mu ^-] $$
并根据期望的线性度:
$$ \ mu \ approx \ mathbb {E} [g(x ^-,u)] + G \ cdot \ mathbb {E} [x]-G \ cdot \ mathbb {E} [\ mu ^-] $$

你猜怎么着?右边这两个东西的期望值为零。 (为什么?因为我们认为它们是高斯​​的)。**

现在,我们必须计算co方差,定义为$ \ mathbb {E} \ left [(x- \ mathbb {E} [x])(x- \ mathbb {E} [x])^ T \ right] $。您可以通过执行相同的步骤轻松得出此结果。首先在第一个期望内扩展项,然后像以前一样替换$ g $的线性近似值。一些矩阵代数将产生EKF协方差更新。请注意,您必须包括“白噪声” Jacobian。

请参见此处以获得可能更好的推导。


** EKF告诉您的真正谎言是术语$ \ mathbb {E} [g (x ^-,u)] $与$ g(\ mu ^-,u)$相同,只要函数$ g()$不太疯狂,它就会成立。

#2 楼

$ \ mu_ {t-1} $是最后一个时间步的状态估计值,$ x_ {t-1} $是最后一个时间步的实际状态(随机变量)。

基本上是这样的:在传统的卡尔曼滤波器中,您具有线性模型,该模型可以告诉我们状态如何演变和进行测量。在EKF中,您具有非线性模型,但要使用Kalman滤波器方程,因此您将一阶泰勒展开用作KF线性模型。这样,您仍然可以适当地传播协方差。

请注意,状态和测量预测仍使用非线性模型。因此,线性化“仅”会影响协方差传播-确实会影响所有事情,因为这将调节您对估算的确定性以及对状态估算与测量的相对信任。

评论


$ \ begingroup $
这是有道理的,但是泰勒展开式中的$(x_ {t-1)−μ_ {t-1})$会发生什么呢? EKF的第3行仅使用Jacobian:$ \ Sigma_t = G_t \ Sigma_ {t-1} G_t ^ T R_r $
$ \ endgroup $
–蒙克
13年3月3日在21:03