A Promotive Particle Swarm Optimizer With Double Hierarchical Structures