读《概率机器人》第1、2章
§1 引入
-
机器人不确定性的来源
- 环境
- 传感器
- 执行器
- 模型
- 计算误差
-
机器人范式
graph LR A(基于模型) B(条件-反应) C(混合范式) A-->C B-->C D(概率范式) A-.->|不确定的模型|D B-.->|不确定的感知|D
§2 状态回环估计
1 概率论基础概念
-
随机变量及其观测值
-
概率以及概率密度函数(Probability Density Function, PDF)
- 常见的多维正态分布\[p(x) = \det(2\pi\Sigma)^{-\frac{1}{2}}\exp{\{-\frac{1}{2}(x-\mu)\Sigma^{-1}(x-\mu)\}} \]其中\(\Sigma\)是协方差矩阵,半正定且对称。
- 常见的多维正态分布
-
联合分布(Joint Distrubution):记作\(p(x,y)=p(X=x\ \text{and}\ Y=y)\)
- 独立:\(p(x, y)=p(x)p(y)\)
-
条件概率(Conditional Probability):\(p(x\mid y) = \frac{p(x, y)}{p(y)}\)
- 条件独立:\(p(x,y\mid z)=p(x\mid z)p(y\mid z)\),与独立不能相互推导
-
全概率定理(Theorem of Total Probability):即所有情况的概率的和(积分)为1。
-
贝叶斯准则(Bayes Rule):\(p(x\mid y) = \frac{p(y\mid x)p(x)}{p(y)}\)
- \(Y\)当做实际值,\(X\)当做测量值,则\(p(x\mid y)\)被称为生成式模型(Generative Model),且因为一般\(p(y)\)与\(x\)无关,分母一般都写作归一化因子\(\eta\),即\(p(x \mid y)=\eta p(y\mid x)p(x)\)
-
期望
\[\begin{aligned} &E[X]=\sum_{x} x p(x) \quad \text { (discrete) } \\ &E[X]=\int x p(x) d x \quad \text { (continuous) } \end{aligned} \] -
方差
\[\mathrm{Cov}[X]=E[X-E[X]]^2=E[X^2]-E[X]^2 \] -
熵:随机变量\(X\)包含的以比特为单位的信息的期望
\[H_p(x)=E[-\log_2p(x)] \]
2 机器人与环境的交互
-
状态:本书中以\(x\)表示,下标表示是某一时刻的状态。
-
概念-完全状态(Complete State):一组最能够预测未来状态的状态
-
以下是一些最常用的的例子:
-
机器人姿态:三个空间坐标,三个朝向坐标
-
执行器的配置:关节角度等
-
动态状态:执行器的运动情况等
-
周遭物体的位置及特征
-
周遭物体的运动
-
-
-
与环境的交互
-
感知:得到的数据用\(z\)表示,感知可以增加系统对外界的认识。
- 测量概率(Measurement Probability):\(p(z_t\mid x_t)\)
-
控制:得到的数据用\(u\)表示,控制倾向于减少系统对外界的认识。
- 状态转移概率(State Transition Probability):\(p(x_t\mid x_{t-1}, u_t)\)
-
状态估计(Belief):机器人根据其感知与控制数据而对状态概率分布做出的估计,记号如下
\[\operatorname{bel}(x_t)=p(x_t\mid z_{1:t},u_{1:t})\\ \overline{\operatorname{bel}}(x_t)=p(x_t\mid z_{1:t-1},u_{1:t}) \]
3 贝叶斯滤波器
-
-
贝叶斯滤波器
-
前提
- \(x_t\)是完全状态
- 控制量\(u\)是随机给定的
那么直觉上讲贝叶斯滤波器给出的估计(belief)是很好的。
-
内容
\[\begin{aligned} &\overline{\operatorname{bel}}\left(x_{t}\right)=\int p\left(x_{t} \mid u_{t}, x_{t-1}\right) \text {bel}\left(x_{t-1}\right) \mathrm d x_{t-1} \\ &\operatorname{bel}\left(x_{t}\right)=\eta p\left(z_{t} \mid x_{t}\right) \overline{\operatorname{bel}}\left(x_{t}\right) \end{aligned} \]- 输入:\(\operatorname{bel}(x_{t-1}), u_t, z_t\)
- 输出:\(\operatorname{bel}(x_t)\)
- 第一步称为预测(prediction)。在\(u\)随机的条件下,该式等价于\(p(y)=p(y\mid x)p(x)\)
- 第二步称为测量更新(measurement update),是贝叶斯准则的应用。
-
-
马尔科夫假设:在当下状态已知的条件下,现在和过去的数据是相互独立的。如果在实际中应用贝叶斯滤波器,则由于以下一些原因,这一假设并不总能成立:
- 未被模型考虑在内的环境变量
- 假设的概率模型与实际概率模型的误差
- 计算时使用的近似方法带来的误差
- 实际过程中的控制量并不随机
课后习题总结
对于随机变量取值离散且有限的情况
- 使用状态转移矩阵来描述会很方便
- 有的马尔可夫过程具有与初始状态无关的稳态分布
- 结合使用贝叶斯准则、\(p(A)=\sum\limits_ip(A\mid B_i)p(B_i)\)等公式,并尝试提取形式相同的部分,可以通过迭代法得到一些隐藏的随机变量之间的关系