Initialization, velocities, and freedom
In the very simple algorithm we have seen, all particles are initially on the frontier of the search domain. For a social/confidence smaller than 1, this is clearly necessary in order to "cover" all the domain. But it implies that swarm size has to be rap
We can reduce the swarm size if we give more "freedom" to the particle, as in classical PSO:
- by defining explicit velocities for particles
- by letting particle go not necessarily all towards the same point.
The algorithm is then more complex, but it is probably worthwhile, even if we consider a realistic cost as seen before.
This is exactly the kind of step by step improvement I evocated at the beginning, from the "simplest" PSO form to an efficient but not too expansive one.