Probabilistic Fundamentals in Robotics Probabilistic Models of Mobile Robots Robot Motion Basilio Bona DAUIN Politecnico di Torino July 2010
Course Outline Basic mathematical framework Probabilistic models of mobile robots Mobile robot localization problem Robotic mapping Probabilistic planning and control Reference textbook Thrun, Burgard, Fox, Probabilistic Robotics, MIT Press, 2006 http://www.probabilistic robotics.org/ Basilio Bona July 2010 2
Probabilistic models of mobile robots Robot motion Kinematics Velocity motion model Odometry motion model Robot perception Maps Beam model of laser range finders Correlation based measurement models Feature based measurement models Basilio Bona July 2010 3
Introduction Basilio Bona July 2010 4
Kinematic states yt () orientation θ () t xt () Basilio Bona July 2010 5
Probabilistic kinematics State (pose or location) control From Wikipedia: In applications, controls are sometimes provided by rover odometry Odometry is the use of data from the movement of actuators to estimate change in position over time. Odometry is used by some robots to estimate their position relative to a starting location. The method is sensitive to errors due to the integration of velocity measurements over time to give position estimates. Rapid and accurate data collection, equipment calibration, i and processing are required din most cases for odometry to be used effectively. Basilio Bona July 2010 6
Example y y x x darker points show higher probabilities of being there the orientation is not shown, but contributes to the uncertainty of the final location Basilio Bona July 2010 7
Motion models Velocity model: the simplest one, assumes that the control is given as a velocity command to the motors; velocity remain constant in the sampling interval [t 1, t) Acceleration model: is slightly more complicated, assuming a constant acceleration motion, i.e., a linearly increasing velocity Odometric model: assumes the accessibility to odometric information, usually provided by wheel sensors, but often also by other means (i.e., visual odometry) Basilio Bona July 2010 8
Motion models Odometric models are usually more accurate than velocity models, but odometry is available only after the motion command has been executed, while velocity commands are available before performing the actual motion Odometric models are good for estimation, while velocity models dlare btt better suited for path planning Basilio Bona July 2010 9
Velocity motion model Basilio Bona July 2010 10
Velocity motion model: noise free x u = ( x y θ ) t t t t = ( v ω ) t t t T T y t r t θ t y c θ t 90 x c x t Basilio Bona July 2010 11
Velocity motion model: noise free x t x t t 11 Δθ Δθ r t = v t ω c is negative t Basilio Bona July 2010 12
Exact velocity model Basilio Bona July 2010 13
Velocity models Exact Euler Runge Kutta Basilio Bona July 2010 14
Velocity models Exact Euler Runge Kutta Basilio Bona July 2010 15
Odometry errors Basilio Bona July 2010 16
Error noise Basilio Bona July 2010 17
Velocity model with error noise Basilio Bona July 2010 18
Velocity motion model algorithm Basilio Bona July 2010 19
Example Basilio Bona July 2010 20
Odometry motion model Odometry is obtained integrating sensor reading from wheel encoders,or or from other sources (e.g., visual odometry) Odometry provides the information of the relative motion of the robot. Odometry is more accurate than velocity Odometry measurements are available only AFTER a control has been supplied to the robot, then they should be better considered as measurements, but usually the are included as control signals u t For this reason odometry cannot be used for planning and control Basilio Bona July 2010 21
Odometry motion model Odometry model considers the motion in the time interval 1. A first rotation 2. A translation 3. A second rotation Each of them is noisy Basilio Bona July 2010 22
Odometry model Basilio Bona July 2010 23
Example Repeated application of the sensor model for short movements Typical banana shaped distributions obtained for 2D projection of 3D posterior Basilio Bona July 2010 24
Example Basilio Bona July 2010 25
Sampling One can use normal (Gaussian) distributions or triangular distributions for describing uncertainty and for sampling Normal distribution Triangular distribution Basilio Bona July 2010 26
How to Sample from Normal or Triangular Distributions? Sampling from a normal distribution Sampling from a triangular distribution Basilio Bona July 2010 27
Normally distributed samples Basilio Bona July 2010 28
Triangular distributed samples 10 3 samples 10 4 samples 10 5 samples 10 6 samples Basilio Bona July 2010 29
Sample odometry motion model Sample normaldistribution Basilio Bona July 2010 30
Example Start Basilio Bona July 2010 31
Motion and maps In many cases we have a map m that represents the environment wherethe robot moves Occupacy maps distinguish free (traversable) from occupied space: robot pose shall be always in freespace A motion model that takes into consideration a map computes Map based motion model If the map m carries information relevant to pose estimation Basilio Bona July 2010 32
Approximation Map free estimate Consistency on the pose with the map This is the result of checking model consistency at the final pose, instead of verifying it on the entire path to the goal Basilio Bona July 2010 33
Thank you. Any question? Basilio Bona July 2010 34