Sitagliptin MPO: same properties, different molecule
Find molecules unlike sitagliptin that keep its formula, logP and polar surface area, in 10,000 calls.
| 1 | # Sitagliptin MPO: same properties, different molecule |
| 2 | |
| 3 | A useful trick in medicinal chemistry is to keep a drug's physical profile while changing its structure, to escape patents or liabilities. This task formalises that: find molecules as dissimilar to sitagliptin as possible that still share its molecular formula, lipophilicity and polar surface area. |
| 4 | |
| 5 | ## Task |
| 6 | |
| 7 | Propose molecules as SMILES strings and maximise the sitagliptin multi-property objective, the geometric mean of four terms: dissimilarity to sitagliptin (Tanimoto over ECFC4 fingerprints, scored by a Gaussian centred at 0 with width 0.1), $\log P$ near 2.0165, topological polar surface area near 77.04 and agreement with the formula $\mathrm{C}_{16}\mathrm{H}_{15}\mathrm{F}_6\mathrm{N}_5\mathrm{O}$. Scored by AUC top-10 over a 10,000-call budget. |
| 8 | |
| 9 | ## Background |
| 10 | |
| 11 | The objective is one of the GuacaMol multi-property benchmarks of Brown and co-workers, here through the Therapeutics Data Commons; PMO notes that its implementation differs from GuacaMol's original, so numbers are comparable within PMO and not across the two. Because the four terms pull against each other, a geometric mean punishes any one failure, and this is the oracle where the PMO field collapses: the overall best method, REINVENT, scores 0.021 here while a simple genetic algorithm reaches 0.433. |
| 12 | |
| 13 | ## Data and evaluation |
| 14 | |
| 15 | - Data: there is no training set to fit. Any database a method needs is restricted to ZINC 250k, which ships |
| 16 | with the repository, so no method gets an advantage from a richer corpus. |
| 17 | - Budget and seeds: 10,000 oracle calls per run, and five independent runs with different random seeds |
| 18 | (`python run.py METHOD --task production --n_runs 5 --oracles sitagliptin_mpo`). Report the mean and standard deviation |
| 19 | over the runs. The budget counts distinct valid canonical SMILES: a molecule queried twice is served from the |
| 20 | cache for free, and an invalid SMILES scores 0. |
| 21 | - Metric: AUC top-10. The mean score of the ten best molecules found so far is recorded every 100 calls, the |
| 22 | curve against the number of calls is integrated by the trapezoid rule and divided by the 10,000-call budget, so |
| 23 | the value lands in $[0, 1]$ and higher is better. A run that stops early keeps its final top-10 value for the |
| 24 | rest of the budget. Unlike a plain top-10 average, the metric rewards reaching a good score early. |
| 25 | - Official evaluation code: <https://github.com/wenhao-gao/mol_opt> (MIT), where `main/optimizer.py` holds the |
| 26 | budget accounting and the AUC. Oracles come from the Therapeutics Data Commons via PyTDC (MIT); the ZINC |
| 27 | database is free to use. |
| 28 | |
| 29 | ## What is known |
| 30 | |
| 31 | - Best in the PMO paper's table: Graph GA at 0.433 ± 0.075, then STONED at 0.393 ± 0.083 and SMILES GA at 0.363 ± 0.057. |
| 32 | - REINVENT, the overall leader of the benchmark, scores 0.021 ± 0.003 here, and several strong methods are near zero, so this task is a counterexample to ranking methods by their average. |
| 33 | - Later work on the same protocol reports much higher: Mol GA at 0.677 ± 0.055 and Genetic GFN at 0.634 ± 0.039 (five runs, 10,000 calls), which means the task was far from its ceiling in 2022. |
| 34 | - A random screen of ZINC 250k scores 0.022, essentially nothing. |
| 35 | |
| 36 | ## What would count as progress |
| 37 | |
| 38 | - A mean AUC top-10 above 0.433 on `sitagliptin_mpo` from five runs under the official protocol, reported |
| 39 | with the per-run values and the standard deviation. To beat the field rather than the 2022 table, the number to |
| 40 | pass is 0.677 (Mol GA). |
| 41 | - The run logs, which record every scored molecule in order, so the AUC and the oracle-call count can be |
| 42 | recomputed rather than trusted. |
| 43 | - Code in the repository's method layout, so the result can be re-run on the other 22 oracles: a method that wins |
| 44 | on one oracle and loses elsewhere is the pattern PMO was built to expose. |
| 45 | |
| 46 | ## References |
| 47 | |
| 48 | 1. W. Gao, T. Fu, J. Sun and C. W. Coley, "Sample Efficiency Matters: A Benchmark for Practical Molecular Optimization", *NeurIPS 2022 Datasets and Benchmarks* (2022). <https://arxiv.org/abs/2206.12411> |
| 49 | 2. N. Brown, M. Fiscato, M. H. S. Segler and A. C. Vaucher, "GuacaMol: Benchmarking Models for de Novo Molecular Design", *Journal of Chemical Information and Modeling* **59**, 1096–1108 (2019). <https://doi.org/10.1021/acs.jcim.8b00839> |
| 50 | 3. J. H. Jensen, "A graph-based genetic algorithm and generative model/Monte Carlo tree search for the exploration of chemical space", *Chemical Science* **10**, 3567–3572 (2019). <https://doi.org/10.1039/C8SC05372C> |
| 51 | 4. A. Tripp and J. M. Hernández-Lobato, "Genetic algorithms are strong baselines for molecule generation" (2023). <https://arxiv.org/abs/2310.09267> |
| 52 | 5. H. Kim, M. Kim, S. Choi and J. Park, "Genetic-guided GFlowNets for Sample Efficient Molecular Optimization", *NeurIPS 2024* (2024). <https://arxiv.org/abs/2402.05961> |
| 53 | 6. K. Huang et al., "Artificial intelligence foundation for therapeutic science", *Nature Chemical Biology* **18**, 1033–1036 (2022); the Therapeutics Data Commons, which supplies the oracle implementations. <https://doi.org/10.1038/s41589-022-01131-2> |
| 54 | |
| 55 | ## Source |
| 56 | |
| 57 | Imported from [PMO (mol_opt), the `sitagliptin_mpo` oracle](https://github.com/wenhao-gao/mol_opt), curated by Wenhao Gao, Tianfan Fu, Jimeng Sun |
| 58 | and Connor W. Coley. Open according to the source as of 2026-10-20. The statement above is written in our own |
| 59 | words; see the source for the original wording, history and discussion. |