Unreliable Heterogeneous Workers in a Pool-Based Evolutionary Algorithm

In this paper the effect of node unavailability in algorithms using EvoSpace, a pool-based evolutionary algorithm, is assessed. EvoSpace is a framework for developing evolutionary algorithms (EAs) using heterogeneous and unreliable resources. It is based on Linda’s tuple space coordination model. The core elements of EvoSpace are a central repository for the evolving population and remote clients, here called EvoWorkers, which pull random samples of the population to perform on them the basic evolutionary processes (selection, variation and survival), once the work is done, the modified sample is pushed back to the central population. To address the problem of unreliable EvoWorkers, EvoSpace uses a simple re-insertion algorithm using copies of samples stored in a global queue which also prevents the starvation of the population pool. Using a benchmark problem from the P-Peaks problem generator we have compared two approaches: (i) the re-insertion of previous individuals at the cost of keeping copies of each sample, and a common approach of other pool based EAs, (ii) inserting randomly generated individuals. We found that EvoSpace is fault tolerant to highly unreliable resources and also that the re-insertion algorithm is only needed when the population is near the point of starvation.

[1]  Kalyan Veeramachaneni,et al.  Flex-GP: Genetic Programming on the Cloud , 2012, EvoApplications.

[2]  Una-May O'Reilly,et al.  A Library to Run Evolutionary Algorithms in the Cloud Using MapReduce , 2012, EvoApplications.

[3]  Kenneth A. De Jong,et al.  Using Problem Generators to Explore the Effects of Epistasis , 1997, ICGA.

[4]  David Gelernter,et al.  Generative communication in Linda , 1985, TOPL.

[5]  Juan Julián Merelo Guervós,et al.  EvoSpace: A Distributed Evolutionary Platform Based on the Tuple Space Model , 2013, EvoApplications.

[6]  Marc Garbey,et al.  Parallel Genetic Algorithm Implementation for BOINC , 2009, PARCO.

[7]  Kenneth A. De Jong,et al.  An Analysis of the Interacting Roles of Population Size and Crossover in Genetic Algorithms , 1990, PPSN.

[8]  Marc Parizeau,et al.  DEAP: evolutionary algorithms made easy , 2012, J. Mach. Learn. Res..

[9]  J. Kennedy,et al.  Matching algorithms to problems: an experimental test of the particle swarm and some genetic algorithms on the multimodal problem generator , 1998, 1998 IEEE International Conference on Evolutionary Computation Proceedings. IEEE World Congress on Computational Intelligence (Cat. No.98TH8360).

[10]  Enrique Alba,et al.  Heterogeneous Computing and Parallel Genetic Algorithms , 2002, J. Parallel Distributed Comput..

[11]  Juan Julián Merelo Guervós,et al.  Asynchronous distributed genetic algorithms with Javascript and JSON , 2008, 2008 IEEE Congress on Evolutionary Computation (IEEE World Congress on Computational Intelligence).

[12]  Filomena Ferrucci,et al.  Towards Migrating Genetic Algorithms for Test Data Generation to the Cloud , 2013 .