Skip to main content

Advertisement

Log in

EASEA: specification and execution of evolutionary algorithms on GPGPU

  • Focus
  • Published:
Soft Computing Aims and scope Submit manuscript

Abstract

EASEA is a framework designed to help non-expert programmers to optimize their problems by evolutionary computation. It allows to generate code targeted for standard CPU architectures, GPGPU-equipped machines as well as distributed memory clusters. In this paper, EASEA is presented by its underlying algorithms and by some example problems. Achievable speedups are also shown onto different NVIDIA GPGPUs cards for different optimization algorithm families.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15

Similar content being viewed by others

Notes

  1. http://www.lsiit.u-strasbg.fr/easea

References

  • Ackley D, Littman M (1992) Interactions between learning and evolution. In: Langton CG, Taylor JDFC, Rasmussen S (eds) Artificial life II, vol 10. Addison-Wesley, pp 487–509

  • Alba E, Tomassini M (2002) Parallelism and evolutionary algorithms. IEEE Trans Evol Comput 6(5):443–462

    Article  Google Scholar 

  • Brameier M, Banzhaf W (2007) Linear genetic programming. No. XVI in genetic and evolutionary computation. Springer, Berlin

  • Chitty DM (2007) A data parallel approach to genetic programming using programmable graphics hardware. In: Proceedings of the 9th annual genetic and evolutionary computation conference (GECCO). ACM, New York, pp 1566–1573

  • Collet P, Schoenauer M (2003) Guide: unifying evolutionary engines through a graphical user interface. In: Liardet P, Collet P, Fonlupt C, Lutton E, Schoenauer M (eds) Artificial evolution. Lecture notes in computer science, vol 2936. Springer, Berlin, pp 203–215

  • Collet P, Lutton E, Schoenauer M, Louchet J (2000) Take it EASEA. In: Proceedings of the 6th international conference on parallel problem solving from nature. Springer, London, pp 891–901

  • De Jong K (2008) Evolutionary computation: a unified approach. In: Proceedings of the 10th annual genetic and evolutionary computation conference (GECCO). ACM, New York, pp 2245–2258

  • Deb K, Agrawal S, Pratap A, Meyarivan T (2002) A fast and elitist multi-objective genetic algorithm: NSGA-II. IEEE Trans Evol Comput 6(2):182–197

    Article  Google Scholar 

  • Fok KL, Wong TT, Wong ML (2007) Evolutionary computing on consumer graphics hardware. IEEE Intell Syst 22(2):69–78

    Article  Google Scholar 

  • Gagné C, Schoenauer M, Parizeau M, Tomassini M (2006) Genetic programming, validation sets, and parsimony pressure. In: Collet P, Tomassini M, Ebner M, Gustafson S, Ekárt A (eds) Proceedings of the 9th European conference on genetic programming. Lecture notes in computer science, vol 3905. Springer, Budapest, pp 109–120

  • Harding S, Banzhaf W (2007) Fast genetic programming on GPUs. In: Ebner M, O’Neill M, Ekárt A, Vanneschi L, Esparcia-Alcázar A (eds) 10th European conference on genetic programming (EuroGP). Lecture notes in computer science, vol 4445. Springer, Berlin, pp 90–101

  • Holladay K, Robbins K, Ronne JV (2007) FifthTM A stack based GP language for vector processing. In: Ebner M, O’Neill M, Ekárt A, Vanneschi L, Esparcia-Alcázar A (eds) 10th European conference on genetic programming (EuroGP). Lecture notes in computer science, vol 4445. Springer, Berlin, pp 102–113

  • Koza JR (1992) Genetic programming: on the programming of computers by means of natural selection (complex adaptive systems). MIT Press, Cambridge

    Google Scholar 

  • Krüger F, Maitre O, Jiménez S, Baumes L, Collet P (2010) Speedups between ×70 and ×120 for a generic local search (memetic) algorithm on a single GPGPU chip. Appl Evol Comput 501–511

  • Langdon WB (2008) A fast high quality pseudo random number generator for graphics processing units. In: Wang J (ed) IEEE World Congress on computational intelligence, Hong Kong, pp 459–465

  • Langdon WB, Banzhaf W (2008) A SIMD Interpreter for genetic programming on GPU graphics cards. In: O’Neill M, Vanneschi L, Gustafson S, Esparcia Alcazar AI, De Falco I, Della Cioppa A, Tarantino E (eds) 11th European conference on genetic programming (EuroGP), Lecture notes in computer science, vol 4971. Springer, Berlin, pp 73–85

  • Li JM, Wang XJ, He RS, Chi ZX (2007) An efficient fine-grained parallel genetic algorithm based on GPU-accelerated. In: IFIP International conference on network and parallel computing workshops (NPC). IEEE Computer Society, Los Alamitos, pp 855–862

  • Maitre O, Baumes LA, Lachiche N, Corma A, Collet P (2009a) Coarse grain parallelization of evolutionary algorithms on GPGPU cards with EASEA. In: Rothlauf F (ed) Proceedings of the 11th annual conference on genetic and evolutionary computation (GECCO). ACM, New York, pp 1403–1410

  • Maitre O, Lachiche N, Clauss P, Baumes L, Corma A, Collet P (2009b) Efficient parallel implementation of evolutionary algorithms on GPGPU cards. In: Sips H, Epema D, Lin HX (eds) Euro-Par 2009 parallel processing. Lecture notes in computer science, Springer, Berlin, pp 974–985

  • Maitre O, Lachiche N, Collet P (2010a) Fast evaluation of GP trees on GPGPU by optimizing hardware scheduling. In: Esparcia-Alcázar A, Ekárt A, Silva S, Dignum S, Uyar A (eds) Genetic programming. Lecture notes in computer science, vol 6021. Springer, Heidelberg, pp 301–312

  • Maitre O, Querry S, Lachiche N, Collet P (2010b) EASEA parallelization of tree-based genetic programming. In: IEEE congress on evolutionary computation (CEC), pp 1–8

  • Matsumoto M, Nishimura T (1998) Mersenne twister: a 623-dimensionally equidistributed uniform pseudo-random number generator. ACM Trans Model Comput Simulat 8(1):3–30

    Article  MATH  Google Scholar 

  • Munawar A, Wahib M, Munetomo M, Akama K (2009) Hybrid of genetic algorithm and local search to solve MAX-SAT problem using nVidia CUDA framework. Genet Program Evol Mach 10(4):391–415

    Article  Google Scholar 

  • NVIDIA (2008) Nvidia cuda programming guide 2.0

  • Ong YS, Keane AJ (2004) Meta-Lamarckian learning in memetic algorithms.IEEE Trans Evol Comput 8(2):99–110

    Article  Google Scholar 

  • Robilliard D, Marion-Poty V, Fonlupt C (2008) Population parallel GP on the G80 GPU. In: O’Neill M, Vanneschi L, Gustafson S, Esparcia Alcázar A, De Falco I, Della Cioppa A, Tarantino E (eds) 11th European conference on genetic programming (EuroGP), vol 4971. Springer, Berlin, pp 98–109

  • Robilliard D, Marion V, Fonlupt C (2009) High performance genetic programming on GPU. In: Workshop on bio-inspired algorithms for distributed systems. ACM, New York, pp 85–94

  • Shang YW, Qiu YH (2006) A note on the extended Rosenbrock function. Evol Comput 14(1):119–126

    Article  Google Scholar 

  • Sharma D, Collet P (2010a) An archived-based stochastic ranking evolutionary algorithm (ASREA) for multi-objective optimization. In: GECCO ’10: Proceedings of the 12th annual conference on genetic and evolutionary computation. ACM, New York, pp 479–486

  • Sharma D, Collet P (2010b) Gpgpu-compatible archive based stochastic ranking evolutionary algorithm (g-asrea) for multi-objective optimization. In: Schaefer R, Cotta C, Kolodziej J, Rudolph G (eds) PPSN (2). Lecture notes in computer science, vol 6239. Springer, Berlin, pp 111–120

  • Spector L, Robinson A (2002) Genetic programming and autoconstructive evolution with the push programming language. Genet Program Evol Mach 3(1):7–40

    Article  MATH  Google Scholar 

  • Wong ML (2009) Parallel multi-objective evolutionary algorithms on graphics processing units. In: GECCO ’09: proceedings of the 11th annual conference companion on genetic and evolutionary computation conference. ACM, New York, pp 2515–2522

  • Wong ML, Wong TT (2006) Parallel hybrid genetic algorithms on consumer-level graphics hardware. In: IEEE congress on evolutionary computation (CEC). pp 2973–2980

  • Yu Q, Chen C, Pan Z (2005) Parallel genetic algorithms on programmable graphics hardware. In: First international conference on natural computation (ICNC). LNCS, vol 3612. Springer, Heidelberg, pp 1051–1059

  • Zitzler E, Laumanns M, Thiele L (2002) SPEA2: improving the strength pareto evolutionary algorithm for multiobjective optimization. In: Giannakoglou K et al (eds) Evolutionary methods for design, optimisation and control with application to industrial problems (EUROGEN 2001). International Center for Numerical Methods in Engineering (CIMNE), pp 95–100

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ogier Maitre.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Maitre, O., Krüger, F., Querry, S. et al. EASEA: specification and execution of evolutionary algorithms on GPGPU. Soft Comput 16, 261–279 (2012). https://doi.org/10.1007/s00500-011-0718-z

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s00500-011-0718-z

Keywords

Navigation