扩展卡尔曼滤波公式

扩展卡尔曼滤波公式

1 前言

在上文《卡尔曼滤波公式及其推导》中,提到了卡尔曼滤波算法适用于线性离散系统。当系统是非线性离散系统时,就需要扩展卡尔曼滤波算法 (Extended Kalman Filter) 对系统状态进行最优估计。

其主要思想是将非线性系统进行线性化,引入雅可比矩阵。

假设非线性离散系统的状态空间方程如下:

{ X ( k + 1 ) = f ( X ( k ) , u ( k ) ) + v ( k ) Y ( k ) = h ( X ( k ) ) + w ( k ) (1.1) \left\{ \begin{aligned} X(k+1) &= f\left(X(k), u(k)\right) + v(k) \\ Y(k) &= h\left(X(k)\right) + w(k) \tag{1.1} \end{aligned} \right. { X(k+1)Y(k)=f(X(k),u(k))+v(k)=h(X(k))+w(k)(1.1)

式中, f ( ⋅ ) f(\cdot) f() 为状态方程, h ( ⋅ ) h(\cdot) h() 为输出方程。 X ( k ) X(k) X(k) k k k 时刻的系统状态, u ( k ) u(k) u(k) k k k 时刻的系统输入, Y ( k ) Y(k) Y(k) k k k 时刻的系统输出,即系统的观测值。 v ( k ) v(k) v(k) 是过程噪声,服从均值为 0 0 0 ,方差为 Q k Q_k Qk 的高斯分布; w ( k ) w(k) w(k) 是传感器测量噪声,服从均值为 0 0 0 ,方差为 R k R_k Rk 的高斯分布。 v ( k ) v(k) v(k) w ( k ) w(k) w(k) 相互独立。 Q k Q_k Q

卡尔曼滤波是一种用于估计系统状态的递归滤波器。它通过结合系统动态模型和观测数据来提供对状态的最优估计。下面是卡尔曼滤波的公式推导过程: 1. 系统模型: 状态方程:x_k = F_k * x_{k-1} + B_k * u_k + w_k 观测方程:z_k = H_k * x_k + v_k 其中,x_k表示系统在时间步k时的状态向量,u_k表示控制输入,z_k表示观测向量。 F_k是状态转移矩阵,描述系统状态从时间步k-1到时间步k的演化关系。 B_k是控制输入矩阵,描述控制输入对系统状态的影响。 w_k是系统过程噪声,假设其均值为0,协方差矩阵为Q_k。 H_k是观测矩阵,描述观测向量与系统状态之间的关系。 v_k是观测噪声,假设其均值为0,协方差矩阵为R_k。 2. 预测步骤(时间更新): 根据上一时刻的状态估计x_{k-1}和控制输入u_{k-1},通过状态转移矩阵F_k和控制输入矩阵B_k进行状态预测: x_{k}^- = F_k * x_{k-1} + B_k * u_{k-1} 同时,计算预测误差协方差矩阵P_{k}^-: P_{k}^- = F_k * P_{k-1} * F_k^T + Q_k 3. 更新步骤(测量更新): 根据当前观测向量z_k,通过观测矩阵H_k对预测状态进行观测估计: y_k = z_k - H_k * x_{k}^- 计算观测残差协方差矩阵S_k: S_k = H_k * P_{k}^- * H_k^T + R_k 计算卡尔曼增益K_k: K_k = P_{k}^- * H_k^T * S_k^{-1} 更新状态估计值: x_{k} = x_{k}^- + K_k * y_k 更新误差协方差矩阵: P_{k} = (I - K_k * H_k) * P_{k}^- 其中,^-表示预测值,而没有^-表示更新值。 以上就是卡尔曼滤波的公式推导过程。通过递归地进行预测和更新步骤,卡尔曼滤波能够对系统状态进行最优估计。请注意,以上推导过程是基于线性系统和高斯噪声的情况,对于非线性系统还需要进行扩展,例如使用扩展卡尔曼滤波(Extended Kalman Filter)或无迹卡尔曼滤波(Unscented Kalman Filter)等方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值