target tracking performance evaluation a general software environment for filtering
Post on 30-Dec-2015
79 Views
Preview:
DESCRIPTION
TRANSCRIPT
Rickard KarlssonIEEE Aerospace Conf 2007
Target Tracking Performance EvaluationA General Software Environment for Filtering
Rickard KarlssonGustaf Hendeby
Automatic ControlLinköping University, SWEDEN
rickard@isy.liu.se
Rickard KarlssonIEEE Aerospace Conf 2007
Motivating Example
Range-Only Measurements
Two Sensors with range uncertainties
•Performance?•General Software for filtering
Rickard KarlssonIEEE Aerospace Conf 2007
Outline
Nonlinear filtering using particle filters
Performace measure for nonlinear filteringKullback-Divergence vs RMSE
General Filtering SoftwareObject oriented designDesign Patterns
Examples
Rickard KarlssonIEEE Aerospace Conf 2007
Filtering
STATE SPACE MODEL Process noise
Measurement noise
PROBABILISTIC DESCRIPTION
Rickard KarlssonIEEE Aerospace Conf 2007
Bayesian Recursions: Probability Density Function (pdf)
M.U.
T.U.
Rickard KarlssonIEEE Aerospace Conf 2007
Filter Evaluation: Mean Square Error (MSE)
Mean square error (MSE) Standard performance measure Approximates the estimation error covariance Bounded by the Cramér-Rao Lower Bound (CRLB)
Ignores higher-order moments!
Compare the true trajectory with the estimated!!!
What can we do instead?
Rickard KarlssonIEEE Aerospace Conf 2007
Kullback-Leibler Information
Rickard KarlssonIEEE Aerospace Conf 2007
Filter Evaluation: Kullback Divergence (KD)
Kullback Divergence (KD) Compares the distance between two distributions
Captures all moments of the distributions True PDF from a grid-based method True PDF from PF, compare sub-optimal filters Smoothing kernel needed for implementation
Compare the true PDF with the estimated PDF.
Rickard KarlssonIEEE Aerospace Conf 2007
Generalized Gaussian
Generalized Gaussion Distribution Kullback Divergence
PD
F
Rickard KarlssonIEEE Aerospace Conf 2007
Example 1: One-dimensional Nonlinear System
Probability Density Function
xTime
Rickard KarlssonIEEE Aerospace Conf 2007
Example 1: One-dimensional Nonlinear System
Kullback Divergence RMSE
KD for one realizationcomparing PF and EKF
RMSE for 400 MC simulations
Rickard KarlssonIEEE Aerospace Conf 2007
Example 2: Range-Only Measurement
Estimate target position from range-only measurements Nonlinear measurements but Gaussian noise Posterior distribution: bimodal Point Estimate: EKF vs PF the same, i.e. same RMSE
Rickard KarlssonIEEE Aerospace Conf 2007
Example 2: Simulation Results for Range-Only
MSE KD
No Difference! KD Indicates a Difference!
EKF
PF
EKF
PF
Rickard KarlssonIEEE Aerospace Conf 2007
Calculating the probability
EKF
PF&True
Probability for target withinthe circle with radius R
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Environment in C++
MATLAB Easy to use Weak typing Somewhat slow Object oriented (not really)
C++ More complicated to use Fast Strong typing Object oriented Can be implemented !
F++: Fairly easy to use
Just provide models f(x), h(x), etc
Estimators:
EKF, PF, IMM, UKF
Open Source code available www.control.isy.liu.se/resources/f++
OOP & Design Patterns
Rickard KarlssonIEEE Aerospace Conf 2007
Object Oriented Programming (OOP)
• Inheritance
• Encapsulation
• Overloading
Rickard KarlssonIEEE Aerospace Conf 2007
Design Patterns – What is it?
• Smart Pointers• Singletons• Object factories•…
“Design patterns are general, programming language independent, conceptual high level solutions to common problems”
Example:
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Framwork in C++
Model Noise Estimator I/O
•LinModel•MultiModel•GenericModel <LinDyn,LinMeas>
•Gauss •SumNoise• …
• EKF • PF • IMM • UKF • MPF
• MATLAB • XML
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Framwork in C++
Model Noise Estimator I/O
•LinModel•MultiModel•GenericModel <LinDyn,LinMeas>
•Gauss •SumNoise• …
• EKF • PF • IMM • UKF • MPF
• MATLAB • XML
Rickard KarlssonIEEE Aerospace Conf 2007
Class: Model
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Framwork in C++
Model Noise Estimator I/O
•LinModel•MultiModel•GenericModel <LinDyn,LinMeas>
•Gauss •SumNoise• …
• EKF • PF • IMM • UKF • MPF
• MATLAB • XML
Rickard KarlssonIEEE Aerospace Conf 2007
Class: Noise
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Framwork in C++
Model Noise Estimator I/O
•LinModel•MultiModel•GenericModel <LinDyn,LinMeas>
•Gauss •SumNoise• …
• EKF • PF • IMM • UKF • MPF
• MATLAB • XML
Rickard KarlssonIEEE Aerospace Conf 2007
Class: Estimator
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Framwork in C++
Model Noise Estimator I/O
•LinModel•MultiModel•GenericModel <LinDyn,LinMeas>
•Gauss •SumNoise• …
• EKF • PF • IMM • UKF • MPF
• MATLAB • XML
Ex: Linear Gaussian system with KF and MATLAB support
Rickard KarlssonIEEE Aerospace Conf 2007
F++ A General Filtering Framwork in C++
Model Noise Estimator I/O
•LinModel•MultiModel•GenericModel <LinDyn,LinMeas>
•Gauss •SumNoise• …
• EKF • PF • IMM • UKF • MPF
• MATLAB • XML
Ex: Non-Linear Gaussian system with PF and MATLAB support
Rickard KarlssonIEEE Aerospace Conf 2007
Code: Main Estimation Loop
Estimator Time Update Meas. Update Estimate
This works for any estimator!
estimate
uy
filter
Rickard KarlssonIEEE Aerospace Conf 2007
Code: Main Program
INPUT
MC-loop
True/Meas
Estimate
OUTPUT
Rickard KarlssonIEEE Aerospace Conf 2007
Summary
Rickard KarlssonAutomatic ControlLinköping University, SWEDEN
rickard@isy.liu.se
www.control.isy.liu.se/~rickard
•Proposed KD as a performance measure
•General Filtering Software
top related