1 / 16

Autonomous Robot Localisation, Path Planning, Navigation, and Obstacle Avoidance

CC36510. Autonomous Robot Localisation, Path Planning, Navigation, and Obstacle Avoidance. The Problem:

stefan
Download Presentation

Autonomous Robot Localisation, Path Planning, Navigation, and Obstacle Avoidance

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. CC36510 Autonomous Robot Localisation, Path Planning, Navigation, and Obstacle Avoidance • The Problem: • Robot needs to know where it is? where it’s going? is there more than one way to get there? if yes, then which is the best way? and it must not collide with any obstacles en route, or fall down a ravine, or get stuck, or fall over! 1

  2. CS36510 Autonomous Operation High Level Command: “Go to the top of this hill” 2

  3. CS36510 Required Functionality for Navigation • Environment perception • Cameras: PanCam (stereo), NavCams, HazCams • Environment modelling • DEMs used for terrain gradient and feature identification • Localisation • Star maps, Earth based radio telescopes, rover odometer, gyros • Obstacle avoidance • ‘Reactive Control’ - “if obstacle distance < 10 cm then turn 10 degrees clockwise else move towards goal” • ‘Deliberative Control’ – generate a map of your environment and plan your route round obstacles to get to your goal • ‘Best’ route planning and search algorithms • Use D* algorithm which is based on A* algorithm 3

  4. CS36510 Localisation Challenge • Need to know where you are, before you can start navigating to where you want to be! • No GPS! • Cannot always see the stars • Anomalous localised magnetic regions on Mars • Cannot commit orbital resources full time (e.g. orbiter cameras) • Cannot commit terrestrial resources full time (e.g. radio telescopes) • Line-of-sight not always possible (e.g. on opposite side of planet) • Dead-reckoning (e.g. odometry, inertial navigation) unreliable (wheel slippage, instrument integration drift) 4

  5. CS36510 NASA MER Localisation Solution Ron Li, Ohio State University, algorithm overview: Capture stereo-image data of any rocks that are situated (typically) at a site in front of the rover. Process image data to extract interest points such as rock peaks, sharp corners, and ridge points. Extract rock surface points which are needed in addition to the interest points in order to fit an analytical rock model to, and to describe the size of any rock. Typical analytical models include hemispheroid, semi-ellipsoid, cone or tetrahedron shapes. Traverse the rover and reposition the stereo cameras (pan & tilt) to view the same site of rocks, but these are now (typically) behind the rover. Capture stereo-image data and repeat same image processing (steps 2 and 3) to fit an analytical rock model to the new scene. Perform rock matching on the before and after traverse rock model data. In principle, a rigid transform including three rotations and a 3D translation between the two corresponding rock distribution sites can be obtained. Repeat steps 1 to 6 to localise the rover after each traverse (typically less than 30 m per traverse when using the MER Navigation cameras). 5

  6. CS36510 NASA MER Localisation Solution Images courtesy Ron Li, OSU 6

  7. CS36510 NASA MER Localisation Solution Images courtesy Ron Li, OSU 7

  8. ‘Brain’ Both deliberative and reactive methods have their strengths and weaknesses such as ….? Deliberative processes Sensors Actuators CS36510 Reactive versus Deliberative Reactive processes (c.f. reflex actions) 8

  9. CS36510 Required Functionality for Navigation • Consult the following: • “Recent Progress in Local and Global Traversability for Planetary Rovers” (icra2000v6.pdf) • Need to know about A* and D* algorithms 9

  10. CS36510 Pathfinding with the A* algorithm Node - n Figure of merit - f(n) Cost so far – g(n) Cost to go – h(n) Has to be an under estimate f(n) = g(n) + h(n) An example of A star (A*) algorithm in action where nodes (n) are cities connected with roads and h(n) is the straight-line distance to target point. Key: green: start; blue: goal; orange: visited 10

  11. CS36510 Some A* algorithm links A* strengths and weaknesses ….? Hence you need D* (a variant is D* Lite) http://en.wikipedia.org/wiki/A*_search_algorithm http://www.policyalmanac.org/games/aStarTutorial.htm http://theory.stanford.edu/~amitp/GameProgramming/ 11

  12. CS36510 CMU Architecture • Paper introduces challenges for navigation • Describes research in this area • Uses both a local (reactive) and a global (deliberative) approach • Stereo Map – for traversability (‘slope map’) • Morphin – local traversability (obstacle avoidance) • D* – global path planner • Arbiter – to combine both local and global control commands 12

  13. CS36510 Stereo Map The traversability mapper calculates the expected roll and pitch of the robot at each map grid cell in the sensor footprint using a local least-squares plane-fitting on range data. The residual error is used as an estimate of the small-scale roughness of the terrain 13

  14. CS36510 Morphin (see paper for full details) • Black areas – not seen before • Grey areas – recent, less recent and old data • Textured areas – obstacles • Sensing arcs (‘whiskers’) based upon steering arcs • Goodness histogram – sensing arc cells occupancy • Certainty histogram – cell data age • Traversability histogram – weighted combination of goodness and certainty 14

  15. CS36510 D* (see paper for full details and D* Lite links) • Dynamic A* is an extension to basic A* • When the world model unexpectedly changes due to new sensor data, the A* algorithm has to be re-run – computationally undesirable • D* allows incremental re-planning based upon existing occupancy data (i.e. you don’t have to start from scratch every time) • Calculates a local ‘patch’ in the route plan to get around new obstacles and get back to original plan (example using synthetic data) Red: rover path; Black: obstacles discovered, Green: occupancy data 15

  16. CS36510 Arbiter (see paper for full details) • A ratio of weights is applied to Morphin and D* steering command outputs (ongoing research) • Morphin (reactive) is weighted higher than D* (deliberative) at the cost of path optimality • Top image result – Bullwinkle cul-de-sac negotiation • Lower image (top) result – Morphin weight 5 × more than D* • Lower image (bottom) result – D* weight 2 × more than Morphin 16

More Related