El algoritmo se basa en tres factores principales: «(i) movimiento inducido por la presencia de otros individuos (ii) actividad de alimentación, y (iii) difusión aleatoria».