Skip to main content

Advertisement

Log in

Designing robust volunteer-based evolutionary algorithms

  • Published:
Genetic Programming and Evolvable Machines Aims and scope Submit manuscript

Abstract

This paper tackles the design of scalable and fault-tolerant evolutionary algorithms computed on volunteer platforms. These platforms aggregate computational resources from contributors all around the world. Given that resources may join the system only for a limited period of time, the challenge of a volunteer-based evolutionary algorithm is to take advantage of a large amount of computational power that in turn is volatile. The paper analyzes first the speed of convergence of massively parallel evolutionary algorithms. Then, it provides some guidance about how to design efficient policies to overcome the algorithmic loss of quality when the system undergoes high rates of transient failures, i.e. computers fail only for a limited period of time and then become available again. In order to provide empirical evidence, experiments were conducted for two well-known problems which require large population sizes to be solved, the first based on a genetic algorithm and the second on genetic programming. Results show that, in general, evolutionary algorithms undergo a graceful degradation under the stress of losing computing nodes. Additionally, new available nodes can also contribute to improving the search process. Despite losing up to 90 % of the initial computing resources, volunteer-based evolutionary algorithms can find the same solutions in a failure-prone as in a failure-free run.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9

Similar content being viewed by others

Notes

  1. Source code for the experiments is available at https://forja.rediris.es/svn/geneura/peerevogen, published under GPL v3 public license.

  2. These samples are available together with the source code for the experiments at https://forja.rediris.es/svn/geneura/peerevogen.

  3. This issue has been solved by the P2P computing community with the use of hubs or superpeers, a set of public and reliable nodes keeping a partial knowledge of the connected network. See [39] for more details.

References

  1. D.H. Ackley, A connectionist machine for genetic hillclimbing. (Kluwer Academic Publishers, Norwell, MA, 1987)

    Book  Google Scholar 

  2. E. Alba, M. Tomassini, Parallelism and evolutionary algorithms. IEEE Trans. Evol. Comput. 6(5), 443–462 (2002)

    Article  Google Scholar 

  3. D. Anderson, BOINC: a system for public-resource computing and storage. In: Grid Computing, 2004. Proceedings. Fifth IEEE/ACM International Workshop on (2004), pp 4–10

  4. D.P. Anderson, J. Cobb, E. Korpela, M. Lebofsky, D. Werthimer, SETI@home: an experiment in public-resource computing. Commun. ACM 45(11), 56–61 (2002). doi:10.1145/581571.581573

    Article  Google Scholar 

  5. M.G. Arenas, P. Collet, A.E. Eiben , M. Jelasity, J.J. Merelo, B. Paechter, M. Preu  M. Schoenauer, A framework for distributed evolutionary algorithms. In: Proceedings of the 7th International Conference on Parallel Problem Solving from Nature. (Springer, London, UK 2002), PPSN VII, pp 665–675. http://dl.acm.org/citation.cfm?id=645826.669596

  6. M.G. Arenas, J.J. Merelo, A.M. Mora, P.A. Castillo, G. Romero, J.L.J. Laredo, Assessing speed-ups in commodity cloud storage services for distributed evolutionary algorithms. In: IEEE Congress on Evolutionary Computation, IEEE. (2011), pp 304–311

  7. B. Bánhelyi, M. Biazzini, A. Montresor, M. Jelasity, Peer-to-peer optimization in large unreliable networks with branch-and-bound and particle swarms. In: Giacobini M, Brabazon A, Cagnoni S, Di Caro G, Ekárt A, Esparcia-Alcázar A, Farooq M, Fink A, Machado P (eds) Applications of Evolutionary Computing, Lecture Notes in Computer Science, vol 5484. (Springer, Berlin, 2009), pp. 87–92.

  8. M. Biazzini, A. Montresor, Gossiping differential evolution: A decentralized heuristic for function optimization in p2p networks. In: ICPADS, IEEE. (2010), pp 468–475

  9. M. Biazzini, A. Montresor, p2poem: Function optimization in p2p networks. Peer-to-Peer Netw. Appl. 6(2), 213–232 (2013). doi:10.1007/s12083-012-0152-8

    Article  Google Scholar 

  10. S. Cahon, N. Melab, E.G. Talbi, An enabling framework for parallel optimization on the computational grid. In: Cluster Computing and the Grid, 2005. CCGrid 2005. IEEE International Symposium on, vol 2, (2005), pp 702–709. doi:10.1109/CCGRID.2005.1558632

  11. O. Derby, K. Veeramachaneni, U.M . O’Reilly, Cloud driven design of a distributed genetic programming platform. In: Esparcia-Alcázar A (ed) Applications of Evolutionary Computation, Lecture Notes in Computer Science, vol 7835. (Springer, Berlin, 2013), pp 509–518. doi:10.1007/978-3-642-37192-9_51

  12. T. Desell, B. Szymanski, C. Varela, An asynchronous hybrid genetic-simplex search for modeling the Milky Way galaxy using volunteer computing. In: Proceedings of the 10th annual conference on Genetic and Evolutionary Computation, ACM (2008), pp 921–928

  13. T. Desell, M. Magdon-ismail, B. Szymanski, C. A, H. Newberg, D.P. Anderson, Validating evolutionary algorithms on volunteer computing grids. In: International conference on distributed applications and interoperable systems (2010), pp 29–41

  14. C. Gagné, M. Parizeau, The master-slave architecture for evolutionary computations revisited. In: Proceedings of the Genetic and Evolutionary Computation Conference (Chicago, IL, 2003), pp 1578–1579

  15. S. Ghosh, Distributed systems: an algorithmic approach. (Chapman & Hall/CRC, 2006)

  16. P.B. Godfrey, I. Stoica, Heterogeneity and load balance in distributed hash tables. In: 24th Annual Joint Conference of the IEEE Computer and Communications Societies, vol 1 (2005), pp 596–606. doi:10.1109/INFCOM.2005.1497926

  17. D.L. Gonzalez, F. Fernández, Analyzing fault tolerance on parallel genetic programming by means of dynamic-size populations. In: Congress on Evolutionary Computation, vol 1, (Singapore, 2007), pp 4392–4398

  18. D.L. Gonzalez, F. Fernández, H. Casanova, Characterizing fault tolerance in genetic programming. In: Workshop on Bio-Inspired Algorithms for Distributed Systems (Barcelona, Spain, 2009a), pp 1–10

  19. D.L. Gonzalez, F. Fernández, L. Trujillo, G. Olague, L. Araujo, P.A. Castillo, J.J. Merelo, K. Sharman, Increasing gp computing power for free via desktop grid computing and virtualization. In: D.E. Baz, F. Spies, T. Gross (eds) PDP, IEEE Computer Society, (2009b), pp 419–423

  20. D.L. Gonzalez, J.L.J. Laredo, F.F. de Vega, J.J. Merelo, Characterizing fault-tolerance of genetic algorithms in desktop grid systems. In: Cowling PI, Merz P (eds) EvoCOP, Springer, Lecture Notes in Computer Science, vol 6022, (2010), pp 131–142

  21. I. Hidalgo, F. Fernández, J. Lanchares, D. Lombraña, Is the island model fault tolerant? In: Genetic and Evolutionary Computation Conference (London, England, 2007), vol 2, p 1519

  22. M. Jelasity, M. van Steen, Large-scale newscast computing on the Internet. Tech. Rep. IR-503, Vrije Universiteit Amsterdam, Department of Computer Science, Amsterdam, The Netherlands, (2002). http://www.cs.vu.nl/pub/papers/globe/IR-503.02

  23. Karafotias G, Haasdijk E, Eiben AE An algorithm for distributed on-line, on-board evolutionary robotics. In: Proceedings of the 13th annual conference on Genetic and evolutionary computation, ACM (New York, NY, USA, GECCO ’11, 2011), pp 171–178. doi:10.1145/2001576.2001601

  24. D. Kondo, G. Fedak, F. Cappello, A. Chien, H. Casanova, Characterizing resource availability in enterprise desktop grids. Future Gener. Comput. Syst. 23(7), 888–903 (2007)

    Article  Google Scholar 

  25. J.R. Koza, Genetic Programming: On the Programming of Computers by Means of Natural Selection. (MIT Press, Cambridge, MA, 1992)

    MATH  Google Scholar 

  26. J.L.J. Laredo , Castillo PA, Mora AM, Merelo JJ (2008a) Exploring population structures for locally concurrent and massively parallel evolutionary algorithms. In: IEEE Congress on Evolutionary Computation (CEC2008), WCCI2008 Proceedings, IEEE Press, Hong Kong, pp 2610–2617

  27. J.L.J. Laredo, Castillo P.A, Mora A.M, Merelo J.J, Fernandes C, Resilience to churn of a peer-to-peer evolutionary algorithm. Int J High Performance Systems Architecture 1(4), 260–268, (2008b). doi:10.1504/IJHPSA.2008.024210

  28. J.L.J. Laredo, A.E. Eiben, van M. Steen, J.J. Merelo, Evag: a scalable peer-to-peer evolutionary algorithm. Genet. Program Evolvable Mach. 11(2), 227–246 (2010)

    Article  Google Scholar 

  29. J.L.J. Laredo, P. Bouvry, S. Mostaghim, J.J. Merelo, Validating a peer-to-peer evolutionary algorithm. In: et al CDC (ed) EvoApplications (Springer, 2012) Lecture Notes in Computer Science, vol 7248, pp 436–445

  30. D. Lim, Y. soon Ong, A.B. sungLee, Efficient hierarchical parallel genetic algorithms using grid computing. Future Gener. Comput. Syst. 23(4), 658–670 (2007)

    Article  Google Scholar 

  31. E. Montero, M.C. Riff, On-the-fly calibrating strategies for evolutionary algorithms. Information Sciences 181(3), 552–566 (2011). doi:10.1016/j.ins.2010.09.016, http://www.sciencedirect.com/science/article/pii/S0020025510004561

    Google Scholar 

  32. U.M. O’Reilly, M. Wagy, B. Hodjat et al., EC-Star: A Massive-Scale, Hub and Spoke, Distributed Genetic Programming System. In: R. Riolo (eds) Genetic Programming Theory and Practice X, Genetic and Evolutionary Computation, (Springer, Science + Business Media, New York, 2013) pp. 73–85.

    Chapter  Google Scholar 

  33. P. Pospichal, J. Jaros, J. Schwarz, Parallel genetic algorithm on the cuda architecture. In: Di Chio C, Cagnoni S, Cotta C, Ebner M, Ekárt A, Esparcia-Alcazar A, Goh CK, Merelo J, Neri F, Preuβ M, Togelius J, Yannakakis G (eds) Applications of Evolutionary Computation, Lecture Notes in Computer Science, vol 6024. (Springer Berlin / Heidelberg, 2010), pp 442–451

  34. G. Roy, H. Lee, J.L. Welch , Y. Zhao , V. Pandey , D. Thurston, A distributed pool architecture for genetic algorithms. In: Proceedings of the Eleventh conference on Congress on Evolutionary Computation, IEEE Press (Piscataway, NJ, USA, CEC’09, 2009), pp 1177–1184. http://dl.acm.org/citation.cfm?id=1689599.1689756

  35. I. Scriven, D. Ireland, A. Lewis, S. Mostaghim, J. Branke, Asynchronous multiple objective particle swarm optimisation in unreliable distributed environments. In: IEEE Congress on Evolutionary Computation, IEEE (2008a), pp 2481–2486

  36. I. Scriven, A. Lewis, D. Ireland, J. Lu, Decentralised distributed multiple objective particle swarm optimisation using peer to peer networks. In: IEEE Congress on Evolutionary Computation, IEEE(2008b), pp 2925–2928

  37. I. Scriven, A. Lewis, S. Mostaghim, Dynamic search initialisation strategies for multi-objective optimisation in peer-to-peer networks. In: IEEE Congress on Evolutionary Computation, IEEE (2009), pp 1515–1522

  38. Stats (2013) Internet world stats. http://www.internetworldstats.com, accessed on March 8th, 2013

  39. R. Steinmetz, K. Wehrle (eds), Peer-to-Peer Systems and Applications, Lecture Notes in Computer Science, vol 3485. (Springer, 2005)

  40. D. Stutzbach, R. Rejaie, Understanding churn in peer-to-peer networks. In: Proceedings of the 6th ACM SIGCOMM on Internet measurement (IMC 2006) (ACM Press, New York, NY, 2006), pp 189–202. doi:10.1145/1177080.1177105, http://portal.acm.org/citation.cfm?id=1177105

  41. D. Thierens, Scalability problems of simple genetic algorithms. Evol. Comput. 7(4), 331–352 (1999)

    Article  Google Scholar 

  42. S. Varrette, M. Ostaszewski, P. Bouvry, Nature inspired algorithm-based fault tolerance on global computing platforms. application to symbolic regression. In: Proc. of the Intl. Conf. on Metaheuristics and Nature Inspired Computing (META’08) (Hammamet, Tunisia, 2008). http://www2.lifl.fr/META08/

  43. S. Voulgaris, M. Jelasity, M. van Steen, Agents and Peer-to-Peer Computing, Lecture Notes in Computer Science (LNCS), vol 2872. Springer, Berlin, chap A Robust and Scalable Peer-to-Peer Gossiping Protocol, (2004), pp 47–58. doi:10.1007/b104265

  44. W.R.M.U.K. Wickramasinghe, M. van Steen, A.E. Eiben, Peer-to-peer evolutionary algorithms with adaptive autonomous selection. In: Proceedings of the 9th annual conference on Genetic and evolutionary computation, ACM (New York, NY, USA, GECCO ’07, 2007), pp 1460–1467. doi:10.1145/1276958.1277225

  45. Z. Zhao, F. Yang, Y. Xu, Ppvc: A p2p volunteer computing system. In: 2nd IEEE International Conference on Computer Science and Information Technology, IEEE (2009), pp 51–55

Download references

Acknowledgments

We would like to thank Claudia Höfer for proofreading this manuscript. This work was supported by the Luxembourg FNR Green@Cloud project (INTER/CNRS/11/03) and by the Spanish Ministry of Science Project (TIN2011-28627-C04).

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to J. L. J. Laredo.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Laredo, J.L.J., Bouvry, P., González, D.L. et al. Designing robust volunteer-based evolutionary algorithms. Genet Program Evolvable Mach 15, 221–244 (2014). https://doi.org/10.1007/s10710-014-9213-5

Download citation

  • Received:

  • Revised:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10710-014-9213-5

Keywords

Navigation