This repository provides a tutorial on using hierarchical coarse-grained models and multi-level Bayesian optimization for molecular discovery. While the example system is simple, the underlying methods are broadly applicable to more complex systems and larger molecules.
The tutorial is based on the paper Navigating Chemical Space: Multi-Level Bayesian Optimization with Hierarchical Coarse-Graining.
To run the tutorial, clone this repository:
git clone https://github.com/BereauLab/Molecule-Optimization-w-Hierarchical-Coarse-Graining.git
cd Molecule-Optimization-w-Hierarchical-Coarse-GrainingNext, a few dependencies are required:
-
GROMACS: This program is used to run molecular dynamics simulations. See this page for installation instructions.
-
Python packages: The provided
requirements.txtfile lists the necessary Python packages. You can install them using pip:pip install -r requirements.txt
It is recommended to use Python 3.11 and to create a virtual environment, e.g. using
venvoruv.
To run the tutorial, launch the Jupyter notebook Tutorial_on_Coarse_Grained_Molecular_Optimization.ipynb in a Jupyter environment, e.g. using the command:
jupyter lab Tutorial_on_Coarse_Grained_Molecular_Optimization.ipynb