Skip to content

Repository files navigation

lacam0

MIT License CI

This repository provides a basic implementation of LaCAM for multi-agent pathfinding (MAPF). The code has been cleaned up and refactored from the original repositories with the aim of making LaCAM easier to extend. See "Implemented Techniques" to find out what has been implemented. For advanced one, please check the project page.

Building

All you need is CMake (≥v3.16). The code is written in C++(17).

First, clone this repo with submodules.

git clone --recursive {this repo}

Then, build the project.

cmake -B build && make -C build -j4

Usage

build/main -i assets/random-32-32-10-random-1.scen -m assets/random-32-32-10.map -N 400 -v 3

The result will be saved in build/result.txt.

You can find details of all parameters with:

build/main --help

Visualizer

This repository is compatible with kei18@mapf-visualizer. For example,

mapf-visualizer assets/random-32-32-10.map build/result.txt

Implemented Techniques

Roadmaps

I may integrate the following techniques:

Experiment Utilities

You can use kei18@mapf-lib-exp, written in Julia.

Setup

git submodule add git@github.com:Kei18/mapf-lib-exp.git scripts
sh scripts/setup.sh

Usage

julia --project=scripts/ --threads=auto
> include("scripts/eval.jl"); main("scripts/config/mapf-bench.yaml")

The results will be stored in ../data

License

This software is released under the MIT License, see LICENSE.txt.

Notes

install pre-commit for formatting

pre-commit install

simple test

ctest --test-dir ./build

Releases

Packages

Contributors

Languages