  The advantages of evolutionary algorithms with respect to traditional methods
have been greatly discussed in the literature. While particle swarm optimizers
share such advantages, they outperform evolutionary algorithms in that they
require lower computational cost and easier implementation, involving no
operator design and few coefficients to be tuned. However, even marginal
variations in the settings of these coefficients greatly influence the dynamics
of the swarm. Since this paper does not intend to study their tuning,
general-purpose settings are taken from previous studies, and virtually the
same algorithm is used to optimize a variety of notably different problems.
Thus, following a review of the paradigm, the algorithm is tested on a set of
benchmark functions and engineering problems taken from the literature. Later,
complementary lines of code are incorporated to adapt the method to
combinatorial optimization as it occurs in scheduling problems, and a real case
is solved using the same optimizer with the same settings. The aim is to show
the flexibility and robustness of the approach, which can handle a wide variety
of problems.
