INTRODUCTION
In line with higher demand to achieve production efficiency, the motion planning
is very important for industrial robot. The recent issue is finding the best
strategy to move the robot from the initial configuration to the final configuration
safely and optimally considering all constraints.
Some strategies to gain the optimality has been proposed. Boriga
and Grabos (2009) presented a planning mode of trajectory motion for seriallink
manipulators with the polynomials of degrees 9, 7 and time courses of displacements,
velocities, accelerations and jerk for the rectilinear path of endeffector
motion for a three Degrees of Freedom (DOF) manipulator were presented. An inverse
kinematics problem was solved and on this basis the runs of displacements, velocities,
accelerations and angular jerks of each kinematic chain link were established.
Gasparetto and Zanotto (2007) presented the trajectory
planning of robot manipulators with the objective function containing a term
proportional to the integral of the squared jerk along the trajectory is considered.
Fifthorder Bsplines are then used to compose the overall trajectory.
Pires et al. (2007) presented the pointtopoint
manipulator trajectories using a multiobjective genetic algorithm for two DOF
and three DOF manipulators when one circular obstacle was present. They discover
the collisionfree joint angle trajectories using the discrete analysis with
nine configuration points.
Saravanan et al. (2009) utilized a cubic Bspline
for pointtopoint robot motion planning under the velocity, the acceleration
and the jerk constraints. It has twelve variables for each links that should
be found by the trajectory planner.
This study considers improving the previous works in numbers of ways. It utilizes
complex geometrical obstacles. It considers the kinematics constraints as well
as the dynamics constraint. The constraints are the maximum velocity, the maximum
acceleration, the maximum jerk and the maximum torque. It also utilizes continuous
function as joint angle path to achieve the continuity of the link configuration.
Generating the continuous joint angle path in the complex obstacle geometry
as well as finding the feasible trajectories which satisfy the kinematics and
dynamics constraints is very complex optimization problem. The GA will be utilized
to solve this challenging problem.
PERFORMANCE OF ROBOTICS ARM IN THE PRESENCE OF OBSTACLES
It is very important for the arm robot to have the connectivity for all configurations
during the manipulation. Some tools to analyze the robotics arm performance
are the workspace, the aspect and the connectivity.
Without the existence of the obstacles, the workspace of 3DOF planar arm robot
will be equal to l_{1}+l_{2}+l_{3}, with l
is the length of the link. The workspace of the robot can be very complicated
when the obstacle is present (Haddad et al., 2002).
Refer to Fig. 1a, the workspace analysis give an information
that points A and B lay in the free workspace so that there are feasible trajectories
between these points; however, the path in Fig. 1a. is not
the part of these feasible path since points C and D as well as points E and
F do not connect each other. Aspect analysis needs to be done in point C and
point D. The aspect concerns with the posture of the link robot between trajectories
that should be reachable. Figure 1b shows one of the feasible
path from point A to point B where all trajectories are connect each other.
The configurations can be considered consist of n discrete trajectories. Among
these discrete trajectories, it should be guaranteed that there are nconnectivity.
The detail of the connectivity tool can be found by Haddad
et al. (2002). Figure 1b has nconnectivity so
that the motion is reachable. In the proximity of the obstacle, the analysis
of nconnectivity is also very complicated (Haddad et
al., 2002). By keeping the joint angle traveling distance into the minimal
one incorporating with the avoiding collision requirement, the GA will search
the path that lays in the free configuration and has nconnectivity while the
optimality has also should be achieved.

Fig. 1(ab): 
Robot motion (a) Unfeasible and (b) Feasible 
KINODYNAMIC CONSTRAINTS
This study considers the arm robot motion planning under kinodynamic constraints
that contain the kinematics constraints as well as the dynamic constraint. It
considers that the joint angles can be operated from 0≤θ≤2π.
Kinematics constraints: The path planning does not give any information
about the motion as function of time. The trajectory planning involves discovering
the total travelling time in such a way that it will give the optimal motion.
This paper will govern linear timescale, thus the path planning is done from
parameter 0 to 1. The kinematics constraints consist of the maximum velocity,
the maximum acceleration and the maximum jerk.
The arm robot has the limitation in the maximum velocity as follows:
where, ,
ω_{max(i)} are the joint angle velocity of ith link and its maximum
limit value.
The maximum acceleration and the maximum jerk are described as follow, respectively:
where ,
α_{max(i)},
and J_{max(i)} are the joint angle acceleration, the maximum joint angle
acceleration, the jerk and the maximum jerk, respectively.
Dynamic constraint: Dynamics model of link robot can be derived using
the LagrangeEuler method (Angeles, 2002).
The dynamic constraint can be expressed in the following:
where, τ_{i} and τ_{imax} the torque and the maximum
torque of ith link, respectively.
AVOIDING COLLISION CONSTRAINT
Since the obstacles are present, it is also involve avoiding collision constraint.
The collision detection is very important activity to achieve the collisionfree
path. To satisfy the avoiding collision constraint, the collision detection
rules can be constructed as guidance for the motion planner to discover the
feasible path.
The rules can be expressed in the following:
It needs to check whether any link positions are inside the obstacles areas.
In this execution, after the joint angles are generated by the GA, the forward
kinematics equation is utilized directly instead of the inverse kinematics.
SEVENTH DEGREE POLYNOMIAL JOINT ANGLE PATH
In the first step of arm robot motion planning, the best path should be discovered
utilizing 7th degree polynomial function as follows:
where, r is linear time scaled, t/T, with t is time and T is total transfer
time. a_{nk} is the nth polynomial coefficient, with k is the number
of the link.
This study assumes that an initial speed, a final speed, an initial acceleration
and a final acceleration are zero. The starting point and the final point are
known.
By taking all known variable and all constraints analysis into Eq.
6, the genes in the path planning are in the following:
Each link will have two unknown variables where the GA should code it to find
the best individual.
FEASIBLE JOINT ANGLE PATH AND TRAJECTORIES
The continuous function of the joint angle trajectories starts from the initial
joint angle to the final joint angle. The trajectories continuously move from
the initial to final joint angles. Figure 2b illustrates the
continuous joint angle trajectories of path configuration of Fig.
2a. The problem becomes how to find the intersection area of the sixth degree
polynomial joint angle trajectories with the free configuration.
From Eq. 14, it can be seen that after
the optimal path has been discovered, the trajectories generation is done by
searching the total transfer time, T, so that the kinodynamic constraints are
satisfied.
GENETIC ALGORITHM
The GA is a search technique to find exact solutions of optimization and search
problems based on genetic theory and Darwin evolution theory. Figure
3 gives an illustration of the GA.

Fig. 2(ab): 
Path configuration (a) Arm robot path and (b) Its continuous
joint angle path 

Fig. 3: 
Genetic algorithm scheme 
Fitness function: For path planning, the objective optimization is to
minimize the joint angle traveling distance. There is one strict constraint
in this case, the avoiding collision. To guarantee the collisionfree, the collision
detection should be executed in the computation. Due to there is no information
of the location of the joint angle feasible range, the death penalty is chosen
in the GA. The death penalty will turn the GA into purely randomized searching
method. It will kill every individual that collides with the obstacles by giving
the zero fitness. The GA needs to escape from zero fitness condition to discover
the range of feasible seventh degree polynomial joint angle path.
After the optimal joint angle is discovered, the GA needs to search the total
traveling time, T, so that the trajectories lays in the allowable zone considering
all constraints.
The death penalty rules can be expressed as follows:
• 
If any constraint does not satisfy by the joint angle path,
then it is failure 
• 
Otherwise, the path is success (7) 
Considering the rules, the membership functions have been composed to solve
the first step of the motion planning as follows:
where, f_{i} is the joint angle traveling distance of ith link.
For the joint angle as function of timescale, r, the joint angle traveling
distance is the integration formula in Eq. 9. This study utilizes
the Simpson’s rule to compute
the integration.
The second step of the motion planning is to find the best total travelling
time, T, that is optimal and satisfies all constraints. In this trajectories
planning, the gene is the total traveling time, T.
Such as in the first step, the membership function is composed for the trajectory
planning as follows:
where, F_{2} is the fitness function of the trajectories generation
as follows:
where, a and τ are the weighting factor and the torque, respectively.
Equation 11 will have the dimension of time. In this case,
the joint angle path, θ, has been known from the first step result.
RESULTS AND DISCUSSION
A simulation in MATLAB has been done, by coding in m file. The simulations
use 20 individuals in the population, 100 generations and 1000 generations for
the path planning and the trajectories planning, respectively, 0.3 mutation
rate, 0.5 selection rate. Searching area for path planning is 100≤a_{6k}≤100
while for trajectory planning is 0≤T≤100. The genes are represented by
real code value. Since in this case, it needs to turn the GA into purely randomized
searching method, the high mutation rate, namely hypermutation, is used (Tsang
and Lajbcyger, 2002; Srinivas and Patnaik, 1994).
There are three simulation cases carried out in this study. Figure
57 show the path planning results as well as the trajectories
results for case I, case II and case III, respectively. For all cases, the point
A and the point B are the initial point and the final point, respectively. Link
constrains are presented in Table 1.
The first computation is done by generating the individual in the population
randomly. All individuals commonly collide with the obstacles. This paper continues
the searching process and investigates whether the GA can escape from this collision
condition and find the feasible individual or not.
Table 1: 
Link constraints 


Fig. 4(ab): 
Escaping process (a) Success and (b) Failure 

Fig. 5(af): 
Case I robot (a) Motion, (b) Joint angle, (c) Velocity, (d)
Acceleration, (e) Jerk and (f) Torque 
Figure 4a illustrates the success of the escaping process
while Fig. 4b shows the failure of the escaping process during
100 generations. This paper just utilizes 100 generation since it want to investigate
the GA performance in very short computational time.
At the beginning of the computation, the GA searches the feasible individual
utilizing the death penalty. This is due to no information of the feasible individual
yet. Thus, at the first iteration, where the individuals are generated randomly,
all individuals in the population collide with the obstacles. The GA continues
the searching process until the feasible zone is met.
For case 1, four running have been done to investigate the escaping and evolving
process till 100 generations. The investigation is done in both path planning
and trajectory planning. The results of this activity are presented in Table
2.
During these four running times, the path planning can be failure in escaping
process. For the path planning, it utilizes just 100 generations since it needs
to investigate the GA performance in short computational time. The computational
time of the path planning is longer than that of the trajectory planning due
to it involves the collision detection procedure.

Fig. 6(af): 
Case II robot (a) Motion, (b) Joint angle, (c) Velocity,
(d) Acceleration, (e) Jerk and (f) Torque 

Fig. 7(af): 
Case III robot (a) Motion, (b) Joint angle, (c) Velocity,
(d) Acceleration, (e) Jerk and (f) Torque 
For trajectory planning, run 3 is utilized since it is the best result. The
feasible transfer time is always discovered successfully since at the beginning.
This is due to the path planning is more difficult optimization problem compare
to the trajectory planning. It involves the requirement of avoiding collision
and as nconnectivity that are very hard to be computed in the proximity of
the obstacle.
From Table 2, it can be seen that the time of successful
escaping process met in the path planning is unpredictable. The most important
thing is the GA succeeded in finding this feasible joint angle path so that
the evolution to get the optimal particles can be done easily now. After the
nonzero fitness has been met, the evolution is begun to find the best individual
in the population. These are very challenging result since it is generally known
that the analysis of the robotic arm performance is very complicated in the
proximity of the obstacle (Haddad et al., 2002).
Table 2: 
Escaping and evolving of case I 

Gen: Generation, Fitness: Fitness value 
The calculation of free workspace, free aspect and nconnectivity is extremely
difficult to be solved by the analytical technique. The existing methods to
calculate them have many limitations. This study considers utilizing the natural
computation technique by using its searching ability. The most difficult thing
is finding the feasible joint angle path starting from randomly generated population
where at this stage all individuals are unfeasible due to the constraint. It
needs the requirement to escape from zerofitness condition. After the nonzero
fitness has been met, the computation is continued to evolve this nonzero fitness
individual. Although it is very hard computation problem, the GA has succeeded
to solve it easily.
CONCLUSIONS
The arm robot path planning utilizing 7th degree polynomial function in the
complex geometrical environments has been presented. The trajectory planning
has also succeeded to be optimized where all constraints are satisfied. The
GA has succeeded in solving this complex optimization problem where it can escape
from zero fitness and then evolve the nonzero fitness particle into the best
one ATM.