270 likes | 466 Views
Planning for Humanoid Robots. Presented by Irena Pashchenko CS326a, Winter 2004. What is different?. High Dimensionality ( >30 DOF ) Requires careful control to maintain static and dynamic stability. Two problems ( I ).
E N D
Planning forHumanoid Robots Presented by Irena Pashchenko CS326a, Winter 2004
What is different? • High Dimensionality ( >30 DOF ) • Requires careful control to maintain static and dynamic stability.
Two problems ( I ) • Given two statically-stable configurations, qinit and qgoal, generate a dynamically stable, collision-free trajectory from qinit to qgoal. • Kuffner, et. al, Dynamically-stable Motion Planning for Humanoid Robots, 2000.
Two problems ( II ) • In an obstacle-cluttered environment, walk toward a goal position. • Kuffner, et. al, Footstep Planning Among Obstacles for Biped Robots, IROS 2001
q qtarget qnew qnear qinit Dynamically-Stable Motion Planning for Humanoid Robots, Kuffner, et. al, 2000.
center of mass X(q) gravity vector projection of X(q) area of support Restricted Configuration Space • Cvalid = Cstable Cfree • Cstable - set of statically stable configurations • Givenqinit Cvalid andqgoal Cvalid find find trajectory s.t. (t) Cvalid • Justification – statically stable trajectory can be transformed intodynamically-stable by arbitrarily slowing down the motion.
Rendering of an RRT by James Kuffner Random-Exploring Trees (LaValle ’98) • Efficient randomized planner for high-dim. spaces with • Algebraic constraints (obstacles) and • Differential constraints (due to nonholonomy & dynamics) • Biases exploration towards unexplored portions of the space
qinit qgoal Modified RRT • Build two trees from the start and goal configurations • To obey dynamic constraints – introduce dynamic balance compensator in Connect/Extend phase
qinit q qgoal Modified RRT - EXTEND( T, q ) • Randomly select a collision-free, statically stable configuration q.
qinit q qnear qgoal Modified RRT - EXTEND( T, q ) • Select nearest vertex to q already in RRT (qnear).
qtarget qinit q qnear qgoal Modified RRT - EXTEND( T, q ) • Make a fixed-distance motion towards q from qnear (qtarget).
qtarget qinit q qnew qnear qgoal Modified RRT - EXTEND( T, q ) • Generate qnew by filtering path from qnear to qtarget through dynamic balance compensator and add it to the tree.
RRT_CONNECT_STABLE( qinit, qgoal) 1. Ta.init( qinit); Tb.init( qgoal); 2. For k= 1 to K do 3. qrand RANDOM_STABLE_CONFIG(); 4. if not( EXTEND(Ta, qrand = Trapped ) 5. if( EXTEND(Tb, qnew) = Reached ) 6. return PATH(Ta, Tb); 7. SWAP(Ta, Tb); 8. return Failure;
Distance Metric • To avoid erratic movements from one step to the next. • Encode in the distance metric: (q,r ) = wi(qi– ri ) • Higher relative weights to links with greater mass and proximity to trunk.
Random Static Postures • It is unlikely that a configuration picked at random will be collision-free and statically-stable. • Solution: generate a set of configurations, and randomly sample this set at run time.
Experimental Results Dynamically-stable planned trajectory for a crouching motion. Performance statistics ( N = 100 trials ). 3-12 min
Footstep Planning Among Obstacles for Biped Robots, Kuffner, et. al, 2001.
Simplifying Assumptions • Stationary obstacles of known position and height • Foot placement only on floor surface (not on obstacles) • Pre-computed set of footstep placement positions (15)
Simplifying Assumptions • Statically-stable transition trajectories, pre-calculated • Statically-stable intermediate postures fewer trajectories • Thus, problem is reduced to best-first search of feet placements (collision-free)
Initial Configuration Best-First Search • Generate successor nodes from lowest cost node • Prune nodes that result in collisions • Continue until a generated successor node falls in goal region
Cost Heuristic • Cost of path taken so far • Depth of node in the tree • Penalties for orientation changes and backward steps • Cost estimate to reach goal • Straight-line steps from current to goal • Empirically-determined weighting factors
Obstacle Collision Checking • Two-level: • 2D projections of foot and obstacle on walking surface • 3D polyhedral minimum-distance determination (V-clip)
Experimental Results • Path Computed in 12 seconds on an 800 MHz Pentium II
Future Work • Allow stepping on obstacles • Environments with uneven terrain • Incorporate sensor feedback • Different heuristics • Dynamic stepping motions (including hopping or jumping)
Conclusion • General task involves a high-dimensional space • Use random planning [Kuffner 2000] • Restrict motion to a finite set [Kuffner 2001] • Randomized planner is more general, and could solve [Kuffner 2001] problem, but takes longer time • Could integrate the two planners to form a more efficient, comprehensive planner • Use 2001 planner to move to goal location, and 2000 planner to achieve final posture