learning and control with movement primitives in multiple ...€¦ · coordinate system 2: this is...

25
Sylvain Calinon Robot Learning & Interaction Group Idiap Research Institute Martigny, Switzerland Learning and control with movement primitives in multiple coordinate systems

Upload: others

Post on 11-Sep-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Sylvain Calinon Robot Learning & Interaction Group Idiap Research Institute Martigny, Switzerland

Learning and control with movement primitives in multiple coordinate systems

Page 2: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,
Page 3: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

RIBA healthcare robot, RIKEN i-limb prosthetics, TouchBionics

Humanoid diver, Stanford Robonaut, NASA

Page 4: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Learning from demonstration as an intuitive interface to transfer skills to robots

Page 5: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Statistical learning dynamical systems +

We look for a modular representation of movements and skills that can learn from wide-ranging data, that can adapt to new situations in a fast manner, that can exploit the robot embodiment, and that is robust to perturbations.

Page 6: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

System plant

Model predictive control (MPC) Do it smoothly! Track path!

How to solve this cost function? • Pontryagin’s maximum principle Riccati equation

• Dynamic programming • Linear algebra with stacked

vectors [Tanwani and Calinon, IEEE RA-L 1(1), 2016]

state variable (position+velocity) control command (acceleration) tracking weight matrix control weight matrix

Page 7: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

System plant

Model predictive control (MPC) Do it smoothly! Track path!

[Tanwani and Calinon, IEEE RA-L 1(1), 2016]

Page 8: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Model predictive control (MPC)

[Tanwani and Calinon, IEEE RA-L 1(1), 2016]

Sharing of synergies with:

Page 9: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Model predictive control (MPC)

[Tanwani and Calinon, IEEE RA-L 1(1), 2016]

Minimal intervention Safe/compliant robot controller

Transition and state duration

Stepwise sequence with:

Page 10: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Transfer of controllers from demonstration

Demonstration Reproduction

[Calinon, Intelligent Service Robotics 9(1), 2016]

Hold

ing

a cu

p ho

rizon

tally

Bi

man

ual

coor

dina

tion

Page 11: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

in a new situation…

Extension to multiple coordinate systems

Coordinate system 1: This is where I expect

data to be located!

Coordinate system 2: This is where I expect

data to be located!

[Calinon, Bruno and Caldwell, ICRA’2014][Calinon, HFR’2016]

Product of linearly transformed Gaussians

Page 12: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Track path in coordinate system j

MPC considering multiple coordinate systems

Do it smoothly!

1

2

2 2

2

1

2

Set of demonstrations Reproduction in new situation

New position and orientation of coordinate

systems 1 and 2

Two candidate coordinate systems (P=2)

[Calinon, Bruno and Caldwell, ICRA’2014][Calinon, HFR’2016]

Page 13: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

MPC considering multiple coordinate systems

1

2

In many robotics problems, the parameters describing the task or situation can be recast as some form of coordinate systems or locally linear transformations

[Calinon, Bruno and Caldwell, ICRA’2014][Calinon, HFR’2016]

Track path in coordinate system j Do it smoothly!

Page 14: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

MPC considering multiple coordinate systems

Learning of a controller that adapts to new situations while regulating its gains according to the precision and coordination required by the task

In many robotics problems, the parameters describing the task or situation can be recast as some form of coordinate systems or locally linear transformations

Track path in coordinate system j Do it smoothly!

[Calinon, Bruno and Caldwell, ICRA’2014][Calinon, HFR’2016]

Page 15: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Adaptation of movements to different shapes

[Calinon, Alizadeh and Caldwell, IROS’2013]

Candidate coordinate

system

Page 16: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

[Silverio et al., IROS’2015]

[Rozo et al., IROS’2015]

[Rozo et al., IEEE T-RO 32(3), 2016]

Bimanual coordination and co-manipulation

Dr Leonel Rozo João Silvério

Page 17: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Joint space constraints & tasks prioritization

Task space (operational space)

Joint space (configuration space)

Task parameters as Jacobian operators

Task parameters as null space projection operators

[Silverio, Calinon, Rozo and Caldwell (submitted)] [Calinon, ISRR’2015]

Demonstration on COMAN

Left

han

d

prio

rity

Righ

t han

d

prio

rity

Reproduction on WALKMAN

Page 18: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Learning from demonstration can be applied to various forms of robots and applications

(2015-2018)

(2015-2018)

(2012-2015)

Page 19: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Stiff Compliant

[Bruno, Calinon, Malekzadeh and Caldwell, ICIRA, LNCS 9246, 2015]

s=0 s=1

Continuous arm index s MPC for continuum robots

Page 20: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Flexible robots in minimal invasive surgery

Collaboration letting the surgeon control the tip, while the robot exploits the remaining degrees of freedom that do not interfere with the control of the tip

Insertion Retraction

[Bruno, Calinon and Caldwell, Autonomous Robots, 2016]

Page 21: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Robotic dressing assistance

Dressing assistance for: - Putting on a coat - Putting on shoes Requires to extend movement primitives to reaction, force and impedance primitives

Page 22: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Telemanipulation with underwater robot

Onshore Offshore

Same model (TP-HSMM) used for classification on the one side, and synthesis on the other side, with local adaptation to the task parameters

Page 23: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Being skillful =

exploiting variability and

correlation

Needs correction

Does not need correction

Recognition & synthesis of motion primitives

Semi-autonomous teleoperation as

a form of human-robot collaboration

[Tanwani and Calinon, IEEE RA-L 1(1), 2016]

Telemanipulation with underwater robot

Page 24: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

• Model predictive control (MPC) can be smoothly combined with learning from demonstration (LfD) for both planning and control problems

• The parameters of the cost function in MPC can be learned from demonstration, with weights as full precision matrices, instead of predefining those manually as diagonal matrices

• LfD can be extended to the consideration of multiple coordinate systems and to the learning of controllers Minimal intervention strategy that is safer for the users

• Extending LfD to collaborative skills and teleoperation provides new perspectives in shared control by exploiting the learned task variations and task synergies to cope with perturbations

Conclusion

Page 25: Learning and control with movement primitives in multiple ...€¦ · Coordinate system 2: This is where I expect data to be located! [Calinon, Bruno and Caldwell, ICRA’2014 ][Calinon,

Contact: [email protected] http://calinon.ch

Source codes: http://www.idiap.ch/software/pbdlib/

Ajay Tanwani

Emmanuel Pignat Noémie Jaquier

Dr Ioannis Havoutis

Photo: Basilio Noris

Collaborators at Idiap: