Back to Home

Robust VB-UKF for GPS Urban Canyon Outliers

This article details a robust Variational Bayes Unscented Kalman Filter (VB-UKF) for GPS positioning in urban canyons, using Student's t-distribution to handle outliers from multipath and blockage. It integrates IMU data via dynamic covariance estimation, achieving over 50% RMSE reduction in simulations with CTRV trajectories. Implementation safeguards and performance metrics like NIS confirm its reliability for real-time embedded use.

Beat GPS Outliers in Cities with Robust VB-UKF Tech
Advertisement 728x90

Robust Variational Bayes UKF for GPS in Urban Canyons: Outlier Rejection with Student's t-Distribution

In urban canyons, GPS signals suffer from multipath propagation and signal blockage, causing outliers in pseudoranges. The classic Fusion UKF with Gaussian noise loses accuracy, while the Variational Bayes Fusion UKF models noise as a Student's t-distribution. Iterative estimation of the scale parameter automatically downweights anomalous measurements. Simulations showed over 50% reduction in positioning RMSE compared to the baseline UKF.

Robustness via Noise Model Replacement and Sensor Fusion

Classic Kalman filters assume Gaussian additive noise, but real-world GPS outliers have heavy tails. Switching to a Student's t-distribution weights measurements by residuals: large errors get low weight, preventing trajectory distortion.

The weight is computed as $w = \frac{\nu + m}{\nu + d^2}$, where $\nu$ is degrees of freedom, $m$ is measurement dimension, and $d^2$ is the squared Mahalanobis distance. With low $\nu$ (e.g., 2), weights drop quickly for outliers; with high $\nu$ ($\nu \to \infty$), it approaches the Gaussian case.

Google AdInline article slot

Sensor fusion pairs GPS with inertial data (IMU). In the VB approach, covariance matrices $R_i$ for each sensor are iteratively estimated as random variables, enabling dynamic trust reallocation.

During GPS anomalies, VB-UKF inflates $R_{GPS}$ variance, reducing its influence and relying on IMU until the signal stabilizes.

Safeguards in Implementation

# 1. Cap lambda at 1 to prevent model mismatch
if self.cap_lambda_to_1:
    lamvec = np.minimum(lamvec, 1.0)
# 2. Prevent division by zero
lamvec = np.clip(lamvec, self.lambda_clip[0], self.lambda_clip[1])

These clips prevent weights >1 (physically impossible) and NaNs from extreme outliers.

Google AdInline article slot

Computational Complexity and Trade-offs

Classic UKF uses 2n+1 sigma points for nonlinear approximation, with $O(n^3)$ complexity from matrix inversions. VB-UKF adds iterations for variational Bayesian inference to approximate the Student's t posterior with a Gaussian.

Variational inference minimizes KL divergence between the true posterior and approximation, converging in 5–10 iterations per step. It's a sweet spot: more efficient than Particle Filters ($O(N_p n^2)$, $N_p \gg 2n$), but more robust than plain UKF.

For real-time streaming on embedded systems with dynamics up to 100 Hz, VB-UKF is well-suited.

Google AdInline article slot

Simulation Setup: CTRV Trajectory

Dynamics model: Constant Turn Rate and Velocity (CTRV) for a maneuvering vehicle in an urban canyon:

  • State: $[x, y, v, \psi, \dot{\psi}]^T$
  • GPS measurements: $[x_{gps}, y_{gps}]$ with outliers
  • IMU: accelerometer, gyroscope

Parameters:

  • Nominal GPS noise: $\sigma_{gps} = 3$ m
  • Outliers: jumps to 50–100 m at 5–10% probability
  • $\nu = 4$ for balanced sensitivity
  • Simulation: 1000 s, 10 Hz rate

Data structure: timestamped buffered measurements, 5D state vector.

Simulation Results

Trajectories and RMSE

On trajectories with turns and outliers, classic UKF drifts 20–50 m, while VB-UKF keeps errors <10 m. Positioning RMSE: 7.2 m (VB) vs 18.5 m (Fusion UKF).

NIS (Normalized Innovation Squared) for VB-UKF matches $\chi^2$ distribution, confirming correct noise modeling.

Weight Adaptation

VB mechanism dynamically downweights GPS when $d^2 > \nu$: plots show drop from 1 to 0.1 in 2–3 steps post-outlier, recovery in 5 steps.

Transient Response

After an outlier, VB-UKF recovers trajectory in 10–20 steps vs 50+ for baseline UKF. Adaptive $R$ smooths the transition.

Key Takeaways

  • VB-UKF halves RMSE in GPS outliers using Student's t and iterative $R$ estimation.
  • Dynamic sensor weighting without heuristics: GPS/IMU priority shifts Bayesian-style.
  • Compute cost: 5–10 iterations/step, fine for real-time.
  • Tune via $\nu$: 2–4 for aggressive robustness, >10 for Gaussian-like.
  • NIS/NEES validate model consistency.

— Editorial Team

Advertisement 728x90

Read Next