概率机器人(3)-卡尔曼滤波

       卡尔曼滤波是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包含系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。

       卡尔曼用矩参数表示置信度:在时间t,置信度用均值u_t和方差\varepsilon _t表达。除了贝叶斯滤波的马尔可夫假设之外,还具有其他的三个特征,则后验就是高斯的。马尔可夫假设设定过去和未来数据都是独立的,即当前时刻的状态至于上一时刻有关。

        1)状态转移概率p(x_t|u_t,x_{t-1})必须是带有随机高斯噪声的参数的线性函数:

                                        x_t=A_tx_{t-1}+B_tu_t+\varepsilon _t                                                                                                                     (1)

式1定义了状态转移概率p(x_t|u_t,x_{t-1})。这个概率可由式1带入到多元正态分布。后验状态的均值由A_tx_{t-1}+B_tu_t给定,方差由R_t给定:

                  p(x_t|u_t,x_{t-1})=det(2\pi R_t)^{-\frac{1}{2}}exp{-\frac{1}{2}(x_t-A_tx_{t-1}-B_tu_t)^TR_t^{-1}(x_t-A_tx_{t-1}-B_tu_t)}                                     (2)

        2)测量概率p(z_t|x_t)也与带有高斯噪声的自变量呈线性关系:

                                                                         z_t=C_tx_t+\delta _t                                                                                                     (3)

同样的测量概率的多元正态分布给定为:

                                           p(z_t|x_t)=det(2\pi Q_t)^{-\frac{1}{2}}exp{-\frac{1}{2}(z_t-C_tx_{t})^TQ_t^T(z_t-C_tx_{t})}                                                         (4)

         3)初始置信度bel(x_0)必须是正态分布的。用u_0\varepsilon _0表示置信度的均值和方差:

                                           bel(x_0)=p(x_0)=det(2\pi \varepsilon _0)^{-\frac{1}{2}}exp{-\frac{1}{2}(x_0-u_0)\varepsilon _0^{-1}(x_0-u_0)}                                                     (5)

         卡尔曼滤波算法:KF表示均值为u_t、方差为\varepsilon _t在时间t的置信度bel(x_t)。KF的输入是t-1时刻的置信度,其均值u_{t-1}和方差\varepsilon _{t-1},为了更新这些参数,KF需要控制向量u_t和测量向量z_t

         

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值