Introduction to Mobile Robotics Probabilistic Motion Models

Similar documents
EE565:Mobile Robotics Lecture 3

Motion Models (cont) 1 2/17/2017

Motion Models (cont) 1 3/15/2018

Robot Mapping. A Short Introduction to the Bayes Filter and Related Models. Gian Diego Tipaldi, Wolfram Burgard

Practical Course WS12/13 Introduction to Monte Carlo Localization

Introduction to Mobile Robotics Bayes Filter Particle Filter and Monte Carlo Localization. Wolfram Burgard

Localization, Where am I?

Probabilistic Robotics

Project 1 : Dead Reckoning and Tracking

Computer Vision Group Prof. Daniel Cremers. 11. Sampling Methods

Mobile Robotics. Mathematics, Models, and Methods. HI Cambridge. Alonzo Kelly. Carnegie Mellon University UNIVERSITY PRESS

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Principles of Robot Motion

Encoder applications. I Most common use case: Combination with motors

Basics of Localization, Mapping and SLAM. Jari Saarinen Aalto University Department of Automation and systems Technology

Unit 2: Locomotion Kinematics of Wheeled Robots: Part 3

Geometric Transformations

This chapter explains two techniques which are frequently used throughout

10/11/07 1. Motion Control (wheeled robots) Representing Robot Position ( ) ( ) [ ] T

Final Exam Practice Fall Semester, 2012

Probabilistic Robotics

Localization and Map Building

CAMERA POSE ESTIMATION OF RGB-D SENSORS USING PARTICLE FILTERING

Introduction to Mobile Robotics Techniques for 3D Mapping

Robotics. Lecture 5: Monte Carlo Localisation. See course website for up to date information.

CSE 490R P1 - Localization using Particle Filters Due date: Sun, Jan 28-11:59 PM

Chapter 2 Kinematics of Mechanisms

Cinematica dei Robot Mobili su Ruote. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

Introduction to Robotics

Robotics (Kinematics) Winter 1393 Bonab University

Kinematics of the Stewart Platform (Reality Check 1: page 67)

Data Association for SLAM

3D Transformations. CS 4620 Lecture 10. Cornell CS4620 Fall 2014 Lecture Steve Marschner (with previous instructors James/Bala)

1. Introduction 1 2. Mathematical Representation of Robots

Application of Vision-based Particle Filter and Visual Odometry for UAV Localization

COS Lecture 13 Autonomous Robot Navigation

Jacobian: Velocities and Static Forces 1/4

Inertial Measurement Units II!

L10. PARTICLE FILTERING CONTINUED. NA568 Mobile Robotics: Methods & Algorithms

CS 445 / 645 Introduction to Computer Graphics. Lecture 21 Representing Rotations

Monte Carlo Localization using Dynamically Expanding Occupancy Grids. Karan M. Gupta

Monte Carlo Localization

SLAM: Robotic Simultaneous Location and Mapping

Localization and Map Building

Goals: Course Unit: Describing Moving Objects Different Ways of Representing Functions Vector-valued Functions, or Parametric Curves

Development of intelligent systems

Where s the Boss? : Monte Carlo Localization for an Autonomous Ground Vehicle using an Aerial Lidar Map

Spring Localization II. Roland Siegwart, Margarita Chli, Juan Nieto, Nick Lawrance. ASL Autonomous Systems Lab. Autonomous Mobile Robots

Kinematics of Wheeled Robots

Zürich. Roland Siegwart Margarita Chli Martin Rufli Davide Scaramuzza. ETH Master Course: L Autonomous Mobile Robots Summary

Particle Filters. CSE-571 Probabilistic Robotics. Dependencies. Particle Filter Algorithm. Fast-SLAM Mapping

1 Differential Drive Kinematics

FIDUCIAL BASED POSE ESTIMATION ADEWOLE AYOADE ALEX YEARSLEY

Probabilistic Robotics

Using Algebraic Geometry to Study the Motions of a Robotic Arm

12.1 Quaternions and Rotations

SLAM with SIFT (aka Mobile Robot Localization and Mapping with Uncertainty using Scale-Invariant Visual Landmarks ) Se, Lowe, and Little

MEM380 Applied Autonomous Robots Winter Robot Kinematics

Statistical Techniques in Robotics (16-831, F10) Lecture#06(Thursday September 11) Occupancy Maps

3D Transformations. CS 4620 Lecture Kavita Bala w/ prior instructor Steve Marschner. Cornell CS4620 Fall 2015 Lecture 11

Important. Compact Trigonometry CSO Prioritized Curriculum. Essential. Page 1 of 6

Jacobian: Velocities and Static Forces 1/4

Robotics and Autonomous Systems

Robotics and Autonomous Systems

Motion Control (wheeled robots)

θ x Week Date Lecture (M: 2:05p-3:50, 50-N202) 1 23-Jul Introduction + Representing Position & Orientation & State 2 30-Jul

Dynamics Analysis for a 3-PRS Spatial Parallel Manipulator-Wearable Haptic Thimble

Trigonometric Functions of Any Angle

Cam makes a higher kinematic pair with follower. Cam mechanisms are widely used because with them, different types of motion can be possible.

Rigging / Skinning. based on Taku Komura, Jehee Lee and Charles B.Own's slides

The UTIAS multi-robot cooperative localization and mapping dataset

Linear algebra deals with matrixes: two-dimensional arrays of values. Here s a matrix: [ x + 5y + 7z 9x + 3y + 11z

Robot Mapping. A Short Introduction to Homogeneous Coordinates. Gian Diego Tipaldi, Wolfram Burgard

ME 597/747 Autonomous Mobile Robots. Mid Term Exam. Duration: 2 hour Total Marks: 100

MTRX4700: Experimental Robotics

ROS ARCHITECTURE: AN EXAMPLE ROBOTICS

PacSLAM Arunkumar Byravan, Tanner Schmidt, Erzhuo Wang

Lab 2A Finding Position and Interpolation with Quaternions

Evaluating the Performance of a Vehicle Pose Measurement System

Jim Lambers MAT 169 Fall Semester Lecture 33 Notes

Markov Localization for Mobile Robots in Dynaic Environments

Inverse Kinematics. Given a desired position (p) & orientation (R) of the end-effector

Simultaneous Localization and Mapping

NERC Gazebo simulation implementation

NAVIGATION SYSTEM OF AN OUTDOOR SERVICE ROBOT WITH HYBRID LOCOMOTION SYSTEM

Spring Localization II. Roland Siegwart, Margarita Chli, Martin Rufli. ASL Autonomous Systems Lab. Autonomous Mobile Robots

Advanced Techniques for Mobile Robotics Graph-based SLAM using Least Squares. Wolfram Burgard, Cyrill Stachniss, Kai Arras, Maren Bennewitz

Robot Motion Control Matteo Matteucci

Monte Carlo Integration

MOBILE ROBOT LOCALIZATION. REVISITING THE TRIANGULATION METHODS. Josep Maria Font, Joaquim A. Batlle

CS283: Robotics Fall 2016: Sensors

Volumes of Solids of Revolution Lecture #6 a

Trigonometric Functions. Copyright Cengage Learning. All rights reserved.

Coordinate Frames and Transforms

Local Coordinate Systems From Motion Capture Data

5. Tests and results Scan Matching Optimization Parameters Influence

3D Model Acquisition by Tracking 2D Wireframes

Final project: 45% of the grade, 10% presentation, 35% write-up. Presentations: in lecture Dec 1 and schedule:

EKF Localization and EKF SLAM incorporating prior information

ROBUST LOCALISATION OF AUTOMATED GUIDED VEHICLES FOR COMPUTER-INTEGRATED MANUFACTURING ENVIRONMENTS. R.C. Dixon 1 *, G.Bright 2 & R.

Transcription:

Introduction to Mobile Robotics Probabilistic Motion Models Wolfram Burgard, Michael Ruhnke, Bastian Steder 1

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

Dynamic Bayesian Network for Controls, States, and Sensations 3

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

Coordinate Systems 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 threedimensional (x,y,). 5

Typical Motion Models In practice, one often finds two types of motion models: Odometry-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

Example Wheel 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

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

Reasons for Motion Errors of Wheeled Robots ideal case different wheel diameters bump and many more carpet 9

Odometry Model Robot moves from x, y, to x ', y ', '. Odometry information u,., rot 1 rot trans trans ( x ' x ) ( y ' y ) atan ( y ' y, x ' ) x rot 1 rot ' rot 1 rot x ', y ', ' x, y, rot 1 trans

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

Noise Model for Odometry The measured motion is given by the true motion corrupted with noise. ˆ ˆ rot 1 rot 1 1 rot 1 trans trans trans 3 trans 4 ( rot 1 rot ) ˆ rot rot 1 rot trans

Typical Distributions for Probabilistic Motion Models 1 1 ) ( x e x 6 6 6 x if 0 ) ( x x Normal distribution Triangular distribution

Calculating the Probability Density (zero-centered) For a normal distribution query point 1. Algorithm prob_normal_distribution(a,b):. return std. deviation For a triangular distribution 1. Algorithm prob_triangular_distribution(a,b):. return 14

Calculating the Posterior Given x, x, and Odometry hypotheses odometry 1. Algorithm motion_model_odometry(x, x,u). 3. 4. 5. 6. 7. 8. 9. 10. 11. return p 1 p p 3 ( x ' x ) ( y ' y ) trans atan ( y ' y, x ' x ) odometry params (u) rot 1 ' rot rot 1 ˆ ( x ' x ) ( y ' y ) trans ˆ atan ( y ' y, x ' x ) values of interest (x,x ) rot 1 ˆ ' ˆ rot rot 1 p prob ( ˆ, ) 1 rot 1 rot 1 1 rot 1 trans p prob ( ˆ, ( )) trans trans 3 trans 4 rot1 rot p prob ( ˆ, ) 3 rot rot 1 rot trans 15

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

Sample-Based Density Representation

Sample-Based Density Representation 18

How to Sample from a Normal Distribution? Sampling from a normal distribution 1. Algorithm sample_normal_distribution(b):. return 19

Normally Distributed Samples 10 6 samples 0

How to Sample from Normal or Triangular Distributions? Sampling from a normal distribution 1. Algorithm sample_normal_distribution(b):. return Sampling from a triangular distribution 1. Algorithm sample_triangular_distribution(b):. return 1

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

How to Obtain Samples from Arbitrary Functions? 3

Rejection Sampling 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 c x f(x) x f(x ) c OK 4

Rejection Sampling Sampling from arbitrary distributions 1. Algorithm sample_distribution(f,b):. repeat 3. 4. 5. until ( ) 6. return 5

Example Sampling from 6

Sample Odometry Motion Model 1. Algorithm sample_motion_model(u, x): 1.. 3. u ˆ ˆ ˆ sample( rot 1 rot 1 1 rot 1 trans trans,, x x,,, y rot 1 rot trans trans sample( sample( ( ) 3 trans 4 rot 1 rot rot rot 1 rot trans ) )) 4. 5. 6. x y x ˆ y ˆ cos( ˆ sin( ˆ ' trans rot 1 ' trans rot 1 ' ˆ ˆ rot 1 rot ) ) sample_normal_distribution 7. Return x ', y ', '

Examples (Odometry-Based)

Sampling from Our Motion Model Start

Velocity-Based Model -90 30

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

Noise Model for the Velocity- Based Model The ( vˆ, ˆ )-circle constrains the final orientation (D manifold in a 3D space) Better approach: vˆ v v 1 ˆ v 3 4 ˆ v 5 6 Term to account for the final rotation 3

Motion Including 3 rd Parameter Term to account for the final rotation 33

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

Equation for the Velocity Model Center of circle: some constant 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

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

Equation for the Velocity Model and 37

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

Posterior Probability for Velocity Model 39

Sampling from Velocity Model 40

Examples (Velocity-Based)

Map-Consistent Motion Model ), ' ( x u x p ),, ' ( m x u x p ), ' ( ) ' ( ),, ' ( x u x p m x p m x u x p Approximation:

Summary 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