C-02

平成２２年度

情報処理学会関西支部 支部大会

Analysis of Tactile Instructions Used in the Interaction
with a Humanoid Robot
Fransiska Basoeki∗

Fabio DallaLibera†

Takashi Minato‡

Hiroshi Ishiguro∗ ‡Abstract
Touch can be an intuitive mean of communication
to teach motions to humanoid robots. However, theway inexperienced users use touch to communicate
was not suﬃciently investigated. In this work weanalyze how inexperienced users employ tactile instructions for teaching.
1

Introduction
Humanoid robots are increasingly becoming popular and more people are using it either for hobby orresearch or even for advertisement. In order to develop motions for these robots, users usually needto specify the positions the robot should assumeduring the movement. This is mostly done by setting each motor’s target position using sliders in acontrol interface 13) . A typical interface for this isshown in ﬁgure 1. Motions are developed by utilizing keyframes, ie. important points in between
smooth transitions of a movement. In other terms,
the user needs to specify the complete robot posture
for a set of keyframes, the sequence of which is theninterpolated. It becomes necessary for the user todecide the right joints, the right directions and theright angles to move in order to obtain the desired
posture. Other, more advanced methods such as motion capture and retargeting were presented 8) , butthey are often laborious and require special devices
which demand high costs.
Among many ways of communication between humans, touch is an intuitive way of human-humaninteraction. Just by touching, various information,such as perceptions, thoughts, or feelings, are able
to be conveyed to others 5, 2) . Touch is also often
used by instructors in sport or dance classes to adjust the student’s posture or motion 12) .
As how touch provides an intuitive way of communication between humans, it can also be an attractive
way to interact with robots. There have been someresearches on implementing tactile sensing on robots
as a way to interact with humans 10) , particularly on
robot manipulators 3) . Kinesthetic demonstration
was largely employed with humanoid robots as well,for instance, teaching a robot some arm movementsof a manipulation task 4) .
Users have their own image in their mind of how∗†‡

Osaka University
Padova University
Asada Project, ERATO, JST

Fig.1 A typical slider interface. The angle of eachjoint is directly controlled by operating a slider.
robot: standing

leg: backwards

robot: knee bent

knee: bend more

Fig.2 Diﬀerent touch meaning in diﬀerent contexts.
The same touch corresponds to two diﬀerent intentions depending on the context.

they want the robot to move, and they can try tocommunicate it through touch. In order for the communication to be successful the robot must be able
to correlate these touches to motor rotations. Theinterpretation is generally a complex problem. For
instance, the meaning of the same touches could differ depending on the context they were given at. As
an example, a touch on the upper part of the leg
when the robot is standing could mean that the robot
must bend the leg backwards, while when the robot
is squatting, the same touch on the leg could meanthat the robot should bend its knee further. This is
illustrated in ﬁgure 2.
Apart from the robot’s context, the users’ individual ways of touching could result in ambiguities in
the interpretation of the meaning of tactile instructions. To develop a better system for the interpre-tation of the meaning of touches we need to investigate how inexperienced users use touch to provide
teaching instructions. Once the basic teaching policies employed by humans is understood, it will bepossible to provide the robot with intuitive touch interpretation algorithms.
We can expect the way of teaching to be dependent on the task, ie. the motion being taught. We
can also imagine diﬀerent users to use diﬀerent levelof abstraction in providing their will. For instanceusers familiar with simple devices could ﬁnd natural and eﬀective to adhere to a strict association between touch sensors and changes in the joint anglesof the robot. Conversely other users could expect
the robot to execute a high number of related motor changes given a single tactile instruction. This
user dependency in the touch instruction interpretation does not anyway mean that no recurring featurein the mapping between touch instructions and theirinterpretation is to be expected. In fact, it would be
unlikely that the users ﬁnd natural to use completely
arbitrary mappings, as it can be understood observing that people are able to use touch to communicate
with other people.
This paper presents a preliminary study on a single subject that shows how analysis of tactile instructions can be used to provide insights on the featuresof the mapping between touches and their meaning.
In the experiment conducted, the user interacts witha humanoid robot and develops a motion using exclusively touch instructions. The robot responds tothe user’s touches by using a database of examplesof the mapping between touch instructions and joint
movements. This database is initially empty and therobot has no knowledge on the meaning of tactile
instructions. However, during motion development,
the user can teach the robot the meaning of touch instructions by direct manipulation. Once a new meaning is taught, this is stored in the database and used
for touch interpretation.
The data collected in our experiment support the
hypothesis that the mapping between tactile sensors and the movement that should be executed is
not straightforward. Interestingly, however, the data
provided by the subject appear to suggest that theway the robot should respond to touch instructions
can be described using a low-dimensional subspace ofthe joint space. As widely known 6, 9) motions can often be described in a low-dimensional subspace of thejoint space as well. Interestingly, in our case study,
the low-dimensional subspace used for describing the
motions can be used to describe the movements thatshould be performed in response to tactile instructions as well. This indicates the possibility of employing knowledge on the motion being developed(for instance the keyframes provided) to improve theinterpretation of tactile instructions.
The details of the interface and the algorithms
used for exploiting the database of examples will
be outlined in section 2 and section 3 respectively.
The experiment and the results obtained will be discussed in section 4. Finally, section 5 will conclude

Correct
estimationWrongestimation

Touchinstruction

Touchinterpretation

Interpretation
evaluation

Teach meaningof touch

Motionmodification

Fig.3 Schema of the motion development. Users
touch the robot to modify the posture of a
keyframe. The robot interprets the meaning of
the tactile instruction and modiﬁes its postureaccordingly. Users then evaluate the motor position change. If the movement corresponds totheir intention then they will continue to develop the motion, otherwise they will teach therobot the meaning of the touch instruction.

(a) Touch interface

Fig.4 The interface for motion development, consisting essentially of a single timeline and buttons for playing and stopping the motion execution.

by proposing future works.
2Interface
Our proposed teaching by touching interface isable to seamlessly switch between two modes,
schematized in ﬁgure 3.
In general, the robot will always be standby in motion development mode, ie. it will wait for the users’
touch patterns and move according to its knowledgeof the touch protocol. By using this mode users areable to create keyframes through the interface shownin ﬁgure 4.
In particular, users select a certain instant of the
motion using a timeline and then, using tactile instructions, they are able to set the posture that the
robot should assume at that time using tactile instructions.
When the robot does not understand the meaning of the touch pattern, or when the robot does not
move according to what the user intended, the operator is able to switch to the second mode, the teaching
the meaning of touch mode.
During this teaching mode, users are able to show
the robot the intended movement by kinesthetic

touch pattern and a context to a joint modiﬁcation isessential. The context elements currently consideredare:• the current robot posture, ie. the position of
the motors, as a diﬀerent posture can create adiﬀerent context (Fig. 2);• the robot’s orientation, estimated from the accelerometer sensors reading, since for instancestanding and lying down can correspond to different contexts;
To produce the mapping, the k-Nearest Neighboralgorithm with k = ∞ is used. During the motion development, the user provides examples of input (touch pattern and context) Ii and output (joint
modiﬁcation vector) Mi . By using the distance in thehigh dimensional space between the system input I∗
and each of the example input Ii , a weighting to get
the output vector M∗ can be obtained. Precisely, denoting by E the number of collected examples, thesystem output is calculated as
Fig.5 Experimental setup. A pedal device, commonly used for racing game, allows users toeasily switch between the “motion developmentmode” and the “teaching the meaning of touch”
mode without having the need to move his handaway from the robot to click a button on the interface.

demonstration, ie. they can move the robot to theposture the robot should have gone by the provided
touch instruction. Expressly, during this mode when
the sensor on both sides (palm and top) of one handare pressed the motors of that arm are switched oﬀ
so that the arm can be moved freely. When the sensors are released, the power will be turned back on
while maintaining the position where the limb was
moved to. Similarly, the motors of each leg can beturned oﬀ by pressing the top and bottom side of thecorresponding foot and the motors of the head canbe powered oﬀ by pushing the front and back sensorsof the head.
When the user is satisﬁed with the change of pose,she or he switches back to the “motion development mode” and the robot stores the association between the touch pattern given at the beginning of
the “teaching the meaning of touch mode” and the
movement shown during the teaching mode.
Figure 5 depicts the experimental setup. The system includes a pedal that allows the user to change
between the two modes, the “motion developmentmode” and the “teaching the meaning of touch”
while keeping touching the robot. Precisely, the“teaching the meaning of touch” is activated when
the pedal is pressed and terminated when the pedal
is released.
3

Algorithm
As introduced before, touch is considered to becontext dependent, therefore a mapping between a

M∗ =

E
∑

ωi M i(1)

i=1

It was observed that using a decreasing functionof the Euclidean distance for the weights gives bad
performance in estimating the desired joint modiﬁcation. Therefore, a diﬀerent weighting function wasdeﬁned. To begin with, touch information shouldhave more importance than the context. For instance, suppose the user taught solely arm motions
and there is no knowledge on the leg. Pushing thesensors on the leg should usually not cause any arm
movements even if the context is very similar to oneof some examples that include arm motions. To avoid
such situations, the weightings for examples which
include pressure of sensors not pressed in the current input I∗ is set to 0, i.e. ωi = 0.
Next, when the pressure of a sensor with force fcorresponds to a single motor joint change, the user
would assume that pushing with less strength would
cause less change in the joint, while, on the opposite, pushing with greater force would correspond toa larger change. However, any system, where theweighting is based on a decreasing function of the
distance between the examples and the current input
would behave diﬀerently. Expressly, when the force
applied to that sensor is diﬀerent from the force f , either greater or smaller, the calculated output would
always result in a smaller angle change.
To solve this problem, the weight ωi can be obtained by deﬁning it as the product of two terms, onethat increases linearly with pressure and one that decreases as the current input I∗ and the i-th example
input Ii diﬀer. More formally, let us deﬁne• Fi [s], the force of the s-th sensors in the i-th
example, where 1 ≤ s ≤ n• Pi , the joint angles of the robot in i-th example,• Oi , the value of the accelerometers along thethree axis, which provide indication on the orientation of the robot in the i-th example,
where 1 ≤ i ≤ E. We then assume analogous deﬁnitions for the current input’s I∗ . The weight ωi isthen calculated as:∨n0if s=1 (Fi [s] > 0) ∧ (F∗ [s] = 0)ωi =α · β otherwisei(a) t=13 s(b) t=17 s(c) t=33 s(d) t=39 s(e) t=52 s(f) t=56 s(g) t=104 s(h) t=109 s(i) t=127 s(j) t=173 s(k) t=175 s(l) t=183 s

i

(2)
where
αi =

∏

F∗ [s] /Fi [s](3)s:Fi [s]>0

βi =
γi =

∑

1
√
1 + γi(4)F ∗ [s]2 + kP∗ − Pi k + kO∗ − Oi k (5)22s:Fi [s]=0Equation 4 was derived based on practical experiments where this was observed to give the most intuitive behavior among several decreasing functions
that were tested. Further details on the algorithm
can be found in 1) .
4

Experiment and Results
In the experiment, the user was asked to teach ahumanoid robot a motion using the proposed touch
interface. The motion is based on the ﬁrst half of
Algorithm Exercise (アルゴリズム体操). Algorithm
Exercise is a body exercise aimed at small children∗ .
The motion involves changing facing direction andsimple hand movements. The main keyframes of the
motion are shown in ﬁgure 6. This motion was chosen because on the one hand it is complex enough torequire the user to teach a high number of diﬀerent
postures and on the other hand it is simple from theview point of robot balancing.
The robot employed for the experiment is M3Neony, a 22 degrees of freedom humanoid robot (seeﬁgure 7) equipped with 92 tactile sensors (see ﬁgure 8), accelerometers along three axis and two gyroscopes† . The experiment setup is as shown in ﬁgure 5.
The user is this case study is a 23 year old Japaneseright handed male with no experience on the teaching by touching interfaces. During the motion development the user provided the meaning of 156 tactile instructions. In total the user touched the robot
672 times. Once taught, multiple instructions canbe reused simultaneously, formally speaking, several
weights ωi can be non-zero. Data show that theuser exploited this fact, in fact the total number oftouches instructions provided to the robot, counting
the superposition of n tactile instructions as n, is1322.

∗ Videois available at http://robotics.dei.unipd.it/~fabiodl/video.php?algo (Motion developed by touch)† Further details on this robotic platform can be foundin 7) .

Fig.6 Robot’s Algorithm Exercise movement.
Shown time is the robot’s actual movementtiming in seconds. Robot’s motion time is
5 times slower than the actual Algorithm
Exercise timing.

Neck
1
yaw
Neck
pitch

0

shoulder2 Right
pitch

Left shoulder
3pitch

4 Right shoulder

Left shoulder
5
roll

roll

Right elbow

6 rollLeft elbow
roll

8

Right hipyaw

Left hipyaw

12

Right hippitch

Left hip13
pitch

Right hip

10 roll

9

Left hip11roll

14 pitch 1

Right knee

Left knee
pitch 1

15

Right knee
16 pitch 2

Left knee
pitch 217

20 Right ankle
rollLeft ankle 21
roll

ankle
18 Right
pitch

Left ankle 19
pitch

Fig.7 Diagram of the degrees of freedom of the robot.

7

84

86
79

75

81
78

0.8

36

48

71

38

70

74

50

39
43

18
53

46
21 20 5423

2

25 26 7

8

27

6

90
45

31

0.2

15

11

32

28

14

10

17

0.1

16

29

30

0.4

0.3

41

9

33

34

0.5

42

3

56

24

44
0

1

57
22

52

62
59

54

91

0.6

40
60 58

73
72

55
19

61

68

ratio

49
65 63
64

0.7

37
69

51

88

77

47
67

meaning taught/instructions
meaning taugh/touches
meaning taught

0.9

87
80

35

1

85

82

76

89

66

touch meaning provision over time

83

13

12

Fig.8 Diagram of the tactile sensors placement

As explained before, when a tactile instruction is
not understood the user can teach the robot themeaning of such instruction for further use. In thisway the robot’s mapping is enriched and reﬁned continuously. Figure 9 shows that the user needs toteach less and less instructions over time because hecan eﬀectively reuse the ones already taught. In particular, the ratio between the touch meanings taught
and the number of touches provided is displayed. As
previously stated, since a single touch can combine
several taught instructions, the ratio between thenumber of touch meanings taught and the numberof instructions provided decreases even faster.
In order to study the mapping between touch sensors and motor joint changes, we analyzed the examples of mapping between touch instructions andmotor posture changes taught by the user. In particular we calculated the mutual information between
each of the sensors and the rotation given for eachof the motors. To compute the mutual information,
we initially discretized the data. Each sensor information was set to 0 if its value was less than 20% of
the maximum force measurable by the sensor and 1
otherwise. Each motor change information was set
to 0 if the user moved the motor less than 6 degrees,to -1 if the user moved the motor more than 6 degrees in clockwise direction and +1 if the user moved
the motor in counter clockwise direction more than
6 degrees.
Let us denote the probability that the s-th sensor
value to be σ as ps (σ). The probability ps (σ) was estimated from the collected as ps (σ) = |Fi [s] = σ| /E,
where E is the number of provided examples and|Fi [s] = σ| denotes the cardinality of the set of collected examples where the sensor s assumed value
σ. Due to our discretization σ can assume only
the values 0 and 1. Similarly let us denote bypm (µ) the probability that a touch instruction corresponds to a change in the position of the m-th mo-

0

0

100

200

300
400
touch number

500

600

700

Fig.9 Touch meaning provision over time. Red
crosses indicate when the meaning of the touch
was taught to the robot. The continuous blueline indicates the ratio between the touch meanings taught and the number of touches applied
to the robot. The dashed green line indicatesthe ratio between the number of touch meanings
taught and the number of touch instructions
given. The initial strong decrease and subsequent increase of the ratios is due to the factthat the user ﬁrstly taught the meaning of atouch instruction, reused it several times andthen provided the meaning of a new set of tactile instructions.

tor of µ. Formally we estimated pm (µ) by setting
pm (µ) = |Mi [m] = σ| /E, where Mi [m] denotes the
position change for the m-th motor provided in thei-th example. Finally let us denote by ps,m (σ, µ) the
joint probability of the s-th sensor value being σ andthe change of the m-th motor being µ for the same
example. The mutual information between a sensors, 1 ≤ s ≤ 92, and the change of the position of a
motor m, 1 ≤ m ≤ 22, was computed asIˆs,m =∑(∑

ps,m (σ, µ) · log2σ∈{0,1} µ∈{−1,0,1}

ps,m (σ, µ)ps (σ) · pm (µ))

The normalized mutual information Is,m was thencomputed considering the entropies 11) , expressly∑
Hs = −ps (σ) · log2 ps (σ)σ∈{0,1}

Hm = −∑

pm (µ) · log2 pm (µ)µ∈{−1,0,1}

Is,m = √Iˆs,m
H s · Hm

Figure 10 illustrates the results. We notice thatmainly the user touched the sensors on a limb toq (e) = Me −

q
∑
i=1

MeT vq vq∞

Figure 12 reports the reconstruction error for different settings of q, 1 ≤ q ≤ 22, averaged over all
the examples e = 1 . . . E. For comparison, the error
obtained by applying PCA on the whole set of examples, ie. M1 . . . ME is also reported. We noticethat the diﬀerence between the reconstruction error
obtained using just the ﬁrst e − 1 examples is notmuch higher than the one obtained using the wholes59.lSideC
s64.rSideC
s73.lRibs84.HeadtopC
s86.HeadtopR
s49.rArmupperF
s51.rArmupperB
s52.rHandtopB
s53.rHandtopT
s56.rHandpalmBs57.rHandpalmT
s38.lArmupperF
s40.lArmupperB
s41.lHandtopB
s42.lHandtopT
s45.lHandpalmB
s46.lHandpalmT
s18.rHipF
s19.rHipB
s20.rLegupperL
s22.rLegupperR
s23.rKnees24.rLeglowerRs30.rFootpalmBL
s31.rAnkleB
s32.rFootpalmFR
s33.rFoottopR
s00.lHipB
s01.lHipF
s02.lKnees03.lLegupperLs07.lLeglowerRs09.lLeglowerLs10.lFootpalmFL
s12.lFootpalmBL
s14.lFootpalmFR
s15.lFoottopR
s17.lFootpalmBR

2
22
5 4
12
8
11 8
11

4
32

2

5
22
2 2
34 4
2 23

0.36
0.32

3
5

0.28
77
44
54
33

0.24
4

5435
9
6 6
6 7
21
2 222
17
2
5
5
4
11 9

4

0.20
0.16
0.12

9 7 12 9 9
3
8
68
10
7 9
15 15
12
10 1515 11172152217 14

0.08
0.04

m00.neckP
m01.neckY
m02.rShoulderP
m03.rShoulderR
m04.rElbowR
m05.lShoulderP
m06.lShoulderR
m07.lElbowR
m08.rHipY
m09.rHipR
m10.rHipP
m11.rKneeUP
m12.rKneeLP
m13.rAnkeP
m14.rAnkleR
m15.lHipY
m16.lHipR
m17.lHipP
m18.lKneeUP
m19.lKneeLP
m20.lAnkleP
m21.lAnkleR

move motors on the same limb. However, there is no
one to one correspondence between joints and sensors. Several sensors are used to actuate the same
joint and conversely the same sensor actuates several joints. We can observe also correlation between
the sensors on the top of the head and the leg motors. Direct inspection of the touch data show that
this was done to teach the robot to squat when it istouched on the head. Even more interestingly, we cannotice a correlation between the sensors places on theside of the robot’s body and the corresponding leg.
Direct inspection shows that in these cases the user
employed the sensors on the side to tell the robot torotate the corresponding leg and bring the knee outwards on that side (see ﬁgures 6(c) and 6(e)). Correlation between the sensors on the upper part of theleft leg (s00.lHipB and s01.lHipF ) and motors of
the right leg (m10.rHipP ) also emerges, since often
the two legs are moved together in order to maintainboth feet parallel to the ground.
Multiple motors are usually moved with a single
touch instructions. It is hence interesting to observe
if there are consistencies in the relationship between
the motor changes of diﬀerent motors in the set ofchanges provided as meaning of touch instructions.
Computing the mutual information between couplesof motors we obtained the data reported in ﬁgure 11.
We notice a very strong correlation between motors that belong to the same limb. Correlation between the two legs is also observable, in particularbetween the pitch joints of the hips (m10.rHipP and
m17.lHipP ) and of the ankles (m13.rAnkeP and
m20.lAnkleP ).
This high correlations suggest that the motorchanges given by the user could actually be locatedin a low-dimensional manifold of the 22-dimensional
motor space. This fact could be exploited in the estimation of meaning of touch instructions. For simplicity we focused on linear subspaces as possible manifolds and we analyzed how much information is lostwhen projecting the motor change given for the e-th
example on a low-dimensional subspace constructedusing the ﬁrst e − 1 touch examples. More precisely
we took the motor changes speciﬁed in the ﬁrst e − 1examples M1 . . . Me−1 , subtracted the mean and applied Principal Component Analysis (PCA). We thenprojected the e-th example motor change Me on thesubspace deﬁned by the ﬁrst q principal components
v1 . . . vq , and observed the inﬁnity norm of the reconstruction error:

Fig.10 Mutual information between sensors andmotor angle change. Each row represents a sensor and each column a motor. The color of theintersection indicates the normalized mutual information value. For clarity only mutual information values higher than 0.01 are indicated,and only sensors that have mutual information
value higher than 0.01 with at least one motor are reported. The number inside each cell
indicates the number of touches for which thecorresponding sensor was pressed and the corresponding motor was moved. Diﬀerent colorsof the labels are used to indicate diﬀerent robot
parts. The areas of the map that correspond tosensor and motors of the same robot part arehighlighted by a rectangle of the correspondingcolor.

data set M1 . . . ME .
As stated in the introduction, it is well known thatfor many tasks the complete movement of the robot
lies on a small subspace as well. It is therefore interesting to analyze whether the subspace where motions can be projected with little errors is related tothe motor changes desired as response of touch instructions. For each of the E examples provided by
the user we collected all the postures that the user
brought the robot to before teaching the Me . For
each of these sets of postures we then subtracted themean and applied PCA to determine the principal
components v̄1 . . . v̄q . The average reconstruction error norm obtained projecting the touch examples Me

reconstruction error over subspaces
50
previous touches
all touches
previosly provided postures45

m00.neckP
m01.neckY
m02.rShoulderP
m03.rShoulderR
m04.rElbowR
m05.lShoulderP
m06.lShoulderR
m07.lElbowR
m08.rHipY
m09.rHipR
m10.rHipP
m11.rKneeUP
m12.rKneeLP
m13.rAnkeP
m14.rAnkleR
m15.lHipY
m16.lHipR
m17.lHipP
m18.lKneeUP
m19.lKneeLP
m20.lAnkleP
m21.lAnkleR

m00.neckP
m01.neckY
m02.rShoulderP
m03.rShoulderR
m04.rElbowR
m05.lShoulderP
m06.lShoulderR
m07.lElbowR
m08.rHipY
m09.rHipR
m10.rHipP
m11.rKneeUP
m12.rKneeLP
m13.rAnkeP
m14.rAnkleR
m15.lHipY
m16.lHipR
m17.lHipP
m18.lKneeUP
m19.lKneeLP
m20.lAnkleP
m21.lAnkleR

0.9
0.8
0.7
0.6

40
average reconstruction error norm [deg]

1.0

35

30

25

20

15

0.5

10

0.4

5

0.3

0

0.2
0.1

1

6

12
dimensions

17

22

Fig.12 Reconstruction error for diﬀerent number ofdimensions of the subspace.

0.0

Fig.11 Mutual information between couples of motors. The color of the intersection indicates thenormalized mutual information value. Diﬀerent colors of the labels are used to indicate different robot parts. The areas of the map that
correspond to motors of the same robot partare highlighted by a dashed square of the corresponding color. High correlations between corresponding joints of the two legs are highlighted
by a white dotted line.

on the subspace of dimension q deﬁned by v̄1 . . . v̄qis also reported in Figure 12. We notice that except
for low values of q (q < 5) the reconstruction error
is comparable to the one of the projection on thesubspaces constructed using the motor change information. These preliminary results, that need more
intensive veriﬁcation, seem to suggest that users tend
to provide desired changes consisting in movementsthat lie in the subspace deﬁned by the motion theywant to develop. This fact could be exploited to improve the touch interpretation given the knowledgeof the frames set by the users during the motion development.
At a ﬁrst glance it might appear very strange thatthe motor angle changes can be projected on a subspace extracted using posture angles. However, it
must be considered that actually the postures canbe thought as a linear combination of motor position changes from the initial, zero position.
The interesting fact is that the user in our casestudy kept the meaning of touch instructions inside
the subspace deﬁned by the motion, and did not essentially provide motor changes in the subspace orthogonal to the space in which the motion lies. In

other terms, the user was requested to develop a
motion, “Algorithm exercise”, and developed it by
deﬁning a set of postures that lie in a certain subspace of the motor space. When setting these postures that realize the task, instead of setting themin a completely free manner using motor changes in
the whole motor space, he restricted his instructions
to movements similar to the ones that compose thetarget motion.
This peculiarity could derive from the fact thatfor the task chosen gestures are more important than
the actual postures taken by the robot. For instance,
imagine the robot task to consist of grasping an object and rising it as high as possible. We can imagine the robot motion to lie on a subspace that makes
the robot arms move vertically. However users would
probably concentrate their instructions in adjusting
the hands distance in order to achieve an adequate
grasp, and would therefore probably provide a highnumber of instructions in a subspace orthogonal tothe one of the motion. Future works will need toinclude the analysis of data from diﬀerent types oftasks in order to verify this hypothesis.
5

Conclusions and Future Work
Touch instructions can provide an intuitive wayof interacting with humanoid robots, at least in theﬁeld of motion developments. In human-human interaction, in fact, it is natural for a coach to use
touch to show trainees how to modify their posture.
However, interpretation of unconstrained touch instructions reveals to be complicated.
A possible approach consists in analyzing thestrategies utilized by humans to naturally express
how they intend to modify a humanoid robot motions, derive general rules and use them to make therobot perform a suitable interpretation of touch instructions. While we can expect user dependencies
in the ways of teaching, it appears likely that users
share some basic features of the mapping between
touch instruction and motion modiﬁcation.

This paper reports a preliminary analysis of thedata provided by a single user. The results show
that, as expected, there is no simple correspondence between tactile instructions and desired motorchanges, and therefore speciﬁc algorithms for interpretation of touch instructions are required. Somegeneral tendencies appear however to emerge evenfrom the analysis of this single case, encouraging further studies on the topic.
Data collected suggest that usually a limb is moved
by touching touch sensors on the same limb, as could
be expected. Interestingly this appears however not
to be true when the users want to convey higher level
behaviors to the robot. In the case considered in thispaper, for instance, the subject touched the head of
the robot to make it squat or touched its side toexpress the desire to turn the leg and bring the knee
outwards.
Further analysis of the collected data show thatusually the posture modiﬁcations desired by theusers lie in a (linear) subspace of the motor space.
Interestingly this subspace seems to be highly correlated to the subspace where the motion itself lies.
This fact suggests us that the keyframes of the motion that the user is developing could be used to improve the estimation of the meaning of touch instructions.
Future works will need to consider a higher number of subjects, to observe whether the ﬁndings ofthis paper can be generalized or are constrained tothe task and the subject of this experiments. Furthermore, other ways of teaching can be expected for
diﬀerent users. For instance we could imagine someusers to provide higher level instructions that map
single tactile patterns to complete whole body “actions”. Conversely we could imagine other users toassume low capabilities for the robot and adopt avery strict mappings between sensors and motors.
References
1) Fabio DallaLibera, Takashi Minato, Ian Fasel, Hiroshi
Ishiguro, Enrico Pagello, and Emanuele Menegatti. A
new paradigm of humanoid robot motion programming
based on touch interpretation. Robotics and Autonomous
Systems, 57(8):846–859, 2008.
2) Tiﬀany Field. Touch. Bradford Books, 2003.

3) G. Grunwald, G. Schreiber, A. Albu-Schﬀer, and
G. Hirzinger. Touch: The direct type of human interaction with a redundand service robot. In Proceedings of the10th IEEE Int. Workshop on Robot and Human Interactive Communication (ROMAN 2001), Bordeaux/Paris,
France, 2001.
4) M. Hersch, F. Guenter, S. Calinon, and A. Billard.
Dynamical system modulation for robot learning via
kinesthetic demonstrations. IEEE Trans. on Robotics,
24(6):1463–1467, 2008.
5) Matthew J. Hertenstein. Touch: Its communicative functions in infancy. Human Development, 45:70–94, 2002.
6) Auke Jan Ijspeert, Jun Nakanishi, and Stefan Schaal.
Learning attractor landscapes for learning motor primitives. In Suzanna Becker, Sebastian Thrun, and Klaus
Obermayer, editors, NIPS, pages 1523–1530. MIT Press,
2002.
7) Takashi Minato, Fabio DallaLibera, Satoshi Yokokawa,
Yutaka Nakamura, Hiroshi Ishiguro, and Emanuele
Menegatti. A baby robot platform for cognitive developmental robotics. In Workshop on ”Synergistic Intelligence” at the 2009 IEEE/RSJ International Conference on Intelligent RObots and Systems (IROS 2009),
St. Louis, USA, 2009.
8) Shinichiro Nakaoka, Atsushi Nakazawa, Kazuhito Yokoi,
Hirohisa Hirukawa, and Katsushi Ikeuchi. Generating
whole body motions for a biped humanoid robot from
captured human dances. In 2003 IEEE International
Conference on Robotics and Automation (ICRA 2003),
pages 3905–3910, Taipei, Taiwan, 2003.
9) Atsushi Nakazawa, Shinichiro Nakaoka, and Katsushi
Ikeuchi. Synthesize stylistic human motion from examples. In 2003 IEEE International Conference on Robotics
and Automation (ICRA 2003), pages 3899–3904, Taipei,
Taiwan, 2003.
10) W. D. Stiehl, L. Lalla, and C. Breazeal. A somatic alphabet approach to sensitive skin for robots. In 2004
IEEE International Conference on Robotics and Automation (ICRA 2004), pages 2865–2870, New Orleans, USA,2004.
11) Alexander Strehl and Joydeep Ghosh. Cluster ensembles— a knowledge reuse framework for combining multiple
partitions. J. Mach. Learn. Res., 3:583–617, 2003.
12) Takahiro Takeda, Yasuhisa Hirata, and Kazuhiro Kosuge.
Hmm-based error recovery of dance step selection fordance partner robot. In 2007 IEEE International Conference on Robotics and Automation (ICRA 2007), pages
1768–1773, Roma, Italy, 2007.
13) Takenori Wama, Masayuki Higuchi, Hajime Sakamoto,and Ryohei Nakatsu. Realization of tai-chi motion using ahumanoid robot. In René Jacquart, editor, IFIP Congress
Topical Sessions, pages 59–64. Kluwer, 2004.