Each agent runs a tiny perceive → decide → act loop every frame: it senses nearby
agents and its goal within a perception radius, blends steering forces, adds random
decision noise, then moves.
v_new = normalize( w1*seek(goal)
+ w2*avoid(neighbours)
+ w3*align(neighbours)
+ noise*rand() )
pos += v_new * speed * dt
- Seek Goals / Flock — switches whether agents individually chase random goal markers or follow classic boids rules (separation + alignment + cohesion).
- Agent count — how many autonomous agents populate the world.
- Perception radius — how far each agent can "see" others; larger radius means bigger, more coordinated groups.
- Decision noise — random jitter added to each decision, modelling sensor/actuator uncertainty.
- Agent speed — the actuation speed limit of every agent.
This loop is the core abstraction behind multi-robot coordination, warehouse robot
fleets and crowd-simulation AI: local sensing plus simple rules produces coherent
global behaviour without any central controller.