Académique Documents
Professionnel Documents
Culture Documents
1.1 Minimum-Jerk
The minimum-jerk prin
iple was
onsidered be
ause hand paths were often
found to be straight in extrinsi
oordinates, and the velo
ity prole of the
hand was found to be bell-shaped.
The minimum-jerk prin
iple states that the following fun
tion of extrinsi
oordinates is minimized:
8 !2 ! 9
Z tf < d3 x d3 y 2 =
CJ = + dt (1)
0 : dt3 dt3 ;
By minimizing the fun
tion in equation (1) a hand path in 2D is obtained,
for example, a movement of the hand a
ross a table surfa
e as in a writing
movement. The parameter tf spe
ies the duration of the movement.
It
an be shown that the following fun
tions satisfy the
riterium in equa-
tion (1), when the movement is assumed to start at position xs ; ys and to
end at posision xe ; ye, subje
t to the
onstraint that the velo
ity of the hand
is zero in the begin and the end position.
0 !3 !4 !5 1
t t t
xJ = xs + (xs xe ) 10 + 15 6 A (2)
tf tf tf
0 !3 !4 !5 1
t t t
y J = y s + (y s xe ) 10 + 15 6 A (3)
tf tf tf
As is shown in Figure 1 the minimum-jerk prin
iple results in straight
hand paths and bell-shaped velo
ity proles.
In the 2D
ase the arm posture
an be
omputed from the hand position,
if two joints are
onsidered, as is shown in Figure 2.
The joint angles relate to the lo
ation of the nger tip by the following
equations:
1
10 0.5
9
0.4
Horizontal speed
Vertical position
8
7 0.3
6 0.2
5
0.1
4
3 0
4 6 8 10 0 10 20 30 40
Horizontal position Time
Minimum jerk
10 Minimum angular jerk
0
0 5 10 15
Arm posture min−angular jerk
Figuur 1: Hand path and velo
ity prole predi
tions by minimum-jerk and
minimum-angular jerk. The posture of the arm at the starting and ending
position for the minimum-angular jerk were obtained by means of a grid
sear
h. The lower left panel shows the arm postures for the minimum-angular
jerk prin
iple.
finger tip
L2
x−axis beta
y−axis
alfa
L1
x = L1
os + L2
os( + ) (4)
y = L1 sin + L2 sin( + ) (5)
The hand position equation
an easily be extended to the 3D
ase. The
fun
tion to be minimized
hanges into:
2
8 !2 !2 ! 9
Z tf < d3 z 2 =
d3 x d3 y
CJ = + + dt (6)
0 : dt3 dt3 dt3 ;
whi
h results in an additional equation for the z-dimension:
0 !3 !4 !5 1
t t t
z J = z s + (z s z e ) 10 + 15 6 A (7)
tf tf tf
The path along whi
h the hand moves remains straight and all the velo
ity
proles for all three dimensions are bell-shaped. However,
omputing the arm
posture from the hand path be
omes a problem. If the arm is extended only
targets at the end of the arm
an be rea
hed, whi
h are all lo
ated on the
surfa
e of a sphere with a radius equal to the length of the arm. Now
onsider
the task in whi
h the parti
ipant is asked to point with his arm extended in
the dire
tion of a target. The arm angles involved in this task are illustrated
in Figure 3, in whi
h the torsion of the forearm is assumed to be equal to
the torsion of the upper arm.
Top View
Side View
torsion
(gamma)
z−axis
alpha
x−axis
y−axis
x−axis
beta
By asking to point in a
ertain dire
tion, instead of tou
hing a target, the
target lo
ations
an be represented by two
oordinates. The arm illustrated
in Figure 3 has three possible joint rotations. The pointing task asks to sele
t
the appropriate and angle, where the torsion
an, in theory, take any
value. The question is whether the minimum-jerk model
onstrains the angle
in any way. This is not the
ase. The tip of the nger will travel along
the shortest path on the surfa
e with a radius equal to the arm length. The
amount of torsion of the arm is not of importan
e to the lo
ation of the nger
3
tip. Spe
ifying a start or an end posture won't
onstrain the posture of the
arm during the movement a
ording to the minimum-jerk model. The model
allows for torsion
hanges during the movement, sin
e these torsion
hanges
don't ae
t the jerk as dened in equation (6). Only by spe
ifying a fun
tion
for the torsion will allow for a unique predi
tion of the arm movement by the
minimum-jerk prin
iple.
Instead of pointing movements one might want to
onsider tou
hing move-
ments in 3D instead. To be able to rea
h ea
h point in spa
e the arm should
be allowed to bend at the elbow joint. The situation with a bent elbow is
illustrated in Figure 4.
Top View
Side View
delta
z−axis
x−axis
alpha
x−axis
y−axis
torsion delta
(gamma)
beta
1.2 Minimum-Angular-Jerk
In the arti
le by Wada et al. (2001, Neural Networks) a prin
iple simi-
lar to the minimum-jerk is des
ribed. The important dieren
e between
minimum-jerk and minimum-angular-jerk, is the
oordinate spa
e in whi
h
4
arm movements are assumed to be planned. The minimum-jerk prin
iple as-
sumed that arm movements are planned in extrinsi
oordinates, whereas the
minimum-angular-jerk prin
iple assumed arm movement planning in intrinsi
joint
oordinates.
For the situation illustrated in Figure 2, the minimum-angular-jerk prin-
iple states that the following fun
tion is minimized:
8 !2 !2 9
Z tf < =
d 3
d
3
CAJ = + dt (8)
0 : dt3 dt3 ;
The solution of this minimization problem is obtained in a similar to the
solution for the minimum-jerk
riterium:
0 !3 !4 !5 1
t t t
AJ = s + (s e) 10 + 15 6 A (9)
tf tf tf
0 !3 !4 !5 1
t t t
AJ = s + ( s e) 10 + 15 6 A (10)
tf tf tf
As shown in Figure 1 the path of the hand predi
ted by the minimum-
angular-jerk
riterium is slightly
urved.
For 3D pointing movements with a extended arm the minimum-angular-
jerk prin
iple predi
ts that the torsion won't
hange during the movement,
be
ause any
hange in torsion will in
rease the angular-jerk. A sequen
e of
movements whi
h demonstrates that people are not likely to x the amount
of torsion during movements, is illustrated in Figure 5. In the drawings the
square at the end of the subje
t shows the orientation of the hand. First
the subje
t rotates his arm in the beta-angle dire
tion shown in Figure 3.
Then a rotation around the alpha-angle orientation dire
tion is made. Finally
an addition beta-angle dire
tion orientation is made, resulting in a dierent
orientation of the hand. If the sequen
e in Figure 5 is repeated several times,
torsion rotations are very likely due to restri
tions on the angles a
ross whi
h
joints
an be rotated.
By
onstraining the arm posture at the beginning and the end of the
movement, tou
hing movements
an be predi
ted by the minimum-angular-
jerk model. For ea
h joint angle a separate equation is obtained:
0 !3 !4 !5 1
t t t
iAJ = is + (is ie ) 10 + 15 6 A (11)
tf tf tf
(12)
5
2 3 4
1
6
Alpha Beta
0 0
−5 −5
−10
−10
−15
10 0 0
10 −2
5 −5 −4
−10 −6
0 0 −8
Gamma Delta
0 0
−5
−10
−10
−20
10 10
0 0
−2 −2
5 −4 5
−6 −4
0 −8 0
0 0.2
Speed x−direction
−5
0.15
z
−10
0.1
−15
20 0.05
0
10
−5
0
y 0 −10 x 0 10 20 30 40
Time
0.25 0.07
0.06
0.2
Speed y−direction
Speed z−direction
0.05
0.15 0.04
0.1 0.03
0.02
0.05
0.01
0 0
0 10 20 30 40 0 10 20 30 40
Time Time
to the nal posture. By means of a simplex sear
h the minimum is sear
hed
for of the fun
tion:
q
C AJep = a (dx2 + dy 2 + dz 2 ) +
Tf n
X o
d3 i2 + d3 i2 + d3
i2 + d3 Æi2 (19)
i=0
7
in whi
h a
an be sele
ted to vary the importan
e of the distan
e to the
target in the sear
h for the end posture. The notation d3 indi
ates that three
times the dieren
e with the previous values has to be taken (dis
rete version
of the
ontinuous
ase shown in equation (8)). A path sele
ted on the basis
of the simplex sear
h of the minimum of the fun
tion in equation (19) with
a set to 10, is shown in Figure 8.
−2
−4
−6
−8
−10
0
−2
8
−4
6
−6
4
−8
2 −10
0
A problem with the algorithm is that not always the same end posture is
obtained: The sear
h spa
e has several lo
al minima. This is illustrated in
Figure 9. This gure was generated by running the optimalization pro
edure
100 times, and by plotting the nal posture obtained in ea
h run.
Be
ause several optimal nal postures are obtained by minimizing the
riterium in equation (19) no
lear predi
tions
an be made about whi
h
nal postures would be obtained by minimizing the angular jerk for dierent
starting postures. A better way for sele
ting the nal posture is needed. A
dierent pro
edure was proposed by Rosenbaum et al. in 1995 on the basis
of stored nal postures. This pro
edure, known as the knowledge model, will
be dis
ussed in the following se
tion.
The model des
ribed by Rosenbaum et al. (1995) assumes that postures
are stored in memory. Before making a movement all stored postures are
evaluated and a weighted posture is sele
ted. Be
ause this weighted posture
8
0
−1
−2
−3
−4
−5
−6
−7
−8
−9
8 0
6
−2
4
2 −4
0 −6
−2
Figuur 9: Optimal nal postures obtained on the basis of the
riterium shown
in equation (19).
won't bring the hand exa
tly to the target position an iterative sear
h is
performed,
alled feed-forward
orre
tion.
Ea
h posture is assigned a value whi
h indi
ates how inattra
tive this
posture is as a nal arm posture. This value is dened by:
! !
Sp Vp
Cp = ws + wv (20)
maxp Sp maxp Vp
in whi
h Cp is the
ost of a posture, Sp is the spatial
ost, Vp is the travel
ost, and ws = 1 wv . The spatial
ost is dened to be:
rn o
Sp = (xt xw )2 + (yt yw )2 + (zt zw )2 (21)
that is, the Eu
ledian distan
e between the nger tip and the target position.
The travel
osts are dened by:
n
X
Vp = (kj j ) 1 + (Tj kj log(j + 1))2 (22)
j =1
in whi
h aj is the angular displa
ement, and kj is the joint's expense. The
nal posture is sele
ted by Gaussian weighting of postures with their
osts:
9
Xm G(C )
P~ = Pm p P~p (23)
p=1 q=1 G(Cq )
in whi
h:
!
1 Cp2
G(Cp) = p exp
2(min(Cp ))2
(24)
min(Cp) 2
20
15
10
−5
−20 −15 −10 −5 0 5 10
10
In Figure 11 a sequen
e of 10 feedforward
orre
tions is shown for a 2D
arm movement. For this simulation all joint stifness parameters (kj ) were
set to 100, and the weight ws was set to 0.7. For the sele
ted target (at
position (5,5)), and the sele
ted number of stored postures (20) the
orre
tion
me
hanism doesn't seem to
onverge to the target position. This might be
be
ause large angular depla
ements are needed to rea
h the target, whi
h
outweight the spatial
osts.
25
20
15
10
−5
−10
−20 −15 −10 −5 0 5 10 15
Figuur 11: Development of the sele
ted arm posture for 10 feedforward
or-
re
tions.
How mu
h the weight assigned to the angular displa
ement is ae
ting
the nal posture of the hand, is investigated by running the simulation with
either a large weight assigned to nal posture or a large number of stored
postures. The out
ome of a simulation run is shown in Figure 12. The plots
show that in
reasing the number of postures de
reases the spatial distan
e
between the hand and the target position. By in
reasing the number of stored
postures, the sele
ted end posture depends less on the random sele
tion of
postures stored in memory. In the arti
le by Rosenbaum et al. (1995) a
solution is proposed for the dependen
e of the sele
ted end posture on the
stored postures is memory. A learning algorithm is introdu
ed. Ea
h stored
posture is assigned a value based on its usefulness in previous rea
hes. If the
value of a stored posture drops below a
ertain, predened value the posture
is repla
e by a random posture. The amount of learning depends both on
this predened value, and the learning rate, whi
h determines how mu
h a
value is updated after ea
h movement.
11
20 stored postures, w=1 100 stored postures, w=1
20
15
15
10
10
5 5
0 0
−5
−5
15
10
−5
−10
−20 −10 0 10
12
First movement After 20 movements
20 20
15 15
10 10
5 5
0 0
−5 −5
10 3
5
2
0
1
−5
0
−20 −10 0 10 0 10 20 30 40 50
Number of movements
13
20
15
10
−5
−10
−15
−20
20
10
0
10
5
−10 0
−5
−10
−20 −15
−20
Figuur 14: Posture sele
tion in 3D. The dashed line represents the initial pos-
ture, the solid lines the sele
ted postures at several steps during the feedfor-
ward
orre
tion pro
ess. The
ir
les denote stored postures, and the asterisk
the the target position.
14