Professional Documents
Culture Documents
Obtaining Adjacent Configurations With Minimum Time Considering Robot Dynamics Using Genetic Algorithm
Obtaining Adjacent Configurations With Minimum Time Considering Robot Dynamics Using Genetic Algorithm
\
|
+
+
+
+ =
=
=
3
1
2
2
2
6
1
2
2
j
z
p
j
k
j
y
p
j
k
j
x
p
j
k
j
i
k
i
f
i
p k
C
q q B t A C C
o o
o o
o o
(2)
where A, B, and C are coefficients.
2
t (3)
is the time needed to move the end effector
between adjacent configurations through a
third degree polynomial trajectory expressed
in the equation (6).
( )
2
k
i
f
i
q q (4)
are the joint coordinates, which aims to
minimize the difference between the joint
coordinates of the generated configuration
k
C and the joint coordinates of the goal
configuration of the robot, where
i
q is the
joint value.
( )
( )
( )
|
|
|
|
|
.
|
\
|
+
+
=
3
1
2
2
2
j
z
p
j
k
j
y
p
j
k
j
x
p
j
k
j
o o
o o
o o
(5)
expressed in Cartesian coordinates which
aim to minimize the distance between every
group of the first three significant points to
achieve the second condition of obtaining
adjacent configurations.
The motion of robot between two adjacent
configurations
( )
p
i
p
q C
and
( )
k
i
k
q C
has been expressed
in polynomial function as follows:
3 2
pk
pk
i pk
pk
i pk
pk
i
pk
i
pk
i
t d t c t b a q + + + = (6)
where
pk
t
is the minimum time necessary to go from
p
C to
k
C , satisfactory with the robots torque
constraints
i
max
t
and
i
min
t
. The verification of the
maximum and minimum torque in each actuator is
done by dividing the interval
pk
t
and solving the
corresponding inverse dynamic problem using the
recursive Newton-Euler formulation to obtain the
joint torques required for a given set of joint angles,
velocities, and accelerations. The torque or the force
exerted by the actuator at joint i could be obtained
from (Craig, 1989).
i
i T
i
i
i
Z n
= t (7)
where
i
i
Z
(8)
- For t =
pk
t
( )
( ) 0 =
=
pk
pk
i
k
i pk
pk
i
t q
q t q
(9)
Requiring velocity zero at the ends doesnt fit in
motion conditions between the
p
C and
k
C as if they
were part of the pursued trajectory, but it facilitates
the comparison between the configurations that
constitute the discrete space since common initial and
goal velocity requirements are imposed.
The solution of the optimization problems is
obtained by using a genetic algorithm procedure. The
4
obtained solution guarantees the prevention of
collisions and the dynamic feasibility of the
movement.
To achieve the objective function which is
generating adjacent configurations from an existing
one with minimum time that allows the robot to move
between them, three types of constraints must be
considered. First, the torques can be provided by the
actuators of the robot, which are considered as
dynamic constraints and explained before. Second,
collision avoidance between robots links and
obstacles must be verified. Finally, the feasibility of
the robot configuration.
2.3. Workspace Modelling
In order to evaluate the influence of the objective
function in obtaining the geometrical solution for
adjacent configurations, some examples have been
solved using a Puma 560 robot (as an application
example) in different workspaces. In order to obtain
many adjacent configurations, the workspace is
modelled as a rectangular prism between the initial
i
C and final
f
C pursued trajectory (points
i
4
o and
f
4
o , see Fig. 2).
Fig. 2. Workspace generation
For more details please back to (Abu-Dakka, et
al., 2007, Valero, et al., 2005, Valero, et al., 1997,
Valero, et al., 2000).
3. GA Solution Methodology.
A genetic algorithm maintains population of
solutions or individuals throughout the search. It
initializes the population with a pool of potential
solutions to the problem and seeks to produce better
solutions by combining the better of the existing ones
through the use of genetic operators. Individuals are
selected at each iteration through a selection scheme
depends on the fitness or the objective function value
for each individual.
In this paper a steady state genetic algorithm
procedure is used; which use overlapping
populations. This means the ability to specify how
much of the population should be replaced in each
generation. Newly generated offspring are added to
the population, and then the worst individuals are
destroyed (so the new offspring may or may not
make it into the population, depending on whether
they are better than the worst in the population).
The individual or the chromosome represents the
robot configuration. Each one consists of seven
genes; six are the robot generalized coordinates
6 ,..., 2 , 1 ; = i q
i
and the seventh is the time needed to
move the robot end-effector between the adjacent
configurations.
A roulette-wheel selection method is applied to
select individuals for crossover and mutation. This
method based on the magnitude of the fitness score of
an individual relative to the rest of the population.
The higher score, the more likely an individual will
be selected.
The crossover operator defines the procedure for
generating a child from two parents. A single point
crossover used in this work.
The mutation operator defines the procedure for
mutating each genome. Swap mutation used in this
work.
4. Results & Comparison.
Many examples were applied in various cases. The
algorithm shows a high ability of convergence and
coverage comparing with the SQP algorithm, reaches
to 95-98% for cases without obstacles. The table
results (1) will focus on the average time needed to
move the robot between adjacent configurations and
the percentage of total number of convergence; which
means the total number of successful adjacent
configurations generated with respect to the total
trials of the algorithm in a specific workspace; which
depends on the complexity of the workspace. And
finally it will focus on the calculation time needed. In
(Tab. 1 below), Case 1, it will demonstrate the results
published in (Abu-Dakka, et al., 2007). On the other
hand, Case 2, will demonstrate the results obtained
from the GA procedure.
Tab. 1. Computational effort for the evaluation of the GA
Procedure
5
Case 1: SQP
Sphere Cylinder Plane
Avg. Time of
motion (sec)
1.4491 1.0244 1.3608
Avg. Time of
calculation (sec)
12.97 39.0 16.2
Percentage of
convergence
78.6% 58.6% 81.6%
Two
Spheres
Three
Spheres
Sphere and
cylinder
Avg. Time of
motion (sec)
1.4036 1.5220 1.3608
Avg. Time of
calculation (sec)
14.9 15.1 7.8
Percentage of
convergence
75.4% 79.7% 61.1%
Case 2: GA
Sphere Cylinder Plane
Avg. Time of
motion (sec)
0.3581 0.3478 0.3461
Avg. Time of
calculation (sec)
16.19 17.10 19.38
Percentage of
convergence
79.4% 78% 78%
Two
Spheres
Three
Spheres
Sphere and
cylinder
Avg. Time of
motion (sec)
0.3432 0.3436 0.3513
Avg. Time of
calculation (sec)
10.4 14.89 15.56
Percentage of
convergence
78% 84% 75%
5. Conclusion
In this paper an algorithm had been built to obtain
adjacent configurations, with consideration to the
dynamic behaviour of the robot in a complex
environment to facilitate the obtaining of trajectories
in the further work. The problem modelling in this
paper had been defined depending on the work done
by (Abu-Dakka, et al., 2007), where the robot was
defined in joint coordinates and the obstacles were
defined in Cartesian coordinates. This algorithm
optimized the time needed to move the robot between
adjacent configurations using genetic algorithm. A
comparison had been set between the SQP algorithm
built by (Abu-Dakka, et al., 2007) and the genetic
algorithm built in this work. In order to insure the
functionality of the algorithm; a huge workspace had
been built between the initial and final configuration
of the robot. This workspace had been discretized in
prism by starting ramification from the initial
position to reach the final or the goal position. As
shown in the example demonstrated above, the
average of the convergence is reasonable, which
means that the algorithm succeeded to occupy the
majority of intermediate points of prism.
Accordingly, this will facilitate the selection of
trajectories between the initial and final position of
the end effector of the robot depending on the data
saved in each adjacent configurations. Further more,
expressing the joints coordinates in 3rd degree
polynomial; makes the motion and the velocity
between adjacent configurations to be smooth.
According to the results shown above it will be
noted clearly that the GA algorithm succeeded to
minimize the time needed to move the robot between
the adjacent configurations to reach a values less than
30% of the values obtained from the SQP algorithm.
Also, as an advantage of using genetic algorithms,
it wasnt needed to find the derivatives of the
objective functions and constrains because the GA
treats directly with the variables and search for a
population of points not a single points. Moreover, in
the previous paper, the SQP algorithm faced a
sensibility problem of the initial guess of the
variables, which disappeared in the GA procedure.
6. Acknowledgement
This paper has been possible thanks to the funding of
Spanish Education and Science Ministry by means of
the Researching and Technologic Development
Project DPI2005-08732-C02-01 which is also
supported by FEDER funds.
7. References
F. Abu-Dakka, F. J. Valero, A. Tubaileh, and F.
Rubio, "Obtaining Adjacent Configurations
with Minimum Time Considering Robot
Dynamics," Proc. The 12th World Congress in
Mechanism and Machine Science, Besanon,
France, 2007.
J. E. Bobrow, S. Dubowsky, and J. S. Gibson, "Time-
Optimal Control of Robotic Manipulators
Along Specified Paths," International Journal
of Robotics Research, vol. 4, pp. 3-17, 1985.
J. Kieffer, A. J. Cahill, and M. R. James, "Robust and
Accurate Time-Optimal Path-Tracking
Control for Robot Manipulators," IEEE
Transactions on Robotics and Automation,
vol. 13, pp. 880-890, 1997.
F. J. Valero, "Planificacin de Trayectorias Libres de
Obstculos para un Manipulador Plano," in
Departamento Ingeniera Mecnica y de
Materiales. Valencia, Spain: Universidad
Politcnica de Valencia, 1990.
F. J. Valero, V. Mata, and A. Besa, "Trajectory
planning in workspaces with obstacles taking
into account the dynamic robot behaviour,"
Mechanism and Machine Theory, vol. 41, pp.
525-536, 2006.
F. Valero, V. Mata, and A. Besa, "Trajectory
planning in workspaces with obstacles taking
into account the dynamic robot behaviour,"
6
Mechanism and Machine Theory, vol. 41, pp.
525-536, 2005.
J. H. Holland, Adaptation in Natural and Artificial
Systems: The University of Michigan Press,
1975.
Z. Shiller and S. Dubowsky, "On computing the
global time-optimal motions of robotic
manipulators in the presence of obstacles,"
IEEE Transactions on Robotics and
Automation, vol. 7, pp. 785-797, 1991.
R. Toogood, H. Hao, and C. Wong, "Robot path
planning using genetic algorithms," Proc.
IEEE International Conference on Systems,
Man and Cybernetics, Vancouver, BC,
Canada, 1995, 489-494.
D. Monteiro and M. Madrid, "Planning of Robot
Trajectories with Genetic Algorithms,"
Proceedings of the First Workshop on Robot
Motion and Control, pp. pp. 223-228, 1999.
F. Valero, V. Mata, J. I. Cuadrado, and M. Ceccarelli,
"A formulation for path planning of
manipulators in complex environments by
using adjacent configurations," Advanced
Robotics, vol. 11, pp. 33-56, 1997.
V. J. Steffen and S. F. P. Samarago, "Optimization
Techniques for off-line Trajectories Planning
of Robot Manipulators," Proc. ICONE--
Second International Conference on Non-
linear Dynamics, Chaos, Control and their
Applications in Engineering Sciences, So
Pedro, S.P. Brazil, 1996.
T. Lozano-Prez and M. A. Wesley, "An Algorithm
for Planning Collision-Free Paths Among
Polyhedral Obstacles," Communications of
ACM, vol. 22, pp. 560-570, 1979.
F. Valero, V. Mata, and M. Ceccarelli, "Path
planning in complex environments for
industrial robots with additional degrees of
freedom," COURSES AND LECTURES-
INTERNATIONAL CENTRE FOR
MECHANICAL SCIENCES, pp. 431-438,
2000.
J. J. Craig, Introduction to Robotics Mechanics and
Control, Second ed: Addison-Wesley
Publishing Company, 1989.