FMCS: a novel algorithm for the multiple MCS problem
© Dalke and Hastings; licensee BioMed Central Ltd. 2013
Published: 22 March 2013
Clustering and classification of large-scale chemical data are essential for navigation, analysis and knowledge discovery in a wide variety of chemical application domains. The maximum common structure (MCS) for a group of compounds is an important element of such classification, providing insight into activity patterns and enabling scaffold alignment for a more consistent 2D depiction. Most modern, exact MCS implementations use back-tracking  or clique detection , and handle the multiple MCS problem by recursive reduction to successive pairwise maximal common substructure searches . We present fmcs, which implements a novel multiple MCS algorithm based on subgraph enumeration and subgraph isomorphism testing [4, 5] and with algorithm improvements and heuristics which make it competitive to the standard methods. MCS performance evaluation is very sensitive to the test set, so we have developed several reference benchmarks based on ChEMBL-13, including randomly selected pairs of structures, and randomly selected structures with their k = 2, k = 10, and k = 100 nearest neighbors. We use these benchmarks to compare fmcs to SMSD  and Indigo's scaffold detector . Most differences are due to chemistry perception and timeout errors. The fmcs performance, written in Python using the RDKit C++ toolkit , is currently between 0.3x and 1.2x the performance of the Indigo implementation in C++. We also cross-validated the fmcs algorithm with the manually curated ChEBI structure ontology classification  and characterized the differences. We identified limitations with fmcs, such as with tautomer perception and structural classes that fmcs cannot handle, and problems with ChEBI, such as misclassifications and classifications that are not, structurally speaking, strictly hierarchical.
- McGregor JJ: Backtrack Search Algorithms and the Maximal Common Subgraph Problem. Software-Practice and Experience. 1982, 12: 23-34. 10.1002/spe.4380120103.View ArticleGoogle Scholar
- Raymond JW, Willett P: Maximum common subgraph isomorphism algorithms for the matching of chemical structures. J Comp Aid Mol Des. 2002, 16: 521-533. 10.1023/A:1021271615909.View ArticleGoogle Scholar
- Hariharan R, Janakiraman A, Nilakantan R, Singh B, Varghese S, Landrum G, Schuffenhauer A: MultiMCS: A Fast Algorithm for the Maximum Common Substructure Problem on Multiple Molecules. J Chem Inf Mod. 2011, 51: 788-806. 10.1021/ci100297y.View ArticleGoogle Scholar
- Varkony T, Shiloach Y, Smith D: Computer-Assisted Examination of Chemical Compounds for Structural Similarities. J Chem Inf Comp Sci. 1979, 19: 104-111. 10.1021/ci60018a014.View ArticleGoogle Scholar
- Takahashi Y, Satoh Y, Suzuki H, Sasaki S: Recognition of Largest Structural Fragment among a Variety of Chemical Structures. Anal Sci. 1987, 3: 23-28. 10.2116/analsci.3.23.View ArticleGoogle Scholar
- Rahman SA, Holliday GL, Schrader R, Thornton JM: Small Molecule Subgraph Detector (SMSD) Toolkit. J Cheminf. 2009, 1: 12-10.1186/1758-2946-1-12.View ArticleGoogle Scholar
- Indigo cheminformatics library. [http://ggasoftware.com/opensource/indigo/]
- RDKit cheminformatics library. [http://rdkit.org/]
- Degtyarenko K, de Matos P, Ennis M, Hastings J, Zbinden M, McNaught A, Alcántara R, Darsow M, Guedj M, Ashburner M: ChEBI: a database and ontology for chemical entities of biological interest. Nucleic Acids Res. 2008, 36: D344-D350.View ArticleGoogle Scholar
This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.