Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning

Similar documents
Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning

Sampling-based Planning 2

Configuration Space of a Robot

CS 4649/7649 Robot Intelligence: Planning

Introduction to State-of-the-art Motion Planning Algorithms. Presented by Konstantinos Tsianos

Probabilistic Methods for Kinodynamic Path Planning

6.141: Robotics systems and science Lecture 9: Configuration Space and Motion Planning

Advanced Robotics Path Planning & Navigation

Sampling-Based Motion Planning

Probabilistic Motion Planning: Algorithms and Applications

Robot Motion Planning

Geometric Path Planning McGill COMP 765 Oct 12 th, 2017

Planning in Mobile Robotics

Part I Part 1 Sampling-based Motion Planning

Part I Part 1 Sampling-based Motion Planning

6.141: Robotics systems and science Lecture 9: Configuration Space and Motion Planning

Motion Planning. Jana Kosecka Department of Computer Science

Sampling-Based Robot Motion Planning. Lydia Kavraki Department of Computer Science Rice University Houston, TX USA

Robot Motion Planning

Lecture 3: Motion Planning (cont.)

Lecture 3: Motion Planning 2

Autonomous and Mobile Robotics Prof. Giuseppe Oriolo. Motion Planning 1 Retraction and Cell Decomposition

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Motion Planning: Probabilistic Roadmaps. Corso di Robotica Prof. Davide Brugali Università degli Studi di Bergamo

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

for Motion Planning RSS Lecture 10 Prof. Seth Teller

University of Nevada, Reno. Dynamic Path Planning and Replanning for Mobile Robot Team Using RRT*

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

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

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Non-holonomic Planning

Visibility Graph. How does a Mobile Robot get from A to B?

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

Robot Motion Control Matteo Matteucci

Probabilistic roadmaps for efficient path planning

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

Can work in a group of at most 3 students.! Can work individually! If you work in a group of 2 or 3 students,!

Advanced Robotics Path Planning & Navigation

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

Visual Navigation for Flying Robots. Motion Planning

Computer Game Programming Basic Path Finding

Nonholonomic motion planning for car-like robots

Motion Planning with Dynamics, Physics based Simulations, and Linear Temporal Objectives. Erion Plaku

Hot topics and Open problems in Computational Geometry. My (limited) perspective. Class lecture for CSE 546,

Trajectory Optimization

Lecture Schedule Week Date Lecture (W: 3:05p-4:50, 7-222)

CS Path Planning

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

Robotics Tasks. CS 188: Artificial Intelligence Spring Manipulator Robots. Mobile Robots. Degrees of Freedom. Sensors and Effectors

Path Planning for Point Robots. NUS CS 5247 David Hsu

Configuration Space. Ioannis Rekleitis

Cognitive Robotics Robot Motion Planning Matteo Matteucci

Evaluation of the K-closest Neighbor Selection Strategy for PRM Construction

Func%on Approxima%on. Pieter Abbeel UC Berkeley EECS

Balancing Exploration and Exploitation in Motion Planning

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

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

Introduction to Intelligent System ( , Fall 2017) Instruction for Assignment 2 for Term Project. Rapidly-exploring Random Tree and Path Planning

A Sampling-Based Tree Planner for Systems with Complex Dynamics

CHAPTER SIX. the RRM creates small covering roadmaps for all tested environments.

Humanoid Robotics. Inverse Kinematics and Whole-Body Motion Planning. Maren Bennewitz

Motion Planning, Part III Graph Search, Part I. Howie Choset

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

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

Introduction to Robotics

Offline and Online Evolutionary Bi-Directional RRT Algorithms for Efficient Re-Planning in Environments with Moving Obstacles

Principles of Robot Motion

Local Search Methods. CS 188: Artificial Intelligence Fall Announcements. Hill Climbing. Hill Climbing Diagram. Today

Figure 1: A typical industrial scene with over 4000 obstacles. not cause collisions) into a number of cells. Motion is than planned through these cell

Sung-Eui Yoon ( 윤성의 )

Workspace-Guided Rapidly-Exploring Random Tree Method for a Robot Arm

Roadmap-Based Path Planning

Exploiting collision information in probabilistic roadmap planning

vizmo++: a Visualization, Authoring, and Educational Tool for Motion Planning

Approximate path planning. Computational Geometry csci3250 Laura Toma Bowdoin College

Human-Oriented Robotics. Robot Motion Planning. Kai Arras Social Robotics Lab, University of Freiburg

Dynamic-Domain RRTs: Efficient Exploration by Controlling the Sampling Domain

PRM path planning optimization algorithm research

FACOLTÀ DI INGEGNERIA DELL INFORMAZIONE ELECTIVE IN ROBOTICS. Quadrotor. Motion Planning Algorithms. Academic Year

II. RELATED WORK. A. Probabilistic roadmap path planner

INCREASING THE CONNECTIVITY OF PROBABILISTIC ROADMAPS VIA GENETIC POST-PROCESSING. Giuseppe Oriolo Stefano Panzieri Andrea Turli

Final Report: Dynamic Dubins-curve based RRT Motion Planning for Differential Constrain Robot

Adaptive Tuning of the Sampling Domain for Dynamic-Domain RRTs

T S. Configuration Space S1 LP S0 ITM. S3 Start cfg

Motion Planning. Chapter Motion Planning Concepts. by Lydia E. Kavraki and Steven M. LaValle Configuration Space

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

Announcements. CS 188: Artificial Intelligence Fall Robot motion planning! Today. Robotics Tasks. Mobile Robots

CS 188: Artificial Intelligence Fall Announcements

Choosing Good Distance Metrics and Local Planners for Probabilistic Roadmap Methods

Approaches for Heuristically Biasing RRT Growth

Path Planning Algorithms and Multi Agent Path Planning

Motion planning is a branch of computer science concentrating upon the computation of

UOBPRM: A Uniformly Distributed Obstacle-Based PRM

MEV 442: Introduction to Robotics - Module 3 INTRODUCTION TO ROBOT PATH PLANNING

Mobile Robot Path Planning in Static Environments using Particle Swarm Optimization

Navigation and Metric Path Planning

Mobile Robots Path Planning using Genetic Algorithms

Probabilistic Roadmap Planner with Adaptive Sampling Based on Clustering

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

RRT-Connect: An Efficient Approach to Single-Query Path Planning

Transcription:

Algorithms for Sensor-Based Robotics: Sampling-Based Motion Planning Computer Science 336 http://www.cs.jhu.edu/~hager/teaching/cs336 Professor Hager http://www.cs.jhu.edu/~hager

Recall Earlier Methods

A Hard Problem

The Way Forward The hard part of path planning is to somehow represent the free configuration space Recall the basic PSPACE-hard results of Reif and Canny. Recall the limitations of potential fields and even navigation functions. Probabilistic RoadMap Planning (PRM) by Kavraki, 1996 samples to find free configurations connects the configurations (creates a graph) is designed to be a multi-query planner Expansive-Spaces Tree planner (EST) and Rapidly-exploring Random Tree planner (RRT) are appropriate for single query problems Probabilistic Roadmap of Tree (PRT) combines both ideas

Remember the Basic Problem

How about Rolling the Dice?

Sample

Discard

Connect

Discard #2

Finally, a Roadmap

The Complete Algorithm

Why Are Probabilistic Methods Effective? Mainly, they do not try to construct the free configuration space depend on local sampling of configurations (depends on efficient collision detection) make use of relatively dumb planners to connect nodes They are often probabilistically complete the probability of correct solution can be as high as desired with enough time

Some Minor Issues Ideally, the resulting graph will be connected if it is not it might mean the space is disconnected it might mean we didn t try hard enough (what is a hard case?) We haven t specified what the distance or path planner is To use for queries we must connect the start and goal configurations to the roadmap (usually just treat like nodes and perform same algorithm) perform a graph search on the resulting graph if desired, smooth the resulting path a bit Interesting to note that the queries can be used to add more nodes to the graph

Sampling and Neighbors Uniform sampling of configurations need to take care that rotations are fairly sampled Selecting closest neighbors: kd-tree Given: a set S of n points in d-dimensional space Recursively choose a plane P that splits S about evenly (usually in a coordinate dimension) store P at node apply to children S l and S r Requires O(dn) storage, built in O(dn log n) time Query takes O(n 1-1/d + m) time where m is # of neighbors asymptotically linear in n and m with large d Selecting closest neighbors: cell-based method when each point is generated, hash to a cell location

Distance Functions Really, D should reflect the likelihood that the planner will fail to find a path close points, likely to succeed far away, less likely Ideally, this is probably related to the area swept out by the robot very hard to compute exactly usually heuristic distance is used Typical approaches Euclidean distance on some embedding of c-space Embedding is often based on control points (recall end of potential field chapter) Alternative is to create a weighted combination of translation and rotational distances Efficiency varies greatly depending on embedding

Local Planner The local planner should be reasonably fast and can be simple to implement A simple way is to do subdivision on straight line path Decompose motion into a straight translational motion and and angle/axis rotation Split the translation and the angle in half; check for collision If none, recurse on halves until distance is small

PRM Applied to a Point Robot

PRM Applied to a Rigid Body

PRM for a Serial Chain

Sampling Strategies The narrow corridor problem probability of finding a path related to joint visibility area under uniform sampling Other approaches: Bridge planner sample randomly check pairs in collision to see if midpoint (or random distance) is not Somehow use generalized Voronoi diagrams Visibility-based sampling only keep configuration that cannot be connected to an existing component, or connect 2 existing components

Sampling Strategies Recall the narrow corridor problem probability of finding a path related to joint visibility area under uniform sampling Few samples will be available in here Other approaches: sampling near obstacles Obstacle-Based PRM (OBPRM) find samples in obstacles (uniform) pick a random direction v search for a free configuration in direction v Gaussian OBPRM generate a random sample generate a Gaussian sample around the sample only keep the sample if the Gaussian sample is in collision Dilated obstacles allow some interpenetration to enhance the likelihood of finding paths, then fis up later.

Obstacle Sampling

Gaussian Sampling PRM

Bridge Sampling

Visibility Sampling

Importance Sampling

Avoiding Cycles

Lazy PRM

Lazy PRM

Lazy PRM

Lazy PRM

Path Smoothing

What about Single Queries?

Single Query Planners Use ESTs (expansive space trees) and RRTs (rapidly exploring random trees. also work for nonholonomic and kinodynamic planning each of these is initial condition dependent (requires integration) and thus it is hard to build a graph offline Generally build two trees from start and goal configurations each tree grows toward the other once linkage is made defines a path from start to goal Key is to define sampling strategies that focus on unexplored areas of the free space move toward start or goal For completeness, necessary to show that the algorithm will eventually cover the entire space

Tree-Based Motion Planning

Expansive Space Trees (EST)

Alpha Puzzle Zhang, Huang, Kim Minocha, UNC Chapel Hill

Car Zhang, Huang, Kim Minocha, UNC Chapel Hill

An Important Point Note that ESTs (also RRTs with modifications) can model nonholonomic and complex systems. Sampling: 1) Choose configuration variables (e.g steering and acceleration) at random. 2) Integrate kinematics forward to get a path segment 3) Check the path for collision

RRT Algorithm RRT sampling distribution converges to uniform implies probabilistic completeness of the algorithm 1. Choose a sample q rand in free space 2. Find q near (closest configuration to q rand in T) 3. Try a point q new some distance step-size from q near toward q new If q new is collision-free, add edge (q near,q new ) to the graph A variation is to repeatedly move toward q rand as far as possible The key is how to sample q new random guarantees completeness but is inefficient q new = q goal is efficient but has local minima solution is to alternate randomly between these two

Rapidly-exploring Random Trees

Improvements

Improvements

BiDirectional Motion Planning

PRT (Prob. Roadmap of Trees) Basic idea: Generate a set of trees in the configuration space Merge the trees by finding nodes that can be connected Algorithm pick several random nodes Generate trees T 1, T 2... T n (EST or RRT) Merge trees generate a representative super-node Using PRS ideas to pick a neighborhood of trees D is now the tree-merge algorithm For planning generate trees from initial and goal nodes towards closest supernodes try to merge with roadmap of connected trees Note that PRS and tree-based algorithms are special cases

Sampling-base Roadmap of Trees

Analysis of PRM Goal: show probabilistic completeness: Suppose that a,b Q free can be connected by a free path. PRM is probabilistically complete if, for any (a,b) lim n Pr[(a,b)FAILURE] = 0 where n is the number of samples used to construct the roadmap Basic idea: reduce the path to a set of open balls in free space figure out how many samples it will take to generate a pair of points in those balls connect those points to create a path Assuming that a path between a and b exists, the probability of that PRM will fail depends on 1. The length of the path 2. The distance of the path to the obstacle 3. The number of configuration in the roadmap

Analysis of PRM A path from a to b can be described by a function g: [0,1] Q free with γ 0 = a and γ 1 = b Let clr(g) be the minimum distance between g and any obstacle. Let m be a volume measure on the space, for set S R d, μ(s) is the volume of set S B r (x) is a ball centered at x of radius r For uniform sampling of A Q free the probability that a random point x Q free, then Pr(x A) = m(a)/m(q free )

A Simple Idea

Completeness ρ

The Proof Sketch n

Understanding Complexity Relationship between difficulty of space and number of samples (avoids dependence on length of path which is unknown) Relies on so-called (e, a, b) expansiveness of space e measures the fraction of space reachable from any point called e-good if all points see at least e of the space x Q free μ(reach(x)) ε μ(q free ) lookout b of a set S is the set of points that can see at least b of Q free - S A space is (e a b) expansive if it is e-good for any connected S Q free m(lookout b (S)) a m(s) intuitively, this capture how easy it is to choose points that link up the space

Expansive Spaces x Reachability

Expansive Spaces A B Only a small subset of A can see a large fraction of points in B

An Example W w W W W Given n random samples, what are the odds the resulting graph is connected?

Summary PRS --- a basic sampling-based planner useful for multiple queries can be made efficient using various sampling and evaluation tricks EST and RRT single query planners generate trees and merge them again many variations based on applications Analysis general idea of completeness particular proof based on sampling other ideas based on structure of environment Other Applications