Particle swarm optimization with dual-level task allocation. (February 2015)