扩展、统计线性化和无迹RTS平滑器
本文介绍基于线性化、统计线性化和无迹变换的RTS平滑器,分别对应EKF、SLF和ULF。
这些平滑器用于对非线性状态空间模型贝叶斯解的高斯逼近。
扩展RTS平滑器(ERTSS)
ERTSS对平滑分布的高斯逼近表达式为:由下式叠加模型: x k = f ( x k − 1 ) + q k − 1 y k = h ( x k ) + r \bm{x_k = f(x_{k-1})+q_{k-1}} \\ \bm{y_k = h(x_k)+r} xk=f(xk−1)+qk−1yk=h(xk)+r扩展的RTS平滑算法如下。
扩展RTS平滑器
式中,雅可比矩阵
F
x
(
m
k
)
\bm{F_x(m_k)}
Fx(mk) 为
f
(
x
)
\bm{f(x)}
f(x) 在
m
k
\bm{m_k}
mk 处的值。
上式展示的为由
k
\bm{k}
k 时刻到
k
+
1
\bm{k+1}
k+1 时刻到平滑分布的递推过程。由于在最后
T
\bm{T}
T 时刻的平滑分布于滤波分布一致。即:
m
T
s
=
m
T
P
T
s
=
P
T
\bm{m_T^s = m_T} \\ \bm{P_T^s = P_T}
mTs=mTPTs=PT故从最后时候
k
=
T
\bm{k=T}
k=T 开始向后递推到最初
k
=
0
\bm{k=0}
k=0 时刻,这样就能够求解出所有时刻的平滑分布。
统计线性化RTS平滑器(SLRTSS)
统计线性化RTS平滑器与扩展RTS平滑器整体一致,只是用统计线性化的方法代替了一般的线性化。
SLTRSS
统计线性化RTS平滑方程为:
式中,期望值服从滤波分布
x
k
∼
p
(
m
k
,
P
k
)
\bm{x_k \sim p(m_k, P_k) }
xk∼p(mk,Pk)
非叠加型SLRTSS可参考统计线性化滤波器,只需要更改平滑方程中的前两项即可。
无迹RTS平滑器(URTSS)
无迹RTS平滑器是一种高斯逼近平滑器,由无迹变换来逼近其非线性。
叠加型URTSS:
1). 构造
s
i
g
m
a
\bm{sigma}
sigma 点:
式中,参数
λ
\bm{\lambda}
λ 的定义见: https://blog.csdn.net/calabash_man/article/details/105620575 相关部分。
2). 将
s
i
g
m
a
\bm{sigma}
sigma 点带入动态模型:
3). 计算预测均值
m
k
+
1
−
\bm{m_{k+1}^-}
mk+1−,预测协方差
P
k
+
1
−
\bm{P_{k+1}^-}
Pk+1− 和互协方差
D
k
+
1
\bm{D_{k+1}}
Dk+1:
式中,权值
W
i
(
m
)
,
W
i
(
c
)
\bm{W_i^{(m)},W_i^{(c)}}
Wi(m),Wi(c)定义见: https://blog.csdn.net/calabash_man/article/details/105620575 相关部分。
4). 计算平滑增益
G
k
\bm{G_k}
Gk,平滑均值
m
k
s
\bm{m_k^s}
mks 和平滑协方差
P
k
s
\bm{P_k^s}
Pks:
以上计算从滤波结束时刻开始,即:
m
T
s
=
m
T
P
T
s
=
P
T
\bm{m_T^s = m_T} \\ \bm{P_T^s = P_T}
mTs=mTPTs=PT
从最后时候 k = T \bm{k=T} k=T 开始向后递推到最初 k = 0 \bm{k=0} k=0 时刻,这样就能够求解出所有时刻的平滑分布。
非叠加型无迹RTS平滑器:
1). 构造
s
i
g
m
a
\bm{sigma}
sigma 点:
式中
n
′
=
n
+
n
q
\bm{n^{'}=n+n_q}
n′=n+nq 为
x
k
,
q
k
\bm{x_k,q_k}
xk,qk 的维度之和。
2). 将
s
i
g
m
a
\bm{sigma}
sigma 点带入动态模型:
式中,
χ
~
k
(
i
)
,
x
,
χ
~
k
(
i
)
,
q
\bm{\widetilde{\chi}_k^{(i),x},\widetilde{\chi}_k^{(i),q}}
χ
k(i),x,χ
k(i),q 分别为
x
k
,
q
k
\bm{x_k,q_k}
xk,qk 的扩展
s
i
g
m
a
\bm{sigma}
sigma 点。
3). 计算预测均值
m
k
+
1
−
\bm{m_{k+1}^-}
mk+1−,预测协方差
P
k
+
1
−
\bm{P_{k+1}^-}
Pk+1− 和互协方差
D
k
+
1
\bm{D_{k+1}}
Dk+1:
参数
λ
′
\bm{\lambda^{'}}
λ′ 和权值
W
i
(
m
)
′
,
W
i
(
c
)
′
\bm{W_i^{(m)'},W_i^{(c)'}}
Wi(m)′,Wi(c)′ 的定义见: https://blog.csdn.net/calabash_man/article/details/105620575 相关部分。
4). 计算平滑增益
G
k
\bm{G_k}
Gk,平滑均值
m
k
s
\bm{m_k^s}
mks 和平滑协方差
P
k
s
\bm{P_k^s}
Pks:
以上计算从滤波结束时刻开始,即:
m
T
s
=
m
T
P
T
s
=
P
T
\bm{m_T^s = m_T} \\ \bm{P_T^s = P_T}
mTs=mTPTs=PT
从最后时候 k = T \bm{k=T} k=T 开始向后递推到最初 k = 0 \bm{k=0} k=0 时刻,这样就能够求解出所有时刻的平滑分布。
根据已知实验模拟分析,平滑器所得结果的均方根误差均小于滤波器所得结果。且统计线性化RTS平滑器和无迹RTS平滑器的平滑结果略优于扩展RTS平滑器。