https://github.com/ai4co/parco

PARCO: Parallel AutoRegressive Combinatorial Optimization

https://github.com/ai4co/parco

Science Score: 36.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
    Found .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 (13.8%) to scientific vocabulary

Keywords

ai4co combinatorial-optimization neural-combinatorial-optimization rl4co scheduling transformers vehicle-routing
Last synced: 5 months ago · JSON representation

Repository

PARCO: Parallel AutoRegressive Combinatorial Optimization

Basic Info
Statistics
  • Stars: 20
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
ai4co combinatorial-optimization neural-combinatorial-optimization rl4co scheduling transformers vehicle-routing
Created over 1 year ago · Last pushed 10 months ago
Metadata Files
Readme License

README.md

PARCO

arXiv Slack License: MIT HuggingFace Dataset HuggingFace Models

Code repository for "PARCO: Learning Parallel Autoregressive Policies for Efficient Multi-Agent Combinatorial Optimization"

Autoregressive policy (AR) and Parallel Autoregressive (PAR) decoding


PARCO Model

🚀 Usage

Installation

We use uv for fast installation and dependency management:

bash uv venv source .venv/bin/activate uv sync --all-extras

To download the data and checkpoints from HuggingFace automatically, you can use:

bash python scripts/download_hf.py

Quickstart Notebooks

We made examples for each problem that can be trained under two minutes on consumer hardware. You can find them in the examples/ folder:

Train your own model

You can train your own model using the train.py script. For example, to train a model for the HCVRP problem, you can run:

bash python train.py experiment=hcvrp

you can change the experiment parameter to omdcpdp or ffsp to train the model for the OMDCPDP or FFSP problem, respectively.

Note on legacy FFSP code: the initial version we made was not yet integrated in RL4CO, so we left it the parco/tasks/ffsp_old folder, so you can still use it.

Testing

You may run the test.py script to evaluate the model, e.g. with greedy decoding:

bash python test.py --problem hcvrp --decode_type greedy --batch_size 128

(note: we measure time with single instance -- batch size 1, but larger makes the overall evaluation faster), or with sampling:

bash python test.py --problem hcvrp --decode_type sampling --batch_size 1 --sample_size 1280

Other scripts

  • Data generation: We also include scripts to re-generate data manually (reproducible via random seeds) with python scripts/generate_data.py.

  • OR-Tools: We additionally include a script to solve the problem using OR-Tools with python scripts/run_ortools.py.

🤩 Citation

If you find PARCO valuable for your research or applied projects:

bibtex @article{berto2024parco, title={{PARCO: Learning Parallel Autoregressive Policies for Efficient Multi-Agent Combinatorial Optimization}}, author={Federico Berto and Chuanbo Hua and Laurin Luttmann and Jiwoo Son and Junyoung Park and Kyuree Ahn and Changhyun Kwon and Lin Xie and Jinkyoo Park}, year={2024}, journal={arXiv preprint arXiv:2409.03811}, note={\url{https://github.com/ai4co/parco}} }

We will also be happy if you cite the RL4CO framework that we used to create PARCO:

bibtex @article{berto2024rl4co, title={{RL4CO: an Extensive Reinforcement Learning for Combinatorial Optimization Benchmark}}, author={Federico Berto and Chuanbo Hua and Junyoung Park and Laurin Luttmann and Yining Ma and Fanchen Bu and Jiarui Wang and Haoran Ye and Minsu Kim and Sanghyeok Choi and Nayeli Gast Zepeda and Andr\'e Hottung and Jianan Zhou and Jieyi Bi and Yu Hu and Fei Liu and Hyeonah Kim and Jiwoo Son and Haeyeon Kim and Davide Angioni and Wouter Kool and Zhiguang Cao and Jie Zhang and Kijung Shin and Cathy Wu and Sungsoo Ahn and Guojie Song and Changhyun Kwon and Lin Xie and Jinkyoo Park}, year={2024}, journal={arXiv preprint arXiv:2306.17100}, note={\url{https://github.com/ai4co/rl4co}} }


AI4CO Logo

Owner

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

GitHub Events

Total
  • Watch event: 7
  • Push event: 4
  • Fork event: 1
Last Year
  • Watch event: 7
  • Push event: 4
  • Fork event: 1

Issues and Pull Requests

Last synced: 5 months ago

All Time
  • Total issues: 1
  • Total pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Total issue authors: 1
  • Total pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 1
  • Pull requests: 0
  • Average time to close issues: N/A
  • Average time to close pull requests: N/A
  • Issue authors: 1
  • Pull request authors: 0
  • Average comments per issue: 0.0
  • Average comments per pull request: 0
  • Merged pull requests: 0
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • JY00002 (1)
Pull Request Authors
Top Labels
Issue Labels
Pull Request Labels