什么是 无迹卡尔曼滤波(Unscented Kalman Filter)?
无迹卡尔曼滤波(Unscented Kalman Filter)是一种非线性高斯状态估计器,它让确定性加权 Sigma Point 经过状态转移与观测函数,以近似后验矩。
快速了解
| 规范文档 | 官方规范 |
|---|
工作原理
用确定性 Sigma Point 表示矩
对 n 维均值 m 与协方差 P,常见 Scaled Unscented Transform 根据 (n+lambda)P 的矩阵平方根列构造 2n+1 个点,并分别使用均值权重与协方差权重,在非线性映射前后重建前两阶矩。这些点是 Quadrature Point,不是随机粒子或后验样本。
Julier 与 Uhlmann 1997 年论文提出了这种无导数非线性扩展。由于 Sigma Point 参数化不止一种,且行为可能不同,必须记录采用的缩放与权重约定。
传播状态与量测分布矩
预测步骤让每个 Sigma Point 经过 f,计算加权预测均值和协方差,再加入过程噪声协方差。量测更新通常从预测高斯重新生成点,使其经过 h,并计算预测量测协方差与状态—量测交叉协方差,两者的比值形成 Kalman 风格增益。
面对非加性噪声,把噪声变量并入 Augmented State 是一种有效构造,但会增加点数。角度、四元数、正值量与受约束状态需要符合几何结构的均值、残差与 Retraction;直接做欧氏平均可能产生无效状态。
审计缩放、协方差与近似误差
AHRS 的 UKF 文档展示了 alpha、beta、kappa 缩放参数、基于 Cholesky 的点,以及不同的均值与协方差权重。很小的 alpha 可能产生绝对值很大的正负权重;权重在数学上有效,也仍需稳定的平方根与协方差处理。
应跟踪 Innovation Whiteness、NIS、状态误差、半正定性、Cholesky 失败、缩放参数敏感性与运行时间,并在相同模型和随机种子上对照 EKF 与 Particle Filter。一个非线性示例上矩传播更好,不能证明另一任务中的校准、稳健性或成本更优。
主要特点
- 用确定性 Sigma Point 近似单个高斯分布
- 让采样点直接经过非线性模型函数
- 无需解析状态转移与量测 Jacobian
- 重建预测均值、协方差与交叉协方差
- 使用可配置的 Sigma Point 缩放与权重规则
- 仍难以表示多峰、受约束或强非高斯状态
常见用途
- 缺少可靠 Jacobian 的非线性导航与传感器融合
- 采用几何一致 Sigma Point 处理的姿态估计
- 非线性状态转移与观测函数下的目标跟踪
- Particle Filter 成本过高时的嵌入式高斯滤波
- 比较一阶线性化与确定性矩近似的基准实验
示例
Loading code...常见问题
UKF 的 Sigma Point 是随机样本吗?
不是。它们是为匹配均值与协方差而选择的确定性加权 Quadrature Point,不构成经验后验粒子群,也不能像 Particle Filter 粒子那样解释。
UKF 会产生精确的非线性后验吗?
不会。它近似变换后的矩,再保留单个高斯状态摘要。非线性变换可能产生偏斜、受约束、重尾或多峰分布,单一均值和协方差无法完整表示。
alpha、beta 与 kappa 如何影响 UKF?
它们在 Scaled Unscented Transform 中决定点的展开范围和权重,具体含义依赖所选约定。组合不当可能产生极端权重、数值抵消或超出有效状态域的点。
无迹卡尔曼滤波总是优于 EKF 吗?
不是。UKF 免除 Jacobian,并可能在部分非线性下更好传播矩,但需要多次模型求值与协方差分解。对局部近线性系统,参数化良好的 EKF 可能更便宜且同样可靠。
什么时候应使用 Particle Filter 而不是 UKF?
后验可能多峰、强偏斜、截断或由非高斯似然主导时,应对照 Particle Filter。粒子方法会增加 Monte Carlo 与重采样成本,因此需根据实测准确度和运行时间决策。