Accelerating Genetic Programming through Graphics Processing Units.

Graphics Processing Units (GPUs) are in the process of becoming a major source of computational power for numerical applications. Originally designed for application of time-consuming graphics operations, GPUs are stream processors that implement the SIMD paradigm. The true degree of parallelism of GPUs is often hidden from the user, making programming even more flexible and convenient. In this chapter we survey Genetic Programming methods currently ported

[1]  Nicolas Lachiche,et al.  Coarse grain parallelization of evolutionary algorithms on GPGPU cards with EASEA , 2009, GECCO.

[2]  Wolfgang Banzhaf,et al.  Fast Genetic Programming on GPUs , 2007, EuroGP.

[3]  John R. Koza,et al.  A Parallel Implementation of Genetic Programming that Achieves Super-Linear Performance , 1998, Inf. Sci..

[4]  Wolfgang Banzhaf,et al.  Accelerating evolutionary computation with graphics processing units , 2009, GECCO '09.

[5]  Zhong-Xian Chi,et al.  An Efficient Fine-grained Parallel Genetic Algorithm Based on GPU-Accelerated , 2007, 2007 IFIP International Conference on Network and Parallel Computing Workshops (NPC 2007).

[6]  Matt Pharr,et al.  Gpu gems 2: programming techniques for high-performance graphics and general-purpose computation , 2005 .

[7]  Tien-Tsin Wong,et al.  Parallel Hybrid Genetic Algorithms on Consumer-Level Graphics Hardware , 2006, 2006 IEEE International Conference on Evolutionary Computation.

[8]  Hui Chen,et al.  Belief Propagation Implementation Using CUDA on an NVIDIA GTX 280 , 2009, Australasian Conference on Artificial Intelligence.

[9]  Simon Harding,et al.  Evolution of image filters on graphics processor units using Cartesian Genetic Programming , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[10]  Nick Baker,et al.  Xbox 360 System Architecture , 2006, IEEE Micro.

[11]  John R. Koza,et al.  Building a Parallel Computer System for $18, 000 that Performs a Half Peta-Flop per Day , 1999, GECCO.

[12]  W. Daniel Hillis,et al.  Co-evolving parasites improve simulated evolution as an optimization procedure , 1990 .

[13]  W. Banzhaf,et al.  Genetic Programming of an Algorithmic Chemistry , 2005 .

[14]  L. Darrell Whitley,et al.  Cellular Genetic Algorithms , 1993, ICGA.

[15]  David Tarditi,et al.  Accelerator: using data parallelism to program GPUs for general-purpose uses , 2006, ASPLOS XII.

[16]  Wolfgang Banzhaf,et al.  Genetic Programming: An Introduction , 1997 .

[17]  David Atienza,et al.  A parallel evolutionary algorithm to optimize dynamic memory managers in embedded systems , 2010, Parallel Comput..

[18]  Giandomenico Spezzano,et al.  A scalable cellular implementation of parallel genetic programming , 2003, IEEE Trans. Evol. Comput..

[19]  Tien-Tsin Wong,et al.  Implementation of parallel genetic algorithms on graphics processing units , 2009 .

[20]  Tien-Tsin Wong,et al.  Parallel evolutionary algorithms on graphics processing unit , 2005, 2005 IEEE Congress on Evolutionary Computation.

[21]  Zhigeng Pan,et al.  Parallel Genetic Algorithms on Programmable Graphics Hardware , 2005, ICNC.

[22]  William B. Langdon A CUDA SIMT Interpreter for Genetic Programming , 2009 .

[23]  Man Leung Wong,et al.  Parallel multi-objective evolutionary algorithms on graphics processing units , 2009, GECCO '09.

[24]  Shigeyoshi Tsutsui,et al.  Solving quadratic assignment problems by genetic algorithms with GPU computation: a case study , 2009, GECCO '09.

[25]  Marc Snir,et al.  Automatic tuning matrix multiplication performance on graphics hardware , 2005, 14th International Conference on Parallel Architectures and Compilation Techniques (PACT'05).

[26]  Cyril Fonlupt,et al.  Genetic programming on graphics processing units , 2009, Genetic Programming and Evolvable Machines.

[27]  Stan Openshaw,et al.  Some Geographical Applications of Genetic Programming on the Cray T3D Supercomputer , 1996, UK Parallel.

[28]  William B. Langdon,et al.  Genetic Programming for Mining DNA Chip Data from Cancer Patients , 2004, Genetic Programming and Evolvable Machines.

[29]  G. Robertson,et al.  A Tale of Two Classifier Systems , 2005, Machine Learning.

[30]  William B. Langdon,et al.  A fast high quality pseudo random number generator for nVidia CUDA , 2009, GECCO '09.

[31]  Peter Martin,et al.  A Hardware Implementation of a Genetic Programming System Using FPGAs and Handel-C , 2001, Genetic Programming and Evolvable Machines.

[32]  Riccardo Poli,et al.  Genetic Programming An Introductory Tutorial and a Survey of Techniques and Applications , 2011 .

[33]  Giandomenico Spezzano,et al.  Ensemble Techniques for Parallel Genetic Programming Based Classifiers , 2003, EuroGP.

[34]  Soha Hassoun,et al.  Evolving soft robotic locomotion in PhysX , 2009, GECCO '09.

[35]  Cyril Fonlupt,et al.  Population Parallel GP on the G80 GPU , 2008, EuroGP.

[36]  Giandomenico Spezzano,et al.  A Jxta Based Asynchronous Peer-to-Peer Implementation of Genetic Programming , 2006, J. Softw..

[37]  Thomas E. Potok,et al.  Parallel latent semantic analysis using a graphics processing unit , 2009, GECCO '09.

[38]  Wolfgang Banzhaf,et al.  Genetic programming on GPUs for image processing , 2008, Int. J. High Perform. Syst. Archit..

[39]  Cyril Fonlupt,et al.  High performance genetic programming on GPU , 2009, BADS '09.

[40]  Hugues Juill Parallel Genetic Programming on Fine-Grained SIMD Architectures , 2001 .

[41]  Lukás Sekanina,et al.  Hardware Accelerators for Cartesian Genetic Programming , 2008, EuroGP.

[42]  Darren M. Chitty,et al.  A data parallel approach to genetic programming using programmable graphics hardware , 2007, GECCO '07.

[43]  George D. Magoulas,et al.  Strategies to minimise the total run time of cyclic graph based genetic programming with GPUs , 2009, GECCO '09.

[44]  William B. Langdon,et al.  GP on SPMD parallel graphics hardware for mega Bioinformatics data mining , 2008, Soft Comput..

[45]  Riccardo Poli,et al.  Smooth Uniform Crossover with Smooth Point Mutation in Genetic Programming: A Preliminary Study , 1999, EuroGP.

[46]  Weihang Zhu,et al.  Multi-walk Parallel Pattern Search Approach on a GPU Computing Platform , 2009, ICCS.

[47]  S.E. Eklund,et al.  Time series forecasting using massively parallel genetic programming , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[48]  Mark J. Harris Mapping computational concepts to GPUs , 2005, SIGGRAPH Courses.

[49]  Marco Tomassini,et al.  Parallel genetic programming: an application to trading models evolution , 1996 .

[50]  William B. Langdon,et al.  Global Distributed Evolution of L-Systems Fractals , 2004, EuroGP.

[51]  Riccardo Poli,et al.  Foundations of Genetic Programming , 1999, Springer Berlin Heidelberg.

[52]  William B. Langdon Evolving GeneChip correlation predictors on parallel graphics hardware , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[53]  Alexander Mendiburu,et al.  Porting Estimation of Distribution Algorithms to the Cell Broadband Engine , 2010, Parallel Comput..

[54]  Wolfgang Banzhaf,et al.  Evolving Chess Playing Programs , 2002, GECCO.

[55]  Daniel Mestre,et al.  GPU Accelerated Computation and Visualization of Hexagonal Cellular Automata , 2008, ACRI.

[56]  Claudia Di Napoli,et al.  A chemical metaphor to model service selection for composition of services , 2009 .

[57]  Alexander Mendiburu,et al.  Evaluating the cell broadband engine as a platform to run estimation of distribution algorithms , 2009, GECCO '09.

[58]  Tien-Tsin Wong,et al.  Parallel Evolutionary Algorithms on Consumer-Level Graphics Processing Unit , 2006, Parallel Evolutionary Computations.

[59]  Julian Francis Miller,et al.  Cartesian genetic programming , 2000, GECCO '10.

[60]  Wolfgang Banzhaf,et al.  Distributed genetic programming on GPUs using CUDA , 2011 .

[61]  William B. Langdon,et al.  A Many Threaded CUDA Interpreter for Genetic Programming , 2010, EuroGP.

[62]  William B. Langdon,et al.  A SIMD Interpreter for Genetic Programming on GPU Graphics Cards , 2007, EuroGP.

[63]  Wu-chun Feng,et al.  The Bladed Beowulf: a cost-effective alternative to traditional Beowulfs , 2002, Proceedings. IEEE International Conference on Cluster Computing.

[64]  Weihang Zhu,et al.  A study of parallel evolution strategy: pattern search on a GPU computing platform , 2009, GEC '09.

[65]  Leonardo Vanneschi,et al.  An Empirical Study of Multipopulation Genetic Programming , 2003, Genetic Programming and Evolvable Machines.

[66]  William R. Mark,et al.  Cg: a system for programming graphics hardware in a C-like language , 2003, ACM Trans. Graph..

[67]  P. Hall,et al.  An expression signature for p53 status in human breast cancer predicts mutation status, transcriptional effects, and patient survival. , 2005, Proceedings of the National Academy of Sciences of the United States of America.

[68]  F. H. Bennett,et al.  Rapidly Reconfigurable Field-Programmable Gate Arrays for Accelerating Fitness Evaluation in Genetic Programming , 1997 .

[69]  Wolfgang Banzhaf,et al.  Fast Genetic Programming and Artificial Developmental Systems on GPUs , 2007, 21st International Symposium on High Performance Computing Systems and Applications (HPCS'07).

[70]  Wolfgang Banzhaf,et al.  Deployment of CPU and GPU-based genetic programming on heterogeneous devices , 2009, GECCO '09.

[71]  Riccardo Poli,et al.  A Field Guide to Genetic Programming , 2008 .

[72]  R. Poli Genetic programming for image analysis , 1996 .

[73]  Tien-Tsin Wong,et al.  Evolutionary Computing on Consumer Graphics Hardware , 2007, IEEE Intelligent Systems.

[74]  Wolfgang Banzhaf,et al.  Decreasing the Number of Evaluations in Evolutionary Algorithms by Using a Meta-model of the Fitness Function , 2003, EuroGP.

[75]  Zhongwen Luo,et al.  Cellular Genetic Algorithms and Local Search for 3-SAT problem on Graphic Hardware , 2006, 2006 IEEE International Conference on Evolutionary Computation.

[76]  Wolfgang Banzhaf,et al.  Linear genetic programming GPGPU on Microsoft’s Xbox 360 , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[77]  William B. Langdon,et al.  Java based Distributed Genetic Programming on the Internet , 1999, GECCO.