Talk by Giorgio Metta

101
iCub a shared platform for research in robotics & AI Genoa June 25, 2015 Giorgio Metta & the iCub team Istituto Italiano di Tecnologia Via Morego, 30 - Genoa, Italy

Transcript of Talk by Giorgio Metta

Page 1: Talk by Giorgio Metta

iCuba shared platform for research in robotics & AI

GenoaJune 25, 2015

Giorgio Metta & the iCub teamIstituto Italiano di TecnologiaVia Morego, 30 - Genoa, Italy

Page 2: Talk by Giorgio Metta

we have a dream

6/25/2015 3

Page 3: Talk by Giorgio Metta

the iCub

6/25/2015 4

price: 250K€30 iCubdistributed since 2008about 3-4 iCub’s/year

Page 4: Talk by Giorgio Metta

why is the iCub special?

6/25/2015 5

• hands: we started the design from the hands– 5 fingers, 9 degrees of freedom, 19 joints

• sensors: human-like, e.g. no lasers– cameras, microphones, gyros, encoders, force, tactile…

• electronics: flexibility for research– custom electronics, small, programmable (DSPs)

• reproducible platform: community designed− reproducible & maintainable yet evolvable platform − large software repository (~2M lines of code)

Page 5: Talk by Giorgio Metta

why humanoids?

6/25/2015 6

• scientific reasons – e.g. elephants don’t play chess

• natural human-robot interaction

• challenging mechatronics

• fun!

Page 6: Talk by Giorgio Metta

why open source?

6/25/2015 7

• repeatable experiments

• benchmarking

• quality

this resonates with industry-grade R&D in robotics

Page 7: Talk by Giorgio Metta

open source

6/25/2015 8

Page 8: Talk by Giorgio Metta

6/25/2015 9

Page 9: Talk by Giorgio Metta

series-elastic actuators

6/25/2015 10

• C spring design• 320Nm/rad stiffness

• features:– stiffness by design– no preloading necessary

(easy assembly)– requires only 4 custom

mechanical parts– high resolution encoder for

torque sensing

Page 10: Talk by Giorgio Metta

Yet Another Robot Platform

6/25/2015 11

• YARP is an open-source (LGPL) middleware for humanoid robotics

• history

– an MIT / Univ. of Genoa collaboration

– born on Kismet, grew on COG, under QNX

– with a major overhaul, now used by the iCub project

• C++ source code (some 400K lines)

• IPC & hardware interface

• portable across OSs and developmentplatforms

2000-2001

2001-2002

2003

2004-Today

Page 11: Talk by Giorgio Metta

exploit diversity: portability

6/25/2015 12

• operating system portability:– Adaptive Communication Environment,

C++ OS wrapper: e.g. threads, semaphores, sockets

• development environment portability:– CMake

• language portability:– via Swig: Java (Matlab), Perl, Python, C#

C/C++library

C/C++library

C/C++library

C/C++library

Page 12: Talk by Giorgio Metta

6/25/2015 13

wiki & manual

SVN & GIT

part lists

drawings

Page 13: Talk by Giorgio Metta

iCub sensors

6/25/2015 14

Page 14: Talk by Giorgio Metta

torque control

6/25/2015 15

0 ∙

∙ ∙ ∙

∙ ∙

Page 15: Talk by Giorgio Metta

learning dynamics

6/25/2015 16

• learning body dynamics– compute external forces– implement compliant control

• so far we did it starting from e.g. the cad models– but we’d like to avoid it

Page 16: Talk by Giorgio Metta

our method in 4 easy steps

6/25/2015 17

• regularized least square

• kernelized

• approximate kernel

• make it incremental

m

iii xxkcxf

1

,

yIKc 1

D

djw

Tiwji xzxz

DExxk

dd1

1,

xwxwxz TTw sin,cos

yIw TT 1

+ Cholesky rank-1 update

xwxf T22

21

2min XwywJ

w

yXXXIw TT 1

Page 17: Talk by Giorgio Metta

properties• O(1) update complexity w.r.t. # training samples

• exact batch solution after each update

• dimensionality of feature mapping trades computation for approximation accuracy

• O(D²) time and space complexity per update w.r.t. dimensionality of feature mapping

• easy to understand/implement (few lines of code)

• not exclusively for dynamics/robotics learning!

6/25/2015 18

Page 18: Talk by Giorgio Metta

batch experiments• 3 inverse dynamics datasets: Sarcos, Simulated Sarcos,

Barrett [Nguyen-Tuong et al., 2009]

• approximately 15k training and 5k test samples

• comparison with LWPR, GPR, LGP, Kernel RR

• RFRR with 500, 1000, 2000 random features

• hyperparameter optimization by exploiting functional similarity with GPR (log marginal likelihood optimization)

6/25/2015 19

Page 19: Talk by Giorgio Metta

datasets

6/25/2015 20

Page 20: Talk by Giorgio Metta

6/25/2015 21

Page 21: Talk by Giorgio Metta

6/25/2015 22

Page 22: Talk by Giorgio Metta

6/25/2015 23

Page 23: Talk by Giorgio Metta

incremental experiments

6/25/2015 24

Page 24: Talk by Giorgio Metta

incremental experiments

6/25/2015 25

Page 25: Talk by Giorgio Metta

temperature compensation

6/25/2015 26

Page 26: Talk by Giorgio Metta

summary• Fast prediction and model update of RFRR

– 200RF: 400μs– 500RF: 2ms– 1000RF: 7ms

• Non-stationary: thermal sensor drift in force components• Rapid convergence of RFRR• No further gain by using additional random features

(problem specific)

6/25/2015 27

Page 27: Talk by Giorgio Metta

experiments & model validation

6/25/2015 28

static configuration:

an additional six axis F/T sensor is placed at the end effector tomeasures the external wrenches we

Joint 0 Joint 1 Joint 2 Joint 3E (τj-τft) 0.127 Nm -0.049 Nm -0.002 Nm -0.032 Nm

σ (τj-τft) 0.186 Nm 0.131 Nm 0.013 Nm 0.042 Nm

E (τj-(τm+τe)) 0.075 Nm -0.098 Nm -0.006 Nm 0.006 Nm

σ (τj-(τm+τe)) 0.191 Nm 0.173 Nm 0.020 Nm 0.032 Nm

additional F/T sensor at the end-effector

in this experiment we consider the following quantities:

• joint torques measured by the joint torque sensors: tj• joint torques computed from the arm F/T sensor: tFT• joint torques estimated thought the additional F/T sensor located

at the end effector: te=JTwe• joint torques predicted by the arm model (no external forces): tm

Page 28: Talk by Giorgio Metta

the robot skin

6/25/2015 29

capa

cito

r

electrodes: etched on a flexible PCBparameters: shape, folding, etc.

soft material: e.g. siliconeparameters: dielectric constant, mechanical stiffness, etc.

ground plane: e.g. conductive fabricparameters: mechanical properties, impedance, etc.

Page 29: Talk by Giorgio Metta

6/25/2015 30

principle

lots of sensing points

structure of the skin

Page 30: Talk by Giorgio Metta

tests of various materials

6/25/2015 31

0 2 4 6 8 10 12 14 16 180

20

40

60

80

100

120

LC [kPa]

C

[bit]

Soma Foama HardPDMSSoma Foama SoftNeoprene2mmSpongeRubberLycraNeopreneGrid2mmNeoGridNeobulkLycraNeoGridNeobulkLycra2Neoprene2mmLycraNeopreneGrid3mm

Others (discarded)

Page 31: Talk by Giorgio Metta

latest implementation

6/25/2015 32

advantages:• good performance: gluing is made with industrial machines, no hysteresis due to glue• production: automatic and reliable• mounting and replacing is easy, easy ground connection • protective layer can be of different materials increase reliability• customizations: surface can be printed

Page 32: Talk by Giorgio Metta

6/25/2015 33

Page 33: Talk by Giorgio Metta

skin calibration

6/25/2015 34

performed manually by poking the robot with a tool

works iteratively with different datasets taken in different robot positions

A. Del Prete, S. Denei, L. Natale, F. Mastrogiovanni, F. Nori, G. Cannata, and G. Metta. “Skin spatial calibration using force/torque measurements”, in Intelligent Robots and Systems (IROS), 2011

Page 34: Talk by Giorgio Metta

6/25/2015 35

Page 35: Talk by Giorgio Metta

6/25/2015 36

Page 36: Talk by Giorgio Metta

6/25/2015 37

Page 37: Talk by Giorgio Metta

6/25/2015 38

project CoDyCo, Nori et al.

Page 38: Talk by Giorgio Metta

floating base robots

6/25/2015 39

Page 39: Talk by Giorgio Metta

6/25/2015 40

Page 40: Talk by Giorgio Metta

6/25/2015 41

Page 41: Talk by Giorgio Metta

6/25/2015 42

Page 42: Talk by Giorgio Metta

6/25/2015 43

Page 43: Talk by Giorgio Metta

point to point movements

6/25/2015 44

Page 44: Talk by Giorgio Metta

ipopt

6/25/2015 45

• quick convergence (<20ms)• scalability• singularities and joints bound handling• tasks hierarchy• complex constraints

. .

• merges joint and Cartesian space trajectories

min,

12

. . ∙

Page 45: Talk by Giorgio Metta

6/25/2015 46

Page 46: Talk by Giorgio Metta

6/25/2015 47

Page 47: Talk by Giorgio Metta

6/25/2015 48

Page 48: Talk by Giorgio Metta

6/25/2015 49

Please put those into the dishwashing

machine

Could you please help me with the

TV set?

The iCub puts the plates into the dishwashing machine

Trueswell, J. C., & Gleitman, L. R. (2007) Learning to parse and its implications for language acquisition,in G. Gaskell (ed.) Oxford Handbook of Psycholing. Oxford: Oxford Univ. Press.

Page 49: Talk by Giorgio Metta

6/25/2015 50

The iCub puts the plates into the dishwashing machine

actions objects tools

Page 50: Talk by Giorgio Metta

6/25/2015 51

actions

learning actions

recognizing actions

objects

learning objects

recognizing objects

tools

learning tools

using tools

lear

nus

e

Page 51: Talk by Giorgio Metta

6/25/2015 52

Ranked 2nd at Microsoft Kinect Demonstration Competition, CVPR 2012 Providence, Rhode Island

Page 52: Talk by Giorgio Metta

object recognition

6/25/2015 53

self-supervised strategies

kinematics motion

Human Robot Interaction is a new and natural application for visual recognitionIn robotics settings strong cues are often available, therefore object detectors can be avoidedRecognition as tool for complex tasks: grasp, manipulation, affordances, pose

S.R. Fanello, C. Ciliberto, L. Natale, G. Metta – Weakly Supervised Strategies for Natural Object Recognition in Robotics, ICRA 2013C. Ciliberto, S.R. Fanello, M. Santoro, L. Natale, G. Metta, L. Rosasco - On the Impact of Learning Hierarchical Representations for Visual Recognition in Robotics, IROS 2013

Page 53: Talk by Giorgio Metta

6/25/2015 54

Page 54: Talk by Giorgio Metta

dataset

6/25/2015 55

Page 55: Talk by Giorgio Metta

iCubWorld dataset (2.0)

6/25/2015 56

• Growing dataset collecting images from a real robotic setting• Provide the community with a tool for benchmarking visual recognition systems in robotics• 28 Objects, 7 categories, 4 sessions of acquisition (four different days)• 11Hz acquisition frequency.• ~50K Images http://www.iit.it/en/projects/data-sets.html

Page 56: Talk by Giorgio Metta

methods

6/25/2015 57

Page 57: Talk by Giorgio Metta

methods

6/25/2015 58

Sparse Coding [yang et al. ’09]Learned on iCubWorldSparse Coding [yang et al. ’09]Learned on iCubWorld

Overfeat [sermanet et al. ’14]Learned on ImagenetOverfeat [sermanet et al. ’14]Learned on Imagenet

Page 58: Talk by Giorgio Metta

some questions• Scalability. How do iCub recognition capability

decrease as we add more objects to distinguish?• Can we use assumptions on physical continuity to

make recognition more stable?• Incremental Learning. How does learning during

multiple sessions affect the system recognition skills?

• Generalization. How well does the system recognize objects “seen” under different settings?

6/25/2015 59

Page 59: Talk by Giorgio Metta

first results

6/25/2015 60

We started by addressing instance recognition

Page 60: Talk by Giorgio Metta

performance wrt # of objects

6/25/2015 61

Page 61: Talk by Giorgio Metta

exploiting continuity in time

6/25/2015 62

Page 62: Talk by Giorgio Metta

incremental learning

6/25/2015 63

• Present: test on current day• Causal: test on current and

past days• Future: test on future days

(current not included)• Independent: train & test on

current day only

Cumulative learning on the 4 days of acquisition. Tested on:

1 2 3 4

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

day

accu

racy

(avg

. ove

r cla

sses

)

OF presentOF causalOF futureOF Independent

Page 63: Talk by Giorgio Metta

what about a week?

6/25/2015 64

1 2 3 4 5 6 7

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

day

accu

racy

(avg

. ove

r cla

sses

)

OF presentOF causalOF futureOF Independent

?

Page 64: Talk by Giorgio Metta

… or a month?

6/25/2015 65

1 6 11 16 21 26 30

0.65

0.7

0.75

0.8

0.85

0.9

0.95

1

day

accu

racy

(avg

. ove

r cla

sses

)

OF presentOF causalOF futureOF Independent

??

Page 65: Talk by Giorgio Metta

6/25/2015 66

Page 66: Talk by Giorgio Metta

6/25/2015 67

Page 67: Talk by Giorgio Metta

Experiments on affordances

6/25/2015 68

Page 68: Talk by Giorgio Metta

Experiments on affordances

6/25/2015 69

Page 69: Talk by Giorgio Metta

Experiments on affordances

6/25/2015 70

Page 70: Talk by Giorgio Metta

Experiments on affordances

6/25/2015 71

Page 71: Talk by Giorgio Metta

6/25/2015 72

Page 72: Talk by Giorgio Metta

3D vision for grasping

6/25/2015 73

Input Segmentation Disparity

Page 73: Talk by Giorgio Metta

grasping

6/25/2015 74

Gori,I; Pattacini, U; Tikhanoff, V; Metta G; (submitted 2013) Ranking the Good Points: A Comprehensive Method for Humanoid Robots to Grasp Unknown Objects 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS 2013)

point cloud from stereominimum bounding box

segmentationsurface extraction

grasp points from curvature+ bias (task dependent)

grasp selection from experience

Page 74: Talk by Giorgio Metta

6/25/2015 75

Page 75: Talk by Giorgio Metta

force reconstruction

6/25/2015 76

Page 76: Talk by Giorgio Metta

raw data

6/25/2015 77

Page 77: Talk by Giorgio Metta

GP approximation

6/25/2015 78

Page 78: Talk by Giorgio Metta

6/25/2015 79

Page 79: Talk by Giorgio Metta

6/25/2015 81

from: Fogassi L., Gallese V., Fadiga L., Luppino G., Matelli M., Rizzolatti G. Coding of peripersonal space in inferior premotor cortex (area F4). Journal of Neurophysiology 76 (1) 1996.

From: Graziano 1999

From: Graziano et al. 2006

Page 80: Talk by Giorgio Metta

spinal reflexes

6/25/2015 82

walking behavior: cat rehabilitated to walkafter complete spinal cord transection

wiping reflex: an irritating stimuluselicits a wiping movement preciselydirected at the stimulus location

from: Poppele, R., & Bosco, G. (2003). Sophisticated spinal contributions to motor control. Trends in Neurosciences, 26(5), 269-276.

Page 81: Talk by Giorgio Metta

visuo-tactile fusion

6/25/2015 83

Page 82: Talk by Giorgio Metta

double touch

6/25/2015 84

From two fixed-base chain to a single floating-base serial chain 12 dof

Page 83: Talk by Giorgio Metta

6/25/2015 85

Page 84: Talk by Giorgio Metta

6/25/2015 86

Page 85: Talk by Giorgio Metta

receptive fields• Receptive field: a cone that extends up to 0.2m and angle of 40

6/25/2015 87

Page 86: Talk by Giorgio Metta

single taxel model

6/25/2015 88

Page 87: Talk by Giorgio Metta

no noise

6/25/2015 89

Page 88: Talk by Giorgio Metta

noisy data

6/25/2015 90

Page 89: Talk by Giorgio Metta

with double touch

6/25/2015 91

Page 90: Talk by Giorgio Metta

visual tracker

6/25/2015 92

Page 91: Talk by Giorgio Metta

external stimulation

6/25/2015 93

Page 92: Talk by Giorgio Metta

6/25/2015 94

Page 93: Talk by Giorgio Metta

extending peripersonal space

6/25/2015 95

Page 94: Talk by Giorgio Metta

6/25/2015 96

Page 95: Talk by Giorgio Metta

6/25/2015 97

Page 96: Talk by Giorgio Metta

6/25/2015 98

Page 97: Talk by Giorgio Metta

what future?

6/25/2015 99

iCub2.0

iCub3.0

now the future?

iCub new tech

Page 98: Talk by Giorgio Metta

6/25/2015 100

Page 99: Talk by Giorgio Metta

6/25/2015 101

Page 100: Talk by Giorgio Metta

6/25/2015 102

“How old are you?” she wanted to know.

“Thirty-two,” I said.

“Then you don’t remember a world without robots. There was a time when humanityfaced the universe alone and without a friend. Now he has creatures to help him;stronger creatures than himself, more faithful, more useful, and absolutely devoted tohim. Mankind is no longer alone. Have you ever thought of it that way?”

Page 101: Talk by Giorgio Metta

external funding

6/25/2015 103

– RobotCub, grant FP6-004370,http://www.robotcub.org

– CHRIS, grant FP7-215805, http://www.chrisfp7.eu

– ITALK, grant FP7-214668, http://italkproject.org

– Robotdoc, grant FP7-ITN-235065http://www.robotdoc.org

– Roboskin, grant FP7-231500http://www.roboskin.eu

– eMorph, grant FP7-231467http://www.emorph.eu

– Poeticon, grant FP7-215843http://www.poeticon.eu

• more information: http://www.iCub.org

com

plet

edpr

ojec

ts

– Poeticon++, grant FP7-288382http://www.poeticon.eu

– Xperience, grant FP7-270273http://www.xperience.org

– EFAA, grant FP7-270490http://efaa.upf.edu/

– Codyco, grant FP7-600716http://www.codyco.eu

– Tacman, grant FP7-610967– Wysiwyd, grant FP7-612139– Walk-man, grant FP7-611832– Koroibot, grant FP7-611909

newprojects