Trajectory Planner for Autonomous Vehicles
In the future, it is foreseeable that autonomous vehicles will be commonplace and they will help improve safety and quality of life. Since we can plan their trajectories accurately beforehand, using red lights and stop signs would be redundant, as it would be inefficient in terms of time as well as energy.
This project works in a simulated city of self-driving cars, to improve traffic efficiency. In order to maintain separation in time and space, the speeds and paths of vehicles are modified to provide suitable safe trajectories.
We started off by designing a city grid on PyGame, which is our simulation environment. We assumed all lanes to be one-laned and two-way, and vehicles to have 5 discreet speed levels.
We implemented the A* algorithm to provide each agent with a preliminary path. Once new agents were introduced, the trajectories (path w.r.t. time) were compared by the centralized planner, and in case a conflict was detected, we used our algorithm to resolve it. The A* algorithm was implemented such that it would provide alternative paths (second most optimal) if the original path was not feasible.