Skip to content

lamda-bbo/RIBBO

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Reinforced In-Context Black-Box Optimization

This repository contains the Python code for Reinforced In-Context Black-Box Optimization (RIBBO), a method to reinforce-learn a BBO algorithm from offline data in an end-to-end fashion.

Requirements

  • Python == 3.10
  • PyTorch == 2.0.1
  • offlinerllib==0.1.1
  • utilsrl==0.6.3
  • google-vizier==0.1.9
  • gpytorch==1.11
  • botorch=0.9.4

File Structure

  • algorithms directory is the main implement of RIBBO, BC, BC Filter, and OptFormer
  • data_gen directory is the implement of behavior algorithms and data collection
  • datasets directory provides the interface of the offline datasets
  • problems directory is the implement of the benchmark problems
  • scripts directory provides some scripts for reproduction

Usage

Run bash scripts/run_main.sh to evaluate RIBBO and other baselines

Datasets

The datasets are generated by using codes in data_gen directory. Run bash scripts/run_data_gen.sh to generate the datasets parallely.

Citation

@inproceedings{RIBBO,
    author = {Lei Song, Chenxiao Gao, Ke Xue, Chenyang Wu, Dong Li, Jianye Hao, Zongzhang Zhang, Chao Qian},
    title = {Reinforced In-Context Black-Box Optimization},
    booktitle = {Proceedings of the 34th International Joint Conference on Artificial Intelligence (IJCAI'25)},
    year = {2025},
    address={Montreal, Canada}
}

About

Official implementation of IJCAI'25 paper "Reinforced In-Context Black-Box Optimization"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •