4.2.10 Unscented Kalman Filter (UKF)
The Unscented Kalman Filter (UKF) is a nonlinear state-estimation method designed to handle systems in which the process dynamics, the measurement models, or both are strongly nonlinear.
Like the Extended Kalman Filter, it belongs to the broader family of Bayesian recursive estimators. However, the UKF takes a fundamentally different approach to nonlinear uncertainty propagation.
The EKF asks:
\[ \boxed{ \text{How can I linearize the nonlinear system locally?} } \]
The UKF instead asks:
\[ \boxed{ \text{How does a carefully selected set of representative state samples move through the actual nonlinear function?} } \]
These representative samples are called sigma points.
Instead of computing Jacobians such as
\[ \mathbf F = \frac{\partial f}{\partial \mathbf x} \]
and
\[ \mathbf H = \frac{\partial h}{\partial \mathbf x}, \]
the UKF constructs a deterministic collection of sigma points around the current estimated mean and covariance.
Each point is propagated through the actual nonlinear model:
\[ \boxed{ \boldsymbol\chi_i \rightarrow f(\boldsymbol\chi_i) } \]
and the propagated points are then recombined to reconstruct the predicted mean and covariance.
The central UKF philosophy is therefore
\[ \boxed{ \text{Represent the Distribution by Sigma Points} \rightarrow \text{Propagate Them Through the Nonlinear Model} \rightarrow \text{Reconstruct Mean and Covariance}. } \]
This makes the UKF particularly attractive for nonlinear spacecraft-navigation problems where Jacobian derivation is difficult, error-prone, or where first-order linearisation may not adequately represent uncertainty propagation.
4.2.10.1 Why the UKF Is Needed
The ordinary Kalman filter assumes linear dynamics:
\[ \boxed{ \mathbf x_k = \mathbf F_{k-1}\mathbf x_{k-1} + \mathbf B_{k-1}\mathbf u_{k-1} + \mathbf w_{k-1} } \]
and linear measurements:
\[ \boxed{ \mathbf z_k = \mathbf H_k\mathbf x_k + \mathbf v_k. } \]
For many spacecraft systems, however,
\[ \boxed{ \mathbf x_k = f( \mathbf x_{k-1}, \mathbf u_{k-1} ) + \mathbf w_{k-1} } \]
and
\[ \boxed{ \mathbf z_k = h( \mathbf x_k ) + \mathbf v_k. } \]
The functions
\[ f(\cdot) \]
and
\[ h(\cdot) \]
may contain
- orbital dynamics,
- nonlinear gravity,
- quaternion attitude dynamics,
- line-of-sight geometry,
- camera projection,
- LiDAR range equations,
- bearing-only navigation,
- nonlinear relative-motion dynamics,
- nonlinear sensor transformations.
Therefore, nonlinear state estimation is unavoidable in practical spacecraft GNC.
4.2.10.2 Limitation of EKF Linearisation
The EKF handles nonlinear dynamics by linearizing around the current estimate.
For example,
\[ f(\mathbf x) \]
is approximated near
\[ \hat{\mathbf x} \]
as
\[ \boxed{ f(\mathbf x) \approx f(\hat{\mathbf x}) + \mathbf F ( \mathbf x-\hat{\mathbf x} ) } \]
where
\[ \mathbf F = \left. \frac{\partial f}{\partial\mathbf x} \right|_{\hat{\mathbf x}}. \]
Similarly,
\[ h(\mathbf x) \]
is approximated using
\[ \mathbf H = \left. \frac{\partial h}{\partial\mathbf x} \right|_{\hat{\mathbf x}}. \]
This method is powerful, but several problems can arise:
- Jacobians may be difficult to derive,
- analytical Jacobians may be coded incorrectly,
- numerical Jacobians can be noisy or computationally expensive,
- first-order approximation may poorly represent strong nonlinearities,
- covariance transformation may become inaccurate,
- large uncertainty can make local linearization unreliable.
The UKF was developed to address many of these issues.
4.2.10.3 Core UKF Idea
Suppose the current state estimate is described by
\[ \boxed{ \mathbf x \sim \mathcal N( \hat{\mathbf x}, \mathbf P ) }. \]
Instead of linearizing a nonlinear function, the UKF constructs a set of points
\[ \boldsymbol\chi_i \]
whose weighted mean and covariance match
\[ \hat{\mathbf x} \]
and
\[ \mathbf P. \]
These points are passed through
\[ f(\cdot). \]
Thus,
\[ \boxed{ \boldsymbol\chi_i \rightarrow f(\boldsymbol\chi_i) } \]
for each sigma point.
From the transformed points, compute
\[ \boxed{ \text{Predicted Mean} } \]
and
\[ \boxed{ \text{Predicted Covariance}. } \]
This process is known as the unscented transform.
4.2.10.4 Why It Is Called “Unscented”
The name does not refer to sensors or measurement type.
The term unscented originated from the idea that nonlinear transformation of a probability distribution could be approximated without explicitly linearizing the nonlinear function.
The essential idea is:
\[ \boxed{ \text{Approximate the Distribution} \quad \text{Not the Function}. } \]
The EKF approximates the nonlinear function locally.
The UKF approximates the probability distribution with deterministic sigma points and propagates those points through the true nonlinear function.
4.2.10.5 The Unscented Transform
Consider a random variable
\[ \mathbf x \]
with mean
\[ \bar{\mathbf x} \]
and covariance
\[ \mathbf P_x. \]
Suppose
\[ \mathbf y = g(\mathbf x) \]
where
\[ g(\cdot) \]
is nonlinear.
We want
\[ E[\mathbf y] \]
and
\[ \operatorname{Cov}(\mathbf y). \]
The unscented transform performs the following steps:
\[ \boxed{ \text{Mean and Covariance} } \]
\[ \downarrow \]
\[ \boxed{ \text{Generate Sigma Points} } \]
\[ \downarrow \]
\[ \boxed{ \text{Propagate Every Sigma Point Through }g } \]
\[ \downarrow \]
\[ \boxed{ \text{Weighted Mean} } \]
\[ \downarrow \]
\[ \boxed{ \text{Weighted Covariance}. } \]
4.2.10.6 State Dimension
Let the state dimension be
\[ \boxed{ n }. \]
For example, if
\[ \mathbf x = \begin{bmatrix} x\\ y\\ z\\ v_x\\ v_y\\ v_z \end{bmatrix}, \]
then
\[ n=6. \]
A standard scaled UKF typically uses
\[ \boxed{ 2n+1 } \]
sigma points.
Thus, for a six-state system,
\[ 2(6)+1=13 \]
sigma points are generated.
4.2.10.7 Sigma-Point Set
The sigma-point set is usually written
\[ \boxed{ \boldsymbol\chi_0, \boldsymbol\chi_1, \dots, \boldsymbol\chi_{2n}. } \]
The center sigma point is
\[ \boxed{ \boldsymbol\chi_0 = \hat{\mathbf x}. } \]
The remaining points are distributed symmetrically around the mean according to the covariance.
Conceptually,
\[ \boxed{ \text{Mean} + \text{Covariance Geometry} \rightarrow \text{Sigma-Point Cloud}. } \]
4.2.10.8 Sigma-Point Scaling Parameter
Define
\[ \boxed{ \lambda = \alpha^2 ( n+\kappa ) - n. } \]
The parameters
\[ \alpha,\qquad \beta,\qquad \kappa \]
control the distribution and weighting of sigma points.
They are important UKF tuning quantities.
4.2.10.9 Sigma-Point Generation
Let
\[ \mathbf P \]
be the state covariance.
Compute a matrix square root of
\[ (n+\lambda)\mathbf P. \]
A common implementation uses Cholesky decomposition:
\[ \boxed{ \mathbf L = \operatorname{chol} \left( (n+\lambda)\mathbf P \right). } \]
Then
\[ \boxed{ \boldsymbol\chi_0 = \hat{\mathbf x} } \]
and for
\[ i=1,\dots,n, \]
\[ \boxed{ \boldsymbol\chi_i = \hat{\mathbf x} + \mathbf L_i } \]
and
\[ \boxed{ \boldsymbol\chi_{i+n} = \hat{\mathbf x} - \mathbf L_i. } \]
Here,
\[ \mathbf L_i \]
is the i-th column of the covariance square-root matrix.
4.2.10.10 Geometric Meaning of Sigma Points
The covariance defines the size and direction of the uncertainty ellipsoid.
The sigma points are placed along principal directions of this uncertainty.
Therefore,
\[ \boxed{ \text{Sigma Points} = \text{Deterministic Samples of the Current Uncertainty Geometry}. } \]
If uncertainty in one direction is large, the sigma points spread farther in that direction.
If uncertainty is small, they remain closer to the mean.
4.2.10.11 Why Sigma Points Are Not Random Monte Carlo Samples
Sigma points are deterministically chosen.
They are not generated randomly.
A Monte Carlo simulation may require
\[ 10^3, 10^4, 10^5 \]
or more random samples.
The UKF may use only
\[ \boxed{ 2n+1 } \]
carefully positioned samples.
Thus,
\[ \boxed{ \text{UKF Sigma Points} \neq \text{Monte Carlo Samples}. } \]
The sigma points are specifically constructed so that their weighted statistics reproduce the current mean and covariance.
4.2.10.12 Mean Weights
The standard scaled UKF uses mean weights
\[ \boxed{ W_0^{(m)} = \frac{\lambda} {n+\lambda} } \]
and for
\[ i=1,\dots,2n, \]
\[ \boxed{ W_i^{(m)} = \frac{1} {2(n+\lambda)}. } \]
The superscript
\[ (m) \]
indicates weights used for calculating the mean.
4.2.10.13 Covariance Weights
The first covariance weight is
\[ \boxed{ W_0^{(c)} = \frac{\lambda}{n+\lambda} + ( 1-\alpha^2+\beta ) } \]
and
\[ \boxed{ W_i^{(c)} = \frac{1}{2(n+\lambda)}, \qquad i=1,\dots,2n. } \]
The covariance weights are therefore slightly different from the mean weights.
4.2.10.14 The Parameter \alpha
The parameter
\[ \boxed{ \alpha } \]
controls how far the sigma points are spread from the mean.
Small
\[ \alpha \]
places sigma points close to the mean.
Larger
\[ \alpha \]
spreads them farther away.
Typical choices depend on implementation and problem scaling.
There is no universal value that is optimal for every spacecraft application.
4.2.10.15 The Parameter \beta
The parameter
\[ \boxed{ \beta } \]
incorporates information about the prior distribution.
For a Gaussian prior, a commonly used choice is
\[ \boxed{ \beta=2. } \]
This often improves covariance approximation for Gaussian state uncertainty.
4.2.10.16 The Parameter \kappa
The parameter
\[ \boxed{ \kappa } \]
provides another degree of freedom for sigma-point scaling.
Common choices include
\[ \kappa=0 \]
or
\[ \kappa=3-n. \]
Its effect must be considered together with
\[ \alpha \]
because both affect
\[ \lambda. \]
4.2.10.17 Why Tuning Parameters Matter
Poor choices of
\[ \alpha, \beta, \kappa \]
can produce
- overly concentrated sigma points,
- excessive sigma-point spread,
- negative weights,
- numerical sensitivity,
- poor covariance approximation,
- loss of positive definiteness.
Therefore UKF tuning is not simply cosmetic.
It influences how the estimator represents nonlinear uncertainty.
4.2.10.18 State Prediction
Suppose the nonlinear dynamics are
\[ \boxed{ \mathbf x_k = f( \mathbf x_{k-1}, \mathbf u_{k-1} ) + \mathbf w_{k-1}. } \]
Each sigma point is propagated independently:
\[ \boxed{ \boldsymbol\chi_{i,k}^{-} = f( \boldsymbol\chi_{i,k-1}^{+}, \mathbf u_{k-1} ). } \]
This is the central nonlinear prediction step.
No dynamic Jacobian is required.
4.2.10.19 Predicted State Mean
Once all sigma points have been propagated,
\[ \boldsymbol\chi_{i,k}^{-}, \]
the predicted state mean is
\[ \boxed{ \hat{\mathbf x}_k^{-} = \sum_{i=0}^{2n} W_i^{(m)} \boldsymbol\chi_{i,k}^{-}. } \]
Thus the predicted state is reconstructed from the transformed sigma-point cloud.
4.2.10.20 Predicted State Covariance
The predicted covariance is
\[ \boxed{ \mathbf P_k^{-} = \sum_{i=0}^{2n} W_i^{(c)} \left( \boldsymbol\chi_{i,k}^{-} - \hat{\mathbf x}_k^{-} \right) \left( \boldsymbol\chi_{i,k}^{-} - \hat{\mathbf x}_k^{-} \right)^T + \mathbf Q_k. } \]
This captures how nonlinear propagation stretches, rotates, or distorts the uncertainty distribution.
4.2.10.21 Physical Interpretation of Prediction
Consider an uncertainty ellipse around the current state.
If the dynamics are nonlinear, the ellipse may transform into a curved or distorted shape.
The EKF approximates this transformation using a tangent linear mapping.
The UKF instead propagates representative points on the uncertainty distribution.
Therefore,
\[ \boxed{ \text{UKF Prediction} = \text{Propagate the Distribution Geometry Through the Nonlinear Dynamics}. } \]
4.2.10.22 Process Noise Q
The covariance
\[ \boxed{ \mathbf Q } \]
represents uncertainty in the process model.
Examples include
- unmodelled acceleration,
- disturbance torque,
- atmospheric uncertainty,
- solar-radiation-pressure uncertainty,
- thruster magnitude error,
- gyro noise,
- accelerometer noise,
- model parameter uncertainty.
As in other Kalman filters,
\[ Q \]
must have physically meaningful units and dimensions.
4.2.10.23 Additive Process Noise UKF
A common simplified formulation assumes process noise is additive:
\[ \boxed{ \mathbf x_k = f( \mathbf x_{k-1} ) + \mathbf w_k. } \]
Then one can propagate sigma points through
\[ f(\cdot) \]
and add
\[ Q \]
after reconstructing covariance.
This is computationally simpler.
4.2.10.24 Augmented-State UKF
For more general noise models, process and measurement noise may be included in an augmented state:
\[ \boxed{ \mathbf x_a = \begin{bmatrix} \mathbf x\\ \mathbf w\\ \mathbf v \end{bmatrix}. } \]
The corresponding covariance is
\[ \boxed{ \mathbf P_a = \begin{bmatrix} \mathbf P & 0 & 0\\ 0 & \mathbf Q & 0\\ 0 & 0 & \mathbf R \end{bmatrix}. } \]
Sigma points are then generated from the augmented distribution.
This allows nonlinear noise effects to be propagated directly.
4.2.10.25 Cost of State Augmentation
If the physical state dimension is
\[ n_x \]
and the augmented noise dimension is
\[ n_w+n_v, \]
then
\[ n_a = n_x+n_w+n_v. \]
The number of sigma points becomes
\[ \boxed{ 2n_a+1. } \]
Therefore augmentation increases computational cost.
4.2.10.26 Measurement Prediction
Suppose the nonlinear measurement model is
\[ \boxed{ \mathbf z_k = h( \mathbf x_k ) + \mathbf v_k. } \]
Pass every predicted sigma point through the measurement function:
\[ \boxed{ \boldsymbol\zeta_{i,k} = h( \boldsymbol\chi_{i,k}^{-} ). } \]
These transformed points exist in measurement space.
4.2.10.27 Predicted Measurement Mean
The predicted measurement is
\[ \boxed{ \hat{\mathbf z}_k = \sum_{i=0}^{2n} W_i^{(m)} \boldsymbol\zeta_{i,k}. } \]
Thus the UKF predicts not just the state but also the complete expected measurement through nonlinear transformation.
4.2.10.28 Innovation Covariance
The innovation covariance is
\[ \boxed{ \mathbf S_k = \sum_{i=0}^{2n} W_i^{(c)} \left( \boldsymbol\zeta_{i,k} - \hat{\mathbf z}_k \right) \left( \boldsymbol\zeta_{i,k} - \hat{\mathbf z}_k \right)^T + \mathbf R_k. } \]
This represents the predicted spread of measurement residuals.
4.2.10.29 State-Measurement Cross Covariance
The UKF also calculates
\[ \boxed{ \mathbf P_{xz,k} = \sum_{i=0}^{2n} W_i^{(c)} \left( \boldsymbol\chi_{i,k}^{-} - \hat{\mathbf x}_k^{-} \right) \left( \boldsymbol\zeta_{i,k} - \hat{\mathbf z}_k \right)^T. } \]
This cross covariance replaces the role played by
\[ P^-H^T \]
in an EKF.
4.2.10.30 Kalman Gain
The UKF Kalman gain is
\[ \boxed{ \mathbf K_k = \mathbf P_{xz,k} \mathbf S_k^{-1}. } \]
Thus the gain still answers the familiar question:
\[ \boxed{ \text{How strongly should the measurement change the predicted state?} } \]
4.2.10.31 Innovation
The innovation remains
\[ \boxed{ \mathbf y_k = \mathbf z_k - \hat{\mathbf z}_k. } \]
The physical interpretation is unchanged from KF and EKF.
It is the difference between
\[ \boxed{ \text{What the Sensor Measured} } \]
and
\[ \boxed{ \text{What the Current State Estimate Predicted the Sensor Should Measure}. } \]
4.2.10.32 State Update
The posterior state estimate is
\[ \boxed{ \hat{\mathbf x}_k^{+} = \hat{\mathbf x}_k^{-} + \mathbf K_k \mathbf y_k. } \]
This resembles the classical Kalman update.
The major difference lies in how
\[ \hat x^-, P^-, \hat z, S, P_{xz} \]
were obtained.
4.2.10.33 Covariance Update
The posterior covariance is
\[ \boxed{ \mathbf P_k^{+} = \mathbf P_k^{-} - \mathbf K_k \mathbf S_k \mathbf K_k^T. } \]
This reduces state uncertainty according to the information supplied by the measurement.
4.2.10.34 Complete UKF Prediction Cycle
The prediction stage can be summarized as follows.
4.2.10.34.1 Start with Prior Mean and Covariance
\[ \boxed{ \hat x_{k-1}^{+}, \qquad P_{k-1}^{+}. } \]
4.2.10.34.2 Generate Sigma Points
\[ \boxed{ \chi_{i,k-1}^{+}. } \]
4.2.10.34.3 Propagate Through Nonlinear Dynamics
\[ \boxed{ \chi_{i,k}^{-} = f( \chi_{i,k-1}^{+} ). } \]
4.2.10.34.4 Reconstruct Predicted Mean
\[ \boxed{ \hat x_k^{-} = \sum W_i^{(m)} \chi_{i,k}^{-}. } \]
4.2.10.34.5 Reconstruct Predicted Covariance
\[ \boxed{ P_k^{-} = \sum W_i^{(c)} ( \chi_i^{-}-\hat x^{-} ) ( \chi_i^{-}-\hat x^{-} )^T + Q. } \]
4.2.10.35 Complete UKF Measurement Cycle
4.2.10.35.1 Transform Sigma Points into Measurement Space
\[ \boxed{ \zeta_i = h( \chi_i^{-} ). } \]
4.2.10.35.2 Predicted Measurement
\[ \boxed{ \hat z = \sum W_i^{(m)} \zeta_i. } \]
4.2.10.35.3 Innovation Covariance
\[ \boxed{ S = \sum W_i^{(c)} ( \zeta_i-\hat z ) ( \zeta_i-\hat z )^T + R. } \]
4.2.10.35.4 Cross Covariance
\[ \boxed{ P_{xz} = \sum W_i^{(c)} ( \chi_i^{-}-\hat x^{-} ) ( \zeta_i-\hat z )^T. } \]
4.2.10.35.5 Kalman Gain
\[ \boxed{ K = P_{xz}S^{-1}. } \]
4.2.10.35.6 State Correction
\[ \boxed{ \hat x^+ = \hat x^- + K( z-\hat z ). } \]
4.2.10.35.7 Covariance Correction
\[ \boxed{ P^+ = P^- - KSK^T. } \]
4.2.10.36 UKF vs EKF
The fundamental difference is:
EKF
\[ \boxed{ \text{Nonlinear Function} \rightarrow \text{Jacobian} \rightarrow \text{Linear Approximation}. } \]
UKF
\[ \boxed{ \text{Sigma Points} \rightarrow \text{Actual Nonlinear Function} \rightarrow \text{Reconstructed Distribution}. } \]
A comparison is:
| Feature | EKF | UKF |
|---|---|---|
| Nonlinear model | Yes | Yes |
| Jacobians required | Yes | No |
| Sigma points required | No | Yes |
| Computational cost | Lower | Usually higher |
| Strong nonlinearities | Can be sensitive | Often better |
| Implementation complexity | Jacobian-heavy | Sigma-point-heavy |
| Covariance propagation | Linearized | Statistical transform |
| Model evaluation per step | Usually once | 2n+1 or more |
4.2.10.37 Why the UKF Can Be More Accurate
Suppose
\[ y=f(x) \]
is nonlinear.
The EKF propagates uncertainty using a first-order local derivative.
The UKF propagates multiple representative points through the actual nonlinear function.
Therefore the UKF can capture effects that a tangent approximation may miss.
Conceptually,
\[ \boxed{ \text{EKF} \rightarrow \text{Approximate Function} } \]
while
\[ \boxed{ \text{UKF} \rightarrow \text{Approximate Distribution}. } \]
For many nonlinear transformations, the unscented transform reproduces mean and covariance to higher-order accuracy than first-order linearization under suitable assumptions.
4.2.10.38 But UKF Is Not Automatically Better
The UKF still relies on assumptions.
It commonly approximates uncertainty using only mean and covariance.
If the true posterior is
- strongly multimodal,
- highly skewed,
- discontinuous,
- constrained in unusual ways,
the UKF can still be inaccurate.
Therefore,
\[ \boxed{ \text{No Jacobian} \neq \text{No Approximation}. } \]
The UKF approximates the underlying probability distribution using a finite deterministic point set.
4.2.10.39 Computational Cost
For a state dimension
\[ n, \]
the standard UKF uses
\[ 2n+1 \]
sigma points.
If the nonlinear model is expensive, each propagation
\[ f(\chi_i) \]
may be computationally demanding.
Thus
\[ \boxed{ \text{UKF Accuracy Benefit} \leftrightarrow \text{Higher Computation}. } \]
This is important for onboard spacecraft processors.
4.2.10.40 Example: Nonlinear Range Measurement
Suppose
\[ \mathbf x = \begin{bmatrix} x\\ y\\ z \end{bmatrix} \]
and a range sensor measures
\[ \boxed{ \rho = \sqrt{x^2+y^2+z^2}. } \]
The measurement is nonlinear.
In an EKF, derive
\[ H_\rho = \begin{bmatrix} x/\rho & y/\rho & z/\rho \end{bmatrix}. \]
In a UKF, no analytical derivative is required.
Each sigma point
\[ \chi_i = \begin{bmatrix} x_i\\ y_i\\ z_i \end{bmatrix} \]
is transformed:
\[ \boxed{ \rho_i = \sqrt{ x_i^2+y_i^2+z_i^2 }. } \]
The predicted range mean and variance are reconstructed from
\[ \rho_i. \]
4.2.10.41 Bearing Measurement Example
A camera may measure azimuth
\[ \boxed{ \alpha = \tan^{-1} \left( \frac{y}{x} \right). } \]
Instead of deriving
\[ \frac{\partial \alpha}{\partial x}, \qquad \frac{\partial \alpha}{\partial y}, \]
the UKF calculates
\[ \boxed{ \alpha_i = \tan^{-1} \left( \frac{y_i}{x_i} \right) } \]
for every sigma point.
This is particularly attractive for complex optical measurement models.
4.2.10.42 Angle-Wrapping Problem
Angles create a special problem.
Suppose sigma-point angles are
\[ 179^\circ \]
and
\[ -179^\circ. \]
A naive arithmetic mean gives approximately
\[ 0^\circ, \]
which is physically wrong.
The correct mean is near
\[ 180^\circ. \]
Therefore angular means must be calculated using circular statistics.
For example,
\[ \boxed{ \bar\theta = \operatorname{atan2} \left( \sum_i W_i\sin\theta_i, \sum_i W_i\cos\theta_i \right). } \]
4.2.10.43 Quaternion States Require Special Treatment
Quaternions are even more challenging than ordinary angles.
A naive arithmetic mean of quaternion sigma points may not preserve
\[ \|q\|=1. \]
Also,
\[ q \equiv -q. \]
Therefore a UKF for attitude estimation should not simply treat quaternion components like ordinary Euclidean variables without care.
Possible approaches include
- quaternion normalization,
- multiplicative quaternion UKF,
- error-state UKF,
- manifold UKF,
- sigma points in the tangent space.
4.2.10.44 Error-State UKF for Attitude
One robust attitude approach is conceptually similar to the MEKF.
Maintain a nominal quaternion
\[ \hat q \]
and represent uncertainty using
\[ \delta\theta. \]
Sigma points are generated in the local rotational error state.
Each error sigma point is mapped to an error quaternion:
\[ \delta q_i. \]
Then
\[ \boxed{ q_i = \delta q_i \otimes \hat q. } \]
These quaternion sigma points can be propagated through nonlinear attitude dynamics.
This preserves the geometric structure more naturally.
4.2.10.45 UKF for Spacecraft Orbital Navigation
A spacecraft navigation state may be
\[ \boxed{ x = \begin{bmatrix} r\\ v \end{bmatrix}. } \]
Nonlinear dynamics may include
- central gravity,
-
J_2, - drag,
- solar radiation pressure,
- third-body gravity,
- thrust,
- relative orbital dynamics.
Each sigma point represents a slightly different possible orbital state.
Propagating all sigma points through the nonlinear orbital model captures how uncertainty evolves under the orbital dynamics.
4.2.10.46 UKF for RPO
A relative-navigation state might contain
\[ \boxed{ x_{rel} = \begin{bmatrix} r_{rel}\\ v_{rel} \end{bmatrix} } \]
or include attitude and biases:
\[ \boxed{ x = \begin{bmatrix} r_{rel}\\ v_{rel}\\ q_{rel}\\ b_g\\ b_a \end{bmatrix}. } \]
Sensors may include
- relative GNSS,
- camera,
- LiDAR,
- radar,
- pose estimation,
- star tracker,
- IMU.
The UKF can naturally propagate sigma points through both nonlinear relative dynamics and nonlinear sensor models.
4.2.10.47 Camera-Based Relative Navigation
A camera measurement may depend on relative position through
\[ \boxed{ u = f_x \frac{x}{z} + c_x } \]
and
\[ \boxed{ v = f_y \frac{y}{z} + c_y. } \]
These are strongly nonlinear when range changes significantly.
The UKF simply transforms each sigma point:
\[ \boxed{ (x_i,y_i,z_i) \rightarrow (u_i,v_i). } \]
No analytical camera Jacobian is required.
4.2.10.48 LiDAR-Based RPO
LiDAR can provide
- range,
- bearing,
- relative position,
- point-cloud-derived pose.
For pure range,
\[ \rho = \|r_{rel}\|. \]
For relative pose, the measurement function may be much more complicated.
The UKF is useful because
\[ \boxed{ \text{Complex Nonlinear Measurement} \rightarrow \text{Direct Sigma-Point Transformation}. } \]
4.2.10.49 Multi-Sensor UKF
Different sensors may update the same UKF.
For example:
\[ \boxed{ \text{GNSS} + \text{Camera} + \text{LiDAR} + \text{IMU} \rightarrow \text{UKF}. } \]
Each sensor has its own measurement function
\[ h_j(x) \]
and measurement covariance
\[ R_j. \]
When sensor j produces a measurement, sigma points are mapped through its corresponding
\[ h_j. \]
4.2.10.50 Multi-Rate Sensors
Different sensors may operate at different rates.
For example,
\[ f_{IMU} \gg f_{camera} \]
and
\[ f_{camera} \neq f_{GNSS}. \]
The UKF can
\[ \boxed{ \text{Predict at High Rate} } \]
and
\[ \boxed{ \text{Update Whenever a Measurement Arrives}. } \]
This is similar to EKF and ESKF operation.
4.2.10.51 Sensor Dropout
If a measurement sensor becomes unavailable,
\[ \boxed{ \text{Prediction Continues} } \]
but no correction occurs.
Covariance generally grows.
When measurements return,
\[ \boxed{ \text{Measurement Update} \rightarrow \text{Reduced State Uncertainty}. } \]
The UKF therefore naturally handles temporary sensor dropout, provided the model remains sufficiently valid.
4.2.10.52 Innovation Gating
The innovation is
\[ y=z-\hat z. \]
The innovation covariance is
\[ S. \]
A normalized statistic is
\[ \boxed{ NIS = y^TS^{-1}y. } \]
If the value is too large, the measurement may be inconsistent with the predicted state.
Possible causes include
- sensor outlier,
- incorrect association,
- timing error,
- wrong frame,
- model mismatch,
- filter divergence.
4.2.10.53 Measurement Timing
As with all navigation filters, timestamp consistency is critical.
A sigma-point cloud propagated to
\[ t_k \]
must be compared with a measurement belonging to
\[ t_k. \]
Otherwise,
\[ \boxed{ \text{Correct Measurement} + \text{Wrong State Time} = \text{Incorrect Innovation}. } \]
This becomes particularly important during high-rate motion or spacecraft slews.
4.2.10.54 Numerical Stability
The UKF repeatedly performs matrix square-root operations.
Therefore
\[ P \]
must remain symmetric and positive semidefinite.
In practice, numerical errors may cause
\[ P\neq P^T. \]
A common numerical cleanup is
\[ \boxed{ P \leftarrow \frac12 ( P+P^T ). } \]
Small positive diagonal regularization may also be used when justified.
4.2.10.55 Cholesky Failure
Sigma-point generation often requires
\[ \operatorname{chol}(P). \]
Cholesky decomposition fails if
\[ P \]
is not positive definite.
This may indicate
- numerical instability,
- poor covariance update,
- incorrect weights,
- badly scaled states,
-
inconsistent
Q, - excessive roundoff,
- coding error.
A Cholesky failure should not simply be hidden.
It is often evidence of an estimator problem.
4.2.10.56 Square-Root UKF
A Square-Root UKF propagates a square-root covariance factor directly.
Instead of storing
\[ P, \]
maintain
\[ S \]
such that
\[ \boxed{ P = SS^T. } \]
Advantages can include
- improved numerical stability,
- better preservation of positive definiteness,
- sometimes improved computational efficiency.
This can be attractive for flight-software implementations.
4.2.10.57 State Scaling
Suppose a state contains quantities with very different magnitudes:
\[ r\sim10^6\text{ m}, \]
\[ v\sim10^3\text{ m/s}, \]
\[ b_g\sim10^{-5}\text{ rad/s}. \]
Poor scaling can create numerical conditioning problems.
Therefore state normalization or careful covariance scaling may be important.
4.2.10.58 Process Noise Tuning
If
\[ Q \]
is too small,
the UKF trusts the model too strongly.
Consequences include
- slow adaptation,
- underestimated uncertainty,
- large NIS,
- possible divergence.
If
\[ Q \]
is too large,
the state prediction becomes overly uncertain.
Consequences include
- noisy estimates,
- excessive measurement sensitivity,
- unnecessarily large covariance.
4.2.10.59 Measurement Noise Tuning
If
\[ R \]
is too small,
the filter trusts measurements excessively.
If
\[ R \]
is too large,
the filter underuses useful measurement information.
Thus
\[ \boxed{ Q/R \text{ tuning still matters in the UKF exactly as it does in the EKF}. } \]
The absence of Jacobians does not remove the need for realistic stochastic modeling.
4.2.10.60 Initialization
The UKF requires
\[ \boxed{ \hat x_0 } \]
and
\[ \boxed{ P_0. } \]
These define the first sigma-point cloud.
If
\[ P_0 \]
is too small, sigma points are too tightly concentrated.
If
\[ P_0 \]
is unrealistically large, sigma points may enter physically invalid regions.
Therefore initialization directly affects the geometry of sigma-point propagation.
4.2.10.61 Physical Constraints
Some states have constraints.
Examples include
- positive range,
- positive mass,
- quaternion norm,
- actuator bounds,
- orbital geometry,
- bounded biases.
Sigma points can potentially move into physically impossible regions.
For constrained problems, special strategies may be required.
4.2.10.62 UKF and Non-Gaussian Uncertainty
Although the sigma points can capture nonlinear transformation better than first-order linearization, the standard UKF still ultimately represents the state primarily through
\[ \boxed{ \text{Mean} + \text{Covariance}. } \]
Therefore it does not fully represent arbitrary multimodal distributions.
For strongly multimodal problems, particle filters or Gaussian-mixture methods may be more appropriate.
4.2.10.63 UKF vs Particle Filter
A particle filter may use
\[ N_p \]
random weighted particles.
The UKF uses a deterministic set of
\[ 2n+1 \]
sigma points.
Therefore:
\[ \boxed{ \text{UKF} \rightarrow \text{Efficient Gaussian Approximation} } \]
while
\[ \boxed{ \text{Particle Filter} \rightarrow \text{General Distribution Representation}. } \]
Particle filters are generally more flexible but much more computationally expensive.
4.2.10.64 UKF vs ESKF
The ESKF and UKF address different aspects of nonlinear estimation.
The ESKF focuses on
\[ \boxed{ \text{Nominal State} + \text{Small Local Error State}. } \]
The UKF focuses on
\[ \boxed{ \text{Nonlinear Uncertainty Propagation Without Jacobians}. } \]
These concepts are not mutually exclusive.
One can construct an error-state UKF.
4.2.10.65 UKF vs MEKF
The MEKF specifically handles quaternion attitude geometry using multiplicative attitude errors.
A standard UKF does not automatically solve quaternion-manifold issues.
Therefore for attitude estimation one may use
\[ \boxed{ \text{Multiplicative UKF} } \]
or
\[ \boxed{ \text{Quaternion Error-State UKF}. } \]
The UKF handles nonlinear uncertainty propagation, while the multiplicative formulation handles attitude geometry.
4.2.10.66 When UKF Is Attractive
The UKF is particularly attractive when
- dynamics are strongly nonlinear,
- measurements are strongly nonlinear,
- Jacobians are difficult,
- Jacobians are expensive to maintain,
- nonlinear uncertainty propagation matters,
- computational resources are sufficient,
- Gaussian mean/covariance representation remains reasonable.
4.2.10.67 When EKF May Still Be Better
The EKF may remain preferable when
- dynamics are only mildly nonlinear,
- accurate analytical Jacobians are available,
- computational resources are limited,
- state dimension is large,
- flight heritage favors EKF,
- deterministic execution cost is critical.
Therefore,
\[ \boxed{ \text{UKF} \neq \text{Automatic Replacement for EKF}. } \]
Estimator selection should depend on mission requirements.
4.2.10.68 Computational Scaling
With
\[ n \]
states, the standard UKF evaluates the process model approximately
\[ 2n+1 \]
times per prediction.
For
\[ n=20, \]
this becomes
\[ 41 \]
model evaluations per update.
If each propagation includes expensive orbital dynamics, the computational load can become significant.
4.2.10.69 Parallelism
Sigma-point propagation is naturally parallelizable because each
\[ \chi_i \]
can be propagated independently.
Thus
\[ \boxed{ \chi_0,\chi_1,\dots,\chi_{2n} } \]
may be evaluated simultaneously on suitable hardware.
This can partly offset UKF computational cost.
4.2.10.70 Simulink / Software Architecture
A clean UKF software architecture can contain
\[ \boxed{\text{Current Mean + Covariance}} \]
\[ \downarrow \]
\[ \boxed{\text{Sigma-Point Generator}} \]
\[ \downarrow \]
\[ \boxed{\text{Nonlinear Dynamics for Each Sigma Point}} \]
\[ \downarrow \]
\[ \boxed{\text{Predicted Mean + Covariance}} \]
then
\[ \boxed{\text{Measurement Model for Each Sigma Point}} \]
\[ \downarrow \]
\[ \boxed{\text{Predicted Measurement}} \]
\[ \downarrow \]
\[ \boxed{\text{Innovation Covariance + Cross Covariance}} \]
\[ \downarrow \]
\[ \boxed{\text{Kalman Gain}} \]
\[ \downarrow \]
\[ \boxed{\text{Posterior State + Covariance}}. \]
4.2.10.71 Recommended Software Blocks
A modular implementation may separate
- sigma-point generation,
- process model,
- mean reconstruction,
- covariance reconstruction,
- measurement transformation,
- innovation calculation,
- cross covariance,
- Kalman gain,
- state update,
- covariance update,
- gating,
- diagnostics.
This makes verification much easier.
4.2.10.72 Verification Strategy
The UKF should be verified incrementally.
4.2.10.72.1 Identity Transform Test
Set
\[ f(x)=x. \]
Verify that reconstructed mean and covariance equal the original values.
4.2.10.72.2 Linear-System Test
Use a linear system.
The UKF should reproduce standard Kalman-filter behavior.
4.2.10.72.3 Scalar Nonlinearity Test
Use a simple nonlinear function such as
\[ y=x^2. \]
Compare unscented transformation with Monte Carlo simulation.
4.2.10.72.4 Zero-Noise Test
Remove process and measurement noise.
Verify convergence.
4.2.10.72.5 Initial Error Test
Introduce known state offsets.
4.2.10.72.6 Measurement Dropout Test
Disable measurements and observe covariance growth.
4.2.10.72.7 Outlier Test
Inject false measurements and verify gating.
4.2.10.72.8 Strong-Nonlinearity Test
Compare EKF and UKF under increasingly nonlinear conditions.
4.2.10.72.9 Parameter-Sensitivity Test
Vary
\[ \alpha,\beta,\kappa. \]
4.2.10.72.10 Numerical-Stability Test
Monitor positive definiteness of
\[ P. \]
4.2.10.73 Comparison with Monte Carlo Propagation
A useful verification approach is to generate many random states from
\[ \mathcal N( \hat x,P ) \]
and propagate them through
\[ f(x). \]
Then compare Monte Carlo statistics against the UKF predicted
\[ \hat x^- \]
and
\[ P^-. \]
Conceptually,
\[ \boxed{ \text{Monte Carlo Distribution} \leftrightarrow \text{Unscented Approximation}. } \]
This provides a direct test of the unscented transform.
4.2.10.74 NIS
The normalized innovation squared remains
\[ \boxed{ NIS_k = y_k^T S_k^{-1} y_k. } \]
It is useful for
- filter tuning,
- measurement gating,
- fault detection,
- statistical consistency analysis.
UKF consistency should not be judged only by state RMSE.
4.2.10.75 NEES
When truth is available,
\[ e_k = x_{\text{true},k} - \hat x_k \]
or the appropriate manifold error can be formed.
Then
\[ \boxed{ NEES_k = e_k^T P_k^{-1} e_k. } \]
NEES compares actual state error against predicted estimator uncertainty.
4.2.10.76 Monte Carlo Validation
Randomize
- initial state,
- initial covariance realization,
- process disturbances,
- measurement noise,
- sensor bias,
- timing errors,
- sensor dropout,
- state-model parameters,
- actuator disturbances,
- measurement geometry.
Evaluate
\[ \boxed{RMSE} \]
\[ \boxed{NIS} \]
\[ \boxed{NEES} \]
\[ \boxed{\text{Convergence Time}} \]
\[ \boxed{\text{Maximum Error}} \]
\[ \boxed{\text{Divergence Rate}} \]
\[ \boxed{\text{Computation Time}}. \]
4.2.10.77 UKF for RPO Mission Phases
Far Range
Relative GNSS may dominate:
\[ \boxed{ \text{Relative GNSS} \rightarrow \text{UKF Update}. } \]
Mid Range
Fuse
\[ \boxed{ \text{Relative GNSS} + \text{Camera}. } \]
Close Range
Fuse
\[ \boxed{ \text{Camera} + \text{LiDAR}. } \]
Capture
Use high-precision
\[ \boxed{ \text{Relative Position} + \text{Velocity} + \text{Attitude} + \text{Angular Rate}. } \]
The UKF can maintain continuity as the measurement functions change across phases.
4.2.10.78 Sensor Handover
Suppose the navigation chain changes from
\[ \text{GNSS} \]
to
\[ \text{Camera} \]
to
\[ \text{LiDAR}. \]
The posterior state and covariance from the previous measurement regime become the prior for the next.
Thus,
\[ \boxed{ \text{Posterior} \rightarrow \text{Next Prior}. } \]
The filter should not normally be reset simply because the active sensor changes.
4.2.10.79 Capture Readiness
The UKF supplies both
\[ \hat x \]
and
\[ P. \]
Therefore capture criteria may consider
\[ \|\hat r_{rel}\| \]
and
\[ \|\hat v_{rel}\| \]
together with uncertainty.
Conceptually,
\[ \boxed{ \text{Capture Readiness} = \text{Estimated Relative State} + \text{State Confidence}. } \]
4.2.10.80 Relationship to Guidance and Control
The UKF feeds estimated state to guidance and control:
\[ \boxed{ \text{Sensors} \rightarrow \text{UKF} \rightarrow \hat x \rightarrow \text{Guidance} \rightarrow \text{Control}. } \]
Therefore UKF characteristics influence
- guidance accuracy,
- thrust timing,
- attitude commands,
- collision avoidance,
- capture criteria,
- actuator behavior.
Estimator performance must ultimately be evaluated in the closed GNC loop.
4.2.10.81 Common UKF Implementation Errors
Typical mistakes include:
- wrong sigma-point scaling,
- incorrect mean weights,
- incorrect covariance weights,
- forgetting the special first covariance weight,
- poor Cholesky implementation,
- asymmetric covariance,
- covariance losing positive definiteness,
- wrong state dimensions,
-
adding
Qtwice, -
adding
Rtwice, - mixing predicted and corrected sigma points,
- incorrect cross covariance,
- ordinary averaging of wrapped angles,
- naïve averaging of quaternions,
- ignoring quaternion sign ambiguity,
- using incompatible frame definitions,
- incorrect state scaling,
-
unrealistic
P_0, -
unrealistic
Q, -
unrealistic
R, - using stale measurements,
- failing to reject invalid sensor data.
4.2.10.82 Key Equations at a Glance
Scaling
\[ \boxed{ \lambda = \alpha^2(n+\kappa)-n. } \]
Center Sigma Point
\[ \boxed{ \chi_0=\hat x. } \]
Sigma Points
\[ \boxed{ \chi_i = \hat x + \left[ \sqrt{(n+\lambda)P} \right]_i } \]
\[ \boxed{ \chi_{i+n} = \hat x - \left[ \sqrt{(n+\lambda)P} \right]_i. } \]
Mean Weights
\[ \boxed{ W_0^{(m)} = \frac{\lambda}{n+\lambda} } \]
\[ \boxed{ W_i^{(m)} = \frac{1}{2(n+\lambda)}. } \]
Covariance Weight
\[ \boxed{ W_0^{(c)} = \frac{\lambda}{n+\lambda} + 1-\alpha^2+\beta. } \]
Sigma-Point Propagation
\[ \boxed{ \chi_i^- = f(\chi_i^+). } \]
Predicted Mean
\[ \boxed{ \hat x^- = \sum_i W_i^{(m)} \chi_i^-. } \]
Predicted Covariance
\[ \boxed{ P^- = \sum_i W_i^{(c)} ( \chi_i^--\hat x^- ) ( \chi_i^--\hat x^- )^T + Q. } \]
Measurement Sigma Points
\[ \boxed{ \zeta_i = h(\chi_i^-). } \]
Predicted Measurement
\[ \boxed{ \hat z = \sum_i W_i^{(m)} \zeta_i. } \]
Innovation Covariance
\[ \boxed{ S = \sum_i W_i^{(c)} ( \zeta_i-\hat z ) ( \zeta_i-\hat z )^T + R. } \]
Cross Covariance
\[ \boxed{ P_{xz} = \sum_i W_i^{(c)} ( \chi_i^--\hat x^- ) ( \zeta_i-\hat z )^T. } \]
Kalman Gain
\[ \boxed{ K = P_{xz}S^{-1}. } \]
State Update
\[ \boxed{ \hat x^+ = \hat x^- + K( z-\hat z ). } \]
Covariance Update
\[ \boxed{ P^+ = P^- - KSK^T. } \]
4.2.10.83 UKF in One Diagram
The complete UKF concept can be summarized as
\[ \boxed{ \text{Prior Mean + Covariance} } \]
\[ \downarrow \]
\[ \boxed{ \text{Generate Sigma Points} } \]
\[ \downarrow \]
\[ \boxed{ \text{Propagate Through Nonlinear Dynamics} } \]
\[ \downarrow \]
\[ \boxed{ \text{Reconstruct Predicted Mean + Covariance} } \]
then
\[ \boxed{ \text{Transform Sigma Points Through Measurement Model} } \]
\[ \downarrow \]
\[ \boxed{ \text{Predicted Measurement} } \]
\[ \downarrow \]
\[ \boxed{ \text{Innovation + Innovation Covariance} } \]
\[ \downarrow \]
\[ \boxed{ \text{Cross Covariance} } \]
\[ \downarrow \]
\[ \boxed{ \text{Kalman Gain} } \]
\[ \downarrow \]
\[ \boxed{ \text{Posterior State + Covariance}. } \]
The central philosophy is therefore
\[ \boxed{ \text{Do Not Linearize the Nonlinear Function; Propagate a Carefully Chosen Representation of the Uncertainty Through It}. } \]
4.2.10.84 Key Takeaways
The Unscented Kalman Filter should be understood through the following points:
- The UKF is a nonlinear Bayesian recursive estimator.
- It avoids explicit analytical Jacobians.
- It represents the state probability distribution using deterministic sigma points.
- A standard UKF uses
\[ 2n+1 \]
sigma points.
- Sigma points are chosen to reproduce the current mean and covariance.
- The nonlinear process model is evaluated independently for every sigma point.
- The predicted mean is reconstructed using weighted sigma points.
- The predicted covariance is reconstructed from the spread of propagated sigma points.
- The measurement model is also evaluated for every sigma point.
- Measurement covariance and state-measurement cross covariance are reconstructed statistically.
- The Kalman gain is then obtained from
\[ P_{xz}S^{-1}. \]
-
The UKF still requires realistic
Q,R, andP_0. - The parameters
\[ \alpha,\beta,\kappa \]
control sigma-point scaling and weights.
- The UKF can provide better nonlinear uncertainty propagation than a first-order EKF in many applications.
- It is generally more computationally expensive than the EKF.
- It is not automatically superior for every mission.
- It still approximates the state distribution primarily by mean and covariance.
- Angular states require special averaging.
- Quaternion states require manifold-aware or multiplicative treatment.
- Cholesky decomposition and covariance positive definiteness are important implementation issues.
- Square-root UKF formulations can improve numerical robustness.
- The UKF naturally supports nonlinear camera, LiDAR, bearing, and range measurement models.
- It is well suited to nonlinear RPO navigation.
- Multi-rate and asynchronous sensor fusion can be handled naturally.
- Sensor dropout should produce covariance growth.
- Innovation gating using NIS should still be used.
- NEES and Monte Carlo testing remain essential for verification.
-
UKF tuning should include not only
QandRbut also sigma-point scaling. - The UKF is attractive when nonlinearities are strong and Jacobians are difficult or unreliable.
The most important concept is
\[ \boxed{ \text{UKF} = \text{Sigma Points} + \text{Nonlinear Propagation} + \text{Statistical Reconstruction of Mean and Covariance}. } \]
Or physically:
\[ \boxed{ \text{Instead of asking how the nonlinear function behaves infinitesimally at one point, ask where representative possibilities around the current estimate actually move.} } \]
Next: 4.2.11 Information and Federated Filters
The Kalman-family filters developed so far have largely represented uncertainty using the covariance form
\[ \boxed{ \hat x,\qquad P. } \]
An equivalent representation can instead use the information matrix
\[ \boxed{ Y=P^{-1} } \]
and information vector
\[ \boxed{ y=Y\hat x. } \]
This representation can be particularly useful when independent information from several sensors or local estimators must be combined.
For independent information sources,
\[ \boxed{ Y_{\text{combined}} = Y_1+Y_2+\cdots } \]
under the appropriate assumptions.
This creates a natural bridge toward distributed and federated navigation architectures.
The next section should therefore develop 4.2.11 Information and Federated Filters, including:
- information-form Kalman filtering,
- information vectors and information matrices,
- relationship between covariance and information forms,
- prediction and measurement update in information space,
- why measurement information is naturally additive,
- decentralized estimation,
- local filters,
- master filters,
- federated filter architecture,
- information sharing,
- covariance and information distribution,
- no-reset and reset federated structures,
- sensor isolation,
- fault detection,
- redundancy,
- graceful degradation,
- distributed spacecraft navigation,
- multi-sensor RPO architecture,
- GNSS / IMU / optical / LiDAR local filters,
- correlation problems between local filters,
- double-counting information,
- covariance intersection where correlation is unknown,
- implementation and verification of federated spacecraft-navigation systems.
4.2.11 Information and Federated Filters
Information-form Kalman filtering, information vectors and information matrices, decentralized estimation, local and master filters, federated architectures, information sharing, fault isolation, redundancy, covariance intersection, and distributed spacecraft navigation.
Continue to Information and Federated Filters →