SciELO - Scientific Electronic Library Online

vol.24 número4Control of transients in water distribution networks by H¥ ControlExperimental study applied to an industrial robot by using variable structure controllers and friction compensation índice de autoresíndice de assuntospesquisa de artigos
Home Pagelista alfabética de periódicos  

Journal of the Brazilian Society of Mechanical Sciences

versão impressa ISSN 0100-7386

J. Braz. Soc. Mech. Sci. v.24 n.4 Rio de Janeiro nov. 2002 

Optimal design of 3R manipulators by using classical techniques and simulated annealin



C. LanniI; S. F. P. SaramagoII; M. CeccarelliIII

ILaboratory of Robotics and Mechatronics DiMSAT, University of Cassino, Via Di Biasio 43 03043 Cassino (Fr), Italy
IICollege of Mathematics Federal University of Uberlandia Campus Santa Monica 38400-902 Uberlandia, MG. Brazil
IIILaboratory of Robotics and Mechatronics DiMSAT, University of Cassino, Via Di Biasio 43 03043 Cassino (Fr), Italy




In this paper, the optimum design of 3R manipulators is formulated and solved by using an algebraic formulation of workspace boundary. A manipulator design can be approached as a problem of optimization, in which the objective functions are the size of the manipulator and workspace volume; and the constrains can be given as a prescribed workspace volume. The numerical solution of the optimization problem is investigated by using two different numerical techniques, namely, sequential quadratic programming and simulated annealing. Numerical examples illustrate a design procedure and show the efficiency of the proposed algorithms.

Keywords: Robotics, computational kinematics, manipulator design, workspace, optimization




Three-revolute open chain is extensively used as robot arm since its motion capability is useful to produce the gross motion of the robot hand. Manipulators design can be expressed conveniently in terms of the workspace requirements, since a fundamental feature of the manipulators is recognized in the workspace capabilities. The workspace of a robot arm is recognized of great interest from the theoretical and practical viewpoints as a fundamental characteristic for kinematic evaluation and dimensional design. Thus, the workspace study, for both analysis and synthesis purposes, still deserves great interest, although several procedures were proposed in the last decade.

The manipulator workspace is defined as the region of reachable points by a reference point H on the extremity of a manipulator chain (Kumar and Waldron, 1981). Several design procedures have been proposed for the dimensional synthesis of manipulators. Solution of the optimization problem has been approached by means of a heuristic technique (Yang and Lee, 1984), grid search methods (Tsai and Sony, 1985), the Monte Carlo method (Rastegar and Fardanesh, 1990) a sequential quadratic programming (Ceccarelli et al. 1994; Ceccarelli and Lanni, 1999; Mata and Ceccarelli, 1993). Other techniques are based on the kinematic geometry of the chain (Vijaykumar et al., 1986), a suitable description of workspace boundary (Gosselin and Guillot, 1991), or a systematic search procedure developed on algebraic criteria (Lin and Freudenstein, 1986) that have been obtained from an algebraic workspace formulation (Freudenstein and Primerose, 1984). The advantages of the algebraic approach have been pointed out by Freudenstein and Primerose (Freudenstein and Primerose, 1984) in the form of the theorems useful in analysis and synthesis.

In this paper, a suitable formulation for the workspace is used to propose manipulator design algorithms, via an optimization problem in which the workspace volume and the total dimension of the manipulator are the multiobjective functions; subject to given workspace limits as the constraints. Additional constraints have been included to obtain manipulator sizes within practical values.1

Taking into account the algebraic formulation for the manipulator workspace given in (Ceccarelli, 1989 and 1996) and following previous experiences on optimization procedures presented in (Samarago and Steffen, 2000; Ceccarelli,1993; Ceccarelli et al., 1994; Ceccarelli and Lanni,1999), in this paper the optimization problem is investigated via two different numerical procedures. The first is a sequential quadratic programming (SQP) technique (Grace, 1992); the second technique is a random search technique. Concerning SQP, two different codes are used: DOT (design optimization tools), (Vanderplaats, 1995) and Minimax of Matlab optimization toolbox (Grace, 1992). Concerning the random search, the results are obtained by using the simulated annealing (SA) technique (Kirkpratick et al., 1983).

The optimum designs are then tested through numerical examples, confirming the efficiency of using the algebraic formulation for the workspace. Numerical results and computational efforts are discussed in light of the evolution of the design process. A comparison of the results obtained with different procedures is shown so as to characterize the design results and numerical procedures.



ai = link lengths measured between to consecutive joint axes A, B, C, D, E, F, G, K, L, Q = structural coefficients of the workspace boundary points
Area = area of the cross section contour of an enveloping torus
Area0 = prescribed value of the cross section area
Atj = triangle area
Arj = rectangle area
di = link offsets measured as the distances between two consecutive joint axes
E = energy of the system at the configuration xk
f(x) = objective function
g(x) = constraints function
H = reference extremal point of the robot
Hk = Hessian matrix of the Lagrangian function
Kb = Boltzmann’s constant
K0 = coefficient of the condition for void existence
L = measure of the manipulators size
m = total number of the constraints
me = number of the equality constraints
minr0, maxr0 = radial reach limits
minz0, maxz0 = axial reach limits
N = number of the boundary points
ntemp = number of temperatures
P = probability that the configuration xk is accepted
rg = center of the cross section contour of an enveloping torus
r = radial reach of the workspace boundary points
rand = random numbers
rt = factor to lowers the temperature
s = search direction of the optimization problem
t = transpose operator
T = control parameter (temperature) of the simulated annealing
Ti = initial temperature
Tf = final temperature
V = measure of the workspace volume
x = vector containing the design parameters
z = axial reach of the workspace boundary points
wi = weights coefficients of the objective function
ai = twist angles between two consecutive joint axes
DE = change in the energy of the system
l = Lagrangian multipliers
L = Lagrangian function
q3 = joint angle of the extreme pair in the chain
yk = step size obtained minimizing a Lagrangian function
Ñgi = Jacobian matrix of the constraints.


The Design Problem

A general open chain 3R manipulator with three revolute joint is sketched in Fig. 1, in which the design parameters are represented using the Hartenberg and Denavit (H-D) notation for the link size as a1, a2, a3, d2, d3, a1, a2, (d1 is not meaningful since it shifts the workspace up and down).



The design parameters of the 3R manipulator represent are:

- ai, i=1, 2, 3, the link lengths measured on the common normal between to consecutive joint axes;

- di, i=2, 3, the link offsets measured as the distances between two consecutive joint axes;

- ai i=1, 2, are twist angles between two consecutive joint axes.

The ring workspace geometry of a 3R manipulator can be described via a generation process of the workspace boundary through a suitable torus family envelope, (Ceccarelli, 1989 and 1996). In Fig. 1, the geometry of a generation of a ring workspace boundary for 3R manipulators is illustrated by using the envelope of toroidal surfaces, which are traced by a reference extremal point H for different values of angle q3 because of the revolution about the Z1 and Z2 axes. Particularly, in Fig. 1, one representative toroidal surface of the envelope is drawn and the cross section contour of the ring workspace boundary is represented together with a cross section contour of an enveloping torus.

The workspace W(H) of a point H of the end-effector of a manipulator is the set of all points which H occupies as the joint variables are varied through their entire ranges (Gupta and Roth, 1982). The point H is usually chosen as either the center of the end-effector, or the tip of a finger, or the end of the manipulator itself. Using the transformation matrix the coordinates (Hxo, Hyo , Hzo) of this point H with respect to the manipulator base frame can be given as

By expanding Eq. 1 one can obtain

in which ca1 = cosa1 , sa1 = sina1 and so on for the other angles. The workspace of a three revolute open chain manipulator can be given in the form of the radial reach r and axial reach z with respect to the base frame. For this representation, r is the radial distance of a generic workspace point from the z axis. Thus, using the Eq. 4, r and z can be evaluated as

In addition, using Eq. 3,

and by using Eqs. 2 to 4 in the second equation of Eqs. 5 with the hypotheses a1 ¹ 0 and sina1 ¹ 0, it yields

Squaring and adding both sides of Eqs. 6 and 7, the equation of the reachable region of space by the reference point H can be obtained and expressed in the cross section plane r z with respect to the base frame, as proposed in Ceccarelli (1989 and 1996)

in which A,B,C,D coefficients are named as architecture coefficients. They are function of the Denavit and Hartenberg parameters a1, a2, a3, d2, d3, a1, a2 and q3 in the form

The reach distances r2 and z2 can be expressed from the link geometry as

The boundary surface of the three revolute manipulator workspace can be thought as the geometrical envelope of the toroidal surface q3-family whose analytical expression can be obtained by considering Eq. 10 and its derivative with respect to q3 (Bruce and Giblin, 1992) in the form

The axial z and radial r coordinates of the boundary envelope points are given by the solution of the Eq. 11 together with Eq. 12, by supposing sina1 ¹ 0, C ¹ 0 and E ¹ 0. After some algebraic manipulations (Ceccarelli, 1989 and 1996) the coordinates of boundary envelope points can be expressed by


The angle q3 is the joint angle of the extreme pair in the chain and it is the kinematic variable for the workspace determination. In fact, the workspace boundary can be obtained from Eq. 13 by scanning q3 from 0 to 2q.

Referring to Fig.2, the workspace design data can be prescribed by means of workspace limits in term of the radial reach r and axial reach z, the design problem can be formulated as to find the dimensions of a 3R manipulator arm whose workspace cross section is within or is delimited by the given axial and radial reaches minr0, maxr0, minz0, maxz0.



Formulation of an Optimum Design Procedure

The objective of the proposed manipulator design procedure is the dimensional synthesis of 3R manipulator, which will have a minimum total size and a maximum workspace volume. Thus, in the optimization problem the workspace volume and total dimension of the manipulator can be considered together to build a multiobjective function. The optimization problem is subject to given workspace limits as constraints; additional constraints can be included to obtain manipulator sizes within practical values.

Thus, the optimum design can be formulated as a multiobjective optimization problem in the form

subject to


where V indicates a measure of the workspace volume and L is the total dimension of the manipulator. Equation 15 has been used to express the maximization of the manipulator workspace in term of the volume V and the minimization of the design dimension L of the manipulator.

The workspace volume V can be evaluated according to Pappus-Guldin Theorem by multiplying the cross section area Area by the radial reach rg of the center of the cross section, Fig. 3a, by means of the formula

in which the Area can be evaluated by summing up the triangle and rectangle areas Atj and Arj respectively, as shown in Fig. 3b, in the form as


in which N is the total number of the triangles and rectangles and i the current number of computed position of a boundary point. N is equal to the number of the boundary points.



By considering the cross section area, the coordinate rg of the center of the mass can be given as


The total dimension L of the manipulator workspace can be evaluated using design parameters to give

The Eqs. 16 express the available working area of the robot. In Eqs.17 the constraint Area-Area0 on the cross section area of 3R manipulator ensures that the value of the workspace volume will not converge to zero.

The first constraint in Eqs.17 has been used to formulate the necessary condition for void existence, (Gupta and Roth, 1982), by using a proper value of K0 coefficient in a simplified expression.

A way to perform numerically an efficient design procedure requires a suitable analytical formulation for the involved quantities of the manipulator workspace. Because of the formulation for the manipulator design, the workspace volume can be expressed conveniently in term of the workspace boundary. Thus, the algebraic formulation for the ring workspace has been used in the form deduced in Ceccarelli (1989 and 1996).

In the case of the numerical code SQP of DOT and SA for the solution of the optimization problem given by Eqs.15, a multiobjective function has been used using weighting coefficients w1 and w2 in the form

subject to the same constraints listed in Eqs.16 and 17. Equation 24 has been formulated in order to achieve the best fit to the numerical performance of the available codes SQP of DOT and SA. In this way, besides working with different optimization techniques, we have experienced the use of a different traditional formulation for a multiobjective function too.


Numerical Techniques for the Optimization Problem

In this section, a review of the optimization procedures using traditional and random search techniques is presented.

In the first test, minimization is achieved by means of a sequential quadratic programming technique, using two different codes, namely: design optimization tools (DOT), and Minimax of Matlab optimization toobox (Grace, 1992). Both codes perform the sequential optimization method and a pseudo-objective function is written using the augmented Lagrange multiplier method. The unconstrained minimization is performed by the Broydon–Fletcher–Goldfarb-Shanno (BFGS) method and the one-dimensional search uses a polynomial interpolation technique. The second numerical procedure is based on the random algorithm called simulated annealing (SA).

A Overview on Sequential Quadratic Programming

Sequential quadratic programming (SQP) represent a nonlinear programming method. The main idea is the formulation of a subproblem based on a quadratic approximation of the Lagrangian function.

Let xk be the vector containing the design parameters at step k, the subproblem is obtained by linearizing the nonlinear constrains (Grace, 1992) in the form

subject to

in which t denotes the transpose operation and Hk is the Hessian matrix of the Lagrangian function L, given by

In this equation, l is Lagrangian multipliers; s is the search direction; me is the number of the equality constraints; m is the total number of constraints; Ñgi(x)t is the Jacobian matrix of the constraints; x is the vector containing the design parameters a1, a2, a3, d2, d3, a1, a2.

The numerical procedure starts with an initial guess of the manipulator chain solution and, during each iteration k, a quadratic programming problem is solved to provide a search direction sk, so that the solution is updated as

in which yk is a step size obtained minimizing a Lagrangian function.

A Overview on Simulated Annealing

Simulated annealing is an iterative technique, that is based on random search with adaptive of the searching minimum along coordinate directions. It can be useful to overpass small variations of the objective function by using a probabilistic criterion in order to avoid to stop the procedure at a local minimum.

This optimization technique is based on an analogy with the annealing process from metallurgy. Annealing means that the metal is heated to a high temperature, so that the atoms are shaken violently. If the metal is cooled rapidly, the microstructure would be locked into a random unstable state; if the temperature is cooled very slowly, the atoms will fall into patterns that are relatively stable for the temperature. The SA technique provides to optimize results by randomly perturbing the design variables and keeping track of the best objective function value from each randomized set of variables. After many tries, the set that has produced the best objective function value is designated to be the center about which perturbation will take place for the next temperature change. In this technique, the temperature change that is given as the standard deviation of the random number generator. The temperature is then reduced and new tries are performed. Let each configuration be defined by the set of atom positions where E represents the energy of the configuration and T is the temperature. At each step of the algorithm, a small random displacement is given to an atom, and the resulting change DE in the energy of the system is computed. When the process generates new states, it is either accepted or rejected according to the Metropolis criterion (Metropolis et al, 1953): if DE < 0, the displacement is accepted, and this configuration is used as the starting point of the next step; if DE > 0, the probability P that the configuration is accepted is given by the equation

where Kb is the Boltzmann’s constant. The choice of the probability function given by Eq. 29 has the consequence that the system evolves according to a Boltzmann distribution.

The random numbers ‘rand’ can be uniformly distributed in the interval [0, 1]. If rand < P(DE), the new configuration is accepted, otherwise the original configuration is used to start the next step. The temperature T can be considered a control parameter. The initial temperature Ti is related with the standard deviation of the random perturbation and the final temperature Tf, with the order of magnitude of the desired accuracy, will give the location of the optimum solution.

The annealing schedule starts at a high temperature and it lowers discretely the temperature, using a factor rt , 0<rt<1, given by

until the system is "frozen" after a determined number ntemp of temperatures that can be tried to reach hopefully a global minimum.

In the case of constrained optimization problems, the procedures with constrains are transformed in unconstrained problems, by adding a penalty function to the function original objective in order to limit constraint violations (Samarago and Steffen, 2000).


Numerical Example

In order to prove the soundness of the proposed optimization design procedures numerical examples have been reported. In particular, Fig. 4 shows the initial solution for the proposed test of the optimum design of a 3R manipulator, in which dot lines indicate the cross section of the initial solution and the grew rectangle indicates the prescribed working area. The prescribed value Area0 of the cross section area has been assumed as 60% of the computed area Area ; K0=2 is assumed to ensure void absence; and the weights are assumed as w1= w2=0.5.



Figures 5 to 9 show the results obtained as a comparison among the proposed procedures. Tables 1 to 3 show the numerical results for the multiobjective function, the constraints and the design parameters for the design case, respectively.

















Figure 5 shows the results of a 3R manipulator in term of the shape of the cross section, and objective functions Volume V and manipulator size L, using the numerical technique SQP of Matlab, Fig. 5a, SQP of DOT, Fig. 5b and SA, Fig. 5c. One can note that the shape of the cross section is similar in the three cases; the location of the cross section at the internal assigned area is quite similar too.

The iteration number for the convergence to the optimum solution is quite similar in the case of SQP of Matlab and SQP of DOT, while in the case of SA it is very big, as expected. In fact, we have reported a zoom-evolution of objective function V and L in order to show the evolution during the latest 200 iteration number, Fig. 5c in which one can observe still large variation in searching the optimum value.

One can observe that, among the proposed procedures, there is a not great difference for the optimum design in the numerical value of the volume V but a considerable difference in term of manipulator size L, as stressed in Tab. 1.

Figure 6 shows the evolution of two significant constraints (minz0-minz) and (maxr-maxr0) during the optimization process to illustrate how fast and accurately the constraints have been satisfied. SQP of Matlab has converged very rapidly, Fig. 6a, since the variation of the constraints from iteration 50 to 232 changes very little. Similarly, using SQP of DOT, Fig. 6b, the variation of the constraints shows some change with respect to the case of Fig. 6a. But using SA, Fig. 6c, the variation of the constraints shows waving large changes before to converge. Final numerical results for all constraints are listed in Tab.2.

Figures 7, 8 and 9 show the evolution of the design parameters a1, a2 and a3, d2 and d3 and finally a1 and a2 respectively. Using SQP of Matlab, Figs. 7a, 8a and 9a show the variation of the design parameters during the optimization process, and one can observe that from iteration 50 to 232 they show little changes. Using SQP of DOT, Figs. 7b, 8b and 9b show the variation of the design parameters, but they change considerably more than in the case of Figs. 7a, 8a and 9a. Using SA, Figs. 7c, 8c and 9c show the variation of the design parameters, and they show large changes before they converge to an optimum value.

Optimum numerical results for all design parameters are listed in Tab. 3. A considerable difference among the results of the three procedures can be observed mainly in d2 and d3, that are the most sensitive parameters in the proposed optimization problem for designing optimum general 3R manipulators.



The optimum design of a general 3R manipulator has been formulated by using workspace characteristics and manipulator size. A suitable formulation for the manipulator workspace has been used to obtain efficient numerical procedure for solving the optimization problem. The design problem has been formulated as a multiobjective optimization problem. Three different numerical techniques proposed have been used to solve the design problem.

In the paper, a numerical example is illustrated in detail to show the efficiency of the design process independently of the numerical technique used. In addition, comparison of the results obtained with three different technique (namely, SQP of Matlab, SQP of DOT and SA) has shown similarly in the results for the optimum solution obtained.



The second author thanks to the Brazilian Ministry of Education (Capes) for the grant, which permitted her to spend a sabbatical year in 2001 at the Laboratory of Robotics and Mechatronics in Cassino, Italy.



Bruce J. W., Giblin P.J., 1992, "Curves and Singularities: a geometrical introduction to singularity theory", Cambridge University Press, Great Britain, 2nd. Edition.         [ Links ]

Ceccarelli M., 1989, "On the Workspace of 3R Robot Arms", Fifth IFToMM International Symposium on Therory and Practice of Mechanisms, Bucharest, Vol. II-1, pp.37-46.        [ Links ]

Ceccarelli M., 1993, "Optimal Design and Location of Manipulators", NATO Advanced Study Institute on Computer Aided Analysis of Rigid and Flexible Mechanical Systems, Troia, Vol.II, pp.299-310.        [ Links ]

Ceccarelli M., 1996, "A Formulation for the Workspace Boundary of General N-Revolute Manipulators", IFToMM Jnl Mechanism and Machine Theory, Vol.31,pp.637-646.        [ Links ]

Ceccarelli M., Lanni C., 1999, "Sintesis Optima de Brazos Manipuladores Considerando las Caracteristicas de su Espacio de Trabajo", Revista Iberoamericana de Ingenieria Mecanica, Vol.3, n.1, pp.49-59.        [ Links ]

Ceccarelli M., Mata V., Valero F., 1994, "Optimal Synthesis of Three-Revolute Manipulators", AIMETA International Jnl Mecanica, Vol. 29, N. 1, pp.95-103.        [ Links ]

Freudenstein F., Primerose E.J.F.,1984, "On the Analysis and Synthesis of the Workspace of a Three-Link, Turning Pair Connected Robot Arm", ASME Jnl of Mechanisms, Transmissions, and Automation in Design, Vol. 106, pp.365-370.        [ Links ]

Gosselin C.D., Guillot M.,1991, "The Synthesis of Manipulators with Prescribed Workspace", ASME Jnl of Mechanical, Design, 1991, vol. 113, pp.451-455.        [ Links ]

Grace A.,1992,"Optimization Toolbox- For use with Matlab", The Math Works Inc., Natick.        [ Links ]

Gupta K.C., Roth B.,1982, " Design Considerations for Manipulator Workspace", ASME Jnl of Mechanical Design, Vol. 104, pp.704-711.        [ Links ]

Kirkpatrick S., Gelatt C.D. Jr, Vecchi M.P., 1983, "Optimization by Simulated Annealing", Science, 220, N. 4598, 1983, pp. 671-680.        [ Links ]

Kumar A., Waldron K.J., 1981,"The Workspaces of a Mechanical Manipulator", ASME Jnl of Mechanical Design, Vol. 103, pp. 665-672.        [ Links ]

Lin C.D., Freudenstein F., 1986, "Optimization of the Workspace of a Three-Link Turning-Pair Connected Robot Arm", The International Journal of Robotics Research, Vol.5, N.2, pp.104-111.        [ Links ]

Mata A.V., Ceccarelli M., 1993, "Funciones Objectivo para la Optimizacion de la Cadena Cinematica de Robots", 1st Iberoamerican Conference on Mechanical Engineering, Madrid, Vol.3, pp.47-54.        [ Links ]

Metropolis N., Rosenbluth A. W., Rosenbluth M. N., Teller A.H., 1953, "Equations of State Calculations by Fast Computing Machines", Jnl of Chemical Physics, 21, pp. 1087-1092.        [ Links ]

Rastegar J., Fardanesh B, 1990, "Geometric Synthesis of Manipulators using the Monte Carlo Methods", ASME Jnl of Mechanical Design, Vol.112, pp.450-452.         [ Links ]

Saramago S.F.P., Steffen Jr V., 2000, "Optimal Trajectory Planning of Robot Manipulators Using Classical Techniques and Simulated Annealing", in Nonlinear Dynamics, Chaos, Control and Their Applications to Engineering Sciences, Vol.6, Applications of Nonlinear Phenomena, 2000, pp. 148-156.        [ Links ]

Tsai Y.C., Soni A.H., 1985, " Workspace Synthesis of 3R, 4R, 5R and 6R Robots", IFToMM Jnl Mechanism and Machine Theory, Vol.20, n.6, pp.555-563.        [ Links ]

Vanderplaats, G., 1995, "DOT - Design Optimization Tools Program – Users Manual", Vanderplaats Research & Development, Inc, Colorado Springs.        [ Links ]

Vijaykumar R., Waldron K.J., Tsai M.J.,1986, "Geometric Optimization of Serial Chain Manipulator Structures for Working Volukme and Dexterity", The International Jnl of Robotics Research, Vol.5, n.2, pp.91-103.        [ Links ]

Yang D.C.H., Lee T.W.,1984, "Heuristic Combinatorial Optimization in the Design of Manipulator Workspace", IEEE Transactions on Systems, Man, and Cybernetics, 1984, Vol.SMC-14, n.4, pp.571-580.        [ Links ]



Article received February, 2001
Technical Editor: Atila P. Silva Freire