skip to main content
10.1145/3377929.3398120acmconferencesArticle/Chapter ViewAbstractPublication PagesgeccoConference Proceedingsconference-collections
research-article

Implementation matters, also in concurrent evolutionary algorithms

Published:08 July 2020Publication History

ABSTRACT

Concurrency in evolutionary algorithms allow researchers to leverage the performance of powerful multi-core desktop architectures by parallelizing tasks using a high-level interface. However, concurrency also introduces additional complexity at the model and the implementation level. In this paper we describe how using parallel execution monitoring tools to check the effective parallelism of the implementation, can help to work out some of said complexities at the implementation-level, which in turn, are translated into improvements at the algorithmic-level. The performance gain is noticeable from an evaluations/seconds point of view to the possible scaling that can be achieved in the running machine, up to a superlinear scaling in an off-the-shelf platfonn. We show that the design using communicating sequential processes implemented in the language Raku is the basis for these improvements.

References

  1. Enrique Alba. 2002. Parallel evolutionary algorithms can achieve super-linear performance. Inform. Process. Lett. 82 (2002), 7--13.Google ScholarGoogle ScholarCross RefCross Ref
  2. Adam D Harwell, Christopher Brown, Kevin Hammond, Wojciech Turek, and Aleksander Byrski. 2017. Using program shaping and algorithmic skeletons to parallelise an evolutionary multi-agent system in Erlang. Computing and Informatics 35, 4 (2017), 792--818.Google ScholarGoogle Scholar
  3. Amanda Bienz, Kossi Fokle, Zachary Keller, Ed Zulkoski, and Scott Thede. 2011. A Generalized Parallel Genetic Algorithm in Erlang. In Midstates Conference For Undergraduate Research in Computer Science and Mathematics. N/A, N/A, 1--1.Google ScholarGoogle Scholar
  4. James P Cohoon. Shailesh U Hegde, Worthy N Martin, and 13 Richards. 1987. Punctuated equilibria: a parallel genetic algorithm. In Genetic algorithms and their applications: proceedings of the second International Conference on Genetic Algorithms: Juty 28-31, 1987 at the Massachusetts institute of Technology, Cambridge, MA. L. Erlhaum Associates, 1987., Hillsdale, NJ, 8pp.Google ScholarGoogle Scholar
  5. J. Albert Cruz, Juan-Julián Merelo-Guervós, Antonio Mora-García, and Paloma de las Cuevas, 2013. Adapting evolutionary algorithms to the concurrent functional language Erlang. In GECCO (Companion), Christian Blum and Enrique Alba (Eds.). ACM, NY, US, 1723--1724.Google ScholarGoogle Scholar
  6. Luis delaOssa, José A. Gámez, and José M. Puerta, 2004. Migration of Probability Models Instead of Individuals: An Alternative When Applying the Island Model to EDAs. In Parallel Problem Solving from Nature - PPSN VIII, Xin Yon, Edmund K. Burke, José A. Lorano, Jim Smith, Juan Julián Merelo-Guervós, et al. (Eds.). Springer, Berlin, Heidelberg, 242--252.Google ScholarGoogle Scholar
  7. IR East and D. McFarlane, 1993. Implementation in Occam of Parallel Genetic Algorithms on Transputer Networks. Parallel genetic algorithms: Theory and applications 14 (1993), 43.Google ScholarGoogle Scholar
  8. C. A. R. Hoare. 1978. Communicating Sequential Processes. Commun, ACM 21, 8 (Aug. 1978), 666--677. Google ScholarGoogle ScholarCross RefCross Ref
  9. Kittisak Kerdprasop and Nittaya Kerdprasop. 2012, Concurrent Computation for Genetic Algorithms. In 1st international Conference on Software Technology. SERSC, Cebu, Philippines, 79--84.Google ScholarGoogle Scholar
  10. Pavel Krömer, Jan Platoš, Václav Snášel, and Ajith Abraham. 2011. A comparison of many-threaded differential evolution and genetic algorithms on CUDA. In 2011 Third World Congress on Nature and Biologically Inspired Computing. IEEE, Piscataway, NY, 509--514.Google ScholarGoogle ScholarCross RefCross Ref
  11. JJ Merelo, 2019. Running Perl 6. In Perl 6 Quick Syntax Reference. Springen, Cham, 1--10.Google ScholarGoogle Scholar
  12. Juan J. Merelo and José-Mario García-Valdez. 2018. Mapping Evolutionary Algorithms to a Reactive, Stateless Architecture: Using a Modern Concurrent Language. In Proceedings of the Genetic and Evolutionary Computation Conference Companion (GECCO '18). ACM. New York, NY, USA, 1870--1877. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Juan J Merelo, Juan Luis Jiménez Laredo, Pedro A Castillo, José-Mario Gareia-Valdez, and Sergio Rojas-Galeano. 2019. Scaling in Concurrent Evolutionary Algorithms. In Workshop on Engineering Applications. Springer, Cham, 16--27.Google ScholarGoogle Scholar
  14. Juan-Julián Merelo-Guervós, Gustavo Romero, Maribel Garcla-Arenas, Pedro A. Castillo, Antonio-Miguel Mora, and Juan-Luis Jiménez-Laredo. 2011. Implementation Matters: Programming Best Practices for Evolutionary Algorithms. In IWANN (2) (Lecture Notes in Computer Science), Joan Cabestany, Ignacio Rojas, and Gonzalo Joya Caparrós (Eds), Vol. 6692. Springer, Cham, 333--340.Google ScholarGoogle Scholar
  15. Juan Julián Merelo Guervós and José Mario García Valdez. 2018. Performance improvements of evolutionary algorithms in perl 6. In Proceedings of the Genetic and Evolutionary Computation Conference Companion, GECCO 2018, Kyoto, Japan, July 15-19. 2018, Hernán E. Aguirre and Keiki Takadama (Eds). ACM, NY, US, 1371--1378. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Dorival M. Pedroso, Mohammad Reza Bonyadi, and Marcus Gallagher. 2017. Parallel evolutionary algorithm for single and multi-objective optimisation: Differential evolution and constraints handling. Applied Soft Computing 61 (2017). 995 -- 1012. Google ScholarGoogle ScholarCross RefCross Ref
  17. Rob Pike and A Gerrand. 2012. Concurrency is not parallelism, Heroku Waza conference. (2012).Google ScholarGoogle Scholar

Index Terms

  1. Implementation matters, also in concurrent evolutionary algorithms

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader