15-494 Cognitive Robotics 03/30/09 1 Manipulation and Path Planning 15-494 Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon.

Slides:



Advertisements
Similar presentations
Solving problems by searching
Advertisements

Reactive and Potential Field Planners
AI Pathfinding Representing the Search Space
Problem Solving by Searching Copyright, 1996 © Dale Carnegie & Associates, Inc. Chapter 3 Spring 2007.
Motion Planning for Point Robots CS 659 Kris Hauser.
NUS CS5247 Motion Planning for Camera Movements in Virtual Environments By Dennis Nieuwenhuisen and Mark H. Overmars In Proc. IEEE Int. Conf. on Robotics.
HIGH-LEVEL ROBOT ARM MANIPULATION PRIMITIVES Thesis Proposal for the Master of Science Degree in Computer Science Presented by Glenn Nickens Advised by.
By Lydia E. Kavraki, Petr Svestka, Jean-Claude Latombe, Mark H. Overmars Emre Dirican
INTRODUCTION TO DYNAMICS ANALYSIS OF ROBOTS (Part 6)
LaValle, Steven M. "Rapidly-Exploring Random Trees A Цew Tool for Path Planning." (1998) RRT Navigation.
Kinodynamic Path Planning Aisha Walcott, Nathan Ickes, Stanislav Funiak October 31, 2001.
DESIGN OF A GENERIC PATH PATH PLANNING SYSTEM AILAB Path Planning Workgroup.
1Notes  Handing assignment 0 back (at the front of the room)  Read the newsgroup!  Planning to put 16mm films on the web soon (possibly tomorrow)
Presented by David Stavens. Manipulation Planning Before: Want to move the robot from one configuration to another, around obstacles. Now: Want to robot.
Motion Planning of Multi-Limbed Robots Subject to Equilibrium Constraints. Timothy Bretl Presented by Patrick Mihelich and Salik Syed.
Using the “Clicker” If you have a clicker now, and did not do this last time, please enter your ID in your clicker. First, turn on your clicker by sliding.
Cognitive Robotics 03/30/09 1 Manipulation By Pushing Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon Spring.
Rapidly Expanding Random Trees
Kinodynamic Planning Using Probabalistic Road Maps Steven M. LaValle James J. Kuffner, Jr. Presented by Petter Frykman.
Presented By: Huy Nguyen Kevin Hufford
RRT-Connect path solving J.J. Kuffner and S.M. LaValle.
ME Robotics DIFFERENTIAL KINEMATICS Purpose: The purpose of this chapter is to introduce you to robot motion. Differential forms of the homogeneous.
Chapter 5: Path Planning Hadi Moradi. Motivation Need to choose a path for the end effector that avoids collisions and singularities Collisions are easy.
Integrated Grasp and Motion Planning For grasping an object in a cluttered environment several tasks need to take place: 1.Finding a collision free path.
Solving problems by searching
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.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces Lydia E. Kavraki Petr Švetka Jean-Claude Latombe Mark H. Overmars Presented.
Cognitive Robotics 03/31/08 1 Manipulation By Pushing Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon Spring.
Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Chapter 5.4 Artificial Intelligence: Pathfinding.
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.
Describing Motion: Kinematics in One Dimension
Robotics Chapter 5 – Path and Trajectory Planning
Automated human motion in constrained environments Maciej Kalisiak
How are things going? Core AI Problem Mobile robot path planning: identifying a trajectory that, when executed, will enable the robot to reach the goal.
Probabilistic Roadmaps for Path Planning in High-Dimensional Configuration Spaces (1996) L. Kavraki, P. Švestka, J.-C. Latombe, M. Overmars.
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.
Chapter 2 Describing Motion: Kinematics in One Dimension.
Laboratory of mechatronics and robotics Institute of solid mechanics, mechatronics and biomechanics, BUT & Institute of Thermomechanics, CAS Mechatronics,
Robotics Chapter 5 – Path and Trajectory Planning
CS274 Spring 01 Lecture 7 Copyright © Mark Meyer Lecture VII Rigid Body Dynamics CS274: Computer Animation and Simulation.
Randomized Kinodynamics Planning Steven M. LaVelle and James J
Rick Parent - CIS681 Reaching and Grasping Reaching control synthetic human arm to reach for object or position in space while possibly avoiding obstacles.
Motion Planning Howie CHoset. Assign HW Algorithms –Start-Goal Methods –Map-Based Approaches –Cellular Decompositions.
Department of Computer Science Columbia University rax Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner,
DYNAMICS VECTOR MECHANICS FOR ENGINEERS: DYNAMICS Tenth Edition Ferdinand P. Beer E. Russell Johnston, Jr. Phillip J. Cornwell Lecture Notes: Brian P.
Randomized KinoDynamic Planning Steven LaValle James Kuffner.
Chapter 3 Solving problems by searching. Search We will consider the problem of designing goal-based agents in observable, deterministic, discrete, known.
9/30/20161 Path Planning Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon Spring 2012.
Solving problems by searching Chapter 3. Types of agents Reflex agent Consider how the world IS Choose action based on current percept Do not consider.
Dynamics The branch of physics involving the motion of an object and the relationship between that motion and other physics concepts Kinematics is a part.
Solving problems by searching
Character Animation Forward and Inverse Kinematics
Introduction & Rectilinear Kinematics:
CS b659: Intelligent Robotics
ECE 448 Lecture 4: Search Intro
Schedule for next 2 weeks
Problem Solving by Searching
Mathematics & Path Planning for Autonomous Mobile Robots
Locomotion of Wheeled Robots
Artificial Intelligence
Planning and Navigation
Solving problems by searching
Chapter 4 . Trajectory planning and Inverse kinematics
Describing Motion: Kinematics in One Dimension
Solving problems by searching
Presentation transcript:

Cognitive Robotics 03/30/09 1 Manipulation and Path Planning Cognitive Robotics David S. Touretzky & Ethan Tira-Thompson Carnegie Mellon Spring 2009

Cognitive Robotics 03/30/09 2 Introduction How do we get from basic kinematics to actually doing something? Two kinds of manipulation/path planning problems, really the same thing: 1) Navigation path planning (move the body) 2) Manipulation planning (move some other object, typically using the arm)

Cognitive Robotics 03/30/09 3 Manipulation Overview Configuration space vs. work space Constraints Form Closure vs. Force Closure Grasp Analysis (Reuleaux’s Method) Path planning Cspace, visibility graph, best first, RRT

Cognitive Robotics 03/30/09 4 Configuration Space vs. Work Space Consider a 2-link arm, with joint constraints: 0° <  0 < 90°, -90° <  1 < 90° Configuration Space: robot’s internal state space (e.g. joint angles) Work Space: set of all possible end-effector positions

Cognitive Robotics 03/30/09 5 Constraints Constraints can be your friend! Example: Use friction, gravity constraints to produce desired part trajectories Upside: Exploit characteristics of the environment and the object itself to your advantage. Downside: Requires planning and accurate modeling

Cognitive Robotics 03/30/09 6 Constraints Are Your Friend Example: Throwing (Kevin Lynch)

Cognitive Robotics 03/30/09 7 A Turn and Two Topples Tom A. Scharfeld Kevin M. Lynch December 2, 1998 A Turn and Two Topples Tom A. Scharfeld Kevin M. Lynch December 2, 1998 Constraints Are Your Friend 2 DOF Arm over a conveyor belt (2JOC)

Cognitive Robotics 03/30/09 8 Constraints Are Your Friend Example: Hinge Assembly Pingle, K., Paul, R., Bolles, R., "Programmable Assembly, Three Short Examples," Film, Stanford Artificial Intelligence Laboratory, October Pingle, K., Paul, R., Bolles, R., "Programmable Assembly, Three Short Examples," Film, Stanford Artificial Intelligence Laboratory, October 1974.

Cognitive Robotics 03/30/09 9 Grasping What does it mean to “hold” something? Form closure: object is “secure” — can’t move without moving a contact point Force closure: can apply any desired force Not necessarily the same thing — depends on your friction model (next lecture) No friction: Form closure, but no force closure With friction: Force closure, but no form closure

Cognitive Robotics 03/30/09 10 Form closure is defined in increasing orders: position, velocity, acceleration, etc. Force closure does not have orders (you have it or you don’t) Frictionless force closure equates to first-order (positional) form closure Grasping Example grasp with both force closure and first-order form closure, regardless of frictional model

Cognitive Robotics 03/30/09 11 Original examples do not have force closure Left figure can be moved infinitesimally up or down, although cannot be in motion vertically (so it has second-order form closure) Grasping With no friction, neither example has force closure nor first-order form closure

Cognitive Robotics 03/30/09 12 Grasping What does it mean to “hold” something? Form closure: object is “secure” — can’t move without moving a contact point Force closure: can apply any desired force Equilibrium: can resist environmental forces (gravity) Stability: how much variance from the environment can be tolerated and still maintain equilibrium

Cognitive Robotics 03/30/09 13 Taxonomy of Contacts Figure Mason, Mechanics Of Robotic Manipulation

Cognitive Robotics 03/30/09 14 For each constraint, divide the plane into areas which can hold positive or negative centers of rotation (IC’s - instantaneous centers) Grasp Analysis: Reuleaux’s Method + – ±

Cognitive Robotics 03/30/09 15 Intersect common regions Grasp Analysis: Reuleaux’s Method + –

Cognitive Robotics 03/30/09 16 Intersect common regions Grasp Analysis: Reuleaux’s Method + + – –

Cognitive Robotics 03/30/09 17 Another example: Is this completely constrained? Grasp Analysis: Reuleaux’s Method

Cognitive Robotics 03/30/09 18 Another example: Can spin counter-clockwise around area in the middle — but not clockwise! Grasp Analysis: Reuleaux’s Method + +

Cognitive Robotics 03/30/09 19 How about now? Common intersections may indicate, but do not guarantee, that rotation is possible Grasp Analysis: Reuleaux’s Method

Cognitive Robotics 03/30/09 20 Grasp Analysis: Reuleaux’s Method Reuleaux’s Method is good for humans, not so good for machines Doesn’t extend to three dimensions Analytical solution would require a lecture unto itself : Mechanics of Manipulation Learn about screws, twists, wrenches, and moments

Cognitive Robotics 03/30/09 21 The Cspace Transform : the set of configuration points around obstacles which would cause a collision Motion Path Planning Robot Obstacle Cspace from defining origin at red point Notice how the Cspace formed by defining the origin of the robot in its center (red dot and outline) is merely a translated version of the Cspace formed by placing the origin at one of the robot’s corners (blue dot and outline). Cspace from defining origin at blue point

Cognitive Robotics 03/30/09 22 The Cspace Transform: the area around obstacles which would cause a collision with the robot Motion Path Planning Robot Obstacle Cspace Figure Mason, Mechanics Of Robotic Manipulation

Cognitive Robotics 03/30/09 23 The Cspace Transform is not just for mobile robots’ outer hulls! Motion Path Planning Figure Mason, Mechanics Of Robotic Manipulation

Cognitive Robotics 03/30/09 24 Motion Path Planning So, we know where we can’t go, but how do we avoid it? Approach 1: Visibility Graph Connect visible corners together, search the graph of connected edges Figure Mason, Mechanics Of Robotic Manipulation

Cognitive Robotics 03/30/09 25 Motion Path Planning: Visibility Graph Great for 2 dimensions, but not for more Voronoi graphs are similar, and have been generalized to higher dimensions (Choset) Instead of a graph of tangents between obstacles, use a graph of the midpoints Fast search, safe path, but suboptimal distance G S Voronoi Graph

Cognitive Robotics 03/30/09 26 Motion Path Planning: Best First Search (& Friends) Don’t explicitly solve all of Cspace before searching Basically, keep a priority queue of unevaluated nodes, sorted by “score” (e.g. distance to goal, or distance to goal plus distance so far) Each iteration, expand the current “best” node Choice of scoring heuristic (if you have a choice!) can make tradeoffs between search speed and optimality of solution found.

Cognitive Robotics 03/30/09 27 Motion Path Planning: Best First Search (& Friends) SG Trapped in the cul de sac for a long time. Random search might be faster.

Cognitive Robotics 03/30/09 28 Rapidly-exploring Random Trees Rapidly-exploring Random Trees (RRTs) are trees whose vertices encode configuration states of the arm (LaValle 1998). The RRT grows by alternately extending the tree in random directions and moving toward the goal configuration. Slide courtesy of Glenn Nickens

Cognitive Robotics 03/30/09 29 RRT Search Algorithm LaValle 1998 Repeat K times: Pick a random point P in configuration space Find N, the closest tree node to P Add new node N', some distance Δ from N toward P Back to exploring entire configuration space? Not necessarily — bias the random target to pick the goal more often

Cognitive Robotics 03/30/09 30 Rapidly Exploring Random Trees: Animation

Cognitive Robotics 03/30/09 31 RRT-Connect Algorithm Kuffner and Lavalle, 2000 RRT-Connect grows two RRTs, one from the start and one from the goal configuration, and biases the trees to grow toward each other. Once the RRTs connect, the path is extracted using backtracking. Slide courtesy of Glenn Nickens

Cognitive Robotics 03/30/09 32 Path Smoothing The random component of the RRT-Connect search often results in a jerky and meandering solution. Therefore a smoothing algorithm is applied to the path. Smoothing is accomplished by selecting random segments to be snipped from the path. Slide courtesy of Glenn Nickens

Cognitive Robotics 03/30/09 33 Paths The pictures to the right show the arm’s trajectory along a path from the start, green, to the end, red, configuration. The first image shows a path constructed by the path planner. The second image shows the same path, but after the smoothing algorithm has been applied to it. Slide courtesy of Glenn Nickens

Cognitive Robotics 03/30/09 34 Motion Path Planning: Potential Fields So far we’ve been assuming we already know the environment, and there aren’t other agents changing things around! Constant replanning is costly replan only when something is amiss replan only affected parts of existing plan (open research problem!) Or… don’t make a plan in the first place

Cognitive Robotics 03/30/09 35 Motion Path Planning: Potential Fields Define a function f mapping from a specified configuration to a score value e.g. distance to goal plus distance to obstacles Essentially just running heuristic from before: Evaluate each of the currently available moves Pick the one which maximizes score (or in example above, minimizes cost)

Cognitive Robotics 03/30/09 36 Motion Path Planning: Potential Fields Downside: can get stuck in local minima Workaround: follow edges (“bug” method) Upside: extremely quick and reactive Popular in robosoccer for navigating to ball GS

Cognitive Robotics 03/30/09 37 Motion Path Planning: Summary Known Environment, Deterministic Actions Road Maps (Visibility, Voronoi), A*, RRT, brushfire Unknown Environment, Deterministic Actions Potential Field, “Bug”, D* Non-Deterministic and/or Unknown Environment MDP, POMDP

Cognitive Robotics 03/30/09 38 Next Time: Dynamics! Friction, Forces, and Control Thanks to: : Mechanics of Manipulation (Mason) : Planning, Execution, and Learning (Rizzi, Veloso)