Since the introduction of the first Particle Swarm Optimization algorithm by James Kennedy and Russell Eberhart in the mid-90's, many
variants of the original algorithm have been proposed. However, there is no general agreement on which variant(s) could be considered
the state-of-the-art in the field. This is, in part, due to a general lack of cross-comparisons among variants in the literature.
The work reported in this document was carried out with the goal of identifying the best-performing particle swarm optimization algorithms.
For practical reasons, we could not compare all the available algorithmic variants. Instead, we focused on those that have been the most
widely used variants. We also considered algorithms that incorporate some of the latest developments in field.
The comparison of the chosen particle swarm optimization algorithms was based on run-length and solution-quality distributions. These
analytical tools allow the comparison of stochastic optimization algorithms in terms of the probability of finding a solution to an optimization
problem within some minimum acceptable solution quality and time bounds. This kind of analysis is helpful for measuring the solution-quality vs.
computational effort tradeoff each algorithm presents.
Particle swarm optimizers are population-based optimization algorithms that rely on a population structure referred to as \emph{topology}.
We conduct an analysis of the effects that different population topologies (the most commonly used ones) have in their performance. We
show how some topologies are better suited for application scenarios in which only short runs are allowed or affordable, and how other
topologies are better suited for situations in which the only important factor is solution quality.
Run-length and solution-quality distributions also serve as diagnostic tools that help in the design of improved algorithms. After analyzing the
behavior of some variants with these tools, we found opportunities for improvement and the resultant variants are presented and discussed.