CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC...

104
61 CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC POLYNOMIAL CURVES 4.1 STAGE 1: MINIMUM TIME TRAJECTORY PLANNING 4.1.1 Introduction Generally joint trajectories are represented by cubic polynomial curves with nodes uniformly distributed along timescale. This choice can be justified by the well-known characteristics of cubic polynomial functions; continuity of second order is guarantied and their lower order greatly limits oscillations and enables us to easily compute the extreme values between two consecutive nodes. Gideon Sahar et al (1984) presented a method to calculate time- optimal trajectory based on dynamic scaling algorithm for a 2-link planar robot. In this stage, an optimization procedure based on Simple Genetic algorithm (SGA) for the problem dealt by Gideon Sahar et al (1984) is proposed. This is a non-linear constrained optimization problem with 1 objective function (minimum time (t)), 2 constraints (robot joint torques: u min < u 1 , u 2 < u max ) and 4 variables (robot joint velocities ( . 1 q , . 2 q ) and joint accelerations ( .. 1 q , .. 2 q )). 4.1.2 Problem Formulation The time-optimal trajectory planning problem can be written as the following non-linear optimization problem:

Transcript of CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC...

Page 1: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

61

CHAPTER 4

OPTIMAL TRAJECTORY PLANNING USING

CUBIC POLYNOMIAL CURVES

4.1 STAGE 1: MINIMUM TIME TRAJECTORY PLANNING

4.1.1 Introduction

Generally joint trajectories are represented by cubic polynomial

curves with nodes uniformly distributed along timescale. This choice can be

justified by the well-known characteristics of cubic polynomial functions;

continuity of second order is guarantied and their lower order greatly limits

oscillations and enables us to easily compute the extreme values between two

consecutive nodes.

Gideon Sahar et al (1984) presented a method to calculate time-

optimal trajectory based on dynamic scaling algorithm for a 2-link planar robot.

In this stage, an optimization procedure based on Simple Genetic algorithm

(SGA) for the problem dealt by Gideon Sahar et al (1984) is proposed. This is a

non-linear constrained optimization problem with 1 objective function

(minimum time (t)), 2 constraints (robot joint torques: umin < u1, u2 < umax) and

4 variables (robot joint velocities (.

1q ,

.

2q ) and joint accelerations (..

1q ,..

2q )).

4.1.2 Problem Formulation

The time-optimal trajectory planning problem can be written as the

following non-linear optimization problem:

Page 2: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

62

Objective function = Minimize tf =∑t (4.1)

Subject to constraints

umin < u1,u2 < umax

θ(0) = θo

.

q (0) = 0

θ(tf) = θf

.

q (tf) = 0 (4.2)

where, θ(0), θ(tf) are initial (at t=0) and final (at t=tf) angular displacements.

.

q (0), .

q (tf) are initial and final angular velocities. The summation sign in

Equation (4.1) denotes that the quantity is being summed at particular interval

for the total duration of travel. The number of intervals is taken as 20 (Gideon

Sahar et al 1984). The time optimal trajectory planning problem is to find the

minimum travelling time (tf), so that the robot starts from a given initial state

θ(0) and .

q (0) ends in final state θ(tf) and .

q (tf) and such that the joint torques

u1 and u2 should be within their limits umin (minimum torque) and umax

(maximum torque).

4.1.3 Numerical Example

The dynamic system of interest is two degree-of-freedom (i.e., planar)

robotic manipulator as shown in Figure 4.1. The various parameters of the

manipulator are given in Table 4.1 (Gideon Sahar et al 1984).

Page 3: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

63

Figure 4.1 Two link planar manipulator model

Table 4.1 Properties of the two link (planar) robot arm

Length of the first link (L1) 0.5m

Length of the second link (L2) 0.5m

Mass of the first link (M1) 50kg

Mass of the Second link (M2) 30kg

Moment of inertia of the first link about its centroid (I1) 5kg –m2

Moment of inertia of the second link about its centroid (I2) 3kg –m2

The following are equations of motion for a two degree of freedom

planar manipulator (Gideon Sahar et al 1984):

u1 = I1 + I2 + ¼ [(M1L12 + M2L2

2) + M2L1

2 + M2L1L2c2]

..

1q +(I2 + ¼ M2L22 + ½

M2L1L2c2)..

2q –½M2L1L2s2

.

2q2- M2L1L2s2

.

1q.

2q + +(½ M2L2c1+2+L1(½M1+M2)c1)g

(4.3)

u2 = (I2 + ¼ M2L22 + ½ M2L1L2c2)

..

1q +(I2 + ¼ (M2L22)

..

2q +½ M2L1L2s2

.

1q2

+ ½

M2L2c1+2 g

(4.4)

Page 4: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

64

where, θi, Li, Mi, Ii and ui are the joint angle, length, mass, moment of inertia and

torque respectively of robot link i, si (ci) are the sine (cosine) of joint i variable,

c1,2 is cos(θ1+θ2) and g is gravitational force, where i=1,2. The torque bounds

were chosen as -350Nm ≤ u1 ≤ 350Nm, -100Nm ≤ u2 ≤ 100Nm.

Two motions (cases) of the robot arm are considered as in Table 4.2.

The variables considered for this problem are robot joint velocities (.

1q ,.

2q ) and

joint accelerations (..

1q ,..

2q ). The bounds of the variables are given below:

Variables limits for case 1:

-1<.

1q <1.9, -12.2< ..

1q < 3.5, 0.1<.

2q <3.9, -20<..

2q <37

Variables limits for case 2:

-0.1<.

1q <-3.25, -23<..

1q <14, 0.5<.

2q <6.5, -25<..

2q <45

4.1.4 Results and Discussion

The results of both case 1 and case 2 from SGA are given in Table 4.2,

with initial and final velocities taken to be zero. Figure 4.2(a) and 4.2(b) show

the path for case 1 (moving from [-0.5, -1.0] to [0.5, 1.0]) in joint space and

cartesian space respectively. The Figure 4.2(a) and 4.2(b) illustrate the tendency

of the algorithm to find a path which is not a straight line, neither in joint-space

nor in cartesian space, but is not too far from being one in joint space. The best

path tends to be one where the arm rearranges slightly its configuration, so that

dynamically it will be easier to move. Therefore, joint θ1 starts by moving

backwards. In contrast, moving from a fully extended position for case 2

([0.0, 0.0] to [-π/3, 2π/3]) in joint space, results in a straight line (Figure 4.3).

Page 5: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

65

This is the result of a particular configuration of the arm, where the elbow is

pointing down, and gravity does not have much effect on motion. Therefore, the

fastest path is also the shortest one, a straight line in joint space, which for this

configuration also happens to be a straight line in cartesian space. The SGA

result histories are shown in Figure 4.4. From Figure 4.4, it is observed that SGA

converges within 10 generations.

.

(a) (b)

Figure 4.2 Moving from (-0.5, -1.0) to (0.5,1.0) (case 1), (a) Motion in joint

space, (b) Motion in Cartesian space

Figure 4.3 Moving from (0.0,0.0) to (-π/3, 2π/3) in joint space (case2)

Page 6: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

66

Table 4.2 Configurations of the robot and optimal travel time

Initial

Position

(rad)

Final

Position

(rad)

Optimal travel time (seconds)

Case

θ1 θ2 θ1 θ2 DSA (Gideon Sahar et al

1984) SGA

1 -0.5 -1.0 0.5 1.0 0.836 0.526316

2 0.0 0.0 -π/3 2π/3 0.525 0.322215

SGA RESULT HISTORIES

0

0.2

0.4

0.6

0.8

1 11 21 31 41 51 61 71 81 91 101

GENERATION NUMBER

TIM

E (

S)

CASE 1

CASE 2

Figure 4.4 SGA result histories

4.1.4.1 SGA Parameters

Following are the values of the parameters of SGA technique that give

best optimal results: Crossover Type: Binary GA (Single-pt), Population size =

80, Total number of generations = 100, Cross over probability = 0.6, Mutation

probability = 0.01, Sigma-share value = 0.2810, Sharing strategy: sharing on

Parameter space.

4.1.5 Limitations

This stage considers only time-optimal trajectory planning. But

planning of robot trajectory using energy criteria provides several advantages

Page 7: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

67

(Mark L. Nagurka and Vincent Yen 1987). It yields smooth trajectories easier to

track and reduces stresses to the actuators and to the manipulator structure. So in

the next stage minimum energy trajectory planning is considered.

4.2 STAGE 2: MINIMUM ENERGY TRAJECTORY PLANNING

4.2.1 Introduction

Mark L. Nagurka and Vincent Yen (1987) used a nonlinear

programming approach to find minimal torque trajectory planning for a two link

planar robot. In this work, it is proposed to use simple genetic algorithm (SGA)

for the problem dealt by Mark L. Nagurka and Vincent Yen (1987).

4.2.2 Problem Formulation

The torque-optimal trajectory planning can be written as the following

non-linear optimization problem:

Objective function

Minimize total torque function (TF) = dtTT

t

o

∫ + )( 2

2

2

1 (4.5)

Subject to constraints

θ(0) = θo

.

q (0) = 0

θ(tf) = θf

.

q (tf) = 0

.

q min < .

q < .

q max

..

q min < ..

q < ..

q max (4.6)

Page 8: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

68

where, θ(0), θ(tf) are initial and final angular displacements, .

q (0), .

q (tf) are

initial and final angular velocities and tf is travelling time of the robot. The

torque-optimal trajectory planning problem is to find the minimum total torque

function (TF) for the robot that starts from a given state θ(0) and .

q (0) ends in

final state θ(tf) and .

q (tf) while ensuring the control joint velocities and joint

accelerations within their limits. The joint velocities and accelerations bounds

are 0<.

q < 4, -11<..

q <14.

4.2.3 Numerical Example

The dynamic system of interest is the two degree-of-freedom

(i.e., planar) robotic manipulator shown in Figure 4.5. If acceleration due to

gravity acts in a direction perpendicular to the x-y plane, the following are

equations of motion (Mark L. Nagurka and Vincent Yen 1987):

2

.

1

.

1

2

2

.

2

..

121

..

111 2 qqHqHqHqHT −−+= (4.7)

2

1

.

2

..

221

..

122 qHqHqHT ++= (4.8)

where, the coefficients of the joint angular rates are the effective mass moments

of inertia given by:

2211

2

1

2

121

2

1111 ]cos2[ IdDdDMIdMH +++++= θ

2

2

2222 IdMH +=

2

2

22221212 cos IdMdDMH ++= θ

2212 sinθdDMH =

Page 9: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

69

Here the mass of robot link i is Mi, the centroidal mass moment of

inertia of robot link i is Ii , the center of mass of robot link i is located on the

centerline passing through adjacent joints at a distance di from robot joint i, and

the length of robot link i is Di . In Equations (4.7) and (4.8), the first two terms

on the right side represent inertial torques, while the third term represents the

effective centrifugal torque. The fourth term in Equation (4.7) represents the

effective coriolis torque. The path specification is to move the manipulator from

initial position [θ1(0), θ2(0)] = [0°, 30°] to final position [θ1(t), θ2(t)] =

[120°, 60°] with the initial and final velocities as zero. The final travelling time

‘tf’ is known here (1 second). A cubic polynomial function is used for defining

the trajectory. The cubic polynomial function has four coefficients that are found

by using Simple Genetic Algorithm (SGA).

Figure 4.5 Two link planar manipulator model

4.2.4 Results and Discussion

The properties of 2-link robot arm are given in Table 4.3 (Mark L.

Nagurka and Vincent Yen 1987). The results obtained from various techniques

are given in Table 4.4. The optimum variables obtained from SGA are

Page 10: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

70

a1= -4.1888, a2=6.2832, a3=0, a4=0, a5= -1.0472, a6=1.5708, a7=0, a8=0.5236.

The optimal displacement (Q - rad), velocity (V-rad/s) and acceleration

(W – rad/s2) for robot joints 1 and 2 are given in Figures 4.6 and 4.7

respectively. From Table 4.4, it is observed that SGA gives better results than

Fourier series (Mark L. Nagurka and Vincent Yen (1987)). The result history of

SGA is given in Figure 4.8. From Figure 4.8, it is noted that SGA converges

quickly (within 20 generations).

Table 4.3 Properties of the two link (planar) robot arm (Mark L.

Nagurka and Vincent Yen 1987)

Length of the first link (D1) 1.0m

Length of the second link (D2) 1.0m

Mass of the first link (M1) 9.81N

Mass of the Second link (M2) 9.81N

Moment of inertia of the first link about its centroid (I1) 0.981N –m2

Moment of inertia of the second link about its centroid (I2) 0.981N –m2

Table 4.4 Optimum results

Technique TF (N2-m

2-s)

Fourier series (Mark L. Nagurka and Vincent Yen 1987) 341.8

SGA 91.1

Page 11: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

71

JOINT 1

-15

-10

-5

0

5

10

15

0 0.2 0.4 0.6 0.8 1

TIME (S)

Q

V

W

Figure 4.6 Optimal motions of robot joint 1

JOINT 2

-4

-3

-2

-1

0

1

2

3

4

0 0.2 0.4 0.6 0.8 1

TIME (S)

Q

V

W

Figure 4.7 Optimal motions of robot joint 2

SGA RESULT HISTORY

0

20

40

60

80

100

120

140

1 11 21 31 41 51 61 71 81 91

GENERATION NUMBER

TIM

E (

S)

Figure 4.8 SGA result history

Page 12: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

72

4.2.4.1 SGA Parameters

Following are the values of the parameters of SGA technique that give

best optimal results: Crossover Type: Binary GA (Single-pt), Population size =

80, Total number of generations = 100, Cross over probability = 0.6, Mutation

probability = 0.01, Sigma-share value = 0.2810, Sharing Strategy: sharing on

Parameter Space.

4.2.5 Limitations

This stage considers only one objective function (minimum energy).

In order to improve the performance it is required to consider more number of

objective functions.

4.3 STAGE 3: COMBINED-OBJECTIVE (MINIMUM TIME AND

ENERGY) TRAJECTORY PLANNING WITHOUT

OBSTACLES

4.3.1 Introduction

The aim of this stage is to develop a minimum cost trajectory planning

for industrial robots (PUMA 560 and 3-link planar robot manipulators) using

NSGA-II and DE by considering minimization of travelling time and energy.

The objective is to minimize a cost function subjected to constraints such as

robot joint positions, velocities, accelerations, jerks and torques and obstacle

avoidance constraint. A cubic polynomial curve is used to represent the

trajectory. This problem has 2 objective functions, 30 constraints (maximum)

and 144 variables (maximum).

Page 13: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

73

4.3.2 Problem Formulation

4.3.2.1 Objective Functions

The quality of motion strongly depends on the combined objective

(cost) function F. It represents the transfer cost between initial and final postures.

The cost function is a weighted balance of transfer time and mean average of

actuators efforts and power.

Minimize F= w1z1/N1+ w2 z2/N2 (4.9a)

where,

z2 = (B+ C);

B = Quadratic average of actuator efforts = dt

T n

j

ijij

i

2

0 1

max6

1

)/(∫ ∑∑ ==ττ (4.9b)

C = Quadratic average of corresponding power

= dtqq

T n

j

ijijijij

i

2

0 1

maxmax..6

1

)/(∫ ∑∑ ==ττ (4.9c)

where, z1 is the travelling time between initial and final configurations (t). ij

q.

is

the robot joint velocity, ij

q..

is the robot joint acceleration, ij

q...

is the robot joint

jerk, max.

ijq is the maximum value of the robot joint velocity. ijτ is the robot joint

torque, max

ijτ is the maximum value of robot joint torque. Total number of knot

points considered for cubic polynomial curve is 7. ‘i’ is segment number (1 to 6),

‘j’ is robot joint number (1 to 6 for PUMA 560 robot in application 1 (pick and

place operation), 1 to 3 for 3-link planar robot in application 2 (motion planning

in the presence of obstacles)). ‘n’ is maximum joint number of the robot (6 for

PUMA 560 robot in application 1, 3 for 3-link planar robot in application 2).

w1 and w2 are weightage values given to objective functions z1 and z2. N1 and N2

are normalizing parameters of objective functions z1 and z2.

Page 14: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

74

4.3.2.2 Constraints

30 constraints for PUMA 560 robot in application 1, and

16 constraints for 3-link planar robot in application 2 are considered. Constraints

represent the physical limitations imposed on robot kinematic and dynamic

performances. The following are the constraints:

Joint torques: max)( ijij t ττ ≤ , i=1…6, j=1…n (4.10a)

Joint jerks: max......

)(ijij qtq ≤ , i=1…6, j=1…n (4.10b)

Joint accelerations: max....

)(ijij qtq ≤ , i=1…6, j=1…n (4.10c)

Joint velocities: max..

)(ijij qtq ≤ , i=1…6, j=1…n (4.10d)

Joint displacements: max

)(ijij qtq ≤ , i=1…6, j=1…n (4.10e)

Obstacle avoidance: dlq (t) >0 for (l, q) ∈ I (4.10f)

where, max..

ijq is the maximum value of the robot joint acceleration,

max...

ijq is the

maximum value of the robot joint jerk. ‘l’ denotes the obstacle. ‘q’ denotes the

trajectory. The set dlq(t) defines distances between the points in the sets dl(t) and

dq(t). The set dl(t) defines all points of the obstacles and the set dq(t) defines all

points of the trajectory. Equation (4.10f) gives obstacle avoidance, where,

‘I’ represents the universal set. From the relations (4.10a–f), we can take note of

a fact that not all motions are tolerable; the power resources are limited and must

be used rationally in such a way that the robot dynamic behaviour is correctly

controlled. Jerk constraints are introduced due to the fact that joint position

tracking errors increase when jerk increases, and also to limit excessive wear on

Page 15: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

75

the robot so that the robot life span is extended. NSGA-II and DE can handle the

non-symmetrical bounds on the above physical quantities without any

difficulties.

4.3.2.3 Variables

The planning of optimal dynamic motion is a generic optimal control

problem. It is transformed into a parametric optimization problem. Joint

variables are expressed as a function of set of parameters. These parameters are

varied inside a non-linear optimization program until an optimum satisfying

constraint has been reached. Joint trajectories are represented by cubic

polynomial functions with nodes uniformly distributed along timescale

(Figure 4.9). This choice can be justified by the well-known characteristics of

cubic polynomial functions; continuity of second order is guarantied and their

lower order greatly limits oscillations and enables us to easily compute extremal

values between two consecutive nodes. By parameterizing the joint trajectories,

variables of the problem become the position of cubic polynomial nodes.

Constraints that must be handled are those defined by the relations (4.10a-f).

Figure 4.9 Cubic spline approximation of joints position temporal

evolution

Page 16: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

76

In many practical cases, these factors as well as bounds (4.10a–f) are

in fact necessary. Otherwise, the optimization process may lead either to a

solution that is not physically feasible (violation of a technological constraint) or

to a biased solution in case of a problem involving a large difference in torque

magnitudes from one actuator to the other. The expressions for position,

velocity, acceleration and jerk of robot joint using cubic polynomial curve are

ijq =a0ij

+a1ijt+a2ij

t2+a3ij

t3 (4.11)

ij

q.

= a1ij

+2a2ijt+3a3ij

t2 (4.12)

ij

q..

= 2a2ij

+6 a3ij

t (4.13)

ij

q...

= 6a3ij

(4.14)

where, ijq is joint displacement, a0ij

, a1ij

, a2ij

and a3ij are polynomial coefficients.

The polynomial coefficients of the cubic polynomial equations that represent the

trajectories are considered as the variables. So there are 144 variables for

PUMA 560 robot in application 1 and 72 variables for 3-link planar robot in

application 2.

4.3.3 Industrial Applications

Two industrial applications are considered here. Optimal trajectory

planning for an industrial robot with six degrees of freedom (PUMA 560 robot

(Figure 4.10)) doing a pick and place operation is considered as the first

application. This application has five objective functions, 30 constraints and

144 variables. The second application is the trajectory planning in the presence

of fixed obstacles for 3-link planar robot. In this application, five objective

functions, 16 constraints and 72 variables are considered. 3-link planar robot is a

Page 17: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

77

typical example of redundant type robot category and also it has only three

rotational motions. But PUMA 560 robot with six revolute joints is a non-

redundant type robot. It has 6 rotating or revolute motions (Cristina Santos and

Manuel Ferreira 2008).

4.3.3.1 Application 1 (Pick and Place Operation)

A standard six degrees of freedom PUMA 560 robot is considered

here (Figure 4.10), whose geometrical and inertial arm parameters are listed in

Table 4.5 (Saramago and Valder Steffen Junior 2002). The transfer must be done

without violating bounce on kinematic and dynamic performances given in

Table 4.6 (Saramago and Valder Steffen Junior 2002). Transfer between initial

and final postures is executed in a smooth way without violating imposed

constraints.

Figure 4.10 PUMA560 robot

Page 18: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

78

Table 4.5 Geometric and inertial parameters of PUMA560 (Saramago

and Valder Steffen Junior 2002)

Joint

N° 1 2 3 4 5 6

α(rad) π/2 0 -π/2 π/2 -π/2 0

di(m) 0 0.4318 0.0203 0 0 0

ri(m) 0 0 0.15005 0.4318 0 0

M(N) - 170.694 47.088 8.0442 3.3354 0.8829

Px(m) 0 -0.3638 -0.0203 0 0 0

Py(m) 0 0.006 -0.0141 0.19 0 0

Pz(m) 0 0.2275 0.07 0 0 0.032

Ixx(Nm2) 0 1.2753 0.64746 0.017658 0.002943 0.0014715

Iyy(Nm2) 3.4335 5.14044 0.84366 0.012753 0.003924 0.0014715

Izz(Nm2) 0 5.28759 0.122625 0.017658 0.002943 0.003924

Ixy(Nm2) 0 0 0 0 0 0

Iyz(Nm2) 0 0 0 0 0 0

Ixz(Nm2) 0 0 0 0 0 0

Table 4.6 Limiting parameters used for PUMA 560 (Saramago and

Valder Steffen Junior 2002)

Joint N° 1 2 3 4 5 6

QC(rd) π 3π/4 3π/4 π 3π/4 3π/4

VC(rd/s) 8 10 10 5 5 5

WC(rd/s2) 10 12 12 8 8 8

JC(rd/s3) 30 40 40 20 20 20

UC(N/m) 97.6 186.4 89.4 24.2 20.1 21.3

Page 19: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

79

Here the total number of knots (m) is 12. The robot is at rest initially,

and comes to a full stop at the end of the trajectory. So 0..

1

....

1 ====mm qqqq for

all robot joints.

4.3.3.2 Application 2 (Motion Planning in the Presence of Obstacles)

A planar robot with 3 links as shown in Figure 4.11 is considered,

whose geometrical and inertial parameters are listed in Table 4.7 (Chettibi et al

2004). The robot is asked to move between the initial point (0, -π/3,-π/10) and

final point (π/2,0,0) without having interference with fixed obstacles. Initial and

final joint velocities are null. The transfer must be done without violating bounce

on kinematic and dynamic performances given in Table 4.8 (Chettibi et al 2004).

Transfer between initial and final postures is executed in a smooth way without

violating imposed constraints.

Figure 4.11 Example of ball modeling of robot and obstacles

Page 20: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

80

Table 4.7 Geometrical and inertial parameters of 3 link planar robot

(Chettibi et al 2004)

Joint N° 1 2 3

di(m) 0.7 0.5 0.5

M(kg) 7 5 5

Px(m) 0.35 0.5 0.5

Izz(kgm2) 0.8 0.5 0.5

Table 4.8 Limiting parameters of 3 link planar robot (Chettibi et al 2004)

Joint N° 1 2 3

qmax(rad) π 3π/4 3π/4

.

q max(rad/s) 3 3 3

..

q max(rad/s2)

8 8 8

...

q max(rad/s3)

10 15 20

τmax(Nm) 30 25 25

4.3.3.3 NSGA-II Parameters

The following are the values of the parameters of NSGA-II technique

that have been used to obtain the best optimal results: Variable type = Real

variable, Population size=100, Crossover probability =0.9, Real-parameter

mutation probability =0.01, Real-parameter SBX parameter =10, Real-parameter

Mutation parameter =100, Total number of generations=100.

4.3.3.4 Differential Evolution Parameters

The following are the values of the parameters of DE technique that

have been used to obtain the best optimal results: Strategy = DE/rand/1/bin,

Page 21: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

81

crossover constant CR=0.9, number of population NP=1000, F=0.5 and total

number of generations=100.

4.3.4 Results and Discussion

4.3.4.1 Example 1 (Pick and Place Operation)

The results obtained from SQP (Chettibi et al 2004), NSGA-II and DE

techniques are presented and compared in Table 4.9 for different values of

weighting coefficients. Figure 4.12(a-d) show profiles of robot joints positions,

velocities, accelerations and jerks obtained from NSGA-II technique for case 5

in Table 4.9. Figure 4.13(a-d) show profiles of robot joints positions, velocities,

accelerations and jerks obtained from DE technique for case 5 in Table 4.9.

Graphical results are given in the following units: displacement (rad), velocity

(rad/s), acceleration (rad/s2) and jerk (rad/s

3). The time scale is given in seconds.

Transfer between initial and final postures is executed in a smooth way and, of

course, without violating imposed constraints. Figure 4.14 shows the result

histories of NSGA-II and DE techniques for w1 = w2 = 0.5 (case 5 in Table 4.9).

DE technique converges quickly and it shows its superior nature by giving better

results than NSGA-II and SQP (Chettibi et al 2004).

Table 4.9 Comparison of results

Transfer Time (T) (Sec) Transfer Cost function (F)

Case no.

w1

w2 SQP NSGA-II DE SQP NSGA-II DE

1 1.0 0.0 1.159 1.023 0.876 1.159 1.023 0.876

2 0.75 0.25 1.819 1.624 1.524 1.376 1.275 1.207

3 0.75 1.0 1.845 1.312 1.311 1.404 1.137 1.139

4 0.5 0.0 1.159 1.023 0.876 0.608 0.512 0.438

5 0.5 0.5 1.934 1.205 1.120 0.944 0.899 0.896

6 0.5 1.0 2.675 2.021 1.998 1.370 1.339 1.323

7 0.25 0.5 2.865 1.950 1.932 0.763 0.755 0.751

8 0.25 0.75 2.788 1.300 1.301 0.752 0.749 0.742

9 0.25 1.0 4.465 2.194 1.956 1.167 1.089 0.966

Page 22: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

82

JOINT DISPLACEMENTS

-2

-1

0

1

2

3

4

0 0.5 1

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(a) Joints positions

JOINT VELOCITIES

-2

0

2

4

6

0 0.2 0.4 0.6 0.8 1 1.2

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(b) Joints velocities

JOINT ACCELERATIONS

-10

-5

0

5

10

0 0.2 0.4 0.6 0.8 1 1.2 1.4

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(c) Joints accelerations

JOINT JERKS

-30

-20

-10

0

10

0 0.2 0.4 0.6 0.8 1 1.2

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(d) Joints jerks

Figure 4.12(a-d) Optimal motion obtained using NSGA-II for PUMA 560

robot (w1=w2=0.5)

Page 23: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

83

JOINT DISPLACEMENTS

-2

-1

0

1

2

3

0 0.5 1

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(a) Joints positions

JOINT VELOCITIES

-2

0

2

4

6

0 0.2 0.4 0.6 0.8 1 1.2

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(b) Joints velocities

JOINT ACCELERATIONS

-7

-2

3

8

0 0.2 0.4 0.6 0.8 1 1.2

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(c) Joints accelerations

JOINT JERKS

-25

-20

-15

-10

-5

0

5

10

0 0.2 0.4 0.6 0.8 1 1.2

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(d) Joints jerks

Figure 4.13(a-d) Optimal motion obtained for PUMA 560 robot

(w1 = w2 =0.5) using DE

Page 24: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

84

SAMPLE RESULT HISTORIES

0

1

2

3

4

1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97GENERATION NUMBER

F

DE

NSGA-II

Figure 4.14 Result histories of NSGA-II and DE for PUMA 560 robot

w1 = w2 =0.5

4.3.4.2 Example 2 (Motion Planning in the Presence of Obstacles)

The results obtained from SQP (Chettibi et al 2004), NSGA-II and DE

techniques are presented and compared in Table 4.10. Figure 4.15(a-d) show

profiles of robot joints positions, velocities, accelerations and jerks obtained

from NSGA-II technique for w1=0.2,w2=1.0. Figure 4.16(a-d) show profiles of

robot joints positions, velocities, accelerations and jerks obtained from DE

technique for w1=0.2,w2=1.0. Graphical results are given in the following units:

displacement (rad), velocity (rad/s), acceleration (rad/s2) and jerk (rad/s

3). The

time scale is given in seconds. Transfer between initial and final postures is

executed in a smooth way and, of course, without violating imposed constraints.

Table 4.10 Comparison of results

Transfer Time (T) (sec) Transfer Cost

function (F)

w1

w2 SQP(Chettibi

et al 2004) NSGA-II DE NSGA-II DE

0.2 1.0 3.695 3.228 3.153 0.6501 0.6317

Page 25: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

85

JOINT DISPLACEMENTS

-3

-2

-1

0

1

2

0 0.5 1 1.5 2 2.5 3 3.5

TIME(S)

JOINT1

JOINT2

JOINT3

(a) Joints displacements

JOINT VELOCITIES

-2

-1

0

1

0 0.5 1 1.5 2 2.5 3 3.5

TIME (SEC)

JOINT1

JOINT2

JOINT3

(b) Joints velocities

JOINT ACCELERATIONS

-2

-1

0

1

2

0 0.5 1 1.5 2 2.5 3 3.5

TIME(SEC)

JOINT1

JOINT2

JOINT3

(c) Joints accelerations

JOINT JERKS

-2

0

2

4

6

8

0 0.5 1 1.5 2 2.5 3 3.5TIME (SEC)

JOINT1

JOINT2

JOINT3

(d) Joints jerks

Figure 4.15(a-d) Optimal motion obtained for 3 link planar robot

(w1=0.2,w2=1.0) using NSGA-II

Page 26: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

86

JOINT DISPLACEMENTS

-4

-2

0

2

0 0.5 1 1.5 2 2.5 3 3.5

TIME(S)

JOINT1JOINT2

(a) Joints displacements

JOINT VELOCITIES

-3

-2

-1

0

1

2

0 0.5 1 1.5 2 2.5 3 3.5

TIME (SEC)

JOINT1

JOINT2

JOINT3

(b) Joints velocities

JOINT ACCELERATIONS

-1

-0.5

0

0.5

1

1.5

2

0 0.5 1 1.5 2 2.5 3 3.5

TIME(SEC)

JOINT1

JOINT2

JOINT3

(c) Joints accelerations

JOINT JERKS

-5

0

5

10

0 0.5 1 1.5 2 2.5 3 3.5

TIME (SEC)

JOINT1

JOINT2

JOINT3

(d) Joints jerks

Figure 4.16(a-d) Optimal motion obtained for 3 link planar robot

(w1=0.2,w2=1.0) using DE

Page 27: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

87

The result histories of NSGA-II and DE techniques for w1=0.2,

w2=1.0 is shown in Figure 4.17. NSGA-II and DE techniques converge quickly

and also they show their superior nature by giving better results than the

conventional optimization method SQP (Chettibi et al 2004).

RESULT HISTORIES

0

5

10

15

1 7 13 19 25 31 37 43 49 55 61 67 73 79 85 91 97

GENERATION NUMBER

F

DE

NSGA-II

Figure 4.17 Result histories of NSGA-II and DE for w1=0.2,w2=1.0

4.3.5 Limitations

The following are limitations of this stage: 1. The problem is

approached as a single objective optimisation problem (using normalised

weighted objective function method, all objective functions are combined as a

single objective function), 2. The proposed approach is not applicable, if the user

does not know what weightage is to be given for each objective function, 3. The

method used in this stage cannot be directly used for treating all objectives

individually, and 4. Only one optimal solution is obtained in this stage. But for a

real world problem, a Pareto optimal front that offers more number of optimal

solutions for user’s choice is most desirable. So, in the next stage a method

based on multi objective approach is proposed.

Page 28: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

88

4.4 STAGE 4: MULTI-OBJECTIVE (MINIMUM TIME AND

ENERGY) TRAJECTORY PLANNING IN THE PRESENCE

OF FIXED OBSTACLES

4.4.1 Introduction

This stage presents a novel general method for computing the

optimal motions of an industrial robot manipulator (PUMA 560 robot

(Figure 4.18)) in the presence of fixed obstacles. The optimisation model

considers the non-linear manipulator dynamics, actuator constraints, joint

limits and obstacle avoidance. The problem considered has 2 objective

functions, 11 variables and 31 constraints.

Figure 4.18 PUMA560 robot

This stage addresses the planning of trajectories and development

of a method to find a continuous motion that takes the robotic manipulator

from a given starting configuration to a desired ending configuration without

colliding with any obstacle. This stage considers the important decision

criteria for the optimal trajectory planning of industrial robot manipulators

(minimization of travelling time and mechanical energy of the robot

Page 29: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

89

actuators). In this stage, two evolutionary algorithms namely Elitist Non-

dominated Sorting Genetic Algorithm (NSGA-II) and Multi Objective

Differential Evolution (MODE) are proposed to obtain optimal trajectory

planning for an industrial robot (PUMA 560 robot). Two methods

(normalized weighting objective functions and average fitness factor) are

combinedly used to select the best optimal solution from Pareto optimal

fronts. Two multi objective performance measures namely solution spread

measure and ratio of non-dominated individuals are used to evaluate the

strength of Pareto optimal fronts. Two multi objective performance measures

namely optimiser overhead and algorithm effort are used to find the

computational effort of NSGA-II and MODE algorithms. The trajectory

modelling can be divided into following two categories:

i. To obtain a constrained trajectory that passes through a given

number of points.

ii. To obtain a constrained trajectory given only the initial and

final points.

This stage deals with optimal trajectory modelling of first category.

Optimal robot manipulator trajectory is the one that optimizes the objective

functions and also avoids obstacles in the robots workspace.

4.4.2 Problem Formulation

The task is to move the robot end effector subject to physical

constraints and actuator limits as in Figure 4.19 for doing a pick and place

operation and avoiding the obstacles K2, K3 and K4, while minimizing the

travelling time (z1) and the energy consumed in the move (z2).

Page 30: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

90

The optimum travelling time for the robot corresponds to the

minimization of a set of time intervals h1, h2, … hm-1. This technique leads to

the maximization of the operation speed (Saramago and Valder Steffen Junior

1998, 1999, 2001). The n joints of the robot must be considered

simultaneously.

Figure 4.19 Optimal path with obstacles

The optimisation problem is defined as follows:

Minimize

z1 ∑−== 1

1

m

i

ih (4.15a)

z2= ii

m

i

T

i hqu 2.1

1

)(∑−= (4.15b)

Subject to

jji QCtQ ≤)( for j=1,2,…,n and i=1,2,…,m-1 (4.16)

jji VCtV ≤)( for j=1,2,…,n and i=1,2,…,m-1 (4.17)

jji WCtW ≤)( for j=1,2,…,n and i=1,2,…,m-1 (4.18)

jji JCtJ ≤)( for j=1,2,…,n and i=1,2,…,m-1 (4.19)

jji UCtU ≤)( for j=1,2,…,n and i=1,2,…,m-1 (4.20)

0)( >td lq for (l,q) ∈ I (4.21)

Page 31: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

91

where, hi are time intervals (decision variables), iq& - generalized velocity, ui -

generalized forces, ‘i’ represents knot number of the trajectory, ‘j’ represents

joint number of the robot, ‘m’ represents total number of the knots in the

trajectory, ‘n’ represents total number of the joints of the robot, Vji(t) is the

velocity of joint j at knot i, Wji(t) is the acceleration of joint j at knot i, Jji(t) is

the jerk of joint j at knot i, Uji(t) is the torque of joint j at knot i, VCj is the

maximum velocity of joint j, WCj is the maximum acceleration of joint j, JCj

is the maximum jerk of joint j and UCj is the maximum force/torque for joint

j. ‘l’ denotes the obstacle. ‘q’ denotes the robot. The set dlq(t) defines

distances between the points in the sets dl(t) and dq(t). The set dl(t) defines all

points of the obstacles and the set dq(t) defines all points of the robot.

Equation (4.21) gives the obstacle avoidance, where ‘I’ represents the

universal set.

4.4.2.1 Kinematic and Dynamic Models

According to Saramago and Valder Steffen Junior (1999), the

generalized forces ui are calculated as

( )[ ] ( )[ ] ( )∑∑∑∑∑∑ == = == =+−+= n

j

dissjji

T

jmk

T

jiijkm

n

i

j

k

j

m

n

j

j

k

k

T

jiijki FrUgmqqUJUTrqUJUTru11 1 11 1

&&&&

(4.22a)

The above equation can be rewritten as (Saramago and Valder

Steffen Junior 1999)

dissi

n

i

mk

i

k

ijk

n

j

kiji FGqqCqDu +++= ∑∑∑ = == 1

..

11

..

(4.22b)

[ ]∑== j

k

T

jiijkij UJUTrD1

)( (4.23)

Page 32: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

92

[ ]∑== j

m

T

jiijkmijk UJUTrC1

)( (4.24)

)(1

jji

Tn

j

ji rUgmG ∑= −= (4.25)

)()(..

qfqsignffF dcdiss += (4.26)

where, Dij is the inertial system matrix, Cijk is the coriolis and centripetal

forces matrix and Gi is the gravity-loading vector. Ji is the moments of inertia,

jr is the centre of mass and ‘g’ is the acceleration due to gravity with respect

to the base coordinate system. dissF is the energy dissipation, which considers

both friction (coulomb) and linear viscous damping, ffc is the coulomb force

coefficient and fd is the viscous damping coefficient. The generalized forces ui

calculated by Equation (4.22) will be used in the optimisation problem

(4.15a-b) and in the force/torque constraint equations given by Equation

(4.20).

4.4.2.2 Formulation of Trajectories

The aim is to obtain a constrained trajectory considering the

trajectory that passes through a given number of points (Figure 4.20). Let

t1<t2<…<tm-1<tm be an ordered time sequence. Let v1 and vm and a1 and am be

joint velocities and joint accelerations respectively, at the initial time t1 and

terminal time tm. A cubic polynomial function Qi(t) is defined on the time

interval. It is assumed that the displacement, velocity and acceleration are

continuous in this time interval. The second time derivative Wi(t) can be

written as

)()()( 11 ++ −+−= ii

i

iii

i

ii tW

h

tttW

h

tttW , i=1,2,…,m-1 (4.27)

Page 33: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

93

where, hi=ti+1-ti

Integrating Equation (4.27) for the given points Qi(ti) =qi and

Q(ti+1)=qi+1 the following interpolating functions are obtained:

−−

−+−+−−= ++++66

))(

2)(

2)( 11212

1ii

i

iii

i

ii

i

ii

i

ii

Wh

h

qWh

h

qtt

h

Wtt

h

WtV (4.28)

and

)(6

)()(

6

)()(

6

)()(

6

)()( 1

11313

1 tttWh

h

qtt

tWh

h

qtt

h

tWtt

h

tWtQ i

iii

i

ii

iii

i

ii

i

iii

i

ii −

−+−

−+−+−= +++++

(4.29)

Two extra knots q2 and qm-1 are not fixed and are used to add two

new equations to the system in such a way that it could be solved. The joint

displacements of these two knots are written as

)(63

22

2

11

2

11112 tW

ha

hvhqq +++= (4.30)

)(63

11

2

1

2

111 −−−−−− ++−= mm

mm

mmmmm tW

ha

hvhqq (4.31)

Using the continuity condition on velocities and accelerations, a

system of (m-2) linear equations solving for (m-2) unknowns Wi (ti ),

i=2,3,...,m-1 is obtained as

A B

tW

tW

tW

mm

=

−− )(

.

.

.

)(

)(

11

33

22

(4.32)

Page 34: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

94

where, matrices A and B are given by Equations (4.33) and (4.34).

+∅

+∅+−

++

=

−−−−

22

1323

4433

332

2

2

12

2

2

2

121

)(2

.

.

.

)(2

)(2

23

Kh

Khhh

hhhh

hhhh

hh

hh

hhh

A

m

mmm

(4.33)

where,

−=−−−

2

2

121

m

mm

h

hhK

++=−−−−1

2

1212 23

m

mmm

h

hhhK

The solution uniqueness of Equation (4.32) is guaranteed once the

matrix A is non-singular. Thus, adopting the time interval hi, the acceleration,

the velocity and the displacement are obtained by solving the

Equations (4.27), (4.28) and (4.29) respectively. The velocity will be further

used in the optimisation problem (Equations 4.15a-b).

++

+−

+−+

+−

+−

−−−

+−+

++−

++

+−

+

=

−−−

−−−

−−

−−−

−−−−

−−+

mm

m

m

m

m

m

m

mmm

mm

m

m

m

mm

n

m

mmm

m

i

ii

i

ii

ahh

q

h

qa

hvhq

hh

h

qq

hha

hvhq

h

h

qq

h

qq

qhhh

qa

hvhq

h

ahah

vhqhhh

q

h

q

B

1

2

2

1

2

1

1

21

3

3

2

32

2

1

1

2

1

11

3

323

41

2

1111

2

111

2

1111

211

1

2

3

63

116

6116

3

6

.

.

.

6

116

6

3

6

3

1166

(4.34)

Page 35: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

95

q1

1q q

1 q2 q

3q

4

qm-1

qqm

mq

m,

,

Figure 4.20 Trajectory of gripper

4.4.2.3 Obstacle Avoidance Constraint

The geometry of PUMA560 robot has 4 rectangular prisms and 4

cylinders. Here the assumption is arms connected with shoulder joint and

gripper joint are circumscribed by rectangular prisms. The obstacles are

sphere (K4) and rectangular prisms (K2 and K3). For finding obstacle

avoidance, 8 points (corner points) for rectangular prism, 8 points (4 quadrant

points on circle on each side) for cylinder and 4 quadrant points for sphere are

considered. So, totally 64 points for PUMA560 robot, 4 points for obstacle K4

and 8 points for obstacles K2 and K3 are considered. All the points of

PUMA560 robot and obstacles are stored in separate arrays of software

subroutine for obstacle avoidance.

The sets )(td q describe the points of the parts of the robot as given

by Equation (4.35). The sets Cl characterize the shape of the rigid bodies

(parts of the robot), while Tl(t) and Rl(t) describe the translation and rotation

of the bodies, respectively.

lllq CtRtTtd )()()( = (4.35)

Page 36: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

96

Each point in )(td q can be calculated as:

=

1

)(

)(

)(

1000

0100

00))(cos())(sin(

00))(sin())(cos(

1000

)(100

)(010

)(001

1

)(

)(

)(

0

0

0

tz

ty

tx

tt

tt

tp

tp

tp

tz

ty

tx

l

l

l

ii

ii

z

y

x

il

il

il θθθθ

(4.36)

where, Px, Py, Pz represent the translation and θ(t) represents the rotation of

the points lll zyx ,, .

Let ‘l’ is a point on an obstacle and ‘q’ is a point belongs to the

robot. Let a set dl(t) defines all points of the obstacles. A set dlq(t) defines

distances between the points in the sets dl(t) and dq(t). The distance between

the sets dlq(t) must be recalculated for all points at each time t. Here the

obstacles are stationary. So, changes in position of points of the robot due to

its movement are found by Equation (4.36). Now the software subroutine for

obstacle avoidance finds the distance between the robot points and obstacle

points. If dlq(t) > 0, the corresponding trajectory will be accepted by the

software subroutine for obstacle avoidance. Otherwise, it will be rejected.

4.4.3 Numerical Example

The task is to move the robot subject to physical constraints and

actuator limits in the workspace avoiding the obstacles K2, K3 and K4, while

minimizing the travelling time and energy consumed in the move. The task is

to move the end-effector of the robot along the trajectory K1, avoiding the

obstacles K2, K3 and K4 as shown in Figure 4.19. The obstacles are considered

as objects sharing the same workspace performed by the robot. The obstacle

avoidance is expressed in terms of the distances between potentially colliding

parts and the motion is represented using translation and rotational matrices.

Page 37: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

97

The dynamical model of the robot is derived using Euler-Lagrange's equations

and Lagrange's energy function. The dynamic equations of motion include

inertia terms of the actuators and friction forces. The coefficients associated

with the dissipation force (Equation 4.26) are adopted as: ffc (Nm) = [0.058,

0.058, 0.058, 0.056, 0.056, 0.056] and fd (Nm/s) = [0.0005, 0.0005, 0.000472,

0.000382, 0.000382, 0.000382]. The joint trajectory is formulated using

uniform cubic polynomial function, given only the initial and final

configurations.

A standard six degrees of freedom PUMA 560 robot is considered

here (Figure 4.18), whose geometrical and inertial arm parameters are listed

in Table 4.11 (Saramago and Valder Steffen Junior 2002). The transfer must

be done without violating bounce on kinematic and dynamic performances

given in Table 4.12 (Saramago and Valder Steffen Junior 2002).

Table 4.11 Geometric and Inertial parameters of PUMA560 (Saramago

and Valder Steffen Junior 2002)

Joint

N° 1 2 3 4 5 6

α(rad) π/2 0 -π/2 π/2 -π/2 0

di(m) 0 0.4318 0.0203 0 0 0

ri(m) 0 0 0.15005 0.4318 0 0

M(N) - 170.694 47.088 8.0442 3.3354 0.8829

Px(m) 0 -0.3638 -0.0203 0 0 0

Py(m) 0 0.006 -0.0141 0.19 0 0

Pz(m) 0 0.2275 0.07 0 0 0.032

Ixx(Nm2) 0 1.2753 0.64746 0.017658 0.002943 0.0014715

Iyy(Nm2) 3.4335 5.14044 0.84366 0.012753 0.003924 0.0014715

Izz(Nm2) 0 5.28759 0.122625 0.017658 0.002943 0.003924

Ixy(Nm2) 0 0 0 0 0 0

Iyz(Nm2) 0 0 0 0 0 0

Ixz(Nm2) 0 0 0 0 0 0

Page 38: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

98

Table 4.12 Limiting parameters used for PUMA 560 (Saramago and

Valder Steffen Junior 2002)

Joint N° 1 2 3 4 5 6

QC(rd) π 3π/4 3π/4 π 3π/4 3π/4

VC(rd/s) 8 10 10 5 5 5

WC(rd/s2) 10 12 12 8 8 8

JC(rd/s3) 30 40 40 20 20 20

UC(N/m) 97.6 186.4 89.4 24.2 20.1 21.3

Transfer between initial and final postures is executed in a smooth

way without violating imposed constraints. Here the total number of knots

(m) is 12. The robot is at rest initially, and comes to a full stop at the end of

the trajectory. So 0..

1

....

1 ====mm qqqq for all robot joints. Knots from the

cartesian path of the hand are given in Table 4.13.

Table 4.13 Joints displacement for PUMA 560 robot

Knot Joint1 Joint2 Joint3 Joint4 Joint5 Joint6

1 10º 10º 10º 5º 10º 6º

2 (Extra knot)

3 -130º -120º 70º 110º -110º 70º

4 90º 95º -55º 200º 85º 140º

5 130º 120º 60º 110º -110º 70º

6 110º -55º -55º 20º 100º -100º

7 100º -70º 60º 60º 50º 100º

8 -90º -10º 110º -100º -40º 10º

9 180º -30º 100º 60º -40º 180º

10 180º -30º 130º 60º -40º 180º

11 (Extra knot)

12 -100º 100º 120º -60º 50º 120º

Page 39: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

99

4.4.4 Implementation of NSGA-II and MODE Algorithms

The steps for running the algorithms are summarized below:

Step 1: The following are the inputs to NSGA-II and MODE

algorithms:

1. Details of PUMA560 robot:

Geometrical, inertial and Denavit – Hartenberg parameters.

(Table 4.11)

Displacement, velocity, acceleration, jerk and torque limits of

each robot joint. (Table 4.12)

2. Details of cubic polynomial curve that defines the trajectory:

Total number of knot points = 12, Starting and ending

configurations of robot joints in joint coordinate system. Knot

points position in joint coordinate system. (Table 4.13)

3. Details of obstacles:

Position of all fixed obstacles,

Obstacle avoidance checking formula, (Equation 4.21)

4. Formulae to find objective functions (z1 and z2), robot joints

displacement (q), robot joints velocity (.

q ), robot joints

acceleration (..

q ), robot joints jerk (...

q ), robot joints torque (ui)

at each time instant. Formulae for checking constraints.

(Equations (4.15) - (4.20) and (4.22) - (4.26)).

5. Formulae to find multi-objective performance measures

namely solution spread measure, ratio of non-dominated

individuals, optimiser overhead and algorithm effort.

(Equations (3.5) - (3.8)).

Page 40: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

100

6. Formulae to find combined objective function (fc) and average

fitness factor (Favg) (Equation 3.3). Based on these values the

best optimal solution from Pareto optimal front will be

selected. For this problem, the combined objective function

(fc) is defined as follows:

Minimize fc= w1z1/N1+w2z2/N2

Three cases with different weightage values (w1 and w2) for

objective functions are considered. N1=38 and N2=1500 are

normalizing parameters of objective functions (Average value

of individual objective functions).

7. The variables limits are as follows:

0.13 ≤ h1 ≤ 5.93, 1.47 ≤ h2 ≤ 10, 2.27 ≤ h3 ≤ 10,

2.88 ≤ h4 ≤ 10, 4.26 ≤ h5 ≤ 10, 2.38 ≤ h6 ≤10,

2.69 ≤ h7 ≤ 10, 1.28 ≤ h8 ≤ 3.66, 2.13 ≤ h9 ≤ 10,

1.21 ≤ h10 ≤ 4.28, 0 ≤ h11 ≤ 5.6.

8. The parameters of NSGA-II and MODE algorithms. (Given in

sections 4.4.4.1 and 4.4.4.2)

Step 2: The software programs of NSGA-II and MODE algorithms

find the optimal variables (set of time intervals h1, h2, …, hm-1) in such a way

that

i. Both travelling time (z1) and mechanical energy of the actuators

(z2) are minimum.

ii. All constraints (joints limits, actuator limits and obstacle

avoidance) are satisfied.

Step 3: Step 2 is repeated up to maximum number of iterations.

Page 41: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

101

Step 4: The following are the outputs from NSGA-II and MODE

algorithms:

(i) Pareto optimal fronts obtained from NSGA-II and MODE.

The Pareto optimal front gives number of trade-off solutions.

Each solution has the optimal objective function value,

optimal value of variables and constraints value. All

constraints shall be satisfied by any solution in the Pareto

optimal front.

(ii) The optimal displacement (Q - rad or m), velocity (V- rad/s

or m/s) and acceleration (W - rad/s2 or m/s

2) of all the robot

joints.

(iii) The best optimal solution from Pareto optimal fronts

selected by normalized weighting objective functions and

average fitness factor methods in a combined manner. The

best optimal solution is the one that gives a safer, faster,

economical and smoother optimal trajectory.

(iv) The strength of Pareto optimal fronts evaluated by the two

multi-objective performance measures - solution spread

measure and ratio of non-dominated individuals.

(v) The computational efforts of NSGA-II and MODE

algorithms found by the two multi-objective performance

measures (optimiser overhead and algorithm effort).

4.4.4.1 NSGA-II Parameters

The following are the values of the parameters of NSGA-II

technique that have been used to obtain the best optimal results: Variable type

= Real variable, Population size = 100, Crossover probability = 0.9,

Page 42: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

102

Real-parameter mutation probability = 0.01, Real-parameter SBX parameter

= 10, Real-parameter mutation parameter = 100, Total number of generations

= 100.

4.4.4.2 MODE Parameters

The following are the values of the parameters of MODE technique

that have been used to obtain the best optimal results: Strategy =

MODE/rand/1/bin, crossover constant CR=0.9, number of population

NP=1000, Fs=0.5 and total number of generations=100.

4.4.5 Results and Discussion

Optimum value of the variables and objective functions for the best

solution selected by normalised weighted objective functions method and

average fitness factor method combinedly from the Pareto optimal fronts

obtained from NSGA-II and MODE are given in Table 4.14. The optimal

displacement (Q - rad), velocity (V- rad/s) and acceleration (W - rad/s2) of all

the robot joints obtained from NSGA-II and MODE for w1=w2=0.5 are shown

in Figures 4.21 and 4.22. From Figures 4.21 and 4.22, it is noted that the robot

joints displacement, velocity and acceleration are within their limiting values.

So, the resulting trajectories are smooth.

The Pareto optimal fronts obtained from NSGA-II and MODE are

given in Figure 4.23. From Figure 4.23, it is observed that NSGA-II gives

more number of non-dominated solutions than MODE. So NSGA-II

technique is the best one for this multicriterion optimization problem, if the

user wants more number of solutions for his choice.

Page 43: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

103

JOINT 1

-3

-2

-1

0

1

2

3

4

0 10 20 30 40 50

TIME (S)

Q

V

W

JOINT 2

-3

-2

-1

0

1

2

3

0 10 20 30 40 50

TIME (S)

Q

V

W

JOINT 3

-3

-2

-1

0

1

2

3

0 10 20 30 40 50

TIME (S)

Q

V

W

JOINT 4

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5

0 10 20 30 40 50

TIME (S)

Q

V

W

JOINT 5

-3

-2

-1

0

1

2

3

0 10 20 30 40 50

TIME (S)

Q

V

W

JOINT 6

-3

-2

-1

0

1

2

3

0 10 20 30 40 50

TIME (S)

Q

V

W

Figure 4.21 Optimal motions for w1=0.5, w2 =0.5 obtained from NSGA-

II for PUMA 560 robot

Page 44: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

104

JOINT 1

-2.5

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

0 10 20 30 40

TIME (S)

Q

V

W

JOINT 2

-3

-2

-1

0

1

2

3

0 10 20 30 40

TIME (S)

Q

V

W

JOINT 3

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5

0 10 20 30 40

TIME (S)

Q

V

W

JOINT 4

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5

0 10 20 30 40

TIME (S)

Q

V

W

JOINT 5

-2

-1.5

-1

-0.5

0

0.5

1

0 10 20 30 40

TIME (S)

Q

V

W

JOINT 6

-3

-2

-1

0

1

2

3

0 10 20 30 40

TIME (S)

Q

V

W

Figure 4.22 Optimal motions for w1=0.5, w2 =0.5 obtained from MODE

for PUMA 560 robot

Page 45: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

105

PARETO OPTIMAL FRONTS- PUMA 560 ROBOT

0

500

1000

1500

2000

2500

3000

15 20 25 30 35 40 45Z1

Z2

NSGA-II

MODE

Figure 4.23 Pareto optimal fronts obtained from NSGA-II and MODE

for PUMA 560 robot

The optimization algorithm that gives minimum combined

objective function (fc), maximum average fitness factor value (Favg), minimum

solution spread measure (SSM), maximum ratio of non-dominated solutions

(RNI), minimum optimiser overhead (OO) and minimum algorithm effort is the

best one. The results got from NSGA-II and MODE are listed in

Tables 4.15 to 4.17.

From Tables 4.15 to 4.17, it is observed that NSGA-II gives

maximum ratio of non-dominated solutions (RNI) than that of MODE. But

MODE technique gives minimum combined objective function than NSGA-II.

Also MODE technique is superior to NSGA-II in terms of minimum combined

objective function (fc), highest average fitness factor value (Favg), minimum

solution spread measure (SSM), minimum optimiser overhead (OO) and

minimum algorithm effort. It is also observed that MODE technique converges

quickly than NSGA-II. Also, the computational time to find Pareto optimal

front in MODE is 1/3rd

of that of in NSGA-II. So MODE is faster than

NSGA-II.

Page 46: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

105

Table 4.14 Optimisation results for PUMA 560 robot

Weighting

factor Technique h1 h2 h3 h4 h5 h6 h7 h8 h9 h10 h11 z1 z2

w1= 0.5, w2 =0.5 NSGA- II 0.45 5.03 5.03 5.39 5.1 6.4 7.3 1.66 4.18 1.69 0.68 42.91 2873

MODE 0. 88 4.84 4.2 5.05 4.57 4.77 2.92 1.85 4.84 2.21 5.52 37.65 1167

w1=1.0, w2 =0.0 NSGA- II 0.90 2.13 2.37 3.27 6.52 2.67 3.01 1.98 2.36 1.84 1.46 28.51 1478

MODE 0.49 1.60 2.36 3.24 6.21 2.73 3.21 1.85 2.20 1.44 1.02 26.35 1004

w1=0.0, w2 =1.0 NSGA- II 5.60 9.97 9.46 9.33 9.85 9.54 9.72 3.42 9.75 3.64 1.26 81.54 13356

MODE 5.70 9.65 9.10 8.38 8.11 7.28 7.32 2.93 8.23 3.91 1.26 71.87 9490

Page 47: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

107

Table 4.15 Results obtained from NSGA-II and MODE algorithms

z1 z2 Favg

Zmax 81.54 13356

Zmin 18.785 728

NSGA-II 42.91 2873 0.722854

MODE 37.65 1167 0.832311

Table 4.16 Combined objective function and Algorithm effort obtained

from NSGA-II and MODE algorithms

Proposed

Algorithm

fc for

w1=w2=0.5

Simulation

time Trun

(sec)

(Neval) Algorithm

effort

NSGA-II 1.522272 2 97 0.0206

MODE 0.884395 2 157 0.0127

Table 4.17 SSM, RNI and OO obtained from NSGA-II and MODE

algorithms

Technique SSM RNI OO

NSGA-II 0.933028 0.16 0.1294

MODE 0.879939 0.15 0.03

4.4.6 Limitations

This stage dealt an optimal trajectory planning considering both

travelling time and mechanical energy of the actuators as objective functions.

The obstacle avoidance criterion is not considered here as one of the objective

function, but it is considered only as a constraint. More importance is to be

Page 48: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

108

given to the same in order to ensure that the resultant optimal trajectory is a

safer and collision free one. So, planning of the robot trajectory by

considering the travelling time, the mechanical energy of the actuators and

penalty for obstacle avoidance as objective functions is considered in the next

stage.

4.5 STAGE 5: MULTI-OBJECTIVE (3 OBJECTIVES)

TRAJECTORY PLANNING IN THE PRESENCE OF FIXED

OBSTACLES

The same problem discussed in stage 4 is considered with two

modifications; 1. An additional objective function (penalty for obstacle

avoidance) is considered. 2. A STANFORD robot is considered instead of a

PUMA 560 robot.

The problem has a multi-criterion character in which 3 objective

functions, 11 variables and 31 constraints are considered. The objective

functions used are minimum travelling time (z1), minimum mechanical energy

of the actuators (z2) and minimum penalty for obstacle avoidance (z3).

z3 ∑== Obs

i

lqd1

2})/(min{1 (4.37)

Problem formulation, kinematic and dynamic models, trajectory

representation, checking of obstacle avoidance and implementation of NSGA-

II and MODE algorithms are same as in the previous stage.

A standard six degrees of freedom STANFORD robot is considered

here (Figure 4.24), whose geometrical and inertial arm parameters are listed

in Tables 4.18 and 4.19 (Saramago et al 2001). The transfer must be done

Page 49: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

109

without violating the bounce on kinematic and dynamic performances given

in Table 4.20 (Saramago et al 2001). Transfer between initial and final

postures is executed in a smooth way without violating imposed constraints.

Here the total number of knots (m) is 12. The robot is at rest initially, and

comes to a full stop at the end of the trajectory. Initial and final joint

velocities and accelerations are null. So 0..

1

....

1 ====mm qqqq for all robot

joints. Knots from the cartesian path of the hand are given in Table 4.21

(Saramago et al 2001). The optimum travelling time for the robot corresponds

to the minimization of a set of time intervals h1, h2, …, hm-1. This technique

leads to maximization of the operation speed (Saramago et al 1998, 1999,

2001). The joints of the robot must be considered simultaneously. The

variables (time interval) limits are as follows: 0.25 ≤ h1 ≤ 0.45, 0.22 ≤ h2 ≤

0.68, 0.09 ≤ h3 ≤2.10, 0.52 ≤ h4 ≤ 1.43, 0.16 ≤ h5 ≤ 1.97, 0.51 ≤ h6 ≤ 1.52, 0.88

≤ h7 ≤ 0.99, 1.01 ≤ h8 ≤ 2.01, 0.52 ≤ h9 ≤ 2.12, 1.03 ≤ h10 ≤ 2.23,

0.24≤h11≤2.34.

Figure 4.24 STANFORD robot

Page 50: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

110

Table 4.18 Denavit-Hartenberg parameters for STANFORD robot

(Saramago et al 2001)

Joint no. θi αi ai (m) di (m)

1 θ1 -90° 0 0

2 θ2 90° 0 1.2

3 0 0 0 d3

4 θ4 -90° 0 0

5 θ5 90° 0 0

6 θ6 0 0 0

Table 4.19 Geometric and Inertial parameters of STANFORD robot

(Saramago et al 2001)

Joint N° 1 2 3 4 5 6

αi (deg) -90 90 0 -90 90 0

ai(m) 0 0 0 0 0 0

−x (m)

0 0 0 0 0 0

−y (m)

1.75 -10.54 0 0.92 0 0

−z (m)

-11.05 0 -64.47 -0.54 5.66 15.54

di(m) 0 1.2 1.2 0 0 0

M(N) 91.13 49.15 41.69 10.6 6.18 5.0

Ixx(Nm2) 2.71 1.06 24.62 0.02 0.03 0.13

Iyy(Nm2) 2.50 0.18 24.62 0.01 0.03 0.13

Izz(Nm2) 0.70 0.981 0.06 0.01 0.004 0.003

Ia(Nm2) 9.35 21.51 7.67 1.04 0.95 0.2

Page 51: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

111

Table 4.20 Limiting parameters used for STANFORD robot (Saramago

et al 2001)*

Joint number

Constraint 1 2 3 4 5 6

QC(rd) 3.1 3.1 1.5 3.1 3.1 3.1

VC(rd/s) 2.5 2.5 2.5 2.5 2.5 2.5

WC(rd/s2) 9.5 9.5 9.5 9.5 9.5 9.5

JC(rd/s3) 50 50 50 50 50 50

UC(N/m) 50 80 100 10 10 10

*Joint 3 - QC(m), VC(m/s), WC(m/s2), JC(m/s

3), UC(N)

Table 4.21 Joints displacement for STANFORD robot (Saramago et al

2001)

Knot Joint1

(rad)

Joint2

(rad)

Joint3

(m) Joint4 (rad)

Joint5

(rad)

Joint6

(rad)

1 0.175 0.175 0.80 0.087 0.174 0.105

2 (Extra knot)

3 -0.056 0.356 1.12 -0.032 0.243 0.314

4 -0.164 0.515 1.44 -0.151 0.312 0.524

5 -0.138 0.679 1.43 -0.272 0.386 0.733

6 -0.256 1.043 1.19 -1.001 0.333 1.525

7 -1.013 0.920 0.30 -0.511 0.539 1.152

8 -1.199 0.908 1.06 -0.522 0.760 0.990

9 -1.329 1.260 0.92 -0.748 0.691 1.571

10 -1.474 1.486 0.80 -0.867 0.763 1.781

11 (Extra knot)

12 -1.745 1.396 1.2 -0.853 1.078 -1.389

Page 52: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

112

The geometry of STANFORD robot has 6 rectangular prisms,

4 cylinders and 1 cube. Here the assumption is that the fifth joint and gripper

are circumscribed by rectangular prisms. Also the obstacles are only sphere

(K4) and rectangular prisms (K2 and K3). Hence for finding obstacle

avoidance, we have considered 8 points (corner points) for cube and

rectangular prism, 8 points (4 quadrant points on circle on each side) for

cylinder and 4 quadrant points for sphere. So totally 88 points for

STANFORD robot, 4 points for obstacle K4 and 8 points for obstacles K2 and

K3 are considered during checking of obstacle avoidance.

For this problem, the combined objective function (fc) is defined as

follows:

Minimize fc= w1z1/N1+w2z2/N2+w3z3/N3 (4.38)

N1=10 and N2=125 and N3=1 are normalizing parameters of

objective functions (Average value of individual objective functions). w1, w2

and w3 are weightage values given to objective functions 1, 2 and 3

respectively. We can give any weightage to all objective functions. But the

condition is w1+w2+w3 = 1. It means the total weightage should be 100%. A

sample case is w1=0.3, w2=0.3 and w3=0.4.

4.5.1 NSGA-II Parameters

The following are values of the parameters of NSGA-II technique

that have been used to obtain the best optimal results: Variable type = Real

variable, Population size=100, Crossover probability =0.7, Real-parameter

mutation probability =0.01, Real-parameter SBX parameter =10, Real-

parameter mutation parameter =100, Total number of generations=100.

Page 53: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

113

4.5.2 Multi Objective Differential Evolution Parameters

The following are values of the parameters of MODE technique

that have been used to obtain the best optimal results: Strategy =

MODE/rand/1/bin, crossover constant CR=0.9, number of population

NP=500, Fs =0.5 and total number of generations=100.

4.5.3 Results and Discussion

For the sample case (w1=0.3, w2=0.3 and w3=0.4), the optimal

displacement (Q - rad or m), velocity (V- rad/s or m/s) and acceleration

(W - rad/s2 or m/s

2) of all the robot links for the best solution selected by

normalised weighted objective functions method and average fitness factor

method combinedly from the Pareto optimal fronts obtained from NSGA-II

and MODE are shown by Figures 4.25 and 4.26. It is noted that the robot

joints displacement, velocity and acceleration are within their limiting values.

So the obtained trajectories are smooth.

The optimum variables of the best solution obtained from various

techniques for the sample case (w1=0.3, w2=0.3 and w3=0.4) are given in

Table 4.22. Optimum value of the objective functions of the best solution for

the sample case (w1=0.3, w2=0.3 and w3=0.4) from SUMT (Saramago et al

2001), NSGA-II and MODE are given in Table 4.23. From Table 4.23, it is

noted that NSGA-II gives a much better result (minimum fc) than that of

MODE and SUMT (Saramago et al 2001). All algorithms give safer optimal

trajectories (there is no collision between robot and obstacles, since z3 is

zero). The Pareto optimal fronts obtained from NSGA-II and MODE are

given in Figure 4.27.

Page 54: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

114

JOINT 1

-4

-2

0

2

4

6

8

10

0 2 4 6 8 10

TIME (SEC)

Q

V

W

JOINT 2

-8

-6

-4

-2

0

2

4

0 5 10

TIME (SEC)

Q

V

W

JOINT 3

-10

-8

-6

-4

-2

0

2

4

6

0 2 4 6 8 10

TIME (SEC)

Q

V

W

JOINT 4

-8

-6

-4

-2

0

2

4

0 2 4 6 8 10

TIME (SEC)

Q

V

W

JOINT 5

-2.5

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

0 2 4 6 8 10

TIME (SEC)

Q

V

W

JOINT 6

-8

-6

-4

-2

0

2

4

6

8

0 2 4 6 8 10

TIME (SEC)

Q

V

W

Figure 4.25 Optimal motions of the robot joints obtained from NSGA-II

Page 55: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

115

JOINT1

-4

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (SEC)

Q

V

W

JOINT 2

-4

-3

-2

-1

0

1

2

3

4

0 5 10 15

TIME(SEC)

Q

V

W

JOINT 3

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (SEC)

Q

V

W

JOINT 4

-4

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (SEC)

Q

V

W

JOINT 5

-3

-2

-1

0

1

2

0 5 10 15

TIME (SEC)

Q

V

W

JOINT 6

-4

-3

-2

-1

0

1

2

3

4

0 5 10 15

TIME (SEC)

Q

V

W

Figure 4.26 Optimal motions of the robot joints obtained from MODE

Page 56: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

116

PARETO OPTIMAL FRONT-

STRATEGY 1

120

130

140

150

8 9 10 11 12 13 14Z1

Z2

MODE

NSGA-II

Figure 4.27 Pareto optimal fronts obtained from NSGA-II and MODE

From Figure 4.27, it is observed that NSGA-II gives more number

of non-dominated solutions than MODE. Also according to distance metric,

the Pareto optimal front obtained from NSGA-II is better than that of the one

obtained from MODE. So NSGA-II technique is the best one for this multi-

criterion optimization problem, if the user wants more number of solutions for

his choice. The results from NSGA-II and MODE are listed in Tables 4.24,

4.25 and 4.26.

Table 4.22 Optimum Variables

h1 h2 h3 h4 h5 h6 h7 h8 h9 h10 h11

MODE 0.41 0.66 1.95 1.35 1.36 1.35 0.89 1.52 0.94 1.78 0.30

NSGA II 0.36 0.31 0.48 0.73 0.72 1.09 0.94 1.31 1.44 1.18 1.59

From Tables 4.23 to 4.26, it is observed that NSGA-II gives

maximum ratio of non-dominated solutions (RNI) and minimum solution

spread measure (SSM) than those of MODE. Also, NSGA-II gives minimum

combined objective function (fc) and maximum average fitness factor value

Page 57: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

117

(Favg) than those of MODE and SUMT (Saramago et al., 2001). MODE

technique is much better than NSGA-II in terms of minimum optimiser

overhead (OO) and minimum algorithm effort. It is also observed that MODE

technique converges quickly than NSGA-II. Further, the computational time

to find Pareto optimal front in MODE is 1/3rd

of that of in NSGA-II. So

MODE is faster than NSGA-II.

Table 4.23 Results obtained from SUMT (Saramago et al 2001),

NSGA-II and MODE algorithms

Technique

Time

(z1)

(sec)

Energy

(z2) (Nm)

Penalty for

obstacle

avoidance (z3)

Combined

objective

function (fc)

SUMT 8.6 22170 0 53.466

NSGA-II 10.15 127.68 0 0.610932

MODE 12.51 124.7 0 0.67458

Table 4.24 Average fitness factor obtained from SUMT, NSGA-II and

MODE algorithms

Favg z1max z1min z2max z2min

SUMT NSGA-II MODE

13.42 8.4 22170 124.4 0.320053 0.550415 0.393754

Table 4.25 Algorithm effort obtained from NSGA-II and MODE

algorithms

Technique Simulation time

Trun (sec) Neval

Algorithm

effort

NSGA-II 2 91 0.02198

MODE 2 131 0.01527

Page 58: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

118

Table 4.26 SSM, RNI and OO obtained from NSGA-II and MODE

algorithms

Technique SSM RNI OO

NSGA-II 0.80147 0.25 0.1416

MODE 0.98524 0.19 0.0473

4.5.4 Limitations

This stage dealt optimal trajectory planning of STANFORD robot

by considering the time intervals between knot points of cubic polynomial

curve that represents the trajectory. Practically, controlling the time intervals

between knot points of cubic polynomial curve is a tedious work.

Following are the inferences from the literature (Rana and Zalzala

1996), Chettibi et al 2004, Shintaku 1999): 1. It is easy to change the values

of the polynomial coefficients or position of knots of the cubic polynomial

curve that represent the trajectory and 2. Actually polynomial coefficients

dictate the shape of the cubic polynomial curve and the position of knot points

of the cubic polynomial curve. So they considered the polynomial coefficients

of cubic polynomial function that represent the trajectory as variables in their

optimal trajectory planning.

This stage considers only three objective functions i.e. time, energy

and penalty for obstacle avoidance. But if we want a more realistic optimal

trajectory plan, we have to consider all the important objective functions such

as minimization of travelling time, energy, joint jerks, joint accelerations and

maximization of manipulability measure in a combined manner.

The major limitations of the previous works are given below:

• They have only used conventional optimization techniques

such as Sequential Unconstrained Minimization Techniques

Page 59: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

119

(SUMT) (Saramago et al 1998, 1999, 2000, 2001, 2002),

Sequential Quadratic Programming (SQP) (Chettibi et al 2004

and Gasparetto et al 2007) and iterative procedure (Elnagar

and Hussein 2000). Conventional optimization techniques

have lot of drawbacks as described in literature review

Chapter.

• None of the literatures ever considered all the important

objective functions (Minimization of travelling time, energy,

joint jerks, joint accelerations and maximization of

manipulability measure) in a combined manner.

To overcome the above drawbacks, in the next stage, 2

evolutionary optimization techniques namely NSGA-II and DE are proposed

to do minimum cost trajectory planning for two manipulators (STANFORD

robot and 2-link planar manipulator). The cost function is a weighted balance

of transfer time, mean average of actuators efforts and power, manipulability

measure, joint jerks and joint accelerations. Furthermore, in order to make the

resulting motion physically feasible, the objective function is minimized

under position, velocity, acceleration, jerk and torque constraints. The

variables are position of nodes of cubic polynomial curve that define the

trajectory.

4.6 STAGE 6: COMBINED OBJECTIVE (5 OBJECTIVES)

TRAJECTORY PLANNING IN THE PRESENCE OF FIXED

OBSTACLES

The aim of this stage is to develop minimum cost trajectory

planning for industrial robots (STANFORD and 2-link planar robot

manipulators) using NSGA-II and DE by considering all the important

objective functions (Minimization of travelling time, energy, joint jerks, joint

Page 60: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

120

accelerations and maximization of manipulability measure) in a combined

manner. The objective is to minimize a cost function subjected to constraints

such as joint positions, velocities, accelerations, jerks and torques and

obstacle avoidance constraint. A cubic polynomial curve is used to represent

the trajectory. This problem has 5 objective functions, 30 constraints

(maximum) and 144 variables (maximum).

4.6.1 Problem Formulation

4.6.1.1 Objective Functions

The quality of motion strongly depends on the combined objective

(cost) function F. F represents the transfer cost between initial and final

postures. The cost function is a weighted balance of transfer time, mean

average of actuators efforts and power, singularity avoidance, joint jerks and

joint accelerations. The singularity avoidance is chosen in the form of the

manipulability measure. Maximizing the manipulability measure will force

the manipulator away from singularity (Luis Gracia et al 2008).

Minimize F= w1z1/N1+ w2 z2/N2+ w3z3/N3- w4z4/N4 + w5z5/N5

(4.39a)

where,

z2 = (B+ C);

B = Quadratic average of actuator efforts = dt

T n

j

ijij

i

2

0 1

max6

1

)/(∫ ∑∑ ==ττ

(4.39b)

C = Quadratic average of corresponding power

= dtqq

T n

j

ijijijij

i

2

0 1

maxmax..6

1

)/(∫ ∑∑ ==ττ (4.39c)

z3 = Integral of squared link jerks = dtq

T n

j

ij

i

)(0 1

2...6

1∫ ∑∑ ==

(4.39d)

Page 61: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

121

z4 = Manipulability measure = )det( mJ (4.39e)

z5 = Integral of squared link accelerations = dtq

T n

j

ij

i

)(0 1

2..6

1∫ ∑∑ ==

(4.39f)

where, z1=T is travelling time between initial and final configurations, ‘Jm’ is

jacobian matrix of the robot. ij

q.

is robot joint velocity, ij

q..

is robot joint

acceleration, ij

q...

is robot joint jerk, max.

ijq is the maximum value of the robot

joint velocity. ijτ is the robot joint torque, max

ijτ is the maximum value of robot

joint torque. Total number of knot points considered for cubic polynomial

curve is 7. ‘i’ is segment number (1 to 6), ‘j’ is robot joint number (1 to 6 for

STANFORD robot in application 1 (pick and place operation), 1 to 2 for

2-link planar robot in application 2 (motion planning in the presence of

obstacles)). ‘n’ is maximum joint number of the robot (6 for STANFORD

robot in application 1, 2 for 2-link planar robot in application 2). w1, w2, w3,

w4 and w5 are weightage values given to the objective functions. N1, N2, N3,

N4 and N5 are normalizing parameters of objective functions. The values of

normalizing parameters are N1=1, N2=1/10, N3= 1/10, N4=10, N5=1/10 (for

STANFORD robot). N1=1, N2=1/1e6, N3=1/1e7, N4=1, N5=10 (for 2-link

planar robot).

4.6.1.2 Constraints

30 constraints for the STANFORD robot in application 1, and 11

constraints for 2-link planar robot in application 2 are considered. Constraints

represent the physical limitations imposed on the robots kinematic and

dynamic performances. The following are the constraints:

Joint torques: max)( ijij t ττ ≤ , i=1…6, j=1…n (4.40a)

Page 62: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

122

Joint jerks: max......

)(ijij qtq ≤ , i=1…6, j=1…n (4.40b)

Joint accelerations: max....

)(ijij qtq ≤ , i=1…6, j=1…n (4.40c)

Joint velocities: max..

)(ijij qtq ≤ , i=1…6, j=1…n (4.40d)

Joint displacements: max

)(ijij qtq ≤ , i=1…6, j=1…n (4.40e)

Obstacle avoidance: dlq (t) >0 for (l, q) ∈ I (4.40f)

where, max..

ijq is the maximum value of the robot joint acceleration,

max...

ijq is the

maximum value of the robot joint jerk. ‘l’ denotes the obstacle. ‘q’ denotes

the trajectory. The set dlq(t) defines distances between the points in the sets

dl(t) and dq(t). The set dl(t) defines all points of the obstacles and the set dq(t)

defines all points of the trajectory. Equation (4.40f) gives the obstacle

avoidance, where ‘I’ represents the universal set. From the relations (4.40a-f),

we can take note of a fact that not all motions are tolerable; the power

resources are limited and must be used rationally in such a way that the robot

dynamic behaviour is correctly controlled. Jerk constraints are introduced due

to the fact that joint position tracking errors increase when jerk increases, and

also to limit excessive wear on the robot so that the robot life span is

extended. NSGA-II and DE can handle the non-symmetrical bounds on the

above physical quantities without any difficulties. The kinematic and dynamic

models used in previous stage are used here.

4.6.1.3 Variables

The planning of optimal dynamic motion is a generic optimal

control problem. It is transformed into a parametric optimization problem as

follows: joint variables are expressed as a function of set of parameters. These

Page 63: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

123

parameters are varied inside a non-linear optimization program until an

optimum satisfying constraint has been reached. Joint trajectories are

represented by cubic polynomial functions with nodes uniformly distributed

along timescale (Figure 4.28). This choice can be justified by the well-known

characteristics of cubic polynomial functions; continuity of second order is

guarantied and their lower order greatly limits oscillations and enables us to

easily compute extremal values between two consecutive nodes. By

parameterizing the joint trajectories, variables of the problem become the

position of cubic polynomial nodes. Constraints that must be handled are

those defined by the relations (4.40a-f).

Figure 4.28 Cubic spline approximation of joints position temporal

evolution

In many practical cases, these factors as well as bounds (4.40a–f)

are in fact necessary. Otherwise, the optimization process may lead either to a

solution that is not physically feasible (violation of a technological constraint)

or to a biased solution in case of a problem involving a large difference in

torque magnitudes from one actuator to the other. The expressions for

Page 64: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

124

position, velocity, acceleration and jerk of robot joint using cubic polynomial

curve are

ijq =a0ij

+a1ijt+a2ij

t2+a3ij

t3 (4.41)

ij

q.

= a1ij

+2a2ijt+3a3ij

t2 (4.42)

ij

q..

= 2a2ij

+6 a3ij

t (4.43)

ij

q...

= 6a3ij

(4.44)

where, ijq is joint displacement, a0ij

, a1ij

, a2ij

and a3ij are polynomial

coefficients. The polynomial coefficients of the cubic polynomial equations

that represent the trajectories are considered as the variables. So there are 144

variables for STANFORD robot in application 1 and 48 variables for 2-link

planar robot in application 2. The obstacle avoidance criteria used in stage 4 is

used here.

4.6.2 Industrial Applications

Two industrial applications are considered here. Optimal trajectory

planning for an industrial robot with six degrees of freedom (STANFORD

robot) doing a pick and place operation is considered as the first application.

This application has five objective functions, 30 constraints and 144 variables.

The second application is the trajectory planning in the presence of fixed

obstacles for 2-link planar robot. In this application, five objective functions,

11 constraints and 48 variables are considered. 2-link planar robot differs

from STANFORD robot in two important points. 2-link planar robot is a best

example of redundant type robot category and also it has only two rotational

motions. But STANFORD robot with five revolute joints and one prismatic

joint is a non-redundant type robot. It has 5 rotating or revolute motions and

1 translational motion.

Page 65: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

125

4.6.2.1 Application 1 (Pick and Place Operation)

A standard six degrees of freedom STANFORD robot (Figure 4.24),

whose geometrical and inertial arm parameters are listed in Tables 4.18 and

4.19. The robot is asked to carry out transfer between the initial and final

configurations. Initial and final joint velocities and accelerations are null. The

transfer must be done without violating the bounce on kinematic and dynamic

performances given in Table 4.20. Transfer between initial and final postures

is executed in a smooth way without violating imposed constraints.

4.6.2.2 Application 2 (Motion Planning in the Presence of Obstacles)

A planar robot with 2 links as shown in Figure 4.29 is considered

and whose geometrical parameters are listed in Table 4.27. The robot is asked

to move between the initial point and final point avoiding interference with

fixed obstacles. Initial and final joint velocities and accelerations are null. The

transfer must be done without violating bounce on kinematic and dynamic

performances given in Table 4.28.

Figure 4.29 Example of ball modelling of robot and obstacles

Page 66: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

126

Table 4.27 Geometrical parameters of 2 link planar robot

Joint N° 1 2

M(kg) 7 5

L(m) 0.7 0.5

Table 4.28 Limiting parameters of 2 link planar robot

Joint N° qmax(rad) .

q max(rad/s)..

q max(rad/s2)

...

q max(rad/s3)

τmax(Nm)

1 π 3 8 10 30

2 3π/4 3 8 15 25

4.6.2.3 Differential Evolution Parameters Analysis

To find the relationship between crossover constant (CR) and

scaling factor (Fs) and crossover constant (CR) and population size (N), two

analyses are made for the first numerical example for w1=0.2, w2=0.4,

w3=0.15, w4=0.1 and w5=0.15. The results of the analyses are given in

Tables 4.29 and 4.30 respectively.

From Table 4.29, the following points are observed: 1. If scaling

factor (Fs) value increases, the cost function (F) value increases and 2. If the

value of crossover constant (CR) is in between 0.3 and 0.9 and the scaling

factor (Fs) value is in between 0.1 and 0.5, we get a minimum cost function

(F) value. So the preferable values for crossover constant (CR) is in between

0.3 and 0.9 and for scaling factor (Fs) value is in between 0.1 and 0.5.

Page 67: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

127

Table 4.29 DE parameters analysis (CR Vs Fs) for case 6 for

STANFORD robot

CR

Fs 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

0.1 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

0.2 1.7556 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

0.3 1.7557 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

0.4 1.7559 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

0.5 1.7560 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

0.6 1.7562 1.7555 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

0.7 1.7565 1.7556 1.7555 1.7555 1.7555 1.7555 1.7555 1.7555 1.7557

0.8 1.7566 1.7557 1.7556 1.7555 1.7555 1.7555 1.7556 1.7557 1.7559

0.9 1.7566 1.7558 1.7556 1.7556 1.7556 1.7557 1.7557 1.7560 1.7561

1.0 1.7572 1.7560 1.7558 1.7557 1.7557 1.7558 1.7559 1.7561 1.7565

1.1 1.7581 1.7561 1.7559 1.7559 1.7559 1.7560 1.7563 1.7563 1.7566

1.2 1.7570 1.7563 1.7562 1.7559 1.7558 1.7562 1.7565 1.7565 1.7574

Table 4.30 DE parameters analysis (CR Vs N) for case 6 for

STANFORD robot

CR

N 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9

100 1.7566 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

200 1.7566 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

300 1.7565 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

400 1.7564 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

500 1.7563 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

600 1.7561 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7555 1.7555

700 1.7562 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7555

800 1.7561 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7555

900 1.7561 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7555

1000 1.7560 1.7556 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

10000 1.7560 1.7556 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

100000 1.7559 1.7555 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554 1.7554

Page 68: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

128

From Table 4.30, the following points are observed: 1. If the value

of crossover constant (CR) is in between 0.3 and 0.7, we get a minimum cost

function (F) value. 2. If population size (N) value increases, the cost function

(F) value decreases. But when population size (N) increases, the

computational effort and time increase. So the preferable values for crossover

constant (CR) is in between 0.3 and 0.7 and for population size (N) value is in

between 500 and 1000. From the above analysis, the values for crossover

constant (CR), population size (N) and scaling factor (Fs) for this research

work are taken as 0.7, 1000 and 0.5 respectively. DE algorithm converges

quickly within 100 generations. So the values of the parameters that have

been used in the proposed DE technique are Strategy = DE/rand/1/bin,

crossover constant CR=0.7, population size (N)=1000, Fs= 0.5 and total

number of generations=100.

4.6.2.4 NSGA-II Parameters Analysis

To find the relationship between crossover probability (CP) and

population size (N), an analysis is made for the first numerical example for

w1=0.2, w2=0.4, w3=0.15, w4=0.1 and w5=0.15. The results of the analysis are

given in Table 4.31.

From Table 4.31, the following points are observed: 1. If the value of

crossover probability (CP) is in between 0.7 and 0.9, we get a minimum cost

function (F) value. 2. If population size (N) value increases from 10 to 100,

the cost function (F) value decreases. But when population size (N) increases

from 100 to 1000, there is no improvement in the cost function (F), and 3.

When the value of crossover probability (CP) is 0.9 and population size (N)

value is 100, we get a very minimum cost function (F) value. So the

preferable values for crossover probability (CP) is 0.9 and for population size

(N) value is 100. From the above analysis, the values for crossover probability

(CP), population size (N) and scaling factor (Fs) for this research work are

Page 69: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

129

taken as 0.7, 1000 and 0.5 respectively. NSGA-II algorithm converges

quickly within 100 generations. So the values of the parameters that have

been used in NSGA-II technique are Variable type = Real variable, population

size (N)=100, Crossover probability (CP) =0.9, Real-parameter mutation

probability = 0.01, Real-parameter SBX parameter =10, Real-parameter

mutation parameter =100, Total number of generations=100.

Table 4.31 NSGA-II parameters analysis for case 6 for STANFORD

robot

CP

N 0.5 0.6 0.7 0.8 0.9 1.0

10 3.113527 3.120151 3.115442 2.813265 2.836924 2.826348

20 3.113521 3.120144 3.115332 2.813124 2.836547 2.825564

30 3.113457 3.116784 3.115241 2.813002 2.834517 2.825477

40 3.113362 3.116645 3.114588 2.812984 2.832145 2.812784

50 3.113254 3.116230 3.113542 2.812785 2.829854 2.812364

60 3.112351 3.115264 3.101557 2.812654 2.825473 2.812178

70 3.102581 3.112495 3.101464 2.802199 2.812345 2.812145

80 3.102574 3.112477 3.101334 2.802178 2.790014 2.812009

90 3.102512 3.112455 3.101249 2.802145 2.794178 2.812039

100 3.102456 3.112454 3.100024 2.802145 2.795424 2.812045

200 3.102456 3.112454 3.100024 2.802145 2.795424 2.812045

500 3.102456 3.112454 3.100024 2.802145 2.795424 2.812045

1000 3.102456 3.112454 3.100024 2.802145 2.795424 2.812045

4.6.2.5 Implementation of NSGA-II and DE Algorithms

The steps for running the algorithms are summarized below:

Step 1: The following are the inputs to NSGA-II and DE

algorithms:

1. Details of 2 link robot and STANFORD robot:

Geometrical, inertial and Denavit – Hartenberg parameters.

Displacement, velocity, acceleration, jerk and torque limits of

Page 70: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

130

each robot joint. (Tables 4.18, 4.19 and 4.20, Tables 4.27 and

4.28).

2. Details of cubic polynomial curve that defines the trajectory:

Total number of knot points = 7. For STANFORD robot,

starting configuration = [0.1745 rad, 0.1745 rad, 0.8m, 0.0873

rad, 0.1745 rad, 0.1047 rad] and ending configuration =

[-1.745 rad, 1.396 rad, 1.2m, –0.853 rad, 1.078 rad, -1.389

rad]. For 2-link planar robot, Starting configuration = [0, -π/3]

and ending configuration = [π/2,0].

3. Details of obstacles: Position of all fixed obstacles and

obstacle avoidance checking formula (Equation 4.40f).

4. Formulae to find combined objective function, all objective

functions, robot joints displacement (qij), robot joints velocity

(ij

.

q ), robot joints acceleration (ij

..

q ), robot joints jerk (ij

...

q ),

robot joints torque ( ijτ ) at each time instant. Formulae to

check all constraints (Equations (4.39) - (4.44)).

5. The variables (polynomial coefficients) limits.

6. The parameters NSGA-II and DE algorithms. (Given in

sections 4.6.2.3 and 4.6.2.4).

Step 2: The software programs of NSGA-II and DE algorithms find

the optimal variables in such a way that

1. All objective functions are optimum.

2. All constraints (joints limits, actuator limits and obstacle

avoidance) are satisfied.

Step 3: Step 2 is repeated up to maximum number of iterations.

Page 71: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

131

Step 4: The following are the outputs from NSGA-II and DE

algorithms:

1. Optimal solutions obtained from NSGA-II and DE. Each

solution has optimal objective functions value, optimal

variables value and the constraints value. All constraints shall

be satisfied by all optimal solutions.

2. The optimal displacement (Q - rad or m), velocity (V- rad/s or

m/s) and acceleration (W - rad/s2 or m/s

2) of all the robot

joints.

3. The best optimal solution gives a safer, faster, economical and

smoother optimal trajectory.

4.6.3 Results and Discussion

4.6.3.1 Application 1 (Pick and Place Operation)

The results obtained from NSGA-II and DE are presented and

compared in Table 4.32 for different values of weighting coefficients. From

Table 4.32, it is observed that cost function (F) value differs according to the

weightage given to the objective functions. Actually the weightage to be

given for various objective functions depends upon the type of application of

the robot. This numerical example considers a pick and place operation. The

aim is to transfer a mechanical component from one place to another place

safely by spending minimum energy and also within short period of time. So

the first priority is given for saving energy (reducing total energy involved in

the motion). The second priority is given for minimizing operation time

(minimum travelling time). The next priority is given for safety (reducing

vibrations of robot joints (minimizing joint accelerations and jerks)). The last

priority is given for reducing singular points (maximizing manipulability

measure). So the case 6 (w1=0.2, w2=0.4, w3=0.15, w4=0.1 and w5=0.15) may

be preferable for this numerical example.

Page 72: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

132

Table 4.32 Comparison of results (STANFORD Robot)

Transfer Time(T) Transfer Cost

function (F) Case

no.

Weightage values of

objective functions NSGA-II DE NSGA-II DE

1 w1=0.5, w2=0.2,

w3=w4= w5=0.1

2.4580 2.3170 14.52 10.51

2 w1=0.2, w2=0.5,

w3=w4= w5=0.1

1.6270 1.6080 3.23 3.05

3 w3=0.5, w5=0.2,

w1=w4= w2=0.1

0.9875 0.9715 1.36 1.30

4 w4=0.5, w2=0.2,

w3=w1= w5=0.1

0.9964 0.9776 0.37 0.57

5 w5=0.5, w3=0.2,

w1=w4= w2=0.1

1.0640 0.9851 1.61 1.43

6 w1=0.2, w2=0.4,

w3=0.15, w4=0.1 and

w5=0.15

1.5460 1.3580 2.80 1.76

7 w1=w2=0.25, w4=0.1,

w3= w5=0.2

1.8874 1.6840 6.18 4.0

8 w3=w2=0.25, w4=0.1,

w1= w5=0.2

1.1620 1.1130 1.46 1.32

9 w1=w2=0.2, w4=0.1,

w3= w5=0.25

1.6340 1.6250 3.93 3.86

10 w1=w3=0.25, w4=0.1,

w2= w5=0.2

1.9040 1.8980 6.64 6.56

Figures 4.30(a-d) and 4.31(a-d) show profiles of robot joints

positions, velocities, accelerations and jerks for case 6 in Table 4.32 obtained

using NSGA-II and DE techniques respectively. Graphical results are given in

the following units: displacement (rad), velocity (rad/s), acceleration (rad/s2)

and jerk (rad/s3). The time scale is given in seconds. Transfer between the

initial and final postures is executed in a smooth way and, of course, without

violating imposed constraints.

Page 73: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

133

DISPLACEMENT

-2

-1

0

1

2

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(a) Joints positions

VELOCITY

-2

-1

0

1

2

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(b) Joints velocities

ACCELERATION

-4

-2

0

2

4

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(c) Joints accelerations

JERKS

-6

-4

-2

0

2

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(d) Joints jerks

Figure 4.30(a-d) Optimal motion obtained using NSGA-II for

STANFORD robot (w1=0.2, w2=0.4,w3=0.15,w4=0.1

and w5=0.15)

Page 74: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

134

DISPLACEMENT

-2

-1

0

1

2

0 0.2 0.4 0.6 0.8 1 1.2 1.4

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

O 6

(a) Joints positions

VELOCITY

-2

-1

0

1

2

0 0.2 0.4 0.6 0.8 1 1.2 1.4

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(b) Joints velocities

ACCELERATION

-2.5

-1.5

-0.5

0.5

1.5

2.5

0 0.2 0.4 0.6 0.8 1 1.2 1.4

TIME (S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(c) Joints accelerations

JERKS

-6

-4

-2

0

2

0 0.2 0.4 0.6 0.8 1 1.2 1.4

TIME(S)

JOINT1

JOINT2

JOINT3

JOINT4

JOINT5

JOINT6

(d) Joints jerks

Figure 4.31(a-d) Optimal motion obtained using DE for STANFORD

robot (w1=0.2, w2=0.4,w3=0.15,w4=0.1 and w5=0.15)

Page 75: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

135

Figure 4.32 shows the result histories of NSGA-II and DE for

w1=0.2, w2=0.4,w3=0.15,w4=0.1, w5=0.15 (case 6 in Table 4.32). Both

NSGA-II and DE algorithms are working well. However, DE converges

quickly and it gives better results than NSGA-II in majority of cases.

RESULT HISTORY

1.5

6.5

11.5

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

GENERATION NUMBER

F

DENSGA-II

Figure 4.32 Result Histories of the proposed NSGA-II and DE for

STANFORD robot (w1=0.2, w2=0.4, w3=0.15, w4=0.1 and

w5=0.15)

4.6.3.2 Application 2 (Motion Planning in the Presence of Obstacles)

The results obtained from NSGA-II and DE are presented and

compared in Table 4.33 for different values of weighting coefficients. From

Table 4.33, it is observed that cost function (F) value differs according to the

weightage given to the objective functions. Actually the weightage to be given

for various objective functions depends upon the type of application of the

robot. This numerical example is for motion planning in the presence of fixed

obstacles. The aim is to move the robot end-effector safely (without collision

with obstacles) from one place to another place by spending minimum energy

and also within a short period of time. So the first priority is given for obstacle

avoidance and safety (reducing vibrations of robot joints (minimizing joint

accelerations and jerks)). The second priority is given for minimizing operation

time (minimum travelling time) and saving energy (reducing total energy

involved in the motion). The next priority is given for reducing singular points

Page 76: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

136

(maximizing manipulability measure). So the case 9 (w1= w2=0.2, w4=0.1, w3=

w5=0.25) may be preferable for this numerical example.

Table 4.33 Comparison of results (2 link Planar Robot)

Transfer Time(T) Transfer Cost

function (F) Case

No.

Weightage values of

objective functions NSGA-II DE NSGA-II DE

1 w1=0.5, w2=0.2, w3=w4=

w5=0.1 2.6360 2.4620 14.08 13.08

2 w1=0.2, w2=0.5, w3=w4=

w5=0.1 1.7110 1.8840 5.32 2.45

3 w3=0.5, w5=0.2, w1=w4=

w2=0.1 1.0430 0.9240 4.05 4.05

4 w4=0.5, w2=0.2, w3=w1=

w5=0.1 1.0650 0.8640 3.0 6.83

5 w5=0.5, w3=0.2, w1=w4=

w2=0.1 1.0590 1.1940 12.05 2.71

6 w1=0.2,w2=0.4,

w3= w5=0.15,w4=0.1 1.5903 1.5970 2.45 2.24

7 w1= w2=0.25, w4=0.1,

w3= w5=0.2 1.9510 1.8600 10.32 5.31

8 w3= w2=0.25, w4=0.1,

w1= w5=0.2 1.1010 1.1570 5.59 2.47

9 w1= w2=0.2, w4=0.1,

w3= w5=0.25 1.5670 1.4620 4.58 4.06

10 w1= w3=0.25, w4=0.1,

w2= w5=0.2 2.0610 1.8750 12.14 12.14

Figures 4.33(a-d) and 4.34(a-d) show profiles of robot joints

positions, velocities, accelerations and jerks for case 6 in Table 4.33 obtained

using NSGA-II and DE techniques respectively. Graphical results are given in

the following units: displacement (rad), velocity (rad/s), acceleration (rad/s2)

and jerk (rad/s3). The time scale is given in seconds. Transfer between initial

and final postures is executed in a smooth way and, of course, without

violating imposed constraints.

Page 77: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

137

DISPLACEMENT

-2

-1

0

1

2

3

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1

JOINT2

(a) Joints displacements

VELOCITY

-1

0

1

2

3

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 1.8

TIME (S)

JOINT1

JOINT2

(b) Joints velocities

ACCELERATION

-2

0

2

4

6

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1

JOINT2

(c) Joints accelerations

JERKS

-6

-4

-2

0

2

4

6

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME(S)

JOINT1

JOINT2

(d) Joints jerks

Figures 4.33(a-d) Optimal motion obtained using NSGA-II for 2 link

planar robot (w1=0.2, w2=0.4, w3=0.15, w4=0.1,

w5=0.15)

Page 78: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

138

DISPLACEMENT

-2

0

2

4

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1JOINT2

(a) Joints displacements

VELOCITY

-2

-1

0

1

2

3

4

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1JOINT2

(b) Joints velocities

ACCELERATION

-4

-2

0

2

4

6

8

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME (S)

JOINT1JOINT2

(c) Joints accelerations

JERKS

-5

0

5

10

0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6

TIME(S)

JOINT1

JOINT2

(d) Joints jerks

Figures 4.34(a-d) Optimal motion obtained using DE for 2 link planar

robot (w1=0.2, w2=0.4, w3=0.15, w4=0.1, w5=0.15)

Page 79: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

139

Figure 4.35 shows the result histories of NSGA-II and DE for

case 6 in Table 4.33 (w1=0.2, w2=0.4, w3=0.15, w4=0.1, w5=0.15). However,

DE converges quickly (from Figure 4.35) and it gives better results than

NSGA-II in majority of cases.

RESULT HISTORIES

0

2

4

1 6 11 16 21 26 31 36 41 46 51 56 61 66 71 76 81 86 91 96

GENERATION NUMBER

F

DE

NSGA-II

Figure 4.35 Result histories of NSGA-II and DE for 2 link planar robot

(w1=0.2, w2=0.4, w3=0.15, w4=0.1, w5=0.15)

4.6.4 Limitations

This stage dealt an optimal trajectory planning by considering the

important objective functions (Minimization of travelling time, energy, joint

jerks, joint accelerations and maximization of manipulability measure) in a

combined manner. The obstacle avoidance criterion is not considered here as

one of the objective function, but it is considered only as a constraint. If more

importance is given to obstacle avoidance criteria, the resultant optimal

trajectory will be a safer and collision free one. So, planning of robot

trajectory by considering Minimization of travelling time, energy, joint jerks,

joint accelerations, penalty for obstacle avoidance and maximization of

manipulability measure as objective functions are considered in the next

stage. Also this stage considers only stationary obstacles in the robot’s

workspace. But in real world situation, all types of obstacles may be present

in a robot’s workspace. So in the next stage, all types of obstacles (stationary

and moving (rotating and oscillating)) are considered in a robot’s workspace.

Page 80: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

140

4.7 STAGE 7: COMBINED OBJECTIVE (6 OBJECTIVES)

TRAJECTORY PLANNING IN THE PRESENCE OF FIXED,

MOVING AND OSCILLATING OBSTACLES

4.7.1 Introduction

The aim of this stage is to develop an optimization procedure based

on evolutionary algorithms namely Elitist Non-dominated Sorting Genetic

Algorithm (NSGA-II) and Differential Evolution (DE) for solving the

trajectory planning problem of intelligent robot manipulators with the

prevalence of fixed, moving and oscillating obstacles. The target of the

problem dealt in this stage is to move the robot in a workspace avoiding the

fixed and moving obstacles, while minimizing a combined objective function

of the robot considering the physical constraints and actuator limits. This

problem has six objective functions, 31 constraints and 96 variables

(coefficients of cubic polynomial functions that represent the trajectories).

The combined objective function is a weighted balance of transfer time, mean

average of actuators efforts and power, penalty for collision free motion,

singularity avoidance, joint jerks and joint accelerations. The singularity

avoidance is chosen in the form of the manipulability measure. Maximizing

manipulability measure will force the manipulator away from singularity. The

obstacles are present in the workspace of the robot. The distance between

potentially colliding parts is expressed as obstacle avoidance. Further, motion

is represented using translation and rotational matrices. The proposed

optimization techniques are explained by applying the same to two industrial

robots (PUMA 560 and STANFORD robots).

4.7.2 Problem Formulation

The multicriterion optimization problem is defined as follows:

Page 81: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

141

Minimize

fc = w1z1/N1+ w2 z2 /N2+w3 z3 /N3 - w4 z4/N4+ w5 z5/N5 + w6 z6/N6

(4.45a)

where,

Quadratic average of actuator torques : z2= dttu

T n

i

i∫∑=0 1

2 .))(( (4.45b)

Manipulability measure : z4 = )det( mJ (4.45c)

Integral of squared link jerks : z5 = dtq

T n

i

i )(0 1

2...∫∑= (4.45d)

Integral of squared link accelerations : z6= dtq

T n

i

i )(0 1

2..∫∑= (4.45e)

‘fc’ is combined objective function,

z1=’T’ is the total travelling time between initial and final

configurations,

‘ui’ is the generalized forces,

z3= fdis is the penalty parameter to guarantee for free-collision

motion,

‘Jm’ is Jacobian matrix of the robot,

w1=w2=0.25, w3=w4=w5=0.1, w6 =0.2 are weightage values given

to the objective functions, N1, N2, N3, N4, N5 and N6 are normalizing

parameters of objective functions.

Subject to

1. Displacement constraint max

)(jiji qtq ≤ (4.46)

2. Velocity constraint max..

)(jiji qtq ≤ (4.47)

3. Acceleration constraint max....

)(jiji qtq ≤ (4.48)

4. Jerk constraint max......

)(jiji qtq ≤ (4.49)

Page 82: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

142

5. Force/torque constraint

max)( jiutu ≤ for j=1,2,….,n and i =1,2,……,m-1 (4.50)

6. Obstacle avoidance constraint dlq (t) >0 for (l, q) ∈ I (4.51)

where, ‘I’ is the set of possibly colliding pairs of parts, ‘n’ represents the

joints and 'm' represents the knots used to construct the trajectories.

The kinematic and dynamic models and trajectory representation

are as in the previous stage. Totally 5 knot points are considered including the

initial and final points. So there are 96 variables for PUMA560 and

STANFORD robots.

4.7.2.1 Obstacle Avoidance

When obstacles are found in the workspace it is necessary to add a

penalty function in the performance index to guarantee free-collision motion.

The idea is to circumscribe each obstacle into a specific sphere. Let (X0, Y0,

Z0) be the centre of an obstacle and 0r be the radius of the sphere that

circumscribe this obstacle. The trajectory points (X, Y, Z), which are located

outside the sphere, are accepted according to the equation.

0

2

0

2

0

2

0 )()()( rzzyyxxrt >−+−+−= (4.52)

where, ‘rt’ is the distance between the centre of the obstacle and a trajectory

point as represented in Figure 4.36. If Equation (4.52) is verified, the

trajectory is out of the sphere and the penalty function (fdis) is zero. If the

trajectory is tangent or crossing the sphere the performance index will be

penalized:

Page 83: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

143

Figure 4.36 Obstacle circumscribed by a sphere

∑==⇒≤

=⇒>nobs

i i

dist

dist

rfrr

If

frr

120

0

)(min

1

0

(4.53)

where, ‘nobs’ is the total number of obstacles in the workspace.

There are situations according to the topology of the obstacle.

Where, it is more likely to circumscribe the obstacle by an ellipsoid as shown

in Figure 4.37.

Let a, b, c be the semi-axes of the circumscribing ellipsoids.

Applying the same principle used for the circumscribing spheres, the

trajectory points, which are located outside the ellipsoid are accepted

according to the following equation:

2

2

0

2

2

0

2

2

0 )()()(

c

zz

b

yy

a

xxre

−+−+−= (4.54)

where, ‘ er ’ is the eccentricity.

Page 84: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

144

Penalization is used in this case as below:

∑==⇒≤

=⇒>nobs

i e

dise

dise

rfr

If

fr

12)(min

11

01

(4.55)

This way the optimal control problem is to minimize the

performance index defined by Equation (4.45a) using the penalty function

given by Equation (4.53) or Equation (4.55) taking into account the kinematic

and obstacle avoidance constraints.

Figure 4.37 Obstacle circumscribed by an ellipsoid

Obstacle avoidance is obtained by adding penalty functions to the

function to be minimized. Besides, constraints, which describe minimal

acceptable distance between potentially colliding parts are also included in the

general non-linear optimization problem. The obstacles are protected by

spherical or hiper-spherical security zones, which are never penetrated by the

end-effector.

Page 85: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

145

4.7.3 Numerical Example

In this stage, Differential evolution (DE) and Elitist Non-dominated

Sorting Genetic Algorithm (NSGA-II) are used for PUMA560 and

STANFORD robots. It is considered that 011 ==== mm qqqq &&&&&& for all robot

joints. A standard six degrees of freedom (dof) PUMA 560 robot

(Figure 4.18), whose geometrical and inertial arm parameters are listed in

Table 4.11. The transfer must be done without violating the bounce on

kinematic and dynamic performances given in Table 4.12. Transfer between

the initial and final postures is executed in a smooth way without violating

imposed constraints.

A standard six degrees of freedom (dof) STANFORD robot

(Figure 4.24), whose geometrical and inertial arm parameters are listed in

Tables 4.18 and 4.19. The transfer must be done without violating bounce on

kinematic and dynamic performances given in Table 4.20. Transfer between

the initial and final postures is executed in a smooth way without violating

imposed constraints.

Three applications have been considered. In the first application,

No obstacles have been considered. In the second one, fixed and moving

obstacles have been considered. Fixed and oscillating obstacles have been

considered in the last application. The coefficients associated with dissipation

force (Equation 4.26) are adopted as ffc(Nm) = [0.058, 0.058, 0.058, 0.056,

0.056, 0.056] and df (Nm/s) = [0.0005, 0.0005, 0.000472, 0.000382,

0.000382, 0.000382].

Page 86: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

146

4.7.3.1 Application 1 (Motion without Obstacles)

In this application, the aim is to obtain optimal trajectory (ψ1) of

the end-effectors without considering obstacles. The initial and final trajectory

points of the PUMA 560 robot end-effectors: 1q =[0.30rd, 0.50rd, -0.20rd,

-0.05rd, 0.05rd, 0.10rd] and mq =[0.51rd, -0.42rd, 0.58rd, 0.638rd, 0.835rd,

0.20rd]. The initial and final trajectory points of the STANFORD robot end-

effectors are: 1q =[0.1745rd, 0.1745rd, 0.80m, 0.0873rd, 0.1745rd, 0.1047rd]

and mq =[-1.745rd, 1.396rd, 1.20m,-0.853rd, 1.078rd,-1.3894rd].

4.7.3.2 Application 2 (Motion with Fixed and Moving Obstacles)

In this application the aim is to obtain optimal trajectory (ψ1) of the

end-effectors as in Figure 4.38 considering the following obstacles: A wall

(ψ2), a translating body (ψ3) and a rotating and translating body (ψ4).

Following are obstacles dimensions: cube 1 (X1=0.5 and X2=1.0; Y1=1.0 and

Y2=1.4; Z1=0.0, Z2=1.0), cube 2 (X1=-0.8 and X2=0.0; Y1=-2.0 and Y2=1.0;

Z1=0.0, Z2=0.5) and cube 3 (wall) (X1=-1.0 and X2=-0.9; Y1=-2.0 and Y2=2.0;

Z1=0.0, Z2=1.0). The initial and final trajectory points of the PUMA 560 robot

end-effectors: 1q = [0.30rd, 0.50rd, -0.20rd, -0.05rd, 0.05rd, 0.10rd] and

mq =[0.51rd, -0.42rd, 0.58rd, 0.638rd, 0.835rd, 0.20rd]. The initial and final

trajectory points of the STANFORD robot end-effectors: 1q = [0.1745rd,

0.1745rd, 0.80m, 0.0873rd, 0.1745rd, 0.1047rd] and mq =[-1.745rd, 1.396rd,

1.20m, -0.853rd, 1.078rd, -1.3894rd]. The wall is circumscribed by an

ellipsoid. Spheres circumscribe the moving bodies. Figure 4.38 shows the

end-effectors tri-dimensional trajectory.

Page 87: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

147

Figure 4.38 End-effector tri-dimensional optimal trajectory - application 2

4.7.3.3 Application 3 (Motion with Fixed and Oscillating Obstacles)

In this application the end-effectors trajectory (ψ1) of a manipulator

has to avoid a pendulum (ψ2) and two fixed obstacles (ψ3 and ψ4) as in

Figure 4.39. The goal is to obtain optimal trajectory under the joint limit

constraints. In this case, the initial and final points of the PUMA 560 robot

end-effectors: 1q =[3.92rd, 4.03rd, 2.04rd, 0.03rd, 3.33rd, 0.07rd] and

mq =[2.62rd, 3.25rd, -2.04rd, 0.77rd, 2.08rd, 5.49rd]. In this case the initial

and final points of the STANFORD robot end-effectors: 1q = [0.1682rd,

1.3849rd, 1.1362m, -0.7555rd, -0.4702rd, 0.1472rd] and mq =[-0.7610rd,

0.2450rd, 0.4123m, 1.4366rd, 1.0095rd, -1.0146rd]. The following are

obstacles dimensions: cube 1 (X1=0.3 and X2=0.6; Y1=0.35 and Y2=0.5;

Z1=0.0, Z2=0.30) and cube 2 (X1= -0.1and X2=-0.4; Y1=0.3 and Y2=0.45;

Z1=0.0, Z2=0.21).

Page 88: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

148

Figure 4.39 End-effector tri-dimensional optimal trajectory – application 3

4.7.3.4 NSGA-II Parameters

The following are the values of the parameters of NSGA-II

technique that have been used to obtain the best optimal results: Variable type

= Real variable, Population size=100, Crossover probability =0.6, Real-

parameter mutation probability =0.01, Real-parameter SBX parameter =10,

Real-parameter mutation parameter =100, Total number of generations=100.

4.7.3.5 Differential Evolution Parameters

The following are the values of the parameters of DE technique that

have been used to obtain the best optimal results: Strategy = DE/rand/1/bin,

crossover constant CR=0.9, number of population NP=360, F=0.5 and total

number of generations=100.

4.7.4 Results and Discussion

4.7.4 .1 PUMA 560 Robot

From the proposed NSGA-II and DE, the optimal displacement

(Q - rad), velocity (V - rad/s), acceleration (W - rad/s2) and jerk (J - rad/s

3) of

Page 89: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

149

all the links of robot are shown by Figures 4.40 and 4.41 for application 1,

Figures 4.42 and 4.43 for application 2, and Figures 4.44 and 4.45 for

application 3.

JOINT 1

-5

-4

-3

-2

-1

0

1

0 1 2 3 4

TIME (S)

QVWJ

JOINT 2

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 3

-0.4

-0.2

0

0.2

0.4

0.6

0.8

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 4

-0.2

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 5

-10

-8

-6

-4

-2

0

2

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 6

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.8

0 1 2 3 4TIME (S)

Q

V

W

J

Figure 4.40 Displacement, velocity and acceleration for optimal

trajectories by NSGA-II for application 1 (PUMA 560

robot)

Page 90: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

150

JOINT 1

-5

-4

-3

-2

-1

0

1

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 2

-0.6

-0.4

-0.2

0

0.2

0.4

0.6

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 3

-0.4

-0.2

0

0.2

0.4

0.6

0.8

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 4

-0.1

0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 5

-10

-8

-6

-4

-2

0

2

0 1 2 3 4

TIME (S)

Q

V

W

J

JOINT 6

-0.1

0

0.1

0.2

0.3

0.4

0.5

0 1 2 3 4

TIME (S)

Q

V

W

J

Figure 4.41 Displacement, velocity and acceleration for optimal

trajectories by DE for application 1 (PUMA 560 robot)

Page 91: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

151

JOINT 1

-0.5

0

0.5

1

1.5

2

0 2 4 6 8 10 12

TIME (S)

QVWJ

JOINT 2

-4

-3

-2

-1

0

1

2

3

4

5

0 2 4 6 8 10 12

TIME (S)

QVWJ

JOINT 3

-5

-4

-3

-2

-1

0

1

0 2 4 6 8 10 12

TIME (S)

QVWJ

JOINT 4

-1

0

1

2

3

4

5

0 2 4 6 8 10 12

TIME (S)

Q

V

W

J

JOINT 5

-0.5

0

0.5

1

1.5

2

2.5

3

3.5

0 2 4 6 8 10 12TIME (S)

QVWJ

JOINT 6

-2

0

2

4

6

8

10

0 2 4 6 8 10 12

TIME (S)

QVWJ

Figure 4.42 Displacement, velocity and acceleration for optimal

trajectories by NSGA-II for application 2 (PUMA 560

robot)

Page 92: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

152

JOINT 1

-5

-4

-3

-2

-1

0

1

0 2 4 6 8 10

TIME (S)

QVWJ

JOINT 2

-5

-4

-3

-2

-1

0

1

2

0 2 4 6 8 10

TIME (S)

QVWJ

JOINT 3

-2

0

2

4

6

8

10

0 2 4 6 8 10

TIME (S)

QVWJ

JOINT 4

-1

4

9

0 2 4 6 8 10TIME (S)

QVWJ

JOINT 5

-0.2

0

0.2

0.4

0.6

0.8

1

1.2

1.4

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 6

-2

0

2

4

6

8

10

0 2 4 6 8 10

TIME (S)

Q

V

W

J

Figure 4.43 Displacement, velocity and acceleration for optimal

trajectories by DE for application 2 (PUMA 560 robot)

Page 93: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

153

JOINT 1

-6

-4

-2

0

2

4

6

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 2

-2

-1

0

1

2

3

4

5

0 2 4 6 8

TIME (S)

QVWJ

JOINT 3

-4

-2

0

2

4

6

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 4

-4

-2

0

2

4

6

8

10

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 5

-10

-8

-6

-4

-2

0

2

4

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 6

-2

0

2

4

6

8

10

12

0 2 4 6 8

TIME (S)

Q

V

W

J

Figure 4.44 Displacement, velocity and acceleration for optimal

trajectories by NSGA-II for application 3 (PUMA 560

robot)

Page 94: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

154

JOINT 1

-4

-2

0

2

4

6

0 1 2 3 4 5

TIME (S)

Q

V

W

J

JOINT 2

-2

-1

0

1

2

3

4

5

0 1 2 3 4 5

TIME (S)

Q

V

W

J

JOINT 3

-6

-4

-2

0

2

4

6

8

10

12

0 1 2 3 4 5

TIME (S)

Q

V

W

J

JOINT 4

-2

-1

0

1

2

3

4

5

6

0 1 2 3 4 5

TIME (S)

Q

V

W

J

JOINT 5

-12

-10

-8

-6

-4

-2

0

2

4

0 1 2 3 4 5

TIME (S)

QVWJ

JOINT 6

-4

-2

0

2

4

6

0 1 2 3 4 5

TIME (S)

Q

V

W

J

Figure 4.45 Displacement, velocity and acceleration for optimal

trajectories by DE for application 3 (PUMA 560 robot)

Page 95: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

155

The Table 4.34 compares the optimum results obtained from

various techniques. From the Table 4.34, it is observed that DE gives better

results than NSGA-II. So DE is superior to NSGA-II.

Table 4.34 Comparison of optimum results (PUMA 560 robot)

z1 z2 z3 z4 z5 z6 fc

APPLICATION 1

NSGA-II 3.75 28357 0 0.75 923.5 734.53 0.840795

DE 3.24 26541 0 0.74 884.4 710.2 0.77855

APPLICATION 2

NSGA-II 11.51 16734 0 0.68 935.7 717.26 0.8195

DE 9.5 18945 0 0.7 984.9 752.9 0.817364

APPLICATION 3

NSGA-II 6.75 22482 0 0.54 893.7 676.3 0.847586

DE 4.01 25692 0 0.73 924.8 693.8 0.777196

4.7.4.2 STANFORD Robot

From the proposed NSGA-II and DE, the optimal displacement

(Q – rad or m), velocity (V - rad/s or m/s), acceleration (W - rad/s2

or m/s2)

and jerk (J - rad/s3

or m/s3) of all the links of robot are shown by Figures 4.46

and 4.47 for application 1, Figures 4.48 and 4.49 for application 2, and

Figures 4.50 and 4.51 for application 3. The Table 4.35 compares the

optimum results obtained from various techniques. From Table 4.35, it is

observed that DE gives better results than NSGA-II. So DE is superior to

NSGA-II.

Page 96: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

156

JOINT 1

-10

-8

-6

-4

-2

0

2

4

6

0 2 4 6 8 10

TIME (S)

QVWJ

JOINT 2

-3

-2

-1

0

1

2

3

0 2 4 6 8 10

TIME (S)

QVWJ

JOINT 3

-2

-1.5

-1

-0.5

0

0.5

1

1.5

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 4

-2

-1

0

1

2

3

4

5

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 5

-3

-2

-1

0

1

2

3

4

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 6

-10

-8

-6

-4

-2

0

2

0 2 4 6 8 10

TIME (S)

Q

V

W

J

Figure 4.46 Displacement, velocity and acceleration for optimal

trajectories by NSGA-II for application 1 (STANFORD

robot)

Page 97: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

157

JOINT 1

-6

-4

-2

0

2

4

6

8

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 2

-2

-1

0

1

2

3

4

5

6

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 3

-20

-15

-10

-5

0

5

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 4

-1.5

-1

-0.5

0

0.5

1

1.5

2

2.5

3

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 5

-20

-15

-10

-5

0

5

0 2 4 6 8

TIME (S)

Q

V

W

J

JOINT 6

-20

-15

-10

-5

0

5

10

0 2 4 6 8

TIME (S)

Q

V

W

J

Figure 4.47 Displacement, velocity and acceleration for optimal

trajectories by DE for application 1 (STANFORD

robot)

Page 98: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

158

JOINT 1

-5

-4

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (S)

QVWJ

JOINT 2

-1.5

-1

-0.5

0

0.5

1

1.5

2

0 5 10 15

TIME (S)

Q

V

W

J

JOINT 3

-4

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (S)

Q

V

W

J

JOINT 4

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (S)

Q

V

W

J

JOINT 5

-8

-6

-4

-2

0

2

4

0 5 10 15

TIME (S)

Q

V

W

J

JOINT 6

-3

-2

-1

0

1

2

3

0 5 10 15

TIME (S)

Q

V

W

J

Figure 4.48 Displacement, velocity and acceleration for optimal

trajectories by NSGA-II for application 2 (STANFORD

robot)

Page 99: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

159

JOINT 1

-20

-15

-10

-5

0

5

0 2 4 6 8 10 12

TIME (S)

Q

V

W

J

JOINT 2

-2

-1.5

-1

-0.5

0

0.5

1

1.5

2

0 2 4 6 8 10 12

TIME (S)

Q

V

W

J

JOINT 3

-4

-3

-2

-1

0

1

2

0 2 4 6 8 10 12

TIME (S)

Q

V

W

J

JOINT 4

-20

-15

-10

-5

0

5

10

15

0 2 4 6 8 10 12

TIME (S)

Q

V

W

J

JOINT 5

-1

-0.5

0

0.5

1

1.5

2

2.5

3

3.5

0 2 4 6 8 10 12

TIME (S)

Q

V

W

J

JOINT 6

-8

-6

-4

-2

0

2

4

0 5 10

TIME (S)

Q

V

W

J

Figure 4.49 Displacement, velocity and acceleration for optimal

trajectories by DE for application 2 (STANFORD

robot)

Page 100: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

160

JOINT 1

-10

-8

-6

-4

-2

0

2

4

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 2

-2

0

2

4

6

8

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 3

-2

-1

0

1

2

3

4

5

6

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 4

-3

-2

-1

0

1

2

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 5

-8

-6

-4

-2

0

2

4

6

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 6

-10

-8

-6

-4

-2

0

2

4

0 2 4 6 8 10

TIME (S)

Q

V

W

J

Figure 4.50 Displacement, velocity and acceleration for optimal

trajectories by NSGA-II for application 3 (STANFORD

robot)

Page 101: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

161

JOINT 1

-10

-8

-6

-4

-2

0

2

4

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 2

-4

-2

0

2

4

6

8

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 3

-4

-2

0

2

4

6

8

10

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 4

-5

-4

-3

-2

-1

0

1

2

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 5

-7

-6

-5

-4

-3

-2

-1

0

1

2

0 2 4 6 8 10

TIME (S)

Q

V

W

J

JOINT 6

-2

0

2

4

6

8

0 2 4 6 8 10

TIME (S)

Q

V

W

J

Figure 4.51 Displacement, velocity and acceleration for optimal

trajectories by DE for application 3 (STANFORD

robot)

Page 102: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

162

From Figures 4.40 - 4.51, it is noted that the robot joints

displacement, velocity, acceleration and jerk are within their limiting values.

So the resulting trajectories are smoother. The computational time to find the

multicriterion cost function (fc) for all the applications in a HP computer (with

configuration of 640MB DDR RAM, 40 GB HDD, Pentium 4 Processor) are

given in Table 4.36. Here the number of generation is 100. From Table 4.36,

we can observe that the computational time for computing the multicriterion

cost function in DE is lesser than that of in NSGA-II. So DE technique is

faster than NSGA-II.

Table 4.35 Comparison of optimum results (STANFORD robot)

z1 z2 z3 z4 z5 z6 fc

APPLICATION 1

NSGA-II 8.93 22452 0 0.72 945.9 568.64 0.917307

DE 6.75 18423 0 0.71 857.3 536.8 0.772674

APPLICATION 2

NSGA-II 11.08 24531 0 0.723 743.53 749.8 0.934326

DE 10.17 17394 0 0.72 684.7 614.7 0.784319

APPLICATION 3

NSGA-II 7.85 31034 0 0.72 342.78 532.4 0.862571

DE 7.67 28843 0 0.72 215.65 458.9 0.780807

Table 4.36 Computational time to find fc

Computational Time (s) Application

no. STANFORD robot PUMA560 robot

NSGA-II DE NSGA-II DE

1 22 7 20 7

2 23 8 24 7

3 20 7 22 6

Page 103: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

163

4.7.5 Limitations

In this stage, cubic polynomial curve is used for representing the

trajectory. But the use of B-spline curve to represent the same provides a lot

of advantages as found in literature review Chapter. This is dealt in some

literatures. Saramago et al (1998, 1999, 2000, 2001, 2002) proposed a method

based on Sequential Unconstrained Minimization Techniques (SUMT) to get

an optimal motion planner for STANFORD manipulator in the presence of

fixed, moving and oscillating obstacles. Trajectories are defined by B-Spline

functions. Saramago et al (1998, 1999, 2000, 2001, 2002) have used

conventional optimization technique - SUMT. To overcome the drawbacks

associated with conventional techniques, in the next stage, two evolutionary

optimization techniques namely NSGA-II and MODE are proposed to do

multi-objective trajectory planning for STANFORD robot. The objective

functions are transfer time, mean average of actuators efforts and power and

penalty for obstacle avoidance. Furthermore, in order to make the resulting

motion physically feasible, the objective function is minimized under

position, velocity, acceleration, jerk and torque constraints. Trajectories are

defined by cubic B-spline functions. The variables are position of B- spline

nodes of the trajectory. The problem is dealt in the multi-objective approach

as well.

This chapter presented a stage-by-stage approach to develop an

optimization procedure based on evolutionary algorithms namely GA, NSGA-

II, DE and MODE for solving the trajectory planning problem of intelligent

robot manipulators (2-link robot, 3-link robot, PUMA560 robot, STANFORD

robot) with the prevalence of fixed, moving and oscillating obstacles using

cubic polynomial curves. Six objective functions have been considered. DE

and MODE techniques give better results than GA, NSGA-II, SQP and

Page 104: CHAPTER 4 OPTIMAL TRAJECTORY PLANNING USING CUBIC …shodhganga.inflibnet.ac.in/bitstream/10603/31736/9/09... · 2018-07-02 · q2) and joint accelerations (.. q1,.. q2)). 4.1.2 Problem

164

SUMT in majority of cases. Next chapter presents a stage-by-stage approach

for solving the trajectory planning problem using cubic B-spline curves.