【机器人学中的状态估计】第一讲

2023-05-16

1. 什么是状态估计?

在这里插入图片描述
在这里插入图片描述
通过获得传感器的观测值,建立观测值到状态量的模型,估计出状态量。

2. 概率密度函数

在这里插入图片描述
在这里插入图片描述
【后验概率】 p ( x ∣ y ) p(x|y) p(xy)为在某观测值 y y y下的状态 x x x的PDF
【似然】 p ( y ∣ x ) p(y|x) p(yx)为传感器模型,也就是在不同的状态 x x x下的观测值 y y y的PDF
【先验概率】 p ( x ) p(x) p(x)为状态 x x x本身的PDF
p ( y ) p(y) p(y)是传感器观测值本身的PDF,一般很难直接计算

p ( x ) p(x) p(x)若看做是均匀分布,也就说在某次观测中,不考虑观测值,直接去猜测状态量,那么所有状态量出现的可能性都是一样多的。但在实践中,某次观测的状态量往往与上次的状态量相关,因此 p ( x ) p(x) p(x)并不是均匀分布的。

独立与相关

在这里插入图片描述
所谓不相关就是不线性相关。

归一化积

在这里插入图片描述

香农信息与互信息

在这里插入图片描述

3. 高斯概率密度函数

在这里插入图片描述
在这里插入图片描述
协方差矩阵为对称正定矩阵,但是估计出来的协方差不能保证正定性

注意到,在一维高斯分布中,取某条等概率线,它将穿过概率曲线的两个点,这两个点以均值所在竖直线为中心线,并且据该条中心线距离都为 σ \sigma σ。也就说 σ \sigma σ决定了等概率线上的点距均值的距离。

同理,在多维高斯分布的情况下,取等概率面,我们将得到一个椭圆,协方差矩阵 Σ \Sigma Σ决定了椭圆上的点与椭圆的距离,即椭圆的形状。在各个随机变量的边缘分布的方差都相等的情况下,椭圆退化为圆。

一维高斯分布中全概率公式证明:

(摘自陈希孺《概率论与数理统计》)
在这里插入图片描述
在这里插入图片描述
在最后一步极坐标换元操作中,需要对原积分公式的3处进行替换:(1)被积分的表达式,这个是显然的;(2)积分上下界;(3) d t d u dt du dtdu替换为 r d r d θ rdrd\theta rdrdθ

第(3)步值得说道一下。
直接地,分别求出

再将它们直接相乘会得到错误的结果,原因是 d t dt dt d u du du等符号比较特殊,不能看做单纯的变量,再深入问为什么我也不知道了。

因此,一般会采用雅克比矩阵来进行换元,暂且记住它吧。
在这里插入图片描述

高斯推断/边缘化-联合高斯分布

在这里插入图片描述
我们希望利用前面所说的贝叶斯公式:
在这里插入图片描述
在已知联合分布和边缘分布的情况下推导出条件分布。我们需要求出条件分布的均值和协方差矩阵。这就要求我们把 p ( x , y ) p(x,y) p(x,y)的协方差矩阵的逆拆成块状,以便于我们把它的随机变量中的 x x x部分和 y y y部分分离出来。下面会进行详细解释。

分块矩阵打洞:

第一种方式:
在这里插入图片描述
其中, D − C A − 1 B D-CA^{-1}B DCA1B叫做 A A A的舒尔补(Schur Complement)。

第二种方式:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
其中, A − B D − 1 C A-BD^{-1}C ABD1C叫做 D D D的舒尔补(Schur Complement)。

进一步地,为了呈现课程PPT中的形式,把第二种方式左侧两个操作矩阵取逆放到右侧,有
在这里插入图片描述
再把公式左右两侧都取逆,有
在这里插入图片描述
把上述示例矩阵替换为协方差矩阵,就可以得到以下的形式:
在这里插入图片描述
这么做的目的是,为了可以把大的联合的协方差的矩阵的求逆转换为一个新矩阵内部的分块的求逆,便于代入高斯密度函数中的二次型,即 ( x − μ ) T Σ − 1 ( x − μ ) (x-\mu)^T\Sigma^{-1}(x-\mu) (xμ)TΣ1(xμ),如下:
在这里插入图片描述
上述的二次型同时包含了期望和协方差信息,也就是高斯分布的全部信息了。

我们上面了做了这么多工作的目的是进行边缘化,也就是把条件概率密度函数从联合概率密度函数中分离出来,依据以下公式:
p ( x , y ) = p ( x ∣ y ) p ( y ) p(x,y) = p(x|y)p(y) p(x,y)=p(xy)p(y)
由于二次型包含了高斯分布的全部信息,因此我们只需要在二次型中把 p ( x ∣ y ) p(x|y) p(xy) p ( y ) p(y) p(y)的期望和协方差分离出来就行。借助上面的矩阵打洞,我们把 p ( x , y ) p(x,y) p(x,y)的协方差的逆顺利拆散了,并进行分离。
在这里插入图片描述在这里插入图片描述

高斯分布的变换

(1)线性变换
在这里插入图片描述
在这里插入图片描述
线性变换前,随机变量服从高斯分布,则线性变换后仍然服从线性变换。

(2)非线性变换
非线性变换的情况下,得到的 p ( x ) p(x) p(x)不服从高斯分布。
在这里插入图片描述
举个标量的例子:
在这里插入图片描述
我觉得这里的推导比较玄学…
线性化
在这里插入图片描述
一维情况下的例子:
在这里插入图片描述
下面的推导非常难,反正我没看懂:
在这里插入图片描述
在这里插入图片描述

高斯分布的不相关性等价于独立性

在这里插入图片描述

归一化积

在这里插入图片描述

4个SMW恒等式

其实仍然是矩阵填洞,只是把两种不同的填洞方法给等价起来。
在这里插入图片描述
在这里插入图片描述
(1+3个相乘)的逆
(1+3个相乘)的逆再乘(2个相乘)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【机器人学中的状态估计】第一讲 的相关文章

  • matlab小课堂01—向量的建立

    1 直接输入 xff1a x 61 a b c d e f 创建 包含指定元素 的 行向量 注意 xff1a 间隔为空格 xff0c 或者逗号 2 冒号表达式法 xff1a xff08 1 xff09 x 61 first last 创建
  • python193(字符串09—拆分和拼接字符串)

    拆分和连接 方法说明string partition str 把字符串string分成一个3元素的元组 xff08 str前 xff0c str xff0c str后 xff09 string rpartition str 类似于parti
  • python238(全局变量03—函数内部不允许修改全局变量的值)

    函数不能直接修改全局变量的引用 在函数内部 xff0c 可以通过全局变量的引用获取对应的数据但是 xff0c 不允许直接修改全局变量的引用 使用赋值语句修改全局变量的值
  • python007(游戏窗口04—创建游戏窗口和游戏循环)

    创建游戏主窗口 pygame专门提供了一个模块pygame display用于创建 管理游戏窗口 方法说明pygame display set mode 初始化游戏显示窗口pygame display update 刷新屏幕内容显示 xff
  • imu内参标定

    imu内参标定 前言1 imu噪声模型介绍2 imu data和 imu data raw的区别3 px4飞控imu标定 以及遇到的问题kalibr allan标定imu内参 4 使用mintar修改的imu utils进行zed2相机im
  • imu噪声的建模理解

    imu噪声的建模理解 前言一 IMU噪声模型简述二 两篇文档中关于imu噪声模型的描述三 Allan standard deviation AD 读取imu内参 前言 参考An introduction to inertial naviga
  • Airsim环境下的px4硬件在环仿真

    文章目录 前言1 Airsim和硬件在环介绍2 硬件在环测试的准备工作 xff08 硬件和软件 xff09 2 1 usb ttl转接线的制作 xff1a 2 2 px4的ttl端口波特率设置 3 硬件在环测试过程中的问题4 AirSim
  • 使用Kalibr标定相机和IMU(ZED+px4)外参

    提示 xff1a 文章写完后 xff0c 目录可以自动生成 xff0c 如何生成可参考右边的帮助文档 使用Kalibr标定相机和IMU xff08 ZED 43 px4 xff09 外参 前言一 Kalibr介绍二 CAM IMU外参标定1
  • php curl digest,php curl with digest返回两个响应

    如果对标头使用 I选项 则看起来curl具有相同的行为 xff1a curl I digest u root somepassword http localhost digest test 收益 xff1a HTTP 1 1 401 Aut
  • SET PASSWORD FOR ‘root‘@localhost=PASSWORD(‘XXXX‘);报错

    原因 xff1a 数据库版本较高 老版本 SET PASSWORD FOR root 64 localhost 61 PASSWORD XXXXX 新版本 SET PASSWORD FOR root 64 localhost 61 XXXX
  • ROS学习笔记之小乌龟跟随

    ROS学习笔记之小乌龟跟随 说明 xff1a 整个案例是跟着赵虚左老师的视频和文档资料学习的 xff0c 特此感谢赵虚左老师和Autolabor官方 文档地址 视频地址 学习案例之前的预备知识 xff1a TF坐标变换 大体实现流程 xff
  • MPC,PID,LQR,DDP算法

    算法原理 xff1a
  • 对‘image_transport::ImageTransport::~Image Transport()’未定义的引用

    这是因为cmakelist文件没配置好 xff0c 一般的cmakelist文件配置如下 xff1a cmake minimum required VERSION 2 8 3 project first test pkg Compile a
  • 【VIO笔记(学习VINS的必备基础)】第六讲 视觉前端

    文章目录 前端工作的综述特征点提取 匹配和光流为什么需要角点角点的提取光流的计算光流的总结 关键帧与三角化关键帧三角化三角化程序实现 系列教程来自某学院 xff0c 侵权删除 学习完这一系列课程再去看VINS才能做到不吃力 xff0c 不然
  • windows开机自启动frp教程

    https wp gxnas com 12153 html
  • ubuntu20.08下获取realsense内参

    ubuntu20 08下使用realsense过程记录 介绍一 安装SDK1 注册公钥2 将服务器添加到存储库列表中3 安装库4 安装开发者和调试包5 测试SDK 二 下载realsense2 camera包1 下载包2 测试包3 激活相关
  • 深度视场角(Depth Field of View)

    深度视场角 Depth Field of View Realsense相机深度图的建立依赖双目立体成像原理 xff0c 其有效视场是左 右成像器视场的重叠部分 xff0c 如下图所示 顺带一提 xff0c 这张图不能用于计算双目相机深度成像
  • ROS: Publisher and Subscriber

    通过上一节编写ROS的第一个程序hello world xff0c 我们对ROS的整个编程开发过程有了基本的了解 xff0c 现在我们就来编写真正意义上的使用ROS进行节点间通信的程序 由于之前已经建好了catkin ws这样一个工作空间
  • phpStorm2018安装教程

    1 鼠标右击 PhpStorm 2018 2 3 压缩包选择 解压到PhpStorm 2018 2 3 2 双击打开解压后的 PhpStorm 2018 2 3 文件夹 3 鼠标右击 PhpStorm 2018 2 3 exe 选择 以管理
  • 学习Java第一个星期感受和收获

    最近在学习java xff0c 学了有一个星期 xff0c 说一说这个星期的收获和总结吧 xff01 首先我也是从一个小白做起 xff0c 这个星期学习了很多 xff0c 很多java基础知识 xff0c 我印象比较深刻的是基本数据类型和引

随机推荐

  • MySql知识体系总结(2021版)

    一 MySQL三层逻辑架构 MySQL的存储引擎架构将查询处理与数据的存储 提取相分离 下面是MySQL的逻辑架构图 xff1a 1 第一层负责连接管理 授权认证 安全等等 每个客户端的连接都对应着服务器上的一个线程 服务器上维护了一个线程
  • freertos与linux区别,μClinux、μC/OS-II、eCos、FreeRTOS和djyos操作系统的特点及不足-嵌入式系统-与非网...

    基于 STM 平台且满足实时控制要求操作系统 xff0c 有以下 5 种可供移植选择 分别为 Clinux C xff0f OS II eCos FreeRTOS 和都江堰操作系统 djyos 下面分别介绍这五种嵌入式操作系统的特点及不足
  • SM4加密算法原理以及C语言实现

    文章目录 一 算法原理描述1 密钥及密钥参量 xff1a 2 加密算法 3 解密算法 xff1a 4 密钥扩展算法 xff1a 二 C语言算法实现 h部分代码 xff1a c部分代码 xff1a 一 算法原理描述 SM4分组密码算法是一个迭
  • SIM900A GPRS无线通信

    文章目录 一 模块介绍1 基本概况2 GPRS通信开发说明 二 TCP连接实现及其源码1 TCP连接实现方法2 程序源码 xff08 基于MSP430F149单片机 xff09 1 main c2 Config h及Config c3 SI
  • UCOSII-信号量与信号量集

    文章目录 一 前言1 任务间的同步2 事件 二 信号量1 信号与信号量介绍2 信号量常用函数3 信号量使用流程 xff08 互斥信号量和信号量两种 xff09 4 互斥型信号量使用5 使用一般信号量做任务同步 三 信号量集 事件标志组 1
  • UCOSII-消息邮箱与消息队列

    文章目录 一 事件控制块及事件处理函数1 等待任务列表2 事件控制块的结构3 操作事件控制块的函数4 空事件控制块列表 二 消息邮箱1 消息邮箱介绍2 消息邮箱操作步骤 三 消息队列1 消息指针数组2 队列控制块3 消息队列的操作流程 四
  • float型数据与4字节之间的转换

    文章目录 一 前言二 地址指针转换的方法三 共用体的方法 xff08 注意要定义全局变量数组s xff0c 即地址要分配为固定地址 xff09 一 前言 在与上位机之间进行数据收发 xff0c 要将float型数据转换成字节进行传输 xff
  • USB虚拟串口实现多字节数据接收,基于stm32h743

    文章目录 一 USB虚拟串口原理简介二 接收函数实现源码三 小结 一 USB虚拟串口原理简介 USB 虚拟串口 xff0c 简称 VCP xff0c 是 Virtual COM Port 的简写 xff0c 它是利用 USB 的 CDC 类
  • EC20/EC25 4G模块AT指令开发总结

    文章目录 一 EC25 20 4G模块简介二 AT指令总结1 通用AT指令2 建立TCP UDP连接相关AT指令 三 TCP传输数据流程四 UDP传输数据流程五 总结 一 EC25 20 4G模块简介 EC25 是一系列带分集接收功能的 L
  • C语言实现socket网络编程及多线程编程

    文章目录 一 概述二 TCP socket网络编程1 server端程序实现 xff08 tcp server cpp xff09 2 client端程序实现 xff08 tcp client cpp xff09 3 编译与执行 三 UDP
  • 基于openssl实现https双向身份认证及安全通信

    文章目录 一 概述二 代码设计2 1 ssl server c程序设计2 2 ssl client c程序设计 三 测试 一 概述 https基于SSL TLS提供安全的通信信道 xff0c 基于证书认证技术实现服务器和客户端之间的身份认证
  • ubuntu的不同版本

    ubuntu是现在最流行的Linux安装包 xff0c 本文介绍了ubuntu的各种版本 一 Ubuntu 每个ubuntu的版本都包含一个版本号 xff08 version number xff09 和一个代码名 xff08 code n
  • Linux下通过service服务管理用户进程

    文章目录 一 service配置介绍1 1 service配置文件1 2 配置文件的区块1 3 修改配置文件后重启1 4 服务管理 二 设计一个可执行程序三 设计一个service管理 home ubuntu test servicetes
  • c++中多态调用场景下基类析构函数的virtual声明

    文章目录 一 基类析构函数未加virtual声明的情况1 1 基础示例演示1 2 进阶示例演示 二 基类析构函数添加virtual声明的情况三 总结 一 基类析构函数未加virtual声明的情况 在多态场景中 xff0c 可通过基类的指针指
  • protobuf协议原理及实现,基于c++

    文章目录 一 protobuf协议简介1 1 protobuf协议简介1 2 数据交互xml json protobuf格式比较1 3 关于 ProtoBuf 的一些思考 二 protobuf库安装三 protobuf库使用第一步 xff0
  • OLED显示屏驱动:8080并口,IIC,SPI三种驱动方式

    本文介绍了对OLED的几种驱动方式 xff0c 8080并口 xff0c IIC xff0c SPI三种驱动方式 xff0c 采用的单片机是STM32F407 文章目录 一 OLED驱动原理介绍二 8080并口驱动方式三 IIC驱动方式四
  • ROS2学习笔记(1)ROS2+docker的配置方法

    ROS2学习笔记 xff08 1 xff09 ros2 43 docker的配置方法 1 前言2 安装docker2 1 docker的发展史2 2 什么是docker2 3 docker的思想2 3 1 集装箱2 3 2 标准化1 运输方
  • ubuntu之更改ubuntu和windows双系统启动顺序

    ubuntu之更改ubuntu和windows双系统启动顺序 背景方法 背景 安装好ubuntu和windows双系统后 xff0c 一般grub引导默认选择第一个为启动项 xff0c 在公司打工还好 xff0c 毕竟要进ubuntu挣钱
  • 【lightDM】组件理解

    前言 LightDM xff08 Light Display Manager xff09 是轻量级 Linux 桌面显示管理器 其目的是成为 X org 的 X Server 的标准显示管理器 LightDM 负责启动 X servers
  • 【机器人学中的状态估计】第一讲

    1 什么是状态估计 xff1f 通过获得传感器的观测值 xff0c 建立观测值到状态量的模型 xff0c 估计出状态量 2 概率密度函数 后验概率 p x y