Advertisement

A GPU-Enabled Parallel Genetic Algorithm for Path Planning of Robotic Operators

  • Panpan Cai
  • Yiyu CaiEmail author
  • Indhumathi Chandrasekaran
  • Jianmin Zheng
Chapter

Abstract

Genetic algorithm (GA) is a class of global optimization algorithm inspired by the Darwinian biological evolution. It is widely applied in the field of robotic path planning. Parallel GA (PGA) is a subclass of GA which is able to achieve good solutions in a short time. This chapter discusses the utilization of a PGA in determining collision-free path for robotic operators. GPU-style genetic operators are designed to speed up the GA process while improving the quality of solutions. GPU parallelization for a master–slave parallel GA (MSPGA) is implemented by parallelizing the selection, crossover and mutation operators.

Keywords

Genetic Algorithm Parallel GA GPU Master-slave Parallel GA 

Notes

Acknowledgements

The authors would like to express their sincere thanks to those who help this work in one way or another.

References

  1. 1.
    Goldberg, D. E.: Simple genetic algorithms and the minimal, deceptive problem. In: Davis, L. (ed.) Genetic algorithms and simulated annealing, pp. 74–88. Pitman, London (1987)Google Scholar
  2. 2.
    Goldberg, D.E.: Genetic Algorithms in Search, Optimization, and Machine Learning. Addison-wesley Reading, Menlo Park, CA (1989)zbMATHGoogle Scholar
  3. 3.
    Holland, J.H.: Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence. MIT Press, Cambridge, MA (1992). ISBN 0262581116Google Scholar
  4. 4.
    Sanders, J., Kandrot E.: CUDA by Example: An Introduction to General-Purpose GPU Programming. Addison-Wesley Professional (2010). ISBN: 0132180138Google Scholar
  5. 5.
    Holland, J.H.: Genetic algorithms. Sci. Am. 267(1), 66–72 (1992)CrossRefGoogle Scholar
  6. 6.
    Goldberg, D. E., Deb, K.: A comparative analysis of selection schemes used in genetic algorithms. In: Foundations of Genetic Algorithms, vol. 51, 61801–62996 (1991)Google Scholar
  7. 7.
    Miller, B.L., Goldberg, D.E.: Genetic algorithms, selection schemes, and the varying effects of noise. Evol. Comput. 4(2), 113–131 (1996)CrossRefGoogle Scholar
  8. 8.
    Goldberg, D.E., et al.: Messy genetic algorithms: Motivation, analysis, and first results. Complex Syst. 3(5), 493–530 (1989)zbMATHGoogle Scholar
  9. 9.
    Goldberg, D. E., et al.: On the supply of building blocks. In: Proceedings of the Genetic and Evolutionary Computation Conference, Citeseer, pp.336–342 (2001)Google Scholar
  10. 10.
    Nowostawski, M. and Poli R.: Parallel genetic algorithm taxonomy. In: IEEE Third International Conference on Knowledge-Based Intelligent Information Engineering Systems, pp. 88–92 (1999)Google Scholar
  11. 11.
    Ismail, M. A.: Parallel genetic algorithms (PGAs): master slave paradigm approach using MPI. In: IEEE E-Tech 2004, pp. 83–87 (2004)Google Scholar
  12. 12.
    Fujimoto, N., Tsutsui. S.: Parallelizing a Genetic Operator for GPUs. In: 2013 I.E. Congress on Evolutionary Computation (CEC), pp. 1271–1277 (2013)Google Scholar
  13. 13.
    Pospíchal, P., et al. Parallel genetic algorithm on the cuda architecture. In: Applications of Evolutionary Computation, pp. 442–451. Springer, Heidelberg (2010)Google Scholar
  14. 14.
    Feier, M. C., et al.: Solving NP-Complete Problems on the CUDA Architecture Using Genetic Algorithms. In: IEEE 2011, 10th International Symposium on Parallel and Distributed Computing (ISPDC), pp. 278–281 (2011)Google Scholar
  15. 15.
    Jaros, J.: Multi-GPU island-based genetic algorithm for solving the knapsack problem. In: 2012 I.E. Congress on Evolutionary Computation (CEC), pp. 1–8 (2012)Google Scholar
  16. 16.
    Munawar, A., et al.: Advanced genetic algorithm to solve minlp problems over GPU. In: 2011 I.E. Congress on Evolutionary Computation (CEC), pp. 318–325 (2011)Google Scholar
  17. 17.
    Arora, R., et al.: Parallelization of binary and real-coded genetic algorithms on GPU using CUDA. In: 2010 I.E. Congress on Evolutionary Computation (CEC), pp. 1–8 (2010)Google Scholar
  18. 18.
    Oiso, M., et al.: Accelerating steady-state genetic algorithms based on CUDA architecture. In: 2011 I.E. Congress on Evolutionary Computation (CEC), pp. 687–692 (2011)Google Scholar
  19. 19.
    Wang, K., Shen, Z.: A GPU-based parallel genetic algorithm for generating daily activity plans. IEEE Trans. Intell. Transp. Syst. 13(3), 1474–1480 (2012)CrossRefGoogle Scholar
  20. 20.
    NVidia, C.: C programming guide version 3.2. NVIDIA Corporation, Santa Clara, CA (2010)Google Scholar
  21. 21.
    Renders, J.M., Flasse, S.P.: Hybrid methods using genetic algorithms for global optimization. IEEE Trans. Syst. Man. Cybern. B Cybern. 26(2), 243–258 (1996)CrossRefGoogle Scholar
  22. 22.
    Safe, M., et al.: On stopping criteria for genetic algorithms. In: Advances in Artificial Intelligence–SBIA, 405–413 (2004)Google Scholar

Copyright information

© Springer Science+Business Media Singapore 2015

Authors and Affiliations

  • Panpan Cai
    • 1
  • Yiyu Cai
    • 2
    • 3
    Email author
  • Indhumathi Chandrasekaran
    • 1
  • Jianmin Zheng
    • 4
  1. 1.School of Mechanical & Aerospace EngineeringNanyang Technological UniversitySingaporeSingapore
  2. 2.Nanyang Technological UniversitySingaporeSingapore
  3. 3.Institute for Media InnovationNanyang Technological UniversitySingaporeSingapore
  4. 4.School of Computer EngineeringNanyang Technological UniversitySingaporeSingapore

Personalised recommendations