什么是 固定滞后平滑器(Fixed-Lag Smoother)?

固定滞后平滑器(Fixed-Lag Smoother)是一种把每个输出延迟固定 Lag,使有限未来窗口中的量测能够修正近期状态的估计器。

快速了解

规范文档官方规范

工作原理

使用有界未来观测窗口

在时刻 k,Lag 为 L 的估计器可以用截至 k 的量测更新窗口 x_(k-L:k),再输出或冻结最旧状态。在线性高斯模型中,一种做法是把多个延迟状态及其交叉协方差组成增广 Kalman State;另一种做法是在保存的前向滤波量上执行局部后向平滑。

Caltech 固定滞后笔记推导了增广状态形式,并说明为什么必须保留交叉协方差。若只保存各时刻相互独立的方差,就无法把新量测携带的信息正确传回过去状态。

边缘化旧状态而不是丢弃证据

Factor Graph 实现会保留移动时间窗内的变量与因子。当某个状态超过 Lag 后,Marginalization 把它的影响汇总为保留变量上的先验。直接删除旧变量及其因子会改变后验,并可能导致估计过度自信或不一致。

非线性边缘化还会固定被消元变量的线性化点。即使活动窗口继续重线性化,也无法恢复边界处已丢弃或近似的信息,因此 Lag 长度、变量顺序、稀疏结构与边缘化策略都需要显式测试。

同时预算延迟、计算与评测泄漏

GTSAM 教程通过只保留近期位姿并边缘化旧位姿,区分 Filtering、Full Smoothing 与 Fixed-Lag Estimation。有界状态数不代表任意图结构或求解器都具有恒定时延,必须按真实 Factor Pattern 测量更新时间和内存。

应同时报告以步数和墙钟时间表示的 Lag、输出时间戳、迟到量测策略、边缘化成本、轨迹误差、一致性与尾延迟。每个估计只能按声明允许的信息评测;忽略未来证据优势,把滞后输出与零延迟滤波直接比较,就是数据泄漏。

主要特点

  • 使用有界未来窗口中的观测修正近期状态
  • 以步数或时间表示明确输出延迟
  • 通过窗口化与边缘化限制活动历史规模
  • 可通过增广 Kalman State 或 Factor Graph 实现
  • 位于滤波与完整平滑之间的时延-精度空间
  • 需要时间戳、迟到数据、边缘化与泄漏策略

常见用途

  1. 允许少量输出延迟的 GNSS 与 IMU 融合
  2. 存在延迟或乱序量测的机器人定位
  3. 滑动 Factor Graph 中的在线轨迹修正
  4. 输出前允许修订近期估计的信号处理
  5. 评估不同平滑窗口下的精度与时延权衡

示例

loading...
Loading code...

常见问题

固定滞后平滑器与卡尔曼滤波有什么区别?

滤波器只使用截至当前时刻的观测估计当前状态;固定滞后平滑器等待有限个未来观测,修正近期状态,并以明确延迟输出更早时间戳的估计。

固定滞后平滑与 RTS 平滑有什么区别?

RTS Fixed-Interval Smoother 通常对完整序列执行一次完整后向过程;固定滞后平滑只修正移动的近期窗口,通过限制历史与延迟换取在线运行,同时放弃超过 Lag 的未来信息。

如何选择 Lag?

应使用真实传感器延迟和动力学,对多个 Lag 测量误差、一致性、计算时间、内存与 Deadline Miss。选择能捕获有效迟到证据,同时满足产品时间戳和延迟契约的最小 Lag。

活动窗口外的状态会怎样处理?

正确实现会冻结已输出估计,并通过边缘化或等价充分统计量汇总被消元变量。直接删除旧变量与因子会丢失证据,并改变推断分布。

固定滞后结果能当作实时滤波精度报告吗?

只有同时声明输出延迟才可以。时刻 `k-L` 的估计使用了截至 `k` 的观测,相对自身时间戳拥有未来数据。若忽略这一优势与零延迟输出比较,就属于信息泄漏。

相关术语

相关文章