# 非线性卡尔曼滤波器SPKF

标准卡尔曼滤波器主要设计用于线性系统,针对非线性系统开发了状态估计的升级版本,包括EKF扩展卡尔曼滤波器和UKF无迹卡尔曼滤波器。由于许多现实世界的系统无法用线性模型来描述,因此这些非线性估计技术在许多现实世界的应用中发挥着重要作用。

# EKF

虽然标准卡尔曼滤波器是一种强大的估计工具,但当估计的系统是非线性时,其算法开始崩溃。幸运的是,标准卡尔曼滤波器的一个版本,称为扩展卡尔曼滤波器 (EKF),已扩展到非线性系统,并依赖于线性化来估计这些非线性系统。线性化的工作原理是,在选定工作点周围的一小部分,非线性函数可以近似为线性函数。该线性化函数可以使用方程所示的泰勒级数展开式中的一阶项从非线性函数导出。

使用这种线性化方法,EKF 将遵循与标准卡尔曼滤波器相同的传播和更新过程,但对标准方程进行一些修改。在传播步骤中,状态向量不是使用第 2.8 节中的方程 5,而是通过评估最新状态估计的非线性系统模型方程来估计,如方程所示。此外,在状态协方差矩阵传播中,状态转移矩阵被替换为矩阵,该矩阵 F 是包含非线性系统模型方程的一阶偏导数的雅可比矩阵。

中提供的最新状态估计进行评估。每个更新方程中的测量模型矩阵也被替换为包含非线性测量模型方程的一阶偏导数的

尽管 EKF 可以成为估计非线性系统状态的强大工具,但其使用存在一些限制。EKF 的设计方式是为了最优地更新状态向量和状态协方差矩阵,假设状态协方差矩阵位于线性化的线性区域内。然而,如果状态协方差矩阵中的不确定性变得大于该线性区域的大小,则状态协方差矩阵不再能够准确地反映系统中的实际误差,并且可能会发生发散。通常,EKF 最适合具有足够测量值以保持状态不确定性相对较低的应用。

# UKF

虽然 EKF 对于大多数非线性系统都适用,但在某些情况下 EKF 不太适合,例如系统非线性程度很高或可观测性较差。在这些特定系统中,无迹卡尔曼滤波器 (UKF) 可以提供更可靠的估计。

UKF 通过仔细选择多个点(称为西格玛点)来估计非线性系统,这些点充分描述了状态向量和相关的不确定性。然后这些西格玛点通过非线性方程传播,以估计下一个状态向量和相关的不确定性。

尽管此估计过程不太容易出现发散,但 UKF 确实需要相当高的计算效率来计算西格玛点并将其传播到非线性系统。对于具有较大状态向量的系统尤其如此,需要计算和传播大量西格玛点。FDIsystems 通过创新的设计改进了UKF,开发了一种可以抗野值保证不确定性矩阵正定性来保证系统健壮性的非线性自适应滤波器,所有FDISYSTEMS旗下导航产品均使用了改融合引擎。