Autonomous Driving in CARLA


Description:

The objective of this personal project was to implement navigation and control algorithms from scratch for an autonomous vehicle in simulation.

Library:

  • Developed a library of commonly used high-level planners and controllers. The high-level planners include A*, RRT, RRT*. The controllers include PID, Stanley controller, LQR and MPC

CARLA simulation:

  • Implemented a hierarchical motion planner for a car in CARLA simulation
    • FSM-based (Finite State Machine) behavioral planner was implemented for four scenarios: Lane Following, Lead Vehicle Following, Decelerating to Stop and Stopping at STOP sign.
    • Trajectory rollout-based low-level planner was implemented for avoiding parked vehicles
    • Trajectory rollout was implemented using quintic spirals to obtain smooth curvature
  • Link to the github repo: Library of planners and controllers

Photos