贝叶斯滤波

贝叶斯滤波从控制数据(移动机器人),感知数据(传感器)来获取最终结果的置信度bel。

摘自《Probabilistic robotics》

贝叶斯滤波过程如上图。

我们可以分成两步:

  • 通过控制量做出预测 [公式]
  • 结合观测量进行更新 [公式]

注意到滤波器需要之前的状态,所以需要初始化开始状态 [公式]

1.预测

基于[公式]进行控制预测时,应该注意到,前一时刻的状态并不确定,也是一个后验分布,应该对每一个可能状态施加[公式]获得预测,这便需要用到全概率公式,这也是伪代码中第3行积分的由来。

看一个机器人判断门状态的例子(摘自《Probabilistic robotics》):

门有两个状态, close open.所以初始概率我们可以设置如下:

在假设感知概率如下:

在加上机器人的控制操作,可以计算出 [公式]

分为2类,有动作和没有动作

之后我们就可以根据贝叶斯第一步的公式计算 [公式] ,假设在time t机器人没有做任何动作,则有两种可能一种是们开着,一种是没有开。

2.测量更新

有了预测值之后,我们就需要根据传感器来更新我们的预测.时间t时,感知到门是开着的。

[公式] 是归一化参数,保证最后的置信度之和为1。

计算方式很简单!

参考文献:

Thrun S. Probabilistic robotics[M]. MIT Press, 2006.