Поиск на основе конфликтов (CBS) - это очень эффективный оптимальный алгоритм MAPF. CBS имеет два уровня. Низкоуровневый находит оптимальные пути для отдельных агентов. Если пути включают конфликты, высокий уровень посредством разделенного действия накладывает ограничения на конфликтующих агентов, чтобы избежать этих конфликтов. В этой репе мы реализуем CBS и ее улучшения CBSH, CBS Disjoint Splitting, CBS Prioritizing Conflicts
Можно протестировать один из них через файл main. Флаг --file_name нужен для выбора файла с картой и --solver (default CBS, CBSH, CBS_CP, CBS_DS) для выбора алгоритма
В --file_name мы прописываем txt файл, в формате
height width
map
count_of_agent
agent_1_start_point_i agent_1_start_point_j agent_1_goal_point_i agent_1_goal_point_j
...
Пример
4 7
@ @ @ @ @ @ @
@ . . . . . @
@ @ @ . @ @ @
@ @ @ @ @ @ @
2
1 1 1 5
1 2 1 4
Работали над проектом: Петров Леонид, Ибрагимов Артем и Никитин Максим