自动驾驶 9-1: (线性)卡尔曼滤波器The (Linear) Kalman Filter

Posted AI架构师易筋

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了自动驾驶 9-1: (线性)卡尔曼滤波器The (Linear) Kalman Filter相关的知识,希望对你有一定的参考价值。















欢迎回来。在模块二中,我们将学习最著名的算法之一 在所有工程中;卡尔曼滤波器。

在当今先进的机器学习世界中, 卡尔曼滤波器仍然是一个重要的工具 融合来自多个传感器的测量结果

实时估计状态 机器人系统,例如自动驾驶汽车。

在这个模块中,我们将学习一些历史 卡尔曼滤波器并介绍其基本线性公式。

我们将介绍为什么卡尔曼滤波器是 最好的线性无偏估计,然后 通过线性化将线性公式扩展到非线性系统。

讨论这种线性化方法的局限性,最后, 提出一种现代的替代方案 通过无味变换线性化。

在本课结束时,您将能够将通用过滤器描述为 分两个阶段工作的状态估计器;预测和修正。

了解运动模型和测量模型的区别, 然后使用卡尔曼滤波器公式 在一个简单的一维定位示例中。

让我们从一点历史开始。 卡尔曼滤波器算法由鲁道夫 E.卡尔曼于 1960 年发表, 匈牙利出生的教授和工程师 在高等研究院工作 在马里兰州巴尔的摩。

多年后的 2009 年, 美国总统奥巴马授予卡尔曼 因其在以下方面的工作而获得享有盛誉的国家科学奖章 卡尔曼滤波器和 控制工程领域的其他贡献。

1960 年出版后, 卡尔曼滤波器被采用 NASA 用于阿波罗制导计算机。 正是这项突破性的创新在 成功将阿波罗飞船送上月球, 以及我们迈向另一个世界的第一步。

过滤器帮助指导 阿波罗航天器准确地通过其绕月轨道。

美国宇航局艾姆斯研究中心的工程师们, 采用卡尔曼线性理论并将其扩展到非线性模型。

我们将在即将到来的模块中查看这个特定的扩展。

但首先,让我们谈谈基本的线性卡尔曼滤波器。

卡尔曼滤波器与线性滤波器非常相似 我们之前讨论过的递归最小二乘滤波器。

虽然递归最小二乘更新静态参数的估计, 但卡尔曼滤波器能够更新和估计不断发展的状态。

卡尔曼滤波器的目标是取 这种状态的概率估计和 分两步实时更新;预测和修正。

为了使这些想法更加具体, 让我们考虑一个估计车辆一维位置的问题。

从 k 减 1 时刻的初始概率估计开始, 我们的目标是使用一个运动模型,它可以从 车轮里程计或惯性传感器测量来预测我们的新状态。

然后,我们将使用从 GPS 导出的观测模型,例如, 纠正当时车辆位置的预测 克。

这些组成部分中的每一个,初始估计,预测状态和最终修正状态都是 我们将通过它们的均值和协方差来指定随机变量。

这样,我们就可以把卡尔曼滤波器看作是一种融合的技术 来自不同传感器的信息以产生 一些未知状态的最终估计, 考虑到运动和我们测量中的不确定性。

对于卡尔曼滤波算法, 我们已经能够以下列方式编写运动模型;

在时间步 k 的估计是 时间步 k 减 1 估计的线性组合, 一个控制输入和一些零均值噪声。

输入是一个外部信号 影响我们系统状态的演变。

在自动驾驶汽车的背景下, 这可能是施加到的车轮扭矩 例如,加速和改变车道。

接下来,我们还需要定义一个线性测量模型。

最后,我们需要一个像以前一样的测量噪声 控制我们有多确定的过程噪音 我们的线性动力系统实际上是正确的, 或者等价地,有多不确定 我们是关于我们的控制输入的效果。

一旦我们掌握了我们的系统, 我们可以使用与我们非常相似的方法 在递归最小二乘视频中讨论过。

除了这一次,我们将分两步完成。

首先,我们使用过程模型来预测我们的状态,记住, 我们现在通常谈论的是不断发展的状态和 自上一个时间步以来演化的非状态参数, 并将传播我们的不确定性。

其次,我们将使用我们的测量来纠正该预测 基于我们的测量残差或创新以及我们的最佳收益。

最后,我们将使用增益来传播 从我们的预测到我们校正估计的状态协方差。

在我们的符号中,帽子 表示在特定时间步长的校正预测。

而支票表明 合并测量之前的预测。 如果您以前使用过卡尔曼滤波器, 你可能也看过这个用加号和减号写的 分别为校正量和预测量的符号。

让我们回顾一下。我们从概率密度开始我们的状态,也可能是时间步 k 减 1 的参数, 我们将其表示为多元高斯。

然后,我们使用以下方法预测时间步骤 k 的状态 我们的线性预测模型和 传播均值和不确定性; 协方差,及时向前。

最后,使用我们的概率测量模型, 我们通过最佳方式更正我们的初始预测 将来自我们测量的信息与 通过我们的最佳增益矩阵 k 的先验预测。

我们的最终结果是当时我们各州的更新概率估计 步骤 k。

最好的方法适应卡尔曼滤波器就是使用它。

让我们看一个简单的例子。 再次考虑以下情况 自动驾驶汽车估计自己的位置。

我们的状态向量将包括 车辆位置及其一阶导数速度。

我们的输入将是一个标量加速度,可能来自 一个控制系统,命令我们的汽车向前或向后加速。

对于我们的测量,我们假设我们能够确定 使用 GPS 接收器之类的东西直接确定车辆位置。

最后,我们将噪声方差定义为 如下:鉴于这个初步估计和我们的数据, 我们执行后我们校正的位置估计是多少 一个预测步骤和一个使用卡尔曼滤波器的校正步骤? 这是我们如何使用这些定义来解决 我们修正后的位置和速度估计。

请注意以下事实 我们最终校正的状态协方差较小。

那是我们更确定 结合位置测量后汽车的位置。

这种不确定性降低发生 因为我们的测量模型相当准确。

也就是说,测量噪声方差非常小。

尝试增加测量方差和 观察最终状态估计会发生什么。

总而言之,卡尔曼滤波器类似于递归平方, 而且还添加了一个运动模型,用于定义我们的状态如何随时间演变。

卡尔曼滤波器分两个阶段工作:首先, 使用运动模型预测下一个状态, 其次,使用测量校正这个预测。

但是我们如何确定卡尔曼滤波器是 给我们一个准确的状态估计? 在接下来的视频中, 我们将讨论一些吸引人的理论特性 卡尔曼滤波器使其成为工程领域的主要产品。

第 1 课补充阅读:线性卡尔曼滤波器

补充阅读:线性卡尔曼滤波器
要了解有关线性卡尔曼滤波器的更多信息,请查看以下资源:

参考

https://www.coursera.org/learn/state-estimation-localization-self-driving-cars/lecture/7DFmY/lesson-1-the-linear-kalman-filter

以上是关于自动驾驶 9-1: (线性)卡尔曼滤波器The (Linear) Kalman Filter的主要内容,如果未能解决你的问题,请参考以下文章

自动驾驶 9-3: 走向非线性 - 扩展卡尔曼滤波器 Going Nonlinear - The Extended Kalman Filter

自动驾驶 9-3: 走向非线性 - 扩展卡尔曼滤波器 Going Nonlinear - The Extended Kalman Filter

自动驾驶 9-5: EKF 的局限性 Limitations of the EKF

自动驾驶 9-5: EKF 的局限性 Limitations of the EKF

自动驾驶 9-4: 改进的 EKF - 错误状态扩展卡尔曼滤波器 An Improved EKF - The Error State Extended Kalman Filter

自动驾驶 9-4: 改进的 EKF - 错误状态扩展卡尔曼滤波器 An Improved EKF - The Error State Extended Kalman Filter