Particle Swarm Optimization by Andrea E. Olsson