PRA* and A* implementation for CMPUT 658 final project.
experiments/
Directory containing the data generated by the programlogs/
Logs of the experimental runsscenarios/
Directory containing the maps and scenariosscripts/
Scripts to generate search graphs, run all experiments, and create paper figuressrc/algorithm/pra_star/
Implementation for PRA*src/algorithm/a_star/
Implementation for A*src/algorithm/common/
Common graph structs for search algorithmssrc/util/
Various utility functions/structs, from personal library (tpl)
The following libraries are used in this project.
They are included as git submodules, so it is recommended you install them by using the git --recursive
argument.
If a non-recursive clone is done initially, use
git submodule init
git submodule update
# Enter base project dir
cd pra_star
# Compile
mkdir build && cd build
mkdir Release && cd buiReleaseld
cmake -DCMAKE_BUILD_TYPE=Release ../..
make -j$(nproc)
The following command line arguments
cd build/Release
run_multi: Usage:
./src/run_multi <scenario_path> <export_path> <algorithm> <k>
Flags:
--algorithm (Search algorithm to run); default: "pra_star";
--export_path (Base directory for saved metrics); default: "/opt/";
--k (K parameter for PRA*, use 0 as infinity); default: 0;
--scenario_path (Full path for the scenario); default: "/opt/";
To see the runs used for the project, see runs.txt
cd scripts
python create_graphs.py
To extract the results from the given solution example run:
cd scripts
python run_algorithms.py
cd scripts
python generate_results_figure.py