SlideShare a Scribd company logo
1 of 40
Probabilistic State Estimation
With Application To Vehicle Navigation
Matthew Kirchner
Naval Air Warfare Center – Weapons Division
Department of ECEE – University of Colorado at Boulder
November 1, 2010
Topics
• Why?
• Review
• Background
• Kalman Filter
• Particle Filter
• SLAM
Why Probability?
• Real sensors have
uncertainty
• May have multiple
sensors
• Some states are not
directly observable
• Ambiguous sensor
observations
Importance of Bayes Rule
Bayes Rule
Recursive
Bayesian
Estimation
Linear Kalman
Filter
Unscented
Kalman Filter
Extended Kalman
Filter
EKF SLAM
FastSLAMParticle Filter FastSLAM
Bayes Rule
)(
)()|(
)|(
BP
APABP
BAP 
Prior
Likelihood
Posterior
Normalizing
Constant
Equivalent Bayes Rule
)()|()|( APABPBAP 
)()|()|( APABPBAP 
Bayes Rule Example
• School: 60% boys and 40% girls
• All boys wear pants
• Half of girls wear skirts, half wear pants
• You see a random student and can only tell
they are wearing pants.
• Based on your observation, what is the
probability the student you saw is a girl?
Bayes Rule Example
• School: 60% boys and
40% girls
• All boys wear pants
• Half of girls wear skirts,
half wear pants
• You see a random student
and can only tell they are
wearing pants.
• Based on your
observation, what is the
probability the student
you saw is a girl?
• We want to find:
– P(Student=Girl | Clothes=Pants)
• Prior?
– P(Student=Girl) = 0.4
• Likelihood?
– P(Clothes=Pants | Student=Girl)
= 0.5
• Normalizing Constant?
– P(Clothes=Pants) = 0.8
• Bayes Rule!
– P(Student=Girl | Clothes=Pants)
= (0.5)*(0.4)/(0.8) = 0.25
Gaussian
1D 2D
Gaussian
1D 2D
Gaussian
• 2D Probability density
function described by
mean vector and
covariance matrix
• 1D Probability density
function described by
mean and variance
),(~ 2
Nx






















2
221
12
2
1
2
1
2
1
),(~









NX
x
x
X
Functions of Random Variables
Functions of Random Variables
• Linear function
• Mean:
• Covariance:
• Linear functions only!
xFy 
T
xy FF 
xFy 
Kalman Filter
• Introduced in 1960 by Rudolf Kalman
• Many applications:
– Vehicle guidance systems
– Control systems
– Radar tracking
– Object tracking in video
– Atmospheric models
Kalman Filter
),|( ttt uzxPWe want to find:
Kalman Filter
Process
Model
Process
Model
Observation
Model
Observation
Model
Observation
Model
Kalman Filter
• Process Model:
– Deterministic:
– Probabilistic:
• Used to calculate prior distribution
• Observation Model:
– Deterministic:
– Probabilistic:
• Used to calculate likelihood distribution
),( 1 ttt uxfx 
)( tt xfz 
),,(),|( 11 tttttt wuxfuxxP  
),()|( tttt vxfxzP 
Kalman Filter: Assumptions
• Underlying system is modeled as Markov
–
• All beliefs are Gaussian distributions
– Additive zero mean Gaussian noise
• Linear process and observation models
– Process Model:
•
– Observation Model:
•
),,,|()|( 3211   tttttt xxxxPxxP
ttt vHxz 
tttt wBuFxx  1
),0(~ QNwt
),0(~ RNvt
Kalman Filter Steps
1. Using process model, previous state, and
controls, find prior
– Sometimes called ‘predict’ step, or ‘a priori’
2. Using prior and observation model, find sensor
likelihood
– If I knew state, what should sensors read?
3. Find observation residual
– Difference between actual sensor values and what
was calculated in step 2. Also sometimes called
‘innovation’.
Kalman Filter Steps
4. Compute Kalman gain matrix
5. Using Kalman gain and prior, calculate
posterior
– Sometimes called ‘correct’ step or ‘a posteriori’
Kalman Filter Steps
• Algorithm Kalman_Filter( )
– 1a:
– 1b:
– 2:
– 3:
– 4:
– 5a:
– 5b:
• Return( )
ttttt uBxFx  1
ˆ
t
T
tttt QFF  1
ˆ
ttt xHz ˆˆ 
ttt zzz ˆ
1
)ˆ(ˆ 
 t
T
ttt
T
ttt RHHHK
tttt zKxx  ˆ
tttt HKI  ˆ)(
tttt zux ,,, 11  
ttx ,
Kalman Filter
Kalman Filter Example
1txtx
Kalman Filter Example
Root Mean Squared Error (RMSE)
KF 1.0030m
GPS Only 3.6840m
Kalman Filter Example
GPS Lost
GPS
Reacquired
Kalman Filter Example
Kalman Filter
• O(k^2.4+n^2)
• Many real systems are non linear
– Extended Kalman filter
– Unscented Kalman filter
– Particle filter
• Some systems are non-Gaussian
– Particle filter
Extended Kalman Filter
• Linearize process and observation models
– By finding Jacobian matrices
– Analytically or numerically
• Then use regular Kalman filter algorithm
• Sub-optimal
29
EKF Linearization
EKF Linearization
Unscented Kalman Filter
Unscented Kalman Filter
EKF UKF
Particle Filter
Particle Filter
• Represent distribution as set of randomly
generated samples, called ‘particles’.
• Functions can be nonlinear and non-gaussian
• Multi-hypothesis belief propagation
Particle Filter
• Sample the prior
• Compute likelihood of particles given
measurement
– Also called particle ‘weights’
• Sample posterior: Sample from particles
proportional to particle weights
– Also called ‘resampling’ or ‘importance sampling’
Simultaneous Localization and
Mapping
• SLAM Problem:
– Need map to localize
– Need location to make map
• Brainstorming: How can we solve this problem?
– Map could be locations of landmarks or occupancy
grid
• Kalman filter based: landmark positions part of
state variables
• Particle filter based: landmark positions or
occupancy map included in each particle
),|,( ttt uzmxP
Feature-based SLAM
FastSLAM - Example
Other Probabilistic Applications
Other Probabilistic Applications

More Related Content

What's hot

Digital image processing- Compression- Different Coding techniques
Digital image processing- Compression- Different Coding techniques Digital image processing- Compression- Different Coding techniques
Digital image processing- Compression- Different Coding techniques sudarmani rajagopal
 
Digital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image FundamentalsDigital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image FundamentalsMostafa G. M. Mostafa
 
Face recognition technology
Face recognition technologyFace recognition technology
Face recognition technologyranjit banshpal
 
Composite transformations
Composite transformationsComposite transformations
Composite transformationsMohd Arif
 
Motion estimation overview
Motion estimation overviewMotion estimation overview
Motion estimation overviewYoss Cohen
 
Homomorphic filtering
Homomorphic filteringHomomorphic filtering
Homomorphic filteringGautam Saxena
 
Image Restoration
Image RestorationImage Restoration
Image RestorationPoonam Seth
 
LAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSING
LAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSINGLAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSING
LAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSINGPriyanka Rathore
 
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...Edge AI and Vision Alliance
 
Smoothing in Digital Image Processing
Smoothing in Digital Image ProcessingSmoothing in Digital Image Processing
Smoothing in Digital Image ProcessingPallavi Agarwal
 
5. gray level transformation
5. gray level transformation5. gray level transformation
5. gray level transformationMdFazleRabbi18
 
discrete wavelet transform
discrete wavelet transformdiscrete wavelet transform
discrete wavelet transformpiyush_11
 
Image Enhancement using Frequency Domain Filters
Image Enhancement using Frequency Domain FiltersImage Enhancement using Frequency Domain Filters
Image Enhancement using Frequency Domain FiltersKarthika Ramachandran
 
Face Recognition based Lecture Attendance System
Face Recognition based Lecture Attendance SystemFace Recognition based Lecture Attendance System
Face Recognition based Lecture Attendance SystemKarmesh Maheshwari
 
05 histogram processing DIP
05 histogram processing DIP05 histogram processing DIP
05 histogram processing DIPbabak danyal
 
Pixel Relationships Examples
Pixel Relationships ExamplesPixel Relationships Examples
Pixel Relationships ExamplesMarwa Ahmeid
 
Fast Fourier Transform
Fast Fourier TransformFast Fourier Transform
Fast Fourier Transformop205
 
Lecture 15 DCT, Walsh and Hadamard Transform
Lecture 15 DCT, Walsh and Hadamard TransformLecture 15 DCT, Walsh and Hadamard Transform
Lecture 15 DCT, Walsh and Hadamard TransformVARUN KUMAR
 

What's hot (20)

Digital image processing- Compression- Different Coding techniques
Digital image processing- Compression- Different Coding techniques Digital image processing- Compression- Different Coding techniques
Digital image processing- Compression- Different Coding techniques
 
Digital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image FundamentalsDigital Image Processing: Digital Image Fundamentals
Digital Image Processing: Digital Image Fundamentals
 
Face recognition technology
Face recognition technologyFace recognition technology
Face recognition technology
 
fractals
fractalsfractals
fractals
 
Composite transformations
Composite transformationsComposite transformations
Composite transformations
 
Motion estimation overview
Motion estimation overviewMotion estimation overview
Motion estimation overview
 
Homomorphic filtering
Homomorphic filteringHomomorphic filtering
Homomorphic filtering
 
Image Restoration
Image RestorationImage Restoration
Image Restoration
 
LAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSING
LAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSINGLAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSING
LAPLACE TRANSFORM SUITABILITY FOR IMAGE PROCESSING
 
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
“Introduction to Simultaneous Localization and Mapping (SLAM),” a Presentatio...
 
Smoothing in Digital Image Processing
Smoothing in Digital Image ProcessingSmoothing in Digital Image Processing
Smoothing in Digital Image Processing
 
5. gray level transformation
5. gray level transformation5. gray level transformation
5. gray level transformation
 
discrete wavelet transform
discrete wavelet transformdiscrete wavelet transform
discrete wavelet transform
 
Image Enhancement using Frequency Domain Filters
Image Enhancement using Frequency Domain FiltersImage Enhancement using Frequency Domain Filters
Image Enhancement using Frequency Domain Filters
 
Fourier transform
Fourier transformFourier transform
Fourier transform
 
Face Recognition based Lecture Attendance System
Face Recognition based Lecture Attendance SystemFace Recognition based Lecture Attendance System
Face Recognition based Lecture Attendance System
 
05 histogram processing DIP
05 histogram processing DIP05 histogram processing DIP
05 histogram processing DIP
 
Pixel Relationships Examples
Pixel Relationships ExamplesPixel Relationships Examples
Pixel Relationships Examples
 
Fast Fourier Transform
Fast Fourier TransformFast Fourier Transform
Fast Fourier Transform
 
Lecture 15 DCT, Walsh and Hadamard Transform
Lecture 15 DCT, Walsh and Hadamard TransformLecture 15 DCT, Walsh and Hadamard Transform
Lecture 15 DCT, Walsh and Hadamard Transform
 

Viewers also liked (8)

Lecture 03 - Kinematics and Control
Lecture 03 - Kinematics and ControlLecture 03 - Kinematics and Control
Lecture 03 - Kinematics and Control
 
Lecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping IILecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping II
 
Introduction to ROBOTICS
Introduction to ROBOTICSIntroduction to ROBOTICS
Introduction to ROBOTICS
 
Lecture 02: Locomotion
Lecture 02: LocomotionLecture 02: Locomotion
Lecture 02: Locomotion
 
09 mouvement-2
09 mouvement-209 mouvement-2
09 mouvement-2
 
Multisensor data fusion in object tracking applications
Multisensor data fusion in object tracking applicationsMultisensor data fusion in object tracking applications
Multisensor data fusion in object tracking applications
 
Lte advanced
Lte advancedLte advanced
Lte advanced
 
Data fusion with kalman filtering
Data fusion with kalman filteringData fusion with kalman filtering
Data fusion with kalman filtering
 

Similar to Lecture 09: SLAM

Detection&Tracking - Thermal imaging object detection and tracking
Detection&Tracking - Thermal imaging object detection and trackingDetection&Tracking - Thermal imaging object detection and tracking
Detection&Tracking - Thermal imaging object detection and trackinghadarpinhas1
 
Ant Colony Optimization algorithms in ADSA
Ant Colony Optimization algorithms in ADSAAnt Colony Optimization algorithms in ADSA
Ant Colony Optimization algorithms in ADSAALIZAIB KHAN
 
presentation.ppt
presentation.pptpresentation.ppt
presentation.pptWasiqAli28
 
Chaos Presentation
Chaos PresentationChaos Presentation
Chaos PresentationAlbert Yang
 
Kalman Filtering
Kalman FilteringKalman Filtering
Kalman FilteringEngin Gul
 
Flexible Memory Allocation in Kinetic Monte Carlo Simulations
Flexible Memory Allocation in Kinetic Monte Carlo SimulationsFlexible Memory Allocation in Kinetic Monte Carlo Simulations
Flexible Memory Allocation in Kinetic Monte Carlo SimulationsAaron Craig
 
"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest
"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest
"Speech recognition" - Hidden Markov Models @ Papers We Love BucharestStefan Adam
 
Sequential Monte Carlo (SMC) and Particle Filters
Sequential Monte Carlo (SMC) and Particle FiltersSequential Monte Carlo (SMC) and Particle Filters
Sequential Monte Carlo (SMC) and Particle FiltersEngin Gul
 
Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]
Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]
Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]AI Robotics KR
 
Queuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depthQueuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depthIdcIdk1
 
Kalman filters
Kalman filtersKalman filters
Kalman filtersAJAL A J
 

Similar to Lecture 09: SLAM (20)

Av 738-Adaptive Filters - Extended Kalman Filter
Av 738-Adaptive Filters - Extended Kalman FilterAv 738-Adaptive Filters - Extended Kalman Filter
Av 738-Adaptive Filters - Extended Kalman Filter
 
Kalman filter.pdf
Kalman filter.pdfKalman filter.pdf
Kalman filter.pdf
 
Kalman filters
Kalman filtersKalman filters
Kalman filters
 
Detection&Tracking - Thermal imaging object detection and tracking
Detection&Tracking - Thermal imaging object detection and trackingDetection&Tracking - Thermal imaging object detection and tracking
Detection&Tracking - Thermal imaging object detection and tracking
 
Ant Colony Optimization algorithms in ADSA
Ant Colony Optimization algorithms in ADSAAnt Colony Optimization algorithms in ADSA
Ant Colony Optimization algorithms in ADSA
 
presentation.ppt
presentation.pptpresentation.ppt
presentation.ppt
 
Chaos Presentation
Chaos PresentationChaos Presentation
Chaos Presentation
 
Kalman Filtering
Kalman FilteringKalman Filtering
Kalman Filtering
 
kalman filtering "From Basics to unscented Kaman filter"
 kalman filtering "From Basics to unscented Kaman filter" kalman filtering "From Basics to unscented Kaman filter"
kalman filtering "From Basics to unscented Kaman filter"
 
sequencea.ppt
sequencea.pptsequencea.ppt
sequencea.ppt
 
presentation_btp
presentation_btppresentation_btp
presentation_btp
 
Slideshare
SlideshareSlideshare
Slideshare
 
Flexible Memory Allocation in Kinetic Monte Carlo Simulations
Flexible Memory Allocation in Kinetic Monte Carlo SimulationsFlexible Memory Allocation in Kinetic Monte Carlo Simulations
Flexible Memory Allocation in Kinetic Monte Carlo Simulations
 
"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest
"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest
"Speech recognition" - Hidden Markov Models @ Papers We Love Bucharest
 
Sequential Monte Carlo (SMC) and Particle Filters
Sequential Monte Carlo (SMC) and Particle FiltersSequential Monte Carlo (SMC) and Particle Filters
Sequential Monte Carlo (SMC) and Particle Filters
 
ITSP Dual Rail Project
ITSP Dual Rail ProjectITSP Dual Rail Project
ITSP Dual Rail Project
 
Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]
Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]
Sensor Fusion Study - Ch15. The Particle Filter [Seoyeon Stella Yang]
 
Nbvtalkonfeatureselection
NbvtalkonfeatureselectionNbvtalkonfeatureselection
Nbvtalkonfeatureselection
 
Queuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depthQueuing theory and traffic analysis in depth
Queuing theory and traffic analysis in depth
 
Kalman filters
Kalman filtersKalman filters
Kalman filters
 

More from University of Colorado at Boulder

Three-dimensional construction with mobile robots and modular blocks
 Three-dimensional construction with mobile robots and modular blocks Three-dimensional construction with mobile robots and modular blocks
Three-dimensional construction with mobile robots and modular blocksUniversity of Colorado at Boulder
 

More from University of Colorado at Boulder (20)

Three-dimensional construction with mobile robots and modular blocks
 Three-dimensional construction with mobile robots and modular blocks Three-dimensional construction with mobile robots and modular blocks
Three-dimensional construction with mobile robots and modular blocks
 
Template classes and ROS messages
Template classes and ROS messagesTemplate classes and ROS messages
Template classes and ROS messages
 
NLP for Robotics
NLP for RoboticsNLP for Robotics
NLP for Robotics
 
Indoor Localization Systems
Indoor Localization SystemsIndoor Localization Systems
Indoor Localization Systems
 
Vishal Verma: Rapidly Exploring Random Trees
Vishal Verma: Rapidly Exploring Random TreesVishal Verma: Rapidly Exploring Random Trees
Vishal Verma: Rapidly Exploring Random Trees
 
Lecture 10: Summary
Lecture 10: SummaryLecture 10: Summary
Lecture 10: Summary
 
Lecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping IILecture 08: Localization and Mapping II
Lecture 08: Localization and Mapping II
 
Lecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping ILecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping I
 
Lecture 06: Features and Uncertainty
Lecture 06: Features and UncertaintyLecture 06: Features and Uncertainty
Lecture 06: Features and Uncertainty
 
Lecture 05
Lecture 05Lecture 05
Lecture 05
 
Lecture 04
Lecture 04Lecture 04
Lecture 04
 
Lecture 01
Lecture 01Lecture 01
Lecture 01
 
Lectures 11+12: Debates
Lectures 11+12: DebatesLectures 11+12: Debates
Lectures 11+12: Debates
 
Lecture 09: Localization and Mapping III
Lecture 09: Localization and Mapping IIILecture 09: Localization and Mapping III
Lecture 09: Localization and Mapping III
 
Lecture 10: Navigation
Lecture 10: NavigationLecture 10: Navigation
Lecture 10: Navigation
 
Lecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping ILecture 07: Localization and Mapping I
Lecture 07: Localization and Mapping I
 
Lecture 06: Features
Lecture 06: FeaturesLecture 06: Features
Lecture 06: Features
 
Lecture 05: Vision
Lecture 05: VisionLecture 05: Vision
Lecture 05: Vision
 
Lecture 04: Sensors
Lecture 04: SensorsLecture 04: Sensors
Lecture 04: Sensors
 
Lecture 03: Kinematics
Lecture 03: KinematicsLecture 03: Kinematics
Lecture 03: Kinematics
 

Lecture 09: SLAM

  • 1. Probabilistic State Estimation With Application To Vehicle Navigation Matthew Kirchner Naval Air Warfare Center – Weapons Division Department of ECEE – University of Colorado at Boulder November 1, 2010
  • 2. Topics • Why? • Review • Background • Kalman Filter • Particle Filter • SLAM
  • 3. Why Probability? • Real sensors have uncertainty • May have multiple sensors • Some states are not directly observable • Ambiguous sensor observations
  • 4. Importance of Bayes Rule Bayes Rule Recursive Bayesian Estimation Linear Kalman Filter Unscented Kalman Filter Extended Kalman Filter EKF SLAM FastSLAMParticle Filter FastSLAM
  • 6. Equivalent Bayes Rule )()|()|( APABPBAP  )()|()|( APABPBAP 
  • 7. Bayes Rule Example • School: 60% boys and 40% girls • All boys wear pants • Half of girls wear skirts, half wear pants • You see a random student and can only tell they are wearing pants. • Based on your observation, what is the probability the student you saw is a girl?
  • 8. Bayes Rule Example • School: 60% boys and 40% girls • All boys wear pants • Half of girls wear skirts, half wear pants • You see a random student and can only tell they are wearing pants. • Based on your observation, what is the probability the student you saw is a girl? • We want to find: – P(Student=Girl | Clothes=Pants) • Prior? – P(Student=Girl) = 0.4 • Likelihood? – P(Clothes=Pants | Student=Girl) = 0.5 • Normalizing Constant? – P(Clothes=Pants) = 0.8 • Bayes Rule! – P(Student=Girl | Clothes=Pants) = (0.5)*(0.4)/(0.8) = 0.25
  • 11. Gaussian • 2D Probability density function described by mean vector and covariance matrix • 1D Probability density function described by mean and variance ),(~ 2 Nx                       2 221 12 2 1 2 1 2 1 ),(~          NX x x X
  • 12. Functions of Random Variables
  • 13. Functions of Random Variables • Linear function • Mean: • Covariance: • Linear functions only! xFy  T xy FF  xFy 
  • 14. Kalman Filter • Introduced in 1960 by Rudolf Kalman • Many applications: – Vehicle guidance systems – Control systems – Radar tracking – Object tracking in video – Atmospheric models
  • 15. Kalman Filter ),|( ttt uzxPWe want to find:
  • 17. Kalman Filter • Process Model: – Deterministic: – Probabilistic: • Used to calculate prior distribution • Observation Model: – Deterministic: – Probabilistic: • Used to calculate likelihood distribution ),( 1 ttt uxfx  )( tt xfz  ),,(),|( 11 tttttt wuxfuxxP   ),()|( tttt vxfxzP 
  • 18. Kalman Filter: Assumptions • Underlying system is modeled as Markov – • All beliefs are Gaussian distributions – Additive zero mean Gaussian noise • Linear process and observation models – Process Model: • – Observation Model: • ),,,|()|( 3211   tttttt xxxxPxxP ttt vHxz  tttt wBuFxx  1 ),0(~ QNwt ),0(~ RNvt
  • 19. Kalman Filter Steps 1. Using process model, previous state, and controls, find prior – Sometimes called ‘predict’ step, or ‘a priori’ 2. Using prior and observation model, find sensor likelihood – If I knew state, what should sensors read? 3. Find observation residual – Difference between actual sensor values and what was calculated in step 2. Also sometimes called ‘innovation’.
  • 20. Kalman Filter Steps 4. Compute Kalman gain matrix 5. Using Kalman gain and prior, calculate posterior – Sometimes called ‘correct’ step or ‘a posteriori’
  • 21. Kalman Filter Steps • Algorithm Kalman_Filter( ) – 1a: – 1b: – 2: – 3: – 4: – 5a: – 5b: • Return( ) ttttt uBxFx  1 ˆ t T tttt QFF  1 ˆ ttt xHz ˆˆ  ttt zzz ˆ 1 )ˆ(ˆ   t T ttt T ttt RHHHK tttt zKxx  ˆ tttt HKI  ˆ)( tttt zux ,,, 11   ttx ,
  • 24. Kalman Filter Example Root Mean Squared Error (RMSE) KF 1.0030m GPS Only 3.6840m
  • 25. Kalman Filter Example GPS Lost GPS Reacquired
  • 27. Kalman Filter • O(k^2.4+n^2) • Many real systems are non linear – Extended Kalman filter – Unscented Kalman filter – Particle filter • Some systems are non-Gaussian – Particle filter
  • 28. Extended Kalman Filter • Linearize process and observation models – By finding Jacobian matrices – Analytically or numerically • Then use regular Kalman filter algorithm • Sub-optimal
  • 34. Particle Filter • Represent distribution as set of randomly generated samples, called ‘particles’. • Functions can be nonlinear and non-gaussian • Multi-hypothesis belief propagation
  • 35. Particle Filter • Sample the prior • Compute likelihood of particles given measurement – Also called particle ‘weights’ • Sample posterior: Sample from particles proportional to particle weights – Also called ‘resampling’ or ‘importance sampling’
  • 36. Simultaneous Localization and Mapping • SLAM Problem: – Need map to localize – Need location to make map • Brainstorming: How can we solve this problem? – Map could be locations of landmarks or occupancy grid • Kalman filter based: landmark positions part of state variables • Particle filter based: landmark positions or occupancy map included in each particle ),|,( ttt uzmxP