基于滤波器的激光SLAM-1-A-贝叶斯滤波推导

用了这么多年Kalman Filter,居然才看贝叶斯滤波的推导。

p(x_t|z_1_:_t,u_1_:_t)=\eta *p(z_t|x_t)*\int p(x_t|x_t_-_1,u_t)p(x_t_-_1|z_1_:_t_-_1,u_1_:_t_-_1)dx_t_-_1

对于一个系统,我们知道1到t时刻的观测量z_1_:_t控制量u_1_:_t,我们要求出当前t时刻的状态量x_t

即我们要求后验概率分布p(x_t|z_1_:_t,u_1_:_t),我们把z_1_:_t拆开成z_tz_1_:_t_-_1

p(x_t|z_1_:_t,u_1_:_t)=p(x_t|z_t,u_1_:_t,z_1_:_t_-_1)

套用贝叶斯公式,p(x_t|z_t,z_1_:_t_-_1,u_1_:_t)=\eta * p(z_t|x_t,z_1_:_t_-_1,u_1_:_t) * p(x_t|z_1_:_t_-_1,u_1_:_t)

 

(我是从这个角度来理解的)

正常贝叶斯p(x_t|z_t)=\frac{p(z_t|x_t)p(x_t)}{p(z_t)}=\eta *p(z_t|x_t)p(x_t)

然后我们把跟当前状态x_t不相关的变量u_1_:_tz_1_:_t_-_1加进去,则\eta *p(z_t|x_t)p(x_t)=\eta *p(z_t|x_t,u_1_:_t,z_1_:_t_-_1)p(x_t|u_1_:_t,z_1_:_t_-_1)

 

话说回来,因为观测z_t只跟状态x_t相关,其他无关的变量可以去掉,则p(z_t|x_t,u_1_:_t,z_1_:_t_-_1)=p(z_t|x_t)

后面半截套用全概率公式呢是这样子的p(x_t|z_1_:_t_-_1,u_1_:_t)=\int p(x_t|x_t_-_1,z_1_:_t_-_1,u_1_:_t)p(x_t_-_1|u_1_:_t,z_1_:_t_-_1)dx_t_-_1

 

(我是这么理解的)

p(x_t)=\int p(x_t|x_t_-_1)p(x_t_-_1)dx_t_-_1每一项插入不相关变量z_1_:_t_-_1u_1_:_t得到p(x_t|z_1_:_t_-_1,u_1_:_t)=\int p(x_t|x_t_-_1,z_1_:_t_-_1,u_1_:_t)p(x_t_-_1|u_1_:_t,z_1_:_t_-_1)dx_t_-_1

 

然后全概率公式中的

p(x_t|x_t_-_1,z_1_:_t_-_1,u_1_:_t)中状态x_t又跟观测z_1_:_t_-_1和之前的控制量u_1_:_t_-_1无关,

p(x_t|x_t_-_1,z_1_:_t_-_1,u_1_:_t)=p(x_t|x_t_-_1,u_t)

p(x_t|x_t_-_1,u_t)就是运动方程啦。

另外半截p(x_t_-_1|u_1_:_t,z_1_:_t_-_1)中也跟u_1_:_t_-_1无关,

p(x_t_-_1|u_1_:_t,z_1_:_t_-_1)=p(x_t_-_1|u_1_:_t_-_1,z_1_:_t_-_1)

p(x_t_-_1|u_1_:_t_-_1,z_1_:_t_-_1)不就是上一时刻的后验概率分布嘛?

最后整理到一块

p(x_t|z_1_:_t,u_1_:_t)=\eta *p(z_t|x_t)*\int p(x_t|x_t_-_1,u_t)p(x_t_-_1|z_1_:_t_-_1,u_1_:_t_-_1)dx_t_-_1

当前时刻的后验概率分布=常数项*当前观测*运动方程*基于上时刻的后验概率分布。

定义p(x_t|z_1_:_t,u_1_:_t)=bel(x_t)后验概率分布

p(x_t|z_1_:_t_-_1,u_1_:_t)=\widehat{bel(x_t)}proposal分布

bel(x_t)=\eta * p(z_t|x_t)*\widehat{bel(x_t)}用当前观测去修正预测概率分布

\widehat{bel(x_t)}=\int p(x_t|x_t_-_1,u_t)p(x_t_-_1|z_1_:_t_-_1,u_1_:_t_-_1)dx_t_-_1

 

你可能感兴趣的:(激光SLAM)