A gatherer agent chooses the closest visible piece of food
that is currently not being carried by anyone (and is not
already in the agent's home base) and accelerates towards it.
A swarm agent looks at its neighbors, chooses a certain number
of them, and accelerates in the direction of their average velocity,
with a part of its acceleration being randomized.