Introduction to Mobile Robotics Path Planning and Collision Avoidance

Similar documents
Introduction to Mobile Robotics Path Planning and Collision Avoidance. Wolfram Burgard, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

Introduction to Mobile Robotics Path and Motion Planning. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

Cognitive Robotics Robot Motion Planning Matteo Matteucci

Robot Motion Control Matteo Matteucci

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

Advanced Robotics Path Planning & Navigation

Visual Navigation for Flying Robots. Motion Planning

Autonomous Mobile Robots, Chapter 6 Planning and Navigation Where am I going? How do I get there? Localization. Cognition. Real World Environment

Probabilistic Robotics

Path Planning. Marcello Restelli. Dipartimento di Elettronica e Informazione Politecnico di Milano tel:

Introduction to Mobile Robotics Multi-Robot Exploration

Navigation methods and systems

Obstacle Avoidance (Local Path Planning)

Motion Planning of an Autonomous Mobile Robot Considering Regions with Velocity Constraint

Collision avoidance with Vector Field Histogram+ and Nearness Diagram algorithms implemented on a LEGO Mindstorms NXT robot

Probabilistic Robotics

Advanced Robotics Path Planning & Navigation

angle field approach. In addition to kinematic constrains these frameworks take into account dynamic constraints to reduce the search space even furth

Introduction to Information Science and Technology (IST) Part IV: Intelligent Machines and Robotics Planning

Basic Motion Planning Algorithms

COMPARISON OF ROBOT NAVIGATION METHODS USING PERFORMANCE METRICS

Abstracting any Vehicle Shape and the Kinematics and Dynamic Constraints from Reactive Collision Avoidance Methods

IROS 05 Tutorial. MCL: Global Localization (Sonar) Monte-Carlo Localization. Particle Filters. Rao-Blackwellized Particle Filters and Loop Closing

OBSTACLE AVOIDANCE IN LOCAL NAVIGATION

The Obstacle-Restriction Method (ORM) for Robot Obstacle Avoidance in Difficult Environments

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

A ROS REACTIVE NAVIGATION SYSTEM FOR GROUND VEHICLES BASED ON TP-SPACE TRANSFORMATIONS

Introduction to Mobile Robotics

Tracking Multiple Moving Objects with a Mobile Robot

Introduction to Mobile Robotics SLAM Grid-based FastSLAM. Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Diego Tipaldi, Luciano Spinello

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

A set-based global dynamic window algorithm for robust and safe mobile robot path planning

Optimizing Schedules for Prioritized Path Planning of Multi-Robot Systems

Kinematics, Kinematics Chains CS 685

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

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

Non-holonomic Planning

Autonomous Robotics 6905

Robots are built to accomplish complex and difficult tasks that require highly non-linear motions.

Real-Time Obstacle Avoidance For Polygonal Robots With A Reduced Dynamic Window

COMPLETE AND SCALABLE MULTI-ROBOT PLANNING IN TUNNEL ENVIRONMENTS. Mike Peasgood John McPhee Christopher Clark

Robot Motion Planning and (a little) Computational Geometry

Mapping and Exploration with Mobile Robots using Coverage Maps

ICRA 2016 Tutorial on SLAM. Graph-Based SLAM and Sparsity. Cyrill Stachniss

Artificial Intelligence for Robotics: A Brief Summary

Path-Planning for Multiple Generic-Shaped Mobile Robots with MCA

Jane Li. Assistant Professor Mechanical Engineering Department, Robotic Engineering Program Worcester Polytechnic Institute

Adapting Navigation Strategies Using Motions Patterns of People

Fast Local Planner for Autonomous Helicopter

Announcements. Recap Landmark based SLAM. Types of SLAM-Problems. Occupancy Grid Maps. Grid-based SLAM. Page 1. CS 287: Advanced Robotics Fall 2009

Search-based Planning with Motion Primitives. Maxim Likhachev Carnegie Mellon University

Today MAPS AND MAPPING. Features. process of creating maps. More likely features are things that can be extracted from images:

Motion Planning for a Point Robot (2/2) Point Robot on a Grid. Planning requires models. Point Robot on a Grid 1/18/2012.

Predicting Travel Time from Path Characteristics for Wheeled Robot Navigation

The Dynamic Window Approach to Collision Avoidance. Dept. of Computer Science III, University of Bonn, D Bonn, Germany

Robot Motion Planning

Predictive Autonomous Robot Navigation

Trajectory Optimization

Planning and Control: Markov Decision Processes

Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control

Foundations of AI. 4. Informed Search Methods. Heuristics, Local Search Methods, Genetic Algorithms. Wolfram Burgard & Bernhard Nebel

Planning & Decision-making in Robotics Case Study: Planning for Autonomous Driving

Lecture 3: Motion Planning 2

Avoiding Moving Obstacles: the Forbidden Velocity Map

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

Manipulator trajectory planning

Lecture 3: Motion Planning (cont.)

CSE-571. Deterministic Path Planning in Robotics. Maxim Likhachev 1. Motion/Path Planning. Courtesy of Maxim Likhachev University of Pennsylvania

Foundations of Parameterized Trajectoriesbased Space Transformations for Obstacle Avoidance

Advanced Techniques for Mobile Robotics Bag-of-Words Models & Appearance-Based Mapping

Mobile Robot Obstacle Avoidance based on Deep Reinforcement Learning

Time-bounded Lattice for Efficient Planning in Dynamic Environments

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

This chapter explains two techniques which are frequently used throughout

Time-bounded Lattice for Efficient Planning in Dynamic Environments

Navigation and Metric Path Planning

RoboCup Rescue Summer School Navigation Tutorial

6.141: Robotics systems and science Lecture 10: Implementing Motion Planning

Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots

15-494/694: Cognitive Robotics

Trajectory Modification Using Elastic Force for Collision Avoidance of a Mobile Manipulator

Introduction to Mobile Robotics SLAM Landmark-based FastSLAM

W4. Perception & Situation Awareness & Decision making

Foundations of AI. 4. Informed Search Methods. Heuristics, Local Search Methods, Genetic Algorithms

Planning Long Dynamically-Feasible Maneuvers for Autonomous Vehicles

Sung-Eui Yoon ( 윤성의 )

Real-world Robot Navigation amongst Deformable Obstacles

Planning for Simultaneous Localization and Mapping using Topological Information

Advanced path planning. ROS RoboCup Rescue Summer School 2012

Grid-Based Models for Dynamic Environments

Simultaneous Localization and Mapping

Probabilistic Methods for Kinodynamic Path Planning

An image based dynamic window approach for local navigation of an autonomous vehicle in urban environments

A Genetic Algorithm for Robust Motion Planning

6 Planning and Navigation:

Path Planning. Jacky Baltes Dept. of Computer Science University of Manitoba 11/21/10

Centre for Autonomous Systems

CS 354R: Computer Game Technology

On the Heuristics of A or A Algorithm in ITS and Robot Path-Planning

Class Overview. Introduction to Artificial Intelligence COMP 3501 / COMP Lecture 2: Search. Problem Solving Agents

Transcription:

Introduction to Mobile Robotics Path Planning and Collision Avoidance Wolfram Burgard, Cyrill Stachniss, Maren Bennewitz, Giorgio Grisetti, Kai Arras 1

Motion Planning Latombe (1991): eminently necessary since, by definition, a robot accomplishes tasks by moving in the real world. Goals: Collision-free trajectories. Robot should reach the goal location as fast as possible. 2

in Dynamic Environments How to react to unforeseen obstacles? efficiency reliability Dynamic Window Approaches [Simmons, 96], [Fox et al., 97], [Brock & Khatib, 99] Grid map based Planning [Konolige, 00] Nearness Diagram Navigation [Minguez at al., 2001, 2002] Vector-Field-Histogram+ [Ulrich & Borenstein, 98] A*, D*, D* Lite, ARA*, 3

Two Challenges Calculate the optimal path taking potential uncertainties in the actions into account Quickly generate actions in the case of unforeseen objects 4

Classic Two-layered Architecture Planning low frequency map sub-goal Collision Avoidance high frequency sensor data motion command robot 5

Dynamic Window Approach Collision avoidance: determine collisionfree trajectories using geometric operations Here: robot moves on circular arcs Motion commands (v,ω) Which (v,ω) are admissible and reachable? 6

Admissible Velocities Speeds are admissible if 7

Reachable Velocities Speeds are admissible if 8

DWA Search Space Example search-space: V s = all possible speeds of the robot. V a = obstacle free area. V d = speeds reachable within a certain time frame based on possible accelerations. 9

Dynamic Window Approach How to choose <v,ω>? Steering commands are chosen by a heuristic navigation function. This function tries to minimize the traveltime by: driving fast in the right direction. 10

Dynamic Window Approach Heuristic navigation function. Planning restricted to <x,y>-space. No planning in the velocity space. Navigation Function: [Brock & Khatib, 99] NF = α vel+ β nf + γ nf + δ goal 11

Dynamic Window Approach Heuristic navigation function. Planning restricted to <x,y>-space. No planning in the velocity space. Navigation Function: [Brock & Khatib, 99] NF = α vel+ β nf + γ nf + δ goal Maximizes velocity. 12

Dynamic Window Approach Heuristic navigation function. Planning restricted to <x,y>-space. No planning in the velocity space. Navigation Function: [Brock & Khatib, 99] NF = α vel+ β nf + γ nf + δ goal Maximizes velocity. Considers cost to reach the goal. 13

Dynamic Window Approach Heuristic navigation function. Planning restricted to <x,y>-space. No planning in the velocity space. Navigation Function: [Brock & Khatib, 99] NF = α vel+ β nf + γ nf + δ goal Maximizes velocity. Considers cost to reach the goal. Follows grid based path computed by A*. 14

Dynamic Window Approach Heuristic navigation function. Planning restricted to <x,y>-space. No planning in the velocity space. Navigation Function: [Brock Goal & Khatib, nearness. 99] NF = α vel+ β nf + γ nf + δ goal Maximizes velocity. Considers cost to reach the goal. Follows grid based path computed by A*. 15

Dynamic Window Approach Reacts quickly. Low CPU power requirements. Guides a robot on a collision free path. Successfully used in a lot of real-world scenarios. Resulting trajectories sometimes sub-optimal. Local minima might prevent the robot from reaching the goal location. 16

Problems of DWAs NF = α vel+ β nf + γ nf + δ goal 17

Problems of DWAs Robot s velocity. NF = α vel+ β nf + γ nf + δ goal 18

Problems of DWAs Robot s velocity. Preferred direction of NF. NF = α vel+ β nf + γ nf + δ goal 19

Problems of DWAs NF = α vel+ β nf + γ nf + δ goal 20

Problems of DWAs NF = α vel+ β nf + γ nf + δ goal 21

Problems of DWAs NF = α vel+ β nf + γ nf + δ goal The robot drives too fast at c 0 to enter corridor facing south. 22

Problems of DWAs NF = α vel+ β nf + γ nf + δ goal 23

Problems of DWAs NF = α vel+ β nf + γ nf + δ goal 24

Problems of DWAs Same situation as in the beginning. DWAs have problems to reach the goal. 25

Problems of DWAs Typical problem in a real world situation: Robot does not slow down early enough to enter the doorway. 26

Robot Path Planning with A* What about using A* to plan the path of a robot? Finds the shortest path Requires a graph structure Limited number of edges In robotics: planning on a 2d occupancy grid map 27

A*: Minimize the estimated path costs g(n) = actual cost from the initial state to n. h(n) = estimated cost from n to the next goal. f(n) = g(n) + h(n), the estimated cost of the cheapest solution through n. Let h*(n) be the actual cost of the optimal path from n to the next goal. h is admissible if the following holds for all n : h(n) h*(n) We require that for A*, h is admissible (the straight-line distance is admissible in the Euclidean Space). 28

Example: Path Planning for Robots in a Grid-World 29

Deterministic Value Iteration To compute the shortest path from every state to one goal state, use (deterministic) value iteration. Very similar to Dijkstra s Algorithm. Such a cost distribution is the optimal heuristic for A*. 30

Typical Assumption in Robotics for A* Path Planning A robot is assumed to be localized. Often a robot has to compute a path based on an occupancy grid. Often the correct motion commands are executed (but no perfect map). Is this always true? 31

Problems What if the robot is slightly delocalized? Moving on the shortest path guides often the robot on a trajectory close to obstacles. Trajectory aligned to the grid structure. 32

Convolution of the Grid Map Convolution blurs the map. Obstacles are assumed to be bigger than in reality. Perform an A* search in such a convolved map. Robots increases distance to obstacles and moves on a short path! 33

Example: Map Convolution 1-d environment, cells c 0,, c 5 Cells before and after 2 convolution runs. 34

Convolution Consider an occupancy map. Than the convolution is defined as: This is done for each row and each column of the map. Gaussian blur 35

A* in Convolved Maps The costs are a product of path length and occupancy probability of the cells. Cells with higher probability (e.g., caused by convolution) are avoided by the robot. Thus, it keeps distance to obstacles. This technique is fast and quite reliable. 36

5D-Planning an Alternative to the Two-layered Architecture Plans in the full <x,y,θ,v,ω>-configuration space using A *. considers the robot's kinematic Generates a sequence of steering commands to reach the goal location. contraints. Maximizes trade-off between driving time and distance to obstacles. 37

The Search Space (1) What is a state in this space? <x,y,θ,v,ω> = current position and speed of the robot How does a state transition look like? <x 1,y 1,θ 1,v 1,ω 1 > <x 2,y 2,θ 2,v 2,ω 2 > with motion command (v 2,ω 2 ) and v 1 -v 2 < a v, ω 1 -ω 2 < a ω. Pose of the Robot is a result of the motion equations. 38

The Search Space (2) Idea: search in the discretized <x,y,θ,v,ω>-space. Problem: the search space is too huge to be explored within the time constraints (.25 secs for online control). Solution: restrict the full search space. 39

The Main Steps of Our Algorithm 1. Update (static) grid map based on sensory input. 2. Use A * to find a trajectory in the <x,y>space using the updated grid map. 3. Determine a restricted 5d-configuration space based on step 2. 4. Find a trajectory by planning in the restricted <x,y,θ,v,ω>-space. 40

Updating the Grid Map The environment is represented as a 2d-occupency grid map. Convolution of the map increases security distance. Detected obstacles are added. Cells discovered free are cleared. update 41

Find a Path in the 2d-Space Use A * to search for the optimal path in the 2d-grid map. Use heuristic based on a deterministic value iteration within the static map. 42

Restricting the Search Space Assumption: the projection of the 5d-path onto the <x,y>-space lies close to the optimal 2d-path. Therefore: construct a restricted search space (channel) based on the 2d-path. 43

Space Restriction Resulting search space = <x, y, θ, v, ω> with (x,y) Є channel. Choose a sub-goal lying on the 2d-path within the channel. 44

Find a Path in the 5d-Space Use A * in the restricted 5d-space to find a sequence of steering commands to reach the sub-goal. To estimate cell costs: perform a deterministic 2d-value iteration within the channel. 45

Examples 46

Timeouts Steering a robot online requires to set a new steering command every.25 secs. Abort search after.25 secs. How to find an admissible steering command? 47

Alternative Steering Command Previous trajectory still admissible? OK If not, drive on the 2d-path or use DWA to find new command. 48

Timeout Avoidance Reduce the size of the channel if the 2d-path has high cost. 49

Example start videos Robot Albert Planning state 50

Comparison to the DWA (1) DWAs often have problems entering narrow passages. DWA planned path. 5D approach. 51

Comparison to the DWA (1) DWAs often have problems entering narrow passages. DWA planned path. 5D approach. 52

Comparison to the DWA (2) The presented approach results in significantly faster motion when driving through narrow passages! 53

Comparison to the Optimum Channel: with length=5m, width=1.1m Resulting actions are close to the optimal solution. 54

Summary Robust navigation requires combined path planning & collision avoidance Approaches need to consider robot's kinematic constraints and plans in the velocity space. Combination of search and reactive techniques show better results than the pure DWA in a variety of situations. Using the 5D-approach the quality of the trajectory scales with the performance of the underlying hardware. The resulting paths are often close to the optimal ones. 55

What s Missing? More complex vehicles (e.g., cars). Moving obstacles, motion prediction. 56