/DeepACO

[NeurIPS 2023] DeepACO: Neural-enhanced Ant Systems for Combinatorial Optimization

Primary LanguageJupyter NotebookMIT LicenseMIT

[NeurIPS 2023] DeepACO: Neural-enhanced Ant Systems for Combinatorial Optimization

🥳 Welcome! This codebase accompanies the paper DeepACO: Neural-enhanced Ant Systems for Combinatorial Optimization.

🚀 Introduction

DeepACO is a generic framework that leverages deep reinforcement learning to automate heuristic designs. It serves to strengthen the heuristic measures of existing ACO algorithms and dispense with laborious manual design in future ACO applications.

diagram

🔑 Usage

Dependencies

Available Problems

  • Traveling Salesman Problem (TSP). Please refer to tsp/ for vanilla DeepACO and tsp_nls/ for DeepACO with NLS on TSP.
  • Capacitated Vehicle Routing Problem (CVRP). Please refer to cvrp/ for vanilla DeepACO and cvrp_nls/ for DeepACO with NLS on CVRP.
  • Orienteering Problem (OP). Please refer to op/.
  • Prize Collecting Travelling Salesman Problem (PCTSP). Please refer to pctsp/.
  • Sequential Ordering Problem (SOP). Please refer to sop/.
  • Single Machine Total Weighted Tardiness Problem (SMTWTP). Please refer to smtwtp/.
  • Resource-Constrained Project Scheduling Problem (RCPSP). Please refer to rcpsp/.
  • Multiple Knapsack Problem (MKP). Please refer to mkp/ for the implementation of pheromone model $PH_{suc}$ and mkp_transformer/ for that of $PH_{items}$.
  • Bin Packing Problem (BPP). Please refer to bpp/.

🎥 Resources

You may be interested in ReEvo: Large Language Models as Hyper-Heuristics with Reflective Evolution. ReEvo leverages large language models to automate heuristic designs under a reflective evolution framework. It outperforms DeepACO in terms of the scalability and generality of the heuristics.

🤩 Citation

If you encounter any difficulty using our code, please do not hesitate to submit an issue or directly contact us!

If you do find our code helpful (or if you would be so kind as to offer us some encouragement), please consider kindly giving a star, and citing our paper.

@inproceedings{ye2023deepaco,
  title={DeepACO: Neural-enhanced Ant Systems for Combinatorial Optimization},
  author={Ye, Haoran and Wang, Jiarui and Cao, Zhiguang and Liang, Helan and Li, Yong},
  booktitle={Advances in Neural Information Processing Systems},
  year={2023}
}