动态线性系统的卡尔曼滤波

连续线性系统的数学模型

连续线性系统的状态方程和观测方程

为了说明动态系统的数学模型,我们首先举一个例子。卫星在空间飞行,在地球各地的卫星观测站对卫星的瞬时位置——角位置偏差进行观测,可以通过这些观测值来求定和预报卫星飞行轨道的偏差。由于卫星在飞行过程中受大气阻力的影响,要产生阻力加速度,其主要影响是改变卫星沿轨道切线方向的运动,使卫星轨道产生偏差,而不能按标称轨道运行。设在 \(t\) 时刻大气阻力引起的卫星沿轨道切线方向的角位置偏差为 \(X_{1}(t)\),角速度偏差为 \(X_{2}(t)\),随机阻力的角加速度为 \(\varOmega(t)\),则它们的相互关系可以用如下的线性微分方程描述: \[\left.\begin{aligned} \frac{\mathrm{d}X_{1}(t)}{\mathrm{d}t}&=\dot{X}_{1}(t)=X_{2}(t)\\ \frac{\mathrm{d}X_{2}(t)}{\mathrm{d}t}&=\dot{X}_{2}(t)=\varOmega(t) \end{aligned}\right\}\]\[\bm{X}(t)=\begin{bmatrix}X_{1}(t)\\ X_{2}(t)\end{bmatrix},\quad \dot{\bm{X}}(t)=\begin{bmatrix}\dot{X}_{1}(t)\\ \dot{X}_{2}(t)\end{bmatrix}\] 则上面的微分方程可写为 \[\dot{\bm{X}}(t)=\begin{bmatrix}0&1\\ 0&0\end{bmatrix}\bm{X}(t)+\begin{bmatrix}0\\ 1\end{bmatrix}\varOmega(t) \tag{4-1-1}\] 又设角位置偏差的观测值为 \(L(t)\),相应的观测噪声为 \(\varDelta(t)\),则观测值 \(L(t)\)\(\bm{X}(t)\) 有关系 \[L(t)=\begin{bmatrix}1&0\end{bmatrix}\bm{X}(t)+\varDelta(t) \tag{4-1-2}\] 因此,求定和预报卫星轨道偏差的问题,也就是由上面的方程 (4-1-1) 和 (4-1-2) 估计随时间不断变化的随机向量 \(\bm{X}(t)\)

通常称要估计的随时间不断变化的随机向量 \(\bm{X}(t)\) 为动态系统在 \(t\) 时刻的“状态”向量。严格地说,动态系统的“状态”是指全面确定动态系统运动状况的最少的一组参数。一个动态系统的状态是遵循一定的物理规律而变化的,因而不同时刻对状态所作的观测也是互相联系的,对于连续时间系统,在一般情况下,状态随时间 \(t\) 变化的规律,是用一个具有随机初始状态的向量微分方程来描述,称为状态方程或动态方程,如 (4-1-1) 式。

可以把“状态向量 \(\bm{X}(t)\)”理解为全面刻画系统当前运动状况的最少一组参数。以本节卫星为例,只取“角位置偏差”和“角速度偏差”两个量就能完整描述轨道切向的运动,再多取就冗余、少取就信息不足。动态方程(4-1-1)刻画“状态如何随时间演变”,观测方程(4-1-2)刻画“状态如何被观测”,二者合起来就是动态系统的函数模型——它与第2章静态平差模型 \(\bm{L}=\bm{B}\bm{X}+\bm{\Delta}\) 的唯一区别在于:平差中 \(\bm{X}\) 是不随时间变的常数向量,而这里 \(\bm{X}(t)\) 本身就在运动。整个第4章的任务,就是一边“预测”状态的演化、一边用观测“修正”预测,交替进行。

观测向量 \(\bm{L}(t)\) 与状态向量 \(\bm{X}(t)\) 之间一般也存在某种函数关系,仍称为观测方程,也称为输出方程,如 (4-1-2) 式。

动态方程和观测方程一般可表示成 \[\left.\begin{aligned} \dot{\bm{X}}(t)&=f(\bm{X}(t),\bm{U}(t),\bm{\varOmega}(t))\\ \bm{L}(t)&=g(\bm{X}(t),\bm{U}(t),\bm{\Delta}(t)) \end{aligned}\right\}\] 式中 \(f(\cdot)\)\(g(\cdot)\) 分别是已知的 \(m\) 维和 \(n\) 维向量函数,\(\underset{m\times 1}{\bm{X}}(t)\) 是动态系统的状态向量,\(\underset{n\times 1}{\bm{L}}(t)\) 是观测向量或输出向量,\(\underset{r\times 1}{\bm{U}}(t)\)\(r\) 维控制(或输入)向量,\(\underset{p\times 1}{\bm{\varOmega}}(t)\)\(p\) 维动态噪声(或干扰)向量,\(\underset{n\times 1}{\bm{\Delta}}(t)\)\(n\) 维观测噪声(或输出噪声)向量。状态方程和观测方程也可以称为动态系统的函数模型。

通常考虑函数 \(f\)\(g\) 分别是 \(\bm{X}(t)\)\(\bm{U}(t)\)\(\bm{\varOmega}(t)\)\(\bm{X}(t)\)\(\bm{U}(t)\) 的线性函数,并且观测噪声 \(\bm{\Delta}(t)\) 是一种可加噪声。此时可得到函数模型 \[\left.\begin{aligned} \dot{\bm{X}}(t)&=\bm{A}(t)\bm{X}(t)+\bm{C}(t)\bm{U}(t)+\bm{F}(t)\bm{\varOmega}(t)\\ \bm{L}(t)&=\bm{B}(t)\bm{X}(t)+\bm{G}(t)\bm{U}(t)+\bm{\Delta}(t) \end{aligned}\right\} \tag{4-1-3}\] 式中 \(\underset{m\times m}{\bm{A}}(t)\)\(\underset{m\times r}{\bm{C}}(t)\)\(\underset{m\times p}{\bm{F}}(t)\)\(\underset{n\times m}{\bm{B}}(t)\)\(\underset{n\times r}{\bm{G}}(t)\) 都是随时间连续变化的系数矩阵。一般称由 (4-1-3) 式表示的动态系统为连续线性系统

如果不考虑系统的确定性输入 \(\bm{U}(t)\),即当 \(\bm{C}(t)=0\)\(\bm{G}(t)=0\) 时,(4-1-3) 式可简化为 \[\left.\begin{aligned} \dot{\bm{X}}(t)&=\bm{A}(t)\bm{X}(t)+\bm{F}(t)\bm{\varOmega}(t)\\ \bm{L}(t)&=\bm{B}(t)\bm{X}(t)+\bm{\Delta}(t) \end{aligned}\right\} \tag{4-1-4}\] 当 (4-1-3) 式和 (4-1-4) 式中的系数矩阵均与时间 \(t\) 无关时,则变为 \[\left.\begin{aligned} \dot{\bm{X}}(t)&=\bm{A}\bm{X}(t)+\bm{C}\bm{U}(t)+\bm{F}\bm{\varOmega}(t)\\ \bm{L}(t)&=\bm{B}\bm{X}(t)+\bm{G}\bm{U}(t)+\bm{\Delta}(t) \end{aligned}\right\} \tag{4-1-5}\] \[\left.\begin{aligned} \dot{\bm{X}}(t)&=\bm{A}\bm{X}(t)+\bm{F}\bm{\varOmega}(t)\\ \bm{L}(t)&=\bm{B}\bm{X}(t)+\bm{\Delta}(t) \end{aligned}\right\} \tag{4-1-6}\] 称它们为常系数系统的函数模型。

状态方程的解

状态方程 (4-1-3) 是线性微分方程,它的一般解等于它所对应的齐次方程的通解和非齐次方程的特解之和。为此,先求齐次状态方程 \[\dot{\bm{X}}(t)=\bm{A}(t)\bm{X}(t) \tag{4-1-7}\] 的通解。

\(\bm{X}(t_{0})\) 为任意 \(m\) 阶向量(\(t\geq t_{0}\)),并设解的形式是 \[\underset{m\times 1}{\bm{X}}(t)=\underset{m\times m}{\overline{\bm{X}}}(t)\,\underset{m\times 1}{\bm{X}}(t_{0}) \tag{4-1-8}\] 其中 \(\overline{\bm{X}}(t)\) 是未知矩阵,则有 \[\dot{\bm{X}}(t)=\dot{\overline{\bm{X}}}(t)\,\bm{X}(t_{0}) \tag{4-1-9}\] 将上两式代入 (4-1-7) 式,得 \[\left[\dot{\overline{\bm{X}}}(t)-\bm{A}(t)\overline{\bm{X}}(t)\right]\bm{X}(t_{0})=0 \tag{4-1-10}\] 因为 \(\bm{X}(t_{0})\) 是任意向量,所以对所有的 \(t\geq t_{0}\),仅当 \(\overline{\bm{X}}(t)\) 满足微分方程 \[\dot{\overline{\bm{X}}}(t)=\bm{A}(t)\overline{\bm{X}}(t) \tag{4-1-11}\] 时,(4-1-10) 式才能成立,而且当 \(t=t_{0}\) 时,必有 \[\bm{X}(t_{0})=\overline{\bm{X}}(t_{0})\bm{X}(t_{0})\] 或写为 \[\left[\bm{E}-\overline{\bm{X}}(t_{0})\right]\bm{X}(t_{0})=0\] 即有 \[\overline{\bm{X}}(t_{0})=\bm{E} \tag{4-1-12}\] 显然,(4-1-12) 式是 (4-1-11) 的初始条件。因此,齐次方程 (4-1-7) 的通解可写为 \[\bm{X}(t)=\overline{\bm{X}}(t)\bm{X}(t_{0})\] 式中 \(\overline{\bm{X}}(t)\) 应满足 (4-1-10) 和 (4-1-12) 两式。上式也就是 (4-1-8) 式。

下面求 (4-1-3) 式的特解。设求得的特解为 \[\bm{X}(t)=\overline{\bm{X}}(t)\bm{Y}(t) \tag{4-1-13}\] 式中 \(\underset{m\times 1}{\bm{Y}}(t)\) 是未知的 \(m\) 维向量。对上式求导得 \[\dot{\bm{X}}(t)=\dot{\overline{\bm{X}}}(t)\bm{Y}(t)+\overline{\bm{X}}(t)\dot{\bm{Y}}(t) \tag{4-1-14}\] 将上两式代入 (4-1-3) 式,有 \[\dot{\overline{\bm{X}}}(t)\bm{Y}(t)+\overline{\bm{X}}(t)\dot{\bm{Y}}(t) =\bm{A}(t)\overline{\bm{X}}(t)\bm{Y}(t)+\bm{C}(t)\bm{U}(t)+\bm{F}(t)\bm{\varOmega}(t)\] 顾及 (4-1-11) 式,上式可化为 \[\overline{\bm{X}}(t)\dot{\bm{Y}}(t)=\bm{C}(t)\bm{U}(t)+\bm{F}(t)\bm{\varOmega}(t) \tag{4-1-15}\] 可以证明,\(\overline{\bm{X}}(t)\) 是非奇异阵,\(\overline{\bm{X}}^{-1}(t)\) 存在,所以 \[\dot{\bm{Y}}(t)=\overline{\bm{X}}^{-1}(t)\left[\bm{C}(t)\bm{U}(t)+\bm{F}(t)\bm{\varOmega}(t)\right] \tag{4-1-16}\] 对上式积分得 \[\bm{Y}(t)=\int_{t_{0}}^{t}\overline{\bm{X}}^{-1}(\tau)\left[\bm{C}(\tau)\bm{U}(\tau)+\bm{F}(\tau)\bm{\varOmega}(\tau)\right]\mathrm{d}\tau \tag{4-1-17}\] 将 (4-1-17) 式代入 (4-1-13) 式,则得 (4-1-3) 式特解为 \[\bm{X}(t)=\overline{\bm{X}}(t)\int_{t_{0}}^{t}\overline{\bm{X}}^{-1}(\tau)\left[\bm{C}(\tau)\bm{U}(\tau)+\bm{F}(\tau)\bm{\varOmega}(\tau)\right]\mathrm{d}\tau \tag{4-1-18}\]

将 (4-1-8) 与 (4-1-18) 式合并后,可得到一般解为 \[\bm{X}(t)=\overline{\bm{X}}(t)\bm{X}(t_{0}) +\overline{\bm{X}}(t)\int_{t_{0}}^{t}\overline{\bm{X}}^{-1}(\tau)\left[\bm{C}(\tau)\bm{U}(\tau)+\bm{F}(\tau)\bm{\varOmega}(\tau)\right]\mathrm{d}\tau \tag{4-1-19}\]\[\underset{m\times m}{\bm{\varPhi}}(t,\tau)=\overline{\bm{X}}(t)\overline{\bm{X}}^{-1}(\tau) \tag{4-1-20}\]\(\underset{m\times m}{\bm{\varPhi}}(t,\tau)\)系统转移矩阵。因 \(\overline{\bm{X}}(t_{0})=\bm{E}\),所以 \[\bm{\varPhi}(t,t_{0})=\overline{\bm{X}}(t)\overline{\bm{X}}^{-1}(t_{0})=\overline{\bm{X}}(t)\] 故 (4-1-19) 式可写为 \[\bm{X}(t)=\bm{\varPhi}(t,t_{0})\bm{X}(t_{0}) +\int_{t_{0}}^{t}\bm{\varPhi}(t,\tau)\left[\bm{C}(\tau)\bm{U}(\tau)+\bm{F}(\tau)\bm{\varOmega}(\tau)\right]\mathrm{d}\tau \quad(t\geq t_{0}) \tag{4-1-21}\] 上式就是状态方程 (4-1-3) 的解。显然,对于不考虑系统的确定性输入的状态方程 (4-1-4),其解为

补 (4-1-21) 式对 (4-1-3) 的推导中“从 (4-1-19) 到 (4-1-21)”的一步跳变。解由两部分构成:齐次解 \(\overline{\bm{X}}(t)\bm{X}(t_{0})\)(反映初始状态经转移矩阵的作用)与特解(积分项,反映控制输入和动态噪声的累积影响)。关键是引入转移矩阵 \(\bm{\varPhi}(t,\tau)=\overline{\bm{X}}(t)\overline{\bm{X}}^{-1}(\tau)\) 后,被积函数中的 \(\overline{\bm{X}}(t)\overline{\bm{X}}^{-1}(\tau)\) 被统一为 \(\bm{\varPhi}(t,\tau)\)。注意 \((4\text{-}1\text{-}19)\)\((4\text{-}1\text{-}21)\) 是同一个式子——前者的 \(\overline{\bm{X}}(t)\int_{t_{0}}^{t}\overline{\bm{X}}^{-1}(\tau)(\cdot)\mathrm{d}\tau\) 正是后者的 \(\int_{t_{0}}^{t}\bm{\varPhi}(t,\tau)(\cdot)\mathrm{d}\tau\)。读者若觉得从 \(t_{0}\)\(t\) 的积分上限绕,可以这样想:把 \(t_{0}\) 视为“观测开始时刻”,\(\bm{\varPhi}(t,t_{0})=\overline{\bm{X}}(t)\),转移矩阵把 \(t_{0}\) 时刻的状态/噪声“搬运”到 \(t\) 时刻。

\[\bm{X}(t)=\bm{\varPhi}(t,t_{0})\bm{X}(t_{0}) +\int_{t_{0}}^{t}\bm{\varPhi}(t,\tau)\bm{F}(\tau)\bm{\varOmega}(\tau)\,\mathrm{d}\tau \tag{4-1-22}\]

将 (4-1-20) 式对时间 \(t\) 求导数,可得 \[\dot{\bm{\varPhi}}(t,\tau)=\dot{\overline{\bm{X}}}(t)\overline{\bm{X}}^{-1}(\tau) =\bm{A}(t)\overline{\bm{X}}(t)\overline{\bm{X}}^{-1}(\tau)\] 所以有 \[\dot{\bm{\varPhi}}(t,\tau)=\bm{A}(t)\bm{\varPhi}(t,\tau) \tag{4-1-23}\] 对于一切 \(t\geq t_{0}\),由 (4-1-20) 式可知 \[\bm{\varPhi}(t,t)=\overline{\bm{X}}(t)\overline{\bm{X}}^{-1}(t)=\bm{E} \tag{4-1-24}\] 因此,以 (4-1-24) 式为初始条件,解微分方程 \[\dot{\bm{\varPhi}}(t,t_{0})=\bm{A}(t)\bm{\varPhi}(t,t_{0}) \tag{4-1-25}\] 再以 \(\tau\) 代换 \(t_{0}\) 就可以求得 \(\bm{\varPhi}(t,\tau)\)

由状态转移矩阵的定义 (4-1-20) 式,还可得出它的两个重要性质:

(1) 对所有的 \(t_{1}\)\(t_{2}\)\(\tau\geq t_{0}\),有 \[\bm{\varPhi}(t_{2},t_{1})=\bm{\varPhi}(t_{2},\tau)\bm{\varPhi}(\tau,t_{1}) \tag{4-1-26}\]

(2) 对所有的 \(t_{1}\)\(t_{2}\geq t_{0}\),有 \[\bm{\varPhi}^{-1}(t_{1},t_{2})=\bm{\varPhi}(t_{2},t_{1}) \tag{4-1-27}\]

状态转移矩阵 \(\bm{\varPhi}(t,\tau)\) 可以理解为“把 \(\tau\) 时刻的状态无损地搬运到 \(t\) 时刻的线性算子”。性质 (1) 说的正是“先到 \(t_{1}\)、再到 \(t_{2}\),等于直达 \(t_{2}\)”,即 \(\bm{\varPhi}(t_{2},t_{1})=\bm{\varPhi}(t_{2},\tau)\bm{\varPhi}(\tau,t_{1})\);性质 (2) 则说“从 \(t_{1}\)\(t_{2}\) 的转移矩阵的逆,就是反方向从 \(t_{2}\) 回到 \(t_{1}\)”。这两个性质在 4-6 节预测、4-7 节平滑中会被反复使用——平滑时要把滤波值“往回搬运”,正是用 \(\bm{\varPhi}^{-1}\) 来实现。常系数系统下 \(\bm{\varPhi}(t,\tau)=\mathrm{e}^{\bm{A}(t-\tau)}\),例 4-1-1 中的 \(\begin{bmatrix}1&t-\tau\\0&1\end{bmatrix}\) 就是其具体形态。

例 4-1-1

试求状态方程 (4-1-1) 之解。

为求此状态方程之解,需要利用初始条件 \(\bm{\varPhi}(t,t_{0})=\bm{E}\),解矩阵微分方程 \[\dot{\bm{\varPhi}}(t,t_{0})=\begin{bmatrix}0&1\\ 0&0\end{bmatrix}\bm{\varPhi}(t,t_{0})\] 也就是解下列微分方程组 \[\left.\begin{aligned} \dot{\varPhi}_{11}(t,t_{0})&=\varPhi_{21}(t,t_{0})\\ \dot{\varPhi}_{12}(t,t_{0})&=\varPhi_{22}(t,t_{0})\\ \dot{\varPhi}_{21}(t,t_{0})&=0\\ \dot{\varPhi}_{22}(t,t_{0})&=0 \end{aligned}\right\}\] 由后面两个方程和初始条件容易得出 \[\left.\begin{aligned} \varPhi_{21}(t,t_{0})&=0\\ \varPhi_{22}(t,t_{0})&=1 \end{aligned}\right\}\] 而前面两个方程可变为 \[\left.\begin{aligned} \dot{\varPhi}_{11}(t,t_{0})&=0\\ \dot{\varPhi}_{12}(t,t_{0})&=1 \end{aligned}\right\}\] 它们的解为 \[\left.\begin{aligned} \varPhi_{11}(t,t_{0})&=1\\ \varPhi_{12}(t,t_{0})&=t-t_{0} \end{aligned}\right\}\] 所以,状态转移矩阵为 \[\bm{\varPhi}(t,\tau)=\begin{bmatrix}1&t-\tau\\ 0&1\end{bmatrix}\] 状态方程之解为 \[\begin{aligned} \bm{X}(t)&=\begin{bmatrix}1&t-t_{0}\\ 0&1\end{bmatrix}\bm{X}(t_{0}) +\int_{t_{0}}^{t}\begin{bmatrix}1&t-\tau\\ 0&1\end{bmatrix}\begin{bmatrix}0\\ 1\end{bmatrix}\varOmega(\tau)\,\mathrm{d}\tau\\ &=\begin{bmatrix}1&t-t_{0}\\ 0&1\end{bmatrix}\bm{X}(t_{0}) +\int_{t_{0}}^{t}\begin{bmatrix}t-\tau\\ 1\end{bmatrix}\varOmega(\tau)\,\mathrm{d}\tau \end{aligned}\]

连续线性系统的随机模型

在实际工作中,常见的连续线性系统是动态噪声和观测噪声均为白噪声,且它们之间完全不相关的情况。对这种白噪声情况下的连续线性系统,通常是假定它有以下随机模型:

(1) 系统的动态噪声 \(\bm{\varOmega}(t)\,(t\geq 0)\) 和观测噪声 \(\bm{\Delta}(t)\,(t\geq t_{0})\)零均值白噪声或高斯白噪声随机向量过程,即 \[\left.\begin{aligned} E[\bm{\varOmega}(t)]&=\bm{0}\\ E[\bm{\Delta}(t)]&=\bm{0} \end{aligned}\right\} \tag{4-1-28}\] \[\left.\begin{aligned} \operatorname{cov}[\bm{\varOmega}(t),\bm{\varOmega}(\tau)]&=\bm{D}_{\varOmega}(t)\,\delta(t-\tau)\\ \operatorname{cov}[\bm{\Delta}(t),\bm{\Delta}(\tau)]&=\bm{D}_{\Delta}(t)\,\delta(t-\tau) \end{aligned}\right\} \tag{4-1-29}\] 式中 \(\bm{D}_{\varOmega}(t)\) 是随时间连续变化的对称非负定阵,而 \(\bm{D}_{\Delta}(t)\) 是随时间连续变化的对称正定阵,\(\delta(0)\) 是 Dirac-\(\delta\) 函数。

(2) 动态噪声与观测噪声完全不相关,即 \[\operatorname{cov}[\bm{\varOmega}(t),\bm{\Delta}(\tau)]=\bm{0} \tag{4-1-30}\]

(3) 系统的初始状态 \(\bm{X}(t_{0})\) 是具有某种已知分布或正态分布的随机向量,其均值与方差阵为 \[\left.\begin{aligned} E[\bm{X}(t_{0})]&=\bm{\mu}_{X}(t_{0})\\ \operatorname{var}[\bm{X}(t_{0})]&=\bm{D}_{X}(t_{0}) \end{aligned}\right\} \tag{4-1-31}\]

(4) 动态噪声、观测噪声均与初始状态 \(\bm{X}(t_{0})\) 不相关,即对于一切 \(t\geq t_{0}\)\[\left.\begin{aligned} \operatorname{cov}[\bm{X}(t_{0}),\bm{\varOmega}(t)]&=\bm{0}\\ \operatorname{cov}[\bm{X}(t_{0}),\bm{\Delta}(t)]&=\bm{0} \end{aligned}\right\} \tag{4-1-32}\]

注意随机模型中两个“非负定/正定”的区别:动态噪声 \(\bm{D}_{\varOmega}(t)\) 只要求对称非负定(允许某些方向没有噪声激励),而观测噪声 \(\bm{D}_{\Delta}(t)\) 要求对称正定。原因在 4-3 节会显现:滤波增益公式中要对观测噪声方差阵取逆((4-3-29) 中的 \(\bm{D}_{\Delta}^{-1}(k)\)),一旦 \(\bm{D}_{\Delta}\) 奇异,增益阵就无法计算。另外,白噪声假定 (4-1-29) 中的 \(\delta(t-\tau)\) 是 Dirac-\(\delta\) 函数,它等价于“不同时刻的噪声互不相关”,这是后面 (4-1-35) (4-1-37) 诸式成立的前提;一旦噪声为有色噪声,这些交叉协方差为零的性质将全部失效,滤波方程也要改用 4-5 节的方法。

上面是常见的白噪声下的连续线性系统的随机模型,如果将 (4-1-28) 和 (4-1-30) 修改为 \[\left.\begin{aligned} E[\bm{\varOmega}(t)]&=\bm{\mu}_{\varOmega}(t)\\ E[\bm{\Delta}(t)]&=\bm{\mu}_{\Delta}(t) \end{aligned}\right\} \tag{4-1-33}\] \[\operatorname{cov}[\bm{\varOmega}(t),\bm{\Delta}(\tau)]=\bm{D}_{\varOmega\Delta}(t)\,\delta(t-\tau) \tag{4-1-34}\] 即假定动态噪声和观测噪声的均值不为零,且它们在同一时刻是相关的,称为白噪声情况下的一般连续线性系统。

如果动态噪声或观测噪声是有色噪声,即不同时刻的动态噪声或观测噪声是相关的,则称这种系统为有色噪声情况下的连续线性系统。

可以证明,当线性系统 (4-1-3) 具有 (4-1-28)   (4-1-32) 诸式的随机模型时,对于一切 \(\tau>t\geq t_{0}\),有 \[\left.\begin{aligned} \operatorname{cov}[\bm{X}(t),\bm{\varOmega}(\tau)]&=\bm{0}\\ \operatorname{cov}[\bm{L}(t),\bm{\varOmega}(\tau)]&=\bm{0} \end{aligned}\right\} \tag{4-1-35}\]\(\bm{\Delta}(t)\)\(\bm{\varOmega}(t)\) 完全不相关时,对于一切 \(t,\tau\geq t_{0}\),有 \[\operatorname{cov}[\bm{X}(t),\bm{\Delta}(\tau)]=\bm{0} \tag{4-1-36}\] 对于一切 \(\tau>t\geq t_{0}\),有 \[\operatorname{cov}[\bm{L}(t),\bm{\Delta}(\tau)]=\bm{0} \tag{4-1-37}\]

下面讨论状态向量 \(\bm{X}(t)\,(t>t_{0})\) 的均值和自协方差函数。

对于由 (4-1-4) 式表示的线性系统,将状态方程之解 (4-1-22) 的两边取数学期望,并考虑数学期望的运算和积分运算可以交换,则状态向量的均值函数满足以下方程 \[\bm{\mu}_{X}(t)=\bm{\varPhi}(t,t_{0})\bm{\mu}_{X}(t_{0}) +\int_{t_{0}}^{t}\bm{\varPhi}(t,\tau)\bm{F}(\tau)\bm{\mu}_{\varOmega}(\tau)\,\mathrm{d}\tau \tag{4-1-38}\] 上式就是在 (4-1-22) 式中用均值函数代替状态向量的结果。

状态向量的自协方差函数由下式确定 \[\bm{D}_{X}(t_{1},t_{2})=\operatorname{cov}[\bm{X}(t_{1}),\bm{X}(t_{2})] =E\left\{[\bm{X}(t_{1})-\bm{\mu}_{X}(t_{1})]\,[\bm{X}(t_{2})-\bm{\mu}_{X}(t_{2})]^{T}\right\} \tag{4-1-39}\] 因为对于一切 \(\tau\geq t_{0}\)\(\bm{\varOmega}(\tau)\)\(\bm{X}(t_{0})\) 不相关,且 \[\bm{X}(t)-\bm{\mu}_{X}(t)=\bm{\varPhi}(t,t_{0})\left[\bm{X}(t_{0})-\bm{\mu}_{X}(t_{0})\right] +\int_{t_{0}}^{t}\bm{\varPhi}(t,\tau)\bm{F}(\tau)\left[\bm{\varOmega}(\tau)-\bm{\mu}_{\varOmega}(\tau)\right]\mathrm{d}\tau\] 所以 \[\begin{aligned} \bm{D}_{X}(t_{1},t_{2})={}&\bm{\varPhi}(t_{1},t_{0})\,\bm{D}_{X}(t_{0})\,\bm{\varPhi}^{T}(t_{2},t_{0})+{}\\ &\int_{t_{0}}^{t_{1}}\!\!\int_{t_{0}}^{t_{2}}\bm{\varPhi}(t_{1},\tau_{1})\,\bm{F}(\tau_{1})\,\bm{D}_{\varOmega}(\tau_{1},\tau_{2})\, \bm{F}^{T}(\tau_{2})\,\bm{\varPhi}^{T}(t_{2},\tau_{2})\,\mathrm{d}\tau_{1}\mathrm{d}\tau_{2} \end{aligned} \tag{4-1-40}\]\(\bm{\varOmega}(t)\) 是白噪声过程时,有 \[\begin{aligned} \bm{D}_{X}(t_{1},t_{2})={}&\bm{\varPhi}(t_{1},t_{0})\,\bm{D}_{X}(t_{0})\,\bm{\varPhi}^{T}(t_{2},t_{0})+{}\\ &\int_{t_{0}}^{t^{\prime}}\bm{\varPhi}(t_{1},\tau)\,\bm{F}(\tau)\,\bm{D}_{\varOmega}(\tau)\,\bm{F}^{T}(\tau)\,\bm{\varPhi}^{T}(t_{1},\tau)\,\mathrm{d}\tau \end{aligned} \tag{4-1-41}\] 其中 \(t^{\prime}=\min(t_{1},t_{2})\)。而当 \(t_{1}=t_{2}=t\) 时,有 \[\begin{aligned} \bm{D}_{X}(t)={}&\bm{\varPhi}(t,t_{0})\,\bm{D}_{X}(t_{0})\,\bm{\varPhi}^{T}(t,t_{0})+{}\\ &\int_{t_{0}}^{t}\bm{\varPhi}(t,\tau)\,\bm{F}(\tau)\,\bm{D}_{\varOmega}(\tau)\,\bm{F}^{T}(\tau)\,\bm{\varPhi}^{T}(t,\tau)\,\mathrm{d}\tau \end{aligned} \tag{4-1-42}\] 此时,(4-1-41) 式可改写为 \[\bm{D}_{X}(t_{1},t_{2})= \begin{cases} \bm{\varPhi}(t_{1},t_{2})\,\bm{D}_{X}(t_{2}), & t_{1}>t_{2}\\ \bm{D}_{X}(t_{1})\,\bm{\varPhi}^{T}(t_{2},t_{1}), & t_{1}<t_{2} \end{cases} \tag{4-1-43}\]

本节连续线性系统的状态方程、状态方程的解 (4-1-21) 与随机模型,是《最优估计基础》第4章 Kalman 滤波的铺垫;该书 4.5 节“线性连续系统的 Kalman 滤波”讨论连续情形的滤波方程,可与本节对照。本节的转移矩阵白噪声随机模型、(4-1-42) 的方差传播公式,在《最优估计基础》4.2 节离散 Kalman 滤波的推导中会以离散化形式再次出现。另外,(4-1-39) (4-1-43) 的均值和自协方差推导所用的“期望与积分交换、白噪声交叉项消失”的技巧,与第2章协方差传播律的用法一脉相承,可与 2-1 节 (2-1-10) 式的推导对照体会。

离散线性系统的数学模型

离散线性系统的状态方程和观测方程

如果仅在确定的瞬间 \(t_{i}\,(i=0,1,2,\cdots)\) 来研究系统的性能,则把这样的系统叫做离散时间系统。一般来说,它包括两种情况:

(1) 系统本身就是一个离散系统,对于这种系统,只能在离散的瞬间来研究系统的状态,而在这些时刻之间,系统的状态是没有意义的。

(2) 本身是连续系统,但为了研究方便,仅在离散时间内研究其性能。

一个离散线性系统,通常是用一个具有随机初始状态,并带有动态噪声的线性差分方程和离散观测方程来描述。对于上述第二种情况,可以由相应的连续线性系统的状态方程和观测方程离散化得到。下面在离散时刻 \(t_{0},t_{1},\cdots,t_{k},\cdots\) 考虑线性系统 (4-1-3),即 \[\dot{\bm{X}}(t)=\bm{A}(t)\bm{X}(t)+\bm{C}(t)\bm{U}(t)+\bm{F}(t)\bm{\varOmega}(t) \tag{4-2-1}\] \[\bm{L}(t)=\bm{B}(t)\bm{X}(t)+\bm{G}(t)\bm{U}(t)+\bm{\Delta}(t) \tag{4-2-2}\] 由状态方程之解 (4-1-21) 可得 \[\begin{aligned} \bm{X}(t_{k+1})={}&\bm{\varPhi}(t_{k+1},t_{k})\,\bm{X}(t_{k})+{}\\ &\int_{t_{k}}^{t_{k+1}}\bm{\varPhi}(t_{k+1},\tau)\left[\bm{C}(\tau)\bm{U}(\tau)+\bm{F}(\tau)\bm{\varOmega}(\tau)\right]\mathrm{d}\tau \end{aligned} \tag{4-2-3}\] 用下标 \(k+1\)\(k\) 表示 \(t_{k+1}\)\(t_{k}\),并设 \[\left.\begin{aligned} \bm{\varPsi}_{k+1,k}&=\int_{t_{k}}^{t_{k+1}}\bm{\varPhi}(t_{k+1},\tau)\,\bm{C}(\tau)\,\mathrm{d}\tau\\ \bm{\varGamma}_{k+1,k}&=\int_{t_{k}}^{t_{k+1}}\bm{\varPhi}(t_{k+1},\tau)\,\bm{F}(\tau)\,\mathrm{d}\tau\\ \bm{\varOmega}_{k}&=\frac{1}{\Delta t}\int_{t_{k}}^{t_{k+1}}\bm{\varOmega}(\tau)\,\mathrm{d}\tau \end{aligned}\right\} \tag{4-2-4}\] 对于观测方程,设 \[\bm{\Delta}_{k+1}=\frac{1}{\Delta t}\int_{t_{k}}^{t_{k+1}}\bm{\Delta}(\tau)\,\mathrm{d}\tau \tag{4-2-5}\] 其中 \(\Delta t=t_{k+1}-t_{k}\)。则 (4-2-3) 式和观测方程 (4-2-2) 可写为 \[\bm{X}_{k+1}=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k} \tag{4-2-6}\] \[\bm{L}_{k+1}=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{G}_{k+1}\bm{U}_{k+1}+\bm{\Delta}_{k+1} \tag{4-2-7}\] 以上两式就是离散线性系统的状态方程和观测方程。

离散化可以这样理解:连续系统 (4-1-3) 在每个采样间隔 \([t_{k},t_{k+1}]\) 内积分一次,把“连续流动”变成“按拍节前进”。关键在 (4-2-4) 式的三个量:\(\bm{\varPhi}_{k+1,k}\) 是把 \(t_{k}\) 时刻状态搬到 \(t_{k+1}\) 的转移矩阵;\(\bm{\varPsi}_{k+1,k}\) 是确定性输入 \(\bm{U}\) 在该间隔内的累积作用;\(\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\) 则是动态噪声的“平均效果”。其中 \(\bm{\varOmega}_{k}\) 取区间平均值,故离散化后 (4-2-12) 的动态噪声方差阵 \(\bm{D}_{\varOmega}(k)\) 保留了连续噪声的“强度”,而 \(\bm{\varGamma}\) 充当了连续噪声驱动矩阵 \(\bm{F}\) 的离散化角色。例 4-2-1 中 \(\bm{\varGamma}_{k+1,k}=\left[\frac{1}{2}\Delta t^{2},\ \Delta t\right]^{T}\) 正是“噪声在一个步长内对位置和速度各产生多少影响”的直观体现。

当不考虑系统具有确定性输入时,状态方程和观测方程即为 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-2-8}\] 对于常系数线性系统,则有 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}(\Delta t)\,\bm{X}_{k}+\bm{\varPsi}(\Delta t)\,\bm{U}_{k}+\bm{\varGamma}(\Delta t)\,\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}\bm{X}_{k+1}+\bm{G}\bm{U}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-2-9}\] \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}(\Delta t)\,\bm{X}_{k}+\bm{\varGamma}(\Delta t)\,\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}\bm{X}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-2-10}\]

例 4-2-1

写出 [例 4-1-1] 的状态方程和观测方程的离散化形式。

在 [例 4-1-1] 中已求得状态转移矩阵为 \[\bm{\varPhi}(t,\tau)=\begin{bmatrix}1&t-\tau\\ 0&1\end{bmatrix}\] 所以 \[\bm{\varPhi}_{k+1,k}=\begin{bmatrix}1&t_{k+1}-t_{k}\\ 0&1\end{bmatrix}\] 而由 (4-2-4) 知 \[\begin{aligned} \bm{\varGamma}_{k+1,k}&=\int_{t_{k}}^{t_{k+1}}\bm{\varPhi}(t_{k+1},\tau)\,\bm{F}(\tau)\,\mathrm{d}\tau =\int_{t_{k}}^{t_{k+1}}\begin{bmatrix}1&t_{k+1}-\tau\\ 0&1\end{bmatrix}\begin{bmatrix}0\\ 1\end{bmatrix}\mathrm{d}\tau\\ &=\int_{t_{k}}^{t_{k+1}}\begin{bmatrix}t_{k+1}-\tau\\ 1\end{bmatrix}\mathrm{d}\tau =\begin{bmatrix}\dfrac{1}{2}(t_{k+1}-t_{k})^{2}\\[8pt] t_{k+1}-t_{k}\end{bmatrix} \end{aligned}\] 所以,离散化的状态方程为 \[\bm{X}_{k+1}=\begin{bmatrix}1&t_{k+1}-t_{k}\\ 0&1\end{bmatrix}\bm{X}_{k} +\begin{bmatrix}\dfrac{1}{2}(t_{k+1}-t_{k})^{2}\\[8pt] t_{k+1}-t_{k}\end{bmatrix}\varOmega_{k}\] 离散化的观测方程为 \[L_{k+1}=\begin{bmatrix}1&0\end{bmatrix}\bm{X}_{k+1}+\varDelta_{k+1}\]

离散线性系统的随机模型

完全不相关的白噪声情况下的离散线性系统具有以下随机模型:

(1) 动态噪声和观测噪声是零均值白噪声或高斯白噪声序列,即有 \[\left.\begin{aligned} E(\bm{\varOmega}_{k})&=\bm{0}\\ E(\bm{\Delta}_{k})&=\bm{0} \end{aligned}\right\} \tag{4-2-11}\] \[\left.\begin{aligned} \operatorname{cov}(\bm{\varOmega}_{k},\bm{\varOmega}_{j})&=\bm{D}_{\varOmega}(k)\,\delta_{kj}\\ \operatorname{cov}(\bm{\Delta}_{k},\bm{\Delta}_{j})&=\bm{D}_{\Delta}(k)\,\delta_{kj} \end{aligned}\right\} \tag{4-2-12}\] 其中 \(\bm{D}_{\varOmega}(k)\)\(\bm{\varOmega}_{k}\) 的非负定方差阵,\(\bm{D}_{\Delta}(k)\)\(\bm{\Delta}_{k}\) 的正定方差阵,\(\delta_{kj}\) 是克罗内克 \(\delta\) 函数。

与连续情形 (4-1-29) 一样,离散随机模型区分两种方差阵的性质:\(\bm{D}_{\varOmega}(k)\) 只要求对称非负定,而 \(\bm{D}_{\Delta}(k)\) 必须对称正定。这一区别到 4-3 节 (4-3-29) 的增益阵中才会真正起作用——那里要求 \(\bm{D}_{\Delta}^{-1}(k)\) 存在。另一个易错点是 (4-2-12) 中 \(\delta_{kj}\) 是克罗内克符号(\(k=j\) 时为 1,否则为 0),它与连续情形的 Dirac 函数不同,是“离散时刻白噪声”的正确表述。此外,由 (4-2-17) (4-2-19) 可知:动态噪声与观测噪声不相关、且各为白噪声时,状态 \(X_k\) 与“未来”噪声不相关\(j\geq k\)\(\operatorname{cov}(\bm{X}_{k},\bm{\varOmega}_{j})=\bm{0}\)),这是 4-3 节推导滤波方程时反复使用的关键性质,务必记牢。

(2) 动态噪声与观测噪声完全不相关,即 \[\operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{j})=\bm{0} \tag{4-2-13}\]

(3) 系统的初始状态 \(\bm{X}_{0}\) 是具有正态分布或其他分布的随机向量,其均值和方差阵为 \[\left.\begin{aligned} E(\bm{X}_{0})&=\bm{\mu}_{X}(0)\\ \operatorname{var}(\bm{X}_{0})&=\bm{D}_{X}(0) \end{aligned}\right\} \tag{4-2-14}\] 以上的随机模型也可以说是相应的连续系统随机模型的离散化形式。

对于白噪声情况下一般离散性系统,其随机模型仅将上面的 (4-2-11) 式和 (4-2-13) 式修改为 \[\left.\begin{aligned} E(\bm{\varOmega}_{k})&=\bm{\mu}_{\varOmega}(k)\\ E(\bm{\Delta}_{k})&=\bm{\mu}_{\Delta}(k) \end{aligned}\right\} \tag{4-2-15}\] \[\operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{j})=\bm{D}_{\varOmega\Delta}(k)\,\delta_{kj} \tag{4-2-16}\] 即假定动态噪声和观测噪声的均值不为零,且它们在同一时刻是相关的。

此外,在有色噪声情况下的离散线性系统中,动态噪声和观测噪声在不同时刻是相关的。

容易证明,对于常见的白噪声情况下的离散线性系统,即具有 (4-2-11)   (4-2-14) 诸式的随机模型的离散线性系统,还具有性质:对于一切 \(j\geq k\geq 0\),有 \[\operatorname{cov}(\bm{X}_{k},\bm{\varOmega}_{j})=\bm{0} \tag{4-2-17}\] 对于一切 \(j\geq k\geq 0\),若 \(\operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{j})=\bm{0}\),有 \[\operatorname{cov}(\bm{L}_{k},\bm{\varOmega}_{j})=\bm{0} \tag{4-2-18}\] 对于一切 \(j>k\geq 0\),有 \[\operatorname{cov}(\bm{L}_{k},\bm{\Delta}_{j})=\bm{0} \tag{4-2-19}\]

下面讨论状态向量 \(\bm{X}_{k}\,(k>0)\) 的均值和自协方差函数。由状态方程 (4-2-6) 可写出 \[\left.\begin{aligned} \bm{X}_{k}&=\bm{\varPhi}_{k,k-1}\bm{X}_{k-1}+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}+\bm{\varGamma}_{k,k-1}\bm{\varOmega}_{k-1}\\ \bm{X}_{k-1}&=\bm{\varPhi}_{k-1,k-2}\bm{X}_{k-2}+\bm{\varPsi}_{k-1,k-2}\bm{U}_{k-2}+\bm{\varGamma}_{k-1,k-2}\bm{\varOmega}_{k-2}\\ &\cdots \end{aligned}\right\}\] 且由状态转移矩阵的性质知 \[\bm{\varPhi}_{k,j}=\bm{\varPhi}_{k,i}\bm{\varPhi}_{i,j}\] 所以 \[\bm{X}_{k}=\bm{\varPhi}_{k,j}\bm{X}_{j} +\sum_{i=j+1}^{k}\bm{\varPhi}_{k,i}\bm{\varPsi}_{i,i-1}\bm{U}_{i-1} +\sum_{i=j+1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{\varOmega}_{i-1} \tag{4-2-20}\] 若取 \(j=0\),则 \[\bm{X}_{k}=\bm{\varPhi}_{k,0}\bm{X}_{0} +\sum_{i=1}^{k}\bm{\varPhi}_{k,i}\bm{\varPsi}_{i,i-1}\bm{U}_{i-1} +\sum_{i=1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{\varOmega}_{i-1} \tag{4-2-21}\] 由 (4-2-6) 式和 (4-2-21) 式可得状态向量 \(\bm{X}_{k+1}\) 的均值函数为 \[\bm{\mu}_{X}(k+1)=\bm{\varPhi}_{k+1,k}\bm{\mu}_{X}(k) +\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\mu}_{\varOmega}(k) \tag{4-2-22}\] \[\bm{\mu}_{X}(k+1)=\bm{\varPhi}_{k+1,0}\bm{\mu}_{X}(0) +\sum_{i=1}^{k+1}\bm{\varPhi}_{k+1,i}\bm{\varPsi}_{i,i-1}\bm{U}_{i-1} +\sum_{i=1}^{k+1}\bm{\varPhi}_{k+1,i}\bm{\varGamma}_{i,i-1}\bm{\mu}_{\varOmega}(i-1) \tag{4-2-23}\]\(\bm{\mu}_{\varOmega}(k)=\bm{0}\) 时,则上式最后一项为零。

对于白噪声情况下的离散线性系统,因为 \(\bm{U}_{k}\,(k\geq 0)\) 是非随机项,故由 (4-2-21) 式按协方差传播律可得状态向量的自协方差函数\[\begin{aligned} \bm{D}_{X}(k,j)&=\operatorname{cov}(\bm{X}_{k},\bm{X}_{j}) =\bm{\varPhi}_{k,0}\bm{D}_{X}(0)\,\bm{\varPhi}_{j,0}^{T}+{}\\ &\qquad\sum_{i=1}^{k^{\prime}}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{D}_{\varOmega}(i-1)\,\bm{\varGamma}_{i,i-1}^{T}\bm{\varPhi}_{j,i}^{T} \end{aligned} \tag{4-2-24}\] 其中 \(k^{\prime}=\min(k,j)\),此时,\(\bm{X}_{k}\) 的方差阵为 \[\bm{D}_{X}(k)=\bm{\varPhi}_{k,0}\bm{D}_{X}(0)\,\bm{\varPhi}_{k,0}^{T} +\sum_{i=1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{D}_{\varOmega}(i-1)\,\bm{\varGamma}_{i,i-1}^{T}\bm{\varPhi}_{k,i}^{T} \tag{4-2-25}\] 显然,协方差函数可表示为 \[\bm{D}_{X}(k,j)= \begin{cases} \bm{\varPhi}_{k,j}\bm{D}_{X}(j), & k>j\\ \bm{D}_{X}(k)\,\bm{\varPhi}^{T}(j,k), & k<j \end{cases} \tag{4-2-26}\] 此外,由 (4-2-6) 式按协方差传播律得 \[\bm{D}_{X}(k+1)=\bm{\varPhi}_{k+1,k}\bm{D}_{X}(k)\,\bm{\varPhi}_{k+1,k}^{T} +\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\,\bm{\varGamma}_{k+1,k}^{T} \tag{4-2-27}\]

补 (4-2-27) 式的推导。由状态方程 \(\bm{X}_{k+1}=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\),其中 \(\bm{\varPsi}_{k+1,k}\bm{U}_{k}\) 是非随机项,对协方差无贡献。关键一步是利用 \(\bm{\varOmega}_{k}\)\(\bm{X}_{k}\) 不相关((4-2-17) 式,\(j=k\) 时成立),故交叉协方差项 \(\operatorname{cov}(\bm{X}_{k},\bm{\varOmega}_{k})=\bm{0}\)。按协方差传播律展开: \[\begin{aligned} \bm{D}_{X}(k+1)&=\bm{\varPhi}_{k+1,k}\bm{D}_{X}(k)\,\bm{\varPhi}_{k+1,k}^{T} +\bm{\varPhi}_{k+1,k}\operatorname{cov}(\bm{X}_{k},\bm{\varOmega}_{k})\bm{\varGamma}_{k+1,k}^{T}\\ &\quad+\bm{\varGamma}_{k+1,k}\operatorname{cov}(\bm{\varOmega}_{k},\bm{X}_{k})\bm{\varPhi}_{k+1,k}^{T} +\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\bm{\varGamma}_{k+1,k}^{T}\\ &=\bm{\varPhi}_{k+1,k}\bm{D}_{X}(k)\,\bm{\varPhi}_{k+1,k}^{T} +\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\,\bm{\varGamma}_{k+1,k}^{T} \end{aligned}\] 即得 (4-2-27) 式。对照 (4-1-42) 的连续形式可见两者结构完全一致:第一项是“经过转移矩阵传播的旧方差”,第二项是“一步内注入的新噪声方差”。这个“预测方差=旧方差传播+噪声注入”的模式,正是 4-3 节 (4-3-28) 一步预测方差公式的直接原型。

例 4-2-2

设有离散状态方程 \[X_{k+1}=(k+1)X_{k}+\varOmega_{k}\] 动态噪声是零均值白噪声序列,且与 \(X_{0}\) 独立,而 \(D_{\varOmega}(k)=k^{2}\)\(\mu_{x}(0)=1\)\(D_{X}(0)=1\),试求 \(\mu_{X}(k)\)\(D_{X}(k)\)

\(\varPhi_{k+1,k}=k+1\)\(\mu_{\varOmega}(k)=0\)\(\varGamma_{k+1,k}=1\),所以 \[\begin{gathered} \varPhi_{k,0}=\varPhi_{k,k-1}\cdots\varPhi_{2,1}\varPhi_{1,0}=k!\\ \varPhi_{k,i}=\varPhi_{k,k-1}\cdots\varPhi_{i+2,i+1}\varPhi_{i+1,i}=\frac{k!}{i!} \end{gathered}\] 故由 (4-2-22)、(4-2-23) 式可得 \[\mu_{X}(k)=\varPhi_{k,0}\mu_{X}(0)=k!\] 而由 (4-2-25) 式可得 \[\begin{aligned} D_{X}(k)&=\varPhi_{k,0}D_{X}(0)\,\varPhi_{k,0}^{T} +\sum_{i=1}^{k}\varPhi_{k,i}\varGamma_{i,i-1}D_{\varOmega}(i-1)\,\varGamma_{i,i-1}^{T}\varPhi_{k,i}^{T}\\ &=(k!)^{2}+\sum_{i=1}^{k}\left(\frac{k!}{i!}\right)^{2}i^{2} \end{aligned}\]

本节离散线性系统的状态方程 (4-2-6)、观测方程 (4-2-7) 与随机模型 (4-2-11) (4-2-14),是《最优估计基础》第4章 4.2 节“线性离散系统的 Kalman 滤波”的模型前提,该书 4.2 节末“基于最小二乘准则的推导”与本节的广义最小二乘视角同源。特别地,(4-2-20) (4-2-27) 的均值和方差递推,在《最优估计基础》4.2 节中是以“\(\bm{X}_{k+1}=\bm{\varPhi}_{k}\bm{X}_{k}+\bm{G}_{k}\bm{W}_{k}\)”的形式出现的;对照时注意符号对应:本书 \(\bm{\varPhi}_{k+1,k}\) 即该书 \(\bm{\varPhi}_{k}\)\(\bm{\varGamma}_{k+1,k}\)\(\bm{G}_{k}\)。此外,本节的“预测方差=旧方差传播+噪声注入”模式(4-2-27)与第2章 2-1 节协因数传播律 (2-1-10) 是同一统计工具的不同用法:静态平差一次整体传播,动态系统逐拍递推传播。

离散线性系统的卡尔曼滤波

本节讨论由 (4-2-6)、(4-2-7) 式所表示的线性系统的状态估计问题,通常称为离散线性系统的卡尔曼(Kalman)滤波。离散线性系统的状态方程和观测方程为 \[\bm{X}_{k+1}=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k} \tag{4-3-1}\] \[\bm{L}_{k+1}=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{Z}_{k+1}+\bm{\Delta}_{k+1} \tag{4-3-2}\] 式中,\(\bm{Z}_{k+1}=\bm{G}_{k+1}\bm{U}_{k+1}\),其他符号的意义与 4-2 节相同。

所谓离散线性系统的状态估计,就是利用观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\),根据其数学模型求定第 \(t_{j}\) 时刻状态向量 \(\bm{X}_{j}\) 的最佳估值。通常把所得到的估计量记为 \(\hat{\bm{X}}(j/k)\)。它可以分为三种情况:

(1) 当 \(j=k\) 时,称 \(\hat{\bm{X}}(k/k)\)最佳滤波值,并把 \(\hat{\bm{X}}(k/k)\) 的求定过程称为卡尔曼滤波;

(2) 当 \(j>k\) 时,称 \(\hat{\bm{X}}(j/k)\)最佳预测值,而把求定 \(\hat{\bm{X}}(j/k)\) 的过程称为预测或外推;

(3) 当 \(j<k\) 时,称 \(\hat{\bm{X}}(j/k)\)最佳平滑值,而把求定 \(\hat{\bm{X}}(j/k)\) 的过程称为平滑或内插。

设系统 (4-3-1)、(4-3-2) 的随机模型就是 4-2 节中给出的最基本的模型,即有 \[\left.\begin{aligned} E(\bm{\varOmega}_{k})&=\bm{0}\\ E(\bm{\Delta}_{k})&=\bm{0} \end{aligned}\right\} \tag{4-3-3}\] \[\left.\begin{aligned} \operatorname{cov}(\bm{\varOmega}_{k},\bm{\varOmega}_{j})&=\bm{D}_{\varOmega}(k)\,\delta_{kj}\\ \operatorname{cov}(\bm{\Delta}_{k},\bm{\Delta}_{j})&=\bm{D}_{\Delta}(k)\,\delta_{kj}\\ \operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{j})&=\bm{0} \end{aligned}\right\} \tag{4-3-4}\] \[\left.\begin{aligned} E(\bm{X}_{0})&=\bm{\mu}_{X}(0)=\hat{\bm{X}}(0/0)\\ \operatorname{var}(\bm{X}_{0})&=\bm{D}_{X}(0)\\ \operatorname{cov}(\bm{X}_{0},\bm{\varOmega}_{k})&=\bm{0}\\ \operatorname{cov}(\bm{X}_{0},\bm{\Delta}_{k})&=\bm{0} \end{aligned}\right\} \tag{4-3-5}\] 其中动态噪声和观测噪声都是零均值白噪声序列,且它们之间在任何时刻都不相关,因而将对上述模型的卡尔曼滤波,称为完全不相关的白噪声作用下的卡尔曼滤波。

本节仅讨论求 \(\hat{\bm{X}}(k/k)\) 的卡尔曼滤波问题,也就是讨论在已知 \(\bm{X}_{0}\)\(\bm{\varOmega}_{k}\)\(\bm{\Delta}_{k}\) 的前二阶矩的情况下,对系统的状态向量 \(\bm{X}_{k}\) 进行估计求定 \(\hat{\bm{X}}(k/k)\) 的问题。应该说,这种估计问题可以直接应用第 1 章所介绍的估计方法的基本公式来解决。但是,容易发现,直接应用那些公式在计算上有困难。为此,需要导出滤波的递推公式,应用这些递推公式,既可以减少计算工作量,提高计算速度;又不需要储存大量以前的观测数据,从而满足了实用上的要求。

对于离散线性系统的状态估计问题,可以应用第 1 章所述的最小方差估计或极大验后估计原理来导出求估值 \(\hat{\bm{X}}(k/k)\) 的卡尔曼滤波方程,也可以应用广义最小二乘原理来推导。采用这些方法所得到的结果是相同的。本节阐述应用广义最小二乘原理并采用逐次平差方法导出卡尔曼滤波的过程。

卡尔曼滤波方程

当有观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 时,状态方程和观测方程可写为如下形式: \[\left.\begin{aligned} \bm{X}_{1}&=\bm{\varPhi}_{1,0}\bm{X}_{0}+\bm{\varPsi}_{1,0}\bm{U}_{0}+\bm{\varGamma}_{1,0}\bm{\varOmega}_{0}\\ \bm{L}_{1}&=\bm{B}_{1}\bm{X}_{1}+\bm{Z}_{1}+\bm{\Delta}_{1}\\ \bm{X}_{2}&=\bm{\varPhi}_{2,1}\bm{X}_{1}+\bm{\varPsi}_{2,1}\bm{U}_{1}+\bm{\varGamma}_{2,1}\bm{\varOmega}_{1}\\ \bm{L}_{2}&=\bm{B}_{2}\bm{X}_{2}+\bm{Z}_{2}+\bm{\Delta}_{2}\\ &\cdots\\ \bm{X}_{k}&=\bm{\varPhi}_{k,k-1}\bm{X}_{k-1}+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}+\bm{\varGamma}_{k,k-1}\bm{Q}_{k-1}\\ \bm{L}_{k}&=\bm{B}_{k}\bm{X}_{k}+\bm{Z}_{k}+\bm{\Delta}_{k} \end{aligned}\right\} \tag{4-3-6}\] 可以看到,随机模型诸式给出的仅仅是初始状态 \(\bm{X}_{0}\),以及动态噪声 \(\bm{\varOmega}_{k}\) 和观测噪声 \(\bm{\Delta}_{k}\) 的统计性质,而状态 \(\bm{X}_{1},\bm{X}_{2},\cdots\) 的统计性质实际上是未知的。因此,可以说它们都是非随机参数,只有初始状态是随机参数。同时,如果将状态方程 (4-3-1) 中包含动态噪声的项 \(\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\,(k\geq 0)\) 看成是对应于某种观测向量 \(\bm{L}_{s}(k)\) 的观测噪声,则状态方程也可以看成是相应的观测方程,可令 \[\left.\begin{aligned} \bm{\varepsilon}_{k}&=\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{L}_{s}(k)&=-\bm{\varPsi}_{k+1,k}\bm{U}_{k} \end{aligned}\right\} \tag{4-3-7}\] 此时,\(\bm{\varepsilon}_{k}\) 的方差阵为 \[\bm{D}_{\varepsilon}(k)=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\,\bm{\varGamma}_{k+1,k}^{T} \tag{4-3-8}\] 于是,(4-3-1) 式可写为 \[\bm{L}_{s}(k)=\bm{\varPhi}_{k+1,k}\bm{X}_{k}-\bm{X}_{k+1}+\bm{\varepsilon}_{k} \tag{4-3-9}\] 根据广义最小二乘原理,应将随机参数 \(\bm{X}_{0}\) 的先验期望看成是虚拟观测值。则可以由 (4-3-6) 式和 (4-3-9) 式写出误差方程 \[\left.\begin{aligned} \bm{V}_{X}(0)&=\hat{\bm{X}}_{0}-\hat{\bm{X}}(0/0)\\ \bm{V}_{s}(0)&=\bm{\varPhi}_{1,0}\hat{\bm{X}}_{0}-\hat{\bm{X}}_{1}-\bm{L}_{s}(0)\\ \bm{V}_{1}&=\bm{B}_{1}\hat{\bm{X}}_{1}+\bm{Z}_{1}-\bm{L}_{1}\\ \bm{V}_{s}(1)&=\bm{\varPhi}_{2,1}\hat{\bm{X}}_{1}-\hat{\bm{X}}_{2}-\bm{L}_{s}(1)\\ \bm{V}_{2}&=\bm{B}_{2}\hat{\bm{X}}_{2}+\bm{Z}_{2}-\bm{L}_{2}\\ &\cdots\\ \bm{V}_{s}(k-1)&=\bm{\varPhi}_{k,k-1}\hat{\bm{X}}_{k-1}-\hat{\bm{X}}_{k}-\bm{L}_{s}(k-1)\\ \bm{V}_{k}&=\bm{B}_{k}\hat{\bm{X}}_{k}+\bm{Z}_{k}-\bm{L}_{k} \end{aligned}\right\} \tag{4-3-10}\] 这就是说,根据广义最小二乘原理,可以将上述动态系统的状态估计问题变换为一个最小二乘平差问题。此时 (4-3-10) 式中的 \(\hat{\bm{X}}_{0},\hat{\bm{X}}_{1},\cdots,\hat{\bm{X}}_{k}\) 均看做非随机参数,而 \(\hat{\bm{X}}(0/0)\)\(\bm{L}_{s}(0)\)\(\cdots\)\(\bm{L}_{s}(k-1)\)\(\bm{L}_{1}\)\(\cdots\)\(\bm{L}_{k}\) 是方差阵分别为 \(\bm{D}_{X}(0)\)\(\bm{D}_{\varepsilon}(0)\)\(\cdots\)\(\bm{D}_{\varepsilon}(k-1)\)\(\bm{D}_{\Delta}(1)\)\(\cdots\)\(\bm{D}_{\Delta}(k)\) 的观测值,它们之间的协方差阵均为零。

由于 (4-3-10) 式中所包含的观测值很多,将它们放在一起进行整体平差很不方便。为此,可以采用逐次平差法进行计算,或者是按逐次平差法导出一组递推计算的公式来计算,这组公式称为卡尔曼滤波方程,其推导步骤如下:

(1) 取 (4-3-10) 式中的第一、二式进行平差,即利用 \(\hat{\bm{X}}(0/0)\)\(\bm{L}_{s}(0)\) 进行平差,此时,相应的法方程为 \[\left.\begin{aligned} &\left[\bm{D}_{X}^{-1}(0)+\bm{\varPhi}_{1,0}^{T}\bm{D}_{\varepsilon}^{-1}(0)\bm{\varPhi}_{1,0}\right]\hat{\bm{X}}_{s}(0/0) -\bm{\varPhi}_{1,0}^{T}\bm{D}_{\varepsilon}^{-1}(0)\hat{\bm{X}}(1/0)-{}\\ &\qquad\left[\bm{D}_{X}^{-1}(0)\hat{\bm{X}}(0/0)+\bm{\varPhi}_{1,0}^{T}\bm{D}_{\varepsilon}^{-1}(0)\bm{L}_{s}(0)\right]=0\\ &-\bm{D}_{\varepsilon}^{-1}(0)\bm{\varPhi}_{1,0}\hat{\bm{X}}_{s}(0/0) +\bm{D}_{\varepsilon}^{-1}(0)\hat{\bm{X}}(1/0)+\bm{D}_{\varepsilon}^{-1}(0)\bm{L}_{s}(0)=0 \end{aligned}\right\} \tag{4-3-11}\] 式中 \(\hat{\bm{X}}_{s}(0/0)\)\(\hat{\bm{X}}(1/0)\) 表示由 \(\hat{\bm{X}}(0/0)\)\(\bm{L}_{s}(0)\) 平差求得的 \(\bm{X}_{0}\)\(\bm{X}_{1}\) 的估值。将上式的第二式左乘 \(\bm{\varPhi}_{1,0}^{T}\),再与第一式相加,即可得 \[\hat{\bm{X}}_{s}(0/0)=\hat{\bm{X}}(0/0)\] 再将它代入 (4-3-11) 的第二式,又可得 \[\hat{\bm{X}}(1/0)=\bm{\varPhi}_{1,0}\hat{\bm{X}}(0/0)-\bm{L}_{s}(0)\] 或写为 \[\hat{\bm{X}}(1/0)=\bm{\varPhi}_{1,0}\hat{\bm{X}}(0/0)+\bm{\varPsi}_{1,0}\bm{U}_{0} \tag{4-3-12}\] 也就是说,利用 \(\hat{\bm{X}}(0/0)\)\(\bm{L}_{s}(0)\) 进行平差时,所得到的平差值 \(\hat{\bm{X}}_{s}(0/0)\) 就等于初始状态 \(\bm{X}_{0}\) 的先验期望 \(\hat{\bm{X}}(0/0)\);而 \(\hat{\bm{X}}(1/0)\) 等于以 \(\hat{\bm{X}}(0/0)\)\(\bm{\varOmega}_{0}\) 的数学期望 \(E(\bm{\varOmega}_{0})=\bm{0}\) 代入状态方程所得到的结果。实际上,(4-3-10) 式中的第一、二式中包含有 \(2m\) 个参数(\(\bm{X}_{0}\)\(\bm{X}_{1}\)),而观测值 \(\hat{\bm{X}}(0/0)\)\(\bm{L}_{s}(0)\) 中也只有 \(2m\) 个,就是说,它们没有多余观测,自然会得到这样的结果。在求定 \(\hat{\bm{X}}_{s}(0/0)\)\(\hat{\bm{X}}(1/0)\) 时,不需要组成法方程 (4-3-11),只需要由 (4-3-12) 式求得 \(\hat{\bm{X}}(1/0)\),因此,在随机模型中,只要求 \(\bm{D}_{X}(0)\)\(\bm{D}_{\varOmega}(k)\) 是非负定阵。

由 (4-3-12) 式按协方差传播律可得到 \(\hat{\bm{X}}(1/0)\) 的误差方差阵及它与 \(\hat{\bm{X}}(0/0)\) 的协方差阵为 \[\left.\begin{aligned} \bm{D}_{\hat{X}}(1/0)&=\bm{\varPhi}_{1,0}\bm{D}_{X}(0)\bm{\varPhi}_{1,0}^{T} +\bm{\varGamma}_{1,0}\bm{D}_{\varOmega}(0)\bm{\varGamma}_{1,0}^{T}\\ \operatorname{cov}[\hat{\bm{X}}(1/0),\hat{\bm{X}}(0/0)]&=\bm{\varPhi}_{1,0}\bm{D}_{X}(0) \end{aligned}\right\} \tag{4-3-13}\]

(2) 按逐次平差法,以 \(\hat{\bm{X}}(1/0)\) 作为虚拟观测值,与 \(\bm{L}_{1}\) 一起作第二次平差,此时的误差方程为 \[\left.\begin{aligned} \bm{V}_{X}(1/0)&=\hat{\bm{X}}(1/1)-\hat{\bm{X}}(1/0)\\ \overline{\bm{V}}_{1}&=\bm{B}_{1}\hat{\bm{X}}(1/1)+\bm{Z}_{1}-\bm{L}_{1} \end{aligned}\right\} \tag{4-3-14}\] 其法方程为 \[\left[\bm{D}_{X}^{-1}(1/0)+\bm{B}_{1}^{T}\bm{D}_{\Delta}^{-1}(1)\bm{B}_{1}\right]\hat{\bm{X}}(1/1) -\left[\bm{D}_{X}^{-1}(1/0)\hat{\bm{X}}(1/0)+\bm{B}_{1}^{T}\bm{D}_{\Delta}^{-1}(1)\,(\bm{L}_{1}-\bm{Z}_{1})\right]=0 \tag{4-3-15}\] 可解得 \[\hat{\bm{X}}(1/1)=\left[\bm{D}_{X}^{-1}(1/0)+\bm{B}_{1}^{T}\bm{D}_{\Delta}^{-1}(1)\bm{B}_{1}\right]^{-1} \left[\bm{D}_{X}^{-1}(1/0)\hat{\bm{X}}(1/0)+\bm{B}_{1}^{T}\bm{D}_{\Delta}^{-1}(1)\,(\bm{L}_{1}-\bm{Z}_{1})\right] \tag{4-3-16}\] 其方差阵为 \[\bm{D}_{\hat{X}}(1/1)=\left[\bm{D}_{X}^{-1}(1/0)+\bm{B}_{1}^{T}\bm{D}_{\Delta}^{-1}(1)\bm{B}_{1}\right]^{-1} \tag{4-3-17}\] 利用矩阵反演公式可将以上二式变换为 \[\hat{\bm{X}}(1/1)=\hat{\bm{X}}(1/0)+\bm{D}_{\hat{X}}(1/0)\bm{B}_{1}^{T} \left[\bm{B}_{1}\bm{D}_{\hat{X}}(1/0)\bm{B}_{1}^{T}+\bm{D}_{\Delta}(1)\right]^{-1}\cdot \left[\bm{L}_{1}-\bm{Z}_{1}-\bm{B}_{1}\hat{\bm{X}}(1/0)\right] \tag{4-3-18}\] \[\bm{D}_{\hat{X}}(1/1)=\bm{D}_{\hat{X}}(1/0)+\bm{D}_{\hat{X}}(1/0)\bm{B}_{1}^{T} \left[\bm{B}_{1}\bm{D}_{\hat{X}}(1/0)\bm{B}_{1}^{T}+\bm{D}_{\Delta}(1)\right]^{-1}\bm{B}_{1}\bm{D}_{\hat{X}}(1/0) \tag{4-3-19}\]

补“由矩阵反演公式”从 (4-3-16) (4-3-17) 变换到 (4-3-18) (4-3-19) 的一步。所用的是矩阵反演公式(Woodbury 恒等式的等价形式):对对称正定 \(\bm{A}\) 和可逆 \(\bm{C}\),有 \[(\bm{A}^{-1}+\bm{B}^{T}\bm{C}^{-1}\bm{B})^{-1} =\bm{A}-\bm{A}\bm{B}^{T}(\bm{B}\bm{A}\bm{B}^{T}+\bm{C})^{-1}\bm{B}\bm{A}.\]\(\bm{A}=\bm{D}_{\hat{X}}(1/0)\)\(\bm{C}=\bm{D}_{\Delta}(1)\),(4-3-17) 式即 \(\bm{D}_{\hat{X}}(1/1)=\bm{A}-\bm{A}\bm{B}_{1}^{T}(\bm{B}_{1}\bm{A}\bm{B}_{1}^{T}+\bm{D}_{\Delta}(1))^{-1}\bm{B}_{1}\bm{A}\)。注意此式第二项应带负号;本书转录的 (4-3-19) 式中该处写成了“\(+\)”,与 (4-3-27) 第二式 \(\bm{D}_{\hat{X}}(k/k)=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\bm{D}_{\hat{X}}(k/k-1)\) 展开后的负号不一致,疑为原书排印笔误(按 \(\bm{E}-\bm{J}_{k}\bm{B}_{k}\) 展开必为 \(\bm{D}_{\hat{X}}(k/k-1)-\bm{J}_{k}\bm{B}_{k}\bm{D}_{\hat{X}}(k/k-1)\))。对 (4-3-16) 式,将其改写为 \(\hat{\bm{X}}(1/1)=(\bm{A}^{-1}+\bm{B}_{1}^{T}\bm{C}^{-1}\bm{B}_{1})^{-1}[\bm{A}^{-1}\hat{\bm{X}}(1/0)+\bm{B}_{1}^{T}\bm{C}^{-1}(\bm{L}_{1}-\bm{Z}_{1})]\),再把反演公式作用到矩阵乘积上(还可利用 \(\bm{A}\bm{B}^{T}(\bm{B}\bm{A}\bm{B}^{T}+\bm{C})^{-1}=\bm{D}_{\hat{X}}(1/1)\bm{B}_{1}^{T}\bm{C}^{-1}\)),整理后即得 (4-3-18) 式的“预测+增益×新息”形式。对比两式可以看到:反演公式把“矩阵求和的逆”换成“在括号内求逆”,从而把每次观测都要做的 \(n\) 维括号求逆变成与观测维数相关的求逆——这正是递推滤波在计算上可行的关键。(4-3-26) 式的“+”同理。

(3) 再以 \(\hat{\bm{X}}(1/1)\) 作为虚拟观测值,与 \(\bm{L}_{s}(1)\) 一起作第三次平差,此时的误差方程可写为 \[\left.\begin{aligned} \bm{V}_{X}(1/1)&=\hat{\bm{X}}_{s}(1/1)-\hat{\bm{X}}(1/1)\\ \bm{V}_{s}(1)&=\bm{\varPhi}_{2,1}\hat{\bm{X}}_{s}(1/1)-\hat{\bm{X}}(2/1)-\bm{L}_{s}(1) \end{aligned}\right\} \tag{4-3-20}\] 将上式与第一式平差时的误差方程 (4-3-10) 式中的第一、二式比较可知,两式的形式相同,仅相应的序号增加 1,且 (4-3-20) 式中的未知参数 \(\hat{\bm{X}}_{s}(1/1)\)\(\hat{\bm{X}}(2/1)\)\(2m\) 个,观测值 \(\hat{\bm{X}}(1/1)\)\(\bm{L}_{s}(1)\) 也是 \(2m\) 个,因此,可以类似地得到 \[\hat{\bm{X}}_{s}(1/1)=\hat{\bm{X}}(1/1)\] \[\hat{\bm{X}}(2/1)=\bm{\varPhi}_{2,1}\hat{\bm{X}}(1/1)+\bm{\varPsi}_{2,1}\bm{U}_{1} \tag{4-3-21}\]\(\hat{\bm{X}}(2/1)\) 的方差阵及它与 \(\hat{\bm{X}}(1/1)\) 的协方差阵为 \[\left.\begin{aligned} \bm{D}_{\hat{X}}(2/1)&=\bm{\varPhi}_{2,1}\bm{D}_{\hat{X}}(1/1)\bm{\varPhi}_{2,1}^{T} +\bm{\varGamma}_{2,1}\bm{D}_{\varOmega}(1)\bm{\varGamma}_{2,1}^{T}\\ \operatorname{cov}[\hat{\bm{X}}(2/1),\hat{\bm{X}}(1,1)]&=\bm{\varPhi}_{2,1}\bm{D}_{\hat{X}}(1/1) \end{aligned}\right\} \tag{4-3-22}\]

(4) 又以 \(\hat{\bm{X}}(2/1)\) 作为虚拟观测值,与 \(\bm{L}_{2}\) 一起作第四次平差,此时的误差方程可写为 \[\left.\begin{aligned} \bm{V}_{X}(2/1)&=\hat{\bm{X}}(2/2)-\hat{\bm{X}}(2/1)\\ \overline{\bm{V}}_{2}&=\bm{B}_{2}\hat{\bm{X}}(2/2)+\bm{Z}_{2}-\bm{L}_{2} \end{aligned}\right\} \tag{4-3-23}\] 上式与 (4-3-14) 式的形式相同,仅相应的序号增加 1,因此,可类似解得 \[\hat{\bm{X}}(2/2)=\left[\bm{D}_{X}^{-1}(2/1)+\bm{B}_{2}^{T}\bm{D}_{\Delta}^{-1}(2)\bm{B}_{2}\right]^{-1} \left[\bm{D}_{X}^{-1}(2/1)\hat{\bm{X}}(2/1)+\bm{B}_{2}^{T}\bm{D}_{\Delta}^{-1}(2)\,(\bm{L}_{2}-\bm{Z}_{2})\right] \tag{4-3-24}\] 其方差阵为 \[\bm{D}_{\hat{X}}(2/2)=\left[\bm{D}_{X}^{-1}(2/1)+\bm{B}_{2}^{T}\bm{D}_{\Delta}^{-1}(2)\bm{B}_{2}\right]^{-1} \tag{4-3-25}\] 由矩阵反演公式也可得到 \[\resizebox{\textwidth}{!}{$ \left.\begin{aligned} \hat{\bm{X}}(2/2)&=\hat{\bm{X}}(2/1)+\bm{D}_{\hat{X}}(2/1)\bm{B}_{2}^{T} \left[\bm{B}_{2}\bm{D}_{\hat{X}}(2/1)\bm{B}_{2}^{T}+\bm{D}_{\Delta}(2)\right]^{-1} \left[\bm{L}_{2}-\bm{Z}_{2}-\bm{B}_{2}\hat{\bm{X}}(2/1)\right]\\ \bm{D}_{\hat{X}}(2/2)&=\bm{D}_{\hat{X}}(2/1)+\bm{D}_{\hat{X}}(2/1)\bm{B}_{2}^{T} \left[\bm{B}_{2}\bm{D}_{\hat{X}}(2/1)\bm{B}_{2}^{T}+\bm{D}_{\Delta}(2)\right]^{-1}\bm{B}_{2}\bm{D}_{\hat{X}}(2/1) \end{aligned}\right\}$} \tag{4-3-26}\]

(5) 依此类推,就可得到递推计算公式,即卡尔曼滤波方程。由 (4-3-21) 式、(4-3-22) 式和 (4-3-26) 式可得其形式为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)&=\hat{\bm{X}}(k/k-1) +\bm{J}_{k}\left[\bm{L}_{k}-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right]\\ \bm{D}_{\hat{X}}(k/k)&=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\,\bm{D}_{\hat{X}}(k/k-1) \end{aligned}\right\} \tag{4-3-27}\] 式中 \[\left.\begin{aligned} \hat{\bm{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/k-1)+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}\\ \bm{D}_{\hat{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T} +\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T} \end{aligned}\right\} \tag{4-3-28}\] \[\bm{J}_{k}=\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T} \left[\bm{B}_{k}\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}+\bm{D}_{\Delta}(k)\right]^{-1} \tag{4-3-29}\] (4-3-28) 式是利用 \(\hat{\bm{X}}(k-1/k-1)\)\(\bm{X}_{k}\) 的预测值 \(\hat{\bm{X}}(k/k-1)\) 及其方差公式,也就是利用 \(\bm{L}_{1}\)\(\bm{L}_{2}\)\(\cdots\)\(\bm{L}_{k-1}\)\(\bm{X}_{k}\) 的预测值的公式,称此式为一步预测公式;而称 \(\hat{\bm{X}}(k/k-1)\)一步预测值。(4-3-27) 的第一式表示滤波值 \(\hat{\bm{X}}(k/k)\) 等于用 \(\bm{J}_{k}\left[\bm{L}_{k}-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right]\) 修正一步预测值 \(\hat{\bm{X}}(k/k-1)\) 后的结果。因此,通常称 \(\bm{J}_{k}\)滤波增益矩阵

卡尔曼滤波的每一次递推就是“预测—更新”两个半拍:预测拍用状态方程把上一拍的滤波值 \(\hat{\bm{X}}(k-1/k-1)\) 外推到 \(\hat{\bm{X}}(k/k-1)\)(同时方差阵按 (4-3-28) 增大,因为一步内注入了动态噪声的不确定性);更新拍把新观测“吸”进来,用修正项 \(\bm{J}_{k}[\bm{L}_{k}-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)]\) 校正预测值。括号里的量称为新息(innovation),它正是“实际观测与预测观测之差”,携带了预测所不知道的全部新信息。增益 \(\bm{J}_{k}\) 的本质是信噪权衡:若预测方差 \(\bm{D}_{\hat{X}}(k/k-1)\) 大而观测噪声 \(\bm{D}_{\Delta}(k)\) 小,则观测更可信,\(\bm{J}_{k}\) 接近让滤波值“几乎等于观测”;反之 \(\bm{J}_{k}\) 趋近于零,滤波值几乎不理会观测。标量情形 \(J_{k}=D(k/k-1)/(D(k/k-1)+D_{\Delta}(k))\) 最直观:\(D_{\Delta}\) 越大,\(J_{k}\) 越小。

由 (4-3-24)、(4-3-25) 式还可得卡尔曼滤波方程的另一种形式为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)={}&\left[\bm{D}_{X}^{-1}(k/k-1)+\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\right]^{-1} \left[\bm{D}_{X}^{-1}(k/k-1)\hat{\bm{X}}(k/k-1)+{}\right.\\ &\left.\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\,(\bm{L}_{k}-\bm{Z}_{k})\right]\\ \bm{D}_{\hat{X}}(k/k)={}&\left[\bm{D}_{X}^{-1}(k/k-1)+\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\right]^{-1} \end{aligned}\right\} \tag{4-3-30}\] 可以看到,这种滤波递推公式与逐次平差的计算公式的形式相同。

当动态方程和观测方程 (4-3-1)、(4-3-2) 中的非随机控制项为零,即 \(\bm{U}_{k}=\bm{0}\)\(\bm{Z}_{k}=\bm{0}\) 时,卡尔曼滤波方程为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)&=\hat{\bm{X}}(k/k-1)+\bm{J}_{k}\left[\bm{L}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right]\\ \bm{D}_{\hat{X}}(k/k)&=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\,\bm{D}_{\hat{X}}(k/k-1) \end{aligned}\right\} \tag{4-3-31}\] 其中 \[\left.\begin{aligned} \hat{\bm{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/k-1)\\ \bm{D}_{\hat{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T} +\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T}\\ \bm{J}_{k}&=\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T} \left[\bm{B}_{k}\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}+\bm{D}_{\Delta}(k)\right]^{-1} \end{aligned}\right\} \tag{4-3-32}\] 以及 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)={}&\left[\bm{D}_{X}^{-1}(k/k-1)+\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\right]^{-1} \left[\bm{D}_{X}^{-1}(k/k-1)\hat{\bm{X}}(k/k-1)+{}\right.\\ &\left.\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{L}_{k}\right]\\ \bm{D}_{\hat{X}}(k/k)={}&\left[\bm{D}_{X}^{-1}(k/k-1)+\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\right]^{-1} \end{aligned}\right\} \tag{4-3-33}\]

卡尔曼滤波的特点

卡尔曼滤波方程是一组递推计算公式,其计算过程是一个不断地预测、修正的过程。在求解时不需要储存大量的观测数据,并且当得到新的观测数据时,可随时算得新的滤波值,便于实时处理观测成果。

卡尔曼滤波还具有以下特点:

(1) 由卡尔曼滤波方程 (4-3-27)   (4-3-29) 可以看出,对 \(\bm{D}_{X}(0)\)\(\bm{D}_{\Delta}(k)\)\(\bm{D}_{\varOmega}(k-1)\) 同乘一个相同的标量时,增益矩阵 \(\bm{J}_{k}\) 之值不变。因此,在实际计算中可以用相应的协因数阵代替它们。当然,在按 (4-3-30) 式进行计算时,也可以用相应的权阵代替式中的方差阵的逆阵。

(2) 容易看到,增益矩阵 \(\bm{J}_{k}\) 与观测值无关,因此,可以预先算出,从而减少实时处理的计算工作量。

(3) 从滤波方程还可以看到,当 \(\bm{D}_{\Delta}(k)\) 增大时,增益矩阵就变小。这在直观上是容易理解的,因为如果观测噪声增大,则滤波的增益就应取小一些,以减弱观测噪声对滤波值的影响。而当 \(\bm{D}_{X}(0)\)\(\bm{D}_{\varOmega}(k-1)\) 变小时,\(\bm{D}_{\hat{X}}(k/k-1)\) 变小,且 \(\bm{D}_{\hat{X}}(k/k)\)\(\bm{J}_{k}\) 也变小,这在直观上也是显然的,因为 \(\bm{D}_{X}(0)\) 变小,表示初始状态较好,\(\bm{D}_{\varOmega}(k-1)\) 变小,表示系统的干扰变小,故增益矩阵也应小一些,以便给予较小的修正。这就是说,增益矩阵 \(\bm{J}_{k}\)\(\bm{D}_{\Delta}(k)\) 成反比,而与 \(\bm{D}_{\varOmega}(k-1)\) 成正比。

(4) 上述卡尔曼滤波方程是根据广义最小二乘原理导出的,在第 1 章已经证明,按广义最小二乘原理得到的结果具有无偏性和方差最小性。因此,卡尔曼滤波值 \(\hat{\bm{X}}(k/k)\) 是由观测值 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 得到 \(\bm{X}_{k}\) 的最小方差无偏估计,其误差方差阵 \(\bm{D}_{\hat{X}}(k/k)\) 就是所有估计中的最小方差阵。

“最小方差无偏”是模型正确前提下的结论,使用中有三个易错点。第一,初值 \(\hat{\bm{X}}(0/0)=\bm{\mu}_{X}(0)\)\(\bm{D}_{X}(0)\) 要尽量给准:它们是整个递推的出发点,先验偏差会随时间传播(4-9 节会证明:只有系统一致完全能观且能控,初值影响才会在充分长时间后被“遗忘”)。第二,\(\bm{D}_{\varOmega}\)\(\bm{D}_{\Delta}\) 的相对大小直接决定增益:把 \(\bm{D}_{\varOmega}\) 取得过小或 \(\bm{D}_{\Delta}\) 取得过大,都会使增益 \(\bm{J}_{k}\) 偏小、滤波值过分相信预测而轻视观测(数据饱和);反之则过分相信观测、被观测噪声带偏。第三,发散风险:如果实际系统与所用模型不符(如忽略未建模的确定性输入),按 (4-3-27) 算出的 \(\bm{D}_{\hat{X}}(k/k)\) 会不断缩小、看起来“越来越准”,而真实误差却在增大——这就是 4-11 节要专门处理的发散现象。所以例 4-3-2 表 4-1 中 \(D_{\hat{X}}(k/k)\) 单调下降、\(J_{k}\) 递减,是模型完全正确时的理想表现。

例 4-3-1

设状态方程和观测方程为 \[\left.\begin{aligned} X_{k+1}&=0.5X_{k}+\varOmega_{k}\\ L_{k+1}&=X_{k+1}+\varDelta_{k+1} \end{aligned}\right\}\] 式中 \(X\)\(L\)\(\varOmega\)\(\varDelta\) 都是标量,其随机模型是: \[\left.\begin{aligned} &E(\varDelta_{k})=0,\ E(\varOmega_{k})=0,\ E(X_{0})=\hat{X}(0/0)=0\\ &\operatorname{cov}(\varDelta_{k},\varDelta_{j})=0,\ \operatorname{cov}(\varOmega_{k},\varOmega_{j})=0,\ \operatorname{cov}(\varOmega_{k},\varDelta_{j})=0\\ &\operatorname{cov}(X_{0},\varDelta_{k})=0,\ \operatorname{cov}(X_{0},\varOmega_{k})=0\\ &D_{\varDelta}(k)=2,\ D_{\varOmega}(k)=1,\ D_{X}(0)=1 \end{aligned}\right\}\] 又已知两次观测数据 \(L_{1}=4\)\(L_{2}=2\),试求 \(\hat{X}(2/2)\)\(D_{\hat{X}}(2/2)\)

按卡尔曼滤波方程 (4-3-27)、(4-3-28)、(4-3-29) 式计算:

(1) 计算一步预测值 \[\hat{X}(1/0)=\varPhi_{1,0}\hat{X}(0/0)=0\] \[D_{\hat{X}}(1/0)=\varPhi_{1,0}D_{X}(0)\varPhi_{1,0}^{T}+D_{\varOmega}(0)=0.5^{2}+1=1.25\]

(2) 求增益矩阵 \(J_{1}\) \[\begin{aligned} J_{1}&=D_{\hat{X}}(1/0)B_{1}^{T}\left[B_{1}D_{\hat{X}}(1/0)B_{1}^{T}+D_{\varDelta}(1)\right]^{-1}\\ &=1.25\,(1.25+2)^{-1}=\frac{1.25}{3.25}=0.385 \end{aligned}\]

(3) 计算“新息” \(\bar{L}(1/0)\) \[\bar{L}(1/0)=L_{1}-B_{1}\hat{X}(1/0)=4\]

(4) 计算 \(\hat{X}(1/1)\)\(D_{\hat{X}}(1/1)\) \[\hat{X}(1/1)=\hat{X}(1/0)+J_{1}\bar{L}(1/0)=0+0.385\times 4=1.54\] \[D_{\hat{X}}(1/1)=(1-J_{1}B_{1})\,D_{\hat{X}}(1/0)=(1-0.385)\times 1.25=0.77\]

(5) 依 (1)   (4) 的公式计算 \(\hat{X}(2/1)\)\(D_{\hat{X}}(2/1)\)\(J_{2}\)\(\bar{L}(2/1)\)\(\hat{X}(2/2)\)\(D_{\hat{X}}(2/2)\),得 \[\hat{X}(2/1)=\varPhi_{2,1}\hat{X}(1/1)=0.5\times 1.54=0.77\] \[D_{\hat{X}}(2/1)=\varPhi_{2,1}D_{\hat{X}}(1/1)\varPhi_{2,1}^{T}+D_{\varOmega}(1)=0.5^{2}\times 0.77+1=1.19\] \[J_{2}=D_{\hat{X}}(2/1)B_{2}^{T}\left[B_{2}D_{\hat{X}}(2/1)B_{2}^{T}+D_{\varDelta}(2)\right]^{-1} =1.19\times(1.19+2)^{-1}=0.373\] \[\bar{L}(2/1)=L_{2}-B_{2}\hat{X}(2/1)=2-0.77=1.23\] \[\hat{X}(2/2)=\hat{X}(2/1)+J_{2}\bar{L}(2/1)=0.77+0.373\times 1.23=1.23\] \[D_{\hat{X}}(2/2)=(1-J_{2}B_{2})\,D_{\hat{X}}(2/1)=(1-0.373)\times 1.19=0.75\]

例 4-3-2

设有标量系统 \[\begin{gathered} X_{k+1}=X_{k}+\varOmega_{k}\\ L_{k+1}=X_{k+1}+\varDelta_{k+1} \end{gathered}\] \(\varOmega_{k}\)\(\varDelta_{k}\) 均为零均值白噪声序列,且它们完全不相关,并与 \(X_{0}\) 相互独立,已知 \[\begin{gathered} D_{\varOmega}(k)=25,\ D_{\varDelta}(k)=15\\ D_{X}(0)=100,\ E(X_{0})=\hat{X}(0/0)=0 \end{gathered}\] 观测值为 \[L_{1}=10,\ L_{2}=20,\ L_{3}=30,\ L_{4}=40\]\(\hat{X}(k/k)\)\(D_{\hat{X}}(k/k)\)\(k=1,2,3,4\))。

由滤波方程可得 \[\begin{gathered} \hat{X}(k/k)=\hat{X}(k-1/k-1)+J_{k}\left[L_{k}-\hat{X}(k-1/k-1)\right]\\ D_{\hat{X}}(k/k)=(1-J_{k})\,D_{\hat{X}}(k/k-1)\\ J_{k}=D_{\hat{X}}(k/k-1)\left[D_{\hat{X}}(k/k-1)+D_{\varDelta}(k)\right]^{-1}\\ D_{\hat{X}}(k/k-1)=D_{\hat{X}}(k-1/k-1)+D_{\varOmega}(k) \end{gathered}\] 按以上各式计算,其结果列于表 4-1。

本节是全书与《最优估计基础》关联最直接的一节:该书第4章“Kalman 滤波基础”的 4.2 节“线性离散系统的 Kalman 滤波”从最小方差准则与最小二乘准则两个角度导出完全相同的递推公式(该节 4.2.3 的递推公式与本节的 (4-3-27) (4-3-29) 一一对应),4.3 节“算例分析”与本节的例 4-3-1、4-3-2 也几乎平行。若先读该书 4.2 节,再回来看本节会有事半功倍的效果。另外,《最优估计基础》第2章 2.3 节“递推最小二乘估计”是本节的静态特例:当系统无动态变化(\(\bm{\varPhi}_{k+1,k}=\bm{E}\)\(\bm{\varGamma}_{k+1,k}=\bm{0}\)\(\bm{\varOmega}_{k}=\bm{0}\))时,状态退化为常数参数,一步预测公式消失,卡尔曼滤波退化为把观测逐个吸收的递推最小二乘——这正是“递推最小二乘是 Kalman 滤波在静态模型下的退化”的对照理解,也是《最优估计基础》2.3 节4.2 节之间的内在联系。

解算结果
\(k\) \(D_{\hat{X}}(k/k-1)\) \(J_{k}\) \(\hat{X}(k/k)\) \(D_{\hat{X}}(k/k)\)
1 125.0 0.893 8.93 13.4
2 38.4 0.719 16.89 10.8
3 35.8 0.705 26.13 10.56
4 35.6 0.703 35.88 10.56

动态测量系统的卡尔曼滤波

为说明卡尔曼滤波方法在测量中的应用,本节讨论动态测量系统卡尔曼滤波的基本模型,并举例说明实用模型的建立方法。

动态测量系统建模的核心思想是状态向量=位置+速度:以点 \(i\) 为例,状态取 \(\bm{X}_{i}(t)=\left[\bm{\xi}_{i}^{T}(t),\ \bm{\lambda}_{i}^{T}(t)\right]^{T}\),即位置和瞬时速率,而把“加速度”当作无法精确建模的随机干扰 \(\bm{\varOmega}_{i}(t)\)(动态噪声)。这样 (4-4-1) 式 \(\dot{\bm{\xi}}=\bm{\lambda}\)\(\dot{\bm{\lambda}}=\bm{\varOmega}\) 就是最朴素的运动学方程——相当于例 4-1-1 中卫星模型的二维推广(状态 \([X_{1},X_{2}]\) 对应“位置,速度”)。离散化后 (4-4-4) 式 \(\bm{\varPhi}=\begin{bmatrix}\bm{E}&\Delta t_{k}\bm{E}\\\bm{0}&\bm{E}\end{bmatrix}\) 中的 \(\Delta t_{k}\bm{E}\) 项,正是“速度在一个步长里让位置移动多少”的直接体现。

动态测量系统的基本模型

动态测量系统一般是由处于运动之中的一组地面点或空间点所构成。这些点的位置可看做时间 \(t\) 的函数。高程监测网是一维网,点的位置是高程;平面监测网是二维网,点的位置是平面坐标;三维地面网点或卫星的位置可以是空间坐标或大地坐标(大地经纬度和大地高),为了估计动态测量系统的运动状态,通常是以点的位置和它们的运动速率为状态向量。设点 \(i\) 在时刻 \(t\) 的位置向量为 \(\bm{\xi}_{i}(t)\),其瞬时速率为 \(\bm{\lambda}_{i}(t)\),而将瞬时加速率 \(\bm{\varOmega}_{i}(t)\) 看做是一种随机干扰,即视 \(\bm{\varOmega}_{i}(t)\)动态噪声,则有以下微分关系式: \[\left.\begin{aligned} \dot{\bm{\xi}}_{i}(t)&=\bm{\lambda}_{i}(t)\\ \dot{\bm{\lambda}}_{i}(t)&=\bm{\varOmega}_{i}(t) \end{aligned}\right\} \tag{4-4-1}\]\(i\) 点的状态向量为 \(\underset{2d\times 1}{\bm{X}_{i}}(t)\),全网的状态向量为 \(\bm{X}(t)\),即令 \[\underset{2d\times 1}{\bm{X}_{i}}(t)=\begin{bmatrix}\bm{\xi}_{i}(t)\\ \bm{\lambda}_{i}(t)\end{bmatrix},\qquad \bm{X}(t)=\begin{bmatrix}\bm{X}_{1}(t)\\ \bm{X}_{2}(t)\\ \vdots\\ \bm{X}_{q}(t)\end{bmatrix}\] 式中 \(d\) 表示网的维数,\(q\) 为全网的待定点数。类似地记 \[\bm{\varOmega}(t)=\begin{bmatrix}\bm{\varOmega}_{1}(t)&\bm{\varOmega}_{2}(t)&\cdots&\bm{\varOmega}_{q}(t)\end{bmatrix}^{T}\] 则 (4-4-1) 式可写为 \[\dot{\bm{X}}_{i}(t)=\begin{bmatrix}\bm{0}&\bm{E}\\ \bm{0}&\bm{0}\end{bmatrix}\bm{X}_{i}(t) +\begin{bmatrix}\bm{0}\\ \bm{E}\end{bmatrix}\bm{\varOmega}_{i}(t) \tag{4-4-2}\] 全网的状态方程为 \[\dot{\bm{X}}(t)=\begin{bmatrix} \bm{0}&\bm{E}&\bm{0}&\bm{0}&\cdots\\ \bm{0}&\bm{0}&\bm{0}&\bm{0}&\cdots\\ \bm{0}&\bm{0}&\bm{0}&\bm{E}&\cdots\\ \bm{0}&\bm{0}&\bm{0}&\bm{0}&\cdots\\ \vdots&\vdots&\vdots&\vdots& \end{bmatrix}\bm{X}(t) +\begin{bmatrix} \bm{0}&\bm{0}&\cdots\\ \bm{E}&\bm{0}&\cdots\\ \bm{0}&\bm{0}&\cdots\\ \bm{0}&\bm{E}&\cdots\\ \vdots&\vdots& \end{bmatrix}\bm{\varOmega}(t) \tag{4-4-3}\] 式中 \(\bm{0}\)\(d\) 阶零矩阵,\(\bm{E}\)\(d\) 阶单位阵。

状态方程 (4-4-2) 是一个微分方程。为了将其化为离散形式,需要求此微分方程的解。可以看到,当 \(d=1\) 时,(4-4-2) 式与 [例 4-1-1] 中的状态方程相同,因此可以按比例的结果直接写出状态方程的解为 \[\bm{X}_{i}(t)=\begin{bmatrix}\bm{E}&(t-t_{0})\bm{E}\\ \bm{0}&\bm{E}\end{bmatrix}\bm{X}_{i}(t_{0}) +\int_{t_{0}}^{t}\begin{bmatrix}\bm{E}&(t-\tau)\bm{E}\\ \bm{0}&\bm{E}\end{bmatrix} \begin{bmatrix}\bm{0}\\ \bm{E}\end{bmatrix}\bm{\varOmega}_{i}(\tau)\,\mathrm{d}\tau\]\[\bm{X}_{i}(t)=\begin{bmatrix}\bm{E}&(t-t_{0})\bm{E}\\ \bm{0}&\bm{E}\end{bmatrix}\bm{X}_{i}(t_{0}) +\int_{t_{0}}^{t}\begin{bmatrix}(t-\tau)\bm{E}\\ \bm{E}\end{bmatrix}\bm{\varOmega}_{i}(\tau)\,\mathrm{d}\tau\] 由 (4-2-4) 式知 \[\begin{aligned} \bm{\varGamma}_{i+1,k}&=\int_{t_{k}}^{t_{k+1}}\bm{\varPhi}_{i}(t_{k+1},\tau)\,\bm{F}(\tau)\,\mathrm{d}\tau\\ &=\int_{t_{k}}^{t_{k+1}}\begin{bmatrix}(t_{k+1}-\tau)\bm{E}\\ \bm{E}\end{bmatrix}\mathrm{d}\tau =\begin{bmatrix}\dfrac{1}{2}(t_{k+1}-t_{k})^{2}\bm{E}\\[8pt] (t_{k+1}-t_{k})\bm{E}\end{bmatrix} \end{aligned}\] 所以,(4-4-2) 式离散化的状态方程为 \[\bm{X}_{i,k+1}=\begin{bmatrix}\bm{E}&\Delta t_{k}\bm{E}\\ \bm{0}&\bm{E}\end{bmatrix}\bm{X}_{i,k} +\begin{bmatrix}\dfrac{1}{2}\Delta t_{k}^{2}\bm{E}\\[6pt] \Delta t_{k}\bm{E}\end{bmatrix}\bm{\varOmega}_{i,k} \tag{4-4-4}\] 式中 \(\Delta t_{k}=t_{k+1}-t_{k}\)。全网的状态方程为 \[\bm{X}_{k+1}=\begin{bmatrix} \bm{E}&\Delta t_{k}\bm{E}&\bm{0}&\bm{0}&\cdots\\ \bm{0}&\bm{E}&\bm{0}&\bm{0}&\cdots\\ \bm{0}&\bm{0}&\bm{E}&\Delta t_{k}\bm{E}&\cdots\\ \bm{0}&\bm{0}&\bm{0}&\bm{E}&\cdots\\ \vdots&\vdots&\vdots&\vdots& \end{bmatrix}\bm{X}_{k} +\begin{bmatrix} \dfrac{1}{2}\Delta t_{k}^{2}\bm{E}&\bm{0}&\cdots\\[6pt] \Delta t_{k}\bm{E}&\bm{0}&\cdots\\[4pt] \bm{0}&\dfrac{1}{2}\Delta t_{k}^{2}\bm{E}&\cdots\\[6pt] \bm{0}&\Delta t_{k}\bm{E}&\cdots\\ \vdots&\vdots& \end{bmatrix}\bm{\varOmega}_{k} \tag{4-4-5}\]

当运动的加速率呈系统性时,还可将加速率 \(\bm{\varOmega}_{i}(t)\) 视作状态,而将加速率的瞬时变化 \(\bm{\zeta}_{i}(t)\) 看做是随机干扰,记 \(i\) 点的状态向量为 \[\underset{1\times 3d}{\bm{X}_{i}^{T}}(t)=\begin{bmatrix}\underset{1\times d}{\bm{\xi}_{i}^{T}}(t)&\underset{1\times d}{\bm{\lambda}_{i}^{T}}(t)&\underset{1\times d}{\bm{\varOmega}_{i}^{T}}(t)\end{bmatrix}\] 则状态方程为 \[\dot{\bm{X}}_{i}(t)=\begin{bmatrix} \bm{0}&\bm{E}&\bm{0}\\ \bm{0}&\bm{0}&\bm{E}\\ \bm{0}&\bm{0}&\bm{0} \end{bmatrix}\bm{X}_{i}(t) +\begin{bmatrix}\bm{0}\\ \bm{0}\\ \bm{E}\end{bmatrix}\bm{\zeta}_{i}(t) \tag{4-4-6}\] 离散化后的状态方程为 \[\bm{X}_{i,k+1}=\begin{bmatrix} \bm{E}&\Delta t_{k}\bm{E}&\dfrac{1}{2}\Delta t_{k}^{2}\bm{E}\\[6pt] \bm{0}&\bm{E}&\Delta t_{k}\bm{E}\\ \bm{0}&\bm{0}&\bm{E} \end{bmatrix}\bm{X}_{i,k} +\begin{bmatrix} \dfrac{1}{6}\Delta t_{k}^{3}\bm{E}\\[6pt] \dfrac{1}{2}\Delta t_{k}^{2}\bm{E}\\[6pt] \Delta t_{k}\bm{E} \end{bmatrix}\bm{\zeta}_{i}(t) \tag{4-4-7}\] 以上讨论的状态方程是在假定地面上各点的动态变化彼此不相关的情况下得到的。可以说,这是一种基本的函数模型。为不同目的建立的各种动态测量系统,其动态过程都受到不同因素的影响,因此,它们的动态变化有着各自不同的特点,各点的动态变化之间可能存在各种不同的规律和关系。为了更有效地描述它们的动态变化,应该在建立状态方程时考虑这些规律和关系。下面以动态水准监测系统的几种情况为例,简述建立动态测量系统状态方程的具体方法。

动态水准监测系统

(1) 以点的高程及其速率为状态方程

设点 \(i\) 的状态向量为 \(\bm{X}_{i}^{T}(t)=\begin{bmatrix}H_{i}(t)&\lambda_{i}(t)\end{bmatrix}^{T}\),由 (4-4-4) 式可写出离散化后 \(i\) 点在第 \(k+1\) 期的状态方程为 \[\bm{X}_{i,k+1}=\begin{bmatrix}1&\Delta t_{k}\\ 0&1\end{bmatrix}\bm{X}_{i,k} +\begin{bmatrix}\dfrac{1}{2}\Delta t_{k}^{2}\\[6pt] \Delta t_{k}\end{bmatrix}\varOmega_{i,k} \tag{4-4-8}\] 若记全网 \(q\) 个待定点的状态向量和动态噪声向量为 \[\begin{gathered} \underset{1\times 2q}{\bm{X}^{T}}(t)=\begin{bmatrix}H_{1}(t),\cdots,H_{q}(t)&\lambda_{1}(t),&\cdots,&\lambda_{q}(t)\end{bmatrix}\\ \underset{1\times q}{\bm{\varOmega}^{T}}(t)=\begin{bmatrix}\varOmega_{1}(t)&\cdots&\varOmega_{q}(t)\end{bmatrix} \end{gathered}\] 则可由 (4-4-5) 式得到全网在第 \(k+1\) 期的状态方程 \[\underset{2q\times 1}{\bm{X}_{k+1}}=\begin{bmatrix}\bm{E}&\Delta\bm{T}_{k}\\ \bm{0}&\bm{E}\end{bmatrix}\bm{X}_{k} +\begin{bmatrix}\dfrac{1}{2}\Delta\bm{T}_{k}^{2}\\[6pt] \Delta\bm{T}_{k}\end{bmatrix}\bm{\varOmega}_{k} \tag{4-4-9}\] 式中 \(\bm{0}\)\(\bm{E}\)\(\Delta\bm{T}_{k}\) 均为 \(q\) 阶方阵,且 \[\Delta\bm{T}_{k}=\Delta t_{k}\cdot\bm{E}\] 如果认为第 \(k+1\) 期的观测高差都是在 \(t_{k+1}\) 时刻观测的,则 \(h_{ij}\) 的观测方程为 \[h_{ij/k+1}=-H_{i,k+1}+H_{j,k+1}+\varDelta_{ij/k+1} \tag{4-4-10}\] 其形式与经典平差相同。如果各个观测高差的观测时刻 \(t_{ij/k+1}\) 不相同,设第 \(k+1\) 期的中心时刻为 \(t_{k+1}\),则观测方程为 \[h_{ij/k+1}=-H_{i,k+1}+H_{j,k+1}-\Delta t_{ij/k+1}\lambda_{i}+\Delta t_{ij/k+1}\lambda_{j}+\varDelta_{ij/k+1} \tag{4-4-11}\] 式中,\(\Delta t_{ij/k+1}=t_{ij/k+1}-t_{k+1}\)

对比 (4-4-10) 与 (4-4-11) 两式可以发现一个常被忽视的细节:当各观测时刻不同步时,观测方程中要出现速率参数 \(\lambda\) 的改正项 \(\pm\Delta t_{ij/k+1}\lambda\)。直觉上,高差是在时刻 \(t_{ij/k+1}\) 测的,而状态却定义在中心时刻 \(t_{k+1}\),两者相差 \(\Delta t_{ij/k+1}\) 内点位已经移动了 \(\Delta t_{ij/k+1}\cdot\lambda\),所以要把这段“时间错位造成的位移”从观测方程中补偿掉。这也解释了为什么状态向量里必须保留速率 \(\lambda\):它不只是用来预测,还直接参与观测方程。若忽略这一项,等同把“不同时刻的观测当作同一时刻”处理,会引入系统性误差。

(2) 以点的高程和区域速率为状态参数

假定可以将动态水准监测网分为两区(如图 4-1),例如断裂带的两侧,水库坝区的坝上区与坝下区等。此时可以对每个水准点设一个高程参数,每个区仅设一个速率参数。记全网的状态向量和动态噪声向量为 \[\begin{gathered} \bm{X}^{T}(t)=\begin{bmatrix}H_{1}(t)&H_{2}(t)&\cdots&H_{q}(t)&\lambda_{\mathrm{I}}(t)&\lambda_{\mathrm{II}}(t)\end{bmatrix}\\ \bm{\varOmega}^{T}(t)=\begin{bmatrix}\varOmega_{1}(t)&\varOmega_{\mathrm{II}}(t)\end{bmatrix} \end{gathered}\] 则离散化的第 \(k+1\) 期的状态方程为 \[\bm{X}_{k+1}=\begin{bmatrix} \underset{q\times q}{\bm{E}}&\underset{q\times 2}{\Delta\bm{T}_{k}}\\ \underset{2\times q}{\bm{0}}&\underset{2\times 2}{\bm{E}} \end{bmatrix}\bm{X}_{k} +\begin{bmatrix} \underset{q\times 2}{\Delta\bm{T}_{k}^{\prime}}\\ \Delta t\cdot\underset{2\times 2}{\bm{E}} \end{bmatrix}\bm{\varOmega}_{k} \tag{4-4-12}\]

分区水准网

式中 \[\begin{gathered} \Delta\bm{T}_{k}=\Delta t_{k}\begin{bmatrix}\bm{e}_{\mathrm{I}}&\bm{e}_{\mathrm{II}}\end{bmatrix}\\ \Delta\bm{T}_{k}^{\prime}=\frac{1}{2}\Delta t_{k}^{2}\begin{bmatrix}\bm{e}_{\mathrm{I}}&\bm{e}_{\mathrm{II}}\end{bmatrix}\\ \bm{e}_{\mathrm{I}}^{T}=\begin{bmatrix}\underbrace{1\quad\cdots}_{q_{1}\text{ 个}}1&\underbrace{0\quad\cdots}_{q_{2}\text{ 个}}0\end{bmatrix}\\ \bm{e}_{\mathrm{II}}^{T}=\begin{bmatrix}\underbrace{0\quad\cdots}_{q_{1}\text{ 个}}0&\underbrace{1\quad\cdots}_{q_{2}\text{ 个}}1\end{bmatrix} \end{gathered}\] \(q_{1}\)\(q_{2}\) 分别为 \(\mathrm{I}\)\(\mathrm{II}\) 两个区中的点数,\(q=q_{1}+q_{2}\)

当第 \(k+1\) 期两区的观测高差可认为是在同一时刻(时间段)\(t_{k+1}\) 观测的,其观测方程仍然是 (4-4-10) 式。当各个观测高差的观测时刻 \(t_{ij/k+1}\) 不相同时,对于同一区内两点间的观测高差的观测方程也与 (4-4-10) 式相同;而当 \(i\) 点在 \(\mathrm{I}\) 区,\(j\) 点在 \(\mathrm{II}\) 区时,其观测方程为 \[h_{ij/i+1}=-H_{i,k+1}+H_{j,k+1}-\Delta t_{ij/k+1}\lambda_{\mathrm{I}}+\Delta t_{ij/k+1}\lambda_{\mathrm{II}}+\varDelta_{ij/k+1} \tag{4-4-13}\]

(3) 以点的高程和呈线性关系的高程速率为状态参数

设某动态水准监测网如图 4-2。假定其重心点的高程速率参数为 \(\lambda_{1}\),而其它各点的高程变化则与该点到重心点的距离 \(S_{i}\) 呈线性关系。大型矿区和地震危险区就可能是这类情况,此时,对于 \(i\) 点有 \[\dot{H}_{i}(t)=\lambda_{i}(t)=\lambda_{1}(t)+S_{i}\lambda_{2}(t) \tag{4-4-14}\] 若设全网的状态向量和动态噪声向量为 \[\begin{gathered} \bm{X}^{T}(t)=\begin{bmatrix}H_{1}(t)&\cdots&H_{q}(t)&\lambda_{1}(t)&\lambda_{2}(t)\end{bmatrix}\\ \bm{\varOmega}^{T}(t)=\begin{bmatrix}\varOmega_{1}(t)&\varOmega_{2}(t)\end{bmatrix} \end{gathered}\] 则有状态方程 \[\underset{(q+2)\times 1}{\dot{\bm{X}}}(t)=\begin{bmatrix} \underset{q\times q}{\bm{0}}&\underset{q\times 2}{\bm{S}}\\ \underset{2\times q}{\bm{0}}&\underset{2\times 2}{\bm{0}} \end{bmatrix}\bm{X}(t) +\begin{bmatrix} \underset{q\times 2}{\bm{0}}\\ \underset{2\times 2}{\bm{E}} \end{bmatrix}\bm{\varOmega}(t) \tag{4-4-15}\]

重心速率线性相关的水准网

式中 \[\bm{S}=\begin{bmatrix} 1&1&\cdots&1\\ S_{1}&S_{2}&\cdots&S_{q} \end{bmatrix}^{T}\] 离散化后的第 \(k+1\) 期的状态方程为 \[\bm{X}_{k+1}=\begin{bmatrix}\bm{E}&\Delta\bm{T}_{k_{1}}\\ \bm{0}&\bm{E}\end{bmatrix}\bm{X}_{k} +\begin{bmatrix}\Delta\bm{T}_{kj}^{\prime}\\ \Delta\bm{T}_{k}\end{bmatrix}\bm{\varOmega}_{k} \tag{4-4-16}\] 式中 \[\begin{gathered} \Delta\bm{T}_{k_{1}}=\Delta t_{k}\bm{S}\\ \Delta\bm{T}_{k}=\Delta t_{k}\cdot\bm{E}\\ \Delta\bm{T}_{k_{1}}^{\prime}=\frac{1}{2}\Delta t_{k}^{2}\bm{S} \end{gathered}\]\(h_{ij}\) 的观测时刻 \(t_{ij/k+1}\) 不等于第 \(k+1\) 期的中心时刻 \(t_{k+1}\) 时,其观测方程为 \[h_{ij/k+1}=-H_{ij/k+1}+H_{j/k+1}+\Delta t_{ij/k+1}(-S_{i}+S_{j})\,\lambda_{2}+\varDelta_{ij/k+1} \tag{4-4-17}\]

本节是卡尔曼滤波在测绘中的“建模实战”:《最优估计基础》第4章 4.3 节“算例分析”展示数值计算,而本节展示如何把实际动态测量系统写成 (4-3-1)、(4-3-2) 的标准状态空间形式。对比读书时注意两点:第一,本节的“位置+速度(速率)”“加速度作动态噪声”的选法,就是《最优估计基础》4.2 节 Kalman 滤波中状态向量设计的基本套路(该书 4.2.4 的直观解释与递推流程也以此为例);第二,观测方程 (4-4-10) (4-4-17) 的线性形式与第2章 2-1 节经典间接平差的观测方程同构——区别只在于这里的高程参数每期在变化,因此必须配上状态方程。想体会“静态平差与动态滤波的衔接”,可以把本节与《最优估计基础》2.3 节“递推最小二乘估计”对照:当 \(\bm{\varPhi}=\bm{E}\)\(\bm{\varGamma}=\bm{0}\) 时,本节动态模型就退化为经典水准网平差。

离散型卡尔曼滤波的推广

在上面讨论的滤波问题中,假定动态噪声和观测噪声是完全不相关的白噪声序列,在这种情况下导出的卡尔曼滤波方程可以说是卡尔曼滤波的基本方程,本节进一步考虑白噪声作用下的一般线性系统,及有色噪声(或称为相关噪声)的情况,所谓有色噪声,指的是噪声序列中每一时刻的噪声与另一时刻的噪声相关。这里所考虑的是有色噪声序列的一种特殊情况,即只考虑一种由白噪声驱动的线性系统所产生的相关噪声,这对于应用来说已足够了。例如,地面雷达站对运动目标进行跟踪观测时,其观测噪声可以认为是这种有色噪声;惯性导航系统的主要动态噪声——陀螺漂移,也可认为是这种有色噪声。

“有色噪声”这个名字可以从光谱类比理解:白噪声各频率分量等强度(纯白),而相关的噪声在不同时刻有关联,其功率谱不再平坦,就好比“染了色”。处理有色噪声的总体思路是“白化”或“降维转化”——本节用了两种典型手段:一是对噪声做线性变换,选出组合系数 \(\bm{C}_{k}\) 构造新的“白化”噪声 \(\bm{\varepsilon}_{k}^{*}\)\(\bm{\Delta}_{k}^{*}\),使它们零均值、不相关,从而把一般系统 (4-5-1) 化回 4-3 节的基本形式;二是当动态噪声本身由白噪声驱动((4-5-14) 式)时,把 \(\bm{\varOmega}_{k}\) 扩进状态向量,构造增广状态 \(\bm{X}_{k}^{*}=[\bm{X}_{k}^{T},\bm{\varOmega}_{k}^{T}]^{T}\),使增广系统重新满足基本随机模型。前者是“变换”,后者是“扩维”,殊途同归。

白噪声作用下一般线性系统的滤波

白噪声作用下一般线性系统的状态方程和观测方程仍然是 (4-3-1)、(4-3-2) 式,即 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{Z}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-5-1}\] 所不同的仅仅是在随机模型中假定 \[\left.\begin{aligned} E(\bm{\varOmega}_{k})&=\bm{\mu}_{\varOmega}(k)\neq\bm{0}\\ E(\bm{\Delta}_{k})&=\bm{\mu}_{\Delta}(k)\neq\bm{0}\\ \operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{j})&=\bm{D}_{\varOmega\Delta}(k)\,\delta_{kj} \end{aligned}\right\} \tag{4-5-2}\] 即假定动态噪声和观测噪声的均值不为零,且它们在同一时刻相关,其余的性质均与 4-3 节相同。

为了导出白噪声作用下一般线性系统的卡尔曼滤波方程,我们先将 \(\bm{\Delta}_{k}\)\(\bm{\varOmega}_{k}\) 进行变换,以便得到另一组均值为零且完全不相关的观测噪声和动态噪声序列,假定它们是 \[\left.\begin{aligned} \bm{\Delta}_{k}^{*}&=\bm{\Delta}_{k}-\bm{\mu}_{\Delta}(k)\\ \bm{\varepsilon}_{k}^{*}&=\bm{\varGamma}_{k+1,k}\left[\bm{\varOmega}_{k}-\bm{\mu}_{\varOmega}(k)\right]-\bm{C}_{k}\left[\bm{\Delta}_{k}-\bm{\mu}_{\Delta}(k)\right] \end{aligned}\right\} \tag{4-5-3}\] 式中 \(\bm{C}_{k}\) 为待定系数阵。不难看到,此时有 \[\left.\begin{aligned} E(\bm{\Delta}_{k}^{*})&=\bm{0}\\ E(\bm{\varepsilon}_{k}^{*})&=\bm{0} \end{aligned}\right\} \tag{4-5-4}\] 而欲使 \(\bm{\varepsilon}_{k}^{*}\)\(\bm{\Delta}_{k}^{*}\) 完全不相关,就应使 \[\operatorname{cov}(\bm{\varepsilon}_{k}^{*},\bm{\Delta}_{k}^{*}) =\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega\Delta}(k)-\bm{C}_{k}\bm{D}_{\Delta}(k)=\bm{0}\] 故得 \[\bm{C}_{k}=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega\Delta}(k)\,\bm{D}_{\Delta}^{-1}(k) \tag{4-5-5}\] 此时,由 (4-5-5) 式按协方差传播律还可得 \[\left.\begin{aligned} \bm{D}_{\Delta}^{*}(k)&=\bm{D}_{\Delta}(k)\\ \bm{D}_{\varepsilon}^{*}(k)&=\begin{bmatrix}\bm{\varGamma}_{k+1,k}&-\bm{C}_{k}\end{bmatrix} \begin{bmatrix}\bm{D}_{\varOmega}(k)&\bm{D}_{\varOmega\Delta}(k)\\ \bm{D}_{\Delta\varOmega}(k)&\bm{D}_{\Delta}(k)\end{bmatrix} \begin{bmatrix}\bm{\varGamma}_{k+1,k}^{T}\\ -\bm{C}_{k}^{T}\end{bmatrix}\\ &=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\,\bm{\varGamma}_{k+1,k}^{T}-\bm{C}_{k}\bm{D}_{\Delta}(k)\,\bm{C}_{k}^{T} \end{aligned}\right\} \tag{4-5-6}\]

补 (4-5-6) 式第二行的推导。把 \(\bm{\varepsilon}_{k}^{*}=\bm{\varGamma}_{k+1,k}(\bm{\varOmega}_{k}-\bm{\mu}_{\varOmega})-\bm{C}_{k}(\bm{\Delta}_{k}-\bm{\mu}_{\Delta})\) 写成分块乘积 \(\begin{bmatrix}\bm{\varGamma}_{k+1,k}&-\bm{C}_{k}\end{bmatrix}\begin{bmatrix}\bm{\varOmega}_{k}-\bm{\mu}_{\varOmega}\\\bm{\Delta}_{k}-\bm{\mu}_{\Delta}\end{bmatrix}\),则其方差阵正是“系数阵 \(\times\) 联合方差阵 \(\times\) 系数阵转置”: \[\begin{aligned} \bm{D}_{\varepsilon}^{*}(k)&=\begin{bmatrix}\bm{\varGamma}_{k+1,k}&-\bm{C}_{k}\end{bmatrix} \begin{bmatrix}\bm{D}_{\varOmega}(k)&\bm{D}_{\varOmega\Delta}(k)\\ \bm{D}_{\Delta\varOmega}(k)&\bm{D}_{\Delta}(k)\end{bmatrix} \begin{bmatrix}\bm{\varGamma}_{k+1,k}^{T}\\ -\bm{C}_{k}^{T}\end{bmatrix}\\ &=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\bm{\varGamma}_{k+1,k}^{T} -\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega\Delta}(k)\bm{C}_{k}^{T} -\bm{C}_{k}\bm{D}_{\Delta\varOmega}(k)\bm{\varGamma}_{k+1,k}^{T} +\bm{C}_{k}\bm{D}_{\Delta}(k)\bm{C}_{k}^{T}. \end{aligned}\] 中间两项正是 \(\bm{C}_{k}\bm{D}_{\Delta}(k)\bm{C}_{k}^{T}\) 的相反数——由 (4-5-5) 式 \(\bm{C}_{k}\bm{D}_{\Delta}(k)=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega\Delta}(k)\)(利用 \(\bm{D}_{\varOmega\Delta}(k)=\bm{D}_{\Delta\varOmega}^{T}(k)\) 及转置)可知交叉项 \(-\bm{\varGamma}\bm{D}_{\varOmega\Delta}\bm{C}_{k}^{T}-\bm{C}_{k}\bm{D}_{\Delta\varOmega}\bm{\varGamma}^{T}=-2\bm{C}_{k}\bm{D}_{\Delta}(k)\bm{C}_{k}^{T}\),与 \(+\bm{C}_{k}\bm{D}_{\Delta}(k)\bm{C}_{k}^{T}\) 相消后得 \(\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}-\bm{C}_{k}\bm{D}_{\Delta}(k)\bm{C}_{k}^{T}\),即 (4-5-6) 末式。这也解释了为什么 \(\bm{D}_{\varepsilon}^{*}(k)\) 会比“白噪声情形”的 \(\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}\) 小一项——相关噪声被“白化”时部分能量转移走了。

顾及观测方程,由 (4-5-3) 式可写出 \[\left.\begin{aligned} \bm{\Delta}_{k}&=\bm{\Delta}_{k}^{*}+\bm{\mu}_{\Delta}(k)\\ \bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}&=\bm{\varepsilon}_{k}^{*}+\bm{\varGamma}_{k+1,k}\bm{\mu}_{\varOmega}(k) +\bm{C}_{k}\left[\bm{L}_{k}-\bm{B}_{k}\bm{X}_{k}-\bm{Z}_{k}-\bm{\mu}_{\Delta}(k)\right] \end{aligned}\right\} \tag{4-5-7}\] 再将上式代入 (4-5-1) 式,即可得到变换后的状态方程和观测方程 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}^{*}\bm{X}_{k}+\bm{U}_{k}^{*}+\bm{\varepsilon}_{k}^{*}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{Z}_{k+1}^{*}+\bm{\Delta}_{k+1}^{*} \end{aligned}\right\} \tag{4-5-8}\] 式中 \[\left.\begin{aligned} \bm{\varPhi}_{k+1,k}^{*}&=\bm{\varPhi}_{k+1,k}-\bm{C}_{k}\bm{B}_{k}\\ \bm{U}_{k}^{*}&=\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\mu}_{\varOmega}(k) +\bm{C}_{k}\left[\bm{L}_{k}-\bm{\mu}_{\Delta}(k)-\bm{Z}_{k}\right]\\ \bm{Z}_{k}^{*}&=\bm{Z}_{k}+\bm{\mu}_{\Delta}(k) \end{aligned}\right\} \tag{4-5-9}\] 可以看到,(4-5-8) 式中的动态噪声 \(\bm{\varepsilon}_{k}^{*}\) 与观测噪声 \(\bm{\Delta}_{k}^{*}\,(k\geq 0)\) 是完全不相关的零均值白噪声序列,因此,按 4-3 节的卡尔曼滤波方程,可以得到白噪声作用下一般线性系统的卡尔曼滤波方程为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)&=\hat{\bm{X}}(k/k-1) +\bm{J}_{k}\left[\bm{L}_{k}-\bm{\mu}_{\Delta}(k)-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right]\\ \bm{D}_{\hat{X}}(k/k)&=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\,\bm{D}_{\hat{X}}(k/k-1) \end{aligned}\right\} \tag{4-5-10}\] 而一步预测公式和增益矩阵公式为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}^{*}\hat{\bm{X}}(k-1/k-1)+\bm{U}_{k-1}^{*}\\ \bm{D}_{\hat{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}^{*}\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{*T}+\bm{D}_{\varepsilon}^{*}(k-1)\\ \bm{J}_{k}&=\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T} \left[\bm{B}_{k}\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}+\bm{D}_{\Delta}(k)\right]^{-1} \end{aligned}\right\} \tag{4-5-11}\] 式中 \[\left.\begin{aligned} \bm{\varPhi}_{k,k-1}^{*}&=\bm{\varPhi}_{k,k-1}-\bm{C}_{k-1}\bm{B}_{k-1}\\ \bm{U}_{k-1}^{*}&=\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}+\bm{\varGamma}_{k,k-1}\bm{\mu}_{\varOmega}(k-1) +\bm{C}_{k-1}\left[\bm{L}_{k-1}-\bm{\mu}_{\Delta}(k-1)-\bm{Z}_{k-1}\right]\\ \bm{D}_{\varepsilon}^{*}(k-1)&=\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T} -\bm{C}_{k-1}\bm{D}_{\Delta}(k-1)\bm{C}_{k-1}^{T}\\ \bm{C}_{k-1}&=\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega\Delta}(k-1)\,\bm{D}_{\Delta}^{-1}(k-1) \end{aligned}\right\} \tag{4-5-12}\] 也可写出 (4-5-10) 式的另一种形式为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)={}&\left[\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}+\bm{D}_{X}^{-1}(k/k-1)\right]^{-1} \{\bm{D}_{X}^{-1}(k/k-1)\hat{\bm{X}}(k/k-1)+{}\\ &\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\left[\bm{L}_{k}-\bm{\mu}_{\Delta}(k)-\bm{Z}_{k}\right]\}\\ \bm{D}_{\hat{X}}(k/k)={}&\left[\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}+\bm{D}_{X}^{-1}(k/k-1)\right]^{-1} \end{aligned}\right\} \tag{4-5-13}\] 显然,在上面的滤波方程中,当 \(\bm{\mu}_{\varOmega}(k)\)\(\bm{\mu}_{\Delta}(k)\)\(\bm{D}_{\varOmega\Delta}(k)\) 为零时,它们就变成了 4-3 节中的卡尔曼滤波方程。

动态噪声是白噪声所驱动的有色噪声的情形

对于动态噪声 \(\bm{\varOmega}_{k}\) 是白噪声所驱动的有色噪声的情形,可以采用扩大状态向量维数的方法来处理。设线性系统的状态方程和观测方程仍是 (4-5-1) 式,但其中的动态噪声 \(\bm{\varOmega}_{k}\) 是由白噪声序列 \(\bm{\eta}_{k}\,(k\geq 0)\) 所驱动的有色噪声,即 \[\bm{\varOmega}_{k}=\bm{F}_{k,k-1}\bm{\varOmega}_{k-1}+\bm{\eta}_{k-1} \tag{4-5-14}\] 且有 \[\left.\begin{aligned} &E(\bm{\eta}_{k})=\bm{0},\ \operatorname{var}(\bm{\eta}_{k})=\bm{D}_{\eta}(k)\\ &E(\bm{\varOmega}_{0})=\bm{0},\ \operatorname{var}(\bm{\varOmega}_{0})=\bm{D}_{\varOmega}(0)\\ &\operatorname{cov}(\bm{\varOmega}_{0},\bm{\eta}_{k})=\bm{0}\\ &\operatorname{cov}(\bm{X}_{0},\bm{\eta}_{k})=\bm{0},\ \operatorname{cov}(\bm{X}_{0},\bm{\varOmega}_{0})=\bm{0} \end{aligned}\right\} \tag{4-5-15}\] 其他性质与 4-3 节相同。

现将 \(\bm{\varOmega}_{k}\) 看成状态向量的一部分,即采用增广状态向量的方法,将 (4-5-1) 式写为 \[\left.\begin{aligned} \begin{bmatrix}\bm{X}_{k+1}\\ \bm{\varOmega}_{k+1}\end{bmatrix} &=\begin{bmatrix}\bm{\varPhi}_{k+1,k}&\bm{\varGamma}_{k+1,k}\\ \bm{0}&\bm{F}_{k+1,k}\end{bmatrix} \begin{bmatrix}\bm{X}_{k}\\ \bm{\varOmega}_{k}\end{bmatrix} +\begin{bmatrix}\bm{\varPsi}_{k+1,k}\\ \bm{0}\end{bmatrix}\bm{U}_{k} +\begin{bmatrix}\bm{0}\\ \bm{E}\end{bmatrix}\bm{\eta}_{k}\\ \bm{L}_{k+1}&=\begin{bmatrix}\bm{B}_{k+1}&\bm{0}\end{bmatrix} \begin{bmatrix}\bm{X}_{k+1}\\ \bm{\varOmega}_{k+1}\end{bmatrix} +\bm{Z}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-5-16}\] 若记 \[\left.\begin{aligned} \bm{X}_{k}^{*}&=\begin{bmatrix}\bm{X}_{k}\\ \bm{\varOmega}_{k}\end{bmatrix},\quad \bm{\varPhi}_{k+1,k}^{*}=\begin{bmatrix}\bm{\varPhi}_{k+1,k}&\bm{\varGamma}_{k+1,k}\\ \bm{0}&\bm{F}_{k+1,k}\end{bmatrix}\\ \bm{\varPsi}_{k+1,k}^{*}&=\begin{bmatrix}\bm{\varPsi}_{k+1,k}\\ \bm{0}\end{bmatrix},\quad \bm{G}_{k}=\begin{bmatrix}\bm{0}\\ \bm{E}\end{bmatrix},\quad \bm{B}_{k}^{*}=\begin{bmatrix}\bm{B}_{k}&\bm{0}\end{bmatrix} \end{aligned}\right\} \tag{4-5-17}\] 则得到一组新的动态方程和观测方程 \[\left.\begin{aligned} \bm{X}_{k+1}^{*}&=\bm{\varPhi}_{k+1,k}^{*}\bm{X}_{k}^{*}+\bm{\varPsi}_{k+1,k}^{*}\bm{U}_{k}+\bm{G}_{k}\bm{\eta}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}^{*}\bm{X}_{k+1}^{*}+\bm{Z}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-5-18}\] 此时,初始状态 \(\bm{X}_{0}^{*}\) 的方差阵即为 \[\operatorname{var}(\bm{X}_{0}^{*})=\begin{bmatrix}\bm{D}_{X}(0)&\bm{0}\\ \bm{0}&\bm{D}_{\varOmega}(0)\end{bmatrix}\] (4-5-18) 式的随机模型的形式与系统 (4-3-1) 是一致的,故可按 4-3 节中的卡尔曼滤波方程进行递推计算。由此可见,用扩大状态向量维数的方法,可以将这种有色噪声化为白噪声的情形。

观测噪声是白噪声所驱动的有色噪声的情形

设系统 (4-5-1) 的动态噪声 \(\bm{\varOmega}_{k}\) 是白噪声序列,但观测噪声 \(\bm{\Delta}_{k}\) 是白噪声 \(\bm{\xi}_{k}\) 所驱动的有色噪声序列,即 \[\bm{\Delta}_{k+1}=\bm{H}_{k+1,k}\bm{\Delta}_{k}+\bm{\xi}_{k} \tag{4-5-19}\] 其中 \(\bm{\xi}_{k}\) 是零均值白噪声序列,且有 \[\left.\begin{aligned} &\operatorname{var}(\bm{\xi}_{k})=\bm{D}_{\xi}(k),\ \operatorname{var}(\bm{\Delta}_{0})=\bm{D}_{\Delta}(0)\\ &\operatorname{cov}(\bm{\xi}_{k},\bm{\Delta}_{0})=\bm{0},\ \operatorname{cov}(\bm{\xi}_{k},\bm{\varOmega}_{j})=\bm{0}\\ &\operatorname{cov}(\bm{X}_{0},\bm{\xi}_{k})=\bm{0},\ \operatorname{cov}(\bm{X}_{0},\bm{\Delta}_{0})=\bm{0} \end{aligned}\right\} \tag{4-5-20}\] 其他性质均与 4-3 节相同。

对于这种情况,当然也可以按对有色动态噪声的处理方法,将观测噪声 \(\bm{\Delta}_{k}\) 当作状态向量的一部分,用扩大状态向量维数的方法处理。但这种方法的缺点是计算工作量增加,且求增益矩阵所要计算的逆阵不一定存在,因此,这种方法不太理想。

下面介绍另一种方法。这种方法的特点是,先将观测向量、观测噪声和观测方程作适当的变换,使原来的有色噪声下的线性系统变为白噪声作用下的一般线性系统,然后再利用滤波方程来导出色观测噪声下的线性系统的滤波方程。

首先令 \[\bm{L}_{k}^{*}=\bm{L}_{k+1}-\bm{H}_{k+1,k}\bm{L}_{k} \tag{4-5-21}\] 将 (4-5-1) 中的观测方程代入上式得 \[\bm{L}_{k}^{*}=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{Z}_{k+1}+\bm{\Delta}_{k+1} -\bm{H}_{k+1,k}(\bm{B}_{k}\bm{X}_{k}+\bm{Z}_{k}+\bm{\Delta}_{k})\] 再将 (4-5-19) 式代入,并顾及 (4-5-1) 式中的状态方程,有 \[\begin{aligned} \bm{L}_{k}^{*}={}&\bm{B}_{k+1}(\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}) +\bm{Z}_{k+1}+{}\\ &\bm{H}_{k+1,k}\bm{\Delta}_{k}+\bm{\xi}_{k} -\bm{H}_{k+1,k}(\bm{B}_{k}\bm{X}_{k}+\bm{Z}_{k})-\bm{H}_{k+1,k}\bm{\Delta}_{k} \end{aligned}\] 再记 \[\left.\begin{aligned} \bm{B}_{k}^{*}&=\bm{B}_{k+1}\bm{\varPhi}_{k+1,k}-\bm{H}_{k+1,k}\bm{B}_{k}\\ \bm{Z}_{k}^{*}&=\bm{B}_{k+1}\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{Z}_{k+1}-\bm{H}_{k+1,k}\bm{Z}_{k}\\ \bm{\Delta}_{k}^{*}&=\bm{B}_{k+1}\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}+\bm{\xi}_{k} \end{aligned}\right\} \tag{4-5-22}\] 则得到一个新的线性系统 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{L}_{k+1}^{*}&=\bm{B}_{k+1}^{*}\bm{X}_{k+1}+\bm{Z}_{k+1}^{*}+\bm{\Delta}_{k+1}^{*} \end{aligned}\right\} \tag{4-5-23}\] 在这个系统中,由于 \(\bm{\varOmega}_{k}\)\(\bm{\xi}_{k}\) 都是白噪声序列,所以,新的观测噪声 \(\bm{\Delta}_{k}^{*}\) 也是零均值白噪声序列,但此时 \(\bm{\Delta}_{k}^{*}\)\(\bm{\varOmega}_{k}\) 在同一时刻是相关的。由协方差传播律可得 \(\bm{\Delta}_{k}^{*}\) 的方差及 \(\bm{\varOmega}_{k}\)\(\bm{\Delta}_{k}^{*}\) 的协方差为 \[\left.\begin{aligned} \operatorname{var}(\bm{\Delta}_{k}^{*})=\bm{D}_{\Delta}^{*}(k) &=\bm{B}_{k+1}\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\bm{\varGamma}_{k+1,k}^{T}\bm{B}_{k+1}^{T}+\bm{D}_{\xi}(k)\\ \operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{k}^{*})=\bm{D}_{\varOmega\Delta}^{*}(k) &=(\bm{B}_{k+1}\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k))^{T} \end{aligned}\right\} \tag{4-5-24}\] 也就是说,系统 (4-5-23) 是一个白噪声作用下一般线性系统。

根据白噪声作用下的一般线性系统的滤波方程,就可以写出观测噪声白噪声驱动的有色噪声情形下的卡尔曼滤波方程为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k)&=\hat{\bm{X}}(k/k-1) +\bm{J}_{k}\left[\bm{L}_{k}^{*}-\bm{Z}_{k}-\bm{B}_{k}^{*}\hat{\bm{X}}(k/k-1)\right]\\ \bm{D}_{\hat{X}}(k/k)&=(\bm{E}-\bm{J}_{k}\bm{B}_{k}^{*})\,\bm{D}_{\hat{X}}(k/k-1) \end{aligned}\right\} \tag{4-5-25}\] 一步预测公式和增益矩阵为 \[\left.\begin{aligned} \hat{\bm{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}^{*}\hat{\bm{X}}(k-1/k-1)+\bm{U}_{k-1}^{*}\\ \bm{D}_{\hat{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}^{*}\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{*T}+\bm{D}_{\varepsilon}^{*}(k-1)\\ \bm{J}_{k}&=\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{*T} \left[\bm{B}_{k}^{*}\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{*T}+\bm{D}_{\Delta}^{*}(k)\right]^{-1} \end{aligned}\right\} \tag{4-5-26}\] 式中 \[\left.\begin{aligned} \bm{\varPhi}_{k,k-1}^{*}&=\bm{\varPhi}_{k,k-1}-\bm{C}_{k-1}\bm{B}_{k-1}^{*}\\ \bm{U}_{k-1}^{*}&=\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}+\bm{C}_{k-1}(\bm{L}_{k-1}^{*}-\bm{Z}_{k-1})\\ \bm{D}_{\varepsilon}^{*}(k-1)&=\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T} +\bm{C}_{k-1}\bm{D}_{\Delta}^{*}(k-1)\bm{C}_{k-1}^{T}\\ \bm{C}_{k-1}&=\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega\Delta}^{*}(k-1)\,\bm{D}_{\Delta}^{-1}(k-1) \end{aligned}\right\} \tag{4-5-27}\] 上式中的 \(\bm{B}_{k-1}^{*}\) 按 (4-5-22) 式求定,而 \(\bm{D}_{\Delta}^{*}(k-1)\)\(\bm{D}_{\varOmega\Delta}^{*}(k-1)\) 按 (4-5-24) 式求定。

注意,当 \(k=1\) 时,应有 \[\left.\begin{aligned} \hat{\bm{X}}(1/1)&=\bm{\varPhi}_{1,0}\hat{\bm{X}}_{0}+\bm{J}_{1}(\bm{L}_{1}-\bm{B}_{1}\bm{\varPhi}_{1,0}\hat{\bm{X}}_{0})\\ \bm{D}_{\hat{X}}(1/1)&=(\bm{E}-\bm{J}_{1}\bm{B}_{1})\,\bm{D}_{\hat{X}}(1/0) \end{aligned}\right\} \tag{4-5-28}\] \[\left.\begin{aligned} \bm{D}_{\hat{X}}(1/0)&=\bm{\varPhi}_{1,0}\bm{D}_{X}(0)\bm{\varPhi}_{1,0}^{T} +\bm{\varGamma}_{1,0}\bm{D}_{\varOmega}(0)\bm{\varGamma}_{1,0}^{T}\\ \bm{J}_{1}&=\bm{D}_{\hat{X}}(1/0)\bm{B}_{1}^{T} \left[\bm{B}_{1}\bm{D}_{\hat{X}}(1/0)\bm{B}_{1}^{T}+\bm{D}_{\Delta}^{*}(1)\right]^{-1} \end{aligned}\right\} \tag{4-5-29}\] 若在系统 (4-5-1) 中取 \(k\geq 0\),且设初始状态 \(\bm{X}_{0}\) 的先验期望和先验方差分别为 \(\bm{\mu}_{0}\)\(\bm{D}_{0}\),则当 \(k\geq 1\) 时,\(\hat{\bm{X}}(k/k)\)\(\bm{D}_{\hat{X}}(k/k)\) 均按 (4-5-25)   (4-5-27) 式计算,而对于 \(k=0\) 应有 \[\left.\begin{aligned} \hat{\bm{X}}_{0}&=\bm{\mu}_{0}+\bm{D}_{0}\bm{B}_{0}^{T} \left[\bm{B}_{0}\bm{D}_{0}\bm{B}_{0}^{T}+\bm{D}_{\Delta}(0)\right]^{-1}(\bm{L}_{0}-\bm{B}_{0}\bm{\mu}_{0})\\ \bm{D}_{\hat{X}}(0)&=\bm{D}_{0}-\bm{D}_{0}\bm{B}_{0}^{T} \left[\bm{B}_{0}\bm{D}_{0}\bm{B}_{0}^{T}+\bm{D}_{\Delta}(0)\right]^{-1}\bm{B}_{0}\bm{D}_{0}\\ &=\left[\bm{D}_{0}^{-1}+\bm{B}_{0}^{T}\bm{D}_{\Delta}^{-1}(0)\bm{B}_{0}^{T}\right]^{-1} \end{aligned}\right\} \tag{4-5-30}\]

本节三个推广都有“前提条件”要盯紧。第一,(4-5-5) 式 \(\bm{C}_{k}=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega\Delta}(k)\bm{D}_{\Delta}^{-1}(k)\) 要求 \(\bm{D}_{\Delta}(k)\) 可逆——与 4-3 节相同,观测噪声方差阵必须正定。第二,“扩大状态向量”法处理有色动态噪声时,增广状态 \(\bm{X}_{k}^{*}\) 的维数升到 \(m+p\),递推中要计算的矩阵求逆规模随之增大;本节约 (4-5-18) 式后的说明也指出,若把观测噪声也扩进状态,求增益阵所需的逆阵“不一定存在”,故观测噪声为有色噪声时改用差分变换法 (4-5-21)。第三,有色噪声情形 \(\bm{D}_{\varepsilon}^{*}(k)=\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}-\bm{C}_{k}\bm{D}_{\Delta}\bm{C}_{k}^{T}\) 必须保持非负定;若相关强度 \(\bm{D}_{\varOmega\Delta}(k)\) 设置不当使该阵“变负”,递推出的方差阵会失去正定性,这是模型误设的典型信号。

本节是《最优估计基础》第4章的延伸内容:该书 4.2 节只讨论“白噪声、不相关”的基本情形,本节的“均值非零、同一时刻相关”与“有色噪声”两种推广在一般滤波文献(如 Anderson & Moore)中归入“相关噪声 Kalman 滤波”,阅读时可用该书 4.2 节的递推公式作为“零均值、不相关”的基线,再看本节 (4-5-8) (4-5-12) 相对基线多了哪些项(\(\bm{C}_{k}\) 项)。另外,第2章 2-3 节递推最小二乘同样可视为本节“白噪声一般线性系统”在 \(\bm{\varPhi}=\bm{E}\)\(\bm{\varGamma}=\bm{0}\) 时的退化;而本书 4-10 节“模型误差分析”会指出:若忽略有色噪声而仍用白噪声模型滤波,等价于模型误差的一种来源。

离散线性系统的预测

如 4-3 节所述,在利用观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 求定在第 \(j\) 时刻的状态向量 \(\bm{X}_{j}\) 的最佳估值时,若 \(j>k\),则称 \(\hat{\bm{X}}(j/k)\) 为最佳预测值,称求定 \(\hat{\bm{X}}(j/k)\) 和它的误差方差阵的过程为预测。根据 \(k\)\(j\) 的变化情况,预测问题可以分为三种类型:

(1) 固定区间预测:固定 \(k=N\),而变化 \(j\),即由固定的观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{N}\),求不同时刻状态向量的预测值 \(\hat{\bm{X}}(j/N)\,(j>N)\)

(2) 固定点预测:固定 \(j=N\),而变化 \(k\),即由变化的观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\),求某个固定时刻的状态向量的预测值 \(\hat{\bm{X}}(N/k)\,(0<k<j=N)\)

(3) 固定超前预测\(j\)\(k\) 都变化,但保持 \(j=k+N\),即由变化的观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 求预测值 \(\hat{\bm{X}}(k+N/k)\)

上述预测问题,实际上就是在已知前二阶矩特性的情况下,对一个马尔柯夫或高斯-马尔柯夫序列进行预测的问题。这里仅按广义最小二乘原理来推导 4-3 节的白噪声情形下离散线性系统的预测方程。

预测可以理解为“只用模型、不用新观测的外推”:在得到 \(\hat{\bm{X}}(k/k)\) 之后不再接收任何观测,只反复应用状态方程 (4-6-4) 把状态一步步向前推。因为 \(\bm{U}_{k}\)\(\bm{\varOmega}_{k}\) 的期望都是已知的(\(\bm{\varOmega}_{k}\) 零均值),所以“预测值”就是把状态方程中的随机噪声按期望 \(\bm{0}\) 代入后的确定性外推。与之对应,预测误差方差 (4-6-7) 却会随步数 \(i\) 单调增大:每外推一步就注入一份 \(\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}\),越往远处预测,不确定性越大——这是“预测越远越不靠谱”的数学表达,也是三种预测类型(固定区间、固定点、固定超前)共用 (4-6-6)(4-6-7) 这一般形式的根本原因。

按照 4-3 节推导卡尔曼滤波方程的方法,在根据广义最小二乘原理和逐次平差,由观测值 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 求得 \(\hat{\bm{X}}(k/k)\) 之后不再增加观测值,还要求定预测值 \(\hat{\bm{X}}(j/k)\,(j>k)\),也就是由以下误差方程进行最小二乘平差 \[\left.\begin{aligned} \bm{V}_{X}(k/k)&=\hat{\bm{X}}_{\varepsilon}(k/k)-\hat{\bm{X}}(k/k)\\ \bm{V}_{\varepsilon}(k)&=\bm{\varPhi}_{k+1,k}\hat{\bm{X}}_{\varepsilon}(k/k)-\hat{\bm{X}}(k+1/k)-\bm{L}_{\varepsilon}(k)\\ \bm{V}_{\varepsilon}(k+1)&=\bm{\varPhi}_{k+2,k+1}\hat{\bm{X}}(k+1/k)-\hat{\bm{X}}(k+2/k)-\bm{L}_{\varepsilon}(k+1)\\ &\cdots \end{aligned}\right\} \tag{4-6-1}\] 式中 \[\bm{L}_{\varepsilon}(k)=-\bm{\varPsi}_{k+1,k}\bm{U}_{k} \tag{4-6-2}\] 它对应的噪声和方差为 \[\left.\begin{aligned} \bm{\varepsilon}_{k}&=\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{D}_{\varepsilon}(k)&=\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\bm{\varGamma}_{k+1,k}^{T} \end{aligned}\right\} \tag{4-6-3}\] 可以看到,在 (4-6-1) 式中,虚拟观测向量 \(\hat{\bm{X}}(k/k)\)\(\bm{L}_{\varepsilon}(k)\)\(\bm{L}_{\varepsilon}(k+1)\)\(\cdots\) 中观测值的个数,与待定参数向量 \(\hat{\bm{X}}_{\varepsilon}(k/k)\)\(\hat{\bm{X}}(k+1/k)\)\(\hat{\bm{X}}(k+2/k)\)\(\cdots\) 中参数的个数相等,也就是说,它们没有多余观测。因此,此时的改正数向量 \(\bm{V}_{X}(k/k)\)\(\bm{V}_{\varepsilon}(k)\)\(\bm{V}_{\varepsilon}(k+1)\)\(\cdots\) 均为零,\(\hat{\bm{X}}_{\varepsilon}(k/k)=\hat{\bm{X}}(k/k)\),而预测值为 \[\left.\begin{aligned} \hat{\bm{X}}(k+1/k)&=\bm{\varPhi}_{k+1,k}\hat{\bm{X}}(k/k)+\bm{\varPsi}_{k+1,k}\bm{U}_{k}\\ \hat{\bm{X}}(k+2/k)&=\bm{\varPhi}_{k+2,k+1}\hat{\bm{X}}(k+1/k)+\bm{\varPsi}_{k+2,k+1}\bm{U}_{k+1}\\ &=\bm{\varPhi}_{k+2,k+1}\left[\bm{\varPhi}_{k+1,k}\hat{\bm{X}}(k/k)+\bm{\varPsi}_{k+1,k}\bm{U}_{k}\right] +\bm{\varPsi}_{k+2,k+1}\bm{U}_{k+1}\\ &\cdots \end{aligned}\right\} \tag{4-6-4}\] 考虑 (4-1-26) 和 (4-2-4) 两式即 \[\left.\begin{aligned} \bm{\varPhi}_{j,k}&=\bm{\varPhi}_{j,i}\bm{\varPhi}_{i,k}\\ \bm{\varPsi}_{j,k}&=\int_{t_{k}}^{t_{j}}\bm{\varPhi}(t_{j},\tau)\,\bm{C}(\tau)\,\mathrm{d}\tau \end{aligned}\right\} \tag{4-6-5}\] (4-6-4) 式可变为 \[\left.\begin{aligned} \hat{\bm{X}}(k+1/k)&=\bm{\varPhi}_{k+1,k}\hat{\bm{X}}(k/k)+\bm{\varPsi}_{k+1,k}\bm{U}_{k}\\ \hat{\bm{X}}(k+2/k)&=\bm{\varPhi}_{k+2,k}\hat{\bm{X}}(k/k)+\bm{\varPsi}_{k+2,k}\bm{U}_{k}+\bm{\varPsi}_{k+2,k+1}\bm{U}_{k+1} \end{aligned}\right\}\] 或写为 \[\hat{\bm{X}}(k+i/k)=\bm{\varPhi}_{k+i,k}\hat{\bm{X}}(k/k) +\sum_{r=k+1}^{k+i}\bm{\varPsi}_{k+i,r}\bm{U}_{r}\quad(i=1,2,\cdots) \tag{4-6-6}\] 由 (4-6-1) 式进行平差时,因改正数向量均为零,所以,\(\hat{\bm{X}}(k+1/k)\)\(\hat{\bm{X}}(k+2/k)\)\(\cdots\) 的误差方差阵即为 \[\left.\begin{aligned} \bm{D}_{\hat{X}}(k+1/k)&=\bm{\varPhi}_{k+1,k}\bm{D}_{\hat{X}}(k/k)\bm{\varPhi}_{k+1,k}^{T} +\bm{\varGamma}_{k+1,k}\bm{D}_{\varOmega}(k)\bm{\varGamma}_{k+1,k}^{T}\\ \bm{D}_{\hat{X}}(k+2/k)&=\bm{\varPhi}_{k+2,k+1}\bm{D}_{\hat{X}}(k+1/k)\bm{\varPhi}_{k+2,k+1}^{T} +\bm{\varGamma}_{k+2,k+1}\bm{D}_{\varOmega}(k+1)\bm{\varGamma}_{k+2,k+1}^{T}\\ &\cdots \end{aligned}\right\}\] 由此可得 \[\begin{aligned} \bm{D}_{\hat{X}}(k+i/k)={}&\bm{\varPhi}_{k+i,k}\bm{D}_{\hat{X}}(k/k)\bm{\varPhi}_{k+i,k}^{T}+{}\\ &\sum_{r=k+1}^{k+i}\bm{\varPhi}_{k+i,r}\bm{\varGamma}_{r,r-1}\bm{D}_{\varOmega}(r-1)\bm{\varGamma}_{r,r-1}^{T}\bm{\varPhi}_{k+i,r}^{T} \end{aligned} \tag{4-6-7}\] 上面的 (4-6-6) 和 (4-6-7) 两式是预测方程的一般形式。下面根据这种一般形式来导出三种类型的预测方程。

预测与滤波有一个关键区别:预测没有新观测来校正误差,所以 (4-6-7) 的 \(\bm{D}_{\hat{X}}(k+i/k)\)\(i\) 增大单调不减,且一般会发散到无穷——当 \(\bm{\varPhi}_{k+i,k}\) 含有大于 1 的特征值时(如例 4-6-1 中 \(\bm{\varPhi}^{i}=\begin{bmatrix}1&i\\0&1\end{bmatrix}\)\(i\) 线性增长),第二项 \(\sum_{r}\bm{\varPhi}\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}\bm{\varPhi}^{T}\) 中的 \((j-r)^{2}\sigma_{\varOmega}^{2}\) 会随 \(i\) 以立方量级增长(见例 4-6-1 中 \(D_{11}(j/k)\) 的表达式)。因此工程上“预测多久”必须与“误差上限”一起权衡。另外注意三种预测类型中“固定区间预测”用的是已固定的 \(\hat{\bm{X}}(N/N)\),之后外推到 \(j>N\);而“固定超前预测”每来一个新观测就重新滤波再外推固定步数 \(N\)——两者 \(j\)\(k\) 的变化方式不同,公式下标切勿混淆。

补 (4-6-6) 式从 (4-6-4) 到“一般形式”的归纳步骤。先写出 \(i=1,2\) 两项:\(\hat{\bm{X}}(k+1/k)=\bm{\varPhi}_{k+1,k}\hat{\bm{X}}(k/k)+\bm{\varPsi}_{k+1,k}\bm{U}_{k}\)\(\hat{\bm{X}}(k+2/k)=\bm{\varPhi}_{k+2,k+1}\hat{\bm{X}}(k+1/k)+\bm{\varPsi}_{k+2,k+1}\bm{U}_{k+1}\)。把第一式代入第二式并利用转移矩阵的可乘性 (4-1-26):\(\bm{\varPhi}_{k+2,k+1}\bm{\varPhi}_{k+1,k}=\bm{\varPhi}_{k+2,k}\),得 \(\hat{\bm{X}}(k+2/k)=\bm{\varPhi}_{k+2,k}\hat{\bm{X}}(k/k)+\bm{\varPhi}_{k+2,k+1}\bm{\varPsi}_{k+1,k}\bm{U}_{k}+\bm{\varPsi}_{k+2,k+1}\bm{U}_{k+1}\)。要归并 \(\bm{U}_{k}\)\(\bm{U}_{k+1}\) 两项的系数,需要如下恒等式(把 \(\bm{\varPsi}_{k+i,j-1}\) 按 (4-2-4) 拆成 \([t_{j-1},t_{j}]\)\([t_{j},t_{k+i}]\) 两段积分,再用可乘性): \[\bm{\varPhi}_{k+i,j}\,\bm{\varPsi}_{j,j-1}=\bm{\varPsi}_{k+i,j-1}-\bm{\varPsi}_{k+i,j}.\]\(i=2\)\(j=k+1\) 代入即得 \(\bm{\varPhi}_{k+2,k+1}\bm{\varPsi}_{k+1,k}=\bm{\varPsi}_{k+2,k}-\bm{\varPsi}_{k+2,k+1}\),于是 \(\hat{\bm{X}}(k+2/k)=\bm{\varPhi}_{k+2,k}\hat{\bm{X}}(k/k)+\bm{\varPsi}_{k+2,k}\bm{U}_{k}+\bm{\varPsi}_{k+2,k+1}(\bm{U}_{k+1}-\bm{U}_{k})\)——正是“只差一个相邻输入差 \(\bm{U}_{k+1}-\bm{U}_{k}\)”的形式。一般情形 \(\hat{\bm{X}}(k+i/k)=\bm{\varPhi}_{k+i,k}\hat{\bm{X}}(k/k)+\sum_{j=k+1}^{k+i}\bm{\varPhi}_{k+i,j}\bm{\varPsi}_{j,j-1}\bm{U}_{j-1}\),把上式代入即得输入端为 \(\sum_{j=k+1}^{k+i}\left(\bm{\varPsi}_{k+i,j-1}-\bm{\varPsi}_{k+i,j}\right)\bm{U}_{j-1}\)。原文 (4-6-6) 直接写成 \(\sum_{r=k+1}^{k+i}\bm{\varPsi}_{k+i,r}\bm{U}_{r}\),这一简化只在各步输入相同(\(\bm{U}_{r}\) 相等,此时和式可提公因式)或把“预测”理解为对当前输入 \(U_{k}\) 的重复外推时才严格成立;读者按上面积分恒等式自行展开最为稳妥。方差公式 (4-6-7) 的推导完全平行:由于没有观测更新,误差方差只按协方差传播律叠加 \(\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}\) 项。

(1) 固定区间预测方程

此时是固定观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{N}\),即固定 \(k=N\),而设 \[j=N+i>N=k\quad(i>0)\] 由一般形式 (4-6-6) 和 (4-6-7) 两式可得 \[\left.\begin{aligned} \hat{\bm{X}}(j/N)&=\bm{\varPhi}_{j,N}\hat{\bm{X}}(N/N)+\sum_{r=N+1}^{j}\bm{\varPsi}_{j,r}\bm{U}_{r}\\ \bm{D}_{\hat{X}}(j/N)&=\bm{\varPhi}_{j,N}\bm{D}_{\hat{X}}(N/N)\bm{\varPhi}_{j,N}^{T} +\sum_{r=N+1}^{j}\bm{\varPhi}_{j,r}\bm{\varGamma}_{r,r-1}\bm{D}_{\varOmega}(r-1)\bm{\varGamma}_{r,r-1}^{T}\bm{\varPhi}_{j,r}^{T} \end{aligned}\right\} \tag{4-6-8}\] 式中,\(\bm{\varPhi}_{j,r}=\bm{\varPhi}(t_{j},t_{r})\)。可以由微分方程 \[\left.\begin{aligned} \dot{\bm{\varPhi}}(t,t_{1})&=\bm{A}(t)\bm{\varPhi}(t,t_{1})\\ \bm{\varPhi}(t_{1},t_{1})&=\bm{E} \end{aligned}\right\} \tag{4-6-9}\] 解得 \(\bm{\varPhi}(t,t_{1})\),然后使 \(r\cdot\Delta t=t_{1}\),并将 \(\bm{\varPhi}(t,t_{1})\) 离散化即得到 \(\bm{\varPhi}_{j,r}\)。(4-6-9) 式中的 \(\bm{A}(t)\) 是相应的连续系统的系数阵。

(2) 固定点预测方程

固定点预测是根据观测值 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 估计将来的某个固定时刻 \(j=N\) 的状态预测值 \(\hat{\bm{X}}(N/k)\),此时有 \[j=N=k+i>k\] 由 (4-6-5) 和 (4-6-6) 式可得到 \[\left.\begin{aligned} \hat{\bm{X}}(N/k)&=\bm{\varPhi}_{N,k}\hat{\bm{X}}(k/k)+\sum_{r=k+1}^{N}\bm{\varPsi}_{N,r}\bm{U}_{r}\\ \bm{D}_{\hat{X}}(N/k)&=\bm{\varPhi}_{N,k}\bm{D}_{\hat{X}}(k/k)\bm{\varPhi}_{N,k}^{T} +\sum_{r=k+1}^{N}\bm{\varPhi}_{N,r}\bm{\varGamma}_{r,r-1}\bm{D}_{\varOmega}(r-1)\bm{\varGamma}_{r,r-1}^{T}\bm{\varPhi}_{N,r}^{T} \end{aligned}\right\} \tag{4-6-10}\] 根据转移矩阵的性质,可由微分方程 \[\left.\begin{aligned} \frac{\partial\bm{\varPhi}(t_{2},t)}{\partial t}&=-\bm{\varPhi}(t_{2},t)\bm{A}(t)\\ \bm{\varPhi}(t_{2},t_{2})&=\bm{E} \end{aligned}\right\} \tag{4-6-11}\] 解得 \(\bm{\varPhi}(t_{2},t)\),然后将 \(\bm{\varPhi}(t_{2},t)\) 离散化得到 \(\bm{\varPhi}_{N,k}\)

(3) 固定超前预测方程

设固定超前量为 \(N\),则由 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 求得的固定超前预测值为 \[\left.\begin{aligned} \hat{\bm{X}}(k+N/k)&=\bm{\varPhi}_{k+N,k}\hat{\bm{X}}(k/k)+\sum_{r=k+1}^{k+N}\bm{\varPsi}_{k+N,r}\bm{U}_{r}\\ \bm{D}_{\hat{X}}(k+N/k)&=\bm{\varPhi}_{k+N,k}\bm{D}_{\hat{X}}(k/k)\bm{\varPhi}_{k+N,k}^{T}+{}\\ &\quad\sum_{r=k+1}^{k+N}\bm{\varPhi}_{k+N,r}\bm{\varGamma}_{r,r-1}\bm{D}_{\varOmega}(r-1)\bm{\varGamma}_{r,r-1}^{T}\bm{\varPhi}_{k+N,r}^{T} \end{aligned}\right\} \tag{4-6-12}\] 为求得转移矩阵 \(\bm{\varPhi}_{k+N,k}\),可先求 \(\bm{\varPhi}(t+T,t)\) 的微分方程,将 \(\bm{\varPhi}(t+T,t)\) 对时间 \(t\) 求导,可得到 \[\frac{\partial\bm{\varPhi}(t+T,t)}{\partial t} =\bm{A}(t+T)\bm{\varPhi}(t+T,t)-\bm{\varPhi}(t+T,t)\bm{A}(t) \tag{4-6-13}\] 而边界条件 \(\bm{\varPhi}(t_{0}+T,t_{0})\),可以从 \(t_{0}\)\(t_{0}+T\) 向前解方程 (4-6-8) 式得到,根据边界条件解微分方程 (4-6-13) 式得到 \(\bm{\varPhi}(t+T,t)\),然后将它离散化就得到 \(\bm{\varPhi}_{k+N,k}\)

例 4-6-1

设有状态方程和观测方程 \[\begin{aligned} \bm{X}_{k+1}&=\begin{bmatrix}1&1\\ 0&1\end{bmatrix}\bm{X}_{k}+\bm{\varOmega}_{k}\\ L_{k+1}&=\begin{bmatrix}1&0\end{bmatrix}\bm{X}_{k+1}+\varDelta_{k+1} \end{aligned}\] 其中动态噪声 \(\bm{\varOmega}_{k}\) 和观测噪声 \(\varDelta_{k}\) 都是零均值完全不相关的白噪声序列,它们与 \(\bm{X}_{0}\) 相互独立,且 \[\begin{gathered} \bm{D}_{\varOmega}(k)=\sigma_{\varOmega}^{2}\cdot\bm{E},\quad D_{\varDelta}(k)=\sigma_{\varDelta}^{2}\\ E(\bm{X}_{0})=\bm{\mu}_{0},\quad \operatorname{var}(\bm{X}_{0})=\bm{D}_{X}(0) \end{gathered}\] 试求预测值 \(\hat{\bm{X}}(j/k)\,(j>k)\)

由状态方程可知 \[\bm{\varPhi}_{j,k}=\begin{bmatrix}1&j-k\\ 0&1\end{bmatrix}\] 预测值的一般形式为 \[\hat{\bm{X}}(j/k)=\begin{bmatrix}1&j-k\\ 0&1\end{bmatrix}\hat{\bm{X}}(k/k)\] 即有 \[\left.\begin{aligned} \hat{X}_{1}(j/k)&=\hat{X}_{1}(k/k)-(j-k)\hat{X}_{2}(k/k)\\ \hat{X}_{2}(j/k)&=\hat{X}_{2}(k/k) \end{aligned}\right\}\] 固定区间预测为 \[\hat{\bm{X}}(j/N)=\begin{bmatrix}1&j-N\\ 0&1\end{bmatrix}\hat{\bm{X}}(N/N)\] 固定点预测为 \[\hat{\bm{X}}(N/k)=\begin{bmatrix}1&N-k\\ 0&1\end{bmatrix}\hat{\bm{X}}(k/k)\] 固定超前预测为 \[\hat{\bm{X}}(k+N/k)=\begin{bmatrix}1&N\\ 0&1\end{bmatrix}\hat{\bm{X}}(k/k)\] 预测值的误差方差阵可由 (4-6-7) 式得 \[\begin{aligned} \bm{D}_{\hat{X}}(j/k)=&\begin{bmatrix}1&j-k\\ 0&1\end{bmatrix}\bm{D}_{\hat{X}}(k/k) \begin{bmatrix}1&0\\ j-k&1\end{bmatrix}+{}\\ &\sum_{r=k+1}^{j}\begin{bmatrix}1&j-r\\ 0&1\end{bmatrix} \begin{bmatrix}\sigma_{\varOmega}^{2}&0\\ 0&\sigma_{\varOmega}^{2}\end{bmatrix} \begin{bmatrix}1&0\\ j-r&1\end{bmatrix} \end{aligned}\] 式中 \[\bm{D}_{\hat{X}}(k/k)=\begin{bmatrix}D_{11}(k/k)&D_{12}(k/k)\\ D_{21}(k/k)&D_{22}(k/k)\end{bmatrix}\] 展开后可得 \[\begin{aligned} D_{11}(j/k)={}&D_{11}(k/k)+2(j-k)D_{12}(k/k)+(j-k)^{2}D_{22}(k/k)+{}\\ &\left[j-k+\sum_{r=k+1}^{j}(j-r)^{2}\,\right]\sigma_{\varOmega}^{2}\\ D_{12}(j/k)={}&D_{12}(k/k)+(j-k)D_{22}(k/k)+\sum_{r=k+1}^{j}(j-r)\,\sigma_{\varOmega}^{2}\\ D_{22}(j/k)={}&D_{22}(k/k)+(j-k)\,\sigma_{\varOmega}^{2} \end{aligned}\]

本节预测与《最优估计基础》第4章 4.4 节“线性离散系统的最优预测与平滑”的前半部分对应:该节 4.4.1“线性离散系统的最优预测”以“固定区间/固定点/固定超前”同样三种分类给出预测公式,并附算例,可与本节 (4-6-8)、(4-6-10)、(4-6-12) 三式逐条对照。预测与滤波、平滑三者的关系(本书 4-3 节开头的分类 \(j>k\)\(j=k\)\(j<k\))在该书 4.2 节末“递推流程”及 4.4 节中也有清晰的流程说明。此外,本节 (4-6-7) 的方差叠加公式与《最优估计基础》4.4 节预测方差公式同构,可互相印证。

离散线性系统的平滑

在利用观测向量 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{k}\) 求定第 \(j\) 时刻的状态向量 \(\bm{X}_{j}\) 的最佳估值时,若 \(j<k\),则称 \(\hat{\bm{X}}(j/k)\)最佳平滑值,称求定 \((j/k)\) 和它的误差方差的过程为平滑。根据 \(k\)\(j\) 的变化情况,也可将平滑问题分为三类:

(1) 固定区间平滑:固定 \(k=N\),变化 \(j\),即由固定的观测值 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{N}\) 求不同时刻的状态向量的平滑值 \(\hat{\bm{X}}(j/N)\)\(j<N=k\)

(2) 固定点平滑:固定 \(j=N\),变化 \(k\),即由变化的观测值求某个固定时刻的状态向量的平滑值 \(\hat{\bm{X}}(N/k)\)\(j=N<k\)

(3) 固定滞后平滑\(j\)\(k\) 都变化,但保持 \(j=k-N\),即由变化的观测值求平滑值 \(\hat{\bm{X}}(k-N/k)\)

这些平滑问题也是在已知前二阶矩特性的情况下,对一个马尔柯夫或高斯-马尔柯夫序列进行平滑的问题。这里也按广义最小二乘原理来推导 4-3 节的完全不相关的白噪声情形下离散线性系统的平滑方程。

滤波、预测、平滑三者的区别在于“用什么观测估哪个时刻”:滤波用“到 \(k\) 为止”的观测估 \(k\) 时刻;预测用“到 \(k\) 为止”的观测估 \(k\) 以后的时刻;平滑则用“到 \(k\) 为止”的观测估 \(k\) 以前的时刻——因为后面的观测 \(\bm{L}_{j+1},\cdots,\bm{L}_{k}\) 也含有关于 \(\bm{X}_{j}\) 的信息(状态通过状态方程与后续时刻耦联),所以平滑值总比滤波值更准(方差更小),代价是不能实时给出。以固定区间平滑为例,它的公式 (4-7-9) 是一个从后向前的“反向递推”:先算好滤波值 \(\hat{\bm{X}}(j/j)\),再用系数 \(\bm{\alpha}(j)\) 把后面时刻的平滑修正量“传”回来。工程上这正是事后数据处理(如卫星定轨复盘、变形监测资料整编)的典型工具。

固定区间平滑

根据广义最小二乘原理和 4-3 节所述可知,由观测值 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{N}\) 虚拟观测值 \(\hat{\bm{X}}(0/0)\) 及动态噪声所对应的观测值 \(\bm{L}_{\varepsilon}(i)=-\bm{\varPsi}_{i+1,i}\bm{U}_{i}\,(i=1,2,\cdots,N)\),可写出误差方程 (4-3-10);而按逐次平差原理,在利用 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{j}\,(j<k)\) 平差之后,也可写出误差方程 \[\left.\begin{aligned} \bm{V}_{X}(j/j)&=\hat{\bm{X}}(j/N)-\hat{\bm{X}}(j/j)\\ \bm{V}_{\varepsilon}(j)&=\bm{\varPhi}_{j+1,j}\hat{\bm{X}}(j/N)-\hat{\bm{X}}(j+1,N)-\bm{L}_{\varepsilon}(j)\\ \bm{V}_{j+1}&=\bm{B}_{j+1}\hat{\bm{X}}(j+1/N)+\bm{Z}_{j+1}-\bm{L}_{j+1}\\ \bm{V}_{\varepsilon}(j+1)&=\bm{\varPhi}_{j+2,j+1}\hat{\bm{X}}(j+1/N)-\hat{\bm{X}}(j+2/N)-\bm{L}_{\varepsilon}(j+1)\\ &\cdots\\ \bm{V}_{\varepsilon}(N-1)&=\bm{\varPhi}_{N,N-1}\hat{\bm{X}}(N-1/N)-\hat{\bm{X}}(N/N)-\bm{L}_{\varepsilon}(N-1)\\ \bm{V}_{N}&=\bm{B}_{N}\hat{\bm{X}}(N/N)+\bm{Z}_{N}-\bm{L}_{N} \end{aligned}\right\} \tag{4-7-1}\] 对应的方差阵为 \[\bm{D}_{L}=\begin{bmatrix} \bm{D}_{\hat{X}}(j/j) & \bm{0} & \bm{0} & \cdots & \bm{0} & \bm{0}\\ \bm{0} & \bm{D}_{\varepsilon}(j) & \bm{0} & \cdots & \bm{0} & \bm{0}\\ \bm{0} & \bm{0} & \bm{D}_{\Delta}(j+1) & \cdots & \bm{0} & \bm{0}\\ \vdots & \vdots & \vdots & & \vdots & \vdots\\ \bm{0} & \bm{0} & \bm{0} & \cdots & \bm{D}_{\varepsilon}(N-1) & \bm{0}\\ \bm{0} & \bm{0} & \bm{0} & \cdots & \bm{0} & \bm{D}_{\Delta}(N) \end{bmatrix} \tag{4-7-2}\] 其中 \[\bm{D}_{\varepsilon}(i)=\bm{\varGamma}_{i+1,i}\bm{D}_{\varOmega}(i)\bm{\varGamma}_{i+1,i}^{T} \tag{4-7-3}\] 可得到如下的法方程 \[\resizebox{\textwidth}{!}{$ \begin{bmatrix} \bm{N}_{j} & -\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j) & \bm{0} & \cdots & \bm{0}\\ -\bm{D}_{\varepsilon}^{-1}(j)\bm{\varPhi}_{j+1,j} & \bm{N}_{j+1} & -\bm{\varPhi}_{j+2,j+1}^{T}\bm{D}_{\varepsilon}^{-1}(j+1) & \cdots & \bm{0}\\ \bm{0} & -\bm{D}_{\varepsilon}^{-1}(j+1)\bm{\varPhi}_{j+2,j+1} & \bm{N}_{j+2} & \cdots & \bm{0}\\ \vdots & \vdots & \vdots & & \vdots\\ \bm{0} & \bm{0} & \bm{0} & \cdots & \bm{N}_{N} \end{bmatrix} \begin{bmatrix} \hat{\bm{X}}(j/N)\\ \hat{\bm{X}}(j+1/N)\\ \hat{\bm{X}}(j+2/N)\\ \vdots\\ \hat{\bm{X}}(N/N) \end{bmatrix} - \begin{bmatrix} \bm{W}_{j}\\ \bm{W}_{j+1}\\ \bm{W}_{j+2}\\ \vdots\\ \bm{W}_{N} \end{bmatrix} =\bm{0}$} \tag{4-7-4}\] 式中 \[\left.\begin{aligned} \bm{N}_{j}&=\bm{D}_{X}^{-1}(j/j)+\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{\varPhi}_{j+1,j}\\ \bm{W}_{j}&=\bm{D}_{X}^{-1}(j/j)\hat{\bm{X}}(j/j)+\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{L}_{\varepsilon}(j)\\ \bm{N}_{N}&=\bm{D}_{\varepsilon}^{-1}(N-1)-\bm{B}_{N}^{T}\bm{D}_{\Delta}^{-1}(N)\bm{B}_{N}\\ \bm{W}_{N}&=\bm{D}_{\varepsilon}^{-1}(N-1)\bm{L}_{\varepsilon}(N-1) +\bm{B}_{N}^{T}\bm{D}_{\Delta}^{-1}(N)\,(\bm{L}_{N}-\bm{Z}_{N}) \end{aligned}\right\} \tag{4-7-5}\] \[\left.\begin{aligned} \bm{N}_{i}&=\bm{D}_{\varepsilon}^{-1}(i-1)+\bm{B}_{i}^{T}\bm{D}_{\Delta}^{-1}(i)\bm{B}_{i} +\bm{\varPhi}_{i+1,i}^{T}\bm{D}_{\varepsilon}^{-1}(i)\bm{\varPhi}_{i+1,i}\\ \bm{W}_{i}&=\bm{D}_{\varepsilon}^{-1}(i-1)\bm{L}_{\varepsilon}(i-1) +\bm{B}_{i}^{T}\bm{D}_{\Delta}(i)\,(\bm{L}_{i}-\bm{Z}_{i}) +\bm{\varPhi}_{i+1,i}^{T}\bm{D}_{\varepsilon}(i)\bm{L}_{\varepsilon}(i) \end{aligned}\right\} \tag{4-7-6}\] 在 (4-7-4) 式中,\(\hat{\bm{X}}(N/N)\) 是状态向量 \(\bm{X}_{N}\) 的滤波值,它可以按前面的滤波方程求得;而 \(\hat{\bm{X}}(j/N)\)\(\hat{\bm{X}}(j+1/N)\)\(\cdots\)\(\hat{\bm{X}}(N-1/N)\) 就是 \(\bm{X}_{j}\)\(\bm{X}_{j+1}\)\(\cdots\)\(\bm{X}_{N-1}\) 的平滑值。此式的系数阵是一个拟三对角阵,因此,由它的第一个方程可解得 \[\hat{\bm{X}}(j/N)=\bm{N}_{j}^{-1}\left[\bm{W}_{j} +\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\hat{\bm{X}}(j+1/N)\right] \tag{4-7-7}\] 再将 (4-7-5) 中的 \(\bm{N}_{j}\)\(\bm{W}_{j}\) 代入上式得 \[\begin{aligned} \hat{\bm{X}}(j/N)={}&\left[\bm{D}_{X}^{-1}(j/j)-\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{\varPhi}_{j+1,j}\right]^{-1}\cdot\\ &\{\bm{D}_{X}^{-1}(j/j)\hat{\bm{X}}(j/j) +\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\left[\hat{\bm{X}}(j+1/N)-\bm{\varPsi}_{j+1,j}\bm{U}_{j}\right]\} \end{aligned} \tag{4-7-8}\] 应用矩阵反演公式可将上式变换为 \[\hat{\bm{X}}(j/N)=\hat{\bm{X}}(j/j)+\bm{\alpha}(j)\, \{\hat{\bm{X}}(j+1/N)-\bm{\varPhi}_{j+1,j}\hat{\bm{X}}(j/j)-\bm{\varPsi}_{j+1,j}\bm{U}_{j}\} \tag{4-7-9}\] 式中 \[\left.\begin{aligned} \bm{\alpha}(j)&=\bm{D}_{\hat{X}}(j/j)\,\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\hat{X}}^{-1}(j+1/j)\\ \bm{D}_{\hat{X}}(j+1/j)&=\bm{\varPhi}_{j+1,j}\bm{D}_{\hat{X}}(j/j)\bm{\varPhi}_{j+1,j}^{T} +\bm{\varGamma}_{j+1,j}\bm{D}_{\varOmega}(j)\bm{\varGamma}_{j+1,j}^{T} \end{aligned}\right\} \tag{4-7-10}\]

补从 (4-7-8) 经矩阵反演公式到 (4-7-9) 的跳步。(4-7-8) 是 \(\hat{\bm{X}}(j/N)=\left[\bm{D}_{\hat{X}}^{-1}(j/j)+\bm{\varPhi}^{T}\bm{D}_{\varepsilon}^{-1}\bm{\varPhi}\right]^{-1}\{\bm{D}_{\hat{X}}^{-1}(j/j)\hat{\bm{X}}(j/j)+\bm{\varPhi}^{T}\bm{D}_{\varepsilon}^{-1}[\hat{\bm{X}}(j+1/N)-\bm{\varPsi}\bm{U}_{j}]\}\)(符号略写 \(\bm{\varPhi}=\bm{\varPhi}_{j+1,j}\)\(\bm{D}_{\varepsilon}=\bm{D}_{\varepsilon}(j)\))。注意:(4-7-8) 原书中第二项前的“\(-\)”与 (4-7-5) 的 \(\bm{N}_{j}=\bm{D}_{X}^{-1}(j/j)+\bm{\varPhi}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{\varPhi}\) 不一致,反演公式的代入(见下)要求取“\(+\)”,故 (4-7-8) 中的减号疑为排印笔误。用反演公式 \(( \bm{A}^{-1}+\bm{B}^{T}\bm{C}^{-1}\bm{B})^{-1}=\bm{A}-\bm{A}\bm{B}^{T}(\bm{B}\bm{A}\bm{B}^{T}+\bm{C})^{-1}\bm{B}\bm{A}\),取 \(\bm{A}=\bm{D}_{\hat{X}}(j/j)\)\(\bm{B}=\bm{\varPhi}\)\(\bm{C}=\bm{D}_{\varepsilon}(j)\),并注意 \(\bm{B}\bm{A}\bm{B}^{T}+\bm{C}=\bm{\varPhi}\bm{D}_{\hat{X}}(j/j)\bm{\varPhi}^{T}+\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}=\bm{D}_{\hat{X}}(j+1/j)\)((4-7-10) 第二式)。代入并整理,关键的系数关系是 \[\left[\bm{D}_{\hat{X}}^{-1}(j/j)+\bm{\varPhi}^{T}\bm{D}_{\varepsilon}^{-1}\bm{\varPhi}\right]^{-1}\bm{\varPhi}^{T}\bm{D}_{\varepsilon}^{-1} =\bm{D}_{\hat{X}}(j/j)\bm{\varPhi}^{T}\bm{D}_{\hat{X}}^{-1}(j+1/j)=\bm{\alpha}(j),\] 于是第一项 \(\hat{\bm{X}}(j/j)\) 的系数为 \(\bm{E}\),第二项系数恰为 \(\bm{\alpha}(j)\),即得 (4-7-9) 式。可见 \(\bm{\alpha}(j)\) 的直观含义是“把第 \(j+1\) 时刻平滑值的修正量折算回第 \(j\) 时刻的权重”。

平滑值 \(\hat{\bm{X}}(j/N)\) 的误差方差阵可由法方程 (4-7-4) 求逆得到。因为有 \[\left.\begin{aligned} \bm{N}_{j}\bm{D}_{\hat{X}}(j/N)-\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{C}_{j,j+1}&=\bm{E}\\ \bm{N}_{j}\bm{C}_{j,j+1}^{T}-\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{D}_{\hat{X}}(j+1/N)&=\bm{0} \end{aligned}\right\} \tag{4-7-11}\] 式中 \(\bm{C}_{j,j+1}^{T}\) 表示 \(\hat{\bm{X}}(j/N)\)\(\hat{\bm{X}}(j+1/N)\) 的误差间的协方差阵。所以 \[\bm{D}_{\hat{X}}(j/N)=\bm{N}_{j}^{-1}\left[\bm{E} +\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\varepsilon}^{-1}(j)\bm{D}_{\hat{X}}(j+1/N)\bm{D}_{\varepsilon}^{-1}(j)\bm{\varPhi}_{j+1,j}\bm{N}_{j}^{-1}\right] \tag{4-7-12}\] 应用矩阵反演公式可将上式变换为 \[\bm{D}_{\hat{X}}(j/N)=\bm{D}_{\hat{X}}(j/j) +\bm{\alpha}(j)\left[\bm{D}_{\hat{X}}(j+1/N)-\bm{D}_{\hat{X}}(j+1/j)\right]\bm{\alpha}^{T}(j) \tag{4-7-13}\] 上面得到的 (4-7-9) 和 (4-7-13) 两式就是固定区间平滑的实用公式。当然,(4-7-7) 和 (4-7-12) 式也可以作为固定区间平滑公式。

平滑公式的使用有几个容易出错的前提。第一,\(\bm{\alpha}(j)=\bm{D}_{\hat{X}}(j/j)\bm{\varPhi}_{j+1,j}^{T}\bm{D}_{\hat{X}}^{-1}(j+1/j)\) 要求一步预测方差阵 \(\bm{D}_{\hat{X}}(j+1/j)\) 可逆((4-7-10) 第二式,与 4-3 节一致,只要 \(\bm{D}_{\Delta}\) 正定即满足)。第二,固定区间平滑必须“先正向后反向”:先按 4-3 节算出所有 \(\hat{\bm{X}}(j/j)\)\(\bm{D}_{\hat{X}}(j/j)\)(表 4-2 就取自例 4-3-2 的表 4-1),再从未端 \(\hat{\bm{X}}(N/N)\) 开始反向递推;若跳步直接从正向中途开始,\(\hat{\bm{X}}(j+1/N)\) 无从得到。第三,固定滞后平滑 (4-7-30) 中的 \(\bm{\gamma}(k-1)=\bm{\alpha}^{-1}(k-1)-\bm{\varPhi}_{k,k-1}\) 需要 \(\bm{\alpha}(k-1)\) 可逆,(4-7-29) 给出其等价式——当 \(\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T}\) 奇异(如动态噪声为 0)时该式退化,需回归 (4-7-28) 直接计算。

固定点平滑

若取固定的 \(j=N\),则由 (4-7-9) 式可得到 \[\begin{aligned} \hat{\bm{X}}(N/k)&=\hat{\bm{X}}(N/N)+\bm{\alpha}(N)\left[\hat{\bm{X}}(N+1/k)-\bm{\varPhi}_{N+1,N}\hat{\bm{X}}(N/N)-\bm{\varPsi}_{N+1,N}\bm{U}_{N}\right]\\ \hat{\bm{X}}(N/k-1)&=\hat{\bm{X}}(N/N)+\bm{\alpha}(N)\left[\hat{\bm{X}}(N+1/k-1)-\bm{\varPhi}_{N+1,N}\hat{\bm{X}}(N/N)-\bm{\varPsi}_{N+1,N}\bm{U}_{N}\right] \end{aligned}\] 两式相减即得 \[\hat{\bm{X}}(N/k)-\hat{\bm{X}}(N/k-1) =\bm{\alpha}(N)\left[\hat{\bm{X}}(N+1/k)-\hat{\bm{X}}(N+1/k-1)\right] \tag{4-7-14}\] 同理,对于 \(i=N+1,\cdots,k-1\),可得 \[\hat{\bm{X}}(i/k)-\hat{\bm{X}}(i/k-1) =\bm{\alpha}(i)\left[\hat{\bm{X}}(i+1/k)-\hat{\bm{X}}(i+1/k-1)\right]\] 则 (4-7-14) 式可写为 \[\hat{\bm{X}}(N/k)-\hat{\bm{X}}(N/k-1) =\prod_{i=N}^{k-1}\bm{\alpha}(i)\left[\hat{\bm{X}}(k/k)-\hat{\bm{X}}(k/k-1)\right] \tag{4-7-15}\] 于是,可以得到固定点平滑公式 \[\hat{\bm{X}}(N/k)=\hat{\bm{X}}(N/k-1) +\bm{\beta}(N,k)\left[\hat{\bm{X}}(k/k)-\hat{\bm{X}}(k/k-1)\right] \tag{4-7-16}\] 式中 \[\left.\begin{aligned} \bm{\beta}(N,k)&=\prod_{i=N}^{k-1}\bm{\alpha}(i)=\bm{\beta}(N,k-1)\bm{\alpha}(k-1)\\ \bm{\beta}(N,N)&=\bm{E} \end{aligned}\right\} \tag{4-7-17}\] 因为由滤波方程知 \[\hat{\bm{X}}(k/k)=\hat{\bm{X}}(k/k-1) +\bm{J}_{k}\left[\bm{L}_{k}-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right]\] 故可将 (4-7-16) 式写为 \[\hat{\bm{X}}(N/k)=\hat{\bm{X}}(N/k-1) +\bm{\beta}(N,k)\bm{J}_{k}\left[\bm{L}_{k}-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right] \tag{4-7-18}\] 根据 (4-7-13) 式可写出 \(\hat{\bm{X}}(N/k)\) 的误差方差阵为 \[\bm{D}_{\hat{X}}(N/k)=\bm{D}_{\hat{X}}(N/N) +\bm{\alpha}(N)\left[\bm{D}_{\hat{X}}(N+1/k)-\bm{D}_{\hat{X}}(N+1/N)\right]\bm{\alpha}^{T}(N)\]\(\hat{\bm{X}}(N/k-1)\) 的误差方差阵为 \[\bm{D}_{\hat{X}}(N/k-1)=\bm{D}_{\hat{X}}(N/N) +\bm{\alpha}(N)\left[\bm{D}_{\hat{X}}(N+1/k-1)-\bm{D}_{\hat{X}}(N+1/N)\right]\bm{\alpha}^{T}(N)\] 两式相减得 \[\bm{D}_{\hat{X}}(N/k)-\bm{D}_{\hat{X}}(N/k-1) =\bm{\alpha}(N)\left[\bm{D}_{\hat{X}}(N+1/k)-\bm{D}_{\hat{X}}(N+1/k-1)\right]\bm{\alpha}^{T}(N)\] 同理,对于 \(i=N+1,\cdots,k-1\) 也可得到类似的结果,因此有 \[\bm{D}_{\hat{X}}(N/k)=\bm{D}_{\hat{X}}(N/k-1) +\bm{\beta}(N,k)\left[\bm{D}_{\hat{X}}(k/k)-\bm{D}_{\hat{X}}(k/k-1)\right]\bm{\beta}^{T}(N,k) \tag{4-7-19}\] 又因为 \[\bm{D}_{\hat{X}}(k/k)=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\,\bm{D}_{\hat{X}}(k/k-1)\] 所以 \[\bm{D}_{\hat{X}}(N/k)=\bm{D}_{\hat{X}}(N/k-1) -\bm{\beta}(N,k)\bm{J}_{k}\bm{B}_{k}\bm{D}_{\hat{X}}(k/k-1)\bm{\beta}^{T}(N,k) \tag{4-7-20}\] (4-7-16) 和 (4-7-19) 各式就是固定点平滑公式。

还可以将 (4-7-18) 和 (4-7-20) 两式改写为 \[\hat{\bm{X}}(N/k)=\bm{X}(N/k-1) +\bar{\bm{\beta}}(N,k)\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k) \left[\bm{L}_{k}-\bm{Z}_{k}-\bm{B}_{k}\hat{\bm{X}}(k/k-1)\right] \tag{4-7-21}\] \[\begin{aligned} \bm{D}_{\hat{X}}(N/k)={}&\bm{D}_{\hat{X}}(N/k-1) -\bar{\bm{\beta}}(N,k)\left[\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}\bm{D}_{\Delta}(k)\bm{B}_{k}+{}\right.\\ &\left.\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\right]\bar{\bm{\beta}}(N,k) \end{aligned} \tag{4-7-22}\] 式中 \[\bar{\bm{\beta}}(N,k)=\bar{\bm{\beta}}(N,k-1)\bm{\varPhi}^{T}(k,k-1) \left[\bm{E}-\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\bm{D}_{\hat{X}}(k/k)\right] \tag{4-7-23}\] 固定点平滑的计算在工程实践中有着广泛的应用。例如,求卫星在 \(\lambda\) 轨点时刻 \(N\) 的状态向量 \(\bm{X}(N)\) 的估值,就是固定点平滑问题。

固定滞后平滑

为了由变化的观测值 \(\bm{L}_{1},\bm{L}_{2},\cdots,\bm{L}_{N+k}\) 求固定滞后平滑值 \(\hat{\bm{X}}(k/N+k)\),可在固定点平滑公式 (4-7-18) 中以 \(k\) 代替 \(N\),以 \(N+k\) 代替 \(k\),得 \[\begin{aligned} \hat{\bm{X}}(k/N+k)={}&\hat{\bm{X}}(k/N+k-1) +\bm{\beta}(k,N+k)\bm{J}_{N+k}\left[\bm{L}_{N+k}-\bm{Z}_{N+k}-{}\right.\\ &\left.\bm{B}_{N+k}\hat{\bm{X}}(N+k/N+k-1)\right] \end{aligned} \tag{4-7-24}\] 式中 \[\left.\begin{aligned} \bm{\beta}(k,N+k)&=\prod_{i=k}^{N+k-1}\bm{\alpha}(i)\\ &=\bm{\alpha}^{-1}(k-1)\bm{\beta}(k-1,N+k-1)\bm{\alpha}(N+k-1)\\ \bm{\beta}(0,N)&=\prod_{i=0}^{N-1}\bm{\alpha}(i) \end{aligned}\right\} \tag{4-7-25}\] 而由固定区间平滑公式 (4-7-9) 知,当 \(\bm{\alpha}(j)\) 为非奇异阵时,有 \[\hat{\bm{X}}(j+1/N)=\bm{\varPhi}_{j+1,j}\hat{\bm{X}}(j/j)+\bm{\varPsi}_{j+1,j}\bm{U}_{j} +\bm{\alpha}^{-1}(j)\left[\hat{\bm{X}}(j/N)-\hat{\bm{X}}(j/j)\right]\]\(k\)\(N+k-1\) 分别代替上式中的 \(j+1\)\(N\),得 \[\begin{aligned} \hat{\bm{X}}(k/N+k-1)={}&\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/k-1)+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}+{}\\ &\bm{\alpha}^{-1}(k-1)\left[\hat{\bm{X}}(k-1/N+k-1)-\hat{\bm{X}}(k-1/k-1)\right] \end{aligned} \tag{4-7-26}\] 或写为 \[\hat{\bm{X}}(k/N+k-1)=\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/N+k-1)+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}+{}\] \[\bm{\gamma}(k-1)\left[\hat{\bm{X}}(k-1/N+k-1)-\hat{\bm{X}}(k-1/k-1)\right] \tag{4-7-27}\] 式中 \[\bm{\gamma}(k-1)=\bm{\alpha}^{-1}(k-1)-\bm{\varPhi}_{k,k-1} =\left[\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T}\bm{D}_{\hat{X}}^{-1}(k/k-1)\right]^{-1}-\bm{\varPhi}_{k,k-1} \tag{4-7-28}\] 顾及 \[\bm{D}_{\hat{X}}(k/k-1)=\bm{\varPhi}_{k,k-1}\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T} +\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T}\] 可知 \[\bm{\gamma}(k-1)=\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T} \bm{\varPhi}_{k,k-1}^{-T}\bm{D}_{\hat{X}}^{-1}(k-1/k-1) \tag{4-7-29}\] 将 (4-7-26) 式代入 (4-7-24) 式中,即得 \[\begin{aligned} \hat{\bm{X}}(k/N+k)={}&\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/N+k-1) +\bm{\beta}(k,N+k)\bm{J}_{N+k}\left[\bm{L}_{N+k}-\bm{Z}_{N+k}-{}\right.\\ &\left.\bm{B}_{N+k}\hat{\bm{X}}(N+k/N+k-1)\right] +\bm{\gamma}(k-1)\left[\hat{\bm{X}}(k-1/N+k-1)-{}\right.\\ &\left.\hat{\bm{X}}(k-1/k-1)\right]+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1} \end{aligned} \tag{4-7-30}\] 在求得 \(\hat{\bm{X}}(0/N)\) 之后,就可按上式依次计算固定滞后平滑值 \(\hat{\bm{X}}(1/N+1)\)\(\hat{\bm{X}}(2/N+2)\)\(\cdots\)

固定滞后估值 \(\hat{\bm{X}}(k/N+k)\) 的误差方差阵的递推公式也不难导出。由固定区间平滑公式 (4-7-13) 可知 \[\begin{aligned} \bm{D}_{\hat{X}}(k/N+k-1)={}&\bm{D}_{\hat{X}}(k/k-1) +\bm{\alpha}^{-1}(k-1)\left[\bm{D}_{\hat{X}}(k-1/N+k-1)-{}\right.\\ &\left.\bm{D}_{\hat{X}}(k-1/k-1)\right]\bm{\alpha}^{-T}(k-1) \end{aligned} \tag{4-7-31}\] 同时,由固定点平滑公式 (4-7-20) 得 \[\begin{aligned} \bm{D}_{\hat{X}}(k/N+k)={}&\bm{D}_{\hat{X}}(k/N+k-1) -\bm{\beta}(k,N+k)\bm{J}_{N+k}\bm{B}_{N+k}\bm{D}_{\hat{X}}(N+k/N+k-1)\cdot\\ &\bm{\beta}^{T}(k,N+k) \end{aligned} \tag{4-7-32}\] 将 (4-7-31) 式代入 (4-7-32) 式,有 \[\resizebox{\textwidth}{!}{$ \begin{aligned} \bm{D}_{\hat{X}}(k/N+k)={}&\bm{D}_{\hat{X}}(k/k-1) -\bm{\beta}(k,N+k)\bm{J}_{N+k}\bm{B}_{N+k}\bm{D}_{\hat{X}}(N+k/N+k-1)\bm{\beta}^{T}(k,N+k)-{}\\ &\bm{\alpha}^{-1}(k-1)\left[\bm{D}_{\hat{X}}(k-1/k-1)-\bm{D}_{\hat{X}}(k-1/N+k-1)\right]\bm{\alpha}^{-T}(k-1) \end{aligned}$} \tag{4-7-33}\] 在求得 \(\bm{D}_{\hat{X}}(0/N)\) 之后,可由此式计算。

例 4-7-1

题同 [例 4-3-2],试求:

(1) 在 \(N=4\) 时最佳区间平滑值;

(2) 初始点的平滑值;

(3) 固定滞后 \(N=1\) 情况下的平滑值。

(1) 因系统的状态方程和观测方程为 \[\left.\begin{aligned} X_{k+1}&=X_{k}+\varOmega_{k}\\ L_{k+1}&=X_{k+1}+\varDelta_{k+1} \end{aligned}\right\}\] 由固定区间平滑公式 (4-7-9) 和 (4-7-13) 可得 \[\hat{X}(j/4)=\hat{X}(j/j)+\alpha(j)\left[\hat{X}(j+1/4)-\hat{X}(j/j)\right]\] \[\alpha(j)=\frac{D_{\hat{X}}(j/j)}{D_{\hat{X}}(j/j)+D_{\varOmega}(j)}=\frac{D(j/j)}{D(j/j)+25}\] \[D_{\hat{X}}(j/4)=D_{\hat{X}}(j/j)+\alpha^{2}(j)\left[D_{\hat{X}}(j+1/4)-D_{\hat{X}}(j+1/j)\right]\] 按以上各式计算所得结果列于表 4-2。表 4-2 中的 \(D_{\hat{X}}(j/j-1)\)\(J_{j}\)\(\hat{X}(j/j)\)\(D_{\hat{X}}(j/j)\) 取自 [例 4-3-2] 的表 4-1。

固定区间平滑结果
\(j\) \(D_{\hat{X}}(j/j-1)\) \(J_{j}\) \(\hat{X}(j/j)\) \(D_{\hat{X}}(j/j)\) \(\alpha(j)\) \(D_{\hat{X}}(j/4)\) \(\hat{X}(j/4)\)
0 / / 0 100 0.800 26.23 10.38
1 125.0 0.893 8.93 13.4 0.349 9.73 12.98
2 38.4 0.719 16.89 10.8 0.301 8.30 20.55
3 35.8 0.705 26.13 10.56 0.297 8.36 29.03
4 35.6 0.703 35.88 10.56 / 10.55 35.89

(2) 由固定点平滑公式 (4-7-21) 式可得 \[\bar{\beta}(0,k)=\bar{\beta}(0,k-1)\left[1-\frac{1}{15}D_{\hat{X}}(k/k)\right]\] \[\hat{X}(0/k)=\hat{X}(0/k-1)+\bar{\beta}(0,k)\cdot\frac{1}{15}\left[L_{k}-\hat{X}(k/k-1)\right]\] \[D_{\hat{X}}(0/k)=D_{\hat{X}}(0/k-1)-\frac{1}{15}\bar{\beta}^{2}(0,k)\left[\frac{1}{15}D_{\hat{X}}(k/k-1)+1\right]\] 按上式计算得初始点的平滑值列于表 4-3。

固定点平滑结果
\(k\) \(D_{\hat{X}}(k/k)\) \(D_{\hat{X}}(k/k-1)\) \(\bar{\beta}(0,k)\) \(D_{\hat{X}}(0/k)\) \(\hat{X}(k-1/k-1)\) \(\hat{X}(0/k)\)
0 100 / 100 100 / 0
1 13.4 125 10.71 28.60 0 7.14
2 10.80 38.4 3.00 26.48 8.92 9.36
3 10.57 35.8 0.89 26.30 16.89 10.14
4 10.55 35.6 0.26 26.28 26.13 10.36

(3) 由固定滞后平滑公式 (4-7-30) 和 (4-7-32) 式,取 \(N=1\),有 \[\gamma(k-1)=\frac{25}{D_{\hat{X}}(k-1/k-1)}\] \[\beta(k,1+k)=\alpha(k)\] \[\beta(0,1)=\alpha(0)=0.80\] \[\begin{aligned} \hat{X}(k/k+1)={}&\hat{X}(k-1/k)+\beta(k,1+k)J_{k+1}\left[L_{k+1}-\hat{X}(k+1/k)\right]+{}\\ &\gamma(k-1)\left[\hat{X}(k-1/k)-\hat{X}(k-1/k-1)\right]\\ D_{\hat{X}}(k/k+1)={}&D_{\hat{X}}(k/k-1)-\alpha^{2}(k)J_{k+1}D_{\hat{X}}(k+1/k)-{}\\ &\frac{1}{\alpha^{2}(k-1)}\left[D_{\hat{X}}(k-1/k-1)-D_{\hat{X}}(k-1/k)\right]\\ D_{\hat{X}}(0/1)={}&28.60 \end{aligned}\] 由以上各式计算所得的结果列于表 4-4。

固定滞后平滑结果
\(k\) \(\beta(k,k+1)\) \(\gamma(k-1)\) \(Jk+1\) \(\hat{X}(k-1/k-1)\) \(\hat{X}(k-1/k)\) \(D_{\hat{X}}(k-1/k)\)
1 0.349 0.250 0.719 0 7.14 28.60
2 0.301 1.867 0.705 8.93 11.70 10.04
3 0.297 2.317 0.703 16.89 19.67 8.51
4 / / / 26.13 28.99 8.33

本节平滑与《最优估计基础》第4章 4.4 节“线性离散系统的最优预测与平滑”的后半部分(4.4.2“线性离散系统的最优平滑”)对应:固定区间、固定点、固定滞后三类平滑公式在两书中结构一致,符号上该书常写为“前向滤波+后向平滑”,可互相参照。另外,4-3 节开头的滤波/预测/平滑分类(\(j=k\)\(j>k\)\(j<k\))与本节、4-6 节构成完整的“三类估计”闭环;其中“平滑值方差不大于滤波值方差”的性质,可与《最优估计基础》4.4 节关于平滑估计精度的说明互相印证。例 4-7-1 的数值结果(表 4-2)直接沿用例 4-3-2 的滤波结果,正是“先滤波、后平滑”两段式计算的示范。

线性确定系统的能观性和能控性

在研究动态线性系统的最佳估计问题时,人们会提出以下问题:

(1) 在一般适当的时间内,由观测值(输出值)\(L(t)\) 能否求得系统的状态 \(\bm{X}(t)\)

(2) 如果已知系统的状态 \(\bm{X}(t)\),加入适当的控制项(输入项),能否使系统转移到预期的状态?

为了解决这两个问题,就要引用能观性和能控性的概念。能观性是描述系统的状态与观测量的关系的概念,而能控性则是描述系统的控制项对系统运动控制能力的概念。本节讨论它们的明确定义和判断系统是否具有能观性和能控性的具体方法。

能观性和能控性可以直观地理解为系统的“可观测性”和“可操控性”。能观性回答的是“观测够不够”:如果状态 \(\bm{X}_{k}\) 的任何变化都会反映到观测 \(\bm{L}\) 上,并且能由一段观测序列唯一反解出来,系统就是能观的;否则某些“隐藏模式”观测不到,滤波也无法把它们估计出来。能控性回答的是“输入够不够”:如果给足够多步的控制 \(\bm{U}\) 能把任意状态拉回到零状态,系统就是能控的。两个概念都建立在 4-8-2 式这样的秩条件 \(\operatorname{rk}(\bm{W}_{G})=m\)\(\operatorname{rk}(\bm{W}_{K})=m\) 上——与第2章平差中“系数阵列满秩才能唯一解”的秩思想一脉相承,但这里的“系数阵”由转移矩阵和观测矩阵迭代构成。

讨论线性确定系统的能观性和能控性,是假定系统在理想状态下,或者说,假定动态噪声和观测噪声为零。

离散系统的能观性

考虑以下没有动态噪声和观测噪声的理想状态下的离散线性系统 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varPsi}_{k+1,k}\bm{U}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1} \end{aligned}\right\} \tag{4-8-1}\] 这一系统具有能观性的定义是:如果存在某个正整数 \(N\),可以由 \(N\) 次观测 \(\bm{L}_{k}\)\(\bm{L}_{k+1}\)\(\cdots\)\(\bm{L}_{k+N-1}\) 及已知的控制项系列 \(\bm{U}_{k}\)\(\bm{U}_{k+1}\)\(\cdots\)\(\bm{U}_{k+N-1}\) 来唯一确定 \(k\) 时刻的状态 \(\bm{X}_{k}\),则称系统在 \(k\) 时刻是能观的,如果系统在任何时刻都是能观的,则称系统是一个完全能观的系统。

显然,如果观测向量 \(\underset{n\times 1}{\bm{L}_{k}}\) 与状态向量 \(\underset{m\times 1}{\bm{X}_{k}}\) 的维数相同(即 \(n=m\)),则当 \(\bm{B}_{k}\) 是非奇异阵时,通过同一时刻的一组观测就唯一确定了当时的状态,即 \[\bm{X}_{k}=\bm{B}_{k}^{-1}\bm{L}_{k}\] 在一定情况下,系统 (4-8-1) 式在 \(k\) 时刻具有能观性的充要条件是:存在正整数 \(N\),使 \[\operatorname{rk}(\bm{W}_{G})=m \tag{4-8-2}\] 其中 \(\bm{W}_{G}\) 是一个 \(N_{n}\times m\) 矩阵,即 \[\bm{W}_{G}=\begin{pmatrix} \bm{B}_{k}\\ \bm{B}_{k+1}\bm{\varPhi}_{k+1,k}\\ \vdots\\ \bm{B}_{k+N-1}\bm{\varPhi}_{k+N-1,k+N} \end{pmatrix} \tag{4-8-3}\] 以上充要条件也等价于: \[\bm{W}_{G}^{T}\bm{W}_{G}=\sum_{j=0}^{N-1}\bm{\varPhi}_{k+j,k}^{T}\bm{B}_{k+j}^{T}\bm{B}_{k+j}\bm{\varPhi}_{k+j,k}>0 \tag{4-8-4}\]\(\bm{W}_{G}^{T}\bm{W}_{G}\) 是对称正定阵。下面来证明之。

因为与 \(N\) 次观测相应的观测方程是 \[\left.\begin{aligned} \bm{L}_{k}&=\bm{B}_{k}\bm{X}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1} \end{aligned}\right\} \tag{4-8-5}\]\(\bm{X}_{k}\) 转移 \(\bm{X}_{i}\,(i=k,k+1,\cdots,k+N-1)\) 的表达式为 \[\bm{X}_{i}=\bm{\varPhi}_{i,k}\bm{X}_{k}+\sum_{j=k+1}^{i}\bm{\varPhi}_{i,j}\bm{\varPsi}_{j,j-1}\bm{U}_{j-1} \tag{4-8-6}\] 将它代入 (4-8-5) 式,得 \[\left.\begin{aligned} \bm{L}_{k}&=\bm{B}_{k}\bm{\varPhi}_{k,k}\bm{X}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{B}_{k+1}\bm{\varPhi}_{k+1,k+1}\bm{\varPsi}_{k+1,k}\bm{U}_{k}\\ &\cdots\\ \bm{L}_{k+N-1}&=\bm{B}_{k+N-1}\bm{\varPhi}_{k+N-1,k}\bm{X}_{k} +\sum_{j=k+1}^{k+N-1}\bm{B}_{k+N-1}\bm{\varPhi}_{k+N-1,j}\bm{\varPsi}_{j,j-1}\bm{U}_{j-1} \end{aligned}\right\} \tag{4-8-7}\] 式中 \(\bm{\varPhi}_{k,k}=\bm{\varPhi}_{k+1,k+1}=\bm{E}\),若记 \[\bm{Z}_{i}=\bm{L}_{i}-\sum_{j=i+1}^{i}\bm{B}_{i}\bm{\varPhi}_{i,j}\bm{\varPsi}_{j,j-1}\bm{U}_{j-1} \tag{4-8-8}\] 则 (4-8-7) 式可写为 \[\begin{pmatrix} \bm{B}_{k}\bm{\varPhi}_{k,k}\\ \bm{B}_{k+1}\bm{\varPhi}_{k+1,k}\\ \vdots\\ \bm{B}_{k+N-1}\bm{\varPhi}_{k+N-1,k} \end{pmatrix}\bm{X}_{k} =\begin{pmatrix} \bm{Z}_{k}\\ \bm{Z}_{k+1}\\ \vdots\\ \bm{Z}_{k+N-1} \end{pmatrix} \tag{4-8-9}\] 这是一个线性方程组。因为该方程组中的 \(\bm{X}_{k}\) 有唯一解的充要条件就是 \(\operatorname{rk}(\bm{W}_{G})=m\),因此,它也就是系统 (4-8-1) 具有能观性的充要条件。

补能观性充要条件 \(\operatorname{rk}(\bm{W}_{G})=m\) 的“方程个数 vs 未知量个数”逻辑。(4-8-7) 式把 \(N\) 次观测写成关于同一 \(\bm{X}_{k}\) 的联立方程。若 \(\bm{X}_{k}\) 有唯一解,则系数阵 \(\bm{W}_{G}\) 必须列满秩(秩等于未知量个数 \(m\)),这正是 (4-8-2)。等价条件 (4-8-4) 的依据是矩阵秩的性质:\(\operatorname{rk}(\bm{W}_{G}^{T}\bm{W}_{G})=\operatorname{rk}(\bm{W}_{G})\),而 \(\bm{W}_{G}^{T}\bm{W}_{G}\)\(m\times m\) 半正定阵,列满秩当且仅当它正定,故 (4-8-4) 的“\(>0\)”与 \(\operatorname{rk}(\bm{W}_{G})=m\) 完全等价。对定常系统 (4-8-10),可乘性使得 \(\bm{\varPhi}_{k+j,k}=\bm{\varPhi}^{j}\)、观测方程叠加后 \(\bm{W}_{G}\) 的各行恰为 \(\bm{B}\bm{\varPhi}^{i}\);由于 \(\bm{B}\bm{\varPhi}^{i}\)\(i\geq m\) 的项必可由前 \(m\) 项线性表出(由 \(\bm{\varPhi}\) 的 Cayley-Hamilton 定理),所以只取 \(i=0,\cdots,m-1\) 即可,这就是 (4-8-11) 式的由来。

对于定常线性系统 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}\bm{X}_{k}+\bm{\varPsi}\bm{U}_{k}\\ \bm{L}_{k+1}&=\bm{B}\bm{X}_{k+1} \end{aligned}\right\} \tag{4-8-10}\] 它具有能观性的充要条件是 \[\operatorname{rk}(\bm{W}_{G})=\operatorname{rk}\begin{pmatrix} \bm{B}\\ \bm{B}\bm{\varPhi}\\ \vdots\\ \bm{B}\bm{\varPhi}^{m-1} \end{pmatrix}=m \tag{4-8-11}\]

例 4-8-1

已知定常线性系统的动态方程和观测方程(理想状态)为 \[\left.\begin{aligned} \bm{X}_{k+1}&=\begin{bmatrix} -a_{3} & -a_{2} & a_{1}\\ a_{4} & 0 & 0\\ 0 & a_{5} & a_{6} \end{bmatrix}\bm{X}_{k}+\begin{bmatrix}1\\ 0\\ 0\end{bmatrix}\bm{U}_{k}\\ \bm{L}_{k+1}&=\begin{bmatrix}0&a_{7}&0\end{bmatrix}\bm{X}_{k+1}\quad(a_{7}\neq 0) \end{aligned}\right\}\] 试判别其能观性。

因为 \[\bm{W}_{G}=\begin{bmatrix}\bm{B}\\ \bm{B}\bm{\varPhi}\\ \bm{B}\bm{\varPhi}^{2}\end{bmatrix} =\begin{bmatrix} 0 & a_{7} & 0\\ a_{4}a_{7} & 0 & 0\\ -a_{3}a_{4}a_{7} & -a_{2}a_{4}a_{7} & a_{1}a_{4}a_{7} \end{bmatrix}\] 所以 \[\operatorname{rk}(\bm{W}_{G})=\operatorname{rk}\begin{bmatrix} 0 & a_{7} & 0\\ a_{4}a_{7} & 0 & 0\\ 0 & 0 & a_{1}a_{4}a_{7} \end{bmatrix} =\begin{cases} 1, & \text{当}\ a_{1}\neq 0,\ a_{4}=0,\\ 2, & \text{当}\ a_{1}=0,\ a_{4}\neq 0,\\ 3, & \text{当}\ a_{1}\neq 0,\ a_{4}\neq 0. \end{cases}\] 可见,只有当 \(a_{1}\neq 0\)\(a_{4}\neq 0\) 时,该系统才具有能观性。

离散系统的能控性

系统 (4-8-1) 具有能控性的定义是:如果对 \(k\) 时刻的给定状态 \(\bm{X}_{k}=\bm{X}^{*}\),存在某个正整数 \(N\),只要选取适当的控制序列 \(\bm{U}_{k},\bm{U}_{k+1},\cdots,\bm{U}_{k+N-1}\),就可以使 \(\bm{X}_{k+N}\) 达到零状态,则称状态 \(\bm{X}^{*}\)\(k\) 时刻是能控的;如果任意状态 \(\bm{X}_{k}\)\(k\) 时刻都能控,则称系统在 \(k\) 时刻是完全能控的;如果系统在时间定义域上的每一时刻都完全能控,则称该系统是一个完全能控的系统。

系统 (4-8-1) 在 \(k\) 时刻完全能控的充要条件是,存在正整数 \(N\),使 \[\operatorname{rk}(\bm{W}_{K})=m \tag{4-8-12}\] 式中 \[\bm{W}_{K}=\begin{bmatrix}\bm{\varPsi}_{k+N,k+N-1}&\vdots&\bm{\varPhi}_{k+N,k+N-1}\bm{\varPsi}_{k+N-1,k+N-2}&\vdots&\cdots&\vdots&\bm{\varPhi}_{k+N,k+1}\bm{\varPsi}_{k+1,k}\end{bmatrix} \tag{4-8-13}\] 现证明如下。

因为由 (4-8-1) 式可将 \(\bm{X}_{k+N}\) 表示为 \[\bm{X}_{k+N}=\bm{\varPhi}_{k+N,k}\bm{X}_{k}+\sum_{j=k+1}^{k+N}\bm{\varPhi}_{k+N,j}\bm{\varPsi}_{j,j-1}\bm{U}_{j-1} \tag{4-8-14}\] 根据能控性的定义,系统 (4-8-1) 的完全能控性,相当于对于任何 \(\bm{X}_{k}\),存在 \(N\),可以找到 \(\bm{U}_{k}\)\(\bm{U}_{k+1}\)\(\cdots\)\(\bm{U}_{k+N-1}\) 使 \(\bm{X}_{k+N}=0\)。即有 \[\sum_{j=k+1}^{k+N}\bm{\varPhi}_{k+N,j}\bm{\varPsi}_{j,j-1}\bm{U}_{j-1}+\bm{\varPhi}_{k+N}\bm{X}_{k}=0 \tag{4-8-15}\] 显然,对于给定的 \(\bm{X}_{k}\),序列 \(\bm{U}_{k},\bm{U}_{k+1},\cdots,\bm{U}_{k+N-1}\) 就是 (4-8-15) 这个线性方程组的解。将 (4-8-15) 式写为 \[\resizebox{\textwidth}{!}{$ \begin{bmatrix}\bm{\varPsi}_{k+N,k+N-1}&\vdots&\bm{\varPhi}_{k+N,k+N-1}\bm{\varPsi}_{k+N-1,k+N-2}&\vdots&\cdots&\vdots&\bm{\varPhi}_{k+N,k+1}\bm{\varPsi}_{k+1,k}\end{bmatrix} \begin{bmatrix}\bm{U}_{k+N-1}\\ \bm{U}_{k+N-2}\\ \vdots\\ \bm{U}_{k}\end{bmatrix} +\bm{\varPhi}_{k+N,k}\bm{X}_{k}=0$} \tag{4-8-16}\] 其系数阵就是 \(\bm{W}_{K}\)。因为线性方程组 (4-8-15) 中的 \(\bm{U}_{k},\bm{U}_{k+1},\cdots,\bm{U}_{k+N-1}\) 有唯一解的充要条件就是 \(\operatorname{rk}(\bm{W}_{K})=m\),且当 \(N\) 充分大时,总可使 \(\bm{W}_{K}\) 的列数等于它的行数 \(m\)。这就证明了 \(\operatorname{rk}(\bm{W}_{K})=m\) 是系统 (4-8-1) 具有能控性的充要条件。

又因为 \(\operatorname{rk}(\bm{W}_{K})=m\) 等价于 \(\bm{W}_{K}\bm{W}_{K}^{T}\) 正定,即等价于 \[\bm{W}_{K}\bm{W}_{K}^{T}=\sum_{j=1}^{N}\bm{\varPhi}_{k+N,k+j}\bm{\varPsi}_{k+j,k+j-1}\bm{\varPsi}_{k+j,k+j-1}^{T}\bm{\varPhi}_{k+N,k+j}^{T}>0 \tag{4-8-17}\] 故有时也以 (4-8-17) 式作为系统 (4-8-1) 具有完全能控性的充要条件。

对于定常系统 (4-8-10),它具有完全能控性的充要条件是 \[\operatorname{rk}(\bm{W}_{K})=\operatorname{rk}\begin{bmatrix}\bm{\varPsi}&\bm{\varPhi}\bm{\varPsi}&\bm{\varPhi}^{2}\bm{\varPsi}&\cdots&\bm{\varPhi}^{N-1}\bm{\varPsi}\end{bmatrix}=m \tag{4-8-18}\]

例 4-8-2

试判别 [例 4-8-1] 的线性系统的完全能控性。

因为 \[\bm{W}_{K}=\begin{bmatrix}\bm{\varPsi}&\bm{\varPhi}\bm{\varPsi}&\bm{\varPhi}^{2}\bm{\varPsi}\end{bmatrix} =\begin{bmatrix} 1 & -a_{3} & a_{3}^{2}-a_{2}a_{4}\\ 0 & a_{4} & -a_{3}a_{4}\\ 0 & 0 & a_{4}a_{5} \end{bmatrix}\] \[\operatorname{rk}(\bm{W}_{K})=\operatorname{rk}\begin{bmatrix} 1 & 0 & 0\\ 0 & a_{4} & 0\\ 0 & 0 & a_{4}a_{5} \end{bmatrix} =\begin{cases} 1, & \text{当}\ a_{4}=0,\\ 2, & \text{当}\ a_{5}=0,\ a_{4}\neq 0,\\ 3, & \text{当}\ a_{4}\neq 0,\ a_{5}\neq 0. \end{cases}\] 所以,只有当 \(a_{4}\neq 0\)\(a_{5}\neq 0\) 时,该系统才是完全能控的。结合例 4-8-1 的结论可知,只有当 \(a_{1}\neq 0\)\(a_{4}\neq 0\)\(a_{5}\neq 0\) 时,该系统才是完全能观和完全能控的系统。

连续线性系统的能观性和能控性

设理想状态下的连续线性系统为 \[\left.\begin{aligned} \dot{\bm{X}}(t)&=\bm{A}(t)\bm{X}(t)+\bm{C}(t)\bm{U}(t)\\ \bm{L}(t)&=\bm{B}(t)\bm{X}(t) \end{aligned}\right\} \tag{4-8-19}\] 这里给出它具有能观性和能控性的定义,并且不加证明地给出这种系统具有能观性和能控性的充要条件。

系统 (4-8-19) 具有能观性的定义是,在有限区间 \([t_{1},t_{2}]\) 内,如果通过观测值 \(\bm{L}(t)\),能够唯一地确定系统在 \(t_{1}\) 时刻的状态 \(\bm{X}(t_{1})\),就称该系统在 \(t_{1}\) 时刻是完全能观的。如果在任何时刻 \(t_{1}\) 都是完全能观的,则称该系统是完全能观的。

系统 (4-8-19) 具有完全能观性的充要条件是:对于时刻 \(t_{2}>t_{1}\),当对称矩阵 \[\bm{W}_{G}(t_{1},t_{2})=\int_{t_{1}}^{t_{2}}\bm{\varPhi}^{T}(t,t_{1})\bm{B}^{T}(t)\bm{B}(t)\,(\bm{\varPhi}t,t_{1})\,\mathrm{d}t \tag{4-8-20}\] 是满秩阵,即当 \[\operatorname{rk}\left[\bm{W}_{G}(t_{1},t_{2})\right]=m \tag{4-8-21}\] 时,系统 (4-8-19) 是完全能观的。

对于定常连续线性系统 \[\left.\begin{aligned} \dot{\bm{X}}(t)&=\bm{A}\bm{X}(t)+\bm{C}\bm{U}(t)\\ \bm{L}(t)&=\bm{B}\bm{X}(t) \end{aligned}\right\} \tag{4-8-22}\] 它具有完全能观性的充要条件是 \[\operatorname{rk}(\bm{W}_{G})=\operatorname{rk}\begin{pmatrix} \bm{B}\\ \bm{B}\bm{A}\\ \vdots\\ \bm{B}\bm{A}^{N-1} \end{pmatrix}=m \tag{4-8-23}\]

系统 (4-8-19) 具有能控性的定义是:对时刻 \(t_{1}\) 的任意状态 \(\bm{X}(t_{1})\),如果存在控制项 \(\bm{U}(t)\),在有限的区间 \([t_{1},t_{2}]\) 内,使得 \(\bm{X}(t_{2})=0\),则称该系统在 \(t_{1}\) 时刻是能控的。如果系统在任何时刻都是能控的,则称系统是完全能控的。

系统 (4-8-19) 完全能控的充要条件是:对于时刻 \(t_{2}>t_{1}\),当对称阵 \[\bm{W}_{K}(t_{1},t_{2})=\int_{t_{1}}^{t_{2}}\bm{\varPhi}(t_{1},t)\,\bm{C}(t)\,\bm{C}^{T}(t)\,\bm{\varPhi}^{T}(t_{1},t)\,\mathrm{d}t \tag{4-8-24}\] 是满秩阵,即当 \[\operatorname{rk}\left[\bm{W}_{K}(t_{1},t_{2})\right]=m \tag{4-8-25}\] 时,系统 (4-8-19) 是完全能控的。

对于定常连续系统 (4-8-22),它具有完全能控性的充要条件是 \[\operatorname{rk}(\bm{W}_{K})=\operatorname{rk}\begin{bmatrix}\bm{C}&\bm{A}\bm{C}&\bm{A}^{2}\bm{C}&\cdots&\bm{A}^{N-1}\bm{C}\end{bmatrix}=m \tag{4-8-26}\]

能观性判定的常见误区有两个。第一,不能只看单个 \(\bm{B}_{k}\) 是否满秩:即使每一时刻观测维数 \(n\) 都小于状态维数 \(m\)(测量不足),只要多步观测叠加后 \(\bm{W}_{G}\) 列满秩,系统仍能观——这正是例 4-8-1 中 \(a_{7}\neq0\)\(a_{4}\neq0\)\(a_{1}\neq0\)\(\operatorname{rk}(\bm{W}_{G})=3\) 的原因;反之,即使 \(n=m\),若 \(\bm{B}_{k}\) 奇异也照样不能观。第二,能观/能控是针对确定系统(无噪声)定义的概念,本节把动态噪声和观测噪声设为零正是为了排除随机干扰后看清“结构上到底能不能”。对随机系统,4-9 节会把 \(\bm{W}_{G}^{T}\bm{W}_{G}>0\) 换成加权观测噪声的 \(\bm{C}_{G}(k-N+1,k)>0\)((4-9-11) 式)——“一致完全能观/能控”才是滤波稳定性的前提。此外,能观性与第2章秩亏自由网平差的“基准不足导致法方程奇异”在思想上是相通的:观测信息不足时状态(参数)不可唯一确定。

本节能观性与能控性,与《最优估计基础》第4章 4.6 节“Kalman 滤波的稳定性”的开头部分(4.6.1“随机线性系统的可控性和可测性”)直接衔接:该书把“能观性”称为“可测性”、把“能控性”称为“可控性”,并给出随机系统的对应秩条件(该书 4.6 节式),可与本节 (4-8-2)、(4-8-12) 及 4-9 节 (4-9-11)、(4-9-13) 对照。另外,能观性矩阵 \(\bm{W}_{G}\) 列满秩的思想与第2章平差中“\(\bm{B}\) 列满秩、法方程 \(\bm{N}\) 可逆”(2-1-7 式)一脉相承;本节 (4-8-4) 的 \(\bm{W}_{G}^{T}\bm{W}_{G}>0\) 正定条件也类似于平差中 \(\bm{N}=\bm{B}^{T}\bm{P}\bm{B}\) 的正定性要求。

卡尔曼滤波的稳定性

在 4-3 节中推导卡尔曼滤波方程 (4-3-27) 时,曾假定初始状态 \(\bm{X}(0)\) 的均值 \(\bm{\mu}_{X}(0)\) 和方差阵 \(\bm{D}_{X}(0)\) 都是已知的,但在实际问题中,\(\bm{\mu}_{X}(0)\)\(\bm{D}_{X}(0)\) 一般是不准确的,甚至是完全不了解的。那么,所取的这种初始值的不准确性会对滤波的精度带来什么影响呢?本节将作出结论性的说明,如果对系统加上一定的要求,可以使得无论怎样选取初始值,只要递推时间充分长,就能保证其滤波值与最优滤波值任意接近,即在时间充分长之后,初始值的影响可以忽略。这就是滤波的稳定性问题。为叙述方便,我们仅介绍离散型卡尔曼滤波的稳定性。

稳定性问题的实质是“初值的影响会不会随时间消散”。滤波递推 (4-9-4) 被看成一个以 \(\bm{Y}_{k}\) 为输入、以 \(\hat{\bm{X}}(k/k)\) 为输出的线性系统:给定两个不同的初值 \(\hat{\bm{X}}_{1}(0)\neq\hat{\bm{X}}_{2}(0)\),若系统稳定,它们导致的滤波值之差在每步都保持有界((4-9-5));若渐近稳定,则这个差随 \(k\to\infty\) 趋于零((4-9-6))——即“无论初值怎么猜,猜错的影响最终被遗忘”。这与 4-3 节“初值要用先验均值、先验方差”的建议形成闭环:给得准当然好,但即使给不准,只要系统一致完全能观、能控,时间会替你“修正”初值误差。工程上这意味着滤波不必过分纠结初值,也解释了为何例 4-3-2 中 \(\hat{X}(0/0)=0\) 与真实 \(X_{0}=0\) 一致只是巧合、不必要。

滤波稳定性的概念

由 4-3 节导出的离散性卡尔曼滤波方程可得 \[\hat{\bm{X}}(k/k)=\left[\bm{E}-\bm{J}_{k}\bm{B}_{k}\right]\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/k-1) +\bm{J}_{k}(\bm{L}_{k}-\bm{Z}_{k})+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1} \tag{4-9-1}\] 若记 \[\bm{\varPhi}_{KC}(i,j)=(\bm{E}-\bm{J}_{i}\bm{B}_{i})\,\bm{\phi}_{i,j} \tag{4-9-2}\] \[\bm{Y}_{k}=\bm{J}_{k}(\bm{L}_{k}-\bm{Z}_{k})+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1} \tag{4-9-3}\] 则方程 (4-9-1) 可改写为 \[\hat{\bm{X}}(k/k)=\bm{\varPhi}_{KC}(k,k-1)\hat{\bm{X}}(k-1/k-1)+\bm{Y}_{k} \tag{4-9-4}\] 不难看到,卡尔曼滤波方程可以看成为一个线性系统,其中 \(\bm{Y}_{k}\) 就是它的输入项。

一般称 \(\bm{\varPhi}_{KC}(i,j)\) 为系统 (4-9-4) 的状态转移阵,而 \(\bm{\varPhi}_{kC}(k,k-1)\) 是它的一步转移阵。对于 \(\bm{\varPhi}_{KC}(i,j)\)\[\bm{\varPhi}_{KC}(i,j)= \begin{cases} \bm{E}, & i=j\\ \bm{\varPhi}_{KC}(i,i-1)\,\bm{\varPhi}_{KC}(i-1,i-2)\cdots\bm{\varPhi}_{KC}(j+1,j), & i>j\\ \bm{\varPhi}_{KC}^{-1}(j,i), & i<j \end{cases}\] \(\bm{\varPhi}_{KC}(i,j)\) 的可逆性由 (4-9-2) 式可以验证,因为该式中的 \(\bm{\varPhi}_{k,k-1}\) 是可逆阵,且 \((\bm{E}-\bm{J}_{k}\bm{B}_{k})\) 的逆阵也存在,即有 \[(\bm{E}-\bm{J}_{k}\bm{B}_{k})^{-1} =\bm{E}+\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k}\] 因此,讨论滤波方程稳定性问题就归结为讨论方程 (4-9-4) 的稳定性问题。

设初始状态有两个不同的初始值 \(\hat{\bm{X}}_{1}(0)\)\(\hat{\bm{X}}_{2}(0)\),相应的方差阵为 \(\bm{D}_{\hat{X}_{1}}(0)\)\(\bm{D}_{\hat{X}_{2}}(0)\),所得到的滤波值分别为 \(\hat{\bm{X}}_{1}(k)\)\(\hat{\bm{X}}_{2}(k)\),则有以下定义:

(1) 对于任意给定的 \(\varepsilon>0\),若存在相应的 \(\delta=\delta(\varepsilon)>0\),当 \(\|\hat{\bm{X}}_{1}(0)-\hat{\bm{X}}_{2}(0)\|<\delta\) 时,使得对一切 \(k=1,2,\cdots\) 均能保证 \[\|\hat{\bm{X}}_{1}(k)-\hat{\bm{X}}_{2}(k)\|<\varepsilon \tag{4-9-5}\] 则称系统 (4-9-4) 是稳定的。其中 \(\|\cdot\|\) 表示向量的范数,如 \(\|\bm{a}\|=\sqrt{\bm{a}^{T}\bm{a}}\)

(2) 如果系统 (4-9-4) 是稳定的,而且对于任何初始值 \(\hat{\bm{X}}_{1}(0)\)\(\hat{\bm{X}}_{2}(0)\) 均有 \[\lim_{k\rightarrow\infty}\|\hat{\bm{X}}_{1}(k)-\hat{\bm{X}}_{2}(k)\|=0, \tag{4-9-6}\] 则称系统 (4-9-4) 是渐近稳定的。

(3) 如果系统 (4-9-4) 是渐近稳定的,且当输入项 \(\bm{Y}_{k}\) 为有界量时,\(\hat{\bm{X}}(k)\) 必定也是有界量,则称此系统是一致渐近稳定的。

对于稳定的系统来说,只要初始值足够精确,就能保证以后的滤波值达到任意指定的精度。在实际应用中仅仅只有稳定性是不够的,渐近稳定的系统则具有更优的性质,即不论初始值有多大的偏差,只要滤波时间充分长,就能自行消除初始值偏差的影响,保证滤波值的准确性。而且有一致渐近稳定性的系统,在实际应用中才是有效的。

上述稳定性的定义是很直观的,它有以下充分必要条件。

(1) 系统是稳定的充要条件是:存在常数 \(c>0\),使得所有的 \(k>0\),均有 \[\|\bm{\varPhi}_{KC}(k,0)\|\leq c \tag{4-9-7}\]

(2) 系统是渐近稳定的充要条件是:当 \(k\rightarrow\infty\) 时,有 \[\lim_{k\rightarrow\infty}\|\bm{\varPhi}_{KC}(k,0)\|=0 \tag{4-9-8}\]

(3) 系统是一致渐近稳定的充要条件是:存在常数 \(c_{1}>0\)\(c_{2}>0\),使得对所有的 \(i\geq j>0\),有 \[\|\bm{\phi}_{KC}(i,j)\|\leq c_{2}e^{-c_{1}(i-j)} \tag{4-9-9}\] 上面的 \(\|\cdot\|\) 表示矩阵的范数,对于矩阵 \(\underset{m\times n}{\bm{A}}\)\[\|\bm{A}\|=\sqrt{\sum_{i=1}^{m}\sum_{j=1}^{n}|a_{ij}|^{2}}\] 由以上充要条件可见,系统 (4-9-4) 的稳定性取决于 \(\bm{\phi}_{KC}(k,k-1)\) 的性质。为了找出什么样的状态方程和观测方程所对应的滤波系统是稳定的,下面讨论随机系统的能观性和能控性。

补 (4-9-1) (4-9-4) 把滤波方程改写为线性系统的细节。由 (4-3-27)、(4-3-28) 代入一步预测公式 \(\hat{\bm{X}}(k/k-1)=\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/k-1)+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1}\),得 \[\hat{\bm{X}}(k/k)=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\bm{\varPhi}_{k,k-1}\hat{\bm{X}}(k-1/k-1) +\bm{J}_{k}(\bm{L}_{k}-\bm{Z}_{k})+\bm{\varPsi}_{k,k-1}\bm{U}_{k-1},\] 即 (4-9-1) 式。记 \(\bm{\varPhi}_{KC}(k,k-1)=(\bm{E}-\bm{J}_{k}\bm{B}_{k})\bm{\varPhi}_{k,k-1}\)((4-9-2) 式),并令 \(\bm{Y}_{k}\) 为不含状态的项((4-9-3) 式),即得 (4-9-4)。可见卡尔曼滤波器本身就是一个“闭环线性系统”,其转移阵 \(\bm{\varPhi}_{KC}\) 由“滤波增益修正后”的状态转移构成。关键点在 (4-9-2) 式旁的那个恒等式: \[(\bm{E}-\bm{J}_{k}\bm{B}_{k})^{-1}=\bm{E}+\bm{D}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}\bm{D}_{\Delta}^{-1}(k)\bm{B}_{k},\] 它由 4-3 节 (4-3-19) 的反演关系得到,保证 \(\bm{\varPhi}_{KC}(i,j)\)\(i<j\) 时按 (4-9-2) 的定义 \(\bm{\varPhi}_{KC}^{-1}(j,i)\) 也可逆——这是把“稳定性”问题化归为“研究 \(\bm{\varPhi}_{KC}\) 范数”的前提。

随机系统的能观性和能控性

在 4-8 节中讨论了确定系统的能观性和能控性的概念,这里仍讨论 4-3 节的随机系统,即 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-9-10}\] 式中 \(\bm{\varOmega}_{k}\)\(\bm{\Delta}_{k+1}\) 均为完全不相关的零均值白噪声序列,具有 4-3 节中所给出的随机模型。对于这种随机系统,其能观性的定义是:

对于离散随机系统 (4-9-10),如果对时刻 \(k\),存在正整数 \(N\),使得 \[\bm{C}_{G}(k-N+1,k)=\sum_{i=k-N+1}^{k}\bm{\varPhi}_{i,k}^{T}\bm{B}_{i}^{T}\bm{D}_{\Delta}^{-1}(i)\bm{B}_{i}\bm{\varPhi}_{i,k}>0 \tag{4-9-11}\] 则称该系统是完全能观的。而对于该系统,如果存在正整数 \(N\) 和与 \(k\) 无关的正整数 \(\alpha\)\(\beta\),使得对所有的 \(k\geq N\),有 \[0<\alpha\cdot\bm{E}\leq\bm{C}_{G}(k-N+1,k)<\beta\cdot\bm{E} \tag{4-9-12}\] 则称该系统是一致完全能观的。

离散随机系统 (4-9-10) 的能控性定义是:对于离散随机系统 (4-9-10),如果对时刻 \(k\),存在正整数 \(N\),使得 \[\bm{C}_{K}(k-N+1,k)=\sum_{i=k-N+1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{D}_{\varOmega}(i-1)\bm{\varGamma}_{i,i-1}^{T}\bm{\varPhi}_{k,i}^{T}>0 \tag{4-9-13}\] 则称该系统是完全能控的。而对于该系统,如果存在正整数 \(N\) 以及与 \(k\) 无关的正数 \(\alpha\)\(\beta\),使得所有的 \(k\geq N\),有 \[0<\alpha\cdot\bm{E}\leq\bm{C}_{K}(k-N+1,k)\leq\beta\cdot\bm{E} \tag{4-9-14}\] 则称该系统是一致能控的。

能观性的概念与状态方程、观测方程有关,从形式上看,随机系统能观性的定义式 (4-9-14) 与确定性系统能观性充要条件 (4-8-4) 相比较,(4-9-14) 式中仅多了 \(\bm{D}_{\Delta}^{-1}(i)\)。如果 \(\bm{C}_{G}(k-N+1,k)>0\),再令 \[\bm{X}^{*}(k)=\bm{C}_{G}^{-1}(k-N+1,k)\sum_{i=k-N+1}^{k}\bm{\varPhi}_{i,k}^{T}\bm{B}_{i}^{T}\bm{D}_{\Delta}^{-1}(i)\bm{L}_{i}\] 它是 \(N\) 组观测 \(\bm{L}_{k-N+1},\cdots,\bm{L}_{k-1},\bm{L}_{k}\) 的线性函数,其数学期望为 \[\begin{aligned} E[\bm{X}^{*}(k)]&=\bm{C}_{G}^{-1}(k-N+1,k)\sum_{i=k-N+1}^{k}\bm{\varPhi}_{i,k}^{T}\bm{B}_{i}^{T}\bm{D}_{\Delta}^{-1}(i)E(\bm{L}_{i})\\ &=\bm{C}_{G}^{-1}(k-N+1,k)\sum_{i=k-N+1}^{k}\bm{\varPhi}_{i,k}^{T}\bm{B}_{i}^{T}\bm{D}_{\Delta}^{-1}(i)E(\bm{B}_{i},\bm{X}_{i}) \end{aligned}\] 因为 \[\bm{X}_{i}=\bm{\varPhi}_{i,k}\bm{X}_{k}-\sum_{j=i+1}^{k}\bm{\varPhi}_{i,j}\bm{\varGamma}_{j,j-1}\bm{\varOmega}_{j-1}\] 所以 \[E[\bm{X}^{*}(k)]=\bm{C}_{G}^{-1}(k-N+1,k)\sum_{i=k-N+1}^{k}\bm{\varPhi}_{i,k}^{T}\bm{B}_{i}^{T}\bm{D}_{\Delta}^{-1}(i)\bm{B}_{i}\bm{\varPhi}_{i,k}E(\bm{X}_{k})=E(\bm{X}_{k})\] 可见,\(\bm{X}^{*}(k)\) 是状态 \(\bm{X}_{k}\) 基于观测值 \(\bm{L}_{k-N+1},\cdots,\bm{L}_{k-1},\bm{L}_{k}\) 的线性无偏估计。反过来可以验证,如果存在基于观测值 \(\bm{L}_{k-N+1},\cdots,\bm{L}_{k-1},\bm{L}_{k}\),而不依赖 \(\bm{X}_{k}\) 的验前知识的 \(\bm{X}_{k}\) 的线性无偏估计,则 \(\bm{C}_{k}(k-N+1,k)>0\)。也就是说,离散随机系统的完全能观性说明,基于 \(\bm{L}_{k-N+1},\cdots,\bm{L}_{k-1},\bm{L}_{k}\) 而不依赖于其验前知识的 \(\bm{X}_{k}\) 的线性无偏估计是存在的。

将系统的状态方程改写为 \[\bm{X}_{k}=\bm{\varPhi}_{k,k-N}\bm{X}_{k-N}+\sum_{i=k-N+1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{\varOmega}_{i-1}\] 则有 \[\begin{aligned} &E\left[(\bm{X}_{k}-\bm{\varPhi}_{k,k-N}\bm{X}_{k-N})\,(\bm{X}_{k}-\bm{\varPhi}_{k,k-N}\bm{X}_{k-N})^{T}\right]\\ ={}&E\left[\left(\sum_{i=k-N+1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{\varOmega}_{i-1}\right) \left(\sum_{i=k-N+1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{\varOmega}_{i-1}\right)^{T}\right]\\ ={}&\sum_{i=k-N+1}^{k}\bm{\varPhi}_{k,i}\bm{\varGamma}_{i,i-1}\bm{D}_{\varOmega}(i-1)\bm{\varGamma}_{i,i-1}^{T}\bm{\varPhi}_{k,i}^{T} =\bm{C}_{k}(k-N+1,k) \end{aligned}\] 如果所考虑的动态噪声序列是正态分布的,则 \(\bm{X}_{k}-\bm{\varPhi}_{k,k-N}\bm{X}_{k-N}\) 服从 \(m\) 维正态分布。当系统是完全能控时,其概率密度处处大于零,就说明从任意给定的状态 \(\bm{X}_{k-N}\) 出发,能够以正概率达到 \(k\) 时刻的任何状态 \(\bm{X}_{k}\)。当然,这也是确定性系统能控性概念的推广。

滤波误差方差阵的上、下界

对于具有一致完全能观性和一致完全能控性的线性系统 (4-9-10),它的滤波误差方差阵 \(\bm{D}_{\hat{X}}(k/k)\) 对于 \(k\) 有一致的有限上界和正定下界。也就是说,可以证明滤波误差方差阵具有以下性质:

(1) 设系统 (4-9-10) 为一致完全能观和一致完全能控,即 (4-9-12) 和 (4-9-14) 两式成立,则对于所有的 \(k\geq N\),有 \[\bm{D}_{\hat{X}}(k/k)\leq\frac{1+(m\beta)^{2}}{\alpha}\cdot\bm{E} \tag{4-9-15}\]

(2) 在以上条件下,如果初始方差阵 \(\bm{D}_{\hat{X}}(0)\) 是正定的,即 \(\bm{D}_{\hat{X}}(0)>0\),则对所有的 \(k\geq N\),有 \[\bm{D}_{\hat{X}}(k/k)\geq\frac{\alpha}{1+(m\beta)^{2}}\cdot\bm{E} \tag{4-9-16}\]

(3) 设系统 (4-9-10) 是一致完全能控的,即式 (4-9-14) 成立,则对于所有的 \(k\geq N\),恒有 \[\bm{D}_{\hat{X}}(k/k)>0 \tag{4-9-17}\] 性质 (3) 中去掉了性质 (2) 中的 \(\bm{D}_{\hat{X}}(0)>0\) 的限制。

将以上性质归结起来,可以得出结论:对于一致完全能观和一致完全能控的线性系统,它的滤波误差方差阵 \(\bm{D}_{\hat{X}}(k/k)\),当 \(k\geq N\) 时,恒满足不等式 \[\frac{\alpha}{1+(m\beta)^{2}}\cdot\bm{E}\leq\bm{D}_{\hat{X}}(k/k)<\frac{1+(m\beta)^{2}}{\alpha}\cdot\bm{E} \tag{4-9-18}\] 其中 \(N\) 为正整数,\(\alpha>0\)\(\beta>0\),由 (4-9-12) 和 (4-9-14) 两式给出。

滤波误差方差阵的上、下界的性质是这类线性系统的基本特性,也是证明滤波稳定性要用到的重要性质。

稳定性定理

这里只结论性地给出两个滤波稳定性定理。

定理一:设系统 (4-9-10) 是一致完全能观和一致完全能控的,则它的最优线性滤波系统 (4-9-4) 是一致渐近稳定的,即存在常数 \(c_{1}>0\)\(c_{2}>0\),使得对一切 \(i\geq j\geq 0\),有 \[\|\bm{\varPhi}_{KC}(i,j)\|\leq c_{2}e^{-c_{1}(i-j)}\] 这个定理表明,对于一致完全能观和一致完全能控的线性系统,当时间充分长以后,它的最优线性滤波值将渐近地不依赖于滤波初值的选取,而且有界的观测输入将得到有界的滤波输出。

定理二:在定理一的条件下,如果 \(\bm{D}_{\hat{X}}^{(1)}(0)\)\(\bm{D}_{\hat{X}}^{(2)}(0)\) 是两个不同的初始误差方差阵,则对于 \(k\) 时刻相应的滤波误差方差阵 \(\bm{D}_{\hat{X}}^{(1)}(k/k)\)\(\bm{D}_{\hat{X}}^{(2)}(k/k)\),存在常数 \(c_{3}>0\)\(c_{4}>0\),使得对一切 \(k\geq j>0\),有 \[\|\bm{D}_{\hat{X}}^{(2)}(k/k)-\bm{D}_{\hat{X}}^{(1)}(k/k)\| \leq c_{4}e^{-c_{3}(k-j)}\,\|\bm{D}_{\hat{X}}^{(2)}(j/j)-\bm{D}_{\hat{X}}^{(1)}(j/j)\|\] 上式表明,对于一致完全能观和一致完全能控的线性系统,当 \(k\rightarrow\infty\) 时,有 \[\|\bm{D}_{\hat{X}}^{(2)}(k/k)-\bm{D}_{\hat{X}}^{(1)}(k/k)\| \leq c_{4}e^{-c_{3}k}\,\|\bm{D}_{\hat{X}}^{(2)}(0)-\bm{D}_{\hat{X}}^{(1)}(0)\|\rightarrow 0\] 即当时间充分长以后,它的滤波误差方差阵也将渐近地不依赖于初始方差阵的选取。

定常系统的情形

如果线性系统 (4-9-10) 是定常系统,即设系统为 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}\bm{X}_{k}+\bm{\varGamma}\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}\bm{X}_{k+1}+\bm{\Delta}_{k} \end{aligned}\right\} \tag{4-9-19}\] 且设 \[\begin{gathered} \bm{D}_{\varOmega}(k)=\bm{D}_{\varOmega}>0\\ \bm{D}_{\Delta}(k)=\bm{D}_{\Delta}>0 \end{gathered}\] 容易看出,此时对于 \(k\geq N\),有 \[\begin{aligned} \bm{C}_{G}(k-N+1,k)&=\sum_{j=k-N+1}^{k}(\bm{\varPhi}^{j-k})^{T}\bm{B}^{T}\bm{D}_{\Delta}^{-1}\bm{B}\bm{\varPhi}^{j-k}\\ &=(\bm{\varPhi}^{-N+1})^{T}\sum_{i=0}^{N-1}(\bm{\varPhi}^{i})^{T}\bm{B}^{T}\bm{D}_{\Delta}^{-1}\bm{B}\bm{\varPhi}^{i}\,(\bm{\varPhi}^{-N+1}) \end{aligned}\] \[\begin{aligned} \bm{C}_{K}(k-N+1,k)&=\sum_{i=k-N+1}^{k}(\bm{\varPhi}^{k-i})\,\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}(\bm{\varPhi}^{k-i})^{T}\\ &=\sum_{i=0}^{N-1}(\bm{\varPhi}^{i})\,\bm{\varGamma}\bm{D}_{\varOmega}\bm{\varGamma}^{T}(\bm{\varPhi}^{i})^{T} \end{aligned} \tag{4-9-20}\] 可以证明,定常系统 (4-9-19) 的一致完全能观和一致完全能控的充分必要条件分别是 \[\sum_{i=0}^{m-1}(\bm{\varPhi}^{i})^{T}\bm{B}^{T}\bm{B}(\bm{\varPhi}^{i})>0 \tag{4-9-21}\] \[\sum_{i=0}^{m-1}(\bm{\varPhi}^{i})\,\bm{\varGamma}\bm{\varGamma}^{T}(\bm{\varPhi}^{i})^{T}>0 \tag{4-9-22}\] 式中 \(m\) 是状态的维数。

由此可知,对定常系统而言,一致完全能观性和一致完全能控性,分别与完全能观性、完全能控性是一样的。

定常系统的渐近性质还有以下定理:

定理三:对于完全能观和完全能控的定常线性系统 (4-9-19),存在唯一的正定阵 \(\bm{D}\) 和定常矩阵 \(\bm{J}\),使得从任意的初始方差阵 \(\bm{D}_{\hat{X}}(0)\) 出发,当 \(k\rightarrow\infty\) 时,恒有 \[\left.\begin{aligned} \lim_{k\rightarrow\infty}\bm{D}_{\hat{X}}(k/k)&=\bm{D}\\ \lim_{k\rightarrow\infty}\bm{J}_{k}&=\bm{J} \end{aligned}\right\} \tag{4-9-23}\]

由这个定理可知,对于完全能观和完全能控的定常线性系统,不论如何选取滤波初值,当时间充分长以后,它的滤波误差方差将趋于一个唯一确定的正定矩阵,从而它的增益阵也将趋于一个唯一确定的增益矩阵。这称为滤波达到稳态。定理还说明,一个渐近稳定的滤波系统,其估计误差方差既不会无限增大,也不会无限制地精确到零。所以,我们对于滤波的精度不可要求过高,也不必担心失之过大。

本节稳定性与《最优估计基础》第4章 4.6 节“Kalman 滤波的稳定性”全节对应:该书 4.6.1“随机线性系统的可控性和可测性”即本书 4-8 节的随机版(本书 (4-9-11)、(4-9-13)),4.6.2“Kalman 滤波的稳定性”即本节定理一、定理二,4.6.3“Kalman 滤波稳定的判别条件”即本节定常系统的 (4-9-21)、(4-9-22)。对照阅读时特别留意“一致完全能观/能控”这个条件在两书中都是稳定性的核心前提,形式完全一致。另外,“滤波误差方差阵上、下界”(4-9-18) 的结论直接服务于 4-10 节模型误差分析中的“\(\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\) 有一致上界”论证,两节连读更能体会稳定性作为滤波“基石”的作用。

稳定性的四个结论要与实际使用习惯对照,防止误用。第一,定理的条件是“一致完全能观且一致完全能控”;如果系统缺其一(例如 \(\bm{D}_{\varOmega}(k)\) 恒为零、某方向状态不可控,或 \(\bm{D}_{\Delta}\) 的设置使 (4-9-11) 不满秩),初值影响就不一定能被遗忘,滤波长期结果仍可能带初值偏差。第二,稳定只保证“初值误差被遗忘”,不保证“模型误差被遗忘”——若系统模型本身不准确(4-10 节),滤波值将收敛到错误的系统状态,这与 4-11 节发散现象有本质区别(发散是方差与实际误差脱节)。第三,定理三的“稳态 \(\bm{D}\)\(\bm{J}\)”是 \(\bm{D}_{X}(0)\)\(\bm{D}_{\varOmega}\)\(\bm{D}_{\Delta}\) 的函数:噪声统计取法不同,稳态增益也不同,故稳态值本身不能说明“滤波准不准”,只能说“不再随时间变”。第四,初值方差 \(\bm{D}_{X}(0)\) 若取得过小,会造成暂时的“过度自信”,增益 \(\bm{J}_{k}\) 偏小、初期滤波值收敛慢——这仍属初值影响范畴,稳定系统最终会纠正,但收敛速度由 \(\bm{\varPhi}_{KC}\) 的谱半径((4-9-9) 中的 \(c_{1}\))决定,不能凭直觉外推。

模型误差分析

在讨论卡尔曼滤波的性质时,一般都认为系统的数学模型是完全正确的。但实际工作中将具体问题模型化时,往往由于对问题的本质认识不足,或由于为了简化计算而包含某些近似,使得所采用的模型与实际情况存在差别,这种差别就称为模型误差。显然,模型误差对任何具体问题都是存在的,因此,分析模型误差对滤波所产生的影响是非常必要的。

模型误差的实质是“用错误的模型算滤波,会得到错误的自信”。设真实系统是 (4-10-1),而滤波用的是近似模型 (4-10-3)(\(\overline{\bm{\varPhi}}\)\(\overline{\bm{D}}_{\varOmega}\) 等带有上划线的量),那么按近似模型递推出的 \(\overline{\bm{D}}_{\hat{X}}(k/k)\) 只是“相对近似模型的误差方差”,既不是真实滤波误差方差,也不是实际均方误差——这就是 (4-10-5) (4-10-9) 后面的那段说明。一个立刻会浮现的问题是“那算出来的方差还能不能用?”本节的回答是:可以,但要有方向——把 \(\overline{\bm{D}}_{\varOmega}\)\(\overline{\bm{D}}_{\Delta}\) 取得保守偏大((4-10-12) 后文的“保险值”),则计算方差阵会偏大、真实均方误差偏小,即“按公式报出的方差给真实误差留了余量”。这与 4-3 节“噪声阵决定增益、决定滤波行为”的结论一脉相承。

设有实际的离散系统为 \[\left.\begin{aligned} \bm{X}_{k+1}&=\bm{\varPhi}_{k+1,k}\bm{X}_{k}+\bm{U}_{k}+\bm{\varGamma}_{k+1,k}\bm{\varOmega}_{k}\\ \bm{L}_{k+1}&=\bm{B}_{k+1}\bm{X}_{k+1}+\bm{\Delta}_{k+1} \end{aligned}\right\} \tag{4-10-1}\] 其中 \[\left.\begin{aligned} &E(\bm{\varOmega}_{k})=\bm{0},\quad E(\bm{\Delta}_{k})=\bm{0},\quad E(\bm{X}_{0})=\bm{\mu}_{X}(0),\\ &\operatorname{cov}(\bm{\varOmega}_{k},\bm{\varOmega}_{j})=\bm{D}_{\varOmega}(k)\delta_{kj},\quad \operatorname{cov}(\bm{\Delta}_{k},\bm{\Delta}_{j})=\bm{D}_{\Delta}(k)\delta_{kj}\\ &\operatorname{var}(\bm{X}_{0})=\bm{D}_{X}(0),\quad \operatorname{cov}(\bm{\varOmega}_{k},\bm{\Delta}_{j})=\bm{0},\\ &\operatorname{cov}(\bm{X}_{0},\bm{\varOmega}_{k})=\bm{0},\quad \operatorname{cov}(\bm{X}_{0},\bm{\Delta}_{k})=\bm{0} \end{aligned}\right\} \tag{4-10-2}\] 但在滤波时,将它模型化为 \[\left.\begin{aligned} \overline{\bm{X}}_{k+1}&=\overline{\bm{\varPhi}}_{k+1,k}\overline{\bm{X}}_{k}+\overline{\bm{U}}_{k}+\overline{\bm{\varGamma}}_{k+1,k}\overline{\bm{\varOmega}}_{k}\\ \bm{L}_{k+1}&=\overline{\bm{B}}_{k+1}\overline{\bm{X}}_{k+1}+\overline{\bm{\Delta}}_{k+1} \end{aligned}\right\} \tag{4-10-3}\] 而其中 \[\left.\begin{aligned} &E(\overline{\bm{\varOmega}}_{k})=\bm{0},\quad E(\overline{\bm{\Delta}}_{k})=\bm{0},\ E(\overline{\bm{X}}_{0})=\overline{\bm{\mu}_{X}}(0)\\ &\operatorname{cov}(\overline{\bm{\varOmega}}_{k},\overline{\bm{\varOmega}}_{j})=\overline{\bm{D}}_{\varOmega}(k)\delta_{kj},\quad \operatorname{cov}(\overline{\bm{\Delta}}_{k},\overline{\bm{\Delta}}_{j})=\overline{\bm{D}}_{\Delta}(k)\delta_{kj}\\ &\operatorname{var}(\overline{\bm{X}}_{0})=\overline{\bm{D}}_{X}(0),\quad \operatorname{cov}(\overline{\bm{\varOmega}}_{k},\overline{\bm{\Delta}}_{j})=\bm{0}\\ &\operatorname{cov}(\overline{\bm{X}}_{0},\overline{\bm{\Delta}}_{k})=\bm{0},\quad \operatorname{cov}(\overline{\bm{X}}_{0},\overline{\bm{\varOmega}}_{k})=\bm{0} \end{aligned}\right\} \tag{4-10-4}\] 当采用模型 (4-10-3) 进行卡尔曼滤波时,其相应的滤波方程是 \[\hat{\overline{\bm{X}}}(k/k)=\hat{\overline{\bm{X}}}(k/k-1) +\overline{\bm{J}}_{k}\left[\bm{L}_{k}-\overline{\bm{B}}_{k}\hat{\overline{\bm{X}}}(k/k-1)\right] \tag{4-10-5}\] \[\overline{\bm{D}}_{\hat{X}}(k/k)=(\bm{E}-\overline{\bm{J}}_{k}\overline{\bm{B}}_{k})\,\overline{\bm{D}}_{\hat{X}}(k/k-1) \tag{4-10-6}\] \[\left.\begin{aligned} \hat{\overline{\bm{X}}}(k/k-1)&=\overline{\bm{\varPhi}}_{k,k-1}\hat{\overline{\bm{X}}}(k-1/k-1)+\overline{\bm{U}}_{k-1}\\ \overline{\bm{D}}_{\hat{X}}(k/k-1)&=\overline{\bm{\varPhi}}_{k,k-1}\overline{\bm{D}}_{\hat{X}}(k-1/k-1)\overline{\bm{\varPhi}}_{k,k-1}^{T} +\overline{\bm{\varGamma}}_{k,k-1}\overline{\bm{D}}_{\varOmega}(k-1)\overline{\bm{\varGamma}}_{k,k-1}^{T}\\ \overline{\bm{J}}_{k}&=\overline{\bm{D}}_{\hat{X}}(k/k-1)\overline{\bm{B}}_{k}^{T} \left[\overline{\bm{B}}_{k}\bm{D}_{\hat{X}}(k/k-1)\overline{\bm{B}}_{k}^{T}+\overline{\bm{D}}_{\Delta}(k)\right]^{-1} \end{aligned}\right\} \tag{4-10-7}\]\[\hat{\overline{\bm{X}}}(k/k)=\overline{\bm{D}}_{\hat{X}}(k/k) \left[\overline{\bm{D}}_{\hat{X}}^{-1}(k/k-1)\hat{\overline{\bm{X}}}(k/k-1) +\overline{\bm{B}}_{k}^{T}\overline{\bm{D}}_{\Delta}^{-1}(k)\bm{L}_{k}\right] \tag{4-10-8}\] \[\overline{\bm{D}}_{\hat{X}}(k/k)=\left[\overline{\bm{D}}_{\hat{X}}^{-1}(k/k-1) +\overline{\bm{B}}_{k}^{T}\overline{\bm{D}}_{\Delta}^{-1}(k)\overline{\bm{B}}_{k}\right]^{-1} \tag{4-10-9}\] 不难理解,按 (4-10-5) 或 (4-10-8) 式求得的 \(\hat{\overline{\bm{X}}}(k/k)\) 不是真实的最优滤波值,而由 (4-10-6) 或 (4-10-9) 式求得的 \(\overline{\bm{D}}_{\hat{X}}(k/k)\) 即不是 \(\bm{X}_{k}\) 的真实滤波值的误差方差阵,也不是 \(\hat{\overline{\bm{X}}}(k/k)\) 的实际均方误差阵。当然,可以导出计算 \(\hat{\overline{\bm{X}}}(k/k)\) 的实际均方误差阵的递推公式,但这些公式实际上是不能用于具体计算的,因为问题的真正模型并不知道。

这里考虑两种较简单的情况。

\(\bm{D}_{X}(0)\)\(\bm{D}_{\varOmega}(k)\)\(\bm{D}_{\Delta}(k)\) 有误差的情况

当初始状态的方差阵 \(\bm{D}_{X}(0)\)、动态噪声和观测噪声的方差阵 \(\bm{D}_{\varOmega}(k)\) \(\bm{D}_{\Delta}(k)\) 有误差时,(4-10-5)   (4-10-7) 式可写为 \[\hat{\overline{\bm{X}}}(k/k)=\hat{\overline{\bm{X}}}(k/k-1) +\overline{\bm{J}}_{k}\left[\bm{L}_{k}-\bm{B}_{k}\hat{\overline{\bm{X}}}(k/k-1)\right] \tag{4-10-10}\] \[\overline{\bm{D}}_{\hat{X}}(k/k)=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\,\overline{\bm{D}}_{\hat{X}}(k/k-1) \tag{4-10-11}\] \[\left.\begin{aligned} \hat{\overline{\bm{X}}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\hat{\overline{\bm{X}}}(k-1/k-1)+\bm{U}_{k}\\ \overline{\bm{D}}_{\hat{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\overline{\bm{D}}_{\hat{X}}(k-1/k-1) +\bm{\varGamma}_{k,k-1}\overline{\bm{D}}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T}\\ \overline{\bm{J}}_{k}&=\overline{\bm{D}}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T} \left[\bm{B}_{k}\overline{\bm{D}}_{\hat{X}}(k/k-1)\bm{B}_{k}^{T}+\overline{\bm{D}}_{\Delta}(k)\right]^{-1} \end{aligned}\right\} \tag{4-10-12}\]\(\hat{\overline{\bm{X}}}(k/k)\)\(\hat{\overline{\bm{X}}}(k/k-1)\)实际均方误差阵应为 \[\left.\begin{aligned} \hat{\overline{\bm{D}}}_{\hat{X}}(k/k)&=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\,\hat{\overline{\bm{D}}}_{\hat{X}}(k/k-1)\\ \hat{\overline{\bm{D}}}_{\hat{X}}(k/k-1)&=\bm{\varPhi}_{k,k-1}\hat{\overline{\bm{D}}}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T} +\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T} \end{aligned}\right\} \tag{4-10-13}\] 现令 \[\left.\begin{aligned} \Delta\bm{D}_{\hat{X}}(k/k)&=\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)-\overline{\bm{D}}_{\hat{X}}(k/k)\\ \Delta\bm{D}_{\hat{X}}(k/k-1)&=\hat{\overline{\bm{D}}}_{\hat{X}}(k/k-1)-\overline{\bm{D}}_{\hat{X}}(k/k-1) \end{aligned}\right\} \tag{4-10-14}\] 则由 (4-10-10)   (4-10-13) 式可得 \[\Delta\bm{D}_{\hat{X}}(k/k)=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\,\Delta\bm{D}_{\hat{X}}(k/k-1)\,(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})^{T} \tag{4-10-15}\] \[\begin{aligned} \Delta\bm{D}_{\hat{X}}(k/k-1)={}&\bm{\varPhi}_{k,k-1}\Delta\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T}+{}\\ &\bm{\varGamma}_{k,k-1}\left[\bm{D}_{\varOmega}(k-1)-\overline{\bm{D}}_{\varOmega}(k-1)\right]\bm{\varGamma}_{k,k-1}^{T} \end{aligned} \tag{4-10-16}\]

补 (4-10-15) (4-10-16) 的来历。记号约定:\(\overline{\bm{D}}_{\hat{X}}\) 表示按近似模型 (4-10-3) 递推计算出的方差阵,\(\hat{\overline{\bm{D}}}_{\hat{X}}\) 表示把真实噪声方差 \(\bm{D}_{\varOmega}\)\(\bm{D}_{\Delta}\) 代入同一个近似滤波结构后得到的“实际均方误差阵”,两者之差 \(\Delta\bm{D}_{\hat{X}}=\hat{\overline{\bm{D}}}_{\hat{X}}-\overline{\bm{D}}_{\hat{X}}\) 就是噪声统计设错造成的方差偏差。把 (4-10-11) 与 (4-10-13) 第一式相减:由于二者共享同一系数阵 \((\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\)(增益用近似统计算,故相同),得 \[\Delta\bm{D}_{\hat{X}}(k/k)=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\,\Delta\bm{D}_{\hat{X}}(k/k-1)\,(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})^{T},\] 即 (4-10-15)。再把 (4-10-12) 与 (4-10-13) 第二式相减:\(\bm{\varPhi}\)\(\bm{\varGamma}\) 两侧均相同,只有噪声方差项不同,得 \[\Delta\bm{D}_{\hat{X}}(k/k-1)=\bm{\varPhi}_{k,k-1}\Delta\bm{D}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T} +\bm{\varGamma}_{k,k-1}\left[\bm{D}_{\varOmega}(k-1)-\overline{\bm{D}}_{\varOmega}(k-1)\right]\bm{\varGamma}_{k,k-1}^{T},\] 即 (4-10-16)。由 (4-10-15) 可见 \(\Delta\bm{D}_{\hat{X}}(k/k)\) 是正定半正定阵的递推叠加:只要 \(\overline{\bm{D}}_{\varOmega}\geq\bm{D}_{\varOmega}\),注入项非负,从而“计算方差 ≥ 实际均方误差”成立,这就是保险值方法的数学依据。

由上两式可见,如果在选取 \(\overline{\bm{D}}_{\varOmega}(k)\)\(\overline{\bm{D}}_{\Delta}(k)\) 时,采用保险的办法,使得 \[\begin{gathered} \overline{\bm{D}}_{\varOmega}(k)\geq\bm{D}_{\varOmega}(k)\\ \overline{\bm{D}}_{\Delta}(k)\geq\bm{D}_{\Delta}(k) \end{gathered}\] 则对于一切 \(k>0\),有 \(\overline{\bm{D}}_{\hat{X}}(k/k)\geq\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\)

可以看到,对于某些实际问题,虽然不能确定真实的 \(\bm{D}_{X}(0)\)\(\bm{D}_{\varOmega}(k)\)\(\bm{D}_{\Delta}(k)\),但在滤波时,可以采用它们的保险值。这样,滤波值的真实均方误差阵必然小于计算得到的误差方差阵。

“保险值”策略要警惕两把双刃剑。第一,\(\overline{\bm{D}}_{\varOmega}\)\(\overline{\bm{D}}_{\Delta}\) 取大只会保证“计算方差 ≥ 实际均方误差”,即方差上限可靠;但它同时会使增益 \(\overline{\bm{J}}_{k}\) 偏大(观测被过度信任)或偏小(观测被低估),滤波值的精度并不因此变好,只是“报出的误差更有余量”。第二,本节的结论依赖 4-9 节的一致完全能观、能控条件:若系统本身不可观/不可控,(4-10-17) 的 \(\overline{\bm{D}}_{\hat{X}}(k/k)\leq r\bm{E}\) 不成立,“\(\hat{\overline{\bm{D}}}_{\hat{X}}\) 一致有界”的结论也随之失效。第三,(4-10-18) (4-10-21) 讨论 \(\bm{U}_{k}\) 也有误差的情形:\(\Delta\bm{U}_{k-1}=\bm{U}_{k-1}-\overline{\bm{U}}_{k-1}\) 作为“确定性偏差”出现在均方误差阵的 \(\Delta\bm{U}_{k-1}\Delta\bm{U}_{k-1}^{T}\) 项里,它不会随滤波步数消失(若 \(\Delta\bm{U}\) 恒定,该项恒定叠加),这正是 4-11 节发散现象的直接诱因之一。

此外,若还设系统 (4-10-3) 是一致完全可观和一致完全可控的,则由 4-9 节可知,存在常数 \(r>0\),使得对所有的 \(k\),有 \[\overline{\bm{D}}_{\hat{X}}(k/k)\leq r\cdot\bm{E}\] 所以,对于我们所讨论的这种情况有 \[\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\leq\overline{\bm{D}}_{\hat{X}}(k/k)\leq r\cdot\bm{E} \tag{4-10-17}\]\(\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\) 有一致的上界。

\(\bm{D}_{X}(0)\)\(\bm{D}_{\varOmega}(k)\)\(\bm{D}_{\Delta}(k)\)\(\bm{U}_{k}\) 存在误差的情况

非随机项 \(\overline{\bm{U}}_{k}\) 的不准确,一般是由于忽略模型的非线性等原因所产生的。此时,由 (4-10-5) 式可得 \(\hat{\overline{\bm{X}}}(k/k)\)\(\hat{\overline{\bm{X}}}(k/k-1)\) 的估计误差为 \[\widetilde{\overline{\bm{X}}}(k/k)=\bm{X}_{k}-\hat{\overline{\bm{X}}}(k/k) =(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k}^{T})\,\widetilde{\overline{\bm{X}}}(k/k-1)-\overline{\bm{J}}_{k}\Delta k \tag{4-10-18}\] \[\begin{aligned} \widetilde{\overline{\bm{X}}}(k/k-1)&=\bm{X}_{k}-\hat{\overline{\bm{X}}}(k/k-1) =\bm{\varPhi}_{k,k-1}\widetilde{\overline{\bm{X}}}(k-1/k-1)+{}\\ &\quad\Delta\bm{U}_{k-1}+\bm{\varGamma}_{k,k-1}\bm{\varOmega}_{k-1} \end{aligned} \tag{4-10-19}\] 式中 \(\Delta\bm{U}_{k-1}=\bm{U}_{k-1}-\overline{\bm{U}}_{k-1}\)。相应的均方误差阵 (4-10-6) 为 \[\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\,\hat{\overline{\bm{D}}}_{\hat{X}}(k/k-1)\,(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})^{T} +\overline{\bm{J}}_{k}\bm{D}_{\Delta}(k)\,\overline{\bm{J}}_{k}^{T} \tag{4-10-20}\] \[\hat{\overline{\bm{D}}}_{\hat{X}}(k/k-1)=\bm{\varPhi}_{k,k-1}\hat{\overline{\bm{D}}}_{\hat{X}}(k-1/k-1)\bm{\varPhi}_{k,k-1}^{T} +\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T}+\Delta\bm{U}_{k-1}\Delta\bm{U}_{k-1}^{T} \tag{4-10-21}\] 假定系统 (4-10-3) 是一致完全能观和一致完全能控的,且设 \[\bm{F}_{k}=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k}) \left[\bm{\varGamma}_{k,k-1}\bm{D}_{\varOmega}(k-1)\bm{\varGamma}_{k,k-1}^{T}+\Delta\bm{U}_{k-1}\Delta\bm{U}_{k-1}^{T}\right] +\overline{\bm{J}}_{k}\bm{D}_{\Delta}(k)\,\overline{\bm{J}_{k}^{T}}\] 有一致的上界,则由 4-9 节的稳定性定理已知,对于 \[\overline{\bm{\varPhi}}_{KC}(k,k-1)=(\bm{E}-\overline{\bm{J}}_{k}\bm{B}_{k})\,\bm{\phi}_{k,k-1}\] 存在常数 \(c_{1}>0\)\(_{2}>0\),使得一切 \(i\geq j\geq 0\),有 \[\|\overline{\bm{\varPhi}}_{KC}(i,j)\|\leq c_{2}e^{-c_{1}(i-j)} \tag{4-10-22}\] 将 (4-10-20) 式写为 \[\begin{aligned} \hat{\overline{\bm{D}}}_{\hat{X}}(k/k)&=\overline{\bm{\varPhi}}_{KC}(k,k-1)\,\hat{\overline{\bm{D}}}_{\hat{X}}(k-1/k-1)\,\overline{\bm{\varPhi}}_{KC}^{T}(k,k-1)+\bm{F}_{k}\\ &=\overline{\bm{\varPhi}}_{KC}(k,0)\,\bm{D}_{\hat{X}}(0)\,\overline{\bm{\varPhi}}_{KC}(k,0) +\sum_{i=1}^{k}\overline{\bm{\varPhi}}(k,i)\bm{F}_{i} \end{aligned} \tag{4-10-23}\] 设存在常数 \(c>0\),对一切 \(k\)\(\|\bm{F}_{k}\|\leq c\),则由上式可得 \[\begin{aligned} \hat{\overline{\bm{D}}}_{\hat{X}}(k/k)&\leq\|\overline{\bm{\varPhi}}_{KC}(k,0)\|^{2}\,\|\bm{D}_{\hat{X}}(0)\| +\sum_{i=1}^{k}\|\bm{\varPhi}_{KC}(k,i)\|^{2}\,\|\bm{F}_{i}\|\\ &\leq\|\bm{D}_{\hat{X}}(0)\|\,c_{2}^{2}e^{2c_{1}k}+cc_{2}\sum_{i=1}^{k}e^{-2c_{1}(k-i)}\\ &\leq\|\bm{D}_{\hat{X}}(0)\|\,c_{2}^{2}+cc_{2}^{2}/(1-e^{-2c_{1}}) \end{aligned}\] 于是可得结论:对于 \(\bm{D}_{\hat{X}}(0)\)\(\bm{D}_{\varOmega}(k)\)\(\bm{D}_{\Delta}(k)\)\(\bm{U}_{k}\) 有误差的情况,若系统 (4-10-3) 是一致完全能观和一致完全能控的,且 \(\bm{F}_{k}\) 有一致的上界,则 \(\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\) 也有一致的上界。

还可以证明,对于所考虑的情况,如果系统 (4-10-3) 是一致完全能观和一致完全能控的,\(\|\Delta\bm{U}_{k}\|\) 有一致的上界,且存在常数 \(c_{4}>0\)\(c_{5}>0\),使得对一切 \(k\),有 \[\bm{D}_{\varOmega}(k)<c_{4}\overline{\bm{D}}_{\varOmega}(k),\qquad \bm{D}_{\Delta}(k)<c_{5}\overline{\bm{D}}_{\Delta}(k)\] 则滤波的真正均方误差阵 \(\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\) 必有一致的上界。

由此可见,在滤波时,为了防止由于模型不准确而使 \(\hat{\overline{\bm{D}}}_{\hat{X}}(k/k)\) 无上界,即防止出现发散现象,可以根据这个结论来适当选择 \(\overline{\bm{D}}_{\varOmega}(k)\)\(\overline{\bm{D}}_{\Delta}(k)\),并使模型化的系统具有一致完全能观性和一致完全能控性,这是一个很基本的手段。

本节“模型误差分析”是《最优估计基础》第4章的补充内容(该书 4.6 节末也简要提到滤波精度与噪声统计的关系)。本节反复使用 4-9 节的“一致完全能观/能控 ⇒ 方差阵一致有界”定理((4-10-17)、(4-10-22)),是稳定性理论在“模型不准确”场景下的直接应用;同时本节结论又为 4-11 节发散现象与克服方法提供了理论根由——4-11 节的例(气球上升)正是一个“忽略 \(\alpha\) 导致模型误差”的实例。对照阅读时注意:4-10 节讲“噪声统计与模型结构设错的影响”,4-11 节讲“这种影响在工程上表现为发散及补救措施”,两节连读构成“误差分析—发散—克服”的完整链条。而“保险值”思想与《最优估计基础》中关于噪声方差阵取值要“宁大勿小”的工程建议也一致。

滤波的发散现象和克服发散的方法

从理论上讲,随着观测数据的增加,滤波应该得到更精确的状态估计。但是,在实际应用中有时会发现,滤波得到的状态估计与实际状态之间的误差,远远超出了按公式计算的范围;也就是说,按公式计算的误差方差阵可以逐渐地趋于零,而实际的估计误差却可以趋于无穷大。这种现象称为滤波的发散现象。显然,当滤波发散时,滤波就失去了它的最佳作用,因此,在实际应用中必须克服这种现象。

发散的本质是“计算方差与实际误差脱节”:按 (4-3-27) 递推的 \(\bm{D}_{\hat{X}}(k/k)\) 只反映“模型假设下”的估计质量,它随观测积累而收缩(例中 \(\overline{D}_{\hat{X}}(k/k)=\overline{\sigma_{\varDelta}^{2}}/k\to 0\)),看起来越来越准;但如果模型本身错了(气球例中把上升 \(X_{k+1}=X_{k}+a\) 错当静止 \(X_{k+1}=X_{k}\)),未被模型容纳的真实变化 \(a\) 会让实际误差 \(\widetilde{\overline{X}}(k/k)\)\(k\) 线性增长((4-11-6) 中的 \(\frac{1}{2}\alpha(k-1)\) 项)。滤波越“相信”已缩小的方差、增益 \(\overline{J}_{k}\sim 1/k\) 越来越小,新观测就越难纠正偏差,形成数据饱和——这正是三种克服方法(限定下界、扩充状态、渐消记忆)共同的靶心:要么不让增益降得过低(限定下界),要么把被忽略的量补进模型(扩充状态),要么人为放大历史方差以抬高增益(渐消记忆)。

引起滤波发散的主要原因是:

(1) 由于对具体问题的物理过程了解得不准确,从而使物理系统的数学模型与实际过程不能较好的符合;或者虽然对物理过程了解得比较好,但其数学模型极为复杂(例如是非线性模型或状态维数过高),在简化数学模型时(如线性化或降维处理)时带来模型误差。

(2) 对于动态噪声或观测噪声的统计性质缺乏了解,因而取得不合适。

(3) 由于递推计算是在有穷字长的数字计算机上实现的,每步都有舍入误差,可能使所计算的误差方差阵逐渐失去正定性或对称性,造成计算值与理论值之间的偏差越来越大。

现用一个例子来说明发散现象。

在利用卡尔曼滤波方法估计气球以恒定速度 \(a\) 上升的高度,此时的实际状态方程和观测方程应为 \[\left.\begin{aligned} X_{k+1}&=X_{k}+a\\ L_{k+1}&=X_{k+1}+\varDelta_{k+1} \end{aligned}\right\} \tag{4-11-1}\] 式中 \(X_{k}\) 表示气球的高度。现在忽略了气球上升的速度,而采用了气球为静止时的状态方程,将状态方程和观测方程取为 \[\left.\begin{aligned} \overline{X}_{k+1}&=\overline{X}_{k}\\ L_{k+1}&=\overline{X}_{k+1}+\overline{\varDelta}_{k+1} \end{aligned}\right\} \tag{4-11-2}\] 且假设了 \(\overline{\varDelta}_{k}\) 为零均值白噪声序列,即设 \[E(\overline{\varDelta}_{k})=0,\quad \operatorname{cov}(\overline{\varDelta}_{k},\overline{\varDelta}_{j})=\overline{\sigma_{\varDelta}^{2}}\delta_{kj}\] 并设 \[\begin{gathered} E(\overline{X}_{0})=\mu_{X}(0),\quad \operatorname{var}(X_{0})=\overline{D}_{X}(0)\\ \operatorname{cov}(\overline{X}_{0},\overline{\varDelta}_{k})=0,\quad \overline{D}_{\varOmega}(k)=0 \end{gathered}\] 根据滤波方程可以解得 \[\left.\begin{aligned} \hat{\overline{X}}(k/k)&=\frac{\overline{\sigma_{\varDelta}^{2}}}{\sigma_{\varDelta}^{2}+k\overline{D}_{X}(0)}\mu_{X}(0) +\frac{\overline{D}_{X}(0)}{\sigma_{\varDelta}^{2}+k\overline{D}_{X}(0)}\sum_{i=1}^{k}L_{i}\\ \overline{D}_{\hat{X}}(k/k)&=\frac{\overline{D}_{X}(0)\,\overline{\sigma_{\varDelta}^{2}}}{\sigma_{\varDelta}^{2}+k\overline{D}_{X}(0)} =\frac{\overline{\sigma_{\varDelta}^{2}}}{\dfrac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}+k}\\ \overline{J}_{k}&=\frac{\overline{D}_{X}(0)}{\overline{\sigma_{\varDelta}^{2}}+K\overline{D}_{X}(0)} =\frac{\overline{\sigma_{\varDelta}^{2}}}{\dfrac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}+k} \end{aligned}\right\} \tag{4-11-3}\] 因为由 (4-11-1) 式可知 \[L_{k}=X_{K-1}+a+\varDelta_{k}=X_{0}+ka+\varDelta_{k}\] 所以有 \[\hat{\overline{X}}(k/k)=\frac{\overline{\sigma_{\varDelta}^{2}}}{\sigma_{\varDelta}^{2}+k\overline{D}_{X}(0)}\mu_{X}(0) +\frac{\overline{D}_{X}(0)}{\sigma_{\varDelta}^{2}+k\overline{D}_{X}(0)} \left[kX_{0}+\frac{1}{2}k(k+1)\alpha+\sum_{i=1}^{k}\varDelta_{i}\right] \tag{4-11-4}\] 又由于气球的真实高度是 \[X_{k}=X_{k-1}+\alpha=X_{0}+k\alpha\]\(\hat{\overline{X}}(k/k)\) 的实际估计误差为 \[\begin{aligned} \widetilde{\overline{X}}(k/k)&=X_{k}-\hat{\overline{X}}(k/k)\\ &=\frac{1}{\dfrac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}+k} \left\{\frac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}\left[X_{0}-\mu_{X}(0)+k\alpha\right] +\frac{1}{2}\alpha k(k-1)-\sum_{i=1}^{k}\varDelta_{i}\right\} \end{aligned} \tag{4-11-5}\] 若设 \(\overline{D}_{X}(0)=\infty\),即设初始状态的先验统计性质未知,则实际的估计误差为 \[\widetilde{\overline{X}}(k/k)=\frac{1}{2}\alpha(k-1)-\frac{1}{k}\sum_{i=1}^{k}\varDelta_{i} \tag{4-11-6}\]

补 (4-11-5) 到 (4-11-6) 的极限过程。记 \(S_{k}=\dfrac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}+k\)。(4-11-5) 式当 \(\overline{D}_{X}(0)\to\infty\) 时,\(S_{k}\to k\),而分子中 \(\dfrac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}[X_{0}-\mu_{X}(0)+k\alpha]\to 0\),故 \[\widetilde{\overline{X}}(k/k)=\frac{1}{k}\left[\frac{1}{2}\alpha k(k-1)-\sum_{i=1}^{k}\varDelta_{i}\right] =\frac{1}{2}\alpha(k-1)-\frac{1}{k}\sum_{i=1}^{k}\varDelta_{i},\] 即 (4-11-6) 式。第一项 \(\frac{1}{2}\alpha(k-1)\)模型系统性偏差(被忽略的上升速度随 \(k\) 线性累积),第二项是噪声均值项,由大数定律其方差约 \(\sigma_{\varDelta}^{2}/k\to 0\)。于是实际均方误差 (4-11-7):\(E[\widetilde{\overline{X}}^{2}]=\frac{\alpha^{2}}{4}(k-1)^{2}+\frac{1}{k}\sigma_{\varDelta}^{2}\)(交叉项 \(\frac{1}{2}\alpha(k-1)\cdot\frac{1}{k}\sum\varDelta_{i}\)\(E(\varDelta_{i})=0\) 而消失),第一项随 \(k^{2}\) 增长——发散的直接数学证据。对照 (4-11-3) 中计算方差 \(\overline{D}_{\hat{X}}(k/k)\sim 1/k\) 与 (4-11-7) 实际误差 \(\sim k^{2}\),两者背道而驰正是“发散”的定义。

而它的均方误差为 \[\hat{\overline{D}}_{\hat{X}}(k/k)=E\left[\widetilde{\overline{X}}(k/k)\,\widetilde{\overline{X}}^{T}(k/k)\right] =\frac{\alpha^{2}}{4}(k-1)^{2}+\frac{1}{k}\sigma_{\varDelta}^{2} \tag{4-11-7}\] 式中 \(\sigma_{\varDelta}^{2}\) 是实际观测误差 \(\varDelta_{k}\) 的方差。

由 (4-11-3) 和 (4-11-7) 式可以看到,当 \(\overline{D}_{X}(0)=\infty\) 时,按滤波公式算得的 \(\overline{D}_{\hat{X}}(k/k)=\dfrac{\overline{\sigma_{\varDelta}^{2}}}{k}\) 随着 \(k\) 的增加而减小;但实际的均方误差 \(\overline{D}_{\hat{X}}(k/k)\) 却随着 \(k\) 的增大而增大,直至无穷,即滤波是发散的。而且,即使没有完全忽略 \(\alpha\),而只是取得不精确,也会出现发散现象。

判定与应对发散有三个容易踩的坑。第一,发散≠方差阵变大:恰好相反,发散时按公式计算的 \(\overline{D}_{\hat{X}}(k/k)\) 还在不断缩小((4-11-3)),判据应是“计算方差与实际误差严重不一致”——工程上常用新息(残差)检验:若 \([L_{k}-B_{k}\hat{X}(k/k-1)]\) 的实际统计量持续超出其理论方差,就应怀疑发散。第二,三种补救方法各有代价:限定下界法((4-11-8))使滤波不再是最小方差最优,且 \(M\) 的可行范围很窄((4-11-14):\(1<M<1+\sigma_{\varDelta}/\alpha\)),只有被忽略量 \(\alpha\) 显著小于噪声 \(\sigma_{\varDelta}\) 时才适用;扩充状态法把 \(\alpha\) 设为状态,其合理与否取决于 \(\sigma_{\xi}\) 的选取((4-11-16)),\(\sigma_{\xi}\) 选得过大则状态被噪声污染、过小则又趋近忽略 \(\alpha\)。第三,渐消记忆滤波((4-11-18) (4-11-19))通过给历史方差乘上 \(e^{c_{i}}>1\) 的因子抬高增益、加大新观测权重,但 \(c_{i}\) 若选得过大,会把噪声也当成信号,精度反而下降——这些“参数”都需结合实际试算。

下面根据引起滤波发散的原因来讨论克服发散现象的几种方法。

(1) 限定下界法

由上面的例子可知,引起滤波发散的一个直接原因,是 \(\overline{D}_{\hat{X}}(k/k)\) 随着 \(k\) 的增加而很快的减小,并趋于零,且 (4-11-3) 式中的增益阵 \(\overline{J}_{k}\) 也随着 \(k\) 的增加而迅速变小,使得新得到的观测数据的作用越来越小,从而产生数据饱和现象,使滤波发散。

根据引起发散的这个原因,可得到一种克服这类发散现象的方法,就是强制地使增益阵 \(\overline{J}_{k}\) 在过了一定时间之后不再下降,称为限定下界法

例如,在上面的例子中,取一个适当的正数 \(M\),使得当 \(k>M\) 时,新的增益阵 \(\overline{J_{k}^{*}}\) 不再下降,即令 \[\overline{J_{k}^{*}}= \begin{cases} 1\left/\left[\dfrac{\overline{\sigma_{\varDelta}^{2}}}{\overline{D}_{X}(0)}+k\right]\right., & k\leq M\\[14pt] \dfrac{1}{M}, & k>M \end{cases} \tag{4-11-8}\]\(\overline{D}_{X}(0)=\infty\),则令 \[\overline{J_{k}^{*}}= \begin{cases} \dfrac{1}{k}, & k\leq M\\[10pt] \dfrac{1}{M}, & k>M \end{cases} \tag{4-11-9}\] 此时,可得新的滤波值为 \[\hat{\overline{X}}^{*}(k/k)=(E-\overline{J_{k}^{*}})\,\hat{\overline{X}}^{*}(k-1/k-1)+\overline{J_{k}^{*}}L_{k} \tag{4-11-10}\] 如果初始状态 \(\hat{X}(0)=0\),则得 \[\hat{\overline{X}}^{*}(k/k)=\sum_{i=1}^{k-1}(E-\overline{J_{k}^{*}})\,(E-\overline{J_{k-1}^{*}})\cdots(E-\overline{J_{i+1}^{*}})\,\overline{J_{i}^{*}}L_{i} +\overline{J_{k}^{*}}L_{k} \tag{4-11-11}\] 可以导出它的均方误差为 \[\hat{\overline{D}}_{\hat{X}}^{*}(k/k)=(M-1)^{2}\left[1-\frac{1}{2}\left(1-\frac{1}{M}\right)^{k-M}\right]^{2}\alpha^{2} +\frac{\sigma_{\varDelta}^{2}}{2M-1}\left[1+\left(1-\frac{1}{M}\right)^{2(k-M)+1}\right] \tag{4-11-12}\]\(k\rightarrow\infty\) 时,有 \[\lim_{k\rightarrow\infty}\hat{\overline{D}}_{\hat{X}}^{*}(k/k)=(M-1)^{2}\alpha^{2}+\frac{\sigma_{\varDelta}^{2}}{2M-1} \tag{4-11-13}\] 这就克服了发散现象。显然,这种滤波方法并不是最佳的。为了起到真正的滤波作用,必须使滤波值的均方误差小于观测噪声的方差,即应选取 \(M>0\),使得它满足 \[(M-1)^{2}\alpha^{2}+\frac{\sigma_{\varDelta}^{2}}{2M-1}<\sigma_{\varDelta}^{2}\] 因此,\(M\) 只能在下列范围内选取 \[1<M<1+\frac{\sigma_{\varDelta}}{\alpha} \tag{4-11-14}\] 可见,只有当被忽略的 \(\alpha\) 显著地小于 \(\sigma_{\varDelta}\) 时,这个方法才有实用意义。

(2) 扩充状态法(状态增广法

将状态方程中被忽略的未知部分(如以上例子中的 \(\alpha\))看做是一种状态,将它扩充到原有的状态向量中,如在例中取 \[\alpha_{k+1}=\alpha_{k}+\xi_{k} \tag{4-11-15}\] 在式中设 \(\xi_{k}\) 为零均值白噪声序列,即设 \[\left.\begin{aligned} E(\xi_{k})&=0\\ \operatorname{cov}(\xi_{k},\xi_{j})&=\sigma_{\xi}^{2}\delta_{kj} \end{aligned}\right\} \tag{4-11-16}\] 再将原来的状态表示为 \(X_{k}^{\prime}\),令扩充后的状态向量为 \(X_{k}=\begin{bmatrix}X_{k}^{\prime}&\alpha_{k}\end{bmatrix}^{T}\),则扩充后的状态方程和观测方程为 \[\left.\begin{aligned} X_{k+1}^{*}&=\begin{bmatrix}1&1\\ 0&1\end{bmatrix}X_{k}+\begin{bmatrix}0\\ 1\end{bmatrix}\xi_{k}\\ L_{k+1}&=\begin{bmatrix}1&0\end{bmatrix}X_{k+1}+\Delta k \end{aligned}\right\} \tag{4-11-17}\] 这样,问题就转化为如何适当地选择 \(\sigma_{\xi}\),才使滤波不发散。因为此时有(\(m=2\)): \[\begin{gathered} \sum_{i=0}^{m-1}(\bm{\varPhi}^{2})\,\bm{\varGamma}\bm{\varGamma}^{T}(\bm{\varPhi}^{i})^{T} =\begin{bmatrix}1&1\\ 1&2\end{bmatrix}>0\\ \sum_{i=0}^{m-1}(\bm{\varPhi}^{2})^{T}\bm{B}^{T}\bm{B}(\bm{\varPhi}^{i}) =\begin{bmatrix}2&1\\ 1&1\end{bmatrix}>0 \end{gathered}\] 所以,以上系统是一致完全能控和一致完全能观的,故其滤波的误差方差阵有一致的上界,即不会发散。

(3) 渐消记忆滤波

为了消除模型误差所引起的滤波发散现象,还可以设法加大新观测数据的作用,而相对地减小过老数据对滤波的影响。为了达到这个目的,可以采用将以前的 \(D_{X}(0)\)\(D_{\varOmega}(k)\)\(D_{\Delta}(k)\) 适当地逐渐加大的办法。

考虑线性系统模型 \[\left.\begin{aligned} X_{k+1}&=\bm{\varPhi}_{k+1,k}X_{k}+\bm{\varGamma}_{k+1,k}\varOmega_{k}\\ L_{k+1}&=B_{k+1}X_{k+1}+\varDelta_{k+1} \end{aligned}\right\} \tag{4-11-18}\] 其随机模型也与 4-3 节相同。为了加大新观测数据的作用,我们可以将初始状态的方差阵 \(D_{X}(0)\) 换为 \(\exp\left(\sum\limits_{i=1}^{N-1}c_{i}\right)D_{X}(0)\),将动态噪声的方差阵 \(D_{\varOmega}(0)\)\(D_{\varOmega}(1)\)\(\cdots\)\(D_{\varOmega}(N-1)\) 换为 \(\exp\left(\sum\limits_{i=1}^{N-1}c_{i}\right)\cdot D_{\varOmega}(0)\)\(\exp\left(\sum\limits_{i=2}^{N-1}c_{i}\right)\cdot D_{\varOmega}(1)\)\(\cdots\)\(e^{c_{N-1}}D_{\varOmega}(N-2)\)\(D_{\varOmega}(N-1)\),而将观测噪声的方差阵 \(D_{\Delta}(1)\)\(D_{\Delta}(2)\)\(\cdots\)\(D_{\Delta}(N)\) 换为 \(\exp\left(\sum\limits_{i=1}^{N-1}c_{i}\right)\cdot D_{\Delta}(1)\)\(\exp\left(\sum\limits_{i=2}^{N-1}c_{i}\right)D_{\Delta}(2)\)\(\cdots\)\(e^{c_{N-1}}D_{\Delta}(N-1)\)\(D_{\Delta}(N)\)。这种代换也相当于给出一个新的模型 \[\left.\begin{aligned} X_{k+1}^{*}&=\bm{\varPhi}_{k+1,k}X_{k}^{*}+\bm{\varGamma}_{k+1,k}\varOmega_{k}^{*}\\ L_{k+1}&=B_{k+1}X_{k+1}^{*}+\varDelta_{k+1}^{*} \end{aligned}\right\} \tag{4-11-19}\] 不难证明,模型 (4-11-19) 在 \(N\) 时刻的滤波值就是模型 (4-11-18) 在 \(N\) 时刻的渐消记忆滤波。可以看到,对于 \(k\leq N\) 的每一步计算,由于一步预测值 \(\hat{X}^{*}(k/k-1)\) 的误差方差阵 \(D_{X}^{*}(k/k-1)\) 表示式的第一项乘上了一个大于 1 的因子 \(e^{c_{N-1}}\),因此 \(\hat{X}^{*}(k/k)\) 的误差方差阵 \(D_{X}^{*}(k/k)\) 也增大了,从而使每步的增益阵 \(J_{k}^{*}\) 也增大了,这就加大了每次新观测数据 \(L_{k}\) 的作用。至于常数 \(c_{i}\) 到底如何选择,则要根据具体情况决定。

(4) 限定记忆滤波

为了消除“太老”数据对现时状态估计的影响,在求 \(X_{k}\) 的滤波值 \(\hat{X}(k/k)\) 时,只利用 \(k\) 时刻的前 \(N\) 个时刻的观测数据 \(L_{k-N+1}\)\(L_{k-N+2}\)\(\cdots\)\(L_{k}\),而把其余的数据全部去掉,这里的 \(N\) 是根据具体对象选定的记忆长度,通常称这种方法为限定记忆滤波。

(5) 自适应滤波

所谓自适应滤波,就是在利用观测数据进行滤波时,不断地对未知的或不确切知道的模型参数以及噪声的统计性质进行估计和修正,以减少模型误差。因此,它也是克服滤波发散的途径之一。自适应滤波是一个需要专门论述的课题,这里就不讨论了。

本节发散现象与克服方法是《最优估计基础》第4章较少展开的内容(该书 4.6 节只在稳定性框架下涉及“初值影响”,未系统讨论模型误差导致的发散)。它与本书 4-10 节构成“理论原因—工程对策”的闭环:4-10 节证明“模型误差会导致实际均方误差无上界”,4-11 节的例 4-11-1(气球匀速上升被误建模为静止)正是该理论的实例化。第2章 2-3 节递推最小二乘在“静态、无动态噪声”的意义下同样可能遇到“数据饱和”——当参数不再变化时旧数据与新数据等权导致增益衰减,因此渐消记忆、限定记忆思想在静态递推平差中同样适用(对应秩亏自由网平差中的病态处理思路)。若需深入了解自适应滤波,可参考《最优估计基础》附录中关于噪声统计估计的内容。