A key factor in computational drug design is the consistency and reliability with which intermolecular interactions between a wide variety of molecules can be described. Here we present a procedure to efficiently, reliably and automatically assign partial atomic charges to atoms based on known distributions. We formally introduce the molecular charge assignment problem, where the task is to select a charge from a set of candidate charges for every atom of a given query molecule. Charges are accompanied by a score that depends on their observed frequency in similar neighbourhoods (chemical environments) in a database of previously parameterised molecules. The aim is to assign the charges such that the total charge equals a known target charge within a margin of error while maximizing the sum of the charge scores. We show that the problem is a variant of the well-studied multiple-choice knapsack problem and thus weakly NP-complete. We propose solutions based on Integer Linear Programming and a pseudo-polynomial time Dynamic Programming algorithm. We show that the results obtained for novel molecules not included in the database are comparable to the ones obtained performing explicit charge calculations while decreasing the time to determine partial charges for a molecule by several orders of magnitude, that is, from hours or even days to below a second. Our software is openly available at https://github.com/enitram/charge_assign.

, , , ,
L. Parida (Laxmi) , E. Ukkonen (Esko)
Schloss Dagstuhl, Germany
Leibniz International Proceedings in Informatics
Enhancing protein-drug binding prediction
International Workshop on Algorithms in Bioinformatics
Evolutionary Intelligence

Engler, M., Caron, B., Veen, L., Geerke, D. P., Mark, A., & Klau, G. (2018). Multiple-choice knapsack for assigning partial atomic charges in drug-like molecules. In L. Parida & E. Ukkonen (Eds.), Leibniz International Proceedings in Informatics (pp. 16:1–16:13). doi:10.4230/LIPIcs.WABI.2018.16