## 1. Introduction

Serial kinematics mechanisms (SKMs) have been widely used for different applications. Although SKMs have many advantages, such serial mechanisms have many drawbacks such as low stiffness, accumulating pose error, low agility, low payload-to-weight ratio, and complicated inverse kinematics. Hence, to overcome these drawbacks, parallel kinematics mechanisms (PKMs) are used particularly for more demanding tasks such as high-speed and high-precision applications. In spite of their many advantages, the PKMs in general also have some drawbacks such as smaller workspace, complicated forward kinematics, and singularity issue. To alleviate these drawbacks, optimization with various techniques is commonly conducted to improve their drawbacks while maintaining their advantages. In terms of the number of objectives being optimized, the optimization can be either single-objective or multi-objective. In most cases, there are more than one objectives required to be optimized. Furthermore, some objectives quite frequently are conflicting each other. For example, most PKMs usually require not only larger workspace but also stiffer structure with lower mass. In fact, enlarging the workspace usually requires longer links which results in the reduction of the stiffness and the increase of mass. In the multi-objective optimization, different objectives might be picked based on the priority of the objectives which depends on the application.

Therefore, in this chapter, a comprehensive review of a number of performance indices are defined and presented which are relevant for different applications. This is followed by a review of the optimization techniques used to design different systems to satisfy certain objective or multiple objectives. This is extremely important given the nonlinearity of the parallel link manipulator systems and the conflicting nature of the different performance indices that could be counter intuitive to optimize by trial and error and hence, mathematical schemes would be the solution.

## 2. Performance measures

There are quite many measures or indices to indicate the performance of a robot. Patel and Sobh [1] classified them into either local or global, kinematic or dynamic, and intrinsic or extrinsic. The local measures are dependent on the robot configuration, whereas the global measures evaluate the robot performance across the whole workspace. The global performance index (GPI) can be obtained by integrating the local performance index P over the workspace W as given by Eq. (1). If the local performance index cannot be expressed analytically, discrete integration as given by Eq. (2) can be used. In the latter case, the accuracy of the integration depends on the number of points *n* being used for evaluation. If the inclusion of large number of points is very computationally expensive, less representative sampling points can be used.

The kinematic measures indicate the kinematic behavior of the robot, whereas the dynamic measures are related to dynamic properties of the robot. The intrinsic measures indicate the inherent characteristics of the robot regardless of its task, whereas the extrinsic measures are related to the robot task. The widely used performance measures include workspace, closeness or avoidance from singularity, dexterity, manipulability, stiffness, accuracy, repeatability, and reliability. Some of them are discussed below. The performance measures should be considered during design phase of the robot. Optimal design usually considers one or several performance measures as the objective function(s) to be optimized.

### 2.1. Workspace

The workspace is the set of points (locations) which can be reached by the end effector. It is driven by the mobility of the robot which includes the number and types of its degrees of freedom (DOF), and constrained by the length of links, range of the joints, and interference between the components. The workspace evaluation usually includes its size (area/volume) and shape. The shape can be expressed by, for example, aspect ratio of the regular workspace. In general, larger and better-shaped workspace is required. Another way to characterize the workspace is by using workspace volume index [2] or footprint ratio [3] which is defined as the ratio between the workspace volume and the volume of the machine.

The first thing to determine in order to achieve better workspace before optimizing the geometrical parameters is selecting better topology. For example, many mechanism designs include sliders (gliders) in order to get larger workspace, such as in Hexaglide, Linapod, Pentaglide, sliding H4, and Triaglide.

The robot workspace is commonly classified into several types as follows [2]:

Constant orientation workspace (translation workspace) which defines reachable points with constant orientation of the moving platform.

Orientation workspace which defines reachable orientations while the center tool point is fixed.

Reachable workspace (maximal workspace) which defines reachable points with at least one orientation of the moving platform.

Inclusive workspace which is reachable workspace in a given orientation range.

Dexterous workspace which defines reachable points with any orientation of the moving platform.

Total orientation workspace which is dexterous workspace in a given orientation range.

Useful workspace (sometimes also called used workspace) which defines part of the workspace to be used for a specified application. It is usually regular workspace such as rectangle, circle, cuboid, sphere, or cylinder.

The useful workspace is usually of the highest interest as it indicates part of the workspace which can be really utilized for application. Baek et al. [4] presented a method to find maximally inscribed rectangle in the workspace of serial kinematics manipulates (SKM) and parallel kinematics manipulators (PKM).

A complete representation of the workspace requires six-dimensional space. However, graphical representation is only possible up to three-dimensional space. For this reason, it is a common practice to represent the position workspace separately from the orientation workspace. Workspace of a planar mechanism can be plotted in a two-dimensional plot, whereas that of a spherical or spatial mechanism can be plotted in a three-dimensional plot. The workspace plot can be presented in either Cartesian or polar coordinate system in the case of 2D plot and in either Cartesian, cylindrical, or spherical coordinate system in the case of 3D plot. Plotting the graphical representation of the workspace is easier in SKMs but is not always easy in PKMs. In the latter case, the graphical illustration of the workspace can only be applied for PKMs with no more than 3-DOF. For PKMs with more than 3-DOF, n – 3-DOF should be fixed in order to be able to graphically illustrate the workspace. Depending on which DOF to be fixed, the workspace will be different [2].

In general, there are three main ways to determine and plot the workspace: geometrical approach, discretization numerical approach, and non-discretization numerical approach. Early works on the workspace determination of PKMs are conducted by geometrical approach. Bajpai and Roth [5] investigated the workspace of PKMs and the influence of legs’ length to the workspace. Three years later, Gosselin [6] presented his work on the constant-orientation workspace determination of 6-DOF PKM followed by Merlet [7] who presented the orientation workspace determination, and Kim et al. [8] who proposed an algorithm to determine the reachable and dexterous workspace. As planar PKMs require different treatments, Gosselin and Jean [9] followed by Merlet et al. [10] presented the workspace determination of planar PKMs. All of the aforementioned works use geometrical approach.

In the geometrical approach, the true boundaries of a PKM workspace are obtained from the intersection of the boundaries of every open-loop chains which compose the PKM. This approach is fast and also accurate. To make it easier and much faster, CAD software might also be utilized such as the work proposed by Arrouk et al. [11]. One of the main drawbacks of this approach is its lack of general applicability since different robot topologies might need different techniques to apply this approach. In other words, this approach usually should be tailored to the considered robot. Another drawback of this approach is the difficulty to include all the constraints.

In the discretization numerical approach, a discretized bounding space which covers all possible points in the workspace is created and subsequently tested by utilizing the inverse kinematics along with the constraints whether it belongs to the workspace or not. This approach is sometimes called binary representation since it assigns binary numbers during the evaluation: “1” is assigned if it is reachable and therefore plotted and “0” is assigned if it is unreachable and therefore not plotted. The main advantage of this approach is its applicability to all types of PKMs as well as its intuitiveness. Moreover, this approach can include all the constraints. However, the accuracy of this approach depends on the size of the discretization steps. Also, small voids inside the workspace cannot be detected unless the discretization steps are small enough to capture the voids. A method similar to the discretization approach is Monte Carlo method [12, 13] in which a large number of discrete active joint points within the joint range are input to the forward kinematics and accordingly the end effector position points are plotted. Further treatment to the Monte Carlo results in order to determine the workspace boundaries or compute the workspace volume can be conducted by putting the workspace points in discretized bounding space as being used in the discretization approach.

Some recent works using the discretization numerical approach includes Bonev [14] who proposed a new approach to determine the three-dimensional orientation workspace of 6-DOF PKMs by using discretization approach. Castelli et al. [15] presented an algorithm based on the discretization approach to determine the workspace, the workspace boundaries, the workspace volume, and the workspace shape index of SKMs and PKMs. Dash et al. [16] presented a discretization method to determine the reachable workspace and detect available voids of PKM.

Beyond the aforementioned two approaches, several works proposed non-discretization numerical methods to determine the workspace of PKMs. Some of the methods are as follows [2, 17]:

Jacobian rank deficiency method [18] but only practical for the determination of constant orientation workspace.

Numerical continuation method [19, 20] can avoid singularity points but only practical for the determination of constant orientation workspace.

Constrained optimization method [21] which is modified from the numerical continuation method.

Boundary search method [17] which is based on constrained non-linear programming.

Principle that the velocity vector of the moving platform cannot have a component along the normal of the boundary [22], but this method does not work for mechanisms with prismatic joints as well as it is difficult to include the mechanical limits and interference between links.

Interval analysis method [23] which can deal with almost any constraints and any number of DOF.

Recently, Bohigas et al. [24] presented branch-and-prune technique which can determine all the workspace boundary points of general lower-DOF (3-DOF or lower) SKMs and PKMs. This technique overcomes the limitation of numerical continuation method. Furthermore, Gao and Zhang [25] proposed simplified boundary searching (SBS) method which integrates geometrical approach, discretization method, and inverse kinematics model of a parallel mechanism. Saputra et al. [26] proposed swarm optimization approach to determine the workspace of PKM.

### 2.2. Jacobian matrix

The Jacobian matrix maps the relation between the velocities at the task space (moving platform) and the velocities of the active joints. Furthermore, it also maps the relation between the active joint load and the task wrench. It is discussed here because it is related to many kinematic performance measures.

Given that the velocity kinematics of the robot is expressed by:

where

As long as the Jacobian matrix is unit-consistent (homogeneous), it can be directly used in the formulation of Jacobian-based performance measures such as Jacobian condition number and manipulability. The problem appears when the Jacobian matrix is unit-inconsistent (non-homogeneous) and accordingly does not have appropriate physical meanings. To address this problem, there are several ways found in the literature to normalize inconsistent (non-homogeneous) Jacobian matrix including the following:

### 2.3. Singularity

The simplest classification of singularity in PKMs is given by Gosselin and Angeles [40]. By considering only the behavior of the active joints and the end-effector, they classified the singularity in PKMs into two types which are mathematically determined by the singularity of the two Jacobian matrices in the kinematics of the robot given in Eq. (3). The three types of singularity are the following:

Type 1 singularity (also called: direct kinematic singularity, forward kinematic singularity, serial singularity, or sub-mobility) occurs when the forward Jacobian matrix A is singular. When this kind of singularity occurs, it is not possible to generate some velocities of the end-effector. In other words, very small changes in the joint space do not affect the end-effector pose. In these configurations, the mechanism loses one or more degrees of freedom.

Type 2 singularity (also called: inverse kinematic singularity, parallel singularity, or over-mobility) occurs when the inverse Jacobian matrix B is singular. It corresponds to the appearance of uncontrollable mobility of the end-effector because it is possible to move it while the joints are locked. At the corresponding configurations, the mechanism gains one or more uncontrollable DOF. In other words, the end-effector can move without the joints moving. Equivalently, the stiffness of the PKM is locally lost.

Type 3 singularity (also called: combined singularity) occurs when both the forward Jacobian matrix A and the inverse Jacobian matrix B are singular. When this kind of singularity occurs, the end-effector can move when the joints are locked, and at the same time the end-effector pose does not change due to very small changes in the joints.

Furthermore, singular configurations can be obtained by observing the Jacobian matrices or by geometrical approach.

A more general discussion on the singularity was delivered by Zlatanov et al. [41] who included the passive joints in the singularity evaluation. They classified the singularity into redundant input (RI) singularity which corresponds to serial singularity, redundant output (RO) singularity which includes parallel singularity as well as so-called constraint singularity [42], and so-called actuator singularity [43] which represents non-zero passive joint velocities while the actuators are locked and the end-effector has zero velocities. Moreover, higher order singularity has also been discussed in some works, but it does not give much practical benefit [2].

### 2.4. Jacobian condition number

From its mathematical expression, the value of Jacobian condition number (or simply condition number) ranges from 1 to infinity, where infinity indicates singularity and 1 indicates isotropy of the Jacobian matrix. Alternatively, it can also be expressed by its inverse value, called inverse Jacobian condition number, the value of which ranges from 0 to unity where 0 indicates singularity and unity indicates isotropy of the Jacobian matrix. When the Jacobian matrix is close to singularity, it is called ill-conditioned. On the other hand, the Jacobian matrix is called well-conditioned if it is far from singularity. Furthermore, when the Jacobian matrix is isotropic, it means that the velocity and force amplification is identical in all directions.

The commonly used norms to define the Jacobian condition number are as follows:

2-norm, which is given by the ratio of the maximum and minimum singular values of the Jacobian matrix.

Frobenius norm, which is very advantageous because it is an analytical function of the robot parameters and hence will not give serious concern if its gradient is evaluated [44], as well as it avoids the computation of the singular values.

Weighted Frobenius norm, which can be rendered to specific context by adjusting its weights [45] in addition to all of the mentioned advantages of the Frobenius norm.

The Jacobian condition number is a measure of kinematic dexterity (or simply called dexterity). It indicates closeness to singularity, kinematic uniformity (isotropy), dexterity, and accuracy. The kinematic dexterity is defined as the capability of robot to move the end-effector in all directions with ease. In fact, the kinematic isotropy of the robot represents its dexterity as more isotropy indicates that the robot can move with the same ease to all directions. However, this is still not a complete information about the dexterity as it only informs how equal the ease in different directions, but not how easy. It is possible that either the motion to all directions requires small effort or the motion to all directions require large effort. Manipulability which will be reviewed soon will give more complete information about the kinematic dexterity.

Another interpretation of the Jacobian condition number is how large the error in the task space will occur due to small error in the joint space. The more ill-conditioned the Jacobian matrix, the larger the error in the task space will occur due to small error in the joint space. Based on this fact, the Jacobian condition number indicates the accuracy of the manipulator.

The Jacobian condition number is a local property. It depends on the robot configuration (posture). To evaluate globally, global condition number (or global condition index, GCI) is used. The GCI is obtained by integrating the local condition index (LCI) over the workspace. Since the Jacobian condition number is the common indicator of dexterity, GCI is also commonly called global dexterity index (GDI). A map showing the values of LCI over the workspace is commonly referred to dexterity map.

Since the manipulability is based on the Jacobian matrix, it faces unit inconsistency issue when translation and rotation are mixed. In this case, the Jacobian matrix should be homogenized.

### 2.5. Manipulability

Manipulability measure was first introduced by Yoshikawa [46] as a local measure (local manipulability index, LMI) which means that it is dependent on the robot configuration (posture) since it is based on Jacobian matrix. It can be evaluated globally by using global manipulability measure (GMI) which is the local manipulability measure integrated over the workspace. Another measure is uniformity of manipulability which represents how uniform the manipulability across the workspace [47]. Similar to the Jacobian matrix, the manipulability faces unit inconsistency issue when translation and rotation are mixed. In the same token with the Jacobian condition number, the Jacobian matrix should be homogenized in such a case.

The manipulability is a measure of the input-output efficiency (the ratio of output performance to input effort). In other words, it represents the quality of velocity and force transmission (amplification). The manipulability provides the information about the velocity and force amplification more than the Jacobian matrix condition number. The latter only tells how isotropic the velocity and force amplification but not the magnitude, whereas the earlier informs the magnitude in addition to the isotropy of the velocity and force amplification.

Two kinds of manipulability are well known: twist (velocity) manipulability and wrench (force) manipulability. The earlier is commonly represented by velocity manipulability ellipse/ellipsoid whereas the latter by force manipulability ellipse/ellipsoid. In the velocity manipulability ellipsoid, the velocity minimum, velocity maximum, and velocity isotropy are represented by the ellipsoid axes length, whereas the manipulability is represented by the ellipsoid volume. The major axis of the manipulability ellipsoid indicates the direction along which the mechanism can move with the least effort, while the minor axis indicates the direction along which the mechanism is stiffest, i.e., the mechanism’s actuators can resist forces with minimum effort along this direction. The force manipulability uses duality relation between velocity and force (between differential kinematics and statics). Beside manipulability ellipse/ellipsoid, the manipulability can also be represented by manipulability polytope.

Tanev and Stoyanov [48] have introduced the use of normalized manipulability index which is bounded between zero and unity. Doty et al. [49] proposed weighted twist manipulability and weighted wrench manipulability. Furthermore, a new manipulability measure for parallel robot was introduced by Hong and Kim [50].

### 2.6. Stiffness

Beside the workspace, stiffness or rigidity of a robot structure plays a very important role as it affects the accuracy and repeatability of the robot. Stiffness is defined as the ability of the robot structure to resist deformation due to wrench. A stiffness matrix relates deformation vector to wrench vector. Another term equivalent to the stiffness is compliance (flexibility). If a structure has high stiffness, it means that the structure has low compliance. A compliance matrix is simply the inverse of the stiffness matrix, and vice versa. The stiffness includes static stiffness and dynamic stiffness. For machine tool, high stiffness enables machining with high speed and feed while providing good precision, accuracy, and surface finish.

Stiffness of a mechanism depends on the robot topology, geometry, and material of the mechanism. The overall stiffness is comprised of the stiffness of the fixed base, the moving platform, the joints, and the links. The stiffness of the joints includes that of the active joints (actuators) and the passive joints. Many works discussed the influence of the passive joints on the robot stiffness. The stiffness of the links is usually defined in axial direction (axial stiffness), transversal direction (bending stiffness), or both of them. To simplify stiffness model, rigid body assumption is frequently applied to one or several components of the robot. For example, joints can be considered elastic while the links are assumed to be rigid, or vice versa. A more realistic model usually consider both of the joints and the links as elastic. In hybrid machine tools, many works have proposed the use of parallel mechanism for the spindle platform and serial mechanism for the worktable, as the most flexible part of the machine is usually the spindle platform. Furthermore, some works have suggested the use of passive legs to increase the stiffness such as in Tricept and Georg V.

Stiffness is a local property. It depends on the robot configuration (posture). To evaluate globally, global stiffness measures are used. Furthermore, stiffness varies with the direction in which it is evaluated as well as the direction of the wrench. Therefore, stiffness can be identified in different directions, either translational directions (translational stiffness) or rotational directions (rotational stiffness).

In the literature, compliance which is the inverse of stiffness is sometimes used instead of stiffness. Several different expressions of stiffness have been used in the literature, including engineering stiffness, generalized stiffness matrix, and Cartesian stiffness matrix. The engineering stiffness is a one-dimensional stiffness expression obtained by evaluating the displacement in the same direction to the applied force [51]. The generalized stiffness matrix, according to Quennouelle and Gosselin [52], includes three contributions: stiffness of the unconstrained joints, stiffness due to dependent coordinated and internal wrench, and stiffness due to external wrench. In other words, the generalized stiffness matrix is sum of the three stiffness components.

The Cartesian stiffness matrix is the most widely used expression of stiffness. Ruggiu [53] shows that Cartesian stiffness matrix of a mechanism is the Hessian of its potential energy expression. Cartesian stiffness matrix is symmetric and positive definite or positive semi-definite. However, some researchers concluded that the Cartesian stiffness matrix of the elastic structure coupling two rigid bodies is asymmetric in general and becomes symmetric if the connection is not subjected to any preloading. Different expressions of Cartesian stiffness matrix are mentioned by Klimchik [54] and Quennouelle and Gosselin [52]. The latter authors proposed a Cartesian stiffness matrix which can take into account non-zero external loads, non-constant Jacobian matrices, stiff passive joints, and additional compliances. Furthermore, the Cartesian matrix can be directly related to the generalized stiffness matrix by utilizing the Jacobian matrix.

In robots with translational and rotational DOF, the Cartesian stiffness matrix will be unit inconsistent. Consequently, evaluation of further stiffness indices such as stiffness condition number becomes nonsense. To deal with this problem, several approaches have been proposed including the following:

Homogenizing the Jacobian matrix (such as using characteristic length) and subsequently using the homogenized Jacobian matrix to calculate the stiffness matrix [55, 56].

Eigenscrew decomposition of the stiffness or compliance matrix [57–60].

Principal axis decomposition through congruence transformation was proposed by making use of the eigenvectors of the translational entry in the stiffness matrix [61].

Decomposition of the dynamic inertia matrix by transforming variables into dimensionless parameters, which can be applied to the stiffness matrix [62, 63].

Decoupling of the stiffness matrix into translational parts and rotational parts [64–66].

Furthermore, to model the robot stiffness beyond using continuous model which works only for simple system, the following three different models are widely used in the literature:

Jacobian matrix-based model; also called lumped parameter model or virtual joint method (VJM) model. A one-dimensional VJM was introduced by Gosselin [67], followed by Anatol et al. [68] who introduced multi-dimensional VJM. This model is widely used and preferred in robotics since it is analytical, and therefore the same expression works for all configurations of the robot and it requires lower computational cost. However, it gives lower accuracy but still acceptable. For that reason, this method is good for initial estimates of the robot stiffness as well as for design optimization purpose.

Finite element model (FEM). As opposite of the lumped parameter model, this model discretizes the mechanism into many elements and therefore can also be called distributed model which implies more closeness to the realistic, continuous model. It is widely used in structural mechanics due to its high accuracy. However, it requires high computational cost. Furthermore, it needs new mesh at every different configuration of the robot which makes it not practical. Due to its high accuracy, this model is usually used to verify another less accurate model such as VJM model.

Matrix structural analysis (MSA) model. This model is actually a special case of FEM model because it uses one-dimensional finite elements such as beam elements instead of two or three dimensional elements such as brick elements. As a result, the computational cost decreases. This model gives trade-off between accuracy and computational cost [69].

After that, modifications and improvements on the aforementioned methods have been conducted, such as follows:

Evaluation of stiffness can also be conducted by experimental method, i.e., from measurement. In this case, the stiffness is obtained from the relation between measured wrench and measured displacement. Another way to evaluate the stiffness is by estimation or identification of the stiffness model. Least squares estimation algorithm or other estimation algorithms can be utilized in the estimation based on measurement data.

As a performance measure, the robot stiffness is represented in the following different ways in the literature:

Graphical representations including stiffness maps, by which the stiffness distribution can be plotted [67, 73], and other graphical representations such as iso-stiffness curves or surfaces (global) [2].

Trace of the stiffness matrix.

Weighted trace of the stiffness matrix [74].

(Minimum, average, or maximum) eigenvalues (and eigenvectors) of the stiffness matrix [51]. For example, the evaluation of minimum and maximum eigenvalues across the workspace by Li and Xu [56].

Mean value of the eigenvalues [70].

Determinant of stiffness matrix, which is the product of the stiffness matrix eigenvalues), and indicates the area/volume of a stiffness ellipse/ellipsoid. It also indicates how far from singularity.

Norm of the stiffness matrix, which can be its Euclidian norm, Frobenius norm, or Chebyshev norm [75].

Center of stiffness or equivalently center of compliance [76].

Global compliance index which is given by mean value and deviation of generalized compliance matrix [77].

Virtual work stiffness index which is able to avoid the problem caused by different units of translation and orientation

Collinear stiffness value (CSV) [78].

### 2.7. Stiffness condition number

Stiffness condition number is a local measure. It depends on the robot configuration. In similar token to the Jacobian condition number, the stiffness condition number can take a value ranging from 1 to infinity. Alternatively, inverse of the stiffness condition number which takes value ranging from 0 to 1 can also be used. Since the stiffness condition number represents the isotropy or uniformity of the stiffness of any point in the workspace, stiffness ellipses/ellipsoids are commonly used as the graphical representation.

Similar to Jacobian condition number, different definition of norms can be used to evaluate the stiffness condition number. The commonly used norms are 2-norm, Frobenius norm, and weighted Frobenius norm. The considerations in selecting any of them is explained earlier when the Jacobian condition number is discussed.

The global stiffness condition number is commonly expressed by global stiffness index (GSI) which is usually defined as the inverse of the condition number of the stiffness matrix integrated over the reachable workspace divided by the workspace volume. It depicts the uniformity of stiffness within the whole workspace.

## 3. Design optimization

In terms of the number of objectives being optimized, optimization can be either single-objective (also called single-criteria) or multi-objective (also called multi-criteria). The simplest way of design optimization is by trial and error in which we pick several values of design parameters based on intuition, knowledge, or experience, and compare the corresponding objective values. However, this approach is non-systematic as well as does not cover all possible values of the design parameters and therefore may not give optimum solutions. In the literature, performance atlas and optimization algorithms are commonly used in the design optimization of mechanisms. The performance atlas presents graphically the relation between the design parameters (length of the links) and the performance measures. Several performance atlases such as atlas of workspace, atlas of GSI, and atlas of LSI have been used in the literature. For single-objective optimization, the use of performance atlas is easy and straightforward. However, a multi-objective optimization requires inspection of several atlases which might give inconvenience, particularly when some objectives are conflicting each other.

Beyond the use of performance atlas, various algorithms for optimization of PKMs and HKMs have been utilized. Based on the search principles, those techniques fall into two main categories: gradient-based optimization techniques and population-based optimization techniques. The first category is a local search algorithm. It is deterministic and can be linear or nonlinear depending on the problem. The latter category is stochastic and does not need gradient information. One of the most popular population-based techniques is the genetic algorithm which is an evolutionary optimization technique and works based on the idea of natural selection or survival of the fittest. The genetic algorithm can be implemented for both single-objective and multi-objective optimization. For the latter implementation, several techniques have been developed such as VEGA, NPGA, NPGA-II, NSGA, NSGA-II, PAES, PESA, PESA-II, SPEA, SPEA-II, SPEA-II+, and many others [79–84]. Beyond the genetic algorithm, several global optimization algorithms have also been proposed in the literature, such as controlled random search (CRS) [85], differential evolution (DE) [86, 87], particle swarm optimization (PSO) [88–90], quantum particle swarm optimization (QPSO) [91], and artificial neural network (ANN) [74]. The following will be showing more details on both types of optimization.

### 3.1. Single-objective optimization

Although single-objective optimization is straightforward, different algorithms might be used to search the optimal solution. For parallel mechanism, if only single-objective is to be optimized, then it would be usually the workspace since the main drawback of parallel mechanisms is their limited workspace.

Beyond the use of widely used gradient-based optimization algorithms, various algorithms have been proposed for single-objective optimization of PKMs. Hosseini et al. [32] used genetic algorithm to optimize the dexterous workspace of a Tricept PKM. Kordjazi et al. [92] used genetic algorithm combined with fuzzy logic algorithm to optimize the Jacobian matrix isotropy of PKM and showed that the result is better than using genetic algorithm alone. Arana [93] proposed a methodology to enlarge the workspace of parallel manipulators by means of non-singular transitions. Ghao and Zhang [25] proposed the use of particle swarm optimization (PSO) to optimize the workspace of 3-DOF spatial parallel mechanism.

### 3.2. Multi-objective optimization

In most cases, there are more than one objectives required to be optimized. Furthermore, some objectives quite frequently are conflicting each other. For example, most PKMs usually require not only larger workspace but also stiffer structure with lower mass. In fact, enlarging the workspace usually requires longer links which results in the reduction of the stiffness and the increase of mass. Multi-objective optimization can be bi-objective or many-objective optimization. The earlier is simpler than the latter. The inclusion of more than two objectives generally requires more computational cost. It also gives more difficulty in the visual representation. If more than three objectives are involved, graphical plots can only be done for three varying design parameters while the rest should be fixed. An alternative approach to reduce the number of objectives in the optimization is by putting performance index threshold value as optimization constraint. However, this approach is only suitable if the need is only to satisfy the threshold.

In the multi-objective optimization, different objectives (criteria) might be picked based on the priority of the objectives which depends on the application. Two main methods commonly used for multi-objective optimization are:

Scalarization method which is commonly conducted by putting the weighted multiple objective functions into one composite objective function. While transforming the problem into one objective function gives simplicity, the determination of appropriate weights is difficult, even for those who are familiar with the problem. This approach can be conducted through gradient-based optimization methods as well as single-objective evolutionary methods (such as single-objective genetic algorithm).

Pareto method which will give non-dominated solutions. This method can be conducted through multi-objective evolutionary methods (such as multi-objective genetic algorithm).

Different objectives, depending on the application needs, and various algorithms have been proposed for multi-objective optimization of PKMs. Hodgins [94] optimized the workspace, the stiffness, and the dexterity of a modified Delta robot by using weighted sum optimization method. Kelaiaia et al. [95] optimized the kinematic dexterity as well as the dynamic dexterity by using genetic algorithms. Wu [96] optimized the GCI and GDI of a 3RRR spherical parallel mechanism, which can be used as orienting device, by using genetic algorithm. Bounab [97] optimized the dexterous regular workspace and the stiffness of a delta mechanism by using genetic algorithm. Shijun [3] optimized GDI, GSI, and the ratio of the workspace to the work volume using genetic algorithm. Gao et al. [74] optimized the stiffness and dexterity by using genetic algorithm and artificial neural network. Abbasnejad et al. [91] implemented particle swarm optimization (PSO) and quantum particle swarm optimization (QPSO) to optimize the workspace and the dexterity as weighted sum objective, and showed that QPSO has faster convergence than PSO. Furthermore, Gao and Zhang [98] introduced a comprehensive index to integrate four different objectives.

## 4. Recommendations

It appears that mixed DOFs result in inconsistency of the indices while many PKMs should have mixed DOFs to do the required tasks. For this reason, the authors suggest that the introduction of any new index in the future should be able to overcome this issue in a more natural way so that the physical insights of the index will be as sound and intuitive as possible. Furthermore, the authors have not found any published work discussing the optimization of a large number of performance measures. While a good number of attempts have been done to handle up to three or four objective functions, it will be practically useful yet challenging to handle larger number of objective functions. Knowing that the determination of appropriate weights in the scalarization approach is not easy even for two to four objective functions, it definitely will be more difficult to put appropriate weights to larger number of objectives while it may be no more practical to use the Pareto approach for the larger number of objectives. Therefore, the authors suggest the introduction of new approach or technique to reliably optimize larger number of objective functions.

## 5. Conclusion

This chapter provided a comprehensive overview of the literature related to a good number of kinematic performance indices that designers would be interested in using during the design of parallel kinematics mechanisms. Kinematic performance indices such as workspace, Jacobian condition number, manipulability, stiffness magnitude, and stiffness condition number are of a prime interest to designers to optimize parallel kinematic mechanism designs. However, many of these indices are conflicting such as the increase in workspace size could lead to a decrease in stiffness and/or would lead to reduced speed. Therefore, using optimization techniques is the solution to accommodate such conflicting requirements by providing appropriate weights for the different objectives to reflect the designer’s interests and priorities. Nevertheless, devising the proper objective function requires extensive experience and insight into the problem. The proper combination of objectives with the suitable weights will highly impact the design parameters results and hence should be chosen carefully. In summary, this paper attempted to provide comprehensive overview of what is needed by parallel kinematic mechanism designer to optimize their design and mechanism performance.