# MOGFN-AL

This code extends LaMBO [Accelerating Bayesian Optimization for Biological Sequence Design with Denoising Autoencoders](https://arxiv.org/abs/2203.12742) with MOGFN-AL for candidate.

FoldX is need to run the experiments
[FoldX](https://foldxsuite.crg.eu/academic-license-info) is available under a free academic license. 
After creating an account you will be emailed a link to download the FoldX executable and supporting assets.
Copy the contents of the downloaded archive to `~/foldx`.
You may also need to rename the FoldX executable (e.g. `mv -v ~/foldx/foldx_20221231 ~/foldx/foldx`).


Due to the size limit on the zip file, we also omit the assets from the LaMBO repository. Please download [`lambo/assets`](https://github.com/samuelstanton/lambo/tree/main/lambo/assets) and place it in the `lambo/assets` directory.

Example command
```bash
python scripts/black_box_opt.py optimizer=mogfn_seq optimizer.encoder_obj=mlm task=proxy_rfp tokenizer=protein surrogate=multi_task_exact_gp acquisition=nehvi
```


## Citation
```
@misc{stanton2022accelerating,
      title={Accelerating Bayesian Optimization for Biological Sequence Design with Denoising Autoencoders}, 
      author={Samuel Stanton and Wesley Maddox and Nate Gruver and Phillip Maffettone and Emily Delaney and Peyton Greenside and Andrew Gordon Wilson},
      year={2022},
      eprint={2203.12742},
      archivePrefix={arXiv},
      primaryClass={cs.LG}
}
```