跳转到内容

信号处理/卡尔曼滤波

来自维基教科书,开放世界中的开放书籍

卡尔曼滤波器跟踪系统的估计状态和估计的方差或不确定性。估计使用状态转移模型和测量值进行更新。{\displaystyle {\hat {x}}_{k\mid k-1}} {\hat {x}}_{k\mid k-1} 表示在考虑第 k 次测量 yk 之前,时间步长 k 时系统的状态估计;{\displaystyle P_{k\mid k-1}} {\displaystyle P_{k\mid k-1}} 是相应的误差。卡尔曼滤波,也称为线性二次估计 (LQE),是一种算法,它使用一系列随时间观察到的测量值,这些测量值包含统计噪声和其他误差,并产生对未知变量的估计,这些估计通常比仅基于单个测量值的估计更准确,通过为每个时间框架估计变量的联合概率分布。该滤波器以鲁道夫·E·卡尔曼的名字命名,他是该理论的主要开发者之一。

卡尔曼滤波器在技术中有着广泛的应用。一个常见的应用是车辆的制导、导航和控制,特别是飞机和航天器。[1] 此外,卡尔曼滤波器是时间序列分析中广泛应用的概念,用于信号处理和计量经济学等领域。卡尔曼滤波器也是机器人运动规划和控制领域的主要主题之一,有时也包含在轨迹优化中。卡尔曼滤波器还可以用来模拟中枢神经系统对运动的控制。由于发出运动指令和接收感觉反馈之间存在时间延迟,卡尔曼滤波器的使用支持了一种现实的模型,用于估计运动系统的当前状态并发出更新的指令。

该算法通过两步过程运行。在预测步骤中,卡尔曼滤波器会生成当前状态变量的估计值以及它们的不确定性。一旦观察到下一个测量值的结果(必然会包含一定程度的误差,包括随机噪声),这些估计值就会使用加权平均值进行更新,权重更多地分配给确定性更高的估计值。该算法是递归的。它可以在实时运行,只需要当前输入测量值以及先前计算的状态及其不确定性矩阵;不需要任何其他过去信息。

使用卡尔曼滤波器并不假设误差是高斯分布的。[3] 但是,如果所有误差都是高斯分布的,则该滤波器会产生精确的条件概率估计。

该方法的扩展和推广也得到了发展,例如扩展卡尔曼滤波器和无迹卡尔曼滤波器,它们适用于非线性系统。基础模型类似于隐马尔可夫模型,只是潜在变量的状态空间是连续的,所有潜在变量和观测变量都具有高斯分布。

参考文献

[编辑 | 编辑源代码]
  1. 维基百科上的卡尔曼滤波器
华夏公益教科书