The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Mobile Robot Mapping.

Slides:



Advertisements
Similar presentations
Mobile Robot ApplicationsMobile Robot Applications Textbook: –T. Bräunl Embedded Robotics, Springer 2003 Recommended Reading: 1. J. Jones, A. Flynn: Mobile.
Advertisements

Reactive and Potential Field Planners
Lecture 7: Potential Fields and Model Predictive Control
AI Pathfinding Representing the Search Space
Fall Path Planning from text. Fall Outline Point Robot Translational Robot Rotational Robot.
Motion Planning for Point Robots CS 659 Kris Hauser.
Advanced Mobile Robotics
Sonar and Localization LMICSE Workshop June , 2005 Alma College.
University of Amsterdam Search, Navigate, and Actuate - Quantitative Navigation Arnoud Visser 1 Search, Navigate, and Actuate Quantative Navigation.
SA-1 Probabilistic Robotics Probabilistic Sensor Models Beam-based Scan-based Landmarks.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
Autonomous Robot Navigation Panos Trahanias ΗΥ475 Fall 2007.
Robotic Mapping: A Survey Sebastian Thrun, 2002 Presentation by David Black-Schaffer and Kristof Richmond.
Probabilistic Methods in Mobile Robotics. Stereo cameras Infra-red Sonar Laser range-finder Sonar Tactiles.
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Course Summary Introduction.
City College of New York 1 Prof. Jizhong Xiao Department of Electrical Engineering CUNY City College Syllabus/Introduction/Review Advanced.
Robotics R&N: ch 25 based on material from Jean- Claude Latombe, Daphne Koller, Stuart Russell.
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York A Taste of Localization.
Navigation and Motion Planning for Robots Speaker: Praveen Guddeti CSE 976, April 24, 2002.
A Taste of Robot Localization Course Summary
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Robot Motion Planning.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Configuration Space – Basic Path-Planning Methods.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York A Taste of Localization.
Introduction to Mobile Robots Motion Planning Prof.: S. Shiry Pooyan Fazli M.Sc Computer Science Department of Computer Eng. and IT Amirkabir Univ. of.
Inverse Kinematics Jacobian Matrix Trajectory Planning
Introduction to Robot Motion Planning. Example A robot arm is to build an assembly from a set of parts. Tasks for the robot: Grasping: position gripper.
Sonar-Based Real-World Mapping and Navigation by ALBERTO ELFES Presenter Uday Rajanna.
Mobile Robot ApplicationsMobile Robot Applications Textbook: –T. Bräunl Embedded Robotics, Springer 2003 Recommended Reading: 1. J. Jones, A. Flynn: Mobile.
N.B. Please register for the course with the ITO Please attend a practical in the coming week: –Either 10:00, 13:05 Tuesday –Or 10:00, 13:05 Friday If.
Motion Planning Howie CHoset.
Lab 3 How’d it go?.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
Localisation & Navigation
© Manfred Huber Autonomous Robots Robot Path Planning.
Simultaneous Localization and Mapping Presented by Lihan He Apr. 21, 2006.
Visibility Graph. Voronoi Diagram Control is easy: stay equidistant away from closest obstacles.
SLAM: Robotic Simultaneous Location and Mapping With a great deal of acknowledgment to Sebastian Thrun.
Path Planning for a Point Robot
Introduction to Robot Motion Planning Robotics meet Computer Science.
Robot Building Lab: Localization and Mapping Collision Detection and Obstacle Avoidance Using Sonar  Have continuously running task update obstacle state:
The City College of New York 1 Dr. Jizhong Xiao Department of Electrical Engineering City College of New York Inverse Kinematics Jacobian.
Wandering Standpoint Algorithm. Wandering Standpoint Algorithm for local path planning Description: –Local path planning algorithm. Required: –Local distance.
City College of New York 1 Dr. Jizhong Xiao Department of Electrical Engineering City College of New York Advanced Mobile Robotics.
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
Administration Feedback on assignment Late Policy
Robotics Club: 5:30 this evening
Navigation & Motion Planning Cell Decomposition Skeletonization Bounded Error Planning (Fine-motion Planning) Landmark-based Planning Online Algorithms.
Overivew Occupancy Grids -Sonar Models -Bayesian Updating
Robotics Chapter 5 – Path and Trajectory Planning
Probabilistic Robotics
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York A Taste of Localization.
Motion Planning Howie CHoset. Assign HW Algorithms –Start-Goal Methods –Map-Based Approaches –Cellular Decompositions.
Robot Motion Planning Robotics meet Computer Science.
Autonomous Mobile Robots Autonomous Systems Lab Zürich Probabilistic Map Based Localization "Position" Global Map PerceptionMotion Control Cognition Real.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
COGNITIVE APPROACH TO ROBOT SPATIAL MAPPING
Schedule for next 2 weeks
Mathematics & Path Planning for Autonomous Mobile Robots
Day 32 Range Sensor Models 11/13/2018.
Path Planning in Discrete Sampled Space
Probabilistic Robotics
Distance Sensor Models
Overivew Occupancy Grids -Sonar Models -Bayesian Updating
Probabilistic Map Based Localization
Robotics meet Computer Science
Planning.
Classic Motion Planning Methods
Presentation transcript:

The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Mobile Robot Mapping Introduction to ROBOTICS

The City College of New York 2 Topics Brief Review: Motion Planning Mobile Robot Mapping –Using sonar to create maps –Bayes Rule –Evidence Grids

The City College of New York 3 Review: Motion Planning –Configuration Space –Motion Planning Methods Roadmap Approaches Cell Decomposition Potential Fields Bug Algorithms Motion Planning: Find a path connecting an initial configuration to goal configuration without collision with obstacles

The City College of New York 4 Review: Motion Planning Motion Planning Methodololgies – Roadmap – Cell Decomposition – Potential Field Roadmap – From C free a graph is defined (Roadmap) – Ways to obtain the Roadmap Visibility graph Voronoi diagram Cell Decomposition – The robot free space (C free ) is decomposed into simple regions (cells) – The path in between two poses of a cell can be easily generated Potential Field – The robot is treated as a particle acting under the influence of a potential field U, where: the attraction to the goal is modeled by an additive field obstacles are avoided by acting with a repulsive force that yields a negative field Global methods Local methods

The City College of New York 5 Full-knowledge motion planning approximate free space represented via a quadtree Cell decompositionsRoadmaps exact free space represented via convex polygons visibility graph voronoi diagram

The City College of New York 6 Potential field Method Usually assumes some knowledge at the global level The goal is known; the obstacles sensed Each contributes forces, and the robot follows the resulting gradient.

The City College of New York 7 Mobot System Overview Abstraction level Motor Modeling : what voltage should I set now ? Control (PID) : what voltage should I set over time ? Kinematics : if I move this motor somehow, what happens in other coordinate systems ? Motion Planning : Given a known world and a cooperative mechanism, how do I get there from here ? Bug Algorithms : Given an unknowable world but a known goal and local sensing, how can I get there from here? Mapping : Given sensors, how do I create a useful map? low-level high-level Localization : Given sensors and a map, where am I ? Vision : If my sensors are eyes, what do I do?

The City College of New York 8 Mobile Robot Mapping Answering robotics’ big questions –How to get a map of an environment with imperfect sensors (Mapping) –How a robot can tell where it is on a map (localization) –Getting from place to place under uncertain conditions –Using vision effectively

The City College of New York 9 Sonar sensing Why is sonar sensing limited to between ~12 in. and ~25 feet ? “The sponge” Polaroid sonar emitter/receivers sonar timeline 0 a “chirp” is emitted into the environment 75  s typically when reverberations from the initial chirp have stopped.5s the transducer goes into “receiving” mode and awaits a signal... after a short time, the signal will be too weak to be detected Sonar (sound navigation and ranging): range sensing using acoustic (i.e., sound) signal Blanking timeAttenuation

The City College of New York 10 Sonar effects resolution: time / space (d) Specular reflections cause walls to disappear (e) Open corners produce a weak spherical wavefront (f) Closed corners measure to the corner itself because of multiple reflections --> sonar ray tracing (a) Sonar providing an accurate range measurement (b-c) Lateral resolution is not very precise; the closest object in the beam’s cone provides the response

The City College of New York 11 Sonar modeling initial time response spatial response Sonar amplitude profile: 3-D cone with side lobes blanking time accumulated responses cone width

The City College of New York 12 Sonar Modeling response model (Kuc & Siegel) sonar reading obstacle c = speed of sound a = diameter of sonar element (transducer) t = time z = orthogonal distance  = angle of environment surface Models the response, h R,with  Then, add noise to the model to obtain a probability: p( S | o ) chance that the sonar reading is S, given an obstacle at location o z = S o

The City College of New York 13 Using sonar to create maps What should we conclude if this sonar reads 10 feet? 10 feet what would a local map look like?

The City College of New York 14 Using sonar to create maps What should we conclude if this sonar reads 10 feet? 10 feet there is something somewhere around here there isn’t something here Local Map unoccupied occupied

The City College of New York 15 Using sonar to create maps What should we conclude if this sonar reads 10 feet? 10 feet there is something somewhere around here there isn’t something here Local Map unoccupied occupied or... no information

The City College of New York 16 Using sonar to create maps What should we conclude if this sonar reads 10 feet feet and how do we add the information that the next sonar reading (as the robot moves) reads 10 feet, too? 10 feet

The City College of New York 17 Combining sensor readings The key to making accurate maps is combining lots of data. But combining these numbers means we have to know what they are ! What should our map contain ? small cells each represents a bit of the robot’s environment larger values => obstacle smaller values => free what is in each cell of this sonar model / map ?

The City College of New York 18 What is it a map of? Several answers to this question have been tried: It’s a map of occupied cells. o xy cell (x,y) is occupied cell (x,y) is unoccupied Each cell is either occupied or unoccupied -- this was the approach taken by the Stanford Cart. pre ‘83 What information should this map contain, given that it is created with sonar ?

The City College of New York 19 Several answers to this question have been tried: It’s a map of occupied cells. It’s a map of probabilities: p( o | S 1..i ) p( o | S 1..i ) The certainty that a cell is occupied, given the sensor readings S 1, S 2, …, S i The certainty that a cell is unoccupied, given the sensor readings S 1, S 2, …, S i o xy cell (x,y) is occupied cell (x,y) is unoccupied maintaining related values separately initialize all certainty values to zero ‘83 - ‘88 pre ‘83 What is it a map of ? contradictory information will lead to both values near 1 combining them takes some work...

The City College of New York 20 Several answers to this question have been tried: It’s a map of occupied cells. It’s a map of probabilities: p( o | S 1..i ) p( o | S 1..i ) It’s a map of odds. The certainty that a cell is occupied, given the sensor readings S 1, S 2, …, S i The certainty that a cell is unoccupied, given the sensor readings S 1, S 2, …, S i The odds of an event are expressed relative to the complement of that event. odds( o | S 1..i ) = p( o | S 1..i ) The odds that a cell is occupied, given the sensor readings S 1, S 2, …, S i o xy cell (x,y) is occupied cell (x,y) is unoccupied ‘83 - ‘88 pre ‘83 What is it a map of ? probabilities evidence = log 2 (odds)

The City College of New York 21 An example map units: feet Evidence grid of a tree-lined outdoor path lighter areas: lower odds of obstacles being present darker areas: higher odds of obstacles being present how to combine them?

The City College of New York 22 Combining probabilities How to combine two sets of probabilities into a single map ?

The City College of New York 23 Conditional probability Some intuition... p( o | S ) = The probability of event o, given event S. The probability that a certain cell o is occupied, given that the robot sees the sensor reading S. p( S | o ) = The probability of event S, given event o. The probability that the robot sees the sensor reading S, given that a certain cell o is occupied. What is really meant by conditional probability ? How are these two probabilities related? p( o | S ) = p(S | o) ??

The City College of New York 24 Bayes Rule p( o  S ) = p( o | S ) p( S ) - Joint probabilities/Conditional probabilities

The City College of New York 25 Bayes Rule - Bayes rule relates conditional probabilities p( o | S ) = p( S | o ) p( o ) p( S ) Bayes rule p( o  S ) = p( o | S ) p( S ) - Joint probabilities/Conditional probabilities

The City College of New York 26 Bayes Rule - Bayes rule relates conditional probabilities p( o | S ) = p( S | o ) p( o ) - So, what does this say about p( S ) Bayes rule odds( o | S 2  S 1 ) ? p( o  S ) = p( o | S ) p( S ) - Joint probabilities/Conditional probabilities Can we update easily ?

The City College of New York 27 Combining evidence So, how do we combine evidence to create a map? What we want -- odds( o | S 2  S 1 ) the new value of a cell in the map after the sonar reading S 2 What we know -- odds( o | S 1 ) the old value of a cell in the map (before sonar reading S 2 ) p( S i | o ) & p( S i | o ) the probabilities that a certain obstacle causes the sonar reading S i

The City College of New York 28 Combining evidence odds( o | S 2  S 1 ) = p( o | S 2  S 1 )

The City College of New York 29 Combining evidence odds( o | S 2  S 1 ) = p( o | S 2  S 1 ). = p( S 2  S 1 | o ) p(o) def’n of odds

The City College of New York 30 p( S 2 | o ) p( S 1 | o ) p(o) Combining evidence odds( o | S 2  S 1 ) = p( o | S 2  S 1 ). = p( S 2  S 1 | o ) p(o) p( S 2 | o ) p( S 1 | o ) p(o) def’n of odds Bayes’ rule (+)

The City College of New York 31 p( S 2 | o ) p( S 1 | o ) p(o) Combining evidence odds( o | S 2  S 1 ) = p( o | S 2  S 1 ). = p( S 2  S 1 | o ) p(o) p( S 2 | o ) p( S 1 | o ) p(o) def’n of odds Bayes’ rule (+) conditional independence of S 1 and S 2 p( S 2 | o ) p( o | S 1 ) Bayes’ rule (+)

The City College of New York 32 p( S 2 | o ) p( S 1 | o ) p(o) Combining evidence odds( o | S 2  S 1 ) = p( o | S 2  S 1 ). = p( S 2  S 1 | o ) p(o) p( S 2 | o ) p( S 1 | o ) p(o) Update step = multiplying the previous odds by a precomputed weight. def’n of odds Bayes’ rule (+) conditional independence of S 1 and S 2 p( S 2 | o ) p( o | S 1 ) Bayes’ rule (+) previous odds precomputed values the sensor model

The City College of New York 33 Evidence Grids... Mapping Using Evidence grids

The City College of New York 34 represent space as a collection of cells, each with the odds (or probability) that it contains an obstacle Lab environment not sure likely obstacle likely free space Evidence Grids... evidence = log 2 (odds) Mapping Using Evidence grids lighter areas: lower odds of obstacles being present darker areas: higher odds of obstacles being present

The City College of New York 35 represent space as a collection of cells, each with the odds (or probability) that it contains an obstacle Lab environment not sure likely obstacle likely free space The relative locations of the robot within the map are assumed known. It is important that the robot odometry is correct Evidence Grids... Mapping Using Evidence grids

The City College of New York 36 hallway with some open doors known map and estimated evidence grid lab space CMU -- Hans Moravec Mapping Using Evidence grids

The City College of New York 37 Motion Planning in Evidence Grids Reduces to a search problem within the graph of cells, and the graph is created on the fly. Search for a minimum- cost path, depending on length probability of collision

The City College of New York 38 Path Planning in Evidence Grids Reduces to a search problem within the graph of cells, and the graph is created on the fly. Search for a minimum- cost path, depending on cost = K   step ij +  collision penalty length probability of collision (i,j)  path step ij = length of traversing cell (i,j) What should this be?

The City College of New York 39 Path Planning in Evidence Grids Reduces to a search problem within the graph of cells, and the graph is created on the fly. Search for a minimum- cost path, depending on cost = K   step ij +  -log( 1-p ) length probability of collision (i,j)  path Suppose p is the chance of colliding with an obstacle in cell (i,j). step ij = length of traversing cell (i,j)

The City College of New York 40 Robot Mapping represent space as a collection of cells, each with the odds (or probability) that it contains an obstacle Lab environment not sure likely obstacle likely free space The relative locations of the robot within the map are assumed known. It is important that the robot odometry is correct Equally plausible to consider the converse problem... Evidence Grids... Given a map of the environment, how do I determine where I am? “Robot localization problem”

The City College of New York 41 Localization via mapping Key idea: use what we already know how to do -- mapping Map the area around the robot Match the result to the known map of the world

The City College of New York 42 Localization via mapping Key idea: use what we already know how to do -- mapping Map the area around the robot Match the result to the known map of the world

The City College of New York 43 Thank you! Homework 9 posted on the web Next class: Localization