GPU Parallel Computation in Bioinspired Algorithms: A Review

As bioinspired methods usually need a high amount of computational resources, parallelization is an interesting alternative in order to decrease the execution time and to provide accurate results. In this sense, recently there has been a growing interest in developing parallel algorithms using graphic processing units (GPU) also referred as GPU computation. Advances in the video gaming industry have led to the production of low-cost, high-performance graphics processing units that possess more memory bandwidth and computational capability than central processing units (CPUs). As GPUs are available in personal computers, and they are easy to use and manage through several GPU programming languages, graphics engines are being adopted widely in scientific computing applications, particularly in the fields of computational biology and bioinformatics. This chapter reviews the use of GPUs to solve scientific problems, giving an overview of current software systems.

[1]  Marco Dorigo,et al.  The ant colony optimization meta-heuristic , 1999 .

[2]  Sanyou Zeng,et al.  Advances in Computation and Intelligence, Second International Symposium, ISICA 2007, Wuhan, China, September 21-23, 2007, Proceedings , 2007, ISICA.

[3]  Zhongwen Luo,et al.  Artificial neural network computation on graphic process unit , 2005, Proceedings. 2005 IEEE International Joint Conference on Neural Networks, 2005..

[4]  Keechul Jung,et al.  GPU implementation of neural networks , 2004, Pattern Recognit..

[5]  Alberto Ochoa,et al.  A Parallel Island Model for Estimation of Distribution Algorithms , 2006, Towards a New Evolutionary Computation.

[6]  Francisco Javier Díaz Pernas,et al.  Multi-scale neural texture classification using the GPU as a stream processing engine , 2011, Machine Vision and Applications.

[7]  Celso C. Ribeiro,et al.  Parallel Greedy Randomized Adaptive Search Procedures , 2005 .

[8]  Linlin Liu,et al.  A Parallel Immune Algorithm Based on Fine-Grained Model with GPU-Acceleration , 2009, 2009 Fourth International Conference on Innovative Computing, Information and Control (ICICIC).

[9]  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).

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

[11]  Jirí Jaros,et al.  Parallel Genetic Algorithm on the CUDA Architecture , 2010, EvoApplications.

[12]  Shigeyoshi Tsutsui,et al.  ACO with tabu search on a GPU for solving QAPs using move-cost adjusted thread assignment , 2011, GECCO '11.

[13]  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.

[14]  Michel Gendreau,et al.  Toward a Taxonomy of Parallel Tabu Search Heuristics , 1997, INFORMS J. Comput..

[15]  Sifa Zhang,et al.  Implementation of Parallel Genetic Algorithm Based on CUDA , 2009, ISICA.

[16]  Gnter Rudolph,et al.  Parallel Approaches to Stochastic Global Optimization , 1992 .

[17]  Julian F. Miller,et al.  Genetic and Evolutionary Computation — GECCO 2003 , 2003, Lecture Notes in Computer Science.

[18]  Enrique Alba,et al.  Cellular Genetic Algorithm on Graphic Processing Units , 2010, NICSO.

[19]  Bart Selman,et al.  Domain-Independent Extensions to GSAT : Solving Large StructuredSatis ability , 1993 .

[20]  Francisco Luna,et al.  Advances in parallel heterogeneous genetic algorithms for continuous optimization , 2004 .

[21]  Zhe Fan,et al.  [IEEE ACM/IEEE SC2004 Conference - Pittsburgh, PA, USA (06-12 Nov. 2004)] Proceedings of the ACM/IEEE SC2004 Conference - GPU Cluster for High Performance Computing , 2004 .

[22]  Francisco Javier Díaz Pernas,et al.  Fuzzy ART Neural Network Parallel Computing on the GPU , 2007, IWANN.

[23]  P. Pospichal GPU-based Acceleration of the Genetic Algorithm , 2009 .

[24]  Arie E. Kaufman,et al.  GPU Cluster for High Performance Computing , 2004, Proceedings of the ACM/IEEE SC2004 Conference.

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

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

[27]  Enrique Alba,et al.  Parallel Metaheuristics: A New Class of Algorithms , 2005 .

[28]  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).

[29]  El-Ghazali Talbi,et al.  GPU-based island model for evolutionary algorithms , 2010, GECCO '10.

[30]  Vikram S. Adve,et al.  The LLVM Compiler Framework and Infrastructure Tutorial , 2004, LCPC.

[31]  Petr Pospichal,et al.  Parallel Genetic Algorithm Solving 0/1 Knapsack Problem Running on the GPU , 2011 .

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

[33]  Yew-Soon Ong,et al.  Advances in Natural Computation, First International Conference, ICNC 2005, Changsha, China, August 27-29, 2005, Proceedings, Part I , 2005, ICNC.

[34]  Erick Cantú-Paz,et al.  A Survey of Parallel Genetic Algorithms , 2000 .

[35]  Pedro Larrañaga,et al.  Towards a New Evolutionary Computation - Advances in the Estimation of Distribution Algorithms , 2006, Towards a New Evolutionary Computation.

[36]  Enrique Alba,et al.  Parallel Hybrid Metaheuristics , 2005 .

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

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

[39]  Alberto Prieto,et al.  Computational and ambient intelligence , 2009, Neurocomputing.

[40]  Renaud Keriven,et al.  Spiking Neurons on GPUs , 2006, International Conference on Computational Science.

[41]  Mark Oskin,et al.  Using modern graphics architectures for general-purpose computing: a framework and analysis , 2002, 35th Annual IEEE/ACM International Symposium on Microarchitecture, 2002. (MICRO-35). Proceedings..

[42]  Belén Melián-Batista,et al.  Parallelization of the scatter search for the p-median problem , 2003, Parallel Comput..

[43]  Belén Melián-Batista,et al.  The Parallel Variable Neighborhood Search for the p-Median Problem , 2002, J. Heuristics.

[44]  Griffin Caprio,et al.  Parallel Metaheuristics , 2008, IEEE Distributed Systems Online.

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

[46]  Enrique Alba,et al.  MOCell: A cellular genetic algorithm for multiobjective optimization , 2009, Int. J. Intell. Syst..

[47]  Germán Terrazas,et al.  Nature Inspired Cooperative Strategies for Optimization, NICSO 2010, May 12-14, 2010, Granada, Spain , 2012, NISCO.

[48]  Sebastián Lozano,et al.  Metaheuristic optimization frameworks: a survey and benchmarking , 2011, Soft Computing.

[49]  Fred W. Glover,et al.  Tabu Search , 1997, Handbook of Heuristics.

[50]  Daniel Merkle,et al.  Parallel Ant Colony Algorithms , 2005 .

[51]  Pat Hanrahan,et al.  Brook for GPUs: stream computing on graphics hardware , 2004, SIGGRAPH 2004.

[52]  Asim Munawar,et al.  Hybrid of genetic algorithm and local search to solve MAX-SAT problem using nVidia CUDA framework , 2009, Genetic Programming and Evolvable Machines.

[53]  Tomoyuki Hiroyasu,et al.  Parallel simulated annealing with adaptive temperature determined by genetic algorithm , 2002, IEEE International Conference on Systems, Man and Cybernetics.

[54]  Stephen Berard,et al.  Implications of Historical Trends in the Electrical Efficiency of Computing , 2011, IEEE Annals of the History of Computing.