Towards Cost-Effective Bio-inspired Optimization: A Prospective Study on the GPU Architecture

  • Paula Prata
  • Paulo Fazendeiro
  • Pedro Sequeira
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7077)


This paper studies the impact of varying the population’s size and the problem’s dimensionality in a parallel implementation, for an NVIDIA GPU, of a canonical GA. The results show that there is an effective gain in the data parallel model provided by modern GPU’s and enhanced by high level languages such as OpenCL. In the reported experiments it was possible to obtain a speedup higher than 140 thousand times for a population’s size of 262 144 individuals.


GPGPU Parallel Genetic Algorithms OpenCL data parallelism 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Woodward, P., Jayaraj, J., Lin, P.-H., Yew, P.-C.: Moving Scientific Codes to Multicore Microprocessor CPUs. Comput. in Sci. & Engineering 10(6), 16–25 (2008)CrossRefGoogle Scholar
  2. 2.
    Feinbube, F., Troger, P., Polze, A.: Joint Forces: From Multithreaded Programming to GPU Computing. IEEE Software 28(1), 51–57 (2011)CrossRefGoogle Scholar
  3. 3.
    Cantú-Paz, E.: A Survey of Parallel Genetic Algorithms. Calc. Parallels 10 (1998)Google Scholar
  4. 4.
    Zhou, Y., Tan, Y.: GPU-based parallel particle swarm optimization. In: IEEE Congress on Evolutionary Computation, CEC 2009, pp. 1493–1500 (2009)Google Scholar
  5. 5.
    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
  6. 6.
    de Veronese, L., Krohling, R.: Differential evolution algorithm on the GPU with C-CUDA. In: IEEE Congress on Evolutionary Computation, CEC 2010, pp. 1–7 (2010)Google Scholar
  7. 7.
    Coello, C., Van Veldhuizen, D., Lamont, G.: Evolutionary Algorithms for Solving Multi-Objective Problems. Genetic Algorithms and Evolutionary Computation Series, vol. 5. Springer, Heidelberg (2002)CrossRefzbMATHGoogle Scholar
  8. 8.
    Deb, K.: Multi-Objective Optimization Using Evolutionary Algorithms. John Wiley & Sons, New York (2001)zbMATHGoogle Scholar
  9. 9.
    Goldberg, D.: Genetic Algorithms in search, optimization and machine learning. Addison-Wesley (1989)Google Scholar
  10. 10.
    Beasley, D., Bull, D., Martin, R.: An overview of genetic algorithms: Part 2, research topics. University Computing 15(4), 170–181 (1993)Google Scholar
  11. 11.
    Janikow, C., Michalewicz, Z.: An experimental comparison of binary and floating point representations in genetic algorithms. In: Proc. of the Fourth International Conference in Genetic Algorithms, pp. 31–36 (1991)Google Scholar
  12. 12.
    Bäck, T., Fogel, D., Michalewicz, Z.: Handbook of Evolutionary Computation. Institute of Physics Publishing Ltd., Oxford Univ. Press, Bristol, New York (1997)CrossRefzbMATHGoogle Scholar
  13. 13.
    Holland, J.: Adaptation in Natural and Artificial Systems. University of Michigan Press, Ann Arbor (1975)Google Scholar
  14. 14.
    Valente de Oliveira, J.: Semantic constraints for membership function optimization. IEEE Trans. on Systems, Man, and Cybernetics, Part A: Systems and Man 29(1), 128–138 (1999)CrossRefGoogle Scholar
  15. 15.
    Eshelman, L., Schaffer, J.: Real-coded genetic algorithms and interval-schemata, vol. 3, pp. 187–202. Morgan Kaufmann, San Mateo (1993)Google Scholar
  16. 16.
    NVIDIA Corporation: NVIDIA CUDA Programming guide, version 2.3.2 (2009)Google Scholar
  17. 17.
    Buck, I., Foley, T., Horn, D., Sugerman, J., Fatahalian, K., Houston, M., Hanrahan, P.: Brook for GPUs: stream computing on graphics hardware. In: ACM SIGGRAPH, pp. 777–786 (2004)Google Scholar
  18. 18.
    Khronos group: OpenCl – The Open Standard Parallel Computing for Heterogeneous Devices (2010),
  19. 19.
    Munshi, A. (ed.): The OpenCL Specification Version: 1.1, Khronos OpenCL Working Group (2011)Google Scholar
  20. 20.
    NVIDIA OpenCL Best Practices Guide, Version 1.0 (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Paula Prata
    • 1
    • 2
  • Paulo Fazendeiro
    • 1
    • 2
  • Pedro Sequeira
    • 1
  1. 1.Department of InformaticsUniversity of Beira InteriorPortugal
  2. 2.Institute of Telecommunications (IT)University of Beira InteriorPortugal

Personalised recommendations