Skip to content

Localized motion planning on-board an Autonomous Vehicle (AV) using SLAM (Simultaneous Localization and Mapping) has been implemented. This individual motion planning of the route by AVs does not account for other AVs' routes, urgency, other such parameters and can lead to deadlock situations. A centralized computation unit that provides the reg…

Notifications You must be signed in to change notification settings

RushiPDeshmukh/Centralized_Motion_Planner_Project

Repository files navigation

Centralized_Motion_Planner_Project

Localized motion planning on-board an Autonomous Vehicle (AV) using SLAM (Simultaneous Localization and Mapping) has been implemented. This individual motion planning of the route by AVs does not account for other AVs' routes, urgency, other such parameters and can lead to deadlock situations. A centralized computation unit that provides the registered AVs with a optimal motion plan is proposed by this project. A central planner will find a optimal motion plan for all the AVs in its control area. This central planner will consider the fuel constraint, priorities, speed constraint, etc while planning. This project proposes the use of Particle Swarm Optimization algorithm for meta-heuristic centralized decoupled motion planning. A classic decoupled centralized motion planning algorithm will be implemented for baseline comparison. Advanced algorithm like Grey Wolf Optimization will be studied and explored in the project.

Simple APlanning Working:
image

Simulation Environment Designed in Pygame: image

Results:

  1. Naive A* Planner:
Naive.mov
  1. Priotize Safe Interval based Planner:
Priotize_safe_interval.mov
  1. Combinational Planner:
Combinational_Planner.mov

Performance Graph

image

/src/Simulator/ Folder contains:

simulatorv0.py: used to create city maps of class BLOCKS stored in map.pkl using pickle.

map.pkl: contains a city map can be open and edited to change the roads and orientations of roads. 

grid.py: contains a class function of GRID. This will be used to represent the city map in 150x150 grid.

grid_tile.py: contains a class function of GRIDTILE. This will be used to represent the singel tile on the grid.

map_grid.npy: file contains a numpy array of size (150,150). This will be used to initialize the grid object for now.

Requirements

The version is tested on ubuntu 20.04 using python 3.8.10

  • pygame 2.1.2
  • ROS noetic

Instructions to run the REPO

git clone https://github.com/wokeengineer/Centralized_Motion_Planner_Project.git

cd Ros_ws

For further instructions follow the README in the Ros_ws folder.

About

Localized motion planning on-board an Autonomous Vehicle (AV) using SLAM (Simultaneous Localization and Mapping) has been implemented. This individual motion planning of the route by AVs does not account for other AVs' routes, urgency, other such parameters and can lead to deadlock situations. A centralized computation unit that provides the reg…

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •