**4.2 Path planning problem for mobile robots**

The second example is about path planning for mobile robots. Path planning is one of the most studied topics related to mobile robots. It works for finding the shortest path between the start and goal points while avoiding the collisions with any obstacles. In the example, this problem was solved using GA and PSO.

Path planning can be classified in two categories, global and local path planning. The global type path planning is made for a static and completely known environment while the local path planning is required if the environment is dynamic (Sedighi et al., 2004). In this

Heuristic Optimization Algorithms in Robotics 331

Path Area: The rectangular area defined using the maximum and minimum coordinate

Penalty Area: The rectangular area defined using the maximum and minimum coordinate

The collision detection procedure starts with defining the path area, and then the obstacles which are totally or partially located in the path are determined like obstacle 2 and obstacle 3 in the Figure 18. After that, penalty areas for each of the determined obstacle are defined; the penalty area for obstacle 3 is shown in the Figure 18. The following processes are

and the sign of the each product is determined. If the all cross products have the same sign,

to the two vertexes of the penalty area.

vector between the two points of the

vector to the vertexes of the penalty area

with each of these vectors are achieved

to the other two vertexes of

vector.

to the center of the penalty area.

: The vector between two points of the path, from the first one to the next.

: The distance between the center of the penalty area and the *P*

*r* : The distance between one vertex and the center of the penalty area.

Fig. 18. The penalty calculation for a collision with an obstacle

: The vectors from the first point of the *P*

achieved for the determined penalty areas. First, the *P*

path, and four vectors from the first point of the *P*

are defined. Afterward, the cross products of the *P*

(There are two additional vectors from the first point of the *P*

In the Figure;

the penalty area)

*n P*

*P* 

*P* 

*a* and *b* 

*n*

*h*

values of the two points on the path.

: The vector from the first point of the *<sup>P</sup>*

values of the obstacle's vertexes.

example, global path planning was performed. The robot's environment was defined as a 10x10 unit size square in 2D coordinate system. In the environment, it was defined several obstacles that have different shapes. The problem is finding the shortest path between predefined start and goal points while the coordinates of these points and of the obstacle vertexes are known. A sample environment including obstacles and a sample path can be seen in the Figure 17. In the Figure there are six different shaped obstacles and the path is composed from four points. Two of these points are via points while the others are start and goal points. The mobile robot can reach the goal with tracing the path from the start point. The main object of this problem is to find the shortest path that is not crosses with any obstacles. According to these two constraints, the object function can be defined composing of two parts. The first one is the length of the path and the second one is the penalty function for collisions. The total length of the path can be calculated with the Euler distance between the points on the path if there are two via points that means the path is composed of three parts. The Euler distance between the two points can be simply calculated in 2D environment as in equation 30.

Fig. 17. A sample environment and a path

$$\mathbf{d}\_{\mathbf{i}} = \sqrt{\left(\mathbf{x\_{i}} - \mathbf{x\_{i-1}}\right)^{2} + \left(\mathbf{y\_{i}} - \mathbf{y\_{i-1}}\right)^{2}} \quad \mathbf{i} = 1, 2, \dots \\ \mathbf{n} \tag{30}$$

Where, **n** is the number of points on the path. The total length of the path is simply the sum of the distances, equation 31. In the equation, **L** is the total length of the path.

$$\mathbf{L} = \sum\_{\mathbf{i}=1}^{\mathbf{n}-1} \mathbf{d}\_{\mathbf{i}} \qquad \mathbf{i} = 1, 2, \dots \\ \mathbf{n} \tag{31}$$

The second part of the object function determines the penalty for collision with the obstacles. Determining the collision with an obstacle is quite complicated. The obstacle avoidance technique, used in this study, can be briefly described using Figure 18.

example, global path planning was performed. The robot's environment was defined as a 10x10 unit size square in 2D coordinate system. In the environment, it was defined several obstacles that have different shapes. The problem is finding the shortest path between predefined start and goal points while the coordinates of these points and of the obstacle vertexes are known. A sample environment including obstacles and a sample path can be seen in the Figure 17. In the Figure there are six different shaped obstacles and the path is composed from four points. Two of these points are via points while the others are start and goal points. The mobile robot can reach the goal with tracing the path from the start point. The main object of this problem is to find the shortest path that is not crosses with any obstacles. According to these two constraints, the object function can be defined composing of two parts. The first one is the length of the path and the second one is the penalty function for collisions. The total length of the path can be calculated with the Euler distance between the points on the path if there are two via points that means the path is composed of three parts. The Euler distance between the two points can be simply calculated in 2D

2 2 d xx y y i 1,2,..,n i i i1 i i1 (30)

(31)

Where, **n** is the number of points on the path. The total length of the path is simply the sum

L d i 1,2,..,n <sup>i</sup> i 1 

The second part of the object function determines the penalty for collision with the obstacles. Determining the collision with an obstacle is quite complicated. The obstacle avoidance

of the distances, equation 31. In the equation, **L** is the total length of the path.

technique, used in this study, can be briefly described using Figure 18.

n 1

environment as in equation 30.

Fig. 17. A sample environment and a path

Fig. 18. The penalty calculation for a collision with an obstacle

In the Figure;

Path Area: The rectangular area defined using the maximum and minimum coordinate values of the two points on the path.

Penalty Area: The rectangular area defined using the maximum and minimum coordinate values of the obstacle's vertexes. 

*P* : The vector between two points of the path, from the first one to the next. 

*a* and *b* : The vectors from the first point of the *P* to the two vertexes of the penalty area. 

(There are two additional vectors from the first point of the *P* to the other two vertexes of the penalty area)

*n* : The vector from the first point of the *<sup>P</sup>* to the center of the penalty area.

*r* : The distance between one vertex and the center of the penalty area. 

*n P h P* : The distance between the center of the penalty area and the *P* vector.

The collision detection procedure starts with defining the path area, and then the obstacles which are totally or partially located in the path are determined like obstacle 2 and obstacle 3 in the Figure 18. After that, penalty areas for each of the determined obstacle are defined; the penalty area for obstacle 3 is shown in the Figure 18. The following processes are achieved for the determined penalty areas. First, the *P* vector between the two points of the path, and four vectors from the first point of the *P* vector to the vertexes of the penalty area are defined. Afterward, the cross products of the *P* with each of these vectors are achieved and the sign of the each product is determined. If the all cross products have the same sign, this means that the part of the path doesn't cross with obstacle. On the other hand if there are different signs obtained from the cross products, then it means that the part of the path crosses with the obstacle. In Figure 18, the signs for the obstacle 2 are all same while not for the obstacle 3 and that means the part of the path crosses with the obstacle 3. Finally the penalty value is calculated for the obstacles which cross with the part of the path. Euler distance between the center of the penalty area and the *P* vector, and the distance between the center and one vertexes of the penalty area are used to calculate the penalty value as defined in equation 32. In the equation, *pc* is the penalty constant for the collisions.

$$\mathbf{P} = \mathbf{c}\_{\mathbf{P}} \left( \mathbf{l} + \mathbf{r} - \mathbf{h} \right)^{2} \tag{32}$$

Heuristic Optimization Algorithms in Robotics 333

Fig. 19. GA solution

Fig. 20. PSO solution

Table 7. PSO parameters

Number of Iterations

parameters were defined as in Table 8.

Cognitive Component

Social Component

100 200 2 2 0.4 0.9 1000

For the comparison the same parameters were defined for the two algorithms and each algorithm was run 100 times on the same computer under the same conditions. The

Min. inertia weight

Max. inertia weight

Penalty constant

Number of Individuals

As a result, the object function can be formulated completely as in the equation 33.

$$\mathbf{f} = \mathbf{L} + \sum\_{\mathbf{i}=\mathbf{l}}^{\mathbf{k}} \mathbf{P}\_{\mathbf{i}} \tag{33}$$

Where, **f** is the final object function value, **L** is the total length of the path, **P** is the total penalty value for the collisions and **k** is the number of the collisions for an individual.

The path planning problem for mobile robots was solved using GA and PSO and a comparison between these two algorithms was presented as it is in the first example. The algorithm's flow charts and other details were not given here since they presented in the chapter and also in the first example. The parameters for the problem were defined as in Table 5, and the problem was firstly solved with GA. The GA's parameters were also defined as in Table 6.


Table 5. The parameters for the path planning problem for mobile robots


Table 6. GA parameters

The obtained result can be seen in the Figure 19. It can be seen that GA can find nearly optimum solution to the path planning problem for mobile robots.

The second algorithm is the most general type of the PSO like used in first example. The defined parameters for the algorithm are in the Table 7, and the obtained result from PSO is in the Figure 20, and it is obvious that PSO can find nearly optimum solution to the path planning problem for mobile robots.

this means that the part of the path doesn't cross with obstacle. On the other hand if there are different signs obtained from the cross products, then it means that the part of the path crosses with the obstacle. In Figure 18, the signs for the obstacle 2 are all same while not for the obstacle 3 and that means the part of the path crosses with the obstacle 3. Finally the penalty value is calculated for the obstacles which cross with the part of the path. Euler

the center and one vertexes of the penalty area are used to calculate the penalty value as

 k

Where, **f** is the final object function value, **L** is the total length of the path, **P** is the total penalty value for the collisions and **k** is the number of the collisions for an individual. The path planning problem for mobile robots was solved using GA and PSO and a comparison between these two algorithms was presented as it is in the first example. The algorithm's flow charts and other details were not given here since they presented in the chapter and also in the first example. The parameters for the problem were defined as in Table 5, and the problem was firstly solved with GA. The GA's parameters were also

others are start and goal points.

Mutation rate

100 200 0.2 0.9 1000

The obtained result can be seen in the Figure 19. It can be seen that GA can find nearly

The second algorithm is the most general type of the PSO like used in first example. The defined parameters for the algorithm are in the Table 7, and the obtained result from PSO is in the Figure 20, and it is obvious that PSO can find nearly optimum solution to the path

defined in equation 32. In the equation, *pc* is the penalty constant for the collisions.

As a result, the object function can be formulated completely as in the equation 33.

<sup>2</sup> (1 <sup>r</sup> h) <sup>p</sup> <sup>P</sup> <sup>c</sup> (32)

<sup>i</sup> <sup>1</sup> <sup>i</sup> <sup>f</sup> <sup>L</sup> P (33)

There are four points. Two of them are via points while the

Crossover Rate

Penalty constant

vector, and the distance between

distance between the center of the penalty area and the *P*

Environment A 10x10 unit area in 2D space Obstacles Seven different shape obstacles

Table 5. The parameters for the path planning problem for mobile robots

Number of Iterations

optimum solution to the path planning problem for mobile robots.

defined as in Table 6.

Number of Points of an individual

> Number of Individuals

Table 6. GA parameters

planning problem for mobile robots.

Start Point [0.2, 0.2] Goal Point [8.5, 7.5]

Fig. 19. GA solution

Fig. 20. PSO solution


Table 7. PSO parameters

For the comparison the same parameters were defined for the two algorithms and each algorithm was run 100 times on the same computer under the same conditions. The parameters were defined as in Table 8.

Heuristic Optimization Algorithms in Robotics 335

The perpendicular distance between given start and goal points can be calculated as in

The perpendicular distance was calculated directly from start point to goal point and the obstacles were not considered. If the obstacles were considered that means the distance should be longer. The object function values that were calculated from the algorithms are between 11.3 and 11.82, and this means that these results are nearly optimum results. In terms of the comparison, there is no a significant difference about the final object function values. On the other hand, there is a remarkable difference between the two algorithms' execution times. GA's execution time is nearly twice of the PSO's execution times. So, it can be concluded by saying that the both PSO and GA can be used to solve the path planning of

Heuristic algorithms are an alternative way for the solution of optimization problems. Their implementations are easy. Even if they couldn't find the exact optimum point, they find satisfactory results, in a reasonable solution time. In this chapter, two well-known optimization problems in Robotic were solved with PSO and GA. The first problem is the inverse kinematics of the near PUMA robot while the second problem is the path planning problem for mobile robots. These problems were solved with PSO and GA. It has seen that both algorithm give satisfactory results. But PSO outperforms GA in terms of the solution

Barzegar, B.; Rahmani, A.M.; Zamanifar, K. & Divsalar, A. (2009). Gravitational emulation

local search algorithm for advanced reservation and scheduling in grid computing

the mobile robots, but if the execution time is important, PSO should be preferred.

2 2 *d* (8.5 0.2) (7.5 0.2) 11.0535 (34)

Fig. 22. The execution times of the two algorithms

time, because of the fact that it uses little parameters.

equation 34.

**5. Conclusion** 

**6. References** 


Table 8. The parameters for GA and PSO for the path planning problem

The comparison results for the both algorithms were drawn on the two Figures. In Figure 21, there is a graph for the comparison of the final object function values of the algorithms. Lastly, the graph for the comparison of the algorithms' execution times is in the Figure 22.

Fig. 21. The object function values of the two algorithms

**Parameters GA PSO**  Number of Individuals 100 100 Number of Iterations 200 200 Penalty 1000 1000

Start Point [0.2, 0.2] [0.2, 0.2] Goal Point [8.5, 7.5] [8.5, 7.5]

Gene Code Type Real Values Real Values

Number of Points of an individual 3 3

Mutation Rate 0.2 \*\*\* Crossover Rate 0.9 \*\*\* Selection Type R. Wheel \*\*\* Mutation Type One Point \*\*\* c1 \*\* 2 c2 \*\* 2 Wmin \*\* 0.4 Wmax \*\* 0.9

Table 8. The parameters for GA and PSO for the path planning problem

Fig. 21. The object function values of the two algorithms

The comparison results for the both algorithms were drawn on the two Figures. In Figure 21, there is a graph for the comparison of the final object function values of the algorithms. Lastly, the graph for the comparison of the algorithms' execution times is in the Figure 22.

Fig. 22. The execution times of the two algorithms

The perpendicular distance between given start and goal points can be calculated as in equation 34.

$$d = \sqrt{(8.5 - 0.2)^2 + (7.5 - 0.2)^2} = 11.0535\tag{34}$$

The perpendicular distance was calculated directly from start point to goal point and the obstacles were not considered. If the obstacles were considered that means the distance should be longer. The object function values that were calculated from the algorithms are between 11.3 and 11.82, and this means that these results are nearly optimum results. In terms of the comparison, there is no a significant difference about the final object function values. On the other hand, there is a remarkable difference between the two algorithms' execution times. GA's execution time is nearly twice of the PSO's execution times. So, it can be concluded by saying that the both PSO and GA can be used to solve the path planning of the mobile robots, but if the execution time is important, PSO should be preferred.

## **5. Conclusion**

Heuristic algorithms are an alternative way for the solution of optimization problems. Their implementations are easy. Even if they couldn't find the exact optimum point, they find satisfactory results, in a reasonable solution time. In this chapter, two well-known optimization problems in Robotic were solved with PSO and GA. The first problem is the inverse kinematics of the near PUMA robot while the second problem is the path planning problem for mobile robots. These problems were solved with PSO and GA. It has seen that both algorithm give satisfactory results. But PSO outperforms GA in terms of the solution time, because of the fact that it uses little parameters.

### **6. References**

Barzegar, B.; Rahmani, A.M.; Zamanifar, K. & Divsalar, A. (2009). Gravitational emulation local search algorithm for advanced reservation and scheduling in grid computing

Heuristic Optimization Algorithms in Robotics 337

Kalra, P.; Mahapatra, P.B. & Aggarwal, D.K. (2006). An evolutionary approach for solving

Karsli, G. & Tekinalp, O. (2005). Trajectory optimization of advanced launch system, *Recent* 

Kennedy, J.(1997). The particle swarm: Social adaptation of knowledge, *in Proc. IEEE Int.* 

Kennedy, J.; Eberhart, R. (1995). Particle Swarm Optimization. *Proceedings of IEEE International Conference on Neural Networks,* Vol.4, No*.,* IV. pp. 1942–1948 Kirkpatrick, S.; Gelatt, D.C & Vechhi, M.P. (1983) Optimization by simulated annealing,

Kucuk, Serdar, & Bingul, Zafer. (2005). The Inverse Kinematics Solutions of Fundamental

Kucuk, Serdar, & Bingul, Zafer. (2006). Robot Kinematics: Forward and Inverse Kinematics,

articles/show/title/robot\_kinematics\_\_forward\_and\_inverse\_kinematics > Kumar, J.; Xie, S. & Kean, C. A.(2009). Kinematic design optimization of a parallel ankle

Laguna, M.(1994). A guide to implementing tabu search. *Investigacion Operative*, Vol.4, No.1,

Lee, K. Y. & El-Sharkawi, M. A. (2008). *Modern Heuristic Optimization Techniques Theory and Applications to Power Systems*, IEEE Press, 445 Hoes Lane Piscataway, NJ 08854 Li, J. & Xiao, X.(2008). Multi- Swarm and Multi- Best particle swarm optimization algorithm.

Lin, CY & Hajela P.(1992). Genetic algorithms in optimization problems with discrete and integer design variables. *Engineering Optimization* ,Vol. 19, No.4 , pp.309–327. Mart´, R.; Laguna, M. & Glover F. (2006). Principles of scatter search, *European Journal of* 

Raghavan, M. (1993). The Stewart Platform of General Geometry Has 40 Configurations.

Rashedi, E.; Nezamabadi-pour, H. & Saryazdi, S.(2009). GSA: a gravitational search

Saruhan, H.(2006). Optimum design of rotor-bearing system stability performance

Sedighi , Kamran. H., Ashenayi , Kaveh., Manikas, Theodore. W., Wainwright, Roger L., &

comparing an evolutionary algorithm versus a conventional method. *International* 

Tai, Heng Ming (2004). Autonomous Local Path Planning for a Mobile Robot Using a Genetic Algorithm, The Congress on Evolutionary Computation, Oregon,

Lazinca, A. (2009). *Particle Swarm Optimization*, InTech, ISBN 978-953-7619-48-0.

*Operational Research(EJOR),* Vol. 169, No. 2, pp. 359–372.

algorithm. *Information Science*, Vol. 179, No.13, pp. 2232–2248

*Journal of Mechanical Sciences*, Vol. 48, No 12. pp 1341-1351

*Journal of Mechanical Design*, Vol. 115, pp. 277-282

Robot Manipulators with Offset Wrist, Proceedings of the 2005 IEEE International

In: Industrial Robotics: Theory, Modelling and Control, Sam Cubero, pp. (117-148), InTech - Open Access, Retrieved from < http://www.intechopen.com/

rehabilitation robot using modified genetic algorithm, *Robotics and Autonomous* 

*Intelligent Control and Automation, 2008, WCICA 2008, 7th World Congress on ,* Vol.,

pp. 1213–1229

pp 5-25

No., pp.6281-6286.

Portland, June 2004.

*on* ,Vol., No., pp. 374- 378

*Conf. Evol. Comput*., Vol. ,No., pp. 303–308.

Conference on Mechatronics, Taipei, Taiwan, July 2005

*Science* Vol.220, No.4598, pp. 671–680

*Systems*, Vol. 57,No. 10, pp 1018-1027

the multimodal inverse kinematics, *Mechanism and Machine Theory,* Vol. 41, No.10,

*Advances in Space Technologies*, RAST 2005. *Proceedings of 2nd International Conference* 

systems, *Computer Sciences and Convergence Information Technology,. ICCIT '09. Fourth International Conference on*, Vol., No., pp.1240-1245.


Basturk, B. & Karaboga, D. (2006). An Artificial Bee Colony (ABC) Algorithm for Numeric

Blum, C. & Roli, A., Metaheuristics in Combinatorial Optimization: Overview and Conceptual Comparasion, Technical Report, *TR/IRIDIA*/2001-13, October 2001. Ceylan, O.; Ozdemir, A. & Dag, H.(2010). Gravitational search algorithm for post-outage bus

Chandra, R. & Rolland, L.(2011). On solving the forward kinematics of 3RPR planar parallel

Chen, M. W. & Zalzala, A. M. S.(1997). Dynamic modelling and genetic-based trajectory

Clerc, M.(1999). The swarm and the queen: Towards a deterministic and adaptive particle swarm optimization*. Proc. Congress on Evolutionary Computation*., pp 1951-1957. Dorigo, M.; Maniezzo, V.; Colorni, A. (1996). Ant system: optimization by a colony of

Eberhart, R & Shi, Y.(2001). Particle swarm optimization: Developments, applications and

Farmer, D.; Packard, N. & Perelson, A. (1986). The immune system, adaptation and machine

Feo, T. A. & Resende, M. G.C. (1995). Greedy randomized adaptive search procedures,

Fisher, M.L.; Alexander, H. G. & Rinnooy, K. (1998) The Design, analysis and implementation of heuristics, *Management Science*, Vol. 34., No.3, pp 263-265. Gao,M. & Jingwen, T.(2007), Path planning for mobile robot based on improved simulated

Geem, Z.W.; Kim, J.H. & Loganathan, G.V. (2001). A new heuristic optimization algorithm:

Glover, F. & Kochenberger, Gary A. (2002). *Handbook of Metaheuristics,* Kluwer Academic

Goldberg, D. E. (1989). *Genetic Algorithms in Search Optimization and Machine Learning*.

Gueaieb, W. & Miah, M.S.(2008). Mobile robot navigation using particle swarm optimization

Hong, D.S. & Cho, H.S.(1999). Generation of robotic assembly sequences using a simulated

Jourdan, L.; Basseur, M. & Talbi, E.-G.(2009). Hybridizing exact methods and metaheuristics: A taxonomy, *European Journal of Operational Research*, Vol. 199, No. 3, pp. 620-629.

and noisy RFID communication, *Computational Intelligence for Measurement Systems* 

annealing, *Intelligent Robots and Systems*, IROS '99 Proceedings. *1999 IEEE/RSJ* 

annealing artificial neural network, *icnc*, *Third International Conference on Natural* 

resources, *in Proc. IEEE Congr. Evol. Comput*., Vol. 1,No., pp. 81–86

*Journal of Global Optimization*, Vol. 6, No. 2, pp. 109–133

harmony search, *Simulation*, Vol. 76 No. 2 pp. 60–68

*and Applications, 2008. CIMSA 2008.* Vol. , No., pp. 111 - 116

*International Conference on* , Vol.2, No., pp.1247-1252.

*Fourth International Conference on*, Vol., No., pp.1240-1245.

*2010 45th International* , Vol., No., pp.1-6.

Transactions on , Vol.26, No.1, pp.29-41

learning, *Physica D,* Vol. 2, pp. 187–204

*Computation 2007*, Vol. 3, No., pp.8-12.

Addison Wesley. pp. 41. ISBN 0201157675.

Publishers, Norwell, MA.

*Control Engineering Practice*, Vol.5, No.1, pp. 39-48

217, No. 22, pp. 8997-9008

687-697.

systems, *Computer Sciences and Convergence Information Technology,. ICCIT '09.* 

Function Optimization. *IEEE Swarm Intelligence Symposium 2006,* Vol. 8, No. 1, pp.

voltage magnitude calculations, *Universities Power Engineering Conference (UPEC),* 

manipulator using hybrid metaheuristics, *Applied Mathematics and Computation*, Vol.

generation for non-holonomic mobile manipulators, Original Research Article

cooperating agents, Systems, *Man, and Cybernetics*, Part B: Cybernetics, IEEE


**17** 

*Brazil* 

**Multi-Criteria Optimal Path** 

**Planning of Flexible Robots** 

and Sezimária de Fátima Pereira Saramago2

*Federal University of Uberlândia, Uberlândia, MG* 

*Federal University of Uberlândia, Uberlândia, MG* 

*1School of Mechanical Engineering,* 

*2Faculty of Mathematics,* 

Rogério Rodrigues dos Santos1, Valder Steffen Jr.1

Determining the trajectory from the initial to the final end-effector positioning represents one of the most common problems in the path-planning design of serial robot manipulators. The movement is established through the specification of a set of intermediate points. In this way, the manipulator is guided along the trajectory without any concern regarding the intermediate configurations along the path. However, there are applications in which the intermediate points have to be taken into account both for path-planning and control purposes. An example of such an application is the case of robot manipulators that are used

In the context of industrial applications, a previous planning is justified, the so-called *off-line programming*, aiming at establishing a precise control for the movement. This planning includes the analysis of the kinematics and dynamics behavior of the system. The reduction of costs and increase of productivity are some of the most important objectives in industrial automation. Therefore, to make possible the use of robotic systems, it is important that one

The improvement of industrial productivity can be achieved by reducing the weight of the robots and/or increasing their speed of operation. The first choice may lead to power consumption reduction while the second results in a faster work cycle. To successfully achieve these purposes it is very desirable to build flexible robotic manipulators. In some situations it is even necessary to consider the flexibility effects due to the joints and gear

Compared to conventional heavy robots, flexible link manipulators have the potential advantage of lower cost, larger work volume, higher operational speed, greater payload-to-

The study of the control of flexible manipulators started in the field of space robots research. Aiming at space applications, the manipulator should be as light as possible in order to reduce the launching costs (Book, 1984). Uchiyama *et al.* (1990), Alberts *et al.* (1992), Dubowsky (1994), to mention only a few, have also studied flexible manipulators for space

components of the manipulators for obtaining an accurate and reliable control.

manipulator-weight ratio, smaller actuators and lower energy consumption.

considers the path planning optimization for a specific task.

**1. Introduction** 

in welding operations.

