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

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

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

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

Planning Long Dynamically-Feasible Maneuvers for Autonomous Vehicles

Planning, Execution and Learning Heuristics and Multi-Heuristic A*

Computer Game Programming Basic Path Finding

Search-based Planning Library SBPL. Maxim Likhachev Robotics Institute Carnegie Mellon University

Search-Based Planning with Provable Suboptimality Bounds for Continuous State Spaces

Motion Planning in Urban Environments: Part II

Planning & Decision-making in Robotics Planning Representations/Search Algorithms: RRT, RRT-Connect, RRT*

Boundary Layer Heuristic for Search-Based Nonholonomic Path Planning in Maze-Like Environments

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

Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

Basic Motion Planning Algorithms

ANA*: Anytime Nonparametric A*

Anytime search in dynamic graphs

Path Planning in Dynamic Environments with Adaptive Dimensionality

Anytime Tree-Restoring Weighted A* Graph Search

James Kuffner. The Robotics Institute Carnegie Mellon University. Digital Human Research Center (AIST) James Kuffner (CMU/Google)

R* Search. Anthony Stentz The Robotics Institute Carnegie Mellon University Pittsburgh, PA

TURN AROUND BEHAVIOR GENERATION AND EXECUTION FOR UNMANNED GROUND VEHICLES OPERATING IN ROUGH TERRAIN

Sub-optimal Heuristic Search and its Application to Planning for Manipulation

Sub-Optimal Heuristic Search ARA* and Experience Graphs

Anytime Search in Dynamic Graphs

Dependency Tracking for Fast Marching. Dynamic Replanning for Ground Vehicles

Efficient Cost Computation in Cost Map Planning for Non-Circular Robots

Path Planning for Non-Circular Micro Aerial Vehicles in Constrained Environments

Planning with Experience Graphs

Combining Global and Local Planning with Guarantees on Completeness

Anytime RRTs. Dave Ferguson and Anthony Stentz Robotics Institute Carnegie Mellon University Pittsburgh, Pennsylvania

Motion Planning in Urban Environments: Part I

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

Robot Motion Control Matteo Matteucci

ANA*: Anytime Nonparametric A*

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

Practical Search Techniques in Path Planning for Autonomous Driving

Planning for Markov Decision Processes with Sparse Stochasticity

Non-holonomic Planning

Cognitive Robotics Robot Motion Planning Matteo Matteucci

Trajectory Optimization

Approximate path planning. Computational Geometry csci3250 Laura Toma Bowdoin College

Introduction to Mobile Robotics Path Planning and Collision Avoidance

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

CMU-Q Lecture 4: Path Planning. Teacher: Gianni A. Di Caro

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

Anytime Path Planning and Replanning in Dynamic Environments

Receding Horizon Model-Predictive Control for Mobile Robot Navigation of Intricate Paths

15-494/694: Cognitive Robotics

Anytime Incremental Planning with E-Graphs

Time-bounded Lattice for Efficient Planning in Dynamic Environments

Anytime, Dynamic Planning in High-dimensional Search Spaces

Time-bounded Lattice for Efficient Planning in Dynamic Environments

Chapter 10 Motion Planning

Robot Motion Planning

Path Planning With Adaptive Dimensionality

Informed search. Soleymani. CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016

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

Solving Shortest Path Problems with Curvature Constraints Using Beamlets

Global Trajectory Generation for Nonholonomic Robots in Dynamic Environments

Parallel Scheduling for Cyber-Physical Systems: Analysis and Case Study on a Self-Driving Car

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

Trajectory Planning with Look-Ahead for Unmanned Sea Surface Vehicles to Handle Environmental Disturbances

Integrated Planning and Control for Convex-bodied Nonholonomic systems using Local Feedback Control Policies

Application of Hybrid A* to an Autonomous Mobile Robot for Path Planning in Unstructured Outdoor Environments

Planning in Domains with Cost Function Dependent Actions

Autonomous Navigation in Unknown Environments via Language Grounding

Probabilistic Methods for Kinodynamic Path Planning

Receding Horizon Model-Predictive Control for Mobile Robot Navigation of Intricate Paths

Navigation in Three-Dimensional Cluttered Environments for Mobile Manipulation

A Real-Time Motion Planner with Trajectory Optimization for Autonomous Vehicles

ECE276B: Planning & Learning in Robotics Lecture 5: Configuration Space

Blended Local Planning for Generating Safe and Feasible Paths

Assignment 1 is out! Due: 9 Sep 23:59! Can work in a group of 2-3 students.! NO cheating!!!! Submit in turnitin! Code + report!

video 1 video 2 Motion Planning (It s all in the discretization) Digital Actors Basic problem Basic problem Two Possible Discretizations

Spring 2016 :: :: Robot Autonomy :: Team 7 Motion Planning for Autonomous All-Terrain Vehicle

Path Planning with Orientation-Aware Space Exploration Guided Heuristic Search for Autonomous Parking and Maneuvering

Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control

Planning Techniques for Robotics Planning Representations: Skeletonization- and Grid-based Graphs

3D Collision Avoidance for Navigation in Unstructured Environments

Visual Navigation for Flying Robots. Motion Planning

Robotic Behaviors. Potential Field Methods

Planning approaches to constraint-aware navigation in dynamic environments

3D Field D*: Improved Path Planning and Replanning in Three Dimensions

Real-Time Adaptive A*

Nonholonomic motion planning for car-like robots

Sampling-based Planning 2

Planning for Landing Site Selection in the Aerial Supply Delivery

Pathfinding Decision Making

Informed Search A* Algorithm

Lecture 2: Symbolic Model Checking With SAT

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

Cognitive Robotics. Robot Cognitive Architectures. Matteo Matteucci

CS Path Planning

Safe Prediction-Based Local Path Planning using Obstacle Probability Sections

Kinodynamic Motion Planning with Space-Time Exploration Guided Heuristic Search for Car-Like Robots in Dynamic Environments

Advanced Robotics Path Planning & Navigation

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

Introduction to Multi-Agent Programming

Lesson 1 Introduction to Path Planning Graph Searches: BFS and DFS

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

Transcription:

16-782 Planning & Decision-making in Robotics Case Study: Planning for Autonomous Driving Maxim Likhachev Robotics Institute Carnegie Mellon University

Typical Planning Architecture for Autonomous Vehicle Carnegie Mellon University 2

Typical Planning Architecture for Autonomous Vehicle How do you think the graph is constructed? Carnegie Mellon University 3

Typical Planning Architecture for Autonomous Vehicle Tartanracing, CMU Carnegie Mellon University 4

Typical Planning Architecture for Autonomous Vehicle Tartanracing, CMU planning states defined by: x,y,theta,v Carnegie Mellon University 5

Typical Planning Architecture for Autonomous Vehicle Carnegie Mellon University 6

Typical Planning Architecture for Autonomous Vehicle planning states defined by: discretization along a lane (=x) and perpendicular to it (=y), lane ID, v, time Carnegie Mellon University 7

Typical Planning Architecture for Autonomous Vehicle We ll look into the version used for Urban Challenge in 07 [Likhachev & Ferguson, 09] Carnegie Mellon University 8

Motivation Planning long complex maneuvers for the Urban Challenge vehicle from CMU (Tartanracing team) Planner suitable for autonomous parking in very large (200m by 200m) cluttered parking lots navigating in off-road conditions navigating cluttered intersections/driveways Carnegie Mellon University 9

Desired Properties Generate a path that can be tracked well (at up to 5m/sec): path is a 4-dimensional trajectory: orientation speed Carnegie Mellon University 11

Desired Properties Generate a path that can be tracked well (at up to 5m/sec): path is a 4-dimensional trajectory: Orientation of the wheels is not included. When will that be a problem? orientation speed Carnegie Mellon University 12

Desired Properties Fast (2D-like) planning in trivial environments: 200 by 200m parking lot Carnegie Mellon University 13

Desired Properties But can also handle large non-trivial environments: 200 by 200m parking lot Carnegie Mellon University 14

Desired Properties Anytime property: finds the best path it can within X secs and then improves the path while following it initial path converged (to optimal) path Carnegie Mellon University 15

Desired Properties Fast replanning, especially since we need to avoid other vehicles planning a path that avoids other vehicles Carnegie Mellon University 16

Desired Properties Fast replanning, especially since we need to avoid other vehicles planning a path that avoids other vehicles Time is not part of the state-space. When will that be a problem? Carnegie Mellon University 17

Our Approach Build a graph multi-resolution version of a lattice graph Search the graph for a least-cost path Anytime D* [Likhachev et al. 05] Carnegie Mellon University 18

Building the Graph Lattice-based graph [Pivtoraiko & Kelly, 05]: outcome state is the center of the corresponding cell action template each transition is feasible (constructed beforehand) Carnegie Mellon University 19

Building the Graph Lattice-based graph [Pivtoraiko & Kelly, 05]: outcome state is the center of the corresponding cell action template each transition is feasible (constructed beforehand) replicate it online Carnegie Mellon University 20

Building the Graph Lattice-based graph [Pivtoraiko & Kelly, 05]: outcome state is the center of the corresponding cell each transition is feasible we will be searching (constructed this graph beforehand) a least-cost path from s start to s goal action template replicate it online Carnegie Mellon University 21

Building the Graph Multi-resolution lattice: high density in the most constrained areas (e.g., around start/goal) low density in areas with higher freedom for motions most constrained areas Carnegie Mellon University 22

Building the Graph The construction of multi-resolution lattice: the action space of a low-resolution lattice is a strict subset of the action space of the high-resolution lattice reduces the branching factor for the low-res. lattice Carnegie Mellon University 23

Building the Graph The construction of multi-resolution lattice: the action space of a low-resolution lattice is a strict subset of the action space of the high-resolution lattice reduces the branching factor for the low-res. lattice the state-space of a low-resolution lattice is discretized to be a subset of the possible discretized values of the state variables in the high-resolution lattice reduces the size of the state-space for the low-res. lattice both allow for seamless transitions Carnegie Mellon University 24

Building the Graph Multi-resolution lattice used for Urban Challenge: dense-resolution lattice low-resolution lattice 36 actions, 32 discrete values of heading 0.25m discretization for x,y 24 actions, 16 discrete values of heading 0.25m discretization for x,y can be multiple levels can also be non-uniform in x,y & v Carnegie Mellon University 25

Building the Graph Properties of multi-resolution lattice: utilization of low-resolution lattice: every path that uses only the action space of the low-resolution lattice is guaranteed to be a valid path in the multi-resolution lattice validity of paths: every path in the multi-resolution lattice is guaranteed to be a valid path in a lattice that uses only the action space of the high-resolution lattice Carnegie Mellon University 26

Building the Graph Benefit of the multi-resolution lattice: Lattice States Expanded Planning Time (s) High-resolution 2,933 0.19 Multi-resolution 1,228 0.06 Carnegie Mellon University 27

Anytime D* [Likhachev et al. 05]: Searching the Graph anytime incremental version of A* anytime: computes the best path it can within provided time and improves it while the robot starts execution. incremental: it reuses its previous planning efforts and as a result, re-computes a solution much faster Carnegie Mellon University 28

Anytime D* [Likhachev et al. 05]: Searching the Graph computes a path reusing all desired bound on the suboptimality of the previous search efforts set to large value; guarantees that until goal is reached cost(path) ε cost(optimal path) ComputePathwithReuse(); publish -suboptimal path for execution; update the map based on new sensory information; update current state of the agent; if significant changes were observed increase or replan from scratch; else decrease ; makes it improve the solution Carnegie Mellon University 29

solution cost Searching the Graph Anytime behavior of Anytime D*: time (s) Carnegie Mellon University 30

Searching the Graph Incremental behavior of Anytime D*: initial path a path after re-planning Carnegie Mellon University 31

Searching the Graph Performance of Anytime D* depends strongly on heuristics h(s): estimates of cost-to-goal should be consistent and admissible (never overestimate cost-to-goal) h(s) S goal S= Carnegie Mellon University 32

Searching the Graph Performance of Anytime D* depends strongly on heuristics h(s): estimates of cost-to-goal should be consistent and admissible (never overestimate cost-to-goal) h(s) S goal S= Any ideas? Carnegie Mellon University 33

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)), where h mech (s) mechanism-constrained heuristic h env (s) environment-constrained heuristic h mech (s) considers only dynamics constraints and ignores environment h env (s) considers only environment constraints and ignores dynamics Carnegie Mellon University 34

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)), where h mech (s) mechanism-constrained heuristic h env (s) environment-constrained heuristic h mech (s) considers only dynamics constraints and ignores environment h env (s) considers only environment constraints and ignores dynamics pre-computed as a table lookup for high-res. lattice computed online by running a 2D A* with late termination Carnegie Mellon University 35

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)), where h mech (s) mechanism-constrained heuristic h env (s) environment-constrained heuristic h mech (s) considers only dynamics constraints and ignores environment h env (s) considers only environment constraints and ignores dynamics pre-computed as a table lookup for high-res. lattice computed online by running a 2D A* with late termination Any other options? Closed-form analytical solutions (Dubins paths [Dubins, 57], Reeds-Shepp paths [Reeds & Shepp, 90]) Any challenges using it? Carnegie Mellon University 36

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h(s) needs to be admissible and consistent for efficiency, valid paths, suboptimality bounds, optimality in the limit Carnegie Mellon University 37

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h(s) needs to be admissible and consistent if h mech (s) and h env (s) are admissible and consistent, then h(s) is admissible and consistent [Pearl, 84] h mech (s) cost of a path in high-res. lattice with no obstacles and no boundaries h mech (s) admissible and consistent Carnegie Mellon University 38

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h(s) needs to be admissible and consistent if h mech (s) and h env (s) are admissible and consistent, then h(s) is admissible and consistent [Pearl, 84] h env (s) cost of a 2D path of the inner circle of the vehicle into the center of the goal location h env (s) NOT admissible Carnegie Mellon University 39

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h env (s) NOT admissible h env (s) cost of a 2D path of the inner circle of the vehicle into the center of the goal location GOAL high-cost strip robot Carnegie Mellon University 40

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h env (s) cost of a 2D path of the inner circle of the vehicle into the center of the goal location cost = average over this box (convolution) h env (s) NOT admissible according to h env (s): cost = average over the trace of inner circle cost < cost h cost FIX: cost = max(cost,cost h ) cost h equivalent to slightly higher cost for obstacles close to the middle of the vehicle Carnegie Mellon University 41

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h mech (s) admissible and consistent h env (s) admissible and consistent h(s) admissible and consistent Carnegie Mellon University 42

Searching the Graph In our planner: h(s) = max(h mech (s), h env (s)) h mech (s) admissible and consistent h env (s) admissible and consistent h(s) admissible and consistent Theorem. The cost of a path returned by Anytime D* is no more than ε times the cost of a least-cost path from the vehicle configuration to the goal configuration using actions in the multi-resolution lattice, where ε is the current value by which Anytime D* inflates heuristics. Carnegie Mellon University 43

Searching the Graph Benefit of the combined heuristics: Heuristic States Expanded Planning Time (s) Environment-constrained only 26,108 1.30 Mechanism-constrained only 124,794 3.49 Combined 2,019 0.06 Carnegie Mellon University 44

Optimizations Pre-compute as much as possible convolution cells for each action for each initial heading Carnegie Mellon University 45

Optimizations Pre-compute as much as possible mechanish-constrained heuristics Carnegie Mellon University 46

Optimizations avoid convolutions based on collision checking with inner and outer circles r R Carnegie Mellon University 47

Optimizations Efficient re-planning by maintaining low-resolution boolean map of states expanded each map update may affect thousands of states need to iterate over those states to see if they are effected optimization: iterate and update edge costs only when map update is in the area that have states expanded Carnegie Mellon University 48

Plan improvement Results Tartanracing, CMU Carnegie Mellon University 49

Results Replanning in a large parking lot (200 by 200m) Tartanracing, CMU Carnegie Mellon University 50

What You Should Know Different types of planning for autonomous driving and how they interact What is multi-resolution lattice Different heuristic functions used in Motion Planning Carnegie Mellon University 51