A suite of multi-agent path finding algorithm implementations. The MAPF algorithms implementation taken from Roni Stern and Eli Boyarski works
In Run.cs
you need to add your ISolver
implementation to solvers
List.
After your addition, go to Program.cs
.
At the main function you can choose to run in either one of the next modes:
runGrids
- You programtically define, using int arrays, the grid size, obstacles and agents. Then you runRunExperimentSet
function with the given inputs.runSpecific
- Will use grid definition file frombin\Debug\instances
. Currently usesInstance-4-0-3-0
- a grid of 4x4 with 3 agents and no obstaclesrunNathan
- Will run Nathan Sturtevant benchmarks.
- A* and it's variations (Operator Decompsition, PartialExpansion, Independence Detection)
- CBS and it's variations
- ICTS
- MDD-SAT integration as an
ISolver
. - LazyCBS integration as an
ISolver
.
We conducted several experiments to evaluate the different MAPF algorithms. Furthermore, we trained algorithm selection models, based on XGBoost and VGG-16. The relevant code and data can be found at our github project page.