Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

Similar documents
Vlad Estivill-Castro. Robots for People --- A project for intelligent integrated systems

Mobile Robots Localization

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

Robot Localisation. Henrik I. Christensen. January 12, 2007

Distributed Intelligent Systems W4 An Introduction to Localization Methods for Mobile Robots

Sensors Fusion for Mobile Robotics localization. M. De Cecco - Robotics Perception and Action

Consistent Triangulation for Mobile Robot Localization Using Discontinuous Angular Measurements

Modeling and state estimation Examples State estimation Probabilities Bayes filter Particle filter. Modeling. CSC752 Autonomous Robotic Systems

Artificial Intelligence

Robotics. Mobile Robotics. Marc Toussaint U Stuttgart

A Study of Covariances within Basic and Extended Kalman Filters

1 Kalman Filter Introduction

Mobile Robot Localization

Bayes Filter Reminder. Kalman Filter Localization. Properties of Gaussians. Gaussians. Prediction. Correction. σ 2. Univariate. 1 2πσ e.

COS Lecture 16 Autonomous Robot Navigation

Localización Dinámica de Robots Móviles Basada en Filtrado de Kalman y Triangulación

Robotics. Lecture 4: Probabilistic Robotics. See course website for up to date information.

E190Q Lecture 11 Autonomous Robot Navigation

Vision for Mobile Robot Navigation: A Survey

Probability Map Building of Uncertain Dynamic Environments with Indistinguishable Obstacles

Mobile Robot Localization

Manipulators. Robotics. Outline. Non-holonomic robots. Sensors. Mobile Robots

Localization. Howie Choset Adapted from slides by Humphrey Hu, Trevor Decker, and Brad Neuman

L11. EKF SLAM: PART I. NA568 Mobile Robotics: Methods & Algorithms

Local Probabilistic Models: Continuous Variable CPDs

Robots Autónomos. Depto. CCIA. 2. Bayesian Estimation and sensor models. Domingo Gallardo

SLAM Techniques and Algorithms. Jack Collier. Canada. Recherche et développement pour la défense Canada. Defence Research and Development Canada

Robot Localization and Kalman Filters

Lego NXT: Navigation and localization using infrared distance sensors and Extended Kalman Filter. Miguel Pinto, A. Paulo Moreira, Aníbal Matos

Particle Filters; Simultaneous Localization and Mapping (Intelligent Autonomous Robotics) Subramanian Ramamoorthy School of Informatics

Rao-Blackwellized Particle Filtering for 6-DOF Estimation of Attitude and Position via GPS and Inertial Sensors

Using the Kalman Filter for SLAM AIMS 2015

From Bayes to Extended Kalman Filter

CSE 473: Artificial Intelligence

the robot in its current estimated position and orientation (also include a point at the reference point of the robot)

Introduction to Mobile Robotics Probabilistic Sensor Models

CIS 390 Fall 2016 Robotics: Planning and Perception Final Review Questions

Introduction to Mobile Robotics Probabilistic Motion Models

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

CS599 Lecture 1 Introduction To RL

E190Q Lecture 10 Autonomous Robot Navigation

Markov localization uses an explicit, discrete representation for the probability of all position in the state space.

Simultaneous Localization and Mapping (SLAM) Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

IROS 2009 Tutorial: Filtering and Planning in I-Spaces PART 3: VIRTUAL SENSORS

Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

CS188: Artificial Intelligence, Fall 2009 Written 2: MDPs, RL, and Probability

Robotics 2 Target Tracking. Kai Arras, Cyrill Stachniss, Maren Bennewitz, Wolfram Burgard

2D Image Processing (Extended) Kalman and particle filter

Miscellaneous. Regarding reading materials. Again, ask questions (if you have) and ask them earlier

SLAM for Ship Hull Inspection using Exactly Sparse Extended Information Filters

Probabilistic Fundamentals in Robotics

Multi-Sensor Fusion for Localization of a Mobile Robot in Outdoor Environments

Statistical Visual-Dynamic Model for Hand-Eye Coordination

Introduction to Mobile Robotics SLAM: Simultaneous Localization and Mapping

been developed to calibrate for systematic errors of a two wheel robot. This method has been used by other authors (Chong, 1997). Goel, Roumeliotis an

Probabilistic Robotics. Slides from Autonomous Robots (Siegwart and Nourbaksh), Chapter 5 Probabilistic Robotics (S. Thurn et al.

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

Toward Online Probabilistic Path Replanning

Automatic Self-Calibration of a Vision System during Robot Motion

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

EKF and SLAM. McGill COMP 765 Sept 18 th, 2017

7.1 Describing Circular and Rotational Motion.notebook November 03, 2017

Simultaneous Localization and Map Building Using Natural features in Outdoor Environments

Controller Design and Position Estimation of a Unicycle Type Robot

Probabilistic Fundamentals in Robotics. DAUIN Politecnico di Torino July 2010

EE565:Mobile Robotics Lecture 6

Isobath following using an altimeter as a unique exteroceptive sensor

Kalman filtering and friends: Inference in time series models. Herke van Hoof slides mostly by Michael Rubinstein

Inertial Odometry on Handheld Smartphones

Autonomous Mobile Robot Design

1 Introduction. Systems 2: Simulating Errors. Mobile Robot Systems. System Under. Environment

Control of Mobile Robots

EE Mobile Robots

Sensor Fusion of Inertial-Odometric Navigation as a Function of the Actual Manoeuvres of Autonomous Guided Vehicles

Robot Control Basics CS 685

What is Motion? As Visual Input: Change in the spatial distribution of light on the sensors.

Mathematical Formulation of Our Example

Inertial Navigation and Various Applications of Inertial Data. Yongcai Wang. 9 November 2016

Sensors for mobile robots

Physics 1A. Lecture 3B. "More than anything else... any guy here would love to have a monkey. A pet monkey." -- Dane Cook

Introduction to Mobile Robotics Probabilistic Robotics

Bayesian Machine Learning

Introduction to Mobile Robotics Information Gain-Based Exploration. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Giorgio Grisetti, Kai Arras

UAV Navigation: Airborne Inertial SLAM

Stochastic Cloning: A generalized framework for processing relative state measurements

Distributed Data Fusion with Kalman Filters. Simon Julier Computer Science Department University College London

Introduction to Mobile Robotics Bayes Filter Particle Filter and Monte Carlo Localization

Robotics 2 Target Tracking. Giorgio Grisetti, Cyrill Stachniss, Kai Arras, Wolfram Burgard

EEE 187: Take Home Test #2

Linear Dynamical Systems

Results: MCMC Dancers, q=10, n=500

Gradient Sampling for Improved Action Selection and Path Synthesis

Sensor Tasking and Control

CS188: Artificial Intelligence, Fall 2009 Written 2: MDPs, RL, and Probability

Markov Models. CS 188: Artificial Intelligence Fall Example. Mini-Forward Algorithm. Stationary Distributions.

AUTOMOTIVE ENVIRONMENT SENSORS

2D Image Processing. Bayes filter implementation: Kalman filter

(W: 12:05-1:50, 50-N201)

We provide two sections from the book (in preparation) Intelligent and Autonomous Road Vehicles, by Ozguner, Acarman and Redmill.

Instituto de Sistemas e Robótica. Pólo de Lisboa

Transcription:

1 Vlad Estivill-Castro (2016) Robots for People --- A project for intelligent integrated systems

V. Estivill-Castro 2 Uncertainty representation Localization Chapter 5 (textbook)

What is the course about? textbook Introduction to Autonomous Mobile Robots second edition Roland Siegwart, Illah R. Nourbakhsh, and Davide Scaramuzza V. Estivill-Castro 3

Localization Where are we? Crucial for mobile robotics What is the best action depends clearly on where we are When do we need to localize? Not always Shoot if in possession of the ball and the opponent goal is on sight [Robotic soccer, color-coded teams for goals] Walk keeping a wall to the left [can recognize target; like the exit of a maze], but slow Behavior-based navegation V. Estivill-Castro 4

Localization (role in navigation) May be necessary to avoid obstacles To get from A to B (B is recognized by localization) In contrast to behavior based navigation, map based navigation relies on a map Assuming that the map is known, at every time step the robot has to localize itself in the map. How? If we know the start position, we can use wheel odometry or dead reckoning. Is this enough? What else can we use? But how do we represent the map for the robot And how do we represent the position of the robot in the map? V. Estivill-Castro 5

Issues in Localization (and navigation) Types of localization and examples of localization systems Noise: odometric position estimation Belief representation: how to represent the robot position Map representation: continuous, discrete, topological Introduction to probabilistic map based localization V. Estivill-Castro 6

Localization Global localization The robot is not told its initial position Its position must be estimated from scratch Position Tracking A robot knows its initial position and only has to accommodate small errors in its odometry as it moves V. Estivill-Castro 7

How to localize Localization based on external sensors, beacons or landmarks Odometry Map Based Localization without external sensors or artificial landmarks, just use robot onboard sensors Example: Probabilistic Map Based Localization V. Estivill-Castro 8

Beacon Based Localization Systems: Triangulation Ex 1: Poles with highly reflective surface and a laser for detecting them Ex 2: Coloured beacons and an omnidirectional camera for detecting them (example: robocup or autonomous robots in tennis fields) V. Estivill-Castro 9

Beacon based localization Warehouse Robots at Work http://www.youtube.com/watch?v=lwsmd N7HMuA Brisbane container terminal simulation http://www.youtube.com/watch?v=0xhecd 3UDjI V. Estivill-Castro 10

Localization Cycle Improving belief state by moving Improving belief state by sensing Cycle between (SEE and ACT) While I was moving, I m blind until the sensor measurement arrives update my belief by a motion model followed by an update by the sensor model V. Estivill-Castro 11

Human navigation Topological and conceptual maps the dimensions of Australia, and what is close, north, south number of buildings vs name of buildings Relations at different scales V. Estivill-Castro 12

The Map Categories 1. recognizable landmarks 2. topological maps (graph model) games like snakes and ladders 3. metric topological maps edges have weight equal to distance 4. Full metric maps nodes are geo-positioned V. Estivill-Castro 13

Understanding --- Probabilistic reasoning (Bayesian inference) Reasoning in the presence of uncertainties and incomplete information Combining preliminary information and models with learning from observed data P(A B) = P(B A) P(A)/P(B) the probability that the new situation is A once I observed B is related to the chances of noticing B when in situation A and the ratio of observing A with the chances of observing B V. Estivill-Castro 14

Reducing Uncertainties Where can I be? Anywhere Observe a door V. Estivill-Castro 15

Reducing Uncertainties Observe a door Walk a bit Observe a door again

Metric Navigation: Probabilistic Position Estimation (Kalman Filter) Continuous, recursive and very compact ACT PHASE state prediction via a motion model obtain x(k+1 k) and P(k+1 k) given x(k k) P(k k) SEE PHASE Balance the advice of where I am (result of the motion model) and the advice of where I am (result of the sensor) Depending on how much I trust each V. Estivill-Castro 17

State prediction: odometry Incrementally (dead reckoning / open loop control) There is a discrepancy into the real trajectory and the belief of where I have been DRIFT cumulative error Under no error, current position is accurate V. Estivill-Castro 18

Methods for Localization :Quantitative Metric Approach 1. A priori, know your environment in graph, map 2. Extract features (line segments, landmarks) 3. Match them with location in map 4. Estimate your position Kalman filter, Markov filters (particle filters) Balance observations with your belief issues: estimation of uncertainties weights to prior statistics V. Estivill-Castro 19

Challenges of Localization Knowing the absolute position (e.g. GPS) is not sufficient Localization in human-scale in relation with environment Planning in the Cognition step requires more than only position as input Perception and motion plays an important role Exteroceptive sensor noise Effector noise Odometric position estimation V. Estivill-Castro 20

Exteroceptive Sensor Noise Sensor noise is mainly influenced by environment e.g. surface, illumination and by the measurement principle itself e.g. interference between ultrasonic sensors Sensor noise drastically reduces the useful information of sensor readings. The solution is: to model sensor noise appropriately to take multiple readings into account employ temporal and/or multi-sensor fusion V. Estivill-Castro 21

Effector Noise: Odometry, Deduced Reckoning Odometry and dead reckoning: Position update is based on proprioceptive sensors Odometry: wheel sensors only Dead reckoning: also heading sensors The movement of the robot, sensed with wheel encoders and/or heading sensors is integrated to the position. Pros: Straight forward, easy Cons: Errors are integrated -> unbound Using additional heading sensors (e.g. gyroscope) might help to reduce the cumulated errors, but the main problems remain the same V. Estivill-Castro 22

V. Estivill-Castro 23 Derivation of Error Models for Motion An analytical model We want some formula/algorithms that tells me when the robot moves, where will it end up (and estimate the error/confidence of this new position)

Odometry: Example, the differential robot If we are in a point p=(x,y,θ) and we move a little bit to p =p+(δx,δy,δθ) Can we build an analytical model of where the robot is? p and the error Based on measurements Of the robot V. Estivill-Castro 24

Differential wheel robot (Lect 03) φ 1 speed right wheel, φ 2 sped of left wheel; r diameter of wheels, s half separation of wheels x R = r φ 1 /2 + r φ 2 /2 y R =0 Change in rotational velocity ω 1 when only forward spin of right wheel robot moves clockwise ω 1 = r φ 1 /2s Change in rotational velocity ω 2 when only the left wheel moves forward robot moves counterclockwise ω 2= - r φ 2 /2s Total rotational velocity r φ 1 /2s -r φ 2 /2s V. Estivill-Castro 25

Differential wheel robot (adapt) φ 1 speed right wheel, φ 2 sped of left wheel; r diameter of wheels, b=2s separation of wheels x R = r φ 1 /2 + r φ 2 /2 = (r φ 1 + r φ 2 )/2 y R =0 Change in rotational velocity ω 1 when only forward spin of right wheel robot moves clockwise ω 1 = r φ 1 /2s Change in rotational velocity ω 2 when only the left wheel moves forward robot moves counterclockwise ω 2= - r φ 2 /2s Total rotational velocity r φ 1 /2s -r φ 2 /2s = (r φ 1 - r φ 2 )/b V. Estivill-Castro 26

Some definitions p=[x y θ] T the starting position Δx, displacement in the environment in x direction Δy, displacement in the environment in y direction Δθ, change in spin / orientation in the environment All after some small time interval Δt Δs r, displacement in right wheel Δs l, displacement in left wheel V. Estivill-Castro 27

Because diferential robot Δθ, change in spin / orientation in the environment All after some small time interval Δt Δs r, displacement in right wheel Δs l, displacement in left wheel Δθ = (Δs r Δs l )/b And if Δs is the displacement of the robot Δs = (Δs r + Δs l )/2 Remember b is the separation between the wheels V. Estivill-Castro 28

In the referential frame of the environment Δx, displacement in the environment in x direction Δx=Δs cos(θ+δθ/2)=cos(θ+ Δθ/2)(Δs r +Δs l )/2 Δy, displacement in the environment in y direction Δy = Δs sin (θ+ Δθ/2) Δθ, change in spin / orientation in the environment Δθ = (Δs r Δs l )/b V. Estivill-Castro 29

Re-write the model p =p+(δx,δy,δθ) p =p+(cos(θ+ Δθ/2)(Δs r +Δs l )/2, sin(θ+ Δθ/2)(Δs r +Δs l )/2, (Δs r Δs l )/b) p =(x,y, θ)+(cos(θ+ Δθ/2)(Δs r +Δs l )/2, sin(θ+ Δθ/2)(Δs r +Δs l )/2, (Δs r Δs l )/b) p =f(x,y, θ, Δs r,δs l ) V. Estivill-Castro 30

Odometry in the robots frame of reference b is the separation between the wheels Kinematics: V. Estivill-Castro 31

We still have to make some assumptions For the position Σ p initially can be all zeros Estimate an (initial) covariance matrix Σ Δ = k r Δs r 0 0 k l Δs rl The two errors from the wheels are independent The variance of the errors in the wheels is proportional to the absolute value of the travel distance The constants k l k r determined experimentally V. Estivill-Castro 32

In higher dimensions (from Lect 08) It can be shown that the output covariance matrix C Y is given by the error propagation law: C Y =F X C X F X T where C X :covariance matrix representing the input uncertainties C Y :covariance matrix representing the propagated output uncertainties is the Jacobian matrix (the transpose off the gradient of f(x) defined as [ ] δf 1 /δx 1 δf m /δx 1 δf 1 /δx n δf m /δx n V. Estivill-Castro 33

Applying the error propagation law p =f(x,y, θ, Δs r,δs l ) Two Jacobians Fp = p f = p (f T ) = (δf/δx δf/δy δf/δθ) F Δrl = Δrl f = (δf/δδs r δf/δδs l ) Update the confidence/trust on the error Σ p = p f Σ p p f T + Δrl f Σ Δ Δrl f T V. Estivill-Castro 34

Applying the error propagation law Fp = p f = p (f T ) = (δf/δx δf/δy δf/δθ) f = x + cos(θ+ Δθ/2)(Δs r +Δs l )/2 y + sin(θ+ Δθ/2)(Δs r +Δs l )/2 θ + (Δs r Δs l )/b V. Estivill-Castro 35

Odometry in the robots frame of reference b is the separation between the wheels (Motion) Error Model: V. Estivill-Castro 36

Odometry: Growth of Pose uncertainty for Straight Line Movement Note: Errors perpendicular to the direction of movement are growing much faster! V. Estivill-Castro 37

Odometry: Growth of Pose uncertainty for Movement on a Circle Note: Errors: ellipse does not remain perpendicular to the direction of movement! V. Estivill-Castro 38

Odometry: example of non- Gaussian error model Note: Errors are not shaped like ellipses! V. Estivill-Castro 39

Odometry: Error sources deterministic errors can be eliminated by proper calibration of the system. SYSTEMATIC non-deterministic errors have to be described by error models and will always lead to uncertain position estimate NON-SYSTEMATIC V. Estivill-Castro 40

Odometry: Error sources Major Error Sources in Odometry: Limited resolution during integration (time increments, measurement resolution) Misalignment of the wheels (deterministic) Unequal wheel diameter (deterministic) Variation in the contact point of the wheel Unequal floor contact (slipping, not planar...) V. Estivill-Castro 41

Odometry: Classification of Integration Errors Range error: integrated path length (distance) of the robots movement sum of the wheel movements Turn error: similar to range error, but for turns difference of the wheel motions Drift error: difference in the error of the wheels leads to an error in the robots angular orientation V. Estivill-Castro 42

Odometry: Classification of Integration Errors Over long periods of time, turn and drift errors far outweigh range errors! Consider moving forward on a straight line along the x axis. D The error in the y- position introduced by a move of d meters will have a component of dsinq, which can be quite large as the angular error q grows. D V. Estivill-Castro 43

Illustration MiPAL 2013 classification Sense-Plan-Act (some replanning) http://www.youtube.com/watch?v=cqgcrqrz nco&feature=youtu.be V. Estivill-Castro 44

V. Estivill-Castro 45 Belief representation How do we represent the robot position, where the robot believes to be?

Belief Representation Continuous map with single hypothesis probability distribution Continuous map with multiple hypothesis probability distribution Discretized map with probability distribution Discretized topological map with probability distribution V. Estivill-Castro 46

Belief Representation: Characteristics Continuous Precision bound by sensor data Typically single hypothesis pose estimate Lost when diverging (for single hypothesis) Compact representation and typically reasonable in processing power. Discrete Precision bound by resolution of discretisation Typically multiple hypothesis pose estimate Never lost (when diverges converges to another cell) Important memory and processing power needed. (not the case for topological maps) V. Estivill-Castro 47

Map representation Map precision vs. application Features precision vs. map precision Precision vs. computational complexity Continuous Representation Decomposition (Discretisation) V. Estivill-Castro 48

Representation of the Environment Environment Representation Continuous Metric x,y,q Discrete Metric metric grid Discrete Topological topological grid V. Estivill-Castro 49

Environment Modeling Raw sensor data, e.g. laser range data, gray-scale images large volume of data, low distinctiveness on the level of individual values makes use of all acquired information Low level features, e.g. line other geometric features medium volume of data, average distinctiveness filters out the useful information, still ambiguities High level features, e.g. doors, a car, the Eiffel tower low volume of data, high distinctiveness filters out the useful information, few/no ambiguities, not enough information V. Estivill-Castro 50

Map Representation Architecture map Representation with set of finite or infinite lines V. Estivill-Castro 51

Map Representation Exact cell decomposition - Polygons V. Estivill-Castro 52

Map Representation Approximate cell decomposition Fixed cell decomposition Narrow passages disappear V. Estivill-Castro 53

Map Representation Adaptive cell decomposition V. Estivill-Castro 54

Map Representation: Occupancy grid Fixed cell decomposition: occupancy grid example In occupancy grids, each cell may have a counter where 0 indicates that the cell has not been hit by any ranging measurements and therefore it is likely free-space. As the number of ranging strikes increases, the cell value is incremented and, above a certain threshold, the cell is deemed to be an obstacle The values of the cells are discounted when a ranging strike travels through the cell. This allows us to represent transient (dynamic) obstacles V. Estivill-Castro 55

Topological Decomposition With weights 5.4 5.3 4.4 4.3 V. Estivill-Castro 56

Transformation 6 1 3 1 2 1 4 7 3 1 4 3 1 1 2 3 1 3 2 1 3 1 2 1 4 7 3 1 4 3 1 1 2 3 1 3 1 3 3 1 1 1 3 9 4 2 2 1 1 1 3 4 4 1 3 3 1 1 1 3 3 1 9 2 2 1 1 1 3 4 V. Estivill-Castro 57 destination start

Summary of Map Representation Metric maps Continuous For example line based, point based, or plane based Discrete Exact cell decomposition Approximate cell decomposition Topological Fixed cell decomposition (also occupancy grids) Adaptive cell decomposition Hybrid (mixture of metric and topological) V. Estivill-Castro 58

State-of-the-Art: Current Challenges in Map Representation Real world is dynamic Perception is still a major challenge Error prone Extraction of useful information difficult Traversal of open space How to build up topology (boundaries of nodes) Sensor fusion 2D...3D V. Estivill-Castro 59

V. Estivill-Castro 60