CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT

advertisement
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Whole-body optimization based control
Abderrahmane KHEDDAR
CNRS-AIST Joint Robotics Laboratory (JRL), UMI3218/CRT, Tsukuba, Japan
CNRS-UM2 LIRMM, Interactive Digital Humans group, Montpellier, France
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Summary

Motivation


Dynamic motion generation between
contact stances



Multi-contact planning
Whole-body dynamic optimization
Experiments on HRP-2
Problems and open issues
2
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Cumbersome environments
3
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Escande, Kheddar, Miossec IEEE/RSJ IROS 2009 (video session)
4
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
PG: implementation
5
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Tasks in posture generation
can be used in a more general way
to express tasks not related to planning:
• Orientation of a body
• looking at a target (including a new contact)
• keeping visual features in the field of view
•…
It amounts to restraint
to smaller sub-manifolds
9
6
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Example of tasks

Carrying a glass
Idea: having n collinear to
k with the same direction
Escande, Kheddar, Miossec, Garsault, ISER, 2008
Escande, Kheddar, IEEE/RSJ IROS 2009
Escande, Kheddar, Chapter 6 in Humanoid Motion Planning, K. Harada, E. Yoshida and K.
Yokoi (Eds), Springer, STAR series, pp. 161–180, 2010
7
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Generalized PG

Unifies manipulation and locomotion


Unifies objects, robots, agents


No distinctions
Only goals are specified
Functional extensions


Bilateral contacts (e.g. grasps)
Deformable bodies
Bouyarmane, Kheddar, IEEE/RSJ Humanoids, 2010
Bouyarmane, Kheddar, Multi-contact stances planning for multiple agents,
IEEE ICRA, 2011
8
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Generalized PG in planning
Bouyarmane, Kheddar, Multi-contact stances planning for multiple agents,
IEEE ICRA, 2011
9
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Motion generation

Main ideas

MPC on simplified models


Operational task-based prioritized control




Computer Graphics communities (all variants)
Bouyarmane et al. IROS 2011; Salini et al. ICRA 2011
Whole-body dynamic optimization


E.g. Sentis, Park, Khatib, IEEE TRO 2010
E.g. Mansard, Saab et al. or L. Righetti et al. ICRA 2011
Closed-loop QP-based control


All variants of Kajita et al.’s PG
This talk
Possibly others

E.g. learning techniques
10
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Why motion optimization

Benefits





Minimization of a criteria
Same method whatever the motion
Easy inclusion of all constraints (actuator limitations, joint
limits, stability, collision)
Necessary for high performance motions, highly constrained
motions
Drawbacks


Off-line (solution: motions database)
Does not solve control problem (possibility : stochastic
optimization)
11
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Motion optimization problem

System model
u  A(q)q  H (q, q)  J (q)T Fc

General problem




Look for a motion q(t) or control u(t) t in [0…tf]
Criteria to minimize f(q(t),u(t))
Constraints to satisfy c(q(t),u(t))</=0
t in [0…tf]
Problem to solve
min f  q(t ), u(t ) 
q ( t ) or u ( t )
c  q(t ), u (t )   0

12
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
How to solve optimization pb?

Solving method (first implementations)

Discretization




Of parameters q(t) = q(p,t) (ex.: B-Splines)
Of constraints at times ti: c(q(ti)) </=0 i  [0…N]
System control u(t) computed with inverse
dynamic model
Problem to solve
min f  q( p, t ), u  q( p, t )  
p
c  q( p, ti ), u  q( p, ti )    0 i  1...N 


Resolution with a nonlinear optimization
algorithm
13
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Implementation on HRP-2

General architecture of the program
Definition of motion
and constraints
Motion class
Optimization algorithm (IPOPT)
k=0k=0
B-Splines, dynamic
criteriamodel
Criteria
Criteria
gradient
Iteration
k k
k=k+1 Iteration
k=k+1
Criteria gradient
Constraints
Constraints
Convergence ?
No
NoConvergence ?
Constraints gradient
Constraints
gradient
Yes
Yes
End
14
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Optimal Motion Generation

Optimal motion problematic

Minimization of any criteria



Energy consumption
Time, jerk, etc.
Constraints
Actuators’ torque, max speeds,
Joint limits…
 Collision and Auto-collision
 Unilateral contact, stability


Output
High performance desired
motion with constraint satisfaction


Tool


Development of a software framework
A unified constraint definition
Miossec, Yokoi, Kheddar, IEEE ROBIO, 2006
Escande, Miossec, Kheddar, IEEE/RSJ Humanoids, 2007
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Extreme tasks


Dynamic transition from one
feasible posture to another
under joint torque limitation
Combining two different
motions


accelerating an object upward
sliding the body into under the
object
Arisumi, Chardonnet, Kheddar, Yokoi, IEEE ICRA 07
Arisumi, Miossec, Chardonnet, Yokoi, IEEE/RSJ IROS 08
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Problem

Theoretical



Difficult to find a compromise between the
number of trajectory control points (optimization
variables) and sampling time
Difficult to keep a uniformed sampling when the
final time is an optimization variable
No guarantee of constraints satisfaction
between time samples

Optimization using interval analysis (Lengagne et al.)


Guarantee of constraint satisfaction
Computationally heavy
17
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Multi-contact motion optimization



Whole-body model (incl. dynamics)
Motion local planning
Play trajectories in pseudo-closed-loop
Contact sets

Optimization
Dynamic motion
… if the solutions fits within critical time

Use in a closed-loop scheme
18
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Problem (case 1)
19
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Problem (case 2)
20
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Solution (adopted)
dk+1 (Ci , Cj)
0
t
t0
t1
t2
t3
t4
t5
Tf
21
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
More about subdivisions
Lengagne, Mathieu, Kheddar, Yoshida, HUMANOIDS, 2010
Lengagne, Mathieu, Kheddar, Yoshida, IROS, 2010
22
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Video: HRP-2
Reported by the NEW SCIENTIST and
REUTERS Press Agency
23
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Other videos: HRP-2
24
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
HRP-2 emulating impaired leg
Lengagne, Kheddar, Druon, Yoshida, IEEE ROBIO, 2011
25
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Comparing motions
26
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Floating contact
27
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Avoiding collisions
q(t)
P
Motion
Parametrization
Optimization
Solver
Polynomial
Approximation
(Taylor)
T (t),R (t),v(t),ω(t)
mind (Ci , C j )
Global Minima Distance Computation
28
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
CD (no)
29
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
CD (yes)
30
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Conclusion


Optimization is a powerful tool
Yet, we need adding:






Impact
Multi-contact stabilizer
Collision avoidance
Faster solvers
Flexibility of the ankle
Current software status

Draft
31
CNRS-AIST Joint Robotics Laboratory, UMI3218/CRT (JRL)
Collaborators (on this topic)

Past members

New members (RoboHow.Cog)
32
Download