i ntroduction to mobile robotics probabilistic motion
play

I ntroduction to Mobile Robotics Probabilistic Motion Models - PowerPoint PPT Presentation

I ntroduction to Mobile Robotics Probabilistic Motion Models Wolfram Burgard 1 Robot Motion Robot motion is inherently uncertain. How can we model this uncertainty? 2 Dynam ic Bayesian Netw ork for Controls, States, and Sensations 3


  1. I ntroduction to Mobile Robotics Probabilistic Motion Models Wolfram Burgard 1

  2. Robot Motion  Robot motion is inherently uncertain.  How can we model this uncertainty? 2

  3. Dynam ic Bayesian Netw ork for Controls, States, and Sensations 3

  4. Probabilistic Motion Models  To implement the Bayes Filter, we need the transition model .  The term specifies a posterior probability, that action u t carries the robot from x t-1 to x t .  In this section we will discuss, how can be modeled based on the motion equations and the uncertain outcome of the movements. 4

  5. Coordinate System s  The configuration of a typical wheeled robot in 3D can be described by six parameters.  This are the three-dimensional Cartesian coordinates plus the three Euler angles for roll, pitch, and yaw.  For simplicity, throughout this section we consider robots operating on a planar surface.  The state space of such systems is three- dimensional (x,y, θ ). 5

  6. Typical Motion Models  In practice, one often finds two types of motion models:  Odom etry-based  Velocity-based ( dead reckoning )  Odometry-based models are used when systems are equipped with wheel encoders.  Velocity-based models have to be applied when no wheel encoders are given.  They calculate the new pose based on the velocities and the time elapsed. 6

  7. Exam ple W heel Encoders These modules provide + 5V output when they "see" white, and a 0V output when they "see" black. These disks are manufactured out of high quality laminated color plastic to offer a very crisp black to white transition. This enables a wheel encoder sensor to easily see the transitions. Source: http: / / www.active-robots.com/ 7

  8. Dead Reckoning  Derived from “deduced reckoning.”  Mathematical procedure for determining the present location of a vehicle.  Achieved by calculating the current pose of the vehicle based on its velocities and the time elapsed.  Historically used to log the position of ships. [ Image source: Wikipedia, LoKiLeCh] 8

  9. Reasons for Motion Errors of W heeled Robots different wheel ideal case diameters bump carpet and many more … 9

  10. Odom etry Model θ θ • Robot moves from to . x , y , x ' , y ' , ' = δ δ δ • Odometry information . u , , rot 1 rot 2 trans δ = − + − 2 2 ( x ' x ) ( y ' y ) trans δ = − − − θ atan2 ( y ' y , x ' x ) rot 1 δ = θ − θ − δ δ ' rot 2 rot 1 rot 2 θ x ' , y ' , ' δ θ x , y , δ trans rot 1

  11. The atan2 Function  Extends the inverse tangent and correctly copes with the signs of x and y. 11

  12. Noise Model for Odom etry  The measured motion is given by the true motion corrupted with noise. δ ˆ = δ + ε α δ + α δ rot 1 rot 1 | | | | 1 rot 1 2 trans δ ˆ = δ + ε α δ + α δ + δ trans trans | | ( | | | |) 3 trans 4 rot 1 rot 2 δ ˆ = δ + ε α δ + α δ rot 2 rot 2 | | | | 1 rot 2 2 trans

  13. Typical Distributions for Probabilistic Motion Models Normal distribution Triangular distribution  > σ 2 0 if | x | 6 2  1 x 1 − ε σ = ε =  σ 2 ( x ) 2 σ − ( x ) e 2 6 | x | 2 σ 2 πσ  2 2  σ 2 6

  14. Calculating the Probability Density ( zero-centered)  For a normal distribution query point 1. Algorithm prob_ norm al_ distribution ( a,b ): std. deviation 2. return  For a triangular distribution 1. Algorithm prob_ triangular_ distribution ( a,b ): 2. return 14

  15. Calculating the Posterior Given x, x ’ , and Odom etry odometry hypotheses Algorithm m otion_ m odel_ odom etry( x, x ’ ,u) 1. δ = − + − 2 2 2. ( x ' x ) ( y ' y ) trans δ = − − − θ odometry params ( u ) atan2 ( y ' y , x ' x ) 3. rot 1 δ = θ − θ − δ ' 4. rot 2 rot 1 δ ˆ = − + − 2 2 ( x ' x ) ( y ' y ) 5. trans δ ˆ = − − − θ values of interest ( x , x ’ ) atan2 ( y ' y , x ' x ) 6. rot 1 δ ˆ = θ − θ − δ ˆ ' 7. rot 2 rot 1 = δ − δ ˆ α δ + α δ p prob ( , | | ) 8. 1 rot 1 rot 1 1 rot 1 2 trans ˆ = δ − δ α δ + α δ + δ p prob ( , (| | | |)) 9. 2 trans trans 3 trans 4 rot1 rot2 = δ − δ ˆ α δ + α δ p prob ( , | | ) 10. 3 rot 2 rot 2 1 rot 2 2 trans return p 1 · p 2 · p 3 11. 15

  16. Application  Repeated application of the motion model for short movements.  Typical banana-shaped distributions obtained for the 2d-projection of the 3d posterior. x x u u

  17. Sam ple-Based Density Representation

  18. Sam ple-Based Density Representation 18

  19. How to Sam ple from a Norm al Distribution?  Sampling from a normal distribution 1. Algorithm sam ple_ norm al_ distribution ( b ): 2. return 19

  20. Norm ally Distributed Sam ples 10 6 samples 20

  21. How to Sam ple from Norm al or Triangular Distributions?  Sampling from a normal distribution 1. Algorithm sam ple_ norm al_ distribution ( b ): 2. return  Sampling from a triangular distribution 1. Algorithm sam ple_ triangular_ distribution ( b ): 2. return 21

  22. For Triangular Distribution 10 3 samples 10 4 samples 10 6 samples 10 5 samples 22

  23. How to Obtain Sam ples from Arbitrary Functions? 23

  24. Rejection Sam pling  Sampling from arbitrary distributions  Sample x from a uniform distribution from [-b,b]  Sample c from [0, max f]  if f(x) > c keep the sample otherwise reject the sample f(x ’ ) c c ’ OK f(x) x ’ x 24

  25. Rejection Sam pling  Sampling from arbitrary distributions 1. Algorithm sam ple_ distribution ( f,b ): 2. repeat 3. 4. 5. until ( ) 6. return 25

  26. Exam ple  Sampling from 26

  27. Sam ple Odom etry Motion Model 1. Algorithm sam ple_ m otion_ m odel (u, x): = δ δ δ = θ u , , , x x , y , rot 1 rot 2 trans δ ˆ = δ + α δ + α δ 1. sample( | | ) rot 1 rot 1 1 rot 1 2 trans δ ˆ = δ + α δ + α δ + δ sample( (| | | |)) 2. trans trans 3 trans 4 rot 1 rot 2 δ ˆ = δ + α δ + α δ 3. sample( | | ) rot 2 rot 2 1 rot 2 2 trans = + δ ˆ θ + δ ˆ x ' x cos( ) 4. trans rot 1 = + δ ˆ θ + δ ˆ y ' y sin( ) 5. sam ple_ norm al_ distribution trans rot 1 θ = θ + δ ˆ + δ ˆ 6. ' rot 1 rot 2 θ x ' , y ' , ' 7. Return

  28. Exam ples ( Odom etry-Based)

  29. Sam pling from Our Motion Model Start

  30. Velocity-Based Model θ -90 30

  31. Noise Model for the Velocity- Based Model  The measured motion is given by the true motion corrupted with noise. = + ε ˆ v v α + α ω | v | | | 1 2 ω = ω + ε ˆ α + α ω | v | | | 3 4  Discussion: What is the disadvantage of this noise model? 31

  32. Noise Model for the Velocity- Based Model  The -circle constrains the final ( ω ˆ ˆ v , ) orientation (2D manifold in a 3D space)  Better approach: = + ε ˆ v v α + α ω | v | | | 1 2 ω = ω + ε ˆ α + α ω | v | | | 3 4 γ = ε ˆ α + α ω | v | | | 5 6 Term to account for the final rotation 32

  33. Motion I ncluding 3 rd Param eter Term to account for the final rotation 33

  34. Equation for the Velocity Model Center of circle: some constant (distance to ICC) (center of circle is orthogonal to the initial heading) 34

  35. Equation for the Velocity Model some constant Center of circle: some constant (the center of the circle lies on a ray half way between x and x’ and is orthogonal to the line between x and x’) 35

  36. Equation for the Velocity Model some constant Center of circle: Allows us to solve the equations to: 36

  37. Equation for the Velocity Model and 37

  38. Equation for the Velocity Model  The parameters of the circle:  allow for computing the velocities as 38

  39. Posterior Probability for Velocity Model 39

  40. Sam pling from Velocity Model 40

  41. Exam ples ( Velocity-Based)

  42. Map-Consistent Motion Model ≠ p ( x ' | u , x , m ) p ( x ' | u , x ) = η p ( x ' | u , x , m ) p ( x ' | m ) p ( x ' | u , x ) Approximation:

  43. Sum m ary  We discussed motion models for odometry-based and velocity-based systems  We discussed ways to calculate the posterior probability p(x ’ | x, u) .  We also described how to sample from p(x ’ | x, u) .  Typically the calculations are done in fixed time intervals ∆ t .  In practice, the parameters of the models have to be learned.  We also discussed how to improve this motion model to take the map into account. 43

Recommend


More recommend