Hacker News new | past | comments | ask | show | jobs | submit login

Having had to code this problem for the 2005 DARPA Grand Challenge, it's fun to see this.

First, we tried Craig Reynolds' flocking system. That's a repulsive field approach. It just won't work in a narrow space. We tried a system where there's a target projected in front of the vehicle, and repulsion fields from the object act on that. The vehicle then chases the target. This was a little better, but not much.

We ended up using a system where we computed a clear path ahead of the vehicle composed of two arcs, which could have opposite curvature. We always kept enough clear path ahead for the stopping distance of the vehicle, or we'd slow down. Arcs were tested against the map by brute force, then tweaked a bit for maximum obstacle clearance. The minimum turning radius increased with speed and decreased with vehicle tilt (this was for off-road operation), so the system wouldn't generate a path that would roll the vehicle.

(Our biggest headache at the event wasn't obstacle avoidance, it was that we took DARPA's prescribed GPS boundary limits as hard boundaries. The GPS positions were not accurate enough for that. After a very frustrating first run, where we could barely make it through narrow gates because the GPS boundaries and the real world obstacles were misaligned, we allowed 1 meter outside the boundary limits, and performance improved.)




Which team did you work on?


Overbot.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: