J Intell Robot Syst DOI 10.1007/s10846-009-9388-9 A New Algorithm for Measuring and Optimizing the Manipulability Index

The estimation of the performance characteristics of robot manipulators is crucial in robot application and design. Furthermore, studying the manipulability index for every point within the workspace of any serial manipulator is considered an important problem. Such studies are required for designing trajectories to avoid singular configurations. In this article, a new method for measuring the manipulability index is proposed, and then some simulations are performed on different industrial manipulators such as the Puma 560 manipulator, a six DOF manipulator and the Mitsubishi Movemaster manipulator.


Introduction
Studying the performance characteristics of a robot such as dexterity, manipulability, and accuracy is very important in the design and analysis of a robot manipulator. The manipulability is the ability to move in arbitrary directions while the accuracy is a measure of how close the manipulator can return to a previously taught point. The workspace of a manipulator is a total volume swiped out by the end effector when it executes all possible motions. The workspace is subdivided into the reachable workspace and the dexterous workspace. The reachable workspace is all point reachable by the end effector. The dexterous workspace consists of all points that the end-effector can reach with an arbitrary orientation of the end-effector. Therefore, the dexterous workspace is a subset of the reachable workspace. The dexterity index is a measure of a manipulator to achieve different orientations for each point within the workspace. In this article, we present a new method for measuring the manipulability, and then some simulations are implemented on different manipulators such as the Puma 560 manipulator, a six DOF manipulator and the Mitsubishi Movemaster manipulator.

Prior Work
Charles Klein and Bruce Blaho (Klein, C. & Blaho, B., 1987) proposed some measures for the dexterity of manipulators, then they compared several measures for the problems of finding an optimal configuration for a given end-effector position, finding an optimal workpoint, and designing the optimal link lengths of an arm. They considered four measures for dexterity: determinant, condition number, minimum singular value of the Jacobian and joint range availability. Salisbury and Craig (Salisbury, J. and Craig, J., 1982) illustrated hand designs with particular mobility properties. In addition, they gave a definition of accuracy points within manipulator workspace. They used another performance index which is the condition number of the Jacobian. Yoshikawa (Yoshikawa, T., 1985) gave one of the first mathematical measures for the manipulability of any serial robot by discussing the manipulating ability of robotic mechanisms in positioning and orienting endeffectors. He introduced the term manipulability, which involves the Jacobian and its transpose; then the evaluation of the determinant of the Jacobian can be used to determine the manipulability measure. Gosselin (Gosselin, C., 1990) presented two dexterity indices for planar manipulations, the first one is based on a redundant formulation of the velocity equations and the second one is based on the minimum number of parameters. Then the corresponding indices were derived for spatial manipulators. These indices are based on the condition number of the Jacobian matrix of the manipulators. He considered the dexterity index, manipulability, condition number and minimum singular value, then he applied these indexes to a SCARA type robot. Kees van den Doel and Dinesh K. Pai (Doel, K.and Pai D., 1996) introduced a performance measure of robot manipulators in a unified framework based on differential geometry. The measures are applied to the analysis of two-and three-link planar arm. Nearly all of the above techniques start by getting the forward kinematics then the jacobian equation which relates the velocity of the end-effector and the joint velocities.

Jacobian Matrix
The Jacobian matrix provides a transformation from the velocity of the end-effector in cartesian space to the actuated joint velocities as shown in equation 1.
Where q is an m-dimensional vector that represents a set of actuated joint rates, x is an n-dimensional output velocity vector of the end-effector, and J is the m × n Jacobian matrix. It is possible that m ≠ n. As an example, a redundant manipulator can have more than six actuated joints, while the end-effector will at most have six degrees of freedom, so that m > n. In the singular position, the Jacobian matrix J looses rank. This means that the end-effector looses one or more degrees of twist freedom (i.e., instantaneously, the endeffector cannot move in these directions). The mathematical discussion of singularities relies on the rank of the Jacobian matrix J, which, for a serial manipulator with n joints, is a 6 × n matrix. For a square Jacobian, det(J) = 0 is a necessary and sufficient condition for a singularity to appear.

Singular Value Decomposition Method
The Singular Value Decomposition method (SVD) works for all possible kinematic structures (i.e. with every Jacobian matrix J with arbitrary dimensions m × n. The SVD decomposition of any matrix J is on the form: Such that U and V are orthogonal matrix means that Also, the singular values are in Descending orders σ1 ≥ σ2 ≥ …… ≥ σm. Mathematically, matrix J having a full rank means that the rank of J = m. In this case, σm ≠0. But when σm ≈ 0 , the matrix J does not have a full rank, which means that the matrix J looses one or more degrees of freedom. This case happens physically, when the serial robot has two joint axes coinciding on each other.

Manipulability Measures
Yoshikawa (Yoshikawa, T., 1985) defined the manipulability measure μ as the square root of the determinant of the product of the manipulator Jacobian by its transpose If the Jacobian matrix J is a square matrix, the manipulability μ is equal to the absolute value of the determinant of the Jacobian. Using the singular value decomposition the manipulability can be written as follows: Another method for the manipulability measure is the reciprocal of the condition number [termed the conditioning index] was used in (Tanev, T. and Stoyanov, B., 2000).

Optimizing the manipulability index of serial manipulators using the SVD method
Our current work addresses the manipulability index for every point within the workspace of some serial manipulators. The method provided promising results, since it is considered one of the crucial tasks required for designing trajectories or avoiding singular configurations. We propose a new method for measuring the manipulability, then, we implement simulations supporting our method on the Puma 560 manipulator, a six degrees of freedom manipulator and the Mitsubishi Movemaster manipulator. As mentioned in Tanev and Stoyanov (Tanev, T. and Stoyanov, B., 2000), the determinant of a Jacobian cannot be used for expressing the manipulability's index. It reaches zero when a manipulator reaches any singular configuration. Another method has been proposed, labeled the reciprocal of the Jacobian as in (Tanev, T. and Stoyanov, B., 2000). In past research, there was an argument about whether the minimum value of the σ 's in equation 2 or the multiplication of all σ 's exactly represent the manipulability's index (Gosselin, C., 1990). In this work, we propose a new concept for measuring this index, then justify this concept by visualizing the bands of this index, resulting from our experiments. Moreover, a new relationship between the minimum rank of the Jacobian matrix, and the order of one of these σ 's (in equation 2) that can exactly express the manipulability's index.

Puma 560 manipulator: A case study
In case of the singular configuration of the Puma 560 manipulator at Q = [0, 0, π/2, 0, 0, 0], the following would be the J, U, σ and V matrices as depicted in equation 2: It is obvious that in the singular matrix σ; σ5 and σ6 assume the value zero with small tolerance. This is due to the fact that there are two singular cases in its configuration; the fourth and sixth joints are on same axis and it is in a singular arm configuration, thus σ5 is zero.

Proposed Manipulability Measure Procedures
To justify the proposed method, the following steps are proposed: • Find the joint(s) that may lead to a singular configuration. • Change the value of the joint(s) found in the previous step from its initial to its final value using simulation software -the Matlab robotic toolbox (Corke, P., 2002) is used in our case.
• The jacobian (J) and singular (Σ) matrices are calculated in every step.
• Plot every normalized σ and also the rank of the jacobian matrix.

Experiments
In this section, we will show and explain some results using serial manipulators with D-H parameters illustrated in table 1, 2 and 3. We have proposed some assumptions which can be summarized as follows: • In our case study, we have dealt with the arm manipulability regardless of the orientation singularity.
• We study non redundant manipulators only.

Puma 560 manipulator
In the Puma 560, we have experienced that the third joint is the cause of singularity. The sample trajectory of this manipulator is from the initial position Q initial = [0, 0,-π/2, 0, 0, 0] to the final position Q final = [0, 0, π/2, 0, 0, 0] is shown in figure 1. The DH parameters of the Puma 560 are shown in table 1. In figure 2, it is obvious that σ5 is exactly expressing the manipulability's index. Furthermore, the rank of the jacobian matrix during this experiment was constant at 5 because joint 6 and joint 4 were on same axis during the whole experiment. The manipulability index of every point within the whole workspace is represented in bands and each band is visualized using a different color as shown in figure 3. Figure 3 is considered important in our research strategy since it provides a visual demonstration for the manipulability measure for the entire workspace for the Puma 560 manipulator. These results can strongly contribute in developing an intelligent mobile manipulator. For example, the positions with the highest manipulability index will have better dexterity compared with those of the lowest manipulability index.

A six degrees of freedom serial manipulator
Similarly, we implemented the same procedure for a regular six degrees of freedom manipulator. In the six DOF manipulator, the sample trajectory of this manipulator is from the initial position Qinitial = [0, 0, -π/2, 0, 0, 0] to the final position Qfinal = [0, 0, π/2, 0, 0, 0]. The DH parameters of this manipulator are shown in table 2. The behavior of σ3 during the experiment is shown in figure 4. The visual demonstration of the manipulability index is shown in figure 5.

Mitsubishi Movemaster Manipulator
We implemented the same algorithm for the Mitsubishi Movemaster Manipulator. The initial position is Qinitial = [0, 0, -π/2, 0, 0, 0] and the final position is Qfinal = [0, 0, π/2, 0, 0, 0]. The DH parameters of this manipulator are shown in table 3. The behavior of σ3 during the experiment is shown in figure 6. The visual demonstration of the manipulability index is shown in figure 7.

Experimental Results
It is obvious from table 4 that we can suppose that the order of σ that is expressing the kinematics manipulability's index equals to the minimum rank of the jacobian matrix.

Conclusions
In this article, we present a new algorithm for measuring manipulability, and then we implement simulations supporting our methodology on different manipulators. The manipulability measure is crucial in performing intelligent behavior tasks such as grasping, pulling or pushing objects with sufficient dexterity.