Algorithm

The Cordyceps controller implements a variant of the Pure Pursuit algorithm. The Pure Pursuit algorithm is a path tracking algorithm used for robotics and autonomous navigation. The algorithm determines the steering angle of the robot based on the current position relative to the desired path. A lookahead distance is used to determine the point on the path that the robot should aim for.

More information about the Pure Pursuit algorithm can be found here: https://www.ri.cmu.edu/pub_files/pub3/coulter_r_craig_1992_1/coulter_r_craig_1992_1.pdf

The Pure Pursuit algorithm is chosen for the following reasons:
  • It is deterministic

  • Low computational cost

  • It is easy to implement

  • It is easy to tune

More information about how the Pure Pursuit algorithm is implemented in the Cordyceps controller can be found here: https://github.com/TeamSolenopsis/Cordyceps/blob/gh-pages/Cordyceps.pdf