【数据挖掘】时间序列教程【十】

5.4 通用卡尔曼滤波

上一节中描述的状态空间模型作为观测方程的更一般的公式

        y_t = A_t x_t + V_t 

和状态方程

        x_t = \Theta x_{t-1} + W_t 

        这里y_t是一个p×1 向量x_t是一个k×1 向量, A_t 是一个p×k 矩阵, \Theta 是k×k 矩阵。我们可以想到的V_t\sim\mathcal{N}(0, S)W_t\sim\mathcal{N}(0, R) 

        给定初始状态x_0^0 和P^0_0 ,预测方程为(类似于上面)

                x_1^0 = \Theta x_0^0\\ P_1^0 = \Theta P_0^0\Theta^\prime + R

         并且更新方程是,给定一个新的观察结果y1

                x_1^1 = x_1^0 + K_1(y_1 - A_1 x_1^0)\\ P_1^1 = (I - K_1A_1) P_1^0

这里 

                K_t = P_t^{t-1}A_t^\prime(A_tP_t^{t-1}A_t^\prime + S)^{-1}.

5.5 缺失数据

        从概念上讲,丢失数据在卡尔曼滤波器的框架中很容易处理。该过程有两个步骤:(1)预测步骤,(2)更新步骤,当我们观察新数据时发生。如果缺少一个数据点,我们就无法执行步骤 2,因此我们只需跳过它。我们保留步骤 1 中所做的预测并继续到下一个时间点。

        因此,如果y_t 丢失,我们可以修改更新过程以简单地

                                x_t^t = x_t^{t-1}\\ P_t^t = P_t^{t-1}

5.6 示例:过滤手机的旋转角度

        这是基于加速度计和陀螺仪测量积分的 X 轴方向估计旋转角度图。

Gyro

        回想一下,手机根本没有移动,因此陀螺仪不应该真正记录任何运动。然而,乐器中的自然噪声会随着时间的推移而产生一些变化。特别是,似乎存在轻微的负偏差,因此陀螺仪似乎认为它正在沿负方向轻微旋转。当这种负面偏见随着时间的推移而积分时,其影响会随着时间的推移而累积,如上图所示。

5.7 示例:跟踪汽车的位置

        我们在这里使用的模型将是前面提到的航天器模型的扩展。目标是跟踪沿着笔直道路行驶的汽车的线性(一维)位置。时间 t 时汽车沿这条道路的位置为,建模为

p_t = p_{t-1} + v_{t-1}\Delta t + \frac{1}{2}a_{t-1} \Delta t^2 + w_t

        其中v_{t-1}   是速度,a_{t-1} 是加速度,\Delta t 是测量时间点之间的时间差,w_t 是噪声项。在这种情况下,我们可以将状态向量写为

                x_t = [p_t, v_t, a_t].

        这里令:

        \Theta = \left[\begin{array}{ccc} 1 & \Delta t & \frac{1}{2}\Delta t^2\\ 0 & 1 & \Delta t\\ 0 & 0 & \alpha \end{array} \right]

        在 里α  是表征加速度项状态转换的(已知)系数,则状态方程为

        x_t = \Theta x_{t-1} + w_t

此时:w_t\sim\mathcal{N}(0, \tau^2I)

        对于数据,我们有两个观察结果。一个是表示一维位置的 GPS 坐标(在本例中为经度),另一个是汽车方向的加速度。加速度可以是向前方向(正)或向后方向(负)。数据表示为

        y_t = Ax_t + v_t

这里:

         A = \left[\begin{array}{ccc} 1 & 0 & 0\\ 0 & 0 & 1 \end{array} \right]

        没有直接测量速度的方法。这是汽车随时间变化的 y 轴加速度(以 m/s^2 为单位)。本例中的 y 轴是行进方向。

        这是汽车随时间变化的经度位置,转换为沿道路的距离(以米为单位)。数据的采样率为 20 Hz(每秒 20 次测量),因此绘图的 x 轴以 1/20 秒为单位。

        实际观测到的 GPS 测量是在 20 Hz 下进行的,但我们可能会遇到无法如此频繁地测量数据的情况。例如,加速度是始终可用的惯性测量,但 GPS 测量依赖于可能始终可用或可能不始终可用的卫星。为了模拟可能的数据缺失,我们可以通过对数据进行下采样来对GPS数据进行下采样。在这里,我们只保留每 1,000 个 GPS 值中的一个。卡尔曼滤波算法的结果如下所示。

上述曲线设 \tau = 0.5  且 \sigma =20   , α  被设为 0.64 .

下面是我们减少采样并保留每 200 个 GPS 值之一的图。

        我们可以看到,当 GPS 值可用时,估计状态会尝试跟上它们,但通常需要时间进行自我修正。在上图中,我们有 τ=2,但我们可以通过减小 τ 来改变校正行为。在下图中,我们有 τ=0.5,我们可以看到轨道更加平滑。

        虽然估计状态比较平滑,但也存在较大偏差。因此,在选择调整参数 τ 和 σ 时,需要平衡精度需求和平滑度需求(偏差与方差)。

5.8 示例:估计(模型)火箭的远地点

看看这个由乔·巴纳德 (Joe Barnard) 建造和发射的筒仓发射模型火箭。

这是第一次发射的慢动作版本。

火箭,无论是模型还是真实的,都需要能够随着时间的推移感知它们的位置、速度和方向。大多数情况下,他们需要知道自己是否指向正确或计划的方向,以及是否以正确的速度沿着正确的轨迹行驶。 (如果不是,则可以进行修正,但我们不会在这里讨论这个问题,因为这需要进入控制理论。)

惯性测量单元 (IMU) 中使用的典型仪器是陀螺仪和加速度计。这些仪器可以为机载计算机提供惯性测量,即纯粹在机上进行的测量,无需与外部输入或参考进行任何交互。现代系统通常还具有其他仪器,例如气压高度计(用于高度)、磁力计(用于航向/方向)和 GPS(用于位置)。

这是来自 z 轴(上/下)方向加速度计的数据。

这是气压高度计的数据。

这是使用下采样高度计读数(删除所有其他值)的估计轨迹。

        这是来自同一模型拟合的估计速度。速度过零的点可能就是远地点所在的位置。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/20071.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

038、TiDB特性_聚簇索引和非聚簇索引

聚簇表 表中的行数据才能出顺序与主键存储的顺序一致表的主键即为KV映射中Key的一部分通过主键访问行记录时,可以直接获取行记录 create table t( a biging primary key clustered ,b varchar(255)); # a列为主键列,聚簇列聚簇表(且ID为主键…

【MySQL】根据MVCC和Read View分析事务的四种隔离级别在读写场景分别是如何体现其隔离性的

目录 一、数据库并发的三种场景 二、读写场景的MVCC 1、3个(4个)记录隐藏列字段 2、undo log(撤销日志) 3、模拟MVCC场景 3.1update场景 3.2delete场景 3.3insert 3.4select场景 4、Read View 5、RR和RC的区别 5.1当…

云开发校园微社区-二手交易兼职交友微信小程序

云开发校园微社区微信小程序开源源码,这是一款云开发校园微社区-二手交易_兼职_交友_项目微信小程序开源源码,可以给你提供快捷方便的校园生活,有很多有趣实用的板块和功能,如:闲置交易、表白交友、疑问互答、任务兼职…

数据结构【二叉树】

数据结构之二叉树 二叉树的定义二叉树的5种基本形态二叉树的抽象类型定义二叉树的特殊类型二叉树的性质二叉树的存储结构1、顺序存储2、链式存储 遍历二叉树前序遍历中序遍历后序遍历遍历算法的分析 线索二叉树 二叉树的定义 在数据结构中,二叉树是n(n&…

Databend 开源周报第 101 期

Databend 是一款现代云数仓。专为弹性和高效设计,为您的大规模分析需求保驾护航。自由且开源。即刻体验云服务:https://app.databend.cn 。 Whats On In Databend 探索 Databend 本周新进展,遇到更贴近你心意的 Databend 。 教程 | 使用 AW…

H5 与AI对话聊天框

一&#xff1a;最终实现效果展示 二&#xff1a;具体实现 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"renderer" content"webkit"><meta http-equiv"X-UA-Compa…

etcd的使用

什么是etcd ETCD是一个分布式、可靠的key-value存储的分布式系统&#xff0c;用于存储分布式系统中的关键数据&#xff1b;当然&#xff0c;它不仅仅用于存储&#xff0c;还提供配置共享及服务发现&#xff1b;基于Go语言实现 。 etcd的特点 完全复制&#xff1a;集群中的每…

opencv-图像处理基础-二值图像

opencv学习01_图像处理基础_二值图像 1&#xff0e;二值图像 二值图像是指仅仅包含黑色和白色两种颜色的图像。 在计算机中&#xff0c;通过一个栅格状排列的数据集&#xff08;矩阵&#xff09;来表示和处理图像。例如&#xff0c;图 2-1 是 一个字母 A 的图像&#xff0c;计算…

Git学习与使用

目录 版本控制、GIT以及SVN常见的版本控制方法本地版本控制集中式版本控制分布式版本控制 SVN与Git的区别 下载与安装Git安装&#xff1a; Git环境配置Git必要的配置 Git的基本理论&#xff08;核心&#xff09;Git项目搭建创建目录 git文件操作忽略文件 使用码云(gitee)辅助学…

RabbitMQ【笔记整理+代码案例】

1. 消息队列 1.1. MQ 的相关概念 1.1.1. 什么是 MQ MQ(message queue)&#xff0c;从字面意思上看&#xff0c;本质是个队列&#xff0c;FIFO 先入先出&#xff0c;只不过队列中存放的内容是message 而已&#xff0c;还是一种跨进程的通信机制&#xff0c;用于上下游传递消息…

Xcode 更新后 Version 14.3.1报错

File not found: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/lib/arc/libarclite_iphonesimulator.a Xode版本和pod版本不一致导致&#xff0c;改成一致就可以了 放在podfile文件里,最后一个pod,和最后一个end中间 Showing Recent …

DHCP静态分配IP地址、IP-MAC绑定、静态ARP有哪些区别?

DHCP静态分配IP地址、IP-MAC绑定、静态ARP这三个功能都涉及到IP地址和MAC地址的对应关系&#xff0c;但其应用场景及实现的功能有所不同&#xff0c;如表所示&#xff1a; 原文地址https://support.huawei.com/enterprise/zh/knowledge/EKB1000052241