Skip to content

aspuru-guzik-group/ORGANIC

Repository files navigation

ORGANIC

ORGANIC (Objective-Reinforced Generative Adversarial Network for Inverse-design Chemistry) is an efficient molecular generation tool, able to create molecules with desired properties. It has a user-oriented interface, and doesn't require a HPC cluster. Feel free to check our article about ORGANIC and/or contact the developers if you have any issue or are interested in collaborations.

This implementation is authored by Carlos Outeiral (carlos@outeiral.net), Benjamin Sanchez-Lengeling (beangoben@gmail.com), Gabriel Guimaraes (gabrielguimaraes@college.harvard.edu) and Alan Aspuru-Guzik (alan@aspuru.com), affiliated to Harvard University, Department of Chemistry and Chemical Biology, at the time of release.

Installation

How-to

To install, just clone our repo:

git clone https://github.com/aspuru-guzik-group/ORGANIC.git

And, it is done!

Requirements

  • tensorflow==1.2
  • future==0.16.0
  • rdkit
  • keras
  • numpy
  • scipy
  • pandas
  • tqdm
  • pymatgen

How to use

ORGANIC has been carefully designed to be simple, while still allowing full customization of every parameter in the models. Have a look at a minimal example of our code:

model = ORGANIC('OPVs')                     # Loads a ORGANIC with name 'OPVs'
model.load_training_set('opv.smi')          # Loads the training set (molecules encoded as SMILES)
model.set_training_program(['PCE'], [50])   # Sets the training program as 50 epochs with the PCE metric
model.load_metrics()                        # Loads all the metrics
model.train()                               # Proceeds with the training

If you are interested, we encourage you to read our '20 minutes to ORGANIC' tutorial, where you can learn all (literally, all) the functionalities of ORGANIC.

About

Code repo for optimizing distributions of molecules.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published