卡尔曼滤波

1贝叶斯滤波

1.1理论基础

(1)本质:通过贝叶斯公式随机信号处理,从而减小不确定度(即方差)。

(2)随机过程:x1,…,xn为随机变量,但不独立。
主观概率(先验概率)(实验前),
引入外部观测(证据、信息),
得到相对客观的概率(后验概率)(实验后)。

(3)先验概率、后验概率、似然概率
离散举例:温度测量 T 实 际 温 度 、 T m 温 度 计 测 量 温 度 T实际温度、T_m温度计测量温度 TTm
a. 先验概率分布
{ P ( T = 10 ) = 0.8 表 示 实 际 温 度 为 10 的 概 率 为 0.8 P ( T = 11 ) = 0.2 \left\{ \begin{aligned} &P(T=10) = 0.8 表示实际温度为10的概率为0.8 \\ &P(T=11)=0.2 \end{aligned} \right. {P(T=10)=0.8100.8P(T=11)=0.2
b. 温度计测量值 T m T_m Tm
c. 后验概率分布:
P ( T = 10 ∣ T m = 10.3 ) = P ( T m = 10.3 ∣ T = 10 ) ∗ P ( T = 10 ) P ( T m = 10.3 ) P(T=10|T_m=10.3)=\frac{P(T_m=10.3|T=10)*P(T=10)}{P(T_m=10.3)} P(T=10Tm=10.3)=P(Tm=10.3)P(Tm=10.3T=10)P(T=10)
表示在温度计显示为10.3度的条件下,实际温度为10度的概率。
其中, P ( T m = 10.3 ∣ T = 10 ) P(T_m=10.3|T=10) P(Tm=10.3T=10)表示在实际温度为10度的情况下温度计测量为10.3度的概率。似然概率:观测精度/传感器精度;
P ( T m = 10.3 ) P(T_m=10.3) P(Tm=10.3)看作常数 η \eta η

后验= η ∗ 似 然 ∗ 先 验 \eta*似然*先验 η,其中 η = 1 ∑ ( 似 然 ∗ 先 验 ) \eta=\frac{1}{\sum{(似然*先验)}} η=()1


连续
f X ∣ Y ( x ∣ y ) = f Y ∣ X ( y ∣ x ) ∗ f X ( x ) f Y ( y ) = η ∗ 似 然 ∗ 后 验 f_{X|Y}(x|y)=\frac{f_{Y|X}(y|x)*f_{X}(x)}{f_{Y}(y)}=\eta*似然*后验 fXY(xy)=fY(y)fYX(yx)fX(x)=η

定理:若 f X ( x ) f_{X}(x) fX(x)~ N ( μ 1 , δ 1 2 ) , f Y ∣ X ( y ∣ x ) N(\mu_{1}, \delta_1^2),f_{Y|X}(y|x) N(μ1,δ12)fYX(yx)~ N ( μ 2 , δ 2 2 ) N(\mu_2, \delta_2^2) N(μ2,δ22)
f X ∣ Y ( x ∣ y ) f_{X|Y}(x|y) fXY(xy)~ N ( δ 2 2 δ 1 2 + δ 2 2 ∗ μ 1 + δ 1 2 δ 1 2 + δ 2 2 ∗ μ 2 , δ 1 2 δ 2 2 δ 1 2 + δ 2 2 ) . N(\frac{\delta_2^2}{\delta_1^2+\delta_2^2}*\mu_1+\frac{\delta_1^2}{\delta_1^2+\delta_2^2}*\mu_2, \frac{\delta_1^2\delta_2^2}{\delta_1^2+\delta_2^2}). N(δ12+δ22δ22μ1+δ12+δ22δ12μ2,δ12+δ22δ12δ22).
(本质:实现方差降低)。
卡尔曼滤波

|
|

1.2贝叶斯滤波算法

X-先验,Y-观测, Q k Q_k Qk-预测噪声, R k R_k Rk-观测噪声
(1)过程
卡尔曼滤波
x1,…,xn由递推得:
卡尔曼滤波
卡尔曼滤波
(2)前提假设:
a . { 状 态 方 程 : X k = f ( X k − 1 ) + Q k 观 测 方 程 : Y k = h ( X k ) + R k a. \left\{ \begin{aligned} &状态方程:X_k=f(X_{k-1})+Q_k \\ &观测方程:Y_k=h(X_k)+R_k \end{aligned} \right. a.{Xk=f(Xk1)+QkYk=h(Xk)+Rk
b. X k 、 X k − 1 、 Y k 、 Q k 、 R k X_k、X_{k-1}、Y_k、Q_k、R_k XkXk1YkQkRk均为随机变量;
X 0 、 Q 1 . . . Q k 、 R 1 . . . R k X_0、Q_1...Q_k、R_1...R_k X0Q1...QkR1...Rk相互独;
X 0 X_0 X0 ~ f 0 ( x ) , Q k f_0(x),Q_k f0(x)Qk ~ f Q k ( x ) , R k f_{Q_k}(x),R_k fQk(x)Rk ~ f R k ( x ) f_{R_k}(x) fRk(x)

(3)预测步、更新步
卡尔曼滤波
卡尔曼滤波
卡尔曼滤波
卡尔曼滤波

|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||

2卡尔曼滤波

(1)前提假设:
a. f ( X k − 1 ) = F ∗ X k − 1 , h ( X k ) = H ∗ X k f(X_{k-1})=F*X_{k-1},h(X_k)=H*X_k f(Xk1)=FXk1h(Xk)=HXk,F、H为常数;
b. Q~ N(0, q), R~ N(0,r)。

(2)预测步、更新步

(3)五个公式:
{ μ k − = F ∗ μ k − 1 + δ k − = F 2 ∗ δ k − 1 + + q 卡 尔 曼 增 益 K = H ∗ δ k − H 2 ∗ δ k − + r μ k + = K ∗ ( y k − H ∗ μ k − ) + μ k − δ k + = ( 1 − H ∗ K ) ∗ δ k − \left\{ \begin{aligned} &\mu_k^-=F*\mu_{k-1}^+\\ &\delta_k^-=F^2*\delta_{k-1}^++q\\ &卡尔曼增益K=\frac{H*\delta_k^-}{H^2*\delta_k^-+r}\\ &\mu_k^+=K*(y_k-H*\mu_k^-)+\mu_k^-\\ &\delta_k^+=(1-H*K)*\delta_k^- \end{aligned} \right. μk=Fμk1+δk=F2δk1++qK=H2δk+rHδkμk+=K(ykHμk)+μkδk+=(1HK)δk

(4)矩阵形式: μ k → μ k ⃗ , δ k → δ k ⃗ \mu_k\rightarrow\vec{\mu_k},\delta_k\rightarrow\vec{\delta_k} μkμk δkδk ,F、H均为矩阵。
{ μ k − ⃗ = F ∗ μ k − 1 + ⃗ δ k − ⃗ = F ∗ δ k − 1 + ⃗ ∗ F T + q 卡 尔 曼 增 益 K = H ∗ δ k − ⃗ H ∗ δ k − ⃗ ∗ H T + r μ k + ⃗ = K ∗ ( y k ⃗ − H ∗ μ k − ⃗ ) + μ k − ⃗ δ k + ⃗ = ( 1 − H ∗ K ) ∗ δ k − ⃗ \left\{ \begin{aligned} &\vec{\mu_k^-}=F*\vec{\mu_{k-1}^+}\\ &\vec{\delta_k^-}=F*\vec{\delta_{k-1}^+}*F^T+q\\ &卡尔曼增益K=\frac{H*\vec{\delta_k^-}}{H*\vec{\delta_k^-}*H^T+r}\\ &\vec{\mu_k^+}=K*(\vec{y_k}-H*\vec{\mu_k^-})+\vec{\mu_k^-}\\ &\vec{\delta_k^+}=(1-H*K)*\vec{\delta_k^-} \end{aligned} \right. μk =Fμk1+ δk =Fδk1+ FT+qK=Hδk HT+rHδk μk+ =K(yk Hμk )+μk δk+ =(1HK)δk
卡尔曼滤波

学习来源:感谢up主:忠厚老实的老王