libMultiRobotPlanning libMultiRobotPlanning is a library with search algorithms primarily for task and path planning for multi robot/agent systems. It is written in C++(14), highly templated for good performance, and comes with useful examples. The following algorithms are currently supported: Single-Robot Algorithms A* A* epsilon (also known as focal search) SIPP (Safe Interval Path Planning) Multi-Robot Algorithms Conflict-Based Search (CBS) Enhanced Conflict-Based Search (ECBS) Conflict-Based Search with Optimal Task Assignment (CBS-TA) Enhanced Conflict
-Based Search with Optimal Task Assignment (ECBS-TA) Prioritized Planning using SIPP (example code for SIPP) Assignment Algorithms Minimum sum-of-cost (flow-based; integer costs; any number of agents/tasks) Best Next Assignment (series of optimal solutions) Building Tested on Ubuntu 16. Targets : Build examples, only : build doxygen documentation : Re-format all source files : Run linter & static code analyzer : Run unit-tests Run specific tests Run example instances ECBS python3 . /cbs_roadmap -i mapf_simple1_roadmap_annotated.
Frequently asked questions
How many stars and forks are recorded?
whoenig/libMultiRobotPlanning has 1,042 stars and 239 forks.
What is the repository rank?
whoenig/libMultiRobotPlanning is ranked 11,928.
What language and category are recorded?
whoenig/libMultiRobotPlanning has 1,042 stars, uses C++ and belongs to AI Engineering.
Which repository is closest in rank?
whoenig/libMultiRobotPlanning is compared with kunal12203/GrapeRoot, ranked 11,931 with 1,041 stars.
README
libMultiRobotPlanning
libMultiRobotPlanning is a library with search algorithms primarily for task and path planning for multi robot/agent systems.
It is written in C++(14), highly templated for good performance, and comes with useful examples.
The following algorithms are currently supported:
Single-Robot Algorithms
A*
A* epsilon (also known as focal search)
SIPP (Safe Interval Path Planning)
Multi-Robot Algorithms
Conflict-Based Search (CBS)
Enhanced Conflict-Based Search (ECBS)
Conflict-Based Search with Optimal Task Assignment (CBS-TA)
Enhanced Conflict-Based Search with Optimal Task Assignment (ECBS-TA)
Prioritized Planning using SIPP (example code for SIPP)
Assignment Algorithms
Minimum sum-of-cost (flow-based; integer costs; any number of agents/tasks)
Best Next Assignment (series of optimal solutions)
Building
Tested on Ubuntu 16.04.
mkdir build
cd build
cmake ..
make
Targets
make: Build examples, only
make docs: build doxygen documentation
make clang-format: Re-format all source files
make clang-tidy: Run linter & static code analyzer
CBS works on generalized graphs, with a particular focus on optional wait actions (e.g., this can be used with motion primitives as well).
However, the roadmap annotation and visualization step currently assume a 2D Euclidean embedding and straight-line edges.