Catalog PyPI
PACKAGE EXPLORERView in registry

aell

PyPI

Algorithm Evolution using Large Language Model

Versions collected1
Direct dependencies0From release 0.0.1
Last observed20 Oct, 20:23 UTC

README

Version 0.0.1 documentation

AEL: Algorithm Evolution using Large Language Model

[![Github][Github-image]][Github-url] [![License][License-image]][License-url] [![Releases][Releases-image]][Releases-url] [![Web Demo][Installation-image]][Web Demo-url] [![Wiki][Wiki-image]][Wiki-url]

This code provides a framework for **Evolutionary Computation** + **Large Language Model** for automatic algorithm design. ael

Introduction

If you are interested on LLM&Opt or AEL, you can:

  1. Join LLM4Opt in Slack,
  2. Join Wechat Group,
  3. Contact us through email.

If you encounter any difficulty using the code, you can contact use thought the above or submit an [issue]

Our implementation of FunSearch, Deepmind as the baseline, can be found here

A Quick Web Demo

A Quick Web Demo can be found here

Examples using AEL

Step 1: Install AEL

cd ael

pip install .

Step 2: Try Example: Greedy Algorithm for TSP

cd ael/examples/greedy_tsp

python runAEL.py

More Examples using AEL (Code & Paper)

Combinatorial Optimization

  1. Online Bin Packing, greedy heuristic, code, [paper]
  2. TSP, construct heuristic, code, [paper]
  3. TSP, guided local search, [code], [paper]
  4. Flow Shop Scheduling Problem (FSSP), guided local search, [code], [paper]

Machine Learning

  1. Attack, , code, paper

Bayesian Optimization

Use AEL in You Application

A Step-by-step guide is provided in here

Files in ael

  • ael.py: main ael
  • ec:
    • interface_EC.py: interface for ec
    • evolution.py: evolution operators
    • management.py: population management
    • selection.py: parents selection
  • llm
    • interface_LLM.py: interface for LLM
    • api_api2d.py: api2d api for GPT
    • others
  • utils:
    • some util functions

Current support:

  • ECs:
    • 1i: design a new algorithm without any in-context inf.
    • e1: design an algorithm totally different from existing ones
    • e2: identify the common patterns in existing algorithms, design a new algorithm
    • m1: design a new algorithm modified from existing one
    • m2: do not design new algorithm, try different parameter settings
  • LLMs:
    • API2D (https://api2d.com/) or OpenAI interface for GPT3.5 and GPT4. (Paid)
    • Huggingface interface (Free), in testing
    • Local model Llama2, in testing
    • If you want to use other LLM or if you want to use your own GPT API or local LLMs, please add your interface in ael/llm
  • population management:
    • delete worst
  • selection:
    • probability

Reference Papers

  1. AEL: "Fei Liu, Xialiang Tong, Mingxuan Yuan, and Qingfu Zhang, Algorithm Evolution Using Large Language Model. arXiv preprint arXiv:2311.15249. 2023." https://arxiv.org/abs/2311.15249
  2. Guided Local Search: "Fei Liu, Xialiang Tong, Mingxuan Yuan, Xi Lin, Fu Luo, Zhenkun Wang, Zhichao Lu, and Qingfu Zhang, An Example of Evolutionary Computation+ Large Language Model Beating Human: Design of Efficient Guided Local Search" https://arxiv.org/abs/2401.02051
  3. Adversarial Attacks: Pin Guo, Fei Liu, Xi Lin, Qingchuan Zhao, and Qingfu Zhang, L-AutoDA: Leveraging Large Language Models for Automated Decision-based Adversarial Attacks. arXiv preprint arXiv:2401.15335. 2024.

License

MIT

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.0.127 Feb 20240

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
feiliu36/ael

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 20:23 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:19d61d963cbffd6af352236e29da08678ab6329d2f54d92d07729c87612e1034