and monte carlo localization
play

and Monte Carlo Localization Wolfram Burgard, Cyrill Stachniss, - PowerPoint PPT Presentation

Introduction to Mobile Robotics Bayes Filter Particle Filter and Monte Carlo Localization Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello 1 Motivation Recall: Discrete filter Discretize the


  1. Introduction to Mobile Robotics Bayes Filter – Particle Filter and Monte Carlo Localization Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello 1

  2. Motivation  Recall: Discrete filter  Discretize the continuous state space  High memory complexity  Fixed resolution (does not adapt to the belief)  Particle filters are a way to efficiently represent non-Gaussian distribution  Basic principle  Set of state hypotheses ( “ particles ” )  Survival-of-the-fittest 2

  3. Sample-based Localization (sonar)

  4. Mathematical Description  Set of weighted samples State hypothesis Importance weight  The samples represent the posterior 4

  5. Function Approximation  Particle sets can be used to approximate functions  The more particles fall into an interval, the higher the probability of that interval  How to draw samples from a function/distribution? 5

  6. Rejection Sampling  Let us assume that f(x)< 1 for all x  Sample x from a uniform distribution  Sample c from [0,1]  if f(x) > c keep the sample otherwise reject the sample f(x ’ ) c c OK f(x) x ’ x 6

  7. Importance Sampling Principle  We can even use a different distribution g to generate samples from f  By introducing an importance weight w , we can account for the “ differences between g and f ”  w = f / g  f is called target  g is called proposal  Pre-condition: f(x)>0  g(x)>0  Derivation: See webpage 7

  8. Importance Sampling with Resampling: Landmark Detection Example

  9. Distributions

  10. Distributions Wanted: samples distributed according to p(x| z 1 , z 2 , z 3 ) 10

  11. This is Easy! We can draw samples from p(x|z l ) by adding noise to the detection parameters.

  12. Importance Sampling  ( | ) ( ) p z x p x k  Target distributi on f : ( | , ,..., ) k p x z z z 1 2 n ( , ,..., ) p z z z 1 2 n ( | ) ( ) p z x p x  Sampling distributi on g : ( | ) l p x z l ( ) p z l  ( ) ( | ) p z p z x l k ( | , ,..., ) f p x z z z    1 2 Importance weights w : n k l ( | ) ( , ,..., ) g p x z p z z z 1 2 l n

  13. Importance Sampling with Resampling Weighted samples After resampling

  14. Particle Filters

  15. Sensor Information: Importance Sampling    ( ) ( | ) ( ) Bel x p z x Bel x   ( | ) ( ) p z x Bel x    ( | ) w p z x  ( ) Bel x

  16. Robot Motion    ( ) ( | ' ) ( ' ) d ' Bel x p x u x Bel x x ,

  17. Sensor Information: Importance Sampling    ( ) ( | ) ( ) Bel x p z x Bel x   ( | ) ( ) p z x Bel x    ( | ) w p z x  ( ) Bel x

  18. Robot Motion    ( ) ( | ' ) ( ' ) d ' Bel x p x u x Bel x x ,

  19. Particle Filter Algorithm  Sample the next generation for particles using the proposal distribution  Compute the importance weights : weight = target distribution / proposal distribution  Resampling: “ Replace unlikely samples by more likely ones ” 19

  20. Particle Filter Algorithm 1. Algorithm particle_filter ( S t-1 , u t , z t ): 2.     , 0 S t i = 1, ฀ , n 3. For Generate new samples 4. Sample index j(i) from the discrete distribution given by w t-1 p ( x t | x t - 1 , u t ) u t Sample from using and 5. ( ) i j i x x  1 t t w  6. Compute importance weight i i ( | ) p z x t t t     i 7. Update normalization w t factor     i i { , } S S x w t t t t 8. i = 1, ฀ , n Insert 9. For w   i i / w t t 10. Normalize weights 20

  21. Particle Filter Algorithm ò Bel ( x t ) = h p ( z t | x t ) p ( x t | x t - 1 , u t ) Bel ( x t - 1 ) dx t - 1 draw x i t  1 from Bel (x t  1 ) draw x i t from p ( x t | x i t  1 , u t ) Importance factor for x i t : i = target distribution w t proposal distribution = h p ( z t | x t ) p ( x t | x t - 1 , u t ) Bel ( x t - 1 ) p ( x t | x t - 1 , u t ) Bel ( x t - 1 ) µ p ( z t | x t )

  22. Resampling  Given : Set S of weighted samples.  Wanted : Random sample, where the probability of drawing x i is given by w i .  Typically done n times with replacement to generate new sample set S ’ .

  23. Resampling w 1 w 1 w n w n w 2 w 2 W n-1 W n-1 w 3 w 3  Stochastic universal sampling  Roulette wheel  Systematic resampling  Binary search, n log n  Linear time complexity  Easy to implement, low variance

  24. Resampling Algorithm 1. Algorithm systematic_resampling ( S,n ): 2.    1 ' , S c w 1  3. For  Generate cdf 2 i n   i 4. c c w  1 i i   1 5. ~ ] 0 , ], 1 Initialize threshold u U n i 1  Draw samples … 6. For  1 j n u  7. While ( ) Skip until next threshold reached c j i  i  8. 1 i       1  i 9. ' ' , Insert S S x n    1 10. Increment threshold u u n  1 j j 11. Return S ’ Also called stochastic universal sampling

  25. Mobile Robot Localization  Each particle is a potential pose of the robot  Proposal distribution is the motion model of the robot (prediction step)  The observation model is used to compute the importance weight (correction step) [For details, see PDF file on the lecture web page] 25

  26. Motion Model Reminder end pose start pose According to the estimated motion

  27. Motion Model Reminder rotation translation rotation  Decompose the motion into  Traveled distance  Start rotation  End rotation

  28. Motion Model Reminder  Uncertainty in the translation of the robot: Gaussian over the traveled distance  Uncertainty in the rotation of the robot: Gaussians over start and end rotation  For each particle, draw a new pose by sampling from these three individual normal distributions

  29. Motion Model Reminder Start

  30. Proximity Sensor Model Reminder Sonar sensor Laser sensor

  31. Mobile Robot Localization Using Particle Filters (1)  Each particle is a potential pose of the robot  The set of weighted particles approximates the posterior belief about the robot’s pose (target distribution) 31

  32. Mobile Robot Localization Using Particle Filters (2)  Particles are drawn from the motion model (proposal distribution)  Particles are weighted according to the observation model (sensor model)  Particles are resampled according to the particle weights 32

  33. Mobile Robot Localization Using Particle Filters (3) Why is resampling needed?  We only have a finite number of particles  Without resampling: The filter is likely to loose track of the “good” hypotheses  Resampling ensures that particles stay in the meaningful area of the state space 33

  34. 34

  35. 35

  36. 36

  37. 37

  38. 38

  39. 39

  40. 40

  41. 41

  42. 42

  43. 43

  44. 44

  45. 45

  46. 46

  47. 47

  48. 48

  49. 49

  50. 50

  51. Sample-based Localization (sonar) 51

  52. Initial Distribution 52

  53. After Incorporating Ten Ultrasound Scans 53

  54. After Incorporating 65 Ultrasound Scans 54

  55. Estimated Path 55

  56. Using Ceiling Maps for Localization [Dellaert et al. 99]

  57. Vision-based Localization P(z|x) z h(x)

  58. Under a Light P(z|x) : Measurement z:

  59. Next to a Light P(z|x) : Measurement z:

  60. Elsewhere P(z|x) : Measurement z:

  61. Global Localization Using Vision

  62. Limitations  The approach described so far is able  to track the pose of a mobile robot and  to globally localize the robot  How can we deal with localization errors (i.e., the kidnapped robot problem)? 63

  63. Approaches  Randomly insert a fixed number of samples  This assumes that the robot can be teleported at any point in time  Alternatively, insert random samples proportional to the average likelihood of the particles 64

  64. Summary – Particle Filters  Particle filters are an implementation of recursive Bayesian filtering  They represent the posterior by a set of weighted samples  They can model non-Gaussian distributions  Proposal to draw new samples  Weight to account for the differences between the proposal and the target  Monte Carlo filter, Survival of the fittest, Condensation, Bootstrap filter 65

  65. Summary – PF Localization  In the context of localization, the particles are propagated according to the motion model.  They are then weighted according to the likelihood of the observations.  In a re-sampling step, new particles are drawn with a probability proportional to the likelihood of the observation. 66

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend