- Implements David Silver's cooperative A* MAPF algorithm in 3 dimensions
 - Leverages open simplex noise to generate realistic elevation maps
- Supports the creation of four different biomes: plains, mountains, canyons, and all three combined
 
 - Visualization built using PyQtGraph and OpenGL
 
This visualization runs on Python 3.7
Start off by cloning the repo:
git clone https://github.com/danielzgsilva/MultiAgentPathFinding
Navigate to the project's root and install dependencies into a conda environment like so:
conda env create -f environment.yml
Activate the environment
conda activate path_finding
Run the visualization with
python run.py
Available commands are:
- --num_agents | number of agents to spawn into the world | REQUIRED
 - --starts | list of x, y start coordinates for each agent | REQUIRED
 - --goals | list of x, y goal coordinates for each agent | REQUIRED
 - --max_time | maximum amount of time steps each agent has to each its goal | REQUIRED
 - --width | width of the grid
 - --height | height of the grid
 - --map_type | type of map to create (plains, mountains, canyons, default - combined)
 - --no_viz | if set, the visualization will not run, only a list of paths will be returned
 
Full run statement like so:
python run.py --num_agents 2 --starts 0,0 5,5 --goals 49,49 45,45 --max_time 30
- Creating PyQt GUI
 - Cooperative A* algorithm runtime improvements
 - Scheduling agents between multiple goals
 - Implementing Windowed Hierarchical Cooperative A*