Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.

Slides:



Advertisements
Similar presentations
Reactive and Potential Field Planners
Advertisements

Kinematic Synthesis of Robotic Manipulators from Task Descriptions June 2003 By: Tarek Sobh, Daniel Toundykov.
Probabilistic Roadmaps. The complexity of the robot’s free space is overwhelming.
Motion Planning for Point Robots CS 659 Kris Hauser.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
Slide 1 Robot Lab: Robot Path Planning William Regli Department of Computer Science (and Departments of ECE and MEM) Drexel University.
The Vector Field Histogram Erick Tryzelaar November 14, 2001 Robotic Motion Planning A Method Developed by J. Borenstein and Y. Koren.
1 Last lecture  Configuration Space Free-Space and C-Space Obstacles Minkowski Sums.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
1 Single Robot Motion Planning - II Liang-Jun Zhang COMP Sep 24, 2008.
Planning Paths for Elastic Objects Under Manipulation Constraints Florent Lamiraux Lydia E. Kavraki Rice University Presented by: Michael Adams.
CSCE 641: Forward kinematics and inverse kinematics Jinxiang Chai.
Ch. 4: Velocity Kinematics
Panos Trahanias: Autonomous Robot Navigation
City College of New York 1 Dr. John (Jizhong) Xiao Department of Electrical Engineering City College of New York Robot Motion Planning.
CS 326 A: Motion Planning robotics.stanford.edu/~latombe/cs326/2003/index.htm Configuration Space – Basic Path-Planning Methods.
CSCE 689: Forward Kinematics and Inverse Kinematics
CS 326A: Motion Planning Basic Motion Planning for a Point Robot.
The UNIVERSITY of NORTH CAROLINA at CHAPEL HILL Constraint-Based Motion Planning using Voronoi Diagrams Maxim Garber and Ming C. Lin Department of Computer.
CS 326 A: Motion Planning Probabilistic Roadmaps Basic Techniques.
Introduction to Robot Motion Planning. Example A robot arm is to build an assembly from a set of parts. Tasks for the robot: Grasping: position gripper.
1 Single Robot Motion Planning Liang-Jun Zhang COMP Sep 22, 2008.
Monte Carlo Methods in Partial Differential Equations.
Robot Motion Planning Computational Geometry Lecture by Stephen A. Ehmann.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Kinematic Linkages.
Lab 3 How’d it go?.
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.
Robot Crowd Navigation using Predictive Position Fields in the Potential Function Framework Ninad Pradhan, Timothy Burg, and Stan Birchfield Electrical.
Lecture 2: Introduction to Concepts in Robotics
B659: Principles of Intelligent Robot Motion Kris Hauser.
Robotics Chapter 5 – Path and Trajectory Planning
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.
CS B659: Principles of Intelligent Robot Motion Configuration Space.
Computer Animation Rick Parent Computer Animation Algorithms and Techniques Optimization & Constraints Add mention of global techiques Add mention of calculus.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Inverting the Jacobian and Manipulability
Review: Differential Kinematics
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.
Administration Feedback on assignment Late Policy
Kinematic Redundancy A manipulator may have more DOFs than are necessary to control a desired variable What do you do w/ the extra DOFs? However, even.
Navigation & Motion Planning Cell Decomposition Skeletonization Bounded Error Planning (Fine-motion Planning) Landmark-based Planning Online Algorithms.
Outline: Introduction Solvability Manipulator subspace when n<6
Trajectory Generation
Robotics Chapter 5 – Path and Trajectory Planning
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.
CSCE 441: Computer Graphics Forward/Inverse kinematics Jinxiang Chai.
Planning and Navigation. 6 Competencies for Navigation Navigation is composed of localization, mapping and motion planning – Different forms of motion.
Robot Motion Planning Robotics meet Computer Science.
Autonomous Robots Robot Path Planning (2) © Manfred Huber 2008.
Physically-Based Motion Synthesis in Computer Graphics
CSCE 441: Computer Graphics Forward/Inverse kinematics
Character Animation Forward and Inverse Kinematics
INVERSE MANIPULATOR KINEMATICS
Schedule for next 2 weeks
Mathematics & Path Planning for Autonomous Mobile Robots
Motion Planning for a Point Robot (2/2)
Robot Lab: Robot Path Planning
CSCE 441: Computer Graphics Forward/Inverse kinematics
Presented By: Aninoy Mahapatra
Outline: Introduction Solvability Manipulator subspace when n<6
Chapter 4 . Trajectory planning and Inverse kinematics
Robotics meet Computer Science
Planning.
Classic Motion Planning Methods
Presentation transcript:

Chapter 5: Path Planning Hadi Moradi

Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy to define in the workspace, but need to be mapped into the configuration space for convenience

Workspace v. configuration space Workspace: volume swept out by the end effector (in inertial frame) Configuration: location of all points on a robotic manipulator Configuration space:

Obstacles Discrete obstacles are denoted O i (in the workspace) Denote the robot as A (q) at configuration q The configuration space obstacle, QO, is defined as: The free configuration space is the space of all collision-free configurations:

Motion Planning for a Point Robot free space s g free path

Problem semi-free path

Types of Path Constraints  Local constraints: lie in free space  Differential constraints: have bounded curvature  Global constraints: have minimal length

Motion-Planning Framework Continuous representation Discretization Graph searching (blind, best-first, A*)

Example: Visibility Graph (A Roadmap Method)  Visibility graph Introduced in the Shakey project at SRI in the late 60s. Can produce shortest paths in 2-D configuration spaces g s

Example: Voronoi Diagram (A Roadmap Method)  Voronoi diagram Introduced by Computational Geometry researchers. Generate paths that maximizes clearance. O(n log n) time O(n) space

Cell-Decomposition Methods Two classes of methods:  Exact cell decomposition  Approximate cell decomposition F is represented by a collection of non-overlapping cells whose union is contained in F Examples: quadtree, octree, 2 n -tree

Approximate Cell Decomposition: Quad Tree

Octree Decomposition (3D environment)

Potential Field Methods Goal Robot  Approach initially proposed for real-time collision avoidance [Khatib, 86]. Hundreds of papers published on it.

Attractive and Repulsive fields

Potential Fields

Local-Minimum Issue  Perform best-first search (possibility of combining with approximate cell decomposition)  Alternate descents and random walks  Use local-minimum-free potential (navigation function)

Ex: 2D Cartesian manipulator The configuration space is R 2 Consider only one object in the workspace –End effector and obstacle are convex polygons What is the configuration space obstacle?

Ex: 2D Cartesian manipulator The nice thing about this example is that the workspace and the configuration space are identical

Ex: planar two-link manipulator What is the configuration space obstacle for a two-link manipulator

Motivation Geometric complexity Space dimensionality

Path planning overview Want to find a path from an initial position to a final position

Potential fields To develop the mapping, we incrementally explore Q free Consider the manipulator (statically) as a point in the configuration space The manipulator is subject to a potential field –Attractive in the case of the goal configuration –Repulsive in the case of an obstacle

Gradient descent In order to find minima of U, take the negative gradient:

The attractive field We define a potential field that attracts each of the n DH coordinate frames from the initial position to the goal position

The attractive field Simple potential field, conic well potential

The attractive field Instead we use a continually differentiable function: parabolic well potential –Field grows quadratically with the distance from the goal configuration

Hybrid attractive field Combine the conic well potential and parabolic well potential fields –If the i th frame is close to the workspace goal, use the parabolic well –If the i th frame is far from the workspace goal, use the conic well The distance d defines the distance from the goal that causes a transition from a conic to parabolic potential Since this is continuous everywhere, the workspace force is defined everywhere

Hybrid attractive field Taking the gradient gives the workspace attractive force

Ex: planar two link manipulator For the 2-link arm shown below, assume that both links have length 1

The repulsive field Prevent collisions by creating a repulsive force in the workspace –Again, create forces that act on the origins of the n DH coordinate frames These forces should: –Repel the robot from obstacles –Do nothing of the robot is far away from obstacles

The repulsive field Therefore, the workspace repulsive force is: To evaluate this, consider the distance function  (o i (q)) as  (x) where x is a three dimensional vector:

The repulsive field So we can write this force as:

Ex: planar two link manipulator Consider a convex obstacle close to o 2 –Obstacle is outside the distance of influence for o 1 –Again, the lengths are both 1 –Let b be the point on the obstacle closest to o 2 b = [2 0.5] T  (o 2 (q s )) = 0.5 –Let  0 = 1 (no influence on o 1 ) –The initial repulsive force on o 2 is:

Other considerations 1.what happens if either there are multiple objects, or an object is not convex?

Other considerations 2.what if the obstacle is closest to another part of a link (i.e. not the origin of the DH frame)?

The relation between workspace forces and joint torques

Ex: two-link planar manipulator Consider the previous examples with an obstacle exerting a repulsive force on o 2 Find the attractive and repulsive forces on o 1 and o 2 Initial and goal configurations Obstacle location

Ex: two-link planar manipulator To determine the joint torques, take the transpose of the Jacobians at the initial configuration

Composing workspace forces The total joint torques acting on a manipulator is the sum of the torques from all attractive and repulsive potentials:

Ex: two-link planar manipulator Consider again the two-link manipulator with a goal position and an obstacle near o 2 The total joint torque, due to these two potential fields is: Initial and goal configurationsObstacle location

Gradient descent Path Planning Algorithm 1.First, determine your initial configuration 2.Second, given a desired point in the workspace, calculate the final configuration using the inverse kinematics –Use this to create an attractive potential field 3.Locate obstacles in the workspace –Create a repulsive potential field 4.Sum the joint torques in the configuration space 5.Use gradient descent to reach your target configuration

Local minima In the absence of obstacles, the gradient descent will always converge to the global minimum (q f ) With obstacles, by proper choice of  i, this will always converge to some minima

Local minima Instead we modify the gradient descent algorithm to add a random excitation in case we are stuck in a local minima We are stuck in a local minima if successive iterations result in minimal changes in the configuration If so, perform a random walk to get out The random walk is defined by adding a uniformly distributed variable to each joint parameter

Next class… Applications to numerically solving for the inverse kinematics Probabilistic methods