Papers
Topics
Authors
Recent
2000 character limit reached

Multiplicative Extended Kalman Filter (MEKF)

Updated 10 January 2026
  • Multiplicative Extended Kalman Filter is a nonlinear state estimation technique on SO(3)/SE(3) that employs multiplicative corrections to preserve group structure and avoid over-parameterization.
  • It separates the global state on a nonlinear manifold from a minimal local error state, using local linearization and retraction to update estimates accurately.
  • MEKF is widely used in high-precision applications like satellite attitude determination and robotic pose tracking, demonstrating superior estimation accuracy and robust convergence.

The multiplicative extended Kalman filter (MEKF) is a nonlinear stochastic filtering framework specifically tailored for state estimation on matrix Lie groups, with particular emphasis on attitude and pose estimation on SO(3) or SE(3) manifolds. Unlike the standard additive formulation, the MEKF employs a local, group-theoretic parameterization of error and updates the global state estimate via a multiplicative correction. This approach ensures consistency with the group structure, maintains constraints such as unit norm for quaternions or orthogonality for rotation matrices, and avoids the pitfalls of over-parameterization and error accumulation associated with naive additive updates. MEKF is the de facto standard in high-precision applications such as satellite attitude determination, robotic pose tracking with scan matching, and inertial navigation systems.

1. Mathematical Structure and State Representation

The MEKF’s fundamental principle is to separate the global state, which evolves on a nonlinear manifold (e.g., rotation group SO(3), pose group SE(3)), from a minimal, Euclidean local error state used internally by the filter’s correction step. For attitude estimation, the global state is typically given as a quaternion qR4q \in \mathbb{R}^4 (q=1\|q\|=1) or rotation matrix RSO(3)R \in SO(3). The filter maintains:

  • Nominal (reference) state: q^\hat{q} or R^\hat{R}, representing the best current estimate.
  • Local error state: A small-angle vector δθR3\delta\theta \in \mathbb{R}^3 or corresponding small error quaternion δq\delta q. The true state is related to the nominal state via

qtrue=δqq^q^\mathrm{true} = \delta q \otimes \hat{q}

or for rotation matrices,

Rtrue=R^expS(δγ)R^\mathrm{true} = \hat{R} \exp S(\delta\gamma)

where S()S(\cdot) denotes the 3×33\times3 skew-symmetric matrix mapping and δγ\delta\gamma is a small vector.

For pose estimation, the MEKF is extended to SE(3), with the state X=(R,p)X=(R,p), comprising both orientation and position, adopting multiplicative errors for orientation and additive errors for position. The error state is then stacked as [δγ;δp][\delta\gamma;\delta p] with appropriate parameterization (Barczyk et al., 2015).

In systems with slowly-varying instrument biases (e.g., gyroscope bias), the error state is further augmented:

x=[δθ δb]x = \begin{bmatrix} \delta\theta \ \delta b \end{bmatrix}

2. Propagation (Prediction) Step

Continuous-Time Dynamics

MEKF propagates the global state using the system’s true nonlinear kinematics:

  • For attitude: q˙=12Ω(ω)q\dot{q} = \frac{1}{2}\Omega(\omega) q (quaternion), R˙=RS(ω)\dot{R} = R S(\omega) (rotation matrix).
  • For pose: R˙=RS(ω)\dot{R} = R S(\omega); p˙=Rμ\dot{p} = R \mu (linear velocity in the body frame) (Barczyk et al., 2015).

Input measurements are modeled with additive bias and noise:

ωm=ω+b+ηω,b˙=ηb\omega_{m} = \omega + b + \eta_\omega, \quad \dot{b} = \eta_b

with ηω\eta_\omega, ηb\eta_b being zero-mean, white Gaussian processes.

Local Error-State Linearization

Linearization is performed about the nominal state, yielding system matrices FF and GG for the small error state. For attitude and bias estimation:

δx˙=Fδx+Gw\dot{\delta x} = F\delta x + G w

where

F=[[ωmb^]×I3 03×303×3],G=[I303×3 03×3I3]F = \begin{bmatrix} -[\omega_m - \hat{b}]_\times & -I_3 \ 0_{3\times3} & 0_{3\times3} \end{bmatrix}, \qquad G = \begin{bmatrix} -I_3 & 0_{3\times3} \ 0_{3\times3} & I_3 \end{bmatrix}

and w=[ηω ηb]w = \begin{bmatrix} \eta_\omega \ \eta_b \end{bmatrix} (Takátsy et al., 2021, Chang, 2017).

For discretization, the state transition and process-noise covariances are computed via matrix exponentiation or first-order approximations:

Φk=I+FΔt,Qkdiscrete noise covariance\Phi_k = I + F\Delta t, \quad Q_k \simeq \text{discrete noise covariance}

with specific formulae for bias and rate noise structures (Takátsy et al., 2021).

3. Multiplicative Measurement Update

Upon new sensor data arrival (e.g., vector observations or scan-matching pose corrections), the innovation relates measured and predicted observations. The measurement model is written in the body frame. For direction observations:

yk=A(q^k)r+vky_k = A(\hat{q}_k)^\top r + v_k

where A(q^k)A(\hat{q}_k) is the rotation matrix for the estimated quaternion.

The measurement residual is linearized in terms of the local error. The sensitivity matrix (Jacobian) for small-angle error is typically H=[A(q^k)r]×H = -[A(\hat{q}_k)^\top r]_\times for attitude or

Hk=[2S(r1s)03×3 ]H_k = \begin{bmatrix} 2S(r_1^s) & 0_{3\times3} \ \vdots & \vdots \end{bmatrix}

when multiple vectors are stacked (Takátsy et al., 2021). For pose updates from ICP- or vision-based scan-matching, the innovation is parameterized via right-invariant errors on SO(3)SO(3) and additive position (Barczyk et al., 2015).

Crucially, the multiplicative update is realized by retraction:

  • Attitude update: q^k+=δqq^k\hat{q}_{k}^+ = \delta q \otimes \hat{q}_{k}^-, with δq\delta q constructed from the estimated correction δx\delta x.
  • Matrix form: R^k+=R^kexpS(δθk)\hat{R}_k^+ = \hat{R}_k^- \exp S(\delta\theta_k).
  • Position and bias updates remain additive.

After each update, the error state is reset and covariance is optionally “re-projected” to account for nonlinear coordinate changes (Chang, 2017).

4. Covariance and Algorithmic Details

The error-state covariance evolves according to the standard or Joseph-form EKF recursion:

Pk+=(IKkHk)Pk(IKkHk)+KkRkKkP_k^+ = (I - K_k H_k)P_k^-(I - K_k H_k)^\top + K_k R_k K_k^\top

where KkK_k is the Kalman gain, RkR_k the measurement noise, and HkH_k the current Jacobian.

When the state is reset multiplicatively, the covariance requires a congruence transformation to maintain consistency with the new error-state basis:

Pk++=MPk+MP_k^{++} = M P_k^+ M^\top

where MM is a function of the applied correction and is derived analytically (Chang, 2017).

Algorithmic steps, as implemented in practice, follow the cycle:

  1. Read noisy sensor inputs (gyro, odometry, etc.).
  2. Propagate the nominal global state.
  3. Propagate the error-state covariance.
  4. Upon new observation:
    • Compute measurement residual and innovation.
    • Form and apply the Kalman gain.
    • Retract the correction multiplicatively to the global state.
    • Reset error state; update covariance.

Explicit pseudocode and practical steps for satellite attitude (with bias), including quaternion propagation, matrix assembly, and in-place renormalization, are detailed in (Takátsy et al., 2021).

5. Extensions: Trajectory-Independent and Geometric MEKF

The trajectory-dependence (i.e., dependence on the nominal state) in traditional MEKF measurement models can induce inconsistency for large initial errors. Recent approaches establish trajectory-independent linearizations by fully exploiting the group-affine property of the attitude kinematics:

  • Traditional: Hk=[(A^krk)×,03×3]H_k = [(\hat{A}_k r_k)\times,\, 0_{3\times3}].
  • Trajectory-independent: Hk=[bk×,03×3]H_k = [b_k\times,\,0_{3\times3}], with bkb_k the measured vector (Chang, 2021).

This adjustment yields first-order error dynamics that are exact irrespective of estimation errors, significantly improving convergence under poor initialization and large misalignment scenarios. Monte Carlo and field-testing demonstrate robust convergence and sub-degree accuracy, even in adversarial conditions (Chang, 2021).

The equivalence of the MEKF and the geometric EKF (GEKF) has been rigorously established when covariance resets after multiplicative correction are performed consistently (Chang, 2017). Thus, “geometric MEKF” (GMEKF) refers to this fully consistent, geometry-respecting formulation.

6. Performance Analysis and Practical Outcomes

Performance assessments across satellite and robotic domains consistently show that MEKF achieves superior estimation accuracy and uncertainty quantification compared to the additive EKF (AEKF). Metrics such as attitude RMSE (root-mean-square error), P\|P\| (covariance norm), and real-time cycle cost have been benchmarked:

Parameter MEKF AEKF
Attitude RMSE [deg] 0.12 0.75
Covariance norm P\|P\| 0.010 1.000
Update time [s] 0.012 0.002

The MEKF’s computational cost is only marginally higher and generally negligible for practical embedded systems. In satellite attitude scenarios, MEKF maintains sub-degree accuracy with low drift, and experiments confirm rapid recovery after periods of degraded observation (e.g., Sun occultation) (Hassan et al., 2023, Takátsy et al., 2021).

Scan-matching-aided localization experiments show MEKF delivers sub-5 cm RMS error and ≈1° heading accuracy on straight-line tests. However, its performance degrades with highly nonlinear trajectories (e.g., circular motion), motivating further developments such as the invariant EKF (IEKF) which better handles nonlinearity in the presence of large attitude error (Barczyk et al., 2015).

7. Generalizations and Geometric Stability

The Generalized SO(3)SO(3)-MEKF introduces curvature correction terms to the filter’s gain and Riccati equations, thereby ensuring almost global uniform asymptotic stability (AGUAS) except at singular initializations (i.e., 180° misalignment) (Aslam et al., 11 Mar 2025). Specifically, the gain and covariance evolution include error-state dependent matrices reflecting SO(3)SO(3) curvature:

$[G_q\ G_b] = \tfrac12[\tr[M]I - M + e_Me_M^\top,\ \sqrt{1+\tr[M]}I]P\begin{bmatrix}I\ 0\end{bmatrix}Q_3^{-1}$

and the Riccati equation scales the process and measurement noise by geometric terms. For small errors, these reduce to the standard MEKF equations; for large errors, they guarantee global convergence in the absence of measurement singularity.

Simulation studies show that the generalized MEKF matches standard MEKF performance in both transient and steady-state regimes but benefits from global stability guarantees (Aslam et al., 11 Mar 2025).


References

  • (Barczyk et al., 2015) Invariant EKF Design for Scan Matching-aided Localization
  • (Takátsy et al., 2021) Attitude determination for nano-satellites—II. Dead reckoning with a multiplicative extended Kalman filter
  • (Chang, 2021) MEKF Ignoring Initial Conditions for Attitude Estimation Using Vector Observations
  • (Chang, 2017) Alternate Derivation of Geometric Extended Kalman Filter by MEKF Approach
  • (Aslam et al., 11 Mar 2025) Geometric Nonlinear Filtering with Almost Global Convergence for Attitude and Bias Estimation on the Special Orthogonal Group
  • (Hassan et al., 2023) A Comparative Analysis Between the Additive and the Multiplicative Extended Kalman Filter for Satellite Attitude Determination

Whiteboard

Topic to Video (Beta)

Follow Topic

Get notified by email when new papers are published related to Multiplicative Extended Kalman Filter (MEKF).