humanoid robotics monte carlo localization
play

Humanoid Robotics Monte Carlo Localization Maren Bennewitz 1 - PowerPoint PPT Presentation

Humanoid Robotics Monte Carlo Localization Maren Bennewitz 1 Basis Probability Rules (1) If x and y are independent: Bayes rule: Often written as: The denominator is a normalizing constant that ensures that the posterior of the left


  1. Humanoid Robotics Monte Carlo Localization Maren Bennewitz 1

  2. Basis Probability Rules (1) If x and y are independent: Bayes’ rule: Often written as: The denominator is a normalizing constant that ensures that the posterior of the left hand side adds up to 1 over all possible values of x . In case the background knowledge, Bayes' rule turns into 2

  3. Basis Probability Rules (2) Law of total probability: continuous case discrete case 3

  4. Markov Assumption actions state of a dynamical system observations 4

  5. Motivation § To perform useful service, a robot needs to know its pose in its environment § Motion commands are only executed inaccurately § Here: Estimate the global pose of a robot in a given model of the environment § Based on its sensor data and odometry measurements § Sensor data: Range image with depth measurements or laser range readings 5

  6. Motivation § Estimate the pose of a robot in a given model of the environment § Based on its sensor data and odometry measurements 6

  7. State Estimation § Estimate the state given observations and odometry measurements/actions § Goal: Calculate the distribution 7

  8. Recursive Bayes Filter 1 Definition of the belief all data up to time t 8

  9. Recursive Bayes Filter 2 Bayes’ rule 9

  10. Recursive Bayes Filter 3 independence assumption 10

  11. Recursive Bayes Filter 4 Law of total probability 11

  12. Recursive Bayes Filter 5 Markov assumption 12

  13. Recursive Bayes Filter 6 independence assumption 13

  14. Recursive Bayes Filter 7 recursive term 14

  15. Recursive Bayes Filter 7 motion model 15

  16. Recursive Bayes Filter 7 observation model 16

  17. Probabilistic Motion Model § Robots execute motion commands only inaccurately § The motion model specifies the probability that action u carries the robot from to : § Defined individually for each type or robot 17

  18. Model for Range Readings § Sensor data consists of measurements § The individual measurements are independent given the robot’s pose § “How well can the distance measurements be explained given the pose and the map” 18

  19. Simplest Ray-Cast Model § Ray-cast models consider the first obstacle along the ray § Compare the actually measured distance with the expected distance § Use a Gaussian to evaluate the difference measured distance object in map 19

  20. Beam-Endpoint Model § Evaluate the distance of the hypothetical beam end point to the closest obstacle in the map with a Gaussian Courtesy: Thrun, Burgard, Fox 20

  21. Summary § Bayes filter is a framework for state estimation § The motion and observation model are the central components of the Bayes filter 21

  22. Particle Filter Monte Carlo Localization 22

  23. Particle Filter § One implementation of the recursive Bayes filter § Non-parametric framework (not only Gaussian) § Arbitrary models can be used as motion and observation models 23

  24. Motivation § Goal: Approach for dealing with arbitrary distributions 24

  25. Key Idea: Samples § Use multiple (weighted) samples to represent arbitrary distributions samples 25

  26. Particle Set § Set of weighted samples state importance hypothesis weight 26

  27. Particle Filter § Recursive Bayes filter § Non-parametric approach § The set of weighted particles approximates the belief about the robot’s pose § Two main steps to update the belief § Prediction: Draw samples from the motion model (propagate forward) § Correction: Weight samples based on the observation model 27

  28. Monte Carlo Localization § Each particle is a pose hypothesis § Prediction : For each particle sample a new pose from the the motion model § Correction : Weight samples according to the observation model [The weight has be chosen in exactly that way if the samples are drawn from the motion model] 28

  29. Monte Carlo Localization § Each particle is a pose hypothesis § Prediction : For each particle sample a new pose from the the motion model § Correction : Weight samples according to the observation model § Resampling : Draw sample with probability and repeat times ( =#particles) 29

  30. MCL – Correction Step Image Courtesy: S. Thrun, W. Burgard, D. Fox 30

  31. MCL – Prediction Step Image Courtesy: S. Thrun, W. Burgard, D. Fox 31

  32. MCL – Correction Step Image Courtesy: S. Thrun, W. Burgard, D. Fox 32

  33. MCL – Prediction Step Image Courtesy: S. Thrun, W. Burgard, D. Fox 33

  34. Resampling § Draw sample with probability . Repeat times ( =#particles) § Informally: “ Replace unlikely samples by more likely ones ” § Survival-of-the-fittest principle § “Trick” to avoid that many samples cover unlikely states § Needed since we have a limited number of samples 34

  35. Assumption: normalized weights Resampling initial value between 0 and 1/J step size = 1/J “roulette wheel” w 1 w n w 1 w n w 2 w 2 W n-1 W n-1 w 3 w 3 § Systematic resampling § Draw randomly § Low variance between 0 and 1 § Binary search § O( J ) § Repeat J times § Also called “stochastic § O( J log J ) universal resampling” 35

  36. Low Variance Resampling initialization cumulative sum of weights J = #particles step size = 1/J decide whether or not to take particle i 36

  37. initialization Courtesy: Thrun, Burgard, Fox 37

  38. observation Courtesy: Thrun, Burgard, Fox 38

  39. weight update, resampling, motion update Courtesy: Thrun, Burgard, Fox 39

  40. observation Courtesy: Thrun, Burgard, Fox 40

  41. weight update, resampling Courtesy: Thrun, Burgard, Fox 41

  42. motion update Courtesy: Thrun, Burgard, Fox 42

  43. observation Courtesy: Thrun, Burgard, Fox 43

  44. weight update, resampling Courtesy: Thrun, Burgard, Fox 44

  45. motion update Courtesy: Thrun, Burgard, Fox 45

  46. observation Courtesy: Thrun, Burgard, Fox 46

  47. weight update, resampling Courtesy: Thrun, Burgard, Fox 47

  48. motion update Courtesy: Thrun, Burgard, Fox 48

  49. observation Courtesy: Thrun, Burgard, Fox 49

  50. 50

  51. Summary – Particle Filters § Particle filters are non-parametric, recursive Bayes filters § The belief about the state is represented by a set of weighted samples § The motion model is used to draw the samples for the next time step § The weights of the particles are computed based on the observation model § Resampling is carried out based on weights § Called: Monte-Carlo localization (MCL) 51

  52. Literature § Book: Probabilistic Robotics, S. Thrun, W. Burgard, and D. Fox 52

  53. 6D Localization for Humanoid Robots 53

  54. Localization for Humanoids § 3D environments require a 6D pose estimate 2D position height yaw, pitch, roll estimate the 6D torso pose 54

  55. Localization for Humanoids § Recursively estimate the distribution about the robot‘s pose using MCL § Probability distribution represented by pose hypotheses (particles) § Needed: Motion model and observation model 55

  56. Motion Model § The odometry estimate corresponds to the incremental motion of the torso § is computed from forward kinematics (FK) from the current stance foot while walking 56

  57. Kinematic Walking Odometry § Keep track of the transform to the current stance foot, starting with the identity frame of the torso, transform can be computed F torso with FK over the right leg F odom F rfoot fixed frame frame of the current stance foot 57

  58. Kinematic Walking Odometry § Both feet remain on the ground, compute the transform to the frame of the left foot with FK F torso F torso F torso F odom F odom F odom F rfoot F rfoot F rfoot F lfoot 58

  59. Kinematic Walking Odometry § The left leg becomes the stance leg and is the new reference to compute the transform to the torso frame F torso F torso F torso F torso F odom F odom F odom F odom F rfoot F rfoot F rfoot F lfoot F lfoot 59

  60. Kinematic Walking Odometry § Using FK, the poses of all joints and sensors can be computed relative to the stance foot at each time step § The transform from the fixed world frame to the stance foot is updated whenever the swing foot becomes the new stance foot § Concatenate the accumulated transform to the previous stance foot and the relative transform to the new stance foot 60

  61. Odometry Estimate § Odometry estimate from two consecutive torso poses u t 61

  62. Odometry Estimate § The incremental motion of the torso is computed from kinematics of the legs § Typically error sources: Slippage on the ground and backlash in the joints § Accordingly, only noisy odometry estimates while walking, drift accumulates over time § The particle filter has to account for that noise within the motion model 62

  63. Motion Model § Noise modelled as a Gaussian with systematic drift on the 2D plane § Prediction step samples a new pose according to calibration covariance matrix matrix motion composition § learned with least squares optimization using ground truth data (as in Ch. 2) 63

Recommend


More recommend