从系列:理解卡尔曼滤波器
Melda Ulusoy, MathWorks
请观看这段视频,了解卡尔曼滤波器的工作原理。卡尔曼滤波器结合了两个信息源,即预测状态和噪声测量,以产生系统状态的最优、无偏估计。该滤波器是最优的,因为它使估计状态下的方差最小。
的例子介绍了一种线性单态系统,其中所测量的输出是相同的状态(汽车的位置)。视频解释说,影响系统的过程和测量噪声。您将了解的是,卡尔曼滤波器计算无偏状态估计与测量不确定的情况下最小方差。视频节目由示出的概率密度函数卡尔曼滤波器后面的工作原理。您可以通过下载MATLAB创建在视频中讨论的概率密度函数®代码来自MATLAB中央文件交换。
记录:2017年3月27日
在这个视频中,我们将讨论卡尔曼滤波算法的工作原理。让我们从一个例子开始。当你绝望地盯着账单时,杂志上的广告吸引了你的眼球。你可以通过参加一项设计使用GPS传感器测量其位置的自动驾驶汽车的竞赛来赚取100万美元。
你的车应该推动在100点不同的地形有1公里。每一次,它必须停止尽可能接近终点线。在比赛结束时,最终的平均位置计算每个团队和车用最小的误差方差和最接近1公里平均最终位置的所有者获得大奖。
下面是一个例子。让这些点代表最终的位置,红色的为不同的球队的平均最终位置。基于这些结果,1队会失去因偏平均最终位置,虽然它有微小的差异。2队会失去为好。它的平均最终位置在终点线,但它有较大差异。获胜者将是小组3,因为它具有最小方差,以及其最终的平均位置在终点线。
如果你想成为一个百万富翁,你不希望单纯依靠GPS读数,因为它们可以吵。为了满足所要求的标准,以赢得竞争,你可以估计使用卡尔曼滤波器汽车的位置。让我们看一下系统了解卡尔曼滤波器是如何工作的。
输入到汽车是油门。我们感兴趣的输出是汽车的位置。对于这样的系统,我们将有多个状态。但在这里,给你的直觉,我们假设一个过于简单的系统,其中输入到汽车是速度。该系统将有一个单一的国家,汽车的位置。我们要衡量的状态,以便矩阵C等于1。
尽可能准确地知道y是很重要的,因为我们希望赛车尽可能地接近终点线。但是GPS读数会有噪声。我们将用v表示测量噪声,v是一个随机变量。同样,还有过程噪声,它也是随机的,可以代表风的影响或汽车速度的变化。
虽然这些随机变量不遵循一个模式,但利用概率论,我们可以了解它们的平均性质。v,例如,被认为是来自一个高斯分布与零均值和协方差r .这意味着如果我们测量的位置车,假设100次在同一位置,这些数据中的噪声将值,其中大部分位于零均值和更少的位于远离它。结果是高斯分布,用协方差R表示。
因为我们有一个单输出系统中,协方差R是标量,等于所述测量噪声的方差。同样,过程噪声也是随机的,并假定的高斯分布的协方差问:现在,我们知道测量是喧闹的,因此我们的措施并没有完全体现出了该车的真实位置。如果我们知道汽车模型,我们可以通过它运行输入来估计位置。但这种估计也就不会是完美的,因为现在我们估计X,这是过程噪声不确定性所致。这就是卡尔曼滤波器开始发挥作用。它结合了这两条信息来与汽车的过程和测量噪声的存在位置的最佳估计。
我们将借助概率密度函数直观地讨论卡尔曼滤波的工作原理。在初始时间步长k - 1处,实际的汽车位置可以在估计的x ^ (k - 1)附近的任何地方。这种不确定性可以用概率密度函数来描述。
这是什么阴谋也告诉我们的是,该车将是最有可能围绕这个均值分布的。在下一时间步骤中,在所述估计的不确定性增加,这被示出具有较大的方差。这是因为时间步长k减去1和K之间,车上可能已碾过坑洞,也许车轮可能会下滑一点点。因此,它可能已经走过比我们模型所预测的距离不同。
正如我们前面所讨论的,关于汽车位置的另一个信息来源来自于测量。这里方差表示噪声测量中的不确定性。同样,真实位置可以是均值附近的任何位置。
现在我们有了预测和测量,问题是,对汽车位置的最佳估计是什么?事实证明,估计汽车位置的最佳方法是把这两条信息结合起来。这是通过把这两个概率函数相乘得到的。得到的乘积也是一个高斯函数。
这个估计值的方差比之前的估计值要小,这个概率密度函数的均值给出了汽车位置的最优估计值。这就是卡尔曼滤波器的基本思想。但要赢得竞争,你需要能够实现算法。我们将在下个视频中讨论这个问题。
你也可以从以下列表中选择一个网站:
选择中国网站(中文或英文)以获得最佳网站表现。其他MathWorks国家站点不适合来自您所在位置的访问。