Litcius/Paper detail

Parallel Genetic Algorithms’ Implementation Using a Scalable Concurrent Operation in Python

Vladislav Škorpil, Václav Oujezský

2022Sensors16 citationsDOIOpen Access PDF

Abstract

This paper presents an implementation of the parallelization of genetic algorithms. Three models of parallelized genetic algorithms are presented, namely the Master-Slave genetic algorithm, the Coarse-Grained genetic algorithm, and the Fine-Grained genetic algorithm. Furthermore, these models are compared with the basic serial genetic algorithm model. Four modules, Multiprocessing, Celery, PyCSP, and Scalable Concurrent Operation in Python, were investigated among the many parallelization options in Python. The Scalable Concurrent Operation in Python was selected as the most favorable option, so the models were implemented using the Python programming language, RabbitMQ, and SCOOP. Based on the implementation results and testing performed, a comparison of the hardware utilization of each deployed model is provided. The results' implementation using SCOOP was investigated from three aspects. The first aspect was the parallelization and integration of the SCOOP module into the resulting Python module. The second was the communication within the genetic algorithm topology. The third aspect was the performance of the parallel genetic algorithm model depending on the hardware.

Topics & Concepts

Python (programming language)ScalabilityComputer scienceParallel computingProgramming languageComputer architectureAlgorithmDistributed computingOperating systemEvolutionary Algorithms and ApplicationsMetaheuristic Optimization Algorithms ResearchAdvanced Multi-Objective Optimization Algorithms
Parallel Genetic Algorithms’ Implementation Using a Scalable Concurrent Operation in Python | Litcius