0 数学基础知识
- 随机变量 X X X的值为 x t x_t xt: p ( X = x t ) p(X=x_t) p(X=xt) 简写为 p ( x t ) p(x_t) p(xt)
- 测量值 z z z:
z t 1 : t 2 = z t 1 , z t 1 + 1 , z t 1 + 2 , ⋯ , z t 2 z_{t_1:t_2} = z_{t_1}, z_{t_1+1}, z_{t_1+2}, \cdots, z_{t_2} zt1:t2=zt1,zt1+1,zt1+2,⋯,zt2 - 控制值 u u u:
u t 1 : t 2 = u t 1 , u t 1 + 1 , u t 1 + 2 , ⋯ , u t 2 u_{t_1:t_2} = u_{t_1}, u_{t_1+1}, u_{t_1+2}, \cdots, u_{t_2} ut1:t2=ut1,ut1+1,ut1+2,⋯,ut2 - 条件概率:
p ( x t ∣ z t ) = p ( z t ∣ x t ) p ( x t ) p ( z t ) ↓ 在条件中加入 z 1 : t − 1 , u 1 : t , 等式依然成立 p ( x t ∣ z t , z 1 : t − 1 , u 1 : t ) = p ( z t ∣ x t , z 1 : t − 1 , u 1 : t ) p ( x t ∣ z 1 : t − 1 , u 1 : t ) p ( z 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)}\\ \downarrow \text{在条件中加入}z_{1:t-1},u_{1:t},\text{等式依然成立}\\ p(x_t|z_t,z_{1:t-1},u_{1:t}) = \frac{p(z_t|x_t,z_{1:t-1},u_{1:t})p(x_t|z_{1:t-1},u_{1:t}) }{p(z_t|z_{1:t-1},u_{1:t})} p(xt∣zt)=p(zt)p(zt∣xt)p(xt)↓在条件中加入z1:t−1,u1:t,等式依然成立p(xt∣zt,z1:t−1,u1:t)=p(zt∣z1:t−1,u1:t)p(zt∣xt,z1:t−1,u1:t)p(xt∣z1:t−1,u1:t) - 观测值 z t z_t zt与之前观测值 z 1 : t − 1 z_{1:t-1} z1:t−1和控制量 u 1 : t u_{1:t} u1:t无关(马尔可夫性)
p ( z t ∣ x t , z 1 : t − 1 , u 1 : t ) = p ( z t ∣ x t ) p(z_t|x_t,z_{1:t-1},u_{1:t}) = p(z_t|x_t) p(zt∣xt,z1:t−1,u1:t)=p(zt∣xt) - 状态 x t x_t xt仅与前一时刻状态 x t − 1 x_{t-1} xt−1和当前时刻控制量 u t u_t ut有关
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},z_{1:t-1},u_{1:t})=p(x_t|x_{t-1},u_t) \text{(状态转移概率)} p(xt∣xt−1,z1:t−1,u1:t)=p(xt∣xt−1,ut)(状态转移概率) - 条件概率中,如果有一个参数是 t − 1 t-1 t−1时刻的,那么 t t t时刻的任意参数都可以忽略,因为将来的参数( t t t时刻)不可能对现在的参数( t − 1 t-1 t−1时刻)产生影响,也就是说时间不可能倒流
p ( x t − 1 ∣ z 1 : t − 1 , u 1 : t ) = p ( x t − 1 ∣ z 1 : t − 1 , u 1 : t − 1 ) p(x_{t-1}|z_{1:t-1},u_{1:t}) = p(x_{t-1}|z_{1:t-1},u_{1:t-1}) p(xt−1∣z1:t−1,u1:t)=p(xt−1∣z1:t−1,u1:t−1)
1 贝叶斯滤波算法的公式推导
-
贝叶斯滤波算法是已知 b e l ( x t − 1 , u t , z t ) bel(x_{t-1},u_t,z_t) bel(xt−1,ut,zt)求 b e l ( x t ) bel(x_t) bel(xt)
预测: b e l ˉ ( x t ) = p ( x t ∣ z 1 : t − 1 , u 1 : t ) 修正: b e l ( x t ) = p ( x t ∣ z 1 : t , u 1 : t ) \text{预测:}\bar{bel}(x_t) = p(x_t|z_{1:t-1},u_{1:t})\\ \text{修正:}bel(x_t) = p(x_t|z_{1:t},u_{1:t}) 预测:belˉ(xt)=p(xt∣z1:t−1,u1:t)修正:bel(xt)=p(xt∣z1:t,u1:t) -
公式推导 1
-
p ( x t ) = ∫ p ( x t ∣ x t − 1 ) p ( x t − 1 ) d x t − 1 ↓ b e l ˉ ( x t ) = p ( x t ∣ z 1 : t − 1 , u 1 : t ) = ∫ p ( x t ∣ x t − 1