Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


Presentation on theme: "The City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Mobile Robot Mapping."— Presentation transcript:

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

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

3 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

4 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

5 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

6 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.

7 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?

8 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

9 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

10 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

11 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

12 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

13 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?

14 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

15 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

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

17 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 ?

18 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 ?

19 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...

20 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)

21 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?

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

23 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) ??

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

25 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

26 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 ?

27 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

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

29 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

30 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 (+)

31 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 (+)

32 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

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

34 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

35 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

36 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

37 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

38 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?

39 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)

40 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”

41 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

42 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

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


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

Similar presentations


Ads by Google