Dr Salman Aslam - CYPHYNETS · 2019-01-28 · Dr Salman Aslam Particle Filters in Robotics....
Transcript of Dr Salman Aslam - CYPHYNETS · 2019-01-28 · Dr Salman Aslam Particle Filters in Robotics....
Particle Filters in Robotics
Dr Salman Aslam
Associate ProfessorAvionics Department
College of Aeronautical EngineeringPAF Academy Risalpur
0 / 31
IntroductionParticle Filters
ExamplesConclusion
Outline
1 IntroductionBioCAE
2 Particle FiltersStep 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
3 Examples1D2D
4 Conclusion
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
BioCAE
IntroductionBio (salman at gatech.edu)
Education1 2012: Associate Professor, CAE (teach Signals and Systems, Modern Control)2 2011: PhD, Georgia Tech (Target Tracking Using Residual Vector Quantization)
3 2008: MS ECE, Georgia Tech4 1995: BE EE, US Air Force Academy
Research interests1 Pattern recognition/machine learning + computer vision (thesis)2 Helicopters
Experience1 2011: Samsung Research Labs (Dallas, Texas)2 2010: Qualcomm Multimedia Research (San Diego, California)3 2009: Nvidia Video Research Group (Santa Clara, California)4 2008: Nvidia Video Algorithms Group (Santa Clara, California)5 2007: Siemens Global CoC for Intelligent Video (Atlanta, Georgia)6 2003: Radar triangulation system7 2002: Aircraft deployment patterns of enemy fighters8 2001: V/UHF Jammers9 1995: US Department of Defense, Washington DC
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
BioCAE
CAEHistory
1965: setup in Korangi Creek, Karachi
1983: moved to PAF Academy, Risalpur
1996: affiliated with NUST
2010: re-accredited by PCE, highest score in country
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
BioCAE
CAEDepartments and Faculty
1 Avionics Engineering
2 Aerospace Engineering
3 Industrial Engineering
4 Humanities and Sciences
5 Professional Continuing Education
24 PhDs
38 Masters
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
BioCAE
CAELabs
Avionics1 Basic2 Digital and Embedded Systems3 Guidance, Navigation, Controls4 Antenna and Electromagnetic5 Communications6 Radar7 Microwave8 PCB Prototyping9 Thermal Imaging
Aerospace1 Aerodynamics2 Propulsion and Heat Transfer3 Structures4 Materials Science5 Numerical Analysis6 Aerospace Project
Industrial Engineering workshop, Physics Lab, Chemistry Lab
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Overview
The particle filter is a solution to the recursiveBayesian equations of a time-dynamic system
Ok, so working backwards, we need to know about timedynamic systems, Bayesian equations, recursion and a solutionto these equations:
1 Time dynamic systems2 Bayes Theorem (Prior, Likelihood, Posterior)3 Recursion (Predict and Update)4 Solutions (Kalman and Particle Filters)
Let’s look at these one at a time
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Time dynamic systems
Time-dynamic systems are described by two equations:
xk = fk(xk−1, vk−1)
zk = hk(xk ,nk)
States are denoted by xObservations are denoted by zProcess noise is denoted by vObservation noise is denoted by nTime is denoted by kState prediction model, fk : RD × RD → RD , describes stateevolutionObservation model, hk : RN × RN → RN , relates observationsto the states
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Time dynamic systemsExamples
Robotics: motion of a robot
Agriculture: color change of a fruit
Human body: Secretion of insulin
Finance: Fluctuations in inflation
Mechanical: Spring mass system
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Bayes Theorem
Ok, time dynamic systems make sense but how does the Bayestheorem fit into our picture here?
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Bayes TheoremGraphical demonstration
20 10
100
5
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Bayes TheoremExample from real life: Prosecutor’s fallacy
If someone is guilty, the probability of a DNA match is large,p(D|g) is large
convict?
Probability that a person is guilty if picked randomly from alarge database is small, p(g) is very small
Probability p(D, g) = p(D|g)p(g) is not so large after all
So the prior information, p(g) is important!
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Bayes TheoremRelationship with time dynamic systems
p(x |z) = p(z|x)p(x)p(z)
Posterior distribution of states (our goal)Prior distribution of states (our belief)Likelihood distribution (we can compute it)Observation probability (we won’t need it!)
Now, what’s the deal with recursion?
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Recursion
In Bayes’ theorem, we talked about 3 important probabilitydistributions (posterior, prior, likelihood)
We want to compute the posterior distribution at every timeinstant
This is recursion, incremental updates, not batch mode
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Recursion
We assume that our system and observation models areavailable in probabilistic form
The probabilistic state-space formulation and the requirementfor updating of information on receipt of new measurementsare ideally suited for the Bayesian approach
1 Prediction: predict states using model2 Update: correction applied to prediction after observation
arrives
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Recursiona. Predict
xk state at time k
Zk−1 all observations till time k − 1
model posterior from time k-1
marginalization
nuisance variable
Bayes' rule
independence,Bayes' rule
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Recursionb. Update
likelihood prior (prediction)
posterior
Bayes' rule
independence, Bayes' rule
nuisance variable
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
SolutionsHow to implement?
The recursive propagation of the state density is only aconceptual solution in that in general, it cannot be determinedanalytically.
Solutions do exist in a restrictive set of cases, including theKalman filter and grid-based filter
State space is discrete and consists of finite number of states
In many situations of interest, the conditions of linearity andGaussianity do not hold, and approximations are necessary.
Three approximate nonlinear Bayesian filters are the ExtendedKalman Filter (EKF), approximate grid based methods andthe particle filter
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
SolutionsBigger picture
PROBABILISTIC GRAPHICAL MODELS
Markov Models
Bayesian networks Markov Random Fields
Static Dynamic
Dynamical systems
observable hidden linear non-linear
Directed Un-directed
Kalman Extended KalmanUnscented Kalman
Particle Filter
segmentation, denoising, stereo, photo-montage
tracking
tracking
speech
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsa. Hidden Markov Models
S1
a01
a10
a00 a11
S0
v0 v1
b01b10b00
b10
xk-1 xk xk+1x1 x2
zk-1 zk zk+1z1 z2
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsb. Kalman Filter
x[k-1] x[k]
z [k]B
-
K
A Z-1
Cx[k]
x[k-1] x[k]
z[k]B
w[k] v[k]
A Z-1
Cx[k]u[k]
-
LINEAR DYNAMICAL SYSTEM
KALMAN FILTER
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsc. Particle filter
All densities are modeled using samples
Two step process, predict, and then update using resampling
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsc. Particle filter
http://lia.deis.unibo.it/research/SOMA/MobilityPrediction/filters.shtml
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsc. Particle filter
There is an essential duality between a sample and the density(distribution) from which it is generated
The density generates the sampleConversely, given a sample, we can approximately recreate thedensity
In terms of densities, the inference process is encapsulated inthe updating of the prior density p(x) to the posterior densityp(x |z) through the medium of the likelihood function p(z |x)
In terms of samples, this corresponds to the updating of asample from p(x) to a sample from p(x |z) through thelikelihood function p(z |x)
Smith Gelfand, Bayesian Statistics Without Tears, A Sampling Resampling Perspective, 1992
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsc. Particle filter
In many application areas, elements of nonlinearity andnon-Gaussianity need to be included to accurately model theunderlying dynamics of a physical system
Moreover, it is typically crucial to process data on-line as itarrives
Particle filters are Sequential Monte Carlo (SMC) methodsbased on point-mass (or ”particle”) representations ofprobability densities which can be applied to any state-spacemodel
The particle filter generalizes the Kalman filter
The algorithm used is Sequential Importance Sampling (SIS)
Arulampalam et al., A tutorial on particle filters for online nonlinear non-Gaussian Bayesian Tracking, 2002
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Step 1. Time dynamic systemsStep 2. Bayes TheoremStep 3. RecursionStep 4. Solutions
Solutionsc. Particle filter
(a) Reference (uniform)density and test PDF.
>
>
>
reference cdf
test cdf
>
>
>
transition, therefore retain
>>
> >
(b) Comparing CDFs.
1 2 3 4 5 6 7 8 9 100
1
2
3
4
5
6
7
8
9
(c) Particles 4, 7 and 9are picked repeatedly.
Particle filter, resampling.
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
1D2D
Examples
Let’s look at a 1D and 2D example.
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
1D2D
Example1D tracking with particle filter
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
1D2D
Example2D tracking with particle filter
Use random affine deformation to model motion
Perturb affine parametersFor each affine set,
apply forward affine transform on zero-centered canonical gridbilinear interpolation to extract ROI, one per affine set, asshown below
For set corresponding to least reconstruction error, applyforward affine transform to (x, y) and compare with groundtruth to get track error
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
1D2D
Example2D tracking with particle filter
Density of grid points is greater in the horizontal direction.
(-15.5, -15.5) (16.5, -15.5)(16.5, 16.5)(-15.5, 16.5)
Grid A: 33x33
Grid B: 33x33
Parameters to affinely warp Grid A to Grid B
Grid B: 33x33
(moved to coordinate (1,1))
Dr Salman Aslam Particle Filters in Robotics
IntroductionParticle Filters
ExamplesConclusion
Conclusion
Particle filter is a sub-optimal solution to the Bayesian recursionequations
Dr Salman Aslam Particle Filters in Robotics