Skip to content

zaki-x86/path_planner

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Path Planner

Work in progress

Path planner is a package to experiment with different path planning algorithms.

Algorithms used:

  • Dijkstra
  • Bellman-Ford
  • A*
  • RRT
  • RRT*

And, their variants.

Main Dependencies

  • NumPy
  • Matplotlib
  • NetworkX

Components

The package consists of 3 parts:

  • The algorithm solver server for selecting between different algorithms.
  • The graph server for representation .
  • The workers server for parallization and concurrency.
  • The plotter server for visualization.

How it works

Create you maze text file for the program to load it up, here are some examples:

  • Simple maze:

Simple maze

  • Complex maze:

Complex maze

Choose your start and endpoint and the solver algorithm:

Path finding in a simple maze example

Todo

  • Implement and add more algorithms by hand.
  • Use Numba and multithreading for concurrency and parallization.
  • Unit testing and benchmarking.

Future Plans

  • Code refactoring and separation of concerns.
  • Integration with ROS2.
  • Rewrite in C++.

Releases

No releases published

Packages

No packages published

Languages