Parallel Implementation of an Evolutionary Algorithm for Function Minimization on a GPGPU

We describe the parallel implementation of an evolutionary programming algorithm for minimization of nonlinear, continuous, realvalued functions of n variables. The parallel implementation was carried using the GPGPU (General-Purpose Computing on Graphics Processing Units) technique. Evolutionary programming (EP) was selected from the available evolutionary algorithm paradigms because it presents low dependency between its genetic operators. This feature provided a particular advantage to parallelize the mutation and evaluation stages in EP using a master-slave model. The obtained results report a linear speed up with respect to the number of cores in the test platform.

[1]  David L. Levine,et al.  Users guide to the PGAPack parallel genetic algorithm library , 1995 .

[2]  David E. Goldberg,et al.  Predicting Speedups of Ideal Bounding Cases of Parallel Genetic Algorithms , 1997, ICGA.

[3]  Jason Sanders,et al.  CUDA by example: an introduction to general purpose GPU programming , 2010 .

[4]  Lawrence J. Fogel,et al.  Artificial Intelligence through Simulated Evolution , 1966 .

[5]  Reiko Tanese,et al.  Distributed Genetic Algorithms , 1989, ICGA.

[6]  Ismail Musirin,et al.  Assessment of evolutionary programming models for single-objective optimization , 2013, 2013 IEEE 7th International Power Engineering and Optimization Conference (PEOCO).

[7]  Enrique Alba,et al.  Parallelism and evolutionary algorithms , 2002, IEEE Trans. Evol. Comput..

[8]  L. C. Stayton,et al.  On the effectiveness of crossover in simulated evolutionary optimization. , 1994, Bio Systems.

[9]  Leonardo Vanneschi,et al.  Studying the Influence of Communication Topology and Migration on Distributed Genetic Programming , 2001, EuroGP.

[10]  Enrique Alba,et al.  Influence of the Migration Policy in Parallel Distributed GAs with Structured and Panmictic Populations , 2000, Applied Intelligence.

[11]  Xin Yao,et al.  Parallel evolutionary programming , 2004, Proceedings of the 2004 Congress on Evolutionary Computation (IEEE Cat. No.04TH8753).

[12]  David B. Fogel,et al.  Evolutionary Computation: Towards a New Philosophy of Machine Intelligence , 1995 .

[13]  Marco Tomassini,et al.  Experimental Study of Multipopulation Parallel Genetic Programming , 2000, EuroGP.

[14]  Fayez Gebali,et al.  Algorithms and Parallel Computing: Gebali/Algorithms and Parallel Computing , 2011 .

[15]  Fayez Gebali,et al.  Algorithms and Parallel Computing , 2011 .