Presentation is loading. Please wait.

Presentation is loading. Please wait.

Department of Computer Science Columbia University rax - 2012 Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner,

Similar presentations


Presentation on theme: "Department of Computer Science Columbia University rax - 2012 Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner,"— Presentation transcript:

1 Department of Computer Science Columbia University rax - 2012 Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner, Jr., Satoshi Kagami, Koichi Nishiwaki, Masayuki Inaba and Hirochika Inoue Department of Computer Science Columbia University COMS W6731 Humanoid Robots, Spring 2016 Student Presentation by Alice Chang February 2016

2 Outline 1 Problem Analysis Problem Analysis 2 Experiments and Results Experiments and Results 3 Result Analysis Result Analysis

3 Problem Analysis Problem Analysis: Why is Motion Planning for Humanoid Robots Hard? 3 / 37

4 Problem Analysis Why is Motion Planning for Humanoid Robots Hard? › Typically humanoids have a lot of DOF! (≥ 30) › Robots need to be controlled very carefully to maintain static and dynamic stability. › Other constraints, i.e. obstacle avoidance must be considered. 4 / 37

5 Problem Analysis What Are We Trying to Solve? › Given 2 statically-stable full-body configurations (q start and q goal ), generate a dynamically-stable, collision-free trajectory between them. 5 / 37

6 Problem Analysis How to solve it? Dynamic Motion Planning Approach › Decoupled Approach Compute a kinematic path and then transform to dynamic trajectory. › State-space formulation Search system state-space directly and decide what control inputs can be applied. 6 / 37

7 Problem Analysis Decoupled Approach › This paper implements... 7 / 37

8 Problem Analysis Assumptions › 3D Environment Model › Initial Posture: Balanced, collision-free, statically stable, supported by one or two feet › Goal Posture: Given › Support Base: Supporting foot does not change during planning 8 / 37

9 Problem Analysis Definitions › Configuration Space (C) › Space of collision-free configurations (C free ) › Space of stable configurations (C stable ) › Space of stable and collision-free configurations (C valid ) 9 / 37

10 Problem Analysis Definitions, cont’d › Statically-stable configuration 1.The projection of the center of mass lies within area of support 2.The joint torques needed to counteract the gravity- induced torques do not exceed limit. 10 / 37

11 Problem Analysis Definitions, cont’d › Dynamic stability Theoretically any statically-stable trajectory can be transformed into a dynamically- stable trajectory by arbitrarily slowing down the motion. 11 / 37

12 Problem Analysis Planning Query › Planner(A,B, q_init, q_goal)  τ › No explicit way of expressing C_valid › Use collision detection to determine whether q is free › C_stable if X (q) along the gravity vector lies within the area of support and torque needed to counter gravity- induced torques do not exceed maximum torque bounds 12 / 37

13 Problem Analysis Path Search Algorithm › Algorithm RRT (Rapidly-Exploring Random Trees) Input: Initial configuration q init, number of vertices in RRT K, incremental distance Δq) Output: RRT graph G G.init(q init ) for k = 1 to K q rand ← RAND_CONF() q near ← NEAREST_VERTEX(q rand, G) q new ← NEW_CONF(q near, q rand, Δq) G.add_vertex(q new ) G.add_edge(q near, q new ) return G 13 / 37

14 Problem Analysis Path Search Algorithm, cont’d › 14 / 37

15 Problem Analysis Path Search Algorithm, cont’d › 15 / 37

16 Problem Analysis Path Search Algorithm, cont’d › 16 / 37

17 Problem Analysis Path Search Algorithm, cont’d › 17 / 37

18 Problem Analysis Path Search Algorithm, cont’d › Quickly reducing the expected distance of a random point to the tree 18 / 37

19 Problem Analysis RRT-Connect 19 / 37

20 Problem Analysis RRT-Connect vs RRT › RRT only build from start › RRT-Connect explores from start and goal 20 / 37

21 Problem Analysis RRT-Connect vs RRT, cont’d › RRT uses Euclidean distance for distance metric › RRT-Connect uses distance between configurations (Weighted sum of joint values where joints nearest to torso and/or with more mass have higher relative weight). 21 / 37

22 Problem Analysis RRT-Connect vs RRT › RRT picks random configuration to explore towards. › RRT-Connect picks random statically-stable configuration of the robot 22 / 37

23 Problem Analysis Convergence and Completeness? › Incomplete planning algorithm – returns null if no path found within a set amount of time limit › Computationally intensive even for low- dimensional configuration spaces › Tradeoff: Computing time vs Completeness 23 / 37

24 Problem Analysis Offline computation of ”random” statically-stable configurations › › › 24 / 37

25 Problem Analysis Offline computation of ”random” statically-stable configurations › Single-Leg Support Configuration 1.The configuration space (C) is sampled randomly, obtaining a configuration q rand 2.If q rand is statically-stable, there are no self-collisions and it respects the joint limits, then this sample is stored 3. Since robots are usually symmetric, we store this configuration for the other leg too › 25 / 37

26 Problem Analysis Offline computation of ”random” statically-stable configurations › Dual-Leg Support Configuration 1.As for the single-leg case, he configuration space (C) is sampled randomly, obtaining a configuration q rand 2.Hold the (i.e.) right leg fixed and use inverse kinematics to position the left leg in the required relative position w.r.t right leg. 3. If this new q rand is statically-stable, there are no self collisions..., then this sample is stored › 26 / 37

27 Problem Analysis Additional post-processing › Smoothing 1.Replace portions of the path between selected pairs of configurations by straight-line segments in C valid. Minimum jerk Model. 27 / 37

28 Problem Analysis Additional post-processing › Dynamic Filtering 1.A dynamics filtering function is used in order to output a final dynamically-stable trajectory. 2.AutoBalancer: An online dynamic balance compensation scheme for humanoid robots. 28 / 37

29 Problem Analysis Experiments and Results: 29 / 37

30 Experiments and Results Experiments and Results 30 / 37

31 Experiments and Results Experiments and Results 31 / 37

32 Experiments and Results Experiments and Results 32 / 37

33 Experiments and Results Experiments and Results 33 / 37

34 Problem Analysis Result Analysis: 34 / 37

35 Result Analysis › Effective in achieving goals of dynamic stability › Requires offline pre-processing › Only handle fixed leg position › Not complete / Time consuming › 35 / 37

36 Result Analysis Limitations and Future Work › Current implementation can only handle fixed position of one or two feet on ground. Can’t hop or jump › Effectiveness of different configuration space distance metrics needs to be investigated › No method for integrating visual or tactile feedback 36 / 37

37 Problem Analysis Questions? 37 / 37

38 Department of Computer Science Columbia University rax - 2012 Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner, Jr., Satoshi Kagami, Koichi Nishiwaki, Masayuki Inaba and Hirochika Inoue Department of Computer Science Columbia University COMS W6731 Humanoid Robots, Spring 2016 Student Presentation by Alice Chang February 2016


Download ppt "Department of Computer Science Columbia University rax - 2012 Dynamically-Stable Motion Planning for Humanoid Robots Paper Presentation James J. Kuffner,"

Similar presentations


Ads by Google