Particle swarm optimization is a computer paradigm that is based on human social influence and cognition. Candidate problem solutions are randomly initialized, and improvements are found through interactions among them. Social-psychological aspects of the algorithm are described, followed by implementation details. The particle swarm operates in three kinds of spaces, namely a topological space comprising the “social network” structure of the population, a parameter space of problem variables, and a one-dimensional evaluative space. Variations in the algorithm are described, and finally it is compared to evolutionary computation models.