Authors:
José Albert Cruz
1
;
J. J. Merelo
2
;
Liesner Acevedo-Martínez
1
and
Paloma de las Cuevas
2
Affiliations:
1
Universidad de Ciencias Informáticas, Cuba
;
2
Universidad de Granada, Spain
Keyword(s):
Parallel Evolutionary Algorithms, Functional Languages, Concurrent Languages, Implementation, Modeling.
Related
Ontology
Subjects/Areas/Topics:
Artificial Intelligence
;
Computational Intelligence
;
Concurrent Co-Operation
;
Evolutionary Computing
;
Genetic Algorithms
;
Informatics in Control, Automation and Robotics
;
Intelligent Control Systems and Optimization
;
Soft Computing
Abstract:
The spread of multiprocessor and multi-core architectures have a pervasive effect on the way software is developed. In order to take full advantage of them, a parallel implementation of every single program would be needed, but also a radical reformulation of the algorithms that are more appropriate to that kind of implementation. In this work we design and implement an evolutionary computation model using programming languages with built-in concurrent concepts. This article shows the advantages of these paradigms in order to implement a parallel genetic algorithm (pGA) with an island pools based topology in the concurrent-functional oriented programming languages: Erlang, Scala, and Clojure. Some implementation decisions are analyzed and the results of the solution of a study case are shown.