254 CATALYZING INQUIRY
A second simulation of flocking behavior, developed in 1990, employed the Reynolds’ rules (though
they were independently developed) and also incorporated the influence of “dynamic forces” on the
behavior of the simulated creatures.^13 These dynamic forces would allow the creatures to be attracted
toward a convenient roosting point, say, or a particularly rich cornfield. As a result, the flock would
turn and head in the direction of a cornfield as soon as it was placed into view, with various subgroups
swinging out and in again until finally the whole group had landed right on target.
These two models are direct ancestors of the particle swarm optimization (PSO) algorithm, first
published in 1995.^14 The algorithm substitutes a mathematical function for the original roosts and
cornfields, and employs a conceptual swarm of bird-like particles that swoop down on the function’s
maximum value, even when the function has many local maxima that might confound more standard
optimization algorithms.
The essential innovation of the PSO algorithm is to scatter particles at random locations throughout
a multidimensional phase space that represents all the arguments to the function to be maximized. Then
the algorithm sets the particles in motion. Each particle evaluates the function as it flies through phase
space and keeps trying to turn back toward the best value that it has found so far. However, it is
attracted even more toward the best value that any of its neighboring particles have found. So it
inexorably begins to move in that direction—albeit with a little built-in randomness that allows it to
explore other values of the function along the way. The upshot is that the particles quickly form a flock
that flows toward a point that is one of the highest function values available, if not the highest.
The PSO algorithm is appealing for both its simplicity—the key steps can be written in just a few
lines of computer code—and its effectiveness. In the original publication of the PSO algorithm, the
algorithm was applied to a variety of neural network problems, and it was found to be a very efficient
way to choose the optimum set of connection weights for the network.^15 Since then, the basic technique
has been refined and extended to systems that have discrete variables, say, or that change with time. It
also has been applied to a wide variety of engineering problems,^16 such as the automatic adjustment of
power systems.^17
The PSO algorithm is biologically inspired in the sense that it is a plausible account of bird flocking
behavior. However, it is not known whether birds, in fact, use the PSO algorithm to fly in formation.
Swarm algorithms have the virtues of simplicity and robustness, not to mention an ability to func-
tion without the need for centralized control. For this reason, they may find their most important
applications in, say, self-healing and self-organizing communications networks or in electrical power
networks that could protect themselves from line faults and reroute current around a broken link “on
the fly.”^18
On the other hand, simple rules are not automatically good. Witness army ants, which are such
obsessive self-organizers that the members of an isolated group will often form a “circular mill,” follow-
(^13) F.H. Heppner and U. Grenander, “A Stochastic Nonlinear Model for Coordinated Bird Flocks,” The Ubiquity of Chaos, S.
Krasner, ed., AAAS Publications, Washington, DC, 1990.
(^14) J. Kennedy and R.C. Eberhart, “Particle Swarm Optimization,” pp. 1942-1948 in Proceedings of the IEEE International Conference
on Neural Networks, IEEE Service Center, Piscataway, NJ, 1995; R. Eberhart, Y. Shi, and J. Kennedy, Swarm Intelligence, Morgan
Kaufman, San Francisco, CA, 2001.
(^15) See Section 8.3.3.2 for further discussion.
(^16) A good sense of current activity in the field can be gleaned from the programs and talks at the 2003 IEEE Swarm Intelligence
Symposium, April 24-26, 2003, available at http://www.computelligence.org/sis/index.html. Extensive references to PSO can
be found at “Welcome to Particle Swarm Central,” 2003, available at http://www.particleswarm.info. This site also contains a
number of links to online tutorials and downloadable PSO code.
(^17) K.Y. Lee and M.A. El-Sharkawi, eds., Modern Heuristic Optimization Techniques with Applications to Power Systems, John Wiley
and IEEE Press, New York, March 2003.
(^18) E. Bonabeau, “Swarm Intelligence,” presented at the O’Reilly Emerging Technology Conference, April 22-25, 2005, Santa
Clara, CA. Powerpoint presentation available at http://conferences.oreillynet.com/presentations/et2003/Bonabeau_eric.ppt.