Collaborative Parallel Hybrid Metaheuristics on Graphics Processing Unit

Metaheuristics are nondeterministic optimization algorithms used to solve complex problems for which classic approaches are unsuitable. Despite their effectiveness, metaheuristics require considerable computational power and cannot easily be used in time critical applications. Fortunately, those algorithms are intrinsically parallel and have been implemented on shared memory systems and more recently on graphics processing units (GPUs). In this paper, we present highly efficient parallel implementations of the particle swarm optimization (PSO), the genetic algorithm (GA) and the simulated annealing (SA) algorithm on GPU using CUDA. Our approach exploits the parallelism at the solution level, follows an island model and allows for speedup up to 346× for different benchmark functions. Most importantly, we also present a strategy that uses the generalized island model to integrate multiple metaheuristics into a parallel hybrid solution adapted to the GPU. Our proposed solution uses OpenMP to heavily exploit the concurrent kernel execution feature of recent NVIDIA GPUs, allowing for the parallel execution of the different metaheuristics in an asynchronous manner. Asynchronous hybrid metaheuristics has been developed for multicore CPU, but never for GPU. The speedup offered by the GPU is far superior and key to the optimization of solutions to complex engineering problems.

[1]  Vincent Roberge,et al.  Parallel Particle Swarm Optimization on Graphical Processing Unit for Pose Estimation , 2012 .

[2]  Dario Izzo,et al.  The Generalized Island Model , 2012, Parallel Architectures and Bioinspired Algorithms.

[3]  El-Ghazali Talbi,et al.  Grid computing for parallel bioinspired algorithms , 2006, J. Parallel Distributed Comput..

[4]  Hui Li,et al.  Prediction of Protein Structures Using GPU Based Simulated Annealing , 2012, 2012 11th International Conference on Machine Learning and Applications.

[5]  Nima Safaei,et al.  Multi-objective Simulated Annealing for a Maintenance Workforce Scheduling Problem: A case Study , 2008 .

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

[7]  El-Ghazali Talbi,et al.  Parallel hybrid evolutionary algorithms on GPU , 2010, IEEE Congress on Evolutionary Computation.

[8]  Vincent Roberge,et al.  Comparison of Parallel Particle Swarm Optimizers for Graphical Processing Units and Multicore Processors , 2013, Int. J. Comput. Intell. Appl..

[9]  Roberto Montemanni,et al.  A metaheuristic framework for stochastic combinatorial optimization problems based on GPGPU with a case study on the probabilistic traveling salesman problem with deadlines , 2013, J. Parallel Distributed Comput..

[10]  Dalila Megherbi,et al.  Implementation of a parallel Genetic Algorithm on a cluster of workstations: Traveling Salesman Problem, a case study , 2001, Future Gener. Comput. Syst..

[11]  Changhe Li,et al.  An Island Based Hybrid Evolutionary Algorithm for Optimization , 2008, SEAL.

[12]  Maciej Zbierski A Simulated Annealing Algorithm for GPU Clusters , 2011, PPAM.

[13]  James Kennedy,et al.  Particle swarm optimization , 2002, Proceedings of ICNN'95 - International Conference on Neural Networks.

[14]  Mingyue Ding,et al.  Route Planning for Unmanned Aerial Vehicle (UAV) on the Sea Using Hybrid Differential Evolution and Quantum-Behaved Particle Swarm Optimization , 2013, IEEE Transactions on Systems, Man, and Cybernetics: Systems.

[15]  El-Ghazali Talbi,et al.  Metaheuristics - From Design to Implementation , 2009 .

[16]  David H. Wolpert,et al.  No free lunch theorems for optimization , 1997, IEEE Trans. Evol. Comput..

[17]  R. Eberhart,et al.  Particle Swarm Optimization-Neural Networks, 1995. Proceedings., IEEE International Conference on , 2004 .

[18]  C. D. Gelatt,et al.  Optimization by Simulated Annealing , 1983, Science.

[19]  Sanghamitra Roy,et al.  Optimizing simulated annealing on GPU: A case study with IC floorplanning , 2011, 2011 12th International Symposium on Quality Electronic Design.

[20]  Kazuhiro Ohkura,et al.  Accelerating steady-state genetic algorithms based on CUDA architecture , 2011, 2011 IEEE Congress of Evolutionary Computation (CEC).

[21]  M. Tarbouchi,et al.  Efficient parallel Particle Swarm Optimizers on GPU for real-time harmonic minimization in multilevel inverters , 2012, IECON 2012 - 38th Annual Conference on IEEE Industrial Electronics Society.

[22]  Hlynur Stefansson,et al.  Meta-Heuristics in Multi-Core Environments , 2011 .

[23]  John H. Holland,et al.  Adaptation in Natural and Artificial Systems: An Introductory Analysis with Applications to Biology, Control, and Artificial Intelligence , 1992 .

[24]  M. Carmen Garrido,et al.  A Hybrid System of Nature Inspired Metaheuristics , 2007, NICSO.