A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS

Título: A TOOL FOR CREATING PARALLEL SWARM ALGORITHMS AUTOMATICALLY ON MULTI-CORE COMPUTERS

Autores: João Pedro Augusto Costa e Omar Andres Carmona Cortes

Resumo: Meta-heuristics are usually bio-inspired algorithms (based on genes or social behaviors) that are used for solving optimization problems in a variety of fields and applications. The basic principle of a meta-heuristic, such as genetic algorithms, differential evolutions, particle swarm optimization, etc., is to simulate the pressure that the environment applies to individuals resulting in the survival of the best ones. Regardless of which meta-heuristic is being used, the more complex the problem, the more time consuming the algorithm. In this context, parallel computing represents an attractive way of tackling the necessity for computational power. On the other hand, parallel computing introduces new issues that the programmers have to deal with, such as synchronization and the proper exploration of parallel algorithms/models. To avoid these problems, and at the same time, to provide a fast development of parallel swarm algorithms, this work presents a tool for creating parallel code using Parallel Particle Swarm Optimization (PSO) Algorithms in Java. The generator considers three models of parallelism: master-slaves, island and hierarchical. Experiments in the created code showed that a speedup of 5.3 could be reached in the Island model with 2000 iterations using Griewank’s function. Moreover, using a cost estimation model (COCOMO) we showed that our tool could save from 4.4 to 14.5 person/month on programming effort.

Palavras-chave: Particle swarm optimization, Parallel computing, Automatic code generation, Programming effort.

Páginas: 9

Código DOI: 10.21528/LNLM-vol17-no1-art4

Artigo em PDF: vol17-no1-art4.pdf

Arquivo BibTex: vol17-no1-art4.bib