Evolutionary Computation with Islands: Extending EvoLP.jl for Parallel Computing


The use of evolutionary computation for optimisation is a relevant area of research in many fields of science and the industry, where complex problems are frequently encountered. As an effort to support the research in this niche, we present an extension for EvoLP.jl: the evolutionary computation playground in Julia, that includes three new operators for implementing island models for genetic algorithms. The extension enables the framework to run using the Message Passing Interface protocol, an international standard for communication in parallel architectures that is available in most high performance computing clusters today. We study the advantages of the implementation by performing a series of tests on well-known numerical optimisation benchmarks of various difficulties and on several dimensions. Both the code and the data are available in a GitHub repository. This work enables researchers to implement powerful parallel evolutionary algorithms without moving away from the high level of abstraction that the framework provides.

Nov 29, 2023 11:30 AM
Kjølv Egelands Hus, University of Stavanger
Kjell Arholms gate 41, Stavanger, Rogaland 4021

During NIKT'23 I presented an extension for EvoLP.jl that allows us to create island models of the genetic algorithm quickly. This is based on MPI and allows the EvoLP.jl to be run in as many cores as needed while coding only one island. You can read more about it in the GitHub repository.

We expect to ship this functionality in EvoLP.jl during Spring 2024.

Xavier F. C. Sánchez Díaz
Xavier F. C. Sánchez Díaz
PhD candidate in Artificial Intelligence

PhD candidate in Artificial Intelligence at the Department of Computer Science (IDI) of the Norwegian University of Science and Technology