Parallel implementation of genetic algorithm for searching optimal parameters of artificial neural networks

Genetic algorithm is a population-based evolutionary optimization approach, and this has been used to train artificial neural networks successfully. When a large number of individuals make up the population, however, the running time of the algorithm often becomes very long. Parallel computation is a technique that can potentially be used to address this issue. This research investigates the adoption of parallel genetic algorithm for searching optimal parameters of artificial neural networks (multilayer perceptrons). Paralellization is conducted using Message Passing Interface, where sub-populations (and their fitness values) are exchanged between processors while selection, crossover, and mutation processes, which are necessary to generate new sub-populations, are performed independently between processors. Experiments of this research show that parallelization has indeed reduced the running time of genetic algorithm. The proposed method produces an average running time of 2.066, 2.656, and 47.788 seconds/generation for the game of Tic-Tac-Toe, car evaluation, and game of chess (King-Rook vs. King-Pawn) datasets, respectively. For comparison, the average running time of the serial version of the algorithm is 14.397, 12.961, and 350.963 seconds/generation for the same three datasets, respectively.

[1]  Kai Wang,et al.  A GPU-Based Parallel Genetic Algorithm for Generating Daily Activity Plans , 2012, IEEE Transactions on Intelligent Transportation Systems.

[2]  Mustafa Karakaplan,et al.  A parallel and non-parallel genetic algorithm for deconvolution of NMR spectra peaks , 2013 .

[3]  Jens Lienig,et al.  A parallel genetic algorithm for performance-driven VLSI routing , 1997, IEEE Trans. Evol. Comput..

[4]  Pierre Kuonen,et al.  Parallel Island-Based Genetic Algorithm for Radio Network Design , 1997, J. Parallel Distributed Comput..

[5]  Javad Haddadnia,et al.  Solving flow shop scheduling problem using a parallel genetic algorithm , 2012 .

[6]  Retantyo Wardoyo,et al.  Penentuan Arsitektur Jaringan Syaraf Tiruan Backpropagation (Bobot Awal dan Bias Awal) Menggunakan Algoritma Genetika , 2015 .

[7]  Ruben Usamentiaga,et al.  A Parallel Genetic Algorithm for Configuring Defect Detection Methods , 2015, IEEE Latin America Transactions.

[8]  R. Hilbert,et al.  Multi-objective shape optimization of a heat exchanger using parallel genetic algorithms , 2006 .

[9]  Vincent Roberge,et al.  Strategies to Accelerate Harmonic Minimization in Multilevel Inverters Using a Parallel Genetic Algorithm on Graphical Processing Unit , 2014, IEEE Transactions on Power Electronics.

[10]  Ruben Usamentiaga,et al.  A Parallel Genetic Algorithm for Optimizing an Industrial Inspection System , 2013, IEEE Latin America Transactions.

[11]  David J. Evans,et al.  A parallel genetic algorithm for cell image segmentation , 2001, Electron. Notes Theor. Comput. Sci..

[12]  Yoshikazu Fukuyama,et al.  A parallel genetic algorithm for service restoration in electric power distribution systems , 1995, Proceedings of 1995 IEEE International Conference on Fuzzy Systems..

[13]  Zhou Guangwei,et al.  Optimization of adaptive transit signal priority using parallel genetic algorithm , 2007 .

[14]  Nenzi Wang A parallel computing application of the genetic algorithm for lubrication optimization , 2005 .

[15]  Hong-Tzer Yang,et al.  A parallel genetic algorithm approach to solving the unit commitment problem: implementation on the transputer networks , 1997 .