4. 状态空间模型入门

在动态配对关系建模中,我们真正关心的往往不是某一时刻的静态数值,而是随时间演化的隐藏状态。例如两个传感器是否仍在配对、目标与观测之间的偏移量如何漂移、配对置信度怎样衰减。状态空间模型(State Space Model, SSM)正是描述这类问题的统一语言:它把系统拆成“看不见的状态如何演化”和“看得见的观测如何产生”两条主线,并用概率分布刻画不确定性。

一、核心原理:状态方程与观测方程

线性高斯状态空间模型由两个方程构成。第一个是状态方程,描述隐藏状态随时间的转移:

x_k = F_k x_{k-1} + B_k u_k + w_k,   w_k ~ N(0, Q_k)

其中 x_k 是 k 时刻的状态向量,F_k 是状态转移矩阵,B_k u_k 表示已知控制输入,w_k 是过程噪声,服从均值为零、协方差为 Q_k 的高斯分布。第二个是观测方程,描述状态如何生成我们实际测量到的数据:

z_k = H_k x_k + v_k,   v_k ~ N(0, R_k)

z_k 是观测向量,H_k 是观测矩阵,v_k 是观测噪声,服从均值为零、协方差为 R_k 的高斯分布。两个方程合在一起,就构成了线性高斯系统的完整表示。它的关键假设有三点:状态转移和观测关系都是线性的;过程噪声与观测噪声都是高斯白噪声;噪声之间相互独立,且与初始状态独立。

一句话理解:状态方程回答“系统下一步会变成什么”,观测方程回答“当前状态会让我看到什么”。卡尔曼滤波要做的,就是在两者之间做概率意义上的最优权衡。

二、方法流程:从建模到递推

建立状态空间模型通常遵循以下流程:

  1. 定义状态向量:明确哪些量是隐藏的、需要估计的。例如配对偏移量、速度、置信度。
  2. 写出状态方程:根据物理规律或业务逻辑确定 F_k、B_k 和 Q_k。
  3. 写出观测方程:确定观测与状态的关系 H_k,以及观测噪声协方差 R_k。
  4. 设定初始条件:给出初始状态均值 x_0 和初始协方差 P_0。
  5. 执行递推:预测步计算先验,更新步结合观测得到后验。

预测步与更新步的公式如下,它们是后续实现卡尔曼滤波的基础:

预测:
x_k^- = F_k x_{k-1} + B_k u_k
P_k^- = F_k P_{k-1} F_k^T + Q_k

更新:
K_k = P_k^- H_k^T (H_k P_k^- H_k^T + R_k)^{-1}
x_k = x_k^- + K_k (z_k - H_k x_k^-)
P_k = (I - K_k H_k) P_k^-

其中 K_k 是卡尔曼增益,它决定了我们更相信预测还是更相信观测。Q_k 越大,说明过程越不稳定,增益会偏向观测;R_k 越大,说明观测越不可靠,增益会偏向预测。

三、案例场景:动态配对偏移量估计

假设我们有两个设备 A 和 B,需要持续估计它们之间的时间偏移量。状态定义为偏移量及其变化率:

x_k = [offset_k, drift_k]^T

F = [[1, dt],
     [0,  1]]

H = [1, 0]

过程噪声 Q 反映偏移量可能发生的随机抖动,观测噪声 R 反映每次测量偏移量时的误差。若观测值来自带噪声的时间戳比对,R 通常由测量精度决定。通过卡尔曼滤波,我们可以在每个时刻得到偏移量的后验估计,并同时获得不确定度 P_k,用于判断当前配对是否可信。

模型要素含义配对场景示例调参影响
F_k状态转移矩阵偏移量按漂移率线性变化决定预测趋势
H_k观测矩阵只观测偏移量,不直接观测漂移决定观测映射
Q_k过程噪声协方差偏移量随机抖动程度越大越信任观测
R_k观测噪声协方差时间戳测量误差越大越信任预测
P_0初始状态协方差初始配对不确定度影响收敛速度

四、误区与复盘:建模中最容易踩的坑

常见误区一:把 Q 和 R 当成“越大越好”或“越小越好”。Q 和 R 的比值才决定滤波器的行为。Q 过大,滤波器会过度跟随噪声;R 过大,滤波器会反应迟钝,无法及时跟踪真实变化。

常见误区二:状态向量定义不完整。如果真实系统中存在未建模的动态,例如偏移量不仅会漂移还会突变,而状态方程只写了线性漂移,滤波器就会持续产生有偏估计。此时应考虑增加状态维度或引入自适应机制。

复盘建议:建模完成后,先不要急着调参。用仿真数据验证 F、H、Q、R 是否与生成过程一致,观察新息序列 z_k - H_k x_k^- 是否近似零均值白噪声。如果新息存在系统性偏差,说明模型结构有问题,而不是参数问题。

线性高斯状态空间模型是卡尔曼滤波的“语法”。只有先把状态方程、观测方程、过程噪声和观测噪声这四个要素定义清楚,后续的滤波、平滑和参数估计才有意义。在动态配对关系建模中,状态空间模型让我们能够用统一的概率框架,同时表达配对状态的演化规律和观测数据的不确定性,这是实现稳定配对跟踪的第一步。