Log-solubility (logP)#
About#
This objective function returns the partition coefficient of a solute between octanol and water (known as logP) using RDKit
[RDKit, 2006]. You can specify whether you are measuring the logP of a SMILES string, or a SELFIES.
Prerequisites#
None. This black box should work out-of-the-box.
How to run#
import numpy as np
from poli.objective_repository import LogPProblemFactory, LogPBlackBox
# Creating the black box
f = LogPBlackBox(string_representation="SMILES")
# Creating a problem
problem = LogPProblemFactory().create(string_representation="SMILES")
f, x0 = problem.black_box, problem.x0
# Example input: a single carbon
x = np.array(["C"]).reshape(1, -1)
# Querying:
y = f(x)
print(y) # Should be close to 0.6361
How to cite#
If you use this black box, we expect you to cite the following resources:
[1] RDKit community. (2006). RDKit: Open-source cheminformatics. GitHub. Available at: rdkit/rdkit. Accessed on 12th of April, 2024.
[2] González-Duque, M., Bartels, S., & Michael, R. (2024). poli: a libary of discrete sequence objectives [Computer software]. MachineLearningLifeScience/poli
@misc{rdkit,
author = {RDKit},
title = {RDKit: Open-source cheminformatics},
year = {2006},
publisher = {GitHub},
journal = {GitHub repository},
howpublished = {\url{https://github.com/rdkit/rdkit}}
}
@software{Gonzalez-Duque:poli:2024,
author = {González-Duque, Miguel and Bartels, Simon and Michael, Richard},
month = jan,
title = {{poli: a libary of discrete sequence objectives}},
url = {https://github.com/MachineLearningLifeScience/poli},
version = {0.0.1},
year = {2024}
}