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 2020 Publication 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.
[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.
[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.
[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.
[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.
[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.
[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.
[8]
C. A. R. Hoare. 1978. Communicating Sequential Processes. Commun, ACM 21, 8 (Aug. 1978), 666--677.
[9]
Kittisak Kerdprasop and Nittaya Kerdprasop. 2012, Concurrent Computation for Genetic Algorithms. In 1st international Conference on Software Technology. SERSC, Cebu, Philippines, 79--84.
[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.
[11]
JJ Merelo, 2019. Running Perl 6. In Perl 6 Quick Syntax Reference. Springen, Cham, 1--10.
[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.
[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.
[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.
[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.
[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.
[17]
Rob Pike and A Gerrand. 2012. Concurrency is not parallelism, Heroku Waza conference. (2012).

Cited By

View all
  • (2022)Genetic Algorithms in a Visual Declarative ProgrammingWSEAS TRANSACTIONS ON INFORMATION SCIENCE AND APPLICATIONS10.37394/23209.2022.19.1419(138-152)Online publication date: 21-Jun-2022

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
GECCO '20: Proceedings of the 2020 Genetic and Evolutionary Computation Conference Companion
July 2020
1982 pages
ISBN:9781450371278
DOI:10.1145/3377929
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 08 July 2020

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. CSP
  2. algorithm implementation
  3. communicating sequential processes
  4. concurrent algorithms
  5. distributed computing
  6. event-based systems
  7. functions as a service
  8. heterogeneous distributed systems
  9. performance evaluation
  10. serverless computing
  11. stateless algorithms

Qualifiers

  • Research-article

Funding Sources

  • Ministerio de Ciencia e Innovación

Conference

GECCO '20
Sponsor:

Acceptance Rates

Overall Acceptance Rate 1,669 of 4,410 submissions, 38%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)1
Reflects downloads up to 01 Mar 2025

Other Metrics

Citations

Cited By

View all
  • (2022)Genetic Algorithms in a Visual Declarative ProgrammingWSEAS TRANSACTIONS ON INFORMATION SCIENCE AND APPLICATIONS10.37394/23209.2022.19.1419(138-152)Online publication date: 21-Jun-2022

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media