Inverse Kinematics Solution for Robotic Manipulators Using a CUDA-Based Parallel Genetic Algorithm

  • Omar Alejandro Aguilar
  • Joel Carlos Huegel
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7094)


Inverse kinematics is one of the most basic problems that needs to be solved when using robot manipulators in a work environment. A closed-form solution is heavily dependent on the geometry of the manipulator. A solution may not be possible for certain robots. On the other hand, there may be an infinite number of solutions, as is the case of highly redundant manipulators. We propose a Genetic Algorithm (GA) to approximate a solution to the inverse kinematics problem for both the position and orientation. This algorithm can be applied to different kinds of manipulators. Since typical GAs may take a considerable time to find a solution, a parallel implementation of the same algorithm (PGA) was developed for its execution on a CUDA-based architecture. A computational model of a PUMA 500 robot was used as a test subject for the GA. Results show that the parallel implementation of the algorithm was able to reduce the execution time of the serial GA significantly while also obtaining the solution within the specified margin of error.


Genetic Algorithm Genetic Code Parallel Implementation Robotic Manipulator Thread Block 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Arora, R., Tulshyan, R., Deb, K.: Parallelization of binary and real-coded genetic algorithms on gpu using cuda. In: 2010 IEEE Congress on Evolutionary Computation (CEC), pp. 1–8 (July 2010)Google Scholar
  2. 2.
    Barrientos, A., Peñín, L.F., Balaguer, C., Aracil, R.: Fundamentos de Robótica, 2nd edn. McGraw-Hill, Spain (2007)Google Scholar
  3. 3.
    Cantú-Paz, E.: A summary of research on parallel genetic algorithms (1995)Google Scholar
  4. 4.
    Cantú-Paz, E.: A survey of parallel genetic algorithms. Calculateurs Paralleles, Reseaux et Systems Repartis 10(2), 141–171 (1998)Google Scholar
  5. 5.
    Craig, J.J.: Robótica, 3rd edn. Prentice Hall, Mexico (2006)Google Scholar
  6. 6.
    Flynn, M.J.: Some computer organizations and their effectiveness. IEEE Transactions on Computers C-21(9), 948–960 (1972)CrossRefzbMATHGoogle Scholar
  7. 7.
    Groover, M.P.: Automation, Production Systems, and Computer-Integrated Manufacturing, 3rd edn. Prentice Hall, New Jersey (2008)Google Scholar
  8. 8.
    Holland, J.H.: Adaptation in natural and artificial systems. MIT Press, Cambridge (1992)Google Scholar
  9. 9.
    Koza, J.R.: Genetic programming (1997)Google Scholar
  10. 10.
    Macedonia, M.: The gpu enters computing’s mainstream. Computer 36(10), 106–108 (2003)CrossRefGoogle Scholar
  11. 11.
    Munawar, A., Wahib, M., Munetomo, M., Akama, K.: A survey: Genetic algorithms and the fast evolving world of parallel computing. In: 10th IEEE International Conference on High Performance Computing and Communications 2008, HPCC 2008, pp. 897–902 (2008)Google Scholar
  12. 12.
    Nickolls, J., Buck, I., Garland, M., Skadron, K.: Scalable parallel programming with cuda. Queue 6, 40–53 (2008)CrossRefGoogle Scholar
  13. 13.
  14. 14.
    Pospichal, P., Jaros, J., Schwarz, J.: Parallel Genetic Algorithm on the Cuda Architecture. In: Di Chio, C., Cagnoni, S., Cotta, C., Ebner, M., Ekárt, A., Esparcia-Alcazar, A.I., Goh, C.-K., Merelo, J.J., Neri, F., Preuß, M., Togelius, J., Yannakakis, G.N. (eds.) EvoApplicatons 2010. LNCS, vol. 6024, pp. 442–451. Springer, Heidelberg (2010)CrossRefGoogle Scholar
  15. 15.
    Srinivas, M., Patnaik, L.: Genetic algorithms: a survey. Computer 27(6), 17–26 (1994)CrossRefGoogle Scholar
  16. 16.
    Wong, M.L., Wong, T.T.: Parallel hybrid genetic algorithms on consumer-level graphics hardware. In: IEEE Congress on Evolutionary Computation, CEC 2006, pp. 2973–2980 (2006)Google Scholar
  17. 17.
    Wong, M.L., Wong, T.T., Fok, K.L.: Parallel evolutionary algorithms on graphics processing unit. In: The 2005 IEEE Congress on Evolutionary Computation, vol. 3, pp. 2286–2293 (September 2005)Google Scholar
  18. 18.
    Yu, Q., Chen, C., Pan, Z.: Parallel Genetic Algorithms on Programmable Graphics Hardware. In: Wang, L., Chen, K., S. Ong, Y. (eds.) ICNC 2005. LNCS, vol. 3612, pp. 1051–1059. Springer, Heidelberg (2005)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Omar Alejandro Aguilar
    • 1
  • Joel Carlos Huegel
    • 1
  1. 1.Biomechatronics LabTecnologico de Monterrey - Campus GuadalajaraZapopan, Jal.México

Personalised recommendations