© saab ab 2007 multicore applications at data fusion - saab sds dr. mats ekman
TRANSCRIPT
© Saab AB 2007
Multicore Applications at Data Fusion - Saab SDS
Dr. Mats Ekman
© Saab AB 2007
Saab Data Fusion Group
• A core team of about 18 engineers, including 6 PhDs
• Active since 1984
• Air, Land, Naval, Civil domains
• Research & Development
• Marketing/Sales support
• Technical tender support
• Analysis/Design
• Implementation
• Testing, customer training Multi Sensor Tracker (MST)
Parameter tuningAlgorithm RedesignAlterations, tests
xt+1=f(xt)+wt
yt+1=h(xt)+et
03-10-06
SAAB SYSTEMS
plots
tracks
sensor
Multicore ImplementationExample 1- a success
2 step process:- get the positions- calculate scalar products and compare
with the plane
Since objects are independent parallelization of the process
TBB library (Intel Threading Building block) for C++
03-10-06
SAAB SYSTEMS
Results
Total process load
•Tested on a 4 cores local process 2.5 times faster.
•Delivered to customer - core 2.
•Drawback: need to modify the code – cannot use iterators. Some overhead using threading, cache misses?
03-10-06
SAAB SYSTEMS
Example 2 – a failure
plots
tracks
sensor
Association Process: • pre-processing – transformation to polar coordinates and clustering• Data association – work on each cluster, since cluster are independent parallelization
Technical problem:1.Static variables – several treads workingon the same variables 2. Common resources – ex. Id for tracks are obtained from a common track bank several treads in trying to access the bank lock (mute, sync)
Solution: restructure the code
Id bank
void set
Void put
03-10-06
SAAB SYSTEMS
Ongoing and Future Multicore Applicationsat Saab – CoderMP cooperation
• Particle filtering
• Anomaly detection
IDEALSIntegrated Detection and Estimation ALgorithms Solutions for data processing and fusion
Nederland
IDEALS-08:0084 1.0
7
Intro to particle filtering
A target here and now…
…expected to arrive here…
…but radar plotappeared here… …so the target is probably here
prediction – updating – prediction – updating…
IDEALSIntegrated Detection and Estimation ALgorithms Solutions for data processing and fusion
Nederland
IDEALS-08:0084 1.0
8
Probability densities
A target here and now…
…expected to arrive here…
…but radar plotappeared here…
…so the target is probably here
IDEALSIntegrated Detection and Estimation ALgorithms Solutions for data processing and fusion
Nederland
IDEALS-08:0084 1.0
9
Filtering principles
Exactly: Impractical
Ellipses/gaussian distributions: Kalman filtering
Particle filters
IDEALSIntegrated Detection and Estimation ALgorithms Solutions for data processing and fusion
Nederland
IDEALS-08:0084 1.0
10
Particle filters
Resampling
IDEALSIntegrated Detection and Estimation ALgorithms Solutions for data processing and fusion
Nederland
IDEALS-08:0084 1.0
11
Comparison (1)
Standard Kalman Constrained Kalman Particle filter
IDEALSIntegrated Detection and Estimation ALgorithms Solutions for data processing and fusion
Nederland
IDEALS-08:0084 1.0
12
Comparison (2)Particle filters - superior at severe nonlinearities
Standard Kalman Constrained Kalman Particle filter
Parallelization of PFs
Initialisation
Resampling
Normalise weights
Prediction
Update
Particle batch 1 Particle batch 2 Particle batch i Particle batch K
Initialisation
Resampling
Normalise weights
Prediction
Update
Initialisation
Resampling
Normalise weights
Prediction
Update
Initialisation
Resampling
Normalise weights
Prediction
Update
Redistribute particles between batches (i.e. communication)
Videos
Real Data from Enköping• Acoustic Sensors
• No road constraints
Simulated Data• Acoustic Sensors
• Comparison between different road constrained filters
Mix of real data from Gotland and simulated data• Radar, acoustic and seismic sensors
• Road constraints
Simulated Data• Terrain constraints
• Comparinson with only road constraints
© Saab AB 2007
Anomaly detection – complement to Rule Based Situation Assessment
Identify targets that do not behave like the majority
Here: Vessels south of Sweden.
Blue: Training data Green: Test data identified
as normal Red: Test data identified as
abnormal