## ๐ฅ News
+ 2026.02 ๐๐ **New Champion!** Our LLM4AD system won the [CVRPLib BKS competition](https://galgos.inf.puc-rio.br/cvrplib/index.php/en/bks_challenge/score/) and established **51 new Best Known Solutions** on large-scale CVRP benchmarks.
+ 2026.01 ๐๐ Our Survey Paper ["A Systematic Survey on Large Language Models for Algorithm Design"](https://arxiv.org/pdf/2410.14716) has been accepted by [**ACM Computing Surveys**](https://dl.acm.org/journal/csur) ! A Rep for the Survey can be found [here](https://github.com/FeiLiu36/LLM4AlgorithmDesign)
+ 2025.6 ๐๐ We're excited to share that **EoH** recently set a **New World Record in Circle Packing Problem**, achieving a score of 2.63594 for 26 circles ! [Results here](https://github.com/Optima-CityU/llm4ad/tree/main/example/circle_packing)
+ 2025.6 ๐๐ **LLM4AD** at [**CEC 2025 Tutorial**](https://www.researchgate.net/publication/392654766_CEC_2025_Tutorial_Automated_Algorithm_Design_with_Large_Language_Model) !
+ 2025.3 ๐๐ **LLM4AD** at [**EMO 2025 Tutorial**](https://www.researchgate.net/publication/392655029_EMO_2025_Tutorial_Algorithm_Design_Using_Large_Language_Model) !
+ 2024.12 ๐๐ **LLM4AD paper Released** [โLLM4AD: A Platform for Algorithm Design with Large Language Model"](https://arxiv.org/pdf/2412.17287) !
+ 2024.11 ๐๐ **LLM4AD v1.0 Released** !
+ 2024.10 ๐๐ **Survey Paper** [โA Systematic Survey on Large Language Models for Algorithm Designโ](https://arxiv.org/pdf/2410.14716) is online !
## ๐ก Features of our package
| Feature | Support / To be supported |
| ------------------------------------------------------------ | ------------------------- |
| **Unified Interfaces** for methods, tasks, LLMs | ๐ฅSupport |
| **Evaluation acceleration:** multiprocessing evaluation | ๐ฅSupport |
| **Secure Evaluation:** main process protection, timeout interruption | ๐ฅSupport |
| **Logs:** local logs, Wandb and Tensorboard support | ๐ฅSupport |
| **GUI:** methods selection, tasks selection, convergence, best algorithm, ... | ๐ฅSupport |
| **Resume run** | ๐ฅSupport |
| Support other programming languages | ๐Coming soon |
| More search methods | ๐Coming soon |
| More task examples | ๐Coming soon |
## ๐ Requirements & Installation
> [!Important]
> The Python version **MUST** be larger or equal to Python 3.9, and less than Python 3.13.
> [!Important]
> If you are testing machine learning tasks or using GUI, please install gym via `pip install gym`.
> Please note that the gym version may be conflict with your own Python environment, please refer to gym's docs to obtain appropriate version.
- Please refer to [requirements.txt](./requirements.txt)
- Please install `numba` (if you want to use Numba accelerate)
- Please install `tensorboard` (if you want to use a Tensorboard logger)
- Please install `wandb` (if you want to use wandb logger)
- Please install `gym` (if you want to try **GUI**, and **Machine Learning** tasks)
- Please install `pandas` (if you want to try **Science Discovery** tasks)
- Please install all required packages in [requirements.txt](./requirements.txt) (if you want to use GUI)
### Install LLM4AD locally
We suggest to install and run LLM4AD in [conda](https://conda.io/projects/conda/en/latest/index.html) env with python>=3.9, <3.13
```bash
$ cd LLM4AD
$ pip install .
```
### Install LLM4AD using PiPy
We suggest to install and run LLM4AD in [conda](https://conda.io/projects/conda/en/latest/index.html) env with python>=3.9, <3.13
```bash
$ pip install llm4ad
```
## ๐ป Example Usage
### Quick Start:
> [!Note]
> Configure your LLM api before running the script. For example:
>
> 1) Set `host`: 'api.deepseek.com'
> 2) Set `key`: 'your api key'
> 3) Set `model`: 'deepseek-chat'
```python
from llm4ad.task.optimization.online_bin_packing import OBPEvaluation
from llm4ad.tools.llm.llm_api_https import HttpsApi
from llm4ad.method.eoh import EoH, EoHProfiler
if __name__ == '__main__':
llm = HttpsApi(
host='xxx', # your host endpoint, e.g., api.openai.com, api.deepseek.com
key='sk-xxx', # your key, e.g., sk-xxxxxxxxxx
model='xxx', # your llm, e.g., gpt-3.5-turbo, deepseek-chat
timeout=20
)
task = OBPEvaluation()
method = EoH(
llm=llm,
profiler=EoHProfiler(log_dir='logs/eoh', log_style='simple'),
evaluation=task,
max_sample_nums=20,
max_generations=10,
pop_size=4,
num_samplers=1,
num_evaluators=1,
debug_mode=False
)
method.run()
```
### More Examples:
+ [Constructive Heuristics for TSP](https://github.com/Optima-CityU/LLM4AD/blob/main/example/tsp_construct/run_eoh.py)
+ [Constructive Heuristics for VRPTW](https://github.com/Optima-CityU/LLM4AD/blob/main/example/vrptw_construct/run_eoh.py)
+ ...
Check [Documents](https://llm4ad-doc.readthedocs.io/en/latest/index.html) for more tasks and examples
### GUI usage:
> [!Important]
> Install all required packages in [requirements.txt](./requirements.txt) for GUI usage.
```shell
$ cd GUI
$ python run_gui.py
```
Check [GUI Introduction](https://llm4ad-doc.readthedocs.io/en/latest/getting_started/gui.html) for more information
## ๐ฆ LLM4AD Search Methods
| Methods | Paper title |
| --------------------------------- | ------------------------------------------------------------ |
| **EoH** | [Evolution of Heuristics: Towards Efficient Automatic Algorithm Design Using Large Language Model](https://openreview.net/pdf?id=BwAkaxqiLB) (ICML 2024)
5. Contact us through email fliu36-c@my.cityu.edu.hk
6. Submit an [issue](https://github.com/Optima-CityU/LLM4AD)
## Contributors
Any new ideas, features, and improvements are welcomed!
You can contribute to LLM4AD follow our ๐ [Contribution Guide](https://github.com/Optima-CityU/llm4ad/tree/main/assets/contribution.md).
Thank you for contributing to LLM4AD and welcome to being part of the LLM4AD community! :sparkles:
Fei Liu |
![]() Kai Li |
Rui Sun |
Julian XIE |
Shunyu Yao |
Rui Zhang |
Weiwei Sun |
Zhi Zheng |
Qinglong Hu |