Sept, 19, 2007 NSH 3211 Hyun Soo Park, Iacopo Gentilini

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
Probabilistic Path Planner by Someshwar Marepalli Pratik Desai Ashutosh Sahu Gaurav jain.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
CSE 380 – Computer Game Programming Pathfinding AI
Presented By: Aninoy Mahapatra
Probabilistic Roadmap
Trajectory Generation
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
Iterative Relaxation of Constraints (IRC) Can’t solve originalCan solve relaxed PRMs sample randomly but… start goal C-obst difficult to sample points.
Instructor: Mircea Nicolescu Lecture 13 CS 485 / 685 Computer Vision.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
Nonholonomic Multibody Mobile Robots: Controllability and Motion Planning in the Presence of Obstacles (1991) Jerome Barraquand Jean-Claude Latombe.
Project Proposal Coffee delivery mission Oct, 3, 2007 NSH 3211 Hyun Soo Park, Iacopo Gentilini Robotic Motion Planning Potential Field Techniques.
Deadlock-Free and Collision- Free Coordination of Two Robot Manipulators Patrick A. O’Donnell and Tomás Lozano- Pérez by Guha Jayachandran Guha Jayachandran.
Motion Planning of Multi-Limbed Robots Subject to Equilibrium Constraints. Timothy Bretl Presented by Patrick Mihelich and Salik Syed.
Planning Paths for Elastic Objects Under Manipulation Constraints Florent Lamiraux Lydia E. Kavraki Rice University Presented by: Michael Adams.
CS 326A: Motion Planning ai.stanford.edu/~latombe/cs326/2007/index.htm Probabilistic Roadmaps: Basic Techniques.
RRT-Connect path solving J.J. Kuffner and S.M. LaValle.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Configuration Space – Basic Path-Planning Methods.
Robot Motion Planning Bug 2 Probabilistic Roadmaps Bug 2 Probabilistic Roadmaps.
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Kavraki, Svestka, Latombe, Overmars 1996 Presented by Chris Allocco.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Lydia E. Kavraki Petr Švetka Jean-Claude Latombe Mark H. Overmars Presented.
Constraints-based Motion Planning for an Automatic, Flexible Laser Scanning Robotized Platform Th. Borangiu, A. Dogar, A. Dumitrache University Politehnica.
World space = physical space, contains robots and obstacles Configuration = set of independent parameters that characterizes the position of every point.
© Manfred Huber Autonomous Robots Robot Path Planning.
Robotics Chapter 5 – Path and Trajectory Planning
Automated human motion in constrained environments Maciej Kalisiak
Path Planning for a Point Robot
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
Wandering Standpoint Algorithm. Wandering Standpoint Algorithm for local path planning Description: –Local path planning algorithm. Required: –Local distance.
Value Function Approximation on Non-linear Manifolds for Robot Motor Control Masashi Sugiyama1)2) Hirotaka Hachiya1)2) Christopher Towell2) Sethu.
The new protocol of freenet Taken from Ian Clarke and Oskar Sandberg (The Freenet Project)
Introduction to Motion Planning
UNC Chapel Hill M. C. Lin Introduction to Motion Planning Applications Overview of the Problem Basics – Planning for Point Robot –Visibility Graphs –Roadmap.
1cs426-winter-2008 Notes  Will add references to splines on web page.
A Grasp-Based Motion Planning Algorithm for Character Animation M. Kalisiak, M. van de Panne Eurographics Workshop on Computer Animation & Simulation 2000.
Optimal Path Planning Using the Minimum-Time Criterion by James Bobrow Guha Jayachandran April 29, 2002.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Autonomous Robots Robot Path Planning (3) © Manfred Huber 2008.
1 Multi Scale Markov Random Field Image Segmentation Taha hamedani.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Lecture 3: Uninformed Search
Rapidly-Exploring Random Trees
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Heuristic Optimization Methods
INVERSE MANIPULATOR KINEMATICS
CS 326A: Motion Planning Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe,
CSPs: Search and Arc Consistency Computer Science cpsc322, Lecture 12
Local Search Algorithms
Mathematics & Path Planning for Autonomous Mobile Robots
Path Planning in Discrete Sampled Space
Last lecture Configuration Space Free-Space and C-Space Obstacles
Presented By: Aninoy Mahapatra
Planning and Navigation
Path Planning in Discrete Sampled Space
Outline: Introduction Solvability Manipulator subspace when n<6
Configuration Space of an Articulated Robot
CS 416 Artificial Intelligence
Local Search Algorithms
Sept, 19, 2007 NSH 3211 Hyun Soo Park, Iacopo Gentilini
Chapter 4 . Trajectory planning and Inverse kinematics
Project on Implementation of Wave Front Planner Algorithm
Robotics meet Computer Science
Planning.
Classic Motion Planning Methods
Presentation transcript:

Sept, 19, 2007 NSH 3211 Hyun Soo Park, Iacopo Gentilini 16-735 Paper Presentation “Numerical Potential Field Techniques for Robot Path Planning” † Sept, 19, 2007 NSH 3211 Hyun Soo Park, Iacopo Gentilini † Barraquand, J., Langlois, B., and Latombe, J.-C. IEEE Transactions on Systems, Man and Cybernetics Volume 22, Issue 2, Mar/Apr 1992 , pages: 224 - 241 Robotic Motion Planning 16-735 Potential Field Techniques

How to generate collision free paths? 1. Global approach: building a “connectivity graph” of collision free configuration searching the graph for a path (e.g. network of one dimensional curves) Image from “Numerical Potential Field Techniques for Robot Path Planning” 2. Local approach: - searching a grid placed across the robot’s configuration using heuristic functions (e.g. tangent bug, potential field) Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Differences between global and local? 1. Global approach: advantages: very quick search in the “connectivity graph” disadvantages: expensive precomputation step to get the graph (exponential in the dimension n of the configuration space Q where n is number of the robot’s degrees of freedom) 2. Local approach: advantages: no precomputation needed disadvantages: - “search graph” considerably larger than “connectivity graph” - dead ends (local minima) Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques How to combine advantages of both? Incrementally build a graph connecting the local minima of potential functions defined over the configuration space  (no expensive precomputation) Concurrently searching this graph until the goal is reached → escaping local minima (search within much smaller “search graph”) Based on multiscale pyramids of bitmap arrays of  and  (not analytically defined potential function) Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Basic functions 1. Forward kinematic: X: R × Q → W (p, q) ↦ x = X (p, q) where p  R is a point in the robot Workspace bitmap: BM: W → (1,0) x ↦ BM (x) where BM(x) = 0 represents Wfree - discrete grid GW: workspace representation is given as a grid at a 512×512 level of resolution; using a scaling factor 2 a pyramid of representations is also computed until the coarsest resolution level 16×16 is reached; -  is the distance between two adjacent points ( min = 1/512 and  max = 1/16 if given in percentage of the workspace diameter) - a 1-neighborhood is used, that means 4 neighbors in 2D, 6 neighbors in 3D, and 2n neighbors in n-D within the discrete grid; - preparation: a “wavefront” expansion is computed by setting each point in GWfree neighbor of boundary or of GWOi to 1; than the neighbors of this new points to 2 and so on until all GWfree has been explored; k-neighborhood with k  [1,r ] of a point x in a grid of dimension r is defined as the set of points in the grid having at most k coordinates differing from those of x: k = 1  2 r points k = 2  2 r2 points k = r  3r -1points Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Basic functions Configuration space:  is also discretized in a n-dimensional grid  and  free - the resolution is defined as the logarithm of the inverse of the distance between two discretizaton points - the resolution r of  is also: - for any given workspace resolution r, the corrisponding resolution Ri of the discretization of  along the qi axis is chosen in such a way that a modification of qi by Δi generates a small motion of the robot (any point p of R moves less than nbtol ×  ) : where: Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques How are potential functions built? W-potential: - computed in W Q-potential: - defined over Q where G is called the arbitration function - good Q-potential in  (whose dimension is big) - if Vpi are free of local minima we can not assume that U is free of local minima: it depends on the definition of G where pi are the control points in the robot R - small dimension of  (2 or 3) for low cost information - have to be built such that they are free of local minima (needed precomputation) Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques W-Potential 1. Simple W-Potential: get the position of control point p in  and its goal position xgoal set Vp = 0 at xgoal set the neighbors in  free of xgoal to 1 and so on Image from “Numerical Potential Field Techniques for Robot Path Planning” -Vp is the direction to goal 2. Improved W-Potential: build the workspace skeleton S as subset of  free computing the “wavefront” expansion connect xgoal to  and compute Vp in the augmented S using a queue of points of S sorted by decreasing value compute Vp in  free \  as shown in 1. Image from “Numerical Potential Field Techniques for Robot Path Planning” Image from “Numerical Potential Field Techniques for Robot Path Planning” Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Q-Potential attracts control points pi toward their respective goal position arbitration function definition (minimize local minima!): - concurrent attraction causes local minima - concurrent attraction compensed - avoid zero value when one point have reached the goal Robotic Motion Planning 16-735 Potential Field Techniques

Techniques to construct local-minima graph Best First motion Random motion Valley-guided motion Constrained motion Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Best First Motion and Random Motion Technique 1. Best-First Motion Technique 2. Random Motion Technique Agitation Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Best First Motion and Random Motion Technique 1. Best-First Motion Technique - Good for n <= 4 What if n is getting bigger?  Searching unit increases in almost exponential order ( ) as increasing DOF  Thus, we need another algorithm to search local minima 2. Random Motion Technique - The number of iteration can be specified by user so that this algorithm performs fast. Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Random Motion Technique Local Minimum Detection Limited number of searching iteration If U(q) > U(q’), then q’ is successor  Gradient motion If NO q’, then q is local minimum Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Random Motion Technique Path Joining Adjacent Local Minima Smoothing This can be performed concurrently on a parallel computer because of no need to communicate between the different processing unit  Random motion Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Random Motion Technique Dead-end No more local minima near current position Backtrack to arbitrary point in line of to which is selected by uniform distribution law. Then try to find another local minima. Drawback : No guarantee to find a path whenever one exists. However, by property of Brownian Motion, as the number of iteration of random motion, Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Random Motion Technique PDF for Brownian Motion can be described as Gaussian Distribution Function Probability of location of qi after time t (end of random motion) At the boundary of obstacles, usually random motion reflects to tangent hyperplane of obstacles when motion collides against obstacles but this paper implemented as substituting by new random motion generation. Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Random Motion Technique Duration of Random Motion Should not be too short  No chance to escape Should not be too long  waste of time and no gradient motion Attraction Radius ( ) Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Random Motion Technique Duration of Random Motion Since attraction radius can’t exceed workspace diameter, by normalizing it to 1, we can obtain, Finally, we have Due to Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Valley Guided Motion Technique Searching valleys V of Q-potential U in Qfree using -U calculated in qstart and qgoal reach to local minima qi and qg search V for a path connecting qi and qg. At every crossroad a decision is made using an heuristic function defined as Q-potential Uheur if step b. is successful, path is calculated, otherwise failure Best experimental Q-potential function: Image from “Numerical Potential Field Techniques for Robot Path Planning” where s is a small number Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Valley Guided Motion Technique When a point q  Q is a valley points (q  V)? compute U(q); compute the 2n values of U at the 1-neihbors of q; for each possible valley direction i  [1,n] compare U(q) to the 2n – 2 values of U at the 1-neighbors in the hyperplane orthogonal to the qi axis if U(q) is smaller or equal to these 2n – 2 values, q is a valley point. q n = 2 - complexity is O(n2) or if using 2-neighborhood O(n4) - better using n-neighborhood but cardinals are 3n-1 with exponential complexity Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Constrained Motion Technique Starting from qstart in Qfree follow -U flow until local minima qloc is attained; if qloc = qgoal the problem is solved; otherwise execute a “constrained” motion +Mi(qloc) or -Mi(qloc) with i  [1,n] : increase iteratively the i th configuration space coordinate by the increment Δi until a saddle point of the local minimum well is reached (U decreases again). If (q1,…, qi, …,qn) is the current configuration its successor minimizes U over the set consisting of (q1,…, qi+ Δi ,…,qn) and its 1-neighbors in the hyperplane orthogonal to the qi axis (the motion thus track a valley in the (n-1)-dimensional subspace orthogonal to the qi axis). terminate the constrained motion and execute an other gradient motion; qloc n = 2 Q-potential function used: Robotic Motion Planning 16-735 Potential Field Techniques

Robotic Motion Planning 16-735 Potential Field Techniques Conclusion Approach : - Constructing a potential field over the robot’s configuration - Building a graph connecting the local minima of the potential - Searching graph Aim : Escaping local minima 4 techniques : - Best-first motion : gives excellent result with few DOF robots (n < 5) - Random motion : gives good results with many DOF - Valley-Guided motion : inferior result but can be improved in future - Constrainted motion : good at planning the coordinated motions Robotic Motion Planning 16-735 Potential Field Techniques