Content uploaded by Raed Bsili

Author content

All content in this area was uploaded by Raed Bsili on Nov 12, 2018

Content may be subject to copyright.

An Evolutionary Approach for the Optimal Design of the iCub mk.3

Parallel Wrist

Raed Bsili+, Giorgio Metta∗, Alberto Parmiggiani∗

Abstract— The payload-to-weight ratio is one of the most

important metrics when designing robotic wrists. A solution

to maximize it and to reduce the share of the motive power

required to drive the robot’s links is to employ parallel

kinematic mechanisms (PKMs). Indeed PKMs allow relocating

distal masses closer to the robot’s base actually increasing

the overall payload. On the other hand, PKMs are often

characterized by limited ranges of motion (RoM) and non-

uniform motion in their workspace.

In this article, we considered a class of 2-DOF spherical

six-bar mechanisms. We ﬁrst developed the kinematic model

of the system. We then tackled both the workspace limitation

and uniformity issues with a numerical optimization approach.

Differential evolution (a multi-objective, multivariate, gradient-

free optimization method) was applied to the model of the

system to explore a large space of parameter combinations.

The optimization algorithm allowed obtaining an almost

uniform and large RoM (exceeding 50°on both axes). We then

proceeded with the detailed design of the joint as we envision

integrating it on the future releases of the iCub robot forearm-

hand assemblies.

I. INTRODUCTION

The payload-to-weight ratio is one of the most important

metrics for describing the physical capabilities of robots.

The payload-to-weight ratio of robots with serial kine-

matics can be improved by combining adjacent joints into

multi-DOF parallel kinematics mechanisms (PKMs). Some

interesting applications of this design approach can be found

in [1], [2], [3] and [4].

PKMs are particularly interesting for medium-size hu-

manoids such as the iCub [5] because of their compact

size and good stiffness characteristics. For this purpose, in

previous works, we focused on the numerical simulation of

N-UU class mechanisms [6] and on their comparison with

various closed spherical linkage mechanisms [7].

Indeed, PKMs are often characterized by limited ranges

of motion and complex kinematics if compared to serial

kinematics manipulators. Moreover, the motor-input/joint-

output Jacobian, i.e. the relation between the motion of

the actuators and the resulting joint motion, is often cou-

pled and conﬁguration-dependent. This, in turn, signiﬁcantly

complicates the control of the joint as the same motor

motion causes different joint motions in different regions

of the mechanism’s workspace. Further details about the

∗Giorgio Metta and Alberto Parmiggiani, are within

iCub, Fondazione Istituto Italiano di Tecnologia, Via Morego

30, 16163, Genoa, Italy. giorgio.metta@iit.it,

alberto.parmiggiani@iit.it

+Raed Bsili is within iCub, Fondazione Istituto Italiano di Tecnologia,

Via Morego 30, 16163, Genoa, Italy and Danieli telerbotlabs srl, Via Buccari

9, 16153, Genoa, Italy. raed.bsili@iit.it

characteristics comparison between the PKMs and serial

kinematic mechanisms (SKMs) can be found in [8].

When designing a manipulator, especially a PKM, an

interesting metric to evaluate the “uniformity” of motion in

the mechanism’s workspace is isotropy, as deﬁned in [9].

In this article, we investigate the 2DOF 2DSPM parallel

mechanism introduced by Ogata et al. [10] and later reﬁned

by Ueda et al. in [11].

The mechanism’s RoM and the degree of variations in

the motor-input/joint-output Jacobian are a function of the

design parameters. We addressed both aspects by selecting

the design parameters with a methodology based on the

differential evolution numerical optimization method.

The article describes in detail the approach followed and

presents the deﬁnition and solutions of the optimization

process. In addition, we present qualitative and quantitative

analysis on the effect of the design parameters on the wrist

mechanism behavior.

II. APPROACH

The current iCub mk.3 wrist RoM requirements are ±56°

and ±38° on the pitch and yaw axes. The goal we pursued in

this work was to design a 2DSPM with equivalent and pos-

sibly larger range of motion and with a uniform mechanism

behaviour. The Fig. 1 presents the design model (at zero-

position) of the 2DSPM where the green part deﬁnes the end-

effector. The pitch rotation φpis deﬁned as the end-effector’s

Fig. 1: CAD model of the investigated 2DSPM

rotation about the y-axis while yaw as the end-effector’s

rotation φyabout the z-axis. The distance between the end-

effector point Eand the center of rotation Odenoted by L, is

the scale of the wrist. The design conﬁguration is described

by the design parameters, denoted by l1,l2,l3and α, that

deﬁne the wrist’s links geometry. There are two actuated

joints: a left and a right one, denoted respectively by θLand

θR. To achieve an optimal design, a proper mathematical

model describing completely the kinematics in function of

the design parameters was modeled. Then, the optimization

model describing the optimal design conﬁguration from

mechanism uniformity and workspace width point of view

was set up and solved. To generate the workspace, a square

grid input to the actuated joints with a given amplitude Iis

generated, resulting in the generation of all different input

combinations of θL,θR∈[−I,I]range. In this paper, the

square grid semi-length Iis called the amplitude.

A. Kinematics

A ﬁxed coordinate frame O(x,y,z)in the center of rota-

tion Ois placed with the same origin of the end-effector

coordinate frame O(x0,y0,z0)as shown in Fig. 1. The vectors

uLand vLdescribing the rotation axis of the passive joints

of the left leg are expressed using the rotational matrix

Raxis(angle)∈SO(3):

uL=Ry(θL)·Rx(l1)·[0,1,0]T(1)

vL=Ry(φp)·Rzφy−π

2·Rxπ

2−l3·Rz(α)·[0,1,0]T

(2)

where SO(3)denotes the 3Drotation group. The design

parameter l2imposes the following mathematical constraint:

uL·vL−cos(l2) = 0(3)

The same mathematical operations have been applied on

the right leg. Thus, the kinematics problem became written as

a 2-dimensional system of highly non-linear equations, with

two unknowns φpand φyto solve the forward kinematics:

fL=uT

L·vL−cos(l2) (4)

fR=uT

R·vR−cos(l2) (5)

This system is solved using an optimization algorithm

meant to minimize the sum square of fLand fR. Due to the

theoretical non-unicity of solutions, mathematical constraints

were added to ensure the uniqueness of the realistic solution.

Therefore, the forward kinematics are reduced to the follow-

ing constrained and bounded optimization problem, with a

dimension N=2:

argmin

x=[φp,φy]

f(x) = f2

L+f2

R

(6)

where:

φp,φy∈[−180°,180°]

and:

(gL(x) = [0,1,0]·(uL×vL)>0

gR(x) = [0,1,0]·(uR×vR)>0

The optimization problem has been solved numerically

by providing the exact analytic expressions of the objective

function’s Hessian Hfand the Jacobian of both the objective

and constraints functions Jfand Jg:

Jf=d f

dφp

,d f

dφy∈R1×2(7)

Hf=J(∇f)T∈R2×2(8)

The inverse kinematics are solved in the same way de-

scribed above by solving x= [θL,θR], for a desired pitch and

yaw [φp,φy]conﬁguration.

B. The Global Isotropy and Workspace Numbers

An important criterion to evaluate a parallel manipulator

is to evaluate its mechanism uniformity using a metric called

isotropy, denoted by ∆. It is a measure that indicates how

well over the workspace a wrist is manipulable and how close

or far it is from singularity at the same time. The isotropy

∆is deﬁned as:

∆(J) =

m

pdet(JJT)

tr(JJT)/m∈[0,1] (9)

where J∈Rm×nis the manipulator Jacobian. The isotropy

could be written equivalently in terms of the JJTeigenvalues,

denoted by {λi}i∈N:

∆(J) = (∏m

i=1λi)1/m

(∑m

i=1λi)/m∈[0,1] (10)

where mdenotes the number of DoF of a manipulator’s

end-effector. In our case, m=2. The isotropy’s numerator

and denominator are deﬁned respectively as the geometric

mean, and the arithmetic mean of the JJTeigenvalues. The

geometrical mean describes the wrist manipulability. When

∆=0, the manipulator is in a singular conﬁguration (i.e.

∃i∈N,λi=0). Using the AM-GM Inequality, one can

conclude that the isotropy is indeed bounded ∈[0,1]as JJTis

positive deﬁnite. Further, ∆is maximum, only, and only if all

the manipulator’s Jacobian eigenvalues are non-zeros and are

equal to each other, implying the full Jacobian m- spheroid

which we intend to realize i.e. a perfectly posed Jacobian

matrix. The isotropy is a local property as it depends on the

end-effector pose. Therefore, we evaluate the isotropy over

the whole workspace with its weighted mean:

∆=RW∆(J)dW

RWdW ∈[0,1] (11)

where Wdenotes implicitly the workspace area spanned

by the end-effector’s orientation angles φpand φy. In this

work, we loosely refer to ∆as the Global Isotropy Number.

It is a metric used to compare the uniformity of different

manipulators mechanisms, independently from their scale L.

Another measure of motion uniformity commonly used in

the literature is the Global Conditioning Index, introduced

by Gosselin and Angeles in [12], which is a measure of

the Jacobian condition number over the whole workspace.

The condition number of the Jacobian matrix has been

ﬁrst introduced in [13] and it is used as well as a metric

to describe how ill-posed a matrix is. In this work, we

nevertheless preferred to use the measure of isotropy, denoted

by ∆, for the following reasons:

•The ∆−index is faster to compute numerically than

the condition number. This could be explained by the

fact that the condition number requires computing the

matrix inverse, which is relatively more computationally

expensive.

•The ∆−index, unlike the condition number, can be

expressed analytically in function of the manipulator’s

joints angles. This speeds up further its computation.

In order to evaluate the workspace width of the manipula-

tor and compare it to other manipulators, independently from

their scale L, we propose the following Workspace Number:

Ω=RWdW

SJ

=Rφpmax

φpmin Rφymax

φymin dφydφp

RθLmax

θLmin RθRmax

θRmin

dθLdθR

∈R>0(12)

where here SJdenotes the area spanned by the input

actuated joints θRand θL. When the input is a square grid

with an amplitude I, as in our case, the joints angular

workspace area denoted by SJbecomes simpliﬁed as SJ=

4I2. More details are explained in Fig. 3.

For example, in the case of an “ideal” gimbal, ∆=Ω=1.

Finally, the mapped cartesian workspace area denoted by SC

is deﬁned as the area of the end-effector workspace envelope

(see Appendix).

C. Optimization

The optimal design here requires ﬁnding the best de-

sign parameters that ensure the maximum isotropy and the

widest workspace. The maximization of the isotropy and

the workspace was expressed as an N=4 dimensional

optimization problem:

argmin

X=[l1,l2,l3,α]

f(X) = 1−(∆min.∆.∆max ).Ω

(13)

where:

l1,l2,l3,α∈[9°,85°]

and:

g(X) = Sl1Sα−(Cl2−SαCl1)>0(14)

In which the above abbreviations are Sx=sin(x)and Cx=

cos(x). In our case, the Workspace Number has been re-

stricted to be bounded i.e. Ω(X)∈[0,1]. The above bounds

have been added to ensure a realizable potential design. The

above constraint g(X)has been added to ensure that the

design parameters describe a design where the zero pitch

and zero yaw positions of the manipulator are deﬁned from

a symmetric zero position of the actuated joints. Due to the

complexity of the objective function f(X)∈R, and the error-

prone numerical approximation of its Jacobian Jf∈R1×4, a

gradient-free optimization technique is required. Therefore,

meta-heuristic evolutionary optimization algorithms were

needed and the Differential Evolution DE [14] optimizer is

selected.

initialize the ﬁrst generation of individuals;

G=1

while Stop criterion not met do

for each target vector Xi,G;

for i=1 to NP do

Mutation: generate a donor vector Vi,G;

Vi,G =Xri1,G +F(Xri2,G −Xri3,G)

for j=1to N do

Crossover: generate a trial vector ui,G;

uj,i,G =(Vj,i,G, if Uj(0,1)6CR or j=jrnd

Xj,i,G, otherwise

end

Selection: accept the trial vector if not worse

than the target vector;

Xi,G+1 =(Ui,G, if f(Ui,G)6f(Xi,G)

Xi,G, otherwise

end

G+ = 1

end

Algorithm 1: Differential Evolution pseudo-code

The DE optimization algorithm requires three parameters

to tune: the mutation factor F∈[0,2], the crossover prob-

ability CR ∈[0,1]and the population size NP. Algorithm.

1 presents the DE pseudo-code where a rand/1/bin strat-

egy was used to generate the donor vector [15], in which

U(a,b)∈Rdenotes a random number between aand b. The

residual, deﬁned as well as the candidate energy, is denoted

by f(X)∈R,X∈RN.

The algorithm works by iterating over every generation G

and executing mainly three phases: mutation, crossover and

ﬁnally the selection phase.

III. COM PUTATIONAL PERSPECTIVES

To compute the Global Isotropy Number of a de-

sign parameters set, ﬁrst, the forward kinematics over the

whole workspace are solved using the optimization prob-

lem described by Eq. (6). Secondly, the Jacobian matrix

Jand the local isotropy are calculated by feeding the

forward kinematics information to the analytic expressions

of J([θR,θL],[φp,φy]) and ∆(J). Lastly, the Global Isotropy

Number and Workspace Number are computed numerically

using Eq. (11) and Eq. (12), respectively. All analytic ex-

pressions were derived using symbolic computational meth-

ods. The DE optimization algorithm allowed to explore

a signiﬁcant amount of parameter combinations. To make

a ballpark comparison, a brute force exploration of the

parameter set with a 1° resolution would have required more

than 5000 times the computations that were performed for

this study. The whole algorithm is developed in the Python

programming language [16]. All computations have been

executed on a Dual AMD Opteron computer server with a

6328 @3.2 GHz processor and 64 GB RAM.

IV. RESULTS

In the beginning, a square grid input with an amplitude

I=65° was used. After tuning the DE optimizer parameters,

the crossover factor was set to CR =0.1 to have a more

stable candidates population. The mutation factor was taken

arbitrary from F=U(1.5,1.9)to randomize it for every

generation. This increased the search radius at the cost of

a slower convergence rate. Population size is set to NP =60

candidate individuals. To initialize the ﬁrst population of

individuals, a Latin Hypercube Sampling (LHS) method

[17] was used to maximize the coverage of the available

parameters space i.e. R4. Finally, a best/1/bin strategy has

been selected to formulate the donor vector gene, taking

the best candidate to mutate instead of a random individual

vector Xri1,G.

As a result, the optimum design parameters vector was found

to be OPT1= [33.7°,83°,32.7°,10.7°], whose isotropy plot

in the Y Z -plane is shown in Fig. 2. All plots were performed

using a normalized scale L=1, so that all the results are

bounded between −1 and 1. Furthermore, all colorbars are

scaled equally from the corresponding ∆min to ∆max, in order

to help the reader appreciate the differences between the

isotropy distributions for the different design parameters

candidates. The design parameters vector OPT1is shown

Fig. 2: OPT12D isotropy contour on Y Z-plane (I=65°)

performing a full isotropic spheroid where (∆min,∆,∆max ) =

(0.978,0.998,1)and with rotational ranges consisting in

a pitch: φp∈[−65°,65°]and a yaw: φy∈[−63.1°,63.1°].

This parameter combination yields the required ranges,

as shown in Fig. 3, and improves the design parameters

P= [42°,74°,50°,20.4°]proposed by Ueda et al. in [11].

The Workspace Number Ωwas computed as the contour

angular area mapped by the end-effector’s angles, divided

by the square grid input area deﬁned by the black rectangle,

as shown in Fig. 3. Extending the input square grid to

an amplitude I=80° causes the OPT1isotropy to drop

signiﬁcantly to ∆min =0.11, which makes it not the best

Fig. 3: OPT12D isotropy contour on the Euler plane (I=65°)

solution, from isotropy point of view. The optimization

process has been adjusted to optimize only the isotropy

because an input of I>65° is enough to fulﬁll the iCub

mk.3 ranges of motion requirement.

As a result, the optimum OPT2= [41°,76.3°,41.1°,25.7°],

(see Fig. 4) was found to be the best solution scoring a

(∆min,∆,∆max ) = (0.88,0.97,1). It is performing a nearly full

isotropic spheroid, improving OPT1and design parameters

Pplotted in Fig. 6. In Fig. 5, we show the 2Disotropy

Fig. 4: OPT23DIsotropy on the cartesian workspace (I=

80°)

contour of OPT1design parameter on Y Z −plane overlapped

by the workspace of OPT2. As shown in Fig. 5, the OPT2has

thinner workspace than OPT1, but better isotropy distribution

due to the considerable OPT1isotropy drop in the workspace

lateral corners. This means that in such design conﬁgura-

tion, approaching these regions would result in a signiﬁcant

ampliﬁcation of the end-effector velocity when compared to

other regions in the workspace. This is a behavior to avoid

Fig. 5: OPT2-OPT12D isotropy and workspace comparison

(I=80°)

to ensure more robust control of the wrist.

To validate the results, using PTC Creo Parameteric 4.0, a

Fig. 6: P- 2D isotropy contour on YZ -plane (I=80°)

CAD model with the design parameters OPT1,OPT2and P

were modeled. A simulation with the same square grid input

Ihas been performed, showing an approximate matching

between the mathematical model and the CAD simulation

with an average error equal to ε∼10−5on the isotropy ∆

(see Fig. 7).

V. DISCUSSION

To increase the likelyhood of obtaining global optimality,

different optimization runs were performed over G=100

generations. The optimizer converged in all the trials to the

same optimum, as shown in Fig. 8. The optimization runs

Fig. 7: OPT1Isotropy comparison between anatylical and

CAD models: ε=|∆Creo −∆|, (I=65°)

Fig. 8: Convergence of the ﬁttest individual per generation

G

were all performed at the same time, in parallel, and on the

same computer server. The computations for the six trials

required approximately seven days.

One can notice that such a 2DSPM is characterized by always

having a symmetric ranges of motion, a constant isotropy

along the pitch direction, and a variable symmetric isotropy

along the yaw direction. In particular, OPT1and OPT2

designs isotropies tend to oscillate along the yaw direction

with variable amplitudes, however, Pdesign isotropy tends to

decrease along it, as shown in Fig. 9. This is mathematically

consistent with the fact that we have always φpmax =I,

as shown in Tab I. This is interpreted by the fact that an

angular variation on the actuated joints would induce the

same angular variation on the end-effector’s pitch angle,

implying a perfectly posed Jacobian matrix along the pitch

Fig. 9: Isotropy variation along yaw direction (I=80°)

direction, i.e.∆(J)'1.

It should be noted that tuning the input amplitude Iwould

result in ﬁnding different optima. This depends on how the

optimum was deﬁned, from isotropy or workspace width

point of view, or both of them. For example, during the

optimization process, we count several candidates found

to have a wider workspace than OPT2, but lower Global

Isotropy Number. Alternative loss functions could be used

to deﬁne the objective function f(X)in order to speed up

the convergence rate and control the optimization process.

In the end, OPT1is shown to be likely the global optimum

when I=65°, validating the iCub mk.3 wrist range of motion

requirement. At last, for general applications, in which

wider ranges are required, for example, I=80°, OPT2is

recommended to use as design parameters. The scatter matrix

Fig. 10: Scatter matrix for the objective functions and the

design parameters

shown in Fig. 10 presents the inter-dependencies between

the decision variables during the optimization process, when

I=65°, obtained from the Pareto front, by sorting the best

50 individuals. It is shown that during optimization, through

successive generations, the parameters αand l2have evolved

inversely proportional to each other, with a correlation factor

equal to −0.973. Table II summarizes the different design

parameters candidates that were discussed above. Table I

TABLE I: Comparison of different design parameters

I=65°(∆min,∆,∆max ) (Ω,SC[−]) (φpmax ,φymax)

OPT1(0.978, 0.998, 1) (0.5, 4.92) (65°, 63.1°)

OPT2(0.90, 0.97, 1) (0.41, 4.17) (65°, 50.6°)

P(0.80, 0.95, 1) (0.41, 4.15) (65°, 49.3°)

I=80°

OPT1(0.11, 0.92, 1) (0.49, 6.58) (80°, 72.5°)

OPT2(0.88, 0.97, 1) (0.41, 6.02) (80°, 64°)

P(0.63, 0.93, 1) (0.39, 5.72) (80°, 56°)

summarizes the results found so far and their comparison.

Finally, one notes that the dynamics behavior of such 2DSPM

TABLE II: Design parameters candidates

[l1,l2,l3,α]

OPT1[33.7°,83°,32.7°,10.7°]

OPT2[41°,76.3°,41.1°,25.7°]

P[42°,74°,50°,20.4°]

would be similarly isotropic as its kinematics behavior. This

is justiﬁed by the fact that, when neglecting gravitation and

frictions, the task force space is mapped to the joints force

space by JTand that ∆(J) = ∆(JT), implying a robust hybrid

control of such wrist.

VI. DESIGN

The OPT1design parameters were selected for the iCub

mk.3 wrist, and used for the preliminary assembly design

represented in Fig. 11. Because of the small size of the

Fig. 11: (OPT1) - iCub mk.3 hand and forearm preliminary

design

iCub forearm, a Four-bars linkage was selected to actuate the

active joints θLand θR. One of the main advantages of using

the planar Four-bars linkages is to ensure an efﬁcient power

transmission between the two joints (crank and follower)

while keeping the assembly relatively simple and compact.

On the other hand, the Four-bars linkage has a singular

conﬁguration (when all linkages are aligned) that shall be

avoided. This limitation needs to be taken into account since

passing through the singular conﬁguration shall be avoided

in all wrist conﬁgurations. In order to avoid the singularities

Fig. 12: (OPT1) - iCub mk.3 hand reaching its required

ranges of motion

TABLE III: Design’s range of motion summary

Pitch [°] Yaw [°]

iCub mk.3 Wrist RoM Requirement ±56 ±38

OPT1Theoretical RoM ±65 ±63.1

OPT1Mechanical RoM ±58 ±50

and ensure that the follower moves inside a RoM of an

amplitude I=±65°, an offset angle has been given to it

and to the crank. The two active DoF are actuated by two

Faulhaber 1724T012 DC motors coupled to two CSF-5-30-

2HX-F-1 Harmonic Drive compact speed reducers. To avoid

mechanical interferences and collisions among some design

elements, we have constrained our mechanism to have a

range of motion RoM consisting of ±58 on the pitch and

±50 on the yaw axis. Table III summarizes the design

ranges of motion. Finally, Fig. 12 shows the iCub mk.3

wrist reaching 56° on the pitch axis and 38° on the yaw

axis, fulﬁlling the required iCub mk.3 wrist range of motion

requirement.

VII. CONCLUSIONS

A full mathematical model has been designed to ensure

the global optimal design of a 2DSPM wrist from isotropy

and workspace point of view. All models have been tested

on PTC Creo Parameteric 4.0 in which a simulation was

performed to validate the results. The simulation showed a

smooth and realistic motion within the input range’s ampli-

tude I, with results that match the developed mathematical

model with an ε∼10−5average error on the isotropy.

Finally, the OPT1design has been selected for rapid

prototyping to test it on the iCub mk.3 forearm, as shown

in Fig. 11. The selected wrist design has shown promising

results with a maximum attained isotropy ∆'1=∆max, over

a symmetric workspace (φpmax ,φymax) = (65°,63.1°).

APPENDIX

The wrist Jacobian J∈R2×2was computed as J=−J−1

φJθ

where:

f= [ fL,fR];Jθ=∂f

∂ θ ;Jφ=∂f

∂ φ

In which θ= [θL,θR]and φ= [φp,φy]. Once the forward

kinematics solved, the end-effector cartesian position de-

scribed by the point Ecoordinates on the base coordinate

frame O(x,y,z)was found in function of the wrist scale L

and the solved Euler angles:

xE=L·cos(φp)·cos(φy)

yE=L·sin(φy)

zE=−L·sin(φp)·cos(φy)

The mapped cartesian workspace area SCwas then com-

puted by integrating over the xE,yEand zEvalues.

ACKNOWLEDGMENT

This study was conducted as a part of the Deictic Com-

munication (DComm) project and has received funding from

the European Union’s Horizon 2020 research and innovation

programme under the Marie Skodowska-Curie Actions grant

agreement No 676063.

REFERENCES

[1] J. Sofka, V. Skormin, V. Nikulin, and D. Nicholson, “Omni-Wrist

III- a new generation of pointing devices. Part I: Laser beam steering

devices- mathematical modeling,” IEEE Transactions on Aerospace

and Electronic Systems, vol. 42, pp. 718–725, Apr. 2006.

[2] F. L. Hammond, R. D. Howe, and R. J. Wood, “Dexterous high-

precision robotic wrist for micromanipulation,” in Advanced Robotics

(ICAR), 2013 16th International Conference on, pp. 1–8, IEEE, Nov.

2013.

[3] A. V. Sureshbabu, J. H. Chang, L. Fiorio, A. Scalzo, G. Metta, and

A. Parmiggiani, “A parallel kinematic wrist for the R1 humanoid

robot,” in 2017 IEEE International Conference on Advanced Intelligent

Mechatronics (AIM), pp. 1215–1220, IEEE, July 2017.

[4] G. Wu, S. Caro, S. Bai, and J. Kepler, “Dynamic modeling and design

optimization of a 3-dof spherical parallel manipulator,” Robotics and

Autonomous Systems, vol. 62, no. 10, pp. 1377 – 1386, 2014.

[5] A. Parmiggiani, M. Maggiali, L. Natale, F. Nori, A. Schmitz,

N. Tsagarakis, J. S. Victor, F. Becchi, G. Sandini, and G. Metta, “The

design of the iCub humanoid robot,” International journal of humanoid

robotics, vol. 9, no. 04, p. 1250027, 2012.

[6] D. Shah, G. Metta, and A. Parmiggiani, “Workspace analysis and the

effect of geometric parameters for parallel mechanisms of the N-UU

class [submitted].”.

[7] D. Shah, G. Metta, and A. Parmiggiani, “Comparison of workspace

analysis for different spherical parallel mechanisms,” in Advances in

Mechanism Design for Robots - MEDER 2018 [Accepted], (Udine,

Italy), International Federation for the Promotion of Mechanism and

Machine Science [IFToMM], Springer Series Mechanisms and Ma-

chine Science, 2018.

[8] I. B. Sebastien Briot, “Are parallel robots more accurate than serial

robots?,” Tech. Rep. pp.445-456, Ecole de technologie suprieure, 04

2007.

[9] J.-O. Kim and K. Khosla, “Dexterity measures for design and control

of manipulators,” in Intelligent Robots and Systems ’91. ’Intelligence

for Mechanical Systems, Proceedings IROS ’91. IEEE/RSJ Interna-

tional Workshop on, pp. 758–763 vol.2, Nov 1991.

[10] M. Ogata and S. Hirose, “Study on ankle mechanism for walking

robots: development of 2 d.o.f. coupled drive ankle mechanism with

wide motion range,” in 2004 IEEE/RSJ International Conference on

Intelligent Robots and Systems (IROS) (IEEE Cat. No.04CH37566),

vol. 4, pp. 3201–3206 vol.4, Sept 2004.

[11] K. Ueda, H. Yamada, H. Ishida, and S. Hirose, “Design of large motion

range and heavy duty 2-DOF spherical parallel wrist mechanism,”

Journal of Robotics and Mechatronics, vol. 25, pp. 294–305, Apr.

2013.

[12] C. Gosselin and J. Angeles, “A global performance index for the

kinematic optimization of robotic manipulators,” vol. 113, pp. 220–

226, 09 1991.

[13] J. K. Salisbury and J. J. Craig, “Articulated hands: Force control and

kinematic issues,” The International Journal of Robotics Research,

vol. 1, no. 1, pp. 4–17, 1982.

[14] R. Storn and K. Price, “Differential evolution – a simple and efﬁcient

heuristic for global optimization over continuous spaces,” Journal of

Global Optimization, vol. 11, pp. 341–359, Dec 1997.

[15] T.-C. Chiang, C.-N. Chen, and Y.-C. Lin, “Parameter control mech-

anisms in differential evolution: A tutorial review and taxonomy,” in

2013 IEEE Symposium on Differential Evolution (SDE), pp. 1–8, April

2013.

[16] G. van Rossum, “Python tutorial,” Tech. Rep. CS-R9526, Centrum

voor Wiskunde en Informatica (CWI), Amsterdam, May 1995.

[17] M. D. Mckay, R. Beckman, and W. Conover, “A comparison of three

methods for selecting vales of input variables in the analysis of output

from a computer code,” vol. 21, pp. 239–245, 05 1979.