https://github.com/ai4co/eph-mapf

[IROS'24] EPH: Ensembling Prioritized Hybrid Policies for Multi-agent Pathfinding

https://github.com/ai4co/eph-mapf

Science Score: 23.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: arxiv.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (16.2%) to scientific vocabulary

Keywords

combinatorial-optimization mapf multi-agent-pathfinding multi-agent-reinforcement-learning multi-agent-systems neural-combinatorial-optimization pathfinding reinforcement-learning
Last synced: 5 months ago · JSON representation

Repository

[IROS'24] EPH: Ensembling Prioritized Hybrid Policies for Multi-agent Pathfinding

Basic Info
Statistics
  • Stars: 11
  • Watchers: 2
  • Forks: 6
  • Open Issues: 0
  • Releases: 0
Topics
combinatorial-optimization mapf multi-agent-pathfinding multi-agent-reinforcement-learning multi-agent-systems neural-combinatorial-optimization pathfinding reinforcement-learning
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme

README.md

EPH: Ensembling Prioritized Hybrid Policies for Multi-agent Pathfinding

arXiv Slack[License: MIT] Open In Colab

image

News: EPH has been accepted at IROS 2024 ! AI4CO Logo

Usage

Installation

[Optional] create a virtual environment: bash conda create -n eph python=3.11 conda activate eph

Install the repo locally (with requirements listed in pyproject.toml): bash pip install -e '.[all]' Note: remove [all] if you don't want to install the optional dependencies.

Configuration

To train and test we need to load the configuration file. under configs/ you can find the default configuration file eph.py. To change the configuration or create a new one, you can use export the "CONFIG" environment variable as the desired configuration name without the .py extension: bash export CONFIG=eph

Training

To train the model, you can use the following command: bash python train.py

Testing

To test the model, you can use the following command: bash python test.py

Configurations

We made the configuration loading dynamic, so multiple configurations are allowed for different experiments under configs/.

Before running any script, you can change which configuration to load by changing the CONFIG_NAME variable in the config.py file: python CONFIG_NAME = 'eph' For example, the above will load the default configuration file configs/eph.py.

Changing model

To change the model, we made sure that the model path is loaded from the configuration file.

You can change the target by: model_target = "model.Network"

This will load the Network class from the model.py module.

Data generation

Go to src/data/ and follow the instructions in the README.md for generating the MovingAI's test set.

Acknowledgements

Our codebase is heavily based on DHC (https://github.com/ZiyuanMa/DHC) and DCC (https://github.com/ZiyuanMa/DCC). We used some inspiration from SCRIMP for our communication block (https://github.com/marmotlab/SCRIMP) and reimplemented structured maps experiments of MovingAI datasets from SACHA (https://github.com/Qiushi-Lin/SACHA).

We are also looking into implementing MAPF in some modern platform (i.e. TorchRL enviroments and integration with RL4CO) once we have some bandwidth to do so!


https://github.com/ai4co/eph-mapf/assets/48984123/9d3cd421-1460-4a2f-aaa4-11908c5b666c


Citation

If you find our code or work (or hopefully both!) helpful, please consider citing us:

bibtex @inproceedings{tang2024eph, title={Ensembling Prioritized Hybrid Policies for Multi-agent Pathfinding}, author={Tang, Huijie and Berto, Federico and Park, Jinkyoo}, booktitle={2024 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS)}, organization={IEEE}, year={2024}, note={\url{https://github.com/ai4co/eph-mapf}} }

Owner

  • Name: ai4co
  • Login: ai4co
  • Kind: organization

GitHub Events

Total
  • Issues event: 3
  • Watch event: 20
  • Issue comment event: 3
  • Fork event: 1
Last Year
  • Issues event: 3
  • Watch event: 20
  • Issue comment event: 3
  • Fork event: 1

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 2
  • Total pull requests: 0
  • Average time to close issues: about 24 hours
  • Average time to close pull requests: N/A
  • Total issue authors: 2
  • Total pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 2
  • Pull requests: 0
  • Average time to close issues: about 24 hours
  • Average time to close pull requests: N/A
  • Issue authors: 2
  • Pull request authors: 0
  • Average comments per issue: 1.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • BlueTuox23 (1)
  • 21ning (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels

Dependencies

pyproject.toml pypi
  • hydra-core *
  • matplotlib *
  • numpy *
  • ray *
  • rich *
  • torch *
  • tqdm *
  • wandb *
src/od_mstar3/setup.py pypi