Humanoid Robotics. Path Planning and Walking. Maren Bennewitz

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

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

Introduction to Mobile Robotics Path Planning and Collision Avoidance

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

Simplified Walking: A New Way to Generate Flexible Biped Patterns

Motion Planning for Humanoid Robots

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

Integrated Perception, Mapping, and Footstep Planning for Humanoid Navigation Among 3D Obstacles

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

Real-Time Footstep Planning in 3D Environments

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

Autonomous and Mobile Robotics Prof. Giuseppe Oriolo. Humanoid Robots 2: Dynamic Modeling

Humanoid Robotics. Monte Carlo Localization. Maren Bennewitz

Navigation in Three-Dimensional Cluttered Environments for Mobile Manipulation

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

Cognitive Robotics Robot Motion Planning Matteo Matteucci

Computer Game Programming Basic Path Finding

Visual Navigation for Flying Robots. Motion Planning

Robot Motion Control Matteo Matteucci

Configuration Space of a Robot

3D Collision Avoidance for Navigation in Unstructured Environments

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

Synthesizing Human Motion From Intuitive Constraints

Leg Motion Primitives for a Humanoid Robot to Imitate Human Dances

Sub-Optimal Heuristic Search ARA* and Experience Graphs

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

Control Approaches for Walking and Running

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

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

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

Self-Collision Detection and Prevention for Humanoid Robots. Talk Overview

Simulation. x i. x i+1. degrees of freedom equations of motion. Newtonian laws gravity. ground contact forces

Discrete Motion Planning

Basic Motion Planning Algorithms

Autonomous and Mobile Robotics. Whole-body motion planning for humanoid robots (Slides prepared by Marco Cognetti) Prof.

Trajectory Optimization

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

Real-time Replanning Using 3D Environment for Humanoid Robot

Sound and fast footstep planning for humanoid robots

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

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

CS 354R: Computer Game Technology

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

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

Dynamically Stepping Over Obstacles by the Humanoid Robot HRP-2

Informed search. Soleymani. CE417: Introduction to Artificial Intelligence Sharif University of Technology Spring 2016

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

Real-Time Footstep Planning Using a Geometric Approach

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

Using the Generalized Inverted Pendulum to generate less energy-consuming trajectories for humanoid walking

Are We Smart Yet? (Where we try to choose smartly) R&N: Chap. 4, Sect

A sliding walk method for humanoid robots using ZMP feedback control

Development of an optomechanical measurement system for dynamic stability analysis

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

Motion Planning of Emergency Stop for Humanoid Robot by State Space Approach

Efficient Extensible Path Planning on 3D Terrain Using Behavior Modules

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

Quadruped Robots and Legged Locomotion

Adaptive Motion Control: Dynamic Kick for a Humanoid Robot

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

Autonomous SLAM based humanoid navigation in a cluttered environment while transporting a heavy load

Generating Whole Body Motions for a Biped Humanoid Robot from Captured Human Dances

ANA*: Anytime Nonparametric A*

Notes. Video Game AI: Lecture 5 Planning for Pathfinding. Lecture Overview. Knowledge vs Search. Jonathan Schaeffer this Friday

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

c 2007 Salvatore Joseph Candido

Integrating Dynamics into Motion Planning for Humanoid Robots

Nao Devils Dortmund. Team Description Paper for RoboCup Matthias Hofmann, Ingmar Schwarz, and Oliver Urbann

Sung-Eui Yoon ( 윤성의 )

Advanced Robotics Path Planning & Navigation

A simple example. Assume we want to find the change in the rotation angles to get the end effector to G. Effect of changing s

Robust Control of Bipedal Humanoid (TPinokio)

Navigation and Metric Path Planning

Navigation in Three-Dimensional Cluttered Environments for Mobile Manipulation

Small-Space Controllability of a Walking Humanoid Robot

Mithras3D Team Description Paper 2014 Soccer Simulation 3D League

Heuristic (Informed) Search

Motion Planning for Whole Body Tasks by Humanoid Robots

A* optimality proof, cycle checking

LOCOMOTION AND BALANCE CONTROL OF HUMANOID ROBOTS WITH DYNAMIC AND KINEMATIC CONSTRAINTS. Yu Zheng

Leg Motion Primitives for a Dancing Humanoid Robot

Informed Search A* Algorithm

A Walking Pattern Generator for Biped Robots on Uneven Terrains

Dynamically Balanced Omnidirectional Humanoid Robot Locomotion. An Honors Paper for the Department of Computer Science. By Johannes Heide Strom

Motion Planning for a Point Robot (2/2) Point Robot on a Grid. Planning requires models. Point Robot on a Grid 1/18/2012.

Inverse Kinematics for Humanoid Robots using Artificial Neural Networks

Anytime Search in Dynamic Graphs

R* Search. Anthony Stentz The Robotics Institute Carnegie Mellon University Pittsburgh, PA

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

Motion Planning for Humanoid Walking in a Layered Environment

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

Anytime search in dynamic graphs

Inverse Kinematics for Humanoid Robots Using Artificial Neural Networks

SYNTHESIS AND RAPID PROTOTYPING OF MOTION FOR A FOUR-LEGGED MAMMAL-STRUCTURED ROBOT

Humanoid Walking Control using the Capture Point

Automatic Control and Robotics. Implementation of a robot platform to study bipedal walking. Master Thesis

A Multi-Heuristic framework for Humanoid Planning

Stable Trajectory Design for Highly Constrained Environments using Receding Horizon Control

15-494/694: Cognitive Robotics

Heuristic (Informed) Search

Transcription:

Humanoid Robotics Path Planning and Walking Maren Bennewitz 1

Introduction Given the robot s pose in a model of the environment Compute a path to a target location First: 2D path in a 2D grid map representation of the environment Then: Footstep path in a 2D map or height map 2

2D Path Planning with A* Given: 2D occupancy grid map A* finds the cost-optimal path to the goal Considers the 8-connected neighborhood Starts with the cell containing the current pose of the robot 3

A* Heuristic Search Best-first search to find a cost-optimal path to the goal state Expands states according to the evaluation function: f(n)=g(n)+h(n) g(n): actual costs from start to state n Heuristics h(n): estimated costs from n to the goal 4

A* Heuristic Search Let h*(n) be the actual cost of the optimal path from n to the goal Heuristics h is admissible if the following holds for all n: h(n) h*(n) A* yields the optimal path if h is admissible (proof: AI lect., Russell/Norvig) 5

A* on a 2D Grid Map Generate successors (8-connected neighborhood) from node with lowest f-cost Prune nodes that result in collision Continue until the lowest-cost node is close to the goal Actual costs g = costs of the path from the start to the current node 1 per horizontal/vertical grid cell traversal, per diagonal Estimated costs to the goal h: straight-line distance 6

Example: Path Planning with A* on a 2D Grid Map goal robot 7

2D Path Planning for Humanoids Compute a collision-free 2D path first, then follow this path with a walking controller For 2D path planning use a safety margin around obstacles But how large should the margin be? goal start large clearance (detour) too small clearance (collision) 8

Path Planning for Humanoids Humanoids can avoid obstacles by stepping over or close to them However, planning whole-body motions has a high computational complexity Footstep planning reduces the computational demand 9

Footstep Planning with A* Search space: foot poses (x,y,θ) Global position and orientation of the stance foot Given: discrete set of footsteps Optimal footstep path with A* 10

Footstep Planning with A* Planning of footsteps by constructing a search tree of potential successor states Fixed set of possible footsteps Foot placements are checked for collisions during tree expansion source: Kuffner et al. 11

Footstep Planning State Footstep action Fixed set of footsteps Successor state Transition costs: constant step costs costs based on the traversed distance 12

Footstep Planning start 13

Footstep Planning start 14

Footstep Planning start 15

Footstep Planning s s estimated costs from s to goal transition costs path costs from start to s start 16

Footstep Planning s? planar obstacle s start 17

Heuristics Estimates the costs to the goal Critical for planner performance Usual choices based on: Euclidean distance (straight-line distance) Shortest 2D path (Dijkstra) with safety margin around obstacles expanded state s' h(s') goal state 20

A*-Based Footstep Planning Only valid states after a collision check are added to the search tree Goal state may not be exactly reached, but it is sufficient to reach a state close by goal state current state 21

Local Minima in the Search Space A* searches for the optimal path Sub-optimal results are often sufficient for navigation start goal expanded states 22

Anytime Repairing A* (ARA*) Weighted A*: Heuristics inflated by a factor w (wa*) ARA* runs a series of wa* searches, iteratively lowering w as long as a given time limit is not met The resulting paths are guaranteed to cost no more than w times the costs of the optimal path ARA* reuses information from previous iterations [Likhachev et al. 04] 23

Anytime Repairing A* (ARA*) An initially large w causes the search to find a non-optimal initial solution quickly Given enough time, ARA* finally searches with w = 1, producing an optimal path If the time limit is met before, the cost of the best solution found is guaranteed to be no worse than w times the optimal solution ARA* finds a first sub-optimal solution faster than regular A* and approaches optimality as time allows 24

ARA* with Euclidean Heuristic start goal w = 1 26

ARA* with Euclidean Heuristic start goal w = 10 27

ARA* with Euclidean Heuristic start goal w = 5 28

ARA* with Euclidean Heuristic start goal w = 2 29

ARA* with Euclidean Heuristic start goal w = 1 30

ARA* with 2D Dijkstra Heuristic start goal w = 1 31

Planning in Dense Clutter Until a First Solution is Found A* Euclidean heur. ARA* (w=5) Euclidean heur. ARA* (w=5) Dijkstra heur. 11.9 sec. 2.7 sec. 0.7 sec. Dijkstra heuristics: inadmissible and may lead to longer paths, but expands much fewer states 32

Footstep Planning on a Heightmap So far: planar obstacles Now: Consider the height of objects Plan footsteps that also include stepping onto objects Use a modified Dijkstra heuristics 33

Action Set for the Nao Humanoid T-Step step over step onto Standard planar steps Extended 3D stepping capabilities 34

Dijkstra Heuristics for Heightmaps Consider the 8-neighborhood in the (x,y) space of the heightmap Costs of an edge are defined by the height differences heightmap example costs nontraversable (infinite) elevation (mid) free (low) 35

Safe Stepping Actions Allow only states where all cells covered by the footprint have a small height difference Height difference must be within the stepping limits s 36

Efficient Whole-Body Collision Checking Pre-compute the volume covered by the robot when executing the footstep actions Use the minimum height values for fast collision checking within the height map volume covered by the robot narrow passage computed path in the height map 37

Efficient Whole-Body Collision Checking Store minimal height values of the robot (IHM=inverse height map) Use IHM for fast collision checking An action can be executed collision-free in state s if height of stance foot at s heightmap value volume covered by the robot 38

Adaptive Level-of-Detail Planning Planning the whole path with footsteps may not always be needed in large open spaces Adaptive level-of-detail planning: Combine fast grid-based 2D planning in open spaces with footstep planning near obstacles Adaptive planning 40

Adaptive Planning Results 2D Planning Footstep Planning Adaptive Planning goal start <1 s planning time high path costs 29 s planning time <1s planning time, costs only 2% higher Fast planning times and efficient solutions with adaptive level-of-detail planning 41

Walking HRP-4C and ASIMO 42

Posture Stability A pose is statically stable if The robot s center of mass (COM) lies above the support polygon on the floor Support polygon: the convex hull of all contact points of the robot on the floor source: T. Asfour 43

Statically Stable Walking The robot will stay in a stable position whenever the motion is stopped The projection of the COM of the robot on the ground must be contained within the support polygon Support polygon: Either the foot surface in case of one supporting leg, or the minimum convex area containing both foot surfaces when both feet are on the ground 44

Statically Stable Walking Leads to robust but slow walking performance source: T. Asfour 45

Human Walking Body as an inverted pendulum pivoting around the ankle joint The body is represented as a point mass The body weight acts at the COM and generates momentum The ground reaction force acts at the center of pressure (COP) center of mass (COM) ankle joint center of pressure (COP) source: T. Asfour 46

Zero Moment Point Stability is achieved if the zero moment point (ZMP) is in the support area A robot standing on the ground applies a force and moment to the ground At the same time, the ground applies a force and a moment to the robot (ground reaction force) The ZMP is the point on the ground where the total moment generated due to gravity and inertia equals zero 47

Zero Moment Point 48

Zero Moment Point 49

Zero Moment Point 50

Zero Moment Point Zero-Moment-Point (ZMP) 51

Zero Moment Point For stable walking, the support foot must rest on the ground Forces and torques acting on support foot must sum up to 0 The ZMP must remain inside the footprint of the support foot Then, the ZMP coincides with the COP ZMP must not be on the edge of the support polygon, this will cause instability During the movement, the projection of the COM can leave the support polygon 52

Dynamically Stable Walking CoM ZMP Support Polygon Stopping the motion may result in falling source: S. Kajita 53

Following Footsteps Footsteps Pattern Generator (e.g. Kajita et al. 2003) Desired ZMP Trajectory CoM Trajectory Joint Angles 55

ZMP-Based Walking Pattern Generator Parameters: COM height, step speed, single/double support phase duration Calculate feet trajectory: polynomial trajectories with zero velocity and acceleration at start and end of each step 56

ZMP-Based Walking Pattern Generator Define reference ZMP: In single support phase: always in center of foot In double support phase: fast switch from previous standing foot to the next one Calculate COM trajectory to follow the foot placements and reference ZMP Solve inverse kinematics (IK) for given feet position and COM position to get the leg joint angles (IK will be detailed in the next chapter) 57

ZMP-Based Walking Pattern Generator feet trajectory resulting ZMP footstep positions source: T. Asfour reference ZMP COM trajectory 58

Summary Search-based path planning and footstep planning with A* Anytime search-based footstep planning with sub-optimality bounds: ARA* Heuristics influences planning performance Adaptive level-of-detail planning to combine 2D with footstep planning Extensions to 3D obstacle traversal Basic concepts of stability and walking 59

Literature Anytime Search-Based Footstep Planning with Suboptimality Bounds, A. Hornung, A. Dornbush, M. Likhachev, and M. Bennewitz, HUMANOIDS, 2012 ARA*: Anytime A* with provable bounds on suboptimality, M. Likhachev, G. Gordon, and S. Thrun, NIPS, 2004 Introduction to Humanoid Robotics, Ch. 3 (ZMP) Shuji Kajita et al., 2014 Search-based planning library: www.ros.org/wiki/sbpl Footstep planning implementation based on SBPL: www.ros.org/wiki/footstep_planner 60

Acknowledgment Previous versions of parts of the slides have been created by Armin Hornung, Tamim Asfour, and Stefan Osswald 61