A Discrete Particle Swarm Optimization Algorithm for Uncapacitated Facility Location Problem. (8th April 2008)