pub fn separation( position: [f32; 2], peers: &[[f32; 2]], radius: f32, max_speed: f32, ) -> [f32; 2]
Repulsion from nearby peers, capped to max_speed; excludes coincident agents.