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

Similar documents
Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

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

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

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

Sub-Optimal Heuristic Search ARA* and Experience Graphs

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

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

Robot Motion Control Matteo Matteucci

Cognitive Robotics Robot Motion Planning Matteo Matteucci

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

Quadruped Robots and Legged Locomotion

Inverse Kinematics. Given a desired position (p) & orientation (R) of the end-effector

Motion Planning for Robotic Manipulators with Independent Wrist Joints

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

Trajectory Optimization

15-494/694: Cognitive Robotics

3D Collision Avoidance for Navigation in Unstructured Environments

Kinematics and Orientations

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

Planning in Mobile Robotics

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

Motion Planning for Humanoid Robots

Robot Motion Planning

Configuration Space of a Robot

Discrete Motion Planning

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

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

Feasibility and Optimization of Fast Quadruped Walking with One- Versus Two-at-a-Time Swing Leg Motions for RoboSimian

Integrated Grasp and Motion Planning using Independent Contact Regions 1

autorob.github.io Inverse Kinematics UM EECS 398/598 - autorob.github.io

Tractable Locomotion Planning for RoboSimian

Super Assembling Arms

arxiv: v2 [cs.ro] 29 Jul 2016

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

CS283: Robotics Fall 2016: Robot Arms

Industrial Robots : Manipulators, Kinematics, Dynamics

Visual Navigation for Flying Robots. Motion Planning

15-780: Problem Set #4

Real-Time Footstep Planning in 3D Environments

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

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

Inverse Kinematics Analysis for Manipulator Robot With Wrist Offset Based On the Closed-Form Algorithm

An Optimization Approach to Rough Terrain Locomotion

Computer Game Programming Basic Path Finding

Basilio Bona ROBOTICA 03CFIOR 1

Efficient Extensible Path Planning on 3D Terrain Using Behavior Modules

Task-Oriented Planning for Manipulating Articulated Mechanisms under Model Uncertainty. Venkatraman Narayanan and Maxim Likhachev

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

CS 231. Control for articulate rigid-body dynamic simulation. Articulated rigid-body dynamics

Lecture 18 Kinematic Chains

METR 4202: Advanced Control & Robotics

Real-time Reach Planning for Animated Characters Using Hardware Acceleration

A comparison of Search-based Planners for a Legged Robot

Robot Art Competition Using HERB: Final Report

7 Modelling and Animating Human Figures. Chapter 7. Modelling and Animating Human Figures. Department of Computer Science and Engineering 7-1

Character Animation. Presented by: Pam Chow

Lecture 3: Motion Planning (cont.)

ROBOTICS 01PEEQW. Basilio Bona DAUIN Politecnico di Torino

Geometric Path Planning McGill COMP 765 Oct 12 th, 2017

Robot mechanics and kinematics

Character Animation 1

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

Humanoid Robots Exercise Sheet 9 - Inverse reachability maps (IRM) and statistical testing

Manipulator trajectory planning

Navigation in Three-Dimensional Cluttered Environments for Mobile Manipulation

UNIVERSITY OF CALIFORNIA. Santa Barbara. ZMP and Value Iteration Based Planning to Assist Fast Walking for RoboSimian

Sampling-based Planning 2

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

Spring 2010: Lecture 9. Ashutosh Saxena. Ashutosh Saxena

Manipulator Path Control : Path Planning, Dynamic Trajectory and Control Analysis

Collision Detection. Jane Li Assistant Professor Mechanical Engineering & Robotics Engineering

Keyframing an IK Skeleton Maya 2012

Animating Non-Human Characters using Human Motion Capture Data

Applications of Experience Graphs in Humanoid Motion Planning

MTRX4700 Experimental Robotics

Rising Motion Controllers for Physically Simulated Characters

Whole-Body Motion Planning for Manipulation of Articulated Objects

Optimization of a two-link Robotic Manipulator

Autonomous Navigation of Humanoid Using Kinect. Harshad Sawhney Samyak Daga 11633

Robot mechanics and kinematics

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

CS 188: Artificial Intelligence Fall Announcements

Announcements: Quiz. Animation, Motion Capture, & Inverse Kinematics. Last Time? Today: How do we Animate? Keyframing. Procedural Animation

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

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

Last Time? Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

Self-Collision Detection. Planning for Humanoid Robots. Digital Human Research Center. Talk Overview

Efficient Motion and Grasp Planning for Humanoid Robots

Non-holonomic Planning

Chapter 10 Motion Planning

Path Planning With Adaptive Dimensionality

KINEMATICS FOR ANIMATION. Rémi Ronfard, Animation, M2R MOSIG

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

Chapter 4 Dynamics. Part Constrained Kinematics and Dynamics. Mobile Robotics - Prof Alonzo Kelly, CMU RI

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

Robotics (Kinematics) Winter 1393 Bonab University

COORDINATED MOTION PLANNING FOR 3D ANIMATION USING CHINESE LION DANCE AS AN EXAMPLE. Fu-Sheng Yu and Tsai-Yen Li

IntroductionToRobotics-Lecture02

Planar Robot Kinematics

Last Time? Animation, Motion Capture, & Inverse Kinematics. Today. Keyframing. Physically-Based Animation. Procedural Animation

Transcription:

15-887 Planning, Execution and Learning Application: Examples of Planning for Mobile Manipulation and Articulated Robots Maxim Likhachev Robotics Institute Carnegie Mellon University

Two Examples Planning for Mobile Manipulation Planning for Articulated Robots Carnegie Mellon University 2

Two Examples Planning for Mobile Manipulation Planning for Articulated Robots Carnegie Mellon University 3

Robotic Bartender Demo ([Phillips et al.]) Robot takes in a command from User Interface as to what soda can and snack to deliver Carnegie Mellon University 4

Typical Sequence of Operations (State Machine) Carnegie Mellon University 5

Typical Sequence of Operations (State Machine) How do you pick proper x,y,ѳ for picking up? Carnegie Mellon University 6

Typical Sequence of Operations (State Machine) ARA*-based planning on x,y,ѳ with full-body collision checking for every edge Carnegie Mellon University 7

Graph for Navigation with Complex 3D Body [Hornung et al., 12] 3D (x,y,θ) lattice-based graph representation for full-body collision checking takes set of motion primitives as input takes N footprints of the robot defined as polygons as input each footprint corresponds to the projection of a part of the body onto x,y plane collision checking/cost computation is done for each footprint at the corresponding projection of the 3D map Carnegie Mellon University 8

Graph for Navigation with Complex 3D Body [Hornung et al., 12] 3D (x,y,θ) lattice-based graph representation for full-body collision checking takes set of motion primitives as input takes N footprints of the robot defined as polygons as input each footprint corresponds to the projection of a part of the body onto x,y plane collision checking/cost computation is done for each footprint at the corresponding projection of the 3D map Carnegie Mellon University 9

Typical Sequence of Operations (State Machine) Running perception. Outside of the scope of this class with the exception of the next lecture Carnegie Mellon University 10

Typical Sequence of Operations (State Machine) Pick a primitive that approximates the object the best and use one of the grasps pre-computed for this primitive Carnegie Mellon University 11

Typical Sequence of Operations (State Machine) ARA*-based planning on q1, q7 towards an arm configuration that has its end-effector at the pre-grasp pose (partially-defined goal) Carnegie Mellon University 12

Typical Sequence of Operations (State Machine) ARA*-based planning on q1, q7 towards an arm configuration that has its end-effector at the pre-grasp pose (partially-defined goal) Or a sampling-based planner such as RRT-Connect [Kuffner & LaValle, 00] would work well (would have to plan towards a full arm configuration computed by IK) Carnegie Mellon University 13

... Manipulation Lattice for Arm Planning [Cohen et al., 13] Representation ex. Single arm with n joints {θ 1,...,θ n } q 1 {θ 1,...,θ n }... q 2 {θ 1,...,θ n } q 0 {θ 1,...,θ n } q 3 {θ 1,...,θ n } Carnegie Mellon University 14

Manipulation Lattice for Arm Planning [Cohen et al., 13] Representation ex. Single arm with n joints {θ 1,...,θ n } Motion Primitives Static shoulder pan elbow flex Carnegie Mellon University 15

Manipulation Lattice for Arm Planning [Cohen et al., 13] Representation ex. Single arm with n joints {θ 1,...,θ n } Motion Primitives Static Adaptive Snap-to-goal motion Analytical solver & IK-based (only if feasible) Capable of satisfying arbitrary goal constraint despite discretization Carnegie Mellon University 16

Manipulation Lattice for Arm Planning [Cohen et al., 13] Non-uniform Dimensionality far from goal: only 4 DoFs active around goal: all 7 DoFs are active Non-uniform Resolution far from goal: larger discretization of joint angles around goal: finer discretization of joint angles 4D 1. Shoulder pan 2. Shoulder pitch 3. Upper arm roll 4. Elbow flex 7D 1. Shoulder pan 2. Shoulder pitch 3. Upper arm roll 4. Elbow flex 5. Forearm roll 6. Wrist flex 7. Wrist roll Carnegie Mellon University 17

Informative Heuristics for Arm Planning [Cohen et al., 13] Any ideas? Carnegie Mellon University 18

Informative Heuristics for Arm Planning [Cohen et al., 13] Euclidean distance for the end-effector? deep local minima! h Euclidean End-effector path according to heuristic large local minima many expansions Carnegie Mellon University 19

Informative Heuristics for Arm Planning [Cohen et al., 13] 3D BFS for end-effector accounting for obstacles computes distances from each <x,y,z> to the goal for the end-effector sphere dramatically better than Euclidean distance admissible fast to compute h BFS End-effector path according to heuristic shallow local minima fewer expansions Carnegie Mellon University 20

Typical Sequence of Operations (State Machine) Move the arm from pre-grasp pose towards grasp pose (computed via IK) and close the gripper Carnegie Mellon University 21

Typical Sequence of Operations (State Machine) ARA*-based planning on q1, q7 towards the home arm configuration (fully-defined goal) Carnegie Mellon University 22

Typical Sequence of Operations (State Machine) ARA*-based planning on q1, q7 towards the home arm configuration (fully-defined goal) How do you enforce upright constraints? Carnegie Mellon University 23

Two Examples Planning for Mobile Manipulation Planning for Articulated Robots Carnegie Mellon University 24

Little Dog Demo [Vernaza et al., 09] Little Dog robot needs to traverse a fully-known terrain Planning Plans footsteps first with an anytime variant of A* Compute COM of the robot afterwards to support execution Carnegie Mellon University 25

Footstep Planner [Vernaza et al., 09] Assumptions of the planner: Only one leg lifted at a time to ensure static stability Center of mass shifts during quadsupport phase to prevent tipping Footholds chosen deliberately to maximize stability Carnegie Mellon University 26

Footstep Planner [Vernaza et al., 09] Planner builds (on-the-fly/implicit) Stance Graph: Node (stance): 9-dimensional foothold configuration - feet positions and current gait phase Edge: feasible transition between stances Edge costs for transitions computed based on risk, anticipated delay Carnegie Mellon University 27

Implementation of GetSuccessors(s) Function Finite set of good quality candidate footholds selected prior to planning Valid stances are kinematically feasible 4-tuples of candidate footholds Successors of a given stance computed by: - determining reachable candidate footholds that result in a valid stance Carnegie Mellon University 28

Implementation of GetCost(s,s ) Function Edgecosts are weighted sum of: Overhead Fixed cost per step Center of mass travel Discourages backwards motion of COM Incircle radius Farthest distance from interior to exterior of support triangle Carnegie Mellon University 29

Implementation of GetCost(s,s ) Function Edgecosts are weighted sum of: Collision Risk of body/foot colliding with terrain Foot height variance Encourages robot to stay level Carnegie Mellon University 30

Implementation of GetCost(s,s ) Function Edgecosts are weighted sum of: Reachability Robot's ability to reach next foothold, switch to next support triangle without dragging feet Terrain slope Ensures terrain slope supports direction of motion Terrain cost Considers slippage potential given terrain Carnegie Mellon University 31

Implementation of GetCost(s,s ) Function Edgecosts are weighted sum of: Reachability Robot's ability to reach next Fine tuning foothold, them is switch not fun to next support triangle without dragging feet Terrain slope Ensures terrain slope supports direction of motion Terrain cost Considers slippage potential given terrain Lots of features make up the cost function. Carnegie Mellon University 32

Implementation of GetCost(s,s ) Function Edgecosts are weighted sum of: Reachability Robot's ability to reach next Fine tuning foothold, them is switch not fun to next support triangle without dragging feet Terrain slope Ensures terrain slope supports direction of motion Terrain cost Considers slippage potential given terrain Lots of features make up the cost function. Any thoughts on making the process easier? Using Learning Cost (Inverse RL) function we learned before! See it being used for LittleDog by [Zucker et al., 09] Carnegie Mellon University 33

Sometimes smart but often stupid no footstep planning Carnegie Mellon University 34

Summary Multiple planners used for both domains Start and goal configurations are often most constrained can be exploited by the planners Cost is really complex in planning for articulated robots (e.g., quadrupeds and humanoids) Planning is higher-dimensional but can take longer than on ground and aerial vehicles Design of proper heuristics is a key to efficiency Carnegie Mellon University 35