This repository contains path planning algorithms in C++ for a grid based search.
git clone https://github.com/vss2sn/path_planning.git
cd path_planning
mkdir build
cd build
cmake .. && make -j4
./main
main
creates a grid of a given size n, with any point set as an obstacle with a probability of 1/n. It then runs all the algorithms in the repository on the given grid.BUILD_INDIVIDUAL
to ON
(Executables created: dijkstra
, a_star
, etc). If you want to run all of them on the same grid, set BUILD_INDIVIDUAL
to OFF
(Executable created: main
).BUILD_INDIVIDUAL
to OFF
and RUN_TESTS to ON
.CHECK_COVERAGE
to check code coverage.CUSTOM_DEBUG_HELPER_FUNCION
to build functions that are used primarily for debugging (excluded from code coverage)RUN_TESTS
allows building tests when set when BUILD_INDIVIDUAL
is set OFF
.GetMotion()
function in utils.cpp.GetMotion
function). D* Lite also uses the same in its C function.shorten_chromosome
, which allows the shortening of the chromosome (path length) based on the length of the path found that reaches the goal. This reduces computation time and pushes the solution towards the shortest path.