机器人系列文章目录

第一章 ubuntu16.04系统及相关软件安装
第二章 Linux操作系统入门笔记
第三章 ROS系统架构及程序编写过程
第四章 《probabilistic robotics》学习笔记


本章目录

  • 机器人系列文章目录
  • chpt1 绪论
  • chpt2 递归状态估计
    • 2.2 概率论概念
    • 2.3 机器人环境交互
      • 2.3.4 Belief Distribution
    • 2.4 贝叶斯滤波算法
  • chpt3 高斯滤波器
    • 3.2 卡尔曼滤波器
    • 3.3 扩展的卡尔曼滤波
    • 3.4 无迹卡尔曼滤波
    • 3.5 信息滤波器The Information Filter

chpt1 绪论

probabilistic robotics核心是estimating state from sensor data。用概率理论的运算去明确地表示机器人感知和行为的不确定性。即,不再只依赖可能出现情况的单一的“最好推测best guess”,而是用概率算法来表示在整个推测空间的概率分布信息。

eg1:Markov localization
eg2:coastal navigation

chpt2 递归状态估计

2.2 概率论概念

全概率公式p16
贝叶斯公式
先验概率(prior probability):p(x)
后验概率(posterior probability):p(x|y)
多条件贝叶斯概率
期望
熵(entropy)p18

注:公式参考:https://www.jianshu.com/p/37daf3b83ffc

2.3 机器人环境交互

2.3.1 state
state用于表示环境
pose包含location和orientation
1.位置(x,y,z)
机器人中二维只用到x,y。
坐标系为右手系:朝前的方向为x轴;各轴正方向同样为右手系。

2.欧拉角(roll,pitch,yaw)
翻滚角,俯仰角,偏航角。只用到yaw。
3.Quaternion(四元数)q=w+xi+yj+zk( w 是实数,x,y,z是虚数)=[[w,v]] (v=(x,y,z)是四维空间的矢量,w是标量)底层代码需要。转换为欧拉角时,只有yaw有值。
4.速度:线速度、角速度。只需要两个参数x和theta。

2.3.2 environment interaction
measurement利用传感器获取环境状态
Control actions

2.3.3 probabilistic generative laws
1.状态转移概率:
Xt只与Xt-1和ut有关:p(xt|xt-1,ut)
2.测量概率:
Zt只与Xt有关:p(zt|xt)

2.3.4 Belief Distribution

反映了机器人有关环境状态的内部信息。由坐标数据推导出位姿。
假设机器人通过条件概率分布表示belief,belief distribution为每一个可能的假设分配一个概率(概率密度值)。置信度分布是以可以获得的数据为条件的关于状态变量的后验概率,用bel(xt)表示,xt是state variable状态变量。这个后验是时刻t下状态xt的概率分布,以过去所有的变量x1:t和所有过去的控制u1:t为条件:
**bel(xt)=p(xt|z1:t,u1:t)**打喷嚏时避免向着其他的人
默认的置信度是综合了测量zt后得到的,但是在刚刚执行ut之后,综合zt之前计算后验是十分有用的,这样的后验就可以表示为:
bel (xt)=p(xt|z1:t−1,u1:t)
在概率滤波的框架下此概率经常被称为预测(prediction),bel (xt)是基于以前状态的后验,在综合时刻t的测量之前预测了时刻t的状态,由bel (xt)计算bel(xt)称为修正(correction)或测量更新(measurement update)

2.4 贝叶斯滤波算法

用于估计环境和机器人状态。
给出所有过去的传感器测量和控制数据,计算xt状态的后验,即bel。

推导过程:略
推导假设世界是马尔科夫的,即状态是完整的

具体实现条件:
1.初始置信initial belief:p(x0)
2.测量概率measurement probability:p(zt|xt)
3.状态转移概率state transition probability:p(xt|ut,xt-1)

2.4.4 马尔科夫假设
Markov assumption or complete state assumption(状态完备假设)
过去和未来的数据独立
一般经验法则:定义状态xt时要excise care(以便unmodeled state variables有接近随机的影响)

chpt3 高斯滤波器

是一类递归状态的估计。是贝叶斯滤波器在连续空间中的实现。
基本思想:belief置信由多元正态分布表示。
其中高斯函数单峰unimodal;高斯分布的均值和协方差表示称为矩参数moments parameterization

3.2 卡尔曼滤波器

线性高斯
用于连续状态的belief计算,由矩参数表示。
若如下三个性质不变,且满足贝叶斯滤波器的马尔科夫假设,则后验为高斯:
状态转移概率是带有随机高斯噪声的参数的线性函数;测量概率与带有高斯噪声的自变量呈线性关系;初始置信度是正态分布的。
KF 表示均值为μ_t、方差为 sigma_t的在时刻 t 的置信度 bel(x,) 。 KF 的输入就是 t - 1 时刻的置信度,其均值和
方差分别用μ_t-1 和 sigma_t-1 表示。为了更新这些参数, KF 需要控制向量 u_t和测量向量 z_t。输出的是时刻 t 的置信度,均值为μ_t、方差为 sigma_t.
以下版权:https://blog.csdn.net/weixin_44580210/article/details/90417331
A :状态转移系数矩阵,n×n
B :可选的控制输入的增益矩阵
R :过程激励噪声的协方差矩阵
C :量测系数矩阵,m×n
Q :测量噪声协方差矩阵

3.3 扩展的卡尔曼滤波

非线性高斯系统
放宽了一个假设:线性化假设。这里假设状态转移概率和测量概率分别由非线性函数控制。
为线性化:一阶泰勒展开,从状态转移方程和测量方程中线性化得到两个雅可比矩阵:G_t,H_t

3.4 无迹卡尔曼滤波

线性化的另一种方法:通过使用加权统计线性回归过程实现随机线性化。
即无迹变换(unscented transform):主要通过n个在先验分布中采集的点(我们把它们叫sigma points)的线性回归来线性化随机变量的非线性函数。
对比:由于我们考虑的是随机变量的扩展,所以这种UKF线性化要比泰勒级数线性化(EKF所使用的策略)更准确;UKF能有效地克服EKF估计精度低、稳定性差的问题,因为不用忽略高阶项,所以对于非线性分布统计量的计算精度高,能有效地克服EKF估计精度低、稳定性差的问题。
————————————————
版权文链接:https://blog.csdn.net/weixin_42905141/article/details/99710297

算法:分为预测和更新,见上文后半部分。

3.5 信息滤波器The Information Filter

信息滤波使用 信息矩阵和信息矢量 进行迭代,它是kalman滤波的信息格式,利用矩阵的稀疏性优化效率

《probabilistic robotics》学习笔记——卡尔曼滤波相关推荐

  1. 【学习笔记】卡尔曼滤波中的协方差矩阵

    本文转载至: 添加一些自己的理解和标注的重点,算是学习笔记吧: 一. 什么是卡尔曼滤波: 首先定义问题: 对于某一个系统,知道当前状态Xt,存在以上两个问题: 1. 经过时间△t后,下一个状态如何求出 ...

  2. 台大李宏毅Machine Learning 2017Fall学习笔记 (5)Classification: Probabilistic Generative Model

    台大李宏毅Machine Learning 2017Fall学习笔记(5)Classification: Probabilistic Generative Model 本节课以二分类问题为例,详细讲解 ...

  3. Learning ROS for Robotics Programming Second Edition学习笔记(六) indigo xtion pro live

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS for Robotics Pr ...

  4. Learning ROS for Robotics Programming Second Edition学习笔记(七) indigo PCL xtion pro live

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS forRobotics Pro ...

  5. MATLAB机器人工具箱Robotics Toolbox安装——以Win10环境下MATLAB2017b为例【个人学习笔记】

    MATLAB学习--经验与交流[个人学习笔记] 此处安装的机器人工具箱版本为10.4:MATLAB2017b. 安装包来源:机器人工具箱官网:https://petercorke.com/toolbo ...

  6. 学习笔记之——Event Camera(事件相机)调研

    本博文是本人调研Event Camera写下的学习记录,本博文的内容来源于网络.paper以及本人学习调研过程的心得,仅供本人学习记录用,不作商业用途. 我们团队在事件相机方面的工作请见: GitHu ...

  7. 视觉SLAM十四讲学习笔记-第二讲-开发环境搭建

    专栏系列文章如下: 视觉SLAM十四讲学习笔记-第一讲_goldqiu的博客-CSDN博客 视觉SLAM十四讲学习笔记-第二讲-初识SLAM_goldqiu的博客-CSDN博客 ​​​​​​​ lin ...

  8. 一文弄懂元学习 (Meta Learing)(附代码实战)《繁凡的深度学习笔记》第 15 章 元学习详解 (上)万字中文综述

    <繁凡的深度学习笔记>第 15 章 元学习详解 (上)万字中文综述(DL笔记整理系列) 3043331995@qq.com https://fanfansann.blog.csdn.net ...

  9. Deep Learning(深度学习)学习笔记整理系列之(八)

     Deep Learning(深度学习)学习笔记整理系列之(八) 分类: Deep Learning 机器学习 Linux驱动2013-04-10 11:4257652人阅读评论(25)收藏举报 ...

最新文章

  1. linux文件管理相关操作
  2. 多版本JDK切换方式
  3. LightOJ - 1071 Baker Vai(最大费用最大流+拆点)
  4. leetcode310. 最小高度树(bfs)
  5. 错误:子进程 已安装 pre-removal 脚本 返回了错误号 1
  6. 三个等价c语言表达式,C语言习题综合(20页)-原创力文档
  7. 服务器修改地址,服务器修改管理地址
  8. WEB OS + WEB IM(续)
  9. android jni示例,Android Jni代码示例讲解
  10. java随机生成昵称
  11. pg数据库客户端linux,PostgresSQL客户端pgAdmin4使用
  12. DELL服务器bios文件编辑,BIOS维修网站www.biosrepair.com-DELL 1600SC服务器BIOS分离过程...
  13. C# WinForm 使用SMS接口发送手机验证码+图形验证码+IP限制
  14. less模块——math函数
  15. 费马小定理以及快速幂应用
  16. 朴素贝叶斯+Python3实现高斯朴素贝叶斯
  17. 中科院自动化研究所彭思龙:科学家创业的“七宗罪”
  18. android 相机拍照声音文件格式,android4.1 添加相机快门声音开关
  19. 《《《翻译》》》pointfusion三维包围盒
  20. access百度翻译 get_【Access示例】英文翻译成中文

热门文章

  1. python中stringvar的用法_Python tkinter.StringVar方法代码示例
  2. 又一个奇葩要求,看看Python是如何将“中文”转“拼音”的?
  3. 发邮件时提示连接服务器失败,发送邮件时经常出现发送失败或是连接超时什么原因...
  4. [Windows] Flash.Player|AX|PP|32.0.0.142 去广告 不跳更新版
  5. HDU1000A+B problem c++
  6. VUE项目报错Error Cannot find module ‘webpacklibRuleSet‘_解决
  7. 漏洞复现篇——利用XSS漏洞实现键盘记录
  8. HDFS健康检查 hdfs fsck
  9. 华为手机显示切换服务器,手机切换云服务器
  10. php中函数trim,PHP中的trim函数怎么用