Profiled and Optimized Particle Swarm Optimizer

Ran profile tests on the Particle Swarm Optimizer and optimized the code
mostly around the velocity and position update methods (removed all for
loops)