Particle swarm optimization, which has roots in artificial life and so-cial psychology as well as engineering and computer science, differs from evolutionary computation methods in that the population members, called particles, are flown through the problem hyperspace. When the population is initialized, in addition to the variables being given random values, they are stochastically assigned velocities. Each iteration, each particle’s velocity is stochastically accelerated toward its previous best position (where it had its highest fitness value) and toward a neighbor-hood best position (the position of highest fitness by any particle in its neighborhood).
The particle swarms we will be describing are closely related to cellular automata (CA), which are used for self-generating computer graphics movies, simulating biological systems and physical phenomena, design-ing massively parallel computers, and most importantly for basic re-search into the characteristics of complex dynamic systems. According to mathematician Rudy Rucker, CAs have three main attributes: (1) indi-vidual cell updates are done in parallel, (2) each new cell value depends only on the old values of the cell and its neighbors, and (3) all cells are updated using the same rules (Rucker, 1999). Individuals in a particle