<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Publishing DTD v1.2 20190208//EN" "http://jats.nlm.nih.gov/publishing/1.2/JATS-journalpublishing1.dtd"><article xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:xlink="http://www.w3.org/1999/xlink" article-type="research-article" dtd-version="1.2" xml:lang="en">
    <front>
        <journal-meta>
            <journal-id journal-id-type="pmc">F1000Research</journal-id>
            <journal-title-group>
                <journal-title>F1000Research</journal-title>
            </journal-title-group>
            <issn pub-type="epub">2046-1402</issn>
            <publisher>
                <publisher-name>F1000 Research Limited</publisher-name>
                <publisher-loc>London, UK</publisher-loc>
            </publisher>
        </journal-meta>
        <article-meta>
            <article-id pub-id-type="doi">10.12688/f1000research.12228.1</article-id>
            <article-categories>
                <subj-group subj-group-type="heading">
                    <subject>Research Article</subject>
                </subj-group>
                <subj-group>
                    <subject>Articles</subject>
                    <subj-group>
                        <subject>Bioinformatics</subject>
                    </subj-group>
                    <subj-group>
                        <subject>Macromolecular Chemistry</subject>
                    </subj-group>
                </subj-group>
            </article-categories>
            <title-group>
                <article-title>Exploring differential evolution for inverse QSAR analysis</article-title>
                <fn-group content-type="pub-status">
                    <fn>
                        <p>[version 1; peer review: 3 approved]</p>
                    </fn>
                </fn-group>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Miyao</surname>
                        <given-names>Tomoyuki</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Data Curation</role>
                    <role content-type="http://credit.niso.org/">Formal Analysis</role>
                    <role content-type="http://credit.niso.org/">Investigation</role>
                    <role content-type="http://credit.niso.org/">Methodology</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <xref ref-type="aff" rid="a1">1</xref>
                    <xref ref-type="aff" rid="a2">2</xref>
                </contrib>
                <contrib contrib-type="author" corresp="no">
                    <name>
                        <surname>Funatsu</surname>
                        <given-names>Kimito</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Review &amp; Editing</role>
                    <xref ref-type="aff" rid="a1">1</xref>
                </contrib>
                <contrib contrib-type="author" corresp="yes">
                    <name>
                        <surname>Bajorath</surname>
                        <given-names>J&#x00fc;rgen</given-names>
                    </name>
                    <role content-type="http://credit.niso.org/">Conceptualization</role>
                    <role content-type="http://credit.niso.org/">Formal Analysis</role>
                    <role content-type="http://credit.niso.org/">Supervision</role>
                    <role content-type="http://credit.niso.org/">Writing &#x2013; Original Draft Preparation</role>
                    <uri content-type="orcid">https://orcid.org/0000-0002-0557-5714</uri>
                    <xref ref-type="corresp" rid="c1">a</xref>
                    <xref ref-type="aff" rid="a2">2</xref>
                </contrib>
                <aff id="a1">
                    <label>1</label>Department of Chemical System Engineering, School of Engineering, The University of Tokyo, Tokyo, 113-8656, Japan</aff>
                <aff id="a2">
                    <label>2</label>Department of Life Science Informatics, B-IT, LIMES Program Unit Chemical Biology and Medicinal Chemistry, Rheinische Friedrich-Wilhelms-Universit&#x00e4;t, Bonn, D-53113, Germany</aff>
            </contrib-group>
            <author-notes>
                <corresp id="c1">
                    <label>a</label>
                    <email xlink:href="mailto:bajorath@bit.uni-bonn.de">bajorath@bit.uni-bonn.de</email>
                </corresp>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>31</day>
                <month>7</month>
                <year>2017</year>
            </pub-date>
            <pub-date pub-type="collection">
                <year>2017</year>
            </pub-date>
            <volume>6</volume>
            <elocation-id>Chem Inf Sci-1285</elocation-id>
            <history>
                <date date-type="accepted">
                    <day>27</day>
                    <month>7</month>
                    <year>2017</year>
                </date>
            </history>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2017 Miyao T et al.</copyright-statement>
                <copyright-year>2017</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access article distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <self-uri content-type="pdf" xlink:href="https://f1000research.com/articles/6-1285/pdf"/>
            <abstract>
                <p>Inverse quantitative structure-activity relationship (QSAR) modeling encompasses the generation of compound structures from values of descriptors corresponding to high activity predicted with a given QSAR model. Structure generation proceeds from descriptor coordinates optimized for activity prediction. Herein, we concentrate on the first phase of the inverse QSAR process and introduce a new methodology for coordinate optimization, termed differential evolution (DE), that originated from computer science and engineering. Using simulation and compound activity data, we demonstrate that DE in combination with support vector regression (SVR) yields effective and robust predictions of optimized coordinates satisfying model constraints and requirements. For different compound activity classes, optimized coordinates are obtained that exclusively map to regions of high activity in feature space, represent novel positions for structure generation, and are chemically meaningful.</p>
            </abstract>
            <kwd-group kwd-group-type="author">
                <kwd>Chemical space</kwd>
                <kwd>active compounds</kwd>
                <kwd>differential evolution</kwd>
                <kwd>support vector regression</kwd>
                <kwd>virtual screening</kwd>
                <kwd>inverse QSAR</kwd>
            </kwd-group>
            <funding-group>
                <award-group id="fund-1" xlink:href="http://dx.doi.org/10.13039/501100001691">
                    <funding-source>Japan Society for the Promotion of Science</funding-source>
                    <award-id>16J05325</award-id>
                </award-group>
                <funding-statement>The project leading to this report has received funding (for TM) from the Japan Society for the Promotion of Science (JSPS) under the JSPS KAKENHI Grant Number 16J05325. </funding-statement>
                <funding-statement>
                    <italic>The funders had no role in study design, data collection and analysis, decision to publish, or preparation of the manuscript.</italic>
                </funding-statement>
            </funding-group>
        </article-meta>
    </front>
    <body>
        <sec sec-type="intro">
            <title>Introduction</title>
            <p>Inverse quantitative structure-activity relationship (QSAR) analysis aims to identify values of descriptors used to generate a QSAR model that corresponds to high activity, and build structures of active compounds from these values
                <sup>
                    <xref ref-type="bibr" rid="ref-1">1</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref-4">4</xref>
                </sup>. The inverse QSAR process is challenging since numerical signatures of activity, if they can be determined, must be re-translated into viable chemical structures and active compounds, a task falling into the area of 
                <italic toggle="yes">de novo</italic> compound design
                <sup>
                    <xref ref-type="bibr" rid="ref-5">5</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref-7">7</xref>
                </sup>. A predominant approach to inverse QSAR is the use of multiple linear regression (MLR) models to construct chemical graphs that correspond to an MLR equation
                <sup>
                    <xref ref-type="bibr" rid="ref-1">1</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref-4">4</xref>
                </sup>. Given this equation, a desired y (activity) value constrains relationships between descriptor settings. These constraints make it possible to derive vertex degree or edge sequences, from which chemical graphs might be constructed. For instance, specialized descriptors have been introduced for inverse QSAR on the basis of MLR equations and algorithms for constructing chemical graphs from these descriptors
                <sup>
                    <xref ref-type="bibr" rid="ref-8">8</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref-11">11</xref>
                </sup>. So far only few inverse QSAR studies have employed methods other than MLR. For example, it was attempted to construct chemical graphs from the centroid of activity of a set of compounds in Hilbert space defined by a kernel function
                <sup>
                    <xref ref-type="bibr" rid="ref-12">12</xref>
                </sup>. In this case, a pre-image approximation algorithm was used to obtain coordinates in descriptor space and construct chemical graphs from these descriptor coordinates. Alternatively, inverse QSAR was divided into a two-stage process by separating the derivation of preferred descriptor values for a desired activity from the chemical graph construction phase
                <sup>
                    <xref ref-type="bibr" rid="ref-13">13</xref>&#x2013;
                    <xref ref-type="bibr" rid="ref-15">15</xref>
                </sup>. Descriptor information corresponding to a given y value was represented via probability density functions, and regression analysis was performed using Gaussian mixture models in combination with cluster-wise MLR
                <sup>
                    <xref ref-type="bibr" rid="ref-14">14</xref>
                </sup>. Subsequently, chemical graphs satisfying a set of descriptor values, or ranges of descriptor values, were generated by assembling ring systems and atom fragments with monotonically changing descriptors
                <sup>
                    <xref ref-type="bibr" rid="ref-14">14</xref>
                </sup>. Following this approach, descriptor values must increase when adding an atom, ring system, or other structural fragment to a growing chemical graph. Applying Gaussian mixture models and cluster-wise MLR makes it possible to focus on the applicability domain
                <sup>
                    <xref ref-type="bibr" rid="ref-14">14</xref>,
                    <xref ref-type="bibr" rid="ref-15">15</xref>
                </sup> of the underlying models.</p>
            <p>The two-stage inverse QSAR process is conceptually based on an important premise adopted from conventional (forward) QSAR, i.e., the higher a predicted activity value is, the more desirable a chemical structure becomes. In two-stage inverse QSAR, this conjecture challenges the descriptor value generation phase because value combinations are ultimately desired that correspond to higher predicted activity than exhibited by any currently available training or test compound. In other words, descriptor settings should be optimized for predicted activity. For this purpose, the use of Gaussian mixture models and cluster-wise MLR left considerable room for improvement, due to its multi-parametric nature and tendency of overfitting if training data were organized into large number of clusters
                <sup>
                    <xref ref-type="bibr" rid="ref-14">14</xref>
                </sup>.</p>
            <p>In this work, the descriptor optimization challenge of two-stage inverse QSAR has been specifically addressed. We emphasize that the chemical graph construction phase of inverse QSAR is not subject of this work and beyond its scope. Rather, our focal point has been the development of a new methodology for optimizing descriptor settings with respect to higher than observed compound activity, as a prerequisite for candidate structure generation. Therefore, an evolutionary approach is introduced to identify descriptor coordinates that correspond to the highest predicted activity within the applicability domain of a given QSAR model. The methodology and results of proof-of-concept studies are presented in the following.</p>
        </sec>
        <sec sec-type="methods">
            <title>Methods</title>
            <sec>
                <title>Methodological concept</title>
                <p>Inverse QSAR depends on the derivation of descriptor coordinates for a given model and data set. The goal of the methodology presented herein is finding desirable coordinates in a pre-defined descriptor space (
                    <bold>x</bold> space) on the basis of a regression function f(
                    <bold>x</bold>) representing a QSAR model. Confining the search to the applicability domain (AD) of the model translates this task into a constrained optimization problem (COP). The concept of the optimization is illustrated in 
                    <xref ref-type="fig" rid="f1">Figure 1</xref>. Newly derived coordinates should be more desirable with respect to pre-defined evaluation criteria than any other data point used to construct the regression model. Accordingly, COP is formulated as follows:</p>
                <fig fig-type="figure" id="f1" orientation="portrait" position="float">
                    <label>Figure 1. </label>
                    <caption>
                        <title>Optimization concept.</title>
                        <p>A regression function f(
                            <bold>x</bold>) fits training data to determine new coordinates in descriptor space. Optimized coordinates based on f(
                            <bold>x</bold>) fall inside the training data range but yield a higher y value than any other data point.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure1.gif"/>
                </fig>
                <p>Minimize f(
                    <bold>x</bold>) 
                    <disp-formula>
                        <mml:math display="inline" id="math1">
                            <mml:mtable columnalign="left">
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mtext>s</mml:mtext>
                                        <mml:mo>.</mml:mo>
                                        <mml:mtext>t</mml:mtext>
                                        <mml:mo>.</mml:mo>
                                        <mml:mspace width="1.2em"/>
                                        <mml:msub>
                                            <mml:mtext>g</mml:mtext>
                                            <mml:mtext>j</mml:mtext>
                                        </mml:msub>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:mtext mathvariant="bold">x</mml:mtext>
                                        <mml:mo stretchy="false">)</mml:mo>
                                        <mml:mo>&#x2264;</mml:mo>
                                        <mml:mn>0</mml:mn>
                                        <mml:mo>,</mml:mo>
                                        <mml:mtext>j</mml:mtext>
                                        <mml:mo>=</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>,</mml:mo>
                                        <mml:mo>&#x2026;</mml:mo>
                                        <mml:mo>,</mml:mo>
                                        <mml:mtext>q</mml:mtext>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mspace width="3em"/>
                                        <mml:msub>
                                            <mml:mtext>h</mml:mtext>
                                            <mml:mtext>j</mml:mtext>
                                        </mml:msub>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:mtext mathvariant="bold">x</mml:mtext>
                                        <mml:mo stretchy="false">)</mml:mo>
                                        <mml:mo>=</mml:mo>
                                        <mml:mn>0</mml:mn>
                                        <mml:mo>,</mml:mo>
                                        <mml:mtext>j</mml:mtext>
                                        <mml:mo>=</mml:mo>
                                        <mml:mtext>q</mml:mtext>
                                        <mml:mo>+</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>,</mml:mo>
                                        <mml:mo>&#x2026;</mml:mo>
                                        <mml:mo>,</mml:mo>
                                        <mml:mtext>m</mml:mtext>
                                    </mml:mtd>
                                </mml:mtr>
                                <mml:mtr>
                                    <mml:mtd>
                                        <mml:mspace width="3em"/>
                                        <mml:mtext mathvariant="bold">x</mml:mtext>
                                        <mml:mo>=</mml:mo>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mn>1</mml:mn>
                                        </mml:msub>
                                        <mml:mo>,</mml:mo>
                                        <mml:mo>&#x2026;</mml:mo>
                                        <mml:mo>,</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mtext>d</mml:mtext>
                                        </mml:msub>
                                        <mml:mo stretchy="false">)</mml:mo>
                                        <mml:mo>,</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>l</mml:mtext>
                                            <mml:mtext>i</mml:mtext>
                                        </mml:msub>
                                        <mml:mo>&#x2264;</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mtext>i</mml:mtext>
                                        </mml:msub>
                                        <mml:mo>&#x2264;</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>u</mml:mtext>
                                            <mml:mtext>i</mml:mtext>
                                        </mml:msub>
                                        <mml:mo>,</mml:mo>
                                        <mml:mtext>i</mml:mtext>
                                        <mml:mo>=</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>,</mml:mo>
                                        <mml:mo>&#x2026;</mml:mo>
                                        <mml:mo>,</mml:mo>
                                        <mml:mtext>d</mml:mtext>
                                    </mml:mtd>
                                </mml:mtr>
                            </mml:mtable>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>where 
                    <bold>x</bold> &#x2208; R
                    <sup>d</sup>, f: R
                    <sup>d</sup> &#x2192; R is the function to be optimized, g
                    <sub>j</sub>: R
                    <sup>d</sup> &#x2192; R is the j-th inequality function, and h
                    <sub>j</sub>: R
                    <sup>d</sup> &#x2192; R is the j-th equality function. The i-th component of 
                    <bold>x</bold>: x
                    <sub>i</sub> falls into the range [l
                    <sub>i</sub>, u
                    <sub>i</sub>].</p>
                <p>For the purpose of our analysis, the following assignments are made:</p>
                <p>
                    <bold>x:</bold> descriptors;</p>
                <p>&#x2013;f(
                    <bold>x</bold>): QSAR model;</p>
                <p>&#x2013;g
                    <sub>1</sub>(
                    <bold>x</bold>): AD model;</p>
                <p>g
                    <sub>k</sub>(
                    <bold>x</bold>) (k = 2, &#x2026;, j), h(
                    <bold>x</bold>): constraints for descriptors;</p>
                <p>l
                    <sub>i</sub>, u
                    <sub>i</sub>: lower and upper bounds of i-th descriptor.</p>
                <p>Constraints are applied to descriptors to ensure meaningful value ranges. For example, if the &#x2018;number of heavy atoms&#x2019; (x
                    <sub>p</sub>) and &#x2018;number of hydrogen bond acceptors&#x2019; (x
                    <sub>q</sub>) are selected descriptors, a value of five for the former and six for the latter would be impossible for any given data point (compound). Therefore, in order to prevent such settings, an inequality constraint is required and applied: x
                    <sub>q</sub> &#x2013; x
                    <sub>p</sub> &#x2264; 0.</p>
            </sec>
            <sec>
                <title>&#x03b5; Differential evolution</title>
                <p>For addressing COP, the differential evolution (DE) algorithm originally introduced by Stone and Price
                    <sup>
                        <xref ref-type="bibr" rid="ref-16">16</xref>
                    </sup> is investigated herein, which has so far not been considered in inverse QSAR. However, given the conceptual simplicity and computational efficiency of DE, the algorithm has been successfully applied to solve optimization problems in other areas of science and engineering, for example, in scheduling of flow shops
                    <sup>
                        <xref ref-type="bibr" rid="ref-17">17</xref>
                    </sup>. In addition, for deriving a COP solution efficiently, &#x03b5; differential evolution (&#x03b5;DE) was introduced by Takahama 
                    <italic toggle="yes">et al.</italic> as an extension of DE
                    <sup>
                        <xref ref-type="bibr" rid="ref-18">18</xref>
                    </sup>, illustrated in 
                    <xref ref-type="fig" rid="f2">Figure 2</xref>. A candidate vector 
                    <bold>v</bold> for next generation (also called mutant vector) is derived on the basis of three randomly selected vectors:</p>
                <p>
                    <disp-formula>
                        <mml:math display="inline" id="math2">
                            <mml:mrow>
                                <mml:mtext mathvariant="bold">v</mml:mtext>
                                <mml:mo>=</mml:mo>
                                <mml:msub>
                                    <mml:mtext mathvariant="bold">x</mml:mtext>
                                    <mml:mrow>
                                        <mml:mtext>r</mml:mtext>
                                        <mml:mn>1</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mo>+</mml:mo>
                                <mml:mtext>F</mml:mtext>
                                <mml:mo stretchy="false">(</mml:mo>
                                <mml:msub>
                                    <mml:mtext mathvariant="bold">x</mml:mtext>
                                    <mml:mrow>
                                        <mml:mtext>r</mml:mtext>
                                        <mml:mn>2</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mo>&#x2212;</mml:mo>
                                <mml:msub>
                                    <mml:mtext mathvariant="bold">x</mml:mtext>
                                    <mml:mrow>
                                        <mml:mtext>r</mml:mtext>
                                        <mml:mn>3</mml:mn>
                                    </mml:mrow>
                                </mml:msub>
                                <mml:mo stretchy="false">)</mml:mo>
                                <mml:mo>,</mml:mo>
                            </mml:mrow>
                        </mml:math>
                    </disp-formula>
                </p>
                <fig fig-type="figure" id="f2" orientation="portrait" position="float">
                    <label>Figure 2. </label>
                    <caption>
                        <title>Evolutionary algorithm.</title>
                        <p>The steps involved in evolutionary optimization are outlined. First, a candidate 
                            <bold>v</bold> is obtained from three randomly selected individuals by a differential operation. Second, a crossover operation is applied to an individual 
                            <bold>x</bold>
                            <sub>i</sub> and the candidate. Third, the evaluation step involves &#x03b5; level comparison of 
                            <bold>v</bold> and 
                            <bold>x</bold>
                            <sub>i</sub> and results in the next individual.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure2.gif"/>
                </fig>
                <p>where 
                    <bold>x</bold>
                    <sub>r1</sub>, 
                    <bold>x</bold>
                    <sub>r2</sub>, 
                    <bold>x</bold>
                    <sub>r3</sub> are different vectors from the current generation and F represents a scale parameter for the difference vector. If the i-th component of 
                    <bold>v</bold>: v
                    <sub>i</sub> falls outside the range [l
                    <sub>i</sub>, u
                    <sub>i</sub>], 
                    <bold>v</bold> is updated as follows:
                    <sup>
                        <xref ref-type="bibr" rid="ref-4">4</xref>
                    </sup>
                </p>
                <p>
                    <disp-formula>
                        <mml:math display="inline" id="math3">
                            <mml:mrow>
                                <mml:msub>
                                    <mml:mtext>v</mml:mtext>
                                    <mml:mi>i</mml:mi>
                                </mml:msub>
                                <mml:mo>=</mml:mo>
                                <mml:mrow>
                                    <mml:mo>{</mml:mo>
                                    <mml:mrow>
                                        <mml:mtable columnalign="left">
                                            <mml:mtr columnalign="left">
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:mtext>min</mml:mtext>
                                                        <mml:mspace width="0.3em"/>
                                                        <mml:mo>{</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>u</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>,</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>l</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>+</mml:mo>
                                                        <mml:mo stretchy="false">(</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>l</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>&#x2212;</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>v</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo stretchy="false">)</mml:mo>
                                                        <mml:mo>}</mml:mo>
                                                        <mml:mo>,</mml:mo>
                                                        <mml:mspace width="0.4em"/>
                                                        <mml:mtext>if</mml:mtext>
                                                        <mml:mspace width="0.2em"/>
                                                        <mml:msub>
                                                            <mml:mtext>v</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>&lt;</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>l</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                    </mml:mrow>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr columnalign="left">
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:mtext>max</mml:mtext>
                                                        <mml:mspace width="0.1em"/>
                                                        <mml:mo>{</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>l</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>,</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>u</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>&#x2212;</mml:mo>
                                                        <mml:mo stretchy="false">(</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>v</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>&#x2212;</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>u</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo stretchy="false">)</mml:mo>
                                                        <mml:mo>}</mml:mo>
                                                        <mml:mo>,</mml:mo>
                                                        <mml:mspace width="0.2em"/>
                                                        <mml:mtext>if</mml:mtext>
                                                        <mml:mspace width="0.2em"/>
                                                        <mml:msub>
                                                            <mml:mtext>u</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>&lt;</mml:mo>
                                                        <mml:msub>
                                                            <mml:mtext>v</mml:mtext>
                                                            <mml:mi>i</mml:mi>
                                                        </mml:msub>
                                                    </mml:mrow>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mrow>
                                </mml:mrow>
                                <mml:mo>.</mml:mo>
                            </mml:mrow>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>An exponential crossover operation with probability-based crossover points is applied to 
                    <bold>v</bold> (the probability is called CR). Either 
                    <bold>x</bold>
                    <sub>i</sub> or 
                    <bold>v</bold> is selected as 
                    <bold>x</bold>
                    <sub>i+1</sub>, the individual for the next generation, following &#x03b5; level comparison of the corresponding vectors.</p>
            </sec>
            <sec>
                <title>&#x03b5; Level comparison</title>
                <p>For prioritizing candidates, given constraints and the optimized function are taken into account. The constraint violation &#x03a6;(
                    <bold>x</bold>) is defined as follows:</p>
                <p>
                    <disp-formula>
                        <mml:math display="inline" id="math4">
                            <mml:mrow>
                                <mml:mo>&#x03a6;</mml:mo>
                                <mml:mo stretchy="false">(</mml:mo>
                                <mml:mi mathvariant="bold-italic">x</mml:mi>
                                <mml:mo stretchy="false">)</mml:mo>
                                <mml:mo>=</mml:mo>
                                <mml:mstyle displaystyle="true">
                                    <mml:msubsup>
                                        <mml:mo>&#x2211;</mml:mo>
                                        <mml:mrow>
                                            <mml:mi>j</mml:mi>
                                            <mml:mo>=</mml:mo>
                                            <mml:mn>1</mml:mn>
                                        </mml:mrow>
                                        <mml:mi>q</mml:mi>
                                    </mml:msubsup>
                                    <mml:mrow>
                                        <mml:mtext>max</mml:mtext>
                                        <mml:mspace width="0.1em"/>
                                        <mml:mo stretchy="false">{</mml:mo>
                                        <mml:mn>0</mml:mn>
                                        <mml:mo>,</mml:mo>
                                        <mml:msub>
                                            <mml:mi>g</mml:mi>
                                            <mml:mi>j</mml:mi>
                                        </mml:msub>
                                        <mml:mrow>
                                            <mml:mo stretchy="false">(</mml:mo>
                                            <mml:mi mathvariant="bold-italic">x</mml:mi>
                                            <mml:mo stretchy="false">)</mml:mo>
                                        </mml:mrow>
                                        <mml:msup>
                                            <mml:mo stretchy="false">}</mml:mo>
                                            <mml:mi>p</mml:mi>
                                        </mml:msup>
                                        <mml:mo>+</mml:mo>
                                        <mml:msup>
                                            <mml:mrow>
                                                <mml:mstyle displaystyle="true">
                                                    <mml:msubsup>
                                                        <mml:mo>&#x2211;</mml:mo>
                                                        <mml:mrow>
                                                            <mml:mi>j</mml:mi>
                                                            <mml:mo>=</mml:mo>
                                                            <mml:mi>q</mml:mi>
                                                            <mml:mo>+</mml:mo>
                                                            <mml:mn>1</mml:mn>
                                                        </mml:mrow>
                                                        <mml:mi>m</mml:mi>
                                                    </mml:msubsup>
                                                    <mml:mrow>
                                                        <mml:mrow>
                                                            <mml:mo>|</mml:mo>
                                                            <mml:mrow>
                                                                <mml:msub>
                                                                    <mml:mi>h</mml:mi>
                                                                    <mml:mi>j</mml:mi>
                                                                </mml:msub>
                                                                <mml:mo stretchy="false">(</mml:mo>
                                                                <mml:mi mathvariant="bold-italic">x</mml:mi>
                                                                <mml:mo stretchy="false">)</mml:mo>
                                                            </mml:mrow>
                                                            <mml:mo>|</mml:mo>
                                                        </mml:mrow>
                                                    </mml:mrow>
                                                </mml:mstyle>
                                            </mml:mrow>
                                            <mml:mi>p</mml:mi>
                                        </mml:msup>
                                        <mml:mo>,</mml:mo>
                                    </mml:mrow>
                                </mml:mstyle>
                            </mml:mrow>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>where &#x03a6;(
                    <bold>x</bold>) represents the degree of violation, with p set to one. The &#x03b5; level comparison determines the order between two sets of pair (f(
                    <bold>x</bold>), &#x03a6;(
                    <bold>x</bold>)):</p>
                <disp-formula>
                    <mml:math display="inline" id="math5">
                        <mml:mrow>
                            <mml:mo stretchy="false">(</mml:mo>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03a6;</mml:mi>
                                <mml:mn>1</mml:mn>
                            </mml:msub>
                            <mml:mo stretchy="false">)</mml:mo>
                            <mml:msub>
                                <mml:mo>&lt;</mml:mo>
                                <mml:mi>&#x03b5;</mml:mi>
                            </mml:msub>
                            <mml:mo stretchy="false">(</mml:mo>
                            <mml:msub>
                                <mml:mi>f</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo>,</mml:mo>
                            <mml:msub>
                                <mml:mi>&#x03a6;</mml:mi>
                                <mml:mn>2</mml:mn>
                            </mml:msub>
                            <mml:mo stretchy="false">)</mml:mo>
                            <mml:mo>&#x21d4;</mml:mo>
                            <mml:mrow>
                                <mml:mo>{</mml:mo>
                                <mml:mrow>
                                    <mml:mtable columnalign="left">
                                        <mml:mtr columnalign="left">
                                            <mml:mtd columnalign="left">
                                                <mml:mrow>
                                                    <mml:msub>
                                                        <mml:mi>f</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>&lt;</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>f</mml:mi>
                                                        <mml:mn>2</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:mspace width="0.2em"/>
                                                    <mml:mtext>if</mml:mtext>
                                                    <mml:mspace width="0.1em"/>
                                                    <mml:msub>
                                                        <mml:mi>&#x03a6;</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>&#x03a6;</mml:mi>
                                                        <mml:mn>2</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>&#x2264;</mml:mo>
                                                    <mml:mi>&#x03b5;</mml:mi>
                                                    <mml:mo stretchy="false">(</mml:mo>
                                                    <mml:mi>t</mml:mi>
                                                    <mml:mo stretchy="false">)</mml:mo>
                                                </mml:mrow>
                                            </mml:mtd>
                                        </mml:mtr>
                                        <mml:mtr columnalign="left">
                                            <mml:mtd columnalign="left">
                                                <mml:mrow>
                                                    <mml:msub>
                                                        <mml:mi>f</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>&lt;</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>f</mml:mi>
                                                        <mml:mn>2</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:mspace width="0.2em"/>
                                                    <mml:mtext>if</mml:mtext>
                                                    <mml:mspace width="0.1em"/>
                                                    <mml:msub>
                                                        <mml:mi>&#x03a6;</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>=</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>&#x03a6;</mml:mi>
                                                        <mml:mn>2</mml:mn>
                                                    </mml:msub>
                                                </mml:mrow>
                                            </mml:mtd>
                                        </mml:mtr>
                                        <mml:mtr columnalign="left">
                                            <mml:mtd columnalign="left">
                                                <mml:mrow>
                                                    <mml:msub>
                                                        <mml:mi>&#x03c6;</mml:mi>
                                                        <mml:mn>1</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>&lt;</mml:mo>
                                                    <mml:msub>
                                                        <mml:mi>&#x03c6;</mml:mi>
                                                        <mml:mn>2</mml:mn>
                                                    </mml:msub>
                                                    <mml:mo>,</mml:mo>
                                                    <mml:mspace width="0.5em"/>
                                                    <mml:mi>o</mml:mi>
                                                    <mml:mi>t</mml:mi>
                                                    <mml:mi>h</mml:mi>
                                                    <mml:mi>e</mml:mi>
                                                    <mml:mi>r</mml:mi>
                                                    <mml:mi>w</mml:mi>
                                                    <mml:mi>i</mml:mi>
                                                    <mml:mi>s</mml:mi>
                                                    <mml:mi>e</mml:mi>
                                                </mml:mrow>
                                            </mml:mtd>
                                        </mml:mtr>
                                    </mml:mtable>
                                </mml:mrow>
                            </mml:mrow>
                            <mml:mo>,</mml:mo>
                        </mml:mrow>
                    </mml:math>
                </disp-formula>
                <p>where t represents a generation in DE. As a decreasing function of t, &#x03b5; determines the tolerance of constraint violation and &#x03b5;(t) is determined as follows:
                    <sup>
                        <xref ref-type="bibr" rid="ref-16">16</xref>
                    </sup>
                </p>
                <p>
                    <disp-formula>
                        <mml:math display="inline" id="math6">
                            <mml:mrow>
                                <mml:mi>&#x03f5;</mml:mi>
                                <mml:mo stretchy="false">(</mml:mo>
                                <mml:mi>t</mml:mi>
                                <mml:mo stretchy="false">)</mml:mo>
                                <mml:mo>=</mml:mo>
                                <mml:mrow>
                                    <mml:mo>{</mml:mo>
                                    <mml:mrow>
                                        <mml:mtable columnalign="left">
                                            <mml:mtr columnalign="left">
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:mo>&#x03a6;</mml:mo>
                                                        <mml:mo stretchy="false">(</mml:mo>
                                                        <mml:msub>
                                                            <mml:mi mathvariant="bold-italic">x</mml:mi>
                                                            <mml:mi mathvariant="bold-italic">&#x03b8;</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo stretchy="false">)</mml:mo>
                                                    </mml:mrow>
                                                </mml:mtd>
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:mi>t</mml:mi>
                                                        <mml:mo>=</mml:mo>
                                                        <mml:mn>0</mml:mn>
                                                    </mml:mrow>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr columnalign="left">
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:mo>&#x03a6;</mml:mo>
                                                        <mml:mo stretchy="false">(</mml:mo>
                                                        <mml:msub>
                                                            <mml:mi mathvariant="bold-italic">x</mml:mi>
                                                            <mml:mi mathvariant="bold-italic">&#x03b8;</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo stretchy="false">)</mml:mo>
                                                        <mml:msup>
                                                            <mml:mrow>
                                                                <mml:mo stretchy="false">(</mml:mo>
                                                                <mml:mn>1</mml:mn>
                                                                <mml:mo>&#x2212;</mml:mo>
                                                                <mml:mfrac>
                                                                    <mml:mi>t</mml:mi>
                                                                    <mml:mrow>
                                                                        <mml:msub>
                                                                            <mml:mi>T</mml:mi>
                                                                            <mml:mi>c</mml:mi>
                                                                        </mml:msub>
                                                                    </mml:mrow>
                                                                </mml:mfrac>
                                                                <mml:mo stretchy="false">)</mml:mo>
                                                            </mml:mrow>
                                                            <mml:mrow>
                                                                <mml:mi>c</mml:mi>
                                                                <mml:mi>p</mml:mi>
                                                            </mml:mrow>
                                                        </mml:msup>
                                                    </mml:mrow>
                                                </mml:mtd>
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:mn>0</mml:mn>
                                                        <mml:mo>&lt;</mml:mo>
                                                        <mml:mi>t</mml:mi>
                                                        <mml:mo>&lt;</mml:mo>
                                                        <mml:msub>
                                                            <mml:mi>T</mml:mi>
                                                            <mml:mi>c</mml:mi>
                                                        </mml:msub>
                                                    </mml:mrow>
                                                </mml:mtd>
                                            </mml:mtr>
                                            <mml:mtr columnalign="left">
                                                <mml:mtd columnalign="left">
                                                    <mml:mn>0</mml:mn>
                                                </mml:mtd>
                                                <mml:mtd columnalign="left">
                                                    <mml:mrow>
                                                        <mml:msub>
                                                            <mml:mi>T</mml:mi>
                                                            <mml:mi>c</mml:mi>
                                                        </mml:msub>
                                                        <mml:mo>&#x2264;</mml:mo>
                                                        <mml:mi>t</mml:mi>
                                                    </mml:mrow>
                                                </mml:mtd>
                                            </mml:mtr>
                                        </mml:mtable>
                                    </mml:mrow>
                                </mml:mrow>
                                <mml:mspace width="0.3em"/>
                                <mml:mo>,</mml:mo>
                            </mml:mrow>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>where 
                    <bold>x</bold>
                    <sub>&#x03b8;</sub> is the top &#x03b8;-th individual, T
                    <sub>c</sub> determines the generation in which &#x03b5;(t) becomes zero, and cp the convergence speed. During the optimization, &#x03a6;(
                    <bold>x</bold>) gradually outweighs f(
                    <bold>x</bold>). In the initial stages of the optimization &#x03b5;(t) settings enable the selection of diverse candidates but convergence of the algorithm is determined by &#x03a6;(
                    <bold>x</bold>) becoming zero. Accordingly, T
                    <sub>c</sub> was set to one herein.</p>
            </sec>
            <sec>
                <title>Regression and applicability domain models</title>
                <p>For &#x03b5;DE optimization, any regression function can be employed. In this study, support vector regression (SVR)
                    <sup>
                        <xref ref-type="bibr" rid="ref-19">19</xref>
                    </sup> with &#x03bd; parameter was applied and the AD was defined by one-class support vector machine (OCSVM)
                    <sup>
                        <xref ref-type="bibr" rid="ref-20">20</xref>
                    </sup> classification with &#x03bd; parameter. This parameter ranges from zero to one and defines the upper bound of the fraction of margin error and lower bound of the fraction of support vectors. AD consists of regions where the output of OCSVM is greater than or equal to zero. For both SVR and OCSVM, the radial basis function (RBF) kernel: k(
                    <bold>x</bold>
                    <sub>
                        <italic toggle="yes">i</italic>
                    </sub>, 
                    <bold>x</bold>
                    <sub>
                        <italic toggle="yes">j</italic>
                    </sub>) = (&#x2212;&#x03b3;||
                    <bold>x</bold>
                    <sub>
                        <italic toggle="yes">i</italic>
                    </sub> &#x2212; 
                    <bold>x</bold>
                    <sub>
                        <italic toggle="yes">j</italic>
                    </sub>||
                    <sup>2</sup>) was used. A hyper parameter set {C, &#x03bd;, &#x03b3;} for &#x03bd;-SVR was determined by cross validation of training data on the basis of Q
                    <sup>2</sup>. For OCSVM model construction, &#x03b3; was set to maximize the variance of the Gram matrix consisting of the kernel function of the training data
                    <sup>
                        <xref ref-type="bibr" rid="ref-21">21</xref>
                    </sup> and &#x03bd; was set to 0.01.</p>
            </sec>
            <sec>
                <title>Simulation data</title>
                <p>Data points on a (x
                    <sub>1</sub>, x
                    <sub>2</sub>) plane were randomly generated for x
                    <sub>1</sub>: [-2 3], x
                    <sub>2</sub>: [-1, 4] to yield 50 training and 20 test instances. The corresponding y values were calculated using Mishra&#x2019;s bird function (
                    <ext-link ext-link-type="uri" xlink:href="https://mpra.ub.uni-muenchen.de/2718/">https://mpra.ub.uni-muenchen.de/2718/</ext-link>) adding a Gaussian error with a mean of zero and variance of one, defined as:</p>
                <p>
                    <disp-formula>
                        <mml:math display="inline" id="math7">
                            <mml:mrow>
                                <mml:mtext>f</mml:mtext>
                                <mml:mo stretchy="false">(</mml:mo>
                                <mml:msub>
                                    <mml:mtext>x</mml:mtext>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo>,</mml:mo>
                                <mml:msub>
                                    <mml:mtext>x</mml:mtext>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="false">)</mml:mo>
                                <mml:mo>=</mml:mo>
                                <mml:mtext>sin</mml:mtext>
                                <mml:mo stretchy="false">(</mml:mo>
                                <mml:msub>
                                    <mml:mtext>x</mml:mtext>
                                    <mml:mn>1</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="false">)</mml:mo>
                                <mml:mtext>exp</mml:mtext>
                                <mml:mo>{</mml:mo>
                                <mml:msup>
                                    <mml:mrow>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mtext>cos</mml:mtext>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mn>2</mml:mn>
                                        </mml:msub>
                                        <mml:mo stretchy="false">)</mml:mo>
                                        <mml:mo stretchy="false">)</mml:mo>
                                    </mml:mrow>
                                    <mml:mn>2</mml:mn>
                                </mml:msup>
                                <mml:mo>}</mml:mo>
                                <mml:mo>+</mml:mo>
                                <mml:mtext>cos</mml:mtext>
                                <mml:mo stretchy="false">(</mml:mo>
                                <mml:msub>
                                    <mml:mtext>x</mml:mtext>
                                    <mml:mn>2</mml:mn>
                                </mml:msub>
                                <mml:mo stretchy="false">)</mml:mo>
                                <mml:mtext>exp</mml:mtext>
                                <mml:mo>{</mml:mo>
                                <mml:msup>
                                    <mml:mrow>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:mn>1</mml:mn>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:mtext>sin</mml:mtext>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mn>1</mml:mn>
                                        </mml:msub>
                                        <mml:mo stretchy="false">)</mml:mo>
                                        <mml:mo stretchy="false">)</mml:mo>
                                    </mml:mrow>
                                    <mml:mn>2</mml:mn>
                                </mml:msup>
                                <mml:mo>}</mml:mo>
                                <mml:mo>+</mml:mo>
                                <mml:msup>
                                    <mml:mrow>
                                        <mml:mo stretchy="false">(</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mn>1</mml:mn>
                                        </mml:msub>
                                        <mml:mo>&#x2212;</mml:mo>
                                        <mml:msub>
                                            <mml:mtext>x</mml:mtext>
                                            <mml:mn>2</mml:mn>
                                        </mml:msub>
                                        <mml:mo stretchy="false">)</mml:mo>
                                    </mml:mrow>
                                    <mml:mn>2</mml:mn>
                                </mml:msup>
                                <mml:mo>.</mml:mo>
                            </mml:mrow>
                        </mml:math>
                    </disp-formula>
                </p>
                <p>Three independent trials were carried out with different random number generators. Training and test data sets were plotted on the output domain of the bird function with color-coded 
                    <italic toggle="yes">true y</italic> values (
                    <xref ref-type="fig" rid="f3">Figure 3</xref>).</p>
                <fig fig-type="figure" id="f3" orientation="portrait" position="float">
                    <label>Figure 3. </label>
                    <caption>
                        <title>Simulation data sets.</title>
                        <p>In three independent trials, simulation data sets were generated. For each trial, training (black dots) and test (blue squares) data are shown with true y values produced by the bird function f(x
                            <sub>1</sub>, x
                            <sub>2</sub>).</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure3.gif"/>
                </fig>
            </sec>
            <sec>
                <title>Compound data sets</title>
                <p>From ChEMBL
                    <sup>
                        <xref ref-type="bibr" rid="ref-22">22</xref>
                    </sup> (version 22), compound data sets were selected using the following criteria: Maximal assay confidence score of &#x2018;9&#x2019;, interaction relationship type &#x2018;D&#x2019;(direct), activity standard unit &#x2018;nM&#x2019;, activity standard type &#x2018;K
                    <sub>i</sub>&#x2019;, and activity standard relation &#x2018;=&#x2019;. When multiple K
                    <sub>i</sub> values were available for a compound, their geometric mean was calculated to yield its final potency value, provided all measurements fell into the same order of magnitude (otherwise, the compound was discarded). In-house implementation of substructure filters for pan assay interference compounds (PAINS)
                    <sup>
                        <xref ref-type="bibr" rid="ref-23">23</xref>
                    </sup> and other reactive molecules were applied to eliminate compounds with potential chemical liabilities. Filtering was not critical for modeling, but active compounds with sound chemical structures were desired. From qualifying data sets, nine activity classes were randomly selected, as summarized on 
                    <xref ref-type="table" rid="T1">Table 1</xref>.</p>
                <table-wrap id="T1" orientation="portrait" position="anchor">
                    <label>Table 1. </label>
                    <caption>
                        <title>Compound data sets.</title>
                        <p>Nine compound activity classes were taken from ChEMBL (version 22). For each activity class, the target ID (TID), number of compounds (CPDs) for which descriptor values were obtained, and number of descriptors following variable selection are reported.</p>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">TID</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Activity class</th>
                                <th align="left" colspan="1" rowspan="1" valign="top"># CPDs</th>
                                <th align="left" colspan="1" rowspan="1" valign="top"># Descriptors</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">11</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Thrombin inhibitors</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1022</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">15</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Carbonic anhydrase II inhibitors</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">2387</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">51</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Serotonin 1a (5-HT1a) receptor ligands</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1939</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">100</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Norepinephrine transporter ligands</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1179</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">107</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Serotonin 2a (5-HT2a) receptor ligands</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1570</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">194</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Coagulation factor X inhibitors</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1586</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">25</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">10193</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Carbonic anhydrase I inhibitors</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">2380</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">12209</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Carbonic anhydrase XII inhibitors</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1750</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">12968</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">Orexin receptor 2 ligands</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1041</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">29</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>For each compound, 45 descriptors were initially calculated using RDKit (
                    <ext-link ext-link-type="uri" xlink:href="http://www.rdkit.org">http://www.rdkit.org</ext-link>). These descriptors included constitutional descriptors (e.g., MW, number of rings, number of rotatable bonds), topological descriptors (e.g., Chi and Kier indices
                    <sup>
                        <xref ref-type="bibr" rid="ref-24">24</xref>
                    </sup>) and partial charge descriptors based on chemical graph&#x2019;s topology (i.e., maximum of Gasteiger/Marsali partial charges
                    <sup>
                        <xref ref-type="bibr" rid="ref-25">25</xref>
                    </sup>). From correlated pairs of descriptors exceeding a correlation coefficient of 0.9, only one was chosen. For each activity class, the final number of descriptors (variables) is reported in 
                    <xref ref-type="table" rid="T1">Table 1</xref>. Compounds from each class were randomly divided into equally sized training and test data sets.</p>
            </sec>
            <sec>
                <title>Virtual screening</title>
                <p>To test the ability of virtual screening (VS) to identify new active compounds from optimized coordinates, ChEMBL (version 22) was used as a screening source. From 1,414,176 unique compounds passing the substructure filters, training molecules used for modeling of each activity class were removed. All remaining ChEMBL compounds provided a large screening source for VS. For screening compounds, descriptors were calculated as described above and the compounds falling inside the AD of each class-specific model were preselected. Active compounds from each activity class not used for training represented true-positive test instances, regardless of their potency values. The calculation of descriptors for more than 1.4 million screening compounds was computationally demanding and exceeded the requirements for coordinate optimization.</p>
                <p>For ChEMBL screening compounds including test instances, two VS ranking were generated. First, Euclidean distances to optimized coordinates were calculated. In this case, compound potency was not considered for ranking. Second, pK
                    <sub>i</sub> values were predicted for all screening compounds using the class-specific SVR models. The latter calculations were carried out to determine if true positives were highly ranked on the basis of activity predictions. The area under the receiver operating characteristic curves (AUC) was calculated as an evaluation criterion.</p>
            </sec>
        </sec>
        <sec>
            <title>Analysis protocol</title>
            <p>Two proof-of-concept studies were carried out, one using simulation data, the other compounds and their activities. For simulation data, AD and regression models were constructed with the training data from each trial. Training data range scaling within the interval [-1,1] was applied prior to model building. For the SVR models, preferred parameter settings were determined using 10-fold cross validation. Coordinate optimization was carried using individual training data points. Optimized coordinates were evaluated on the basis of true y and maximal training data y values.</p>
            <p>The same protocol for coordinate optimization was applied to each compound activity class. Furthermore, for hyper-parameter optimization of SVR, five-fold cross validation was carried out. For &#x03b5;DE, predicted pK
                <sub>i</sub> values falling into the AD of each model were used to ensure that optimized coordinates were proximal to compound coordinates, as assessed by distance calculations. Furthermore, optimized coordinates were projected on principal component analysis (PCA) maps of the 
                <bold>x</bold> space formed by the first and second PC.</p>
            <p>The following &#x03b5;DE parameter settings were applied: Number of iterations, 1,000 and 10,000 for simulation and compounds data sets, respectively; F, 0.5; T
                <sub>c</sub>,1; p, 1; CR, 0.9 for all data sets. An initial population was obtained using 50 vectors of training instances for simulation data and 511 to 1,193 vectors for training compounds, depending on the size of the compound data sets.</p>
            <p>Finally, the ability of distance- and SVR-based VS to predict new active compounds was analyzed. Although 
                <italic toggle="yes">de novo</italic> structure generation was beyond the scope of our investigation, VS might be considered as an alternative way to identify novel active compounds, which was thus examined in the context of our study.</p>
        </sec>
        <sec>
            <title>Implementation</title>
            <p>All SVR models and ADs were constructed with Scikit-learn
                <sup>
                    <xref ref-type="bibr" rid="ref-26">26</xref>
                </sup> 0.18.1 using Python. &#x03b5;DE was implemented in C++. Descriptors were calculated using RDKit interfaced with Python.</p>
            <p>All selected compound entries were standardized by removal of ions and solvent molecules and structure regularization, according to the OEChem toolkit (v1.7.7; OpenEye Scientific Software, Inc. Santa Fe, NM, USA).</p>
        </sec>
        <sec sec-type="results | discussion">
            <title>Results and Discussion</title>
            <sec>
                <title>Differential evolution for inverse QSAR</title>
                <p>Optimization of descriptor coordinates for preferred values of a given model is a central aspect of the two-stage inverse QSAR process, for which currently only approximate solutions exist. Therefore, a more accurate methodology for coordinate optimization is highly desirable, as investigated herein. The evaluation of &#x03b5;DE as an optimization method for this critical task was inspired by previous results obtained for other types of optimization problems where this approach displayed better performance than alternative evolutionary methods, such as genetic algorithms or particle swarm optimization
                    <sup>
                        <xref ref-type="bibr" rid="ref-27">27</xref>&#x2013;
                        <xref ref-type="bibr" rid="ref-29">29</xref>
                    </sup>. Moreover, &#x03b5;-based lexicological comparison of individual feature vectors makes this algorithm straightforward to apply to problems where several constraints must be balanced, as is the case in inverse QSAR. Studies on simulation and compound data sets were designed to evaluate whether &#x03b5;DE was capable of effectively optimizing coordinates on the basis of a regression function.</p>
            </sec>
            <sec>
                <title>Investigating simulation data</title>
                <p>For initial proof-of-concept, &#x03b5;DE-based search for optimized coordinates was carried out using simulation data generated as described above.</p>
                <p>For the three simulation data sets, SVR models were built yielding optimized parameters {&#x03b3;, &#x03bd;, C} of {4, 0.25, 2}, {2, 0.25, 1}, {1, 0.125, 16}, respectively. For all OCSVM models, &#x03b3; was 1. As reported in 
                    <xref ref-type="table" rid="T2">Table 2</xref>, these SVR models accounted for the output of the bird function in a statistically meaningful way.</p>
                <table-wrap id="T2" orientation="portrait" position="anchor">
                    <label>Table 2. </label>
                    <caption>
                        <title>Derivation of the support vector regression model for simulation data sets.</title>
                        <p>For each trial, model performance was assessed on the basis of R
                            <sup>2</sup> and root mean square error (RMSE) values for training and test data sets.</p>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="2" valign="top">Trial</th>
                                <th align="left" colspan="2" rowspan="1" valign="top">Training</th>
                                <th align="left" colspan="2" rowspan="1" valign="top">Test</th>
                            </tr>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">R
                                    <sup>2</sup>
</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">RMSE</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">R
                                    <sup>2</sup>
</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">RMSE</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.00</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.10</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.87</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">5.17</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.96</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">3.22</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.70</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">12.73</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.97</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">3.17</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.84</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">11.99</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>
                    <xref ref-type="fig" rid="f4">Figure 4</xref> shows the different prediction surfaces of the SVR models for the three trial sets. The surfaces of set one and two were overall similar, whereas the surface of set three differed from the others. In each case, however, individual vectors converged at a single point (
                    <xref ref-type="table" rid="T3">Table 3</xref>) and optimized coordinates were located in regions of highest predicted y values (
                    <xref ref-type="fig" rid="f4">Figure 4</xref>). In set one, for which the SVR model overall best accounted for the bird function, a training data point was found adjacent to the optimized coordinates, which slightly exceeded the largest predicted y value (
                    <xref ref-type="table" rid="T3">Table 3</xref>).</p>
                <fig fig-type="figure" id="f4" orientation="portrait" position="float">
                    <label>Figure 4. </label>
                    <caption>
                        <title>Optimized coordinates.</title>
                        <p>For each of three independent trials, optimized coordinates (red squares) and training data (black dots) were mapped on the SVR prediction surface.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure4.gif"/>
                </fig>
                <table-wrap id="T3" orientation="portrait" position="anchor">
                    <label>Table 3. </label>
                    <caption>
                        <title>Prediction of y values.</title>
                        <p>For each simulation data trial, y values predicted by the SVR model are reported. For training data, the largest measured y value is given in parentheses. &#x201c;Domain&#x201d; is defined by x
                            <sub>1</sub> and x
                            <sub>2</sub> with a resolution of 0.005. AD refers to the applicability domain of the OCSVM model. For optimized coordinates, the result of the bird function is given in parentheses as the true y value. (i.e., the y value without error).</p>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Trial</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Training (
                                    <italic toggle="yes">measured y</italic>)</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Domain</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">AD</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Optimized coordinates (
                                    <italic toggle="yes">true y</italic>)</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">1</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">48.92 (50.02)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">50.19</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">50.19</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">50.19 (49.54)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">2</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">26.22 (29.46)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">31.14</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">31.14</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">31.14 (48.09)</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">3</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">58.87 (55.18)</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">71.94</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">59.40</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">59.41 (55.15)</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>For set two, no training data were mapped to local maxima of the bird function, which resulted in a difficult regression scenario. The maximal measured y value in the training data was 29.46 and for optimized coordinates (1.51, 3.16), the predicted y value was 31.14, also slightly exceeding the largest measured y value. However, the predicted value was much smaller than the corresponding true y value of 48.09 (
                    <xref ref-type="table" rid="T3">Table 3</xref>), due to the inherent regression limitation.</p>
                <p>For set three, the maximal true y value within the domain was 56.18 at (-1.59, 0.06). In this case, several training data points were mapped to regions of y values into which optimized coordinates fell (
                    <xref ref-type="fig" rid="f4">Figure 4</xref>), leading to an extrapolative over-prediction of the corresponding y value of 71.94. However, this over-prediction was correctly balanced when the AD of the model was considered instead, leading to a value of 59.40 and a predicted y value for the optimized coordinates of 59.41 (
                    <xref ref-type="table" rid="T3">Table 3</xref>).</p>
                <p>Despite typical regression limitations highlighted by findings for set two and three, the results obtained for simulation data indicated the potential of &#x03b5;DE for predicting optimized coordinates. Importantly, all solutions converged to single vectors representing novel points in simulation data space with large predicted y values falling inside the AD. Taken together, these results indicated the principal potential of &#x03b5;DE for coordinate optimization on the basis of SVR modeling.</p>
            </sec>
            <sec>
                <title>Coordinate optimization for compound data sets</title>
                <p>Next &#x03b5;DE optimization was applied to different compound activity classes. In each case, SVR models were derived, optimized coordinates determined, and activity values predicted.</p>
                <p>For each compound class, optimized coordinates yielded larger predicted pK
                    <sub>i</sub> values than any training or test set compound (
                    <xref ref-type="table" rid="T4">Table 4</xref>), consistent with the methodological strategy. Optimized coordinates fell inside the AD of each model and were proximal to several active compounds. Nearest neighbors of optimized coordinates were mostly predicted to be highly active (
                    <xref ref-type="table" rid="T4">Table 4</xref>), indicating the presence of smooth prediction surfaces in the vicinity of optimized coordinates.</p>
                <table-wrap id="T4" orientation="portrait" position="anchor">
                    <label>Table 4. </label>
                    <caption>
                        <title>Optimized coordinates and nearest neighbors.</title>
                        <p>For optimized coordinates, the predicted pK
                            <sub>i</sub> value and the output of the OCSVM model for the applicability domain (AD) are reported. For training and test instances, the predicted pK
                            <sub>i</sub> value and scaled distance from optimized coordinates are given for the nearest neighbor (NN).</p>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="2" valign="top">TID</th>
                                <th align="center" colspan="2" rowspan="1" valign="top">Optimized
                                    <break/>coordinates</th>
                                <th align="center" colspan="2" rowspan="1" valign="top">NN in training data</th>
                                <th align="center" colspan="2" rowspan="1" valign="top">NN in test data</th>
                            </tr>
                            <tr>
                                <th align="left" colspan="1" rowspan="1" valign="top">Predicted
                                    <break/>pK
                                    <sub>i</sub>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">AD</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Distance</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Predicted
                                    <break/>pK
                                    <sub>i</sub>
                                </th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Distance</th>
                                <th align="left" colspan="1" rowspan="1" valign="top">Predicted
                                    <break/>pK
                                    <sub>i</sub>
                                </th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">11</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">11.49</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.26</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.61</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.50</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.52</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.02</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">15</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">12.20</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.06</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.46</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.21</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.45</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.32</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">51</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.25</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.62</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.39</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.24</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.40</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.09</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">100</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.50</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.22</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.32</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">8.63</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.46</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">7.97</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">107</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">11.43</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.32</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.71</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.78</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.71</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.84</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">194</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">13.03</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.17</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.82</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.92</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.67</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">11.90</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">10193</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.92</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.23</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.33</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">8.86</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.47</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">7.56</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">12209</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.48</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.35</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.72</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">8.99</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.78</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">8.69</td>
                            </tr>
                            <tr>
                                <td align="left" colspan="1" rowspan="1" valign="top">12968</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">10.12</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">0.21</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.06</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.40</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">1.07</td>
                                <td align="left" colspan="1" rowspan="1" valign="top">9.39</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
                <p>Prediction surfaces were further characterized graphically by systematically comparing predicted pK
                    <sub>i</sub> values of compounds and calculated distances to optimized coordinates. 
                    <xref ref-type="fig" rid="f5">Figure 5</xref> shows the results for two exemplary activity classes, and 
                    <xref ref-type="other" rid="SF1">Figure S1</xref> shows the results for all classes. For set 51 (5-HT1a receptor ligands) in 
                    <xref ref-type="fig" rid="f5">Figure 5</xref>, many highly active compounds were located proximal to the optimized coordinates, indicating that these coordinates fell into a well-populated region of activity-relevant chemical space. For set 194 (factor X inhibitors), training and test compounds tended to exhibit higher predicted pK
                    <sub>i</sub> with decreasing distance to the optimized coordinates, hence delineating regions of activity progression, which are relevant for compound optimization and exploitation of optimized coordinates.</p>
                <fig fig-type="figure" id="f5" orientation="portrait" position="float">
                    <label>Figure 5. </label>
                    <caption>
                        <title>Activity prediction.</title>
                        <p>For two exemplary activity classes, predicted pK
                            <sub>i</sub> values are related to the scaled distance of the corresponding compounds to the optimized coordinates. Training data (cyan squares), test data (magenta squares), and optimized coordinates (green circle) are shown.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure5.gif"/>
                </fig>
                <p>Data set compounds and optimized coordinates were also projected onto PCA plots of descriptor space (
                    <xref ref-type="fig" rid="f6">Figure 6</xref>,
                    <xref ref-type="other" rid="SF1">Figure S2</xref>). These projections revealed that optimized coordinates were central to activity class regions in feature space. Furthermore, 
                    <xref ref-type="fig" rid="f7">Figure 7</xref> shows structures of the three nearest neighbors of the optimized coordinates for sets 51 and 194. In both cases, these compounds were structural analogs. Hence, similarity in feature space corresponded to close structural relationships. Consequently, this would also apply to structure generation from optimized coordinates, which would result in additional analog(s), consistent with the principles of QSAR and inverse QSAR.</p>
                <fig fig-type="figure" id="f6" orientation="portrait" position="float">
                    <label>Figure 6. </label>
                    <caption>
                        <title>Projection of optimized coordinates.</title>
                        <p>For the two activity classes from 
                            <xref ref-type="fig" rid="f5">Figure 5</xref>, training data (cyan squares), test data (magenta squares), and optimized coordinates (green circle) were projected on a principal component (PC) plot derived from training data. For PC1 and PC2, contributions to data set variance are reported in %.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure6.gif"/>
                </fig>
                <fig fig-type="figure" id="f7" orientation="portrait" position="float">
                    <label>Figure 7. </label>
                    <caption>
                        <title>Nearest neighbors of optimized coordinates.</title>
                        <p>For the two activity classes in 
                            <xref ref-type="fig" rid="f5">Figure 5</xref> and 
                            <xref ref-type="fig" rid="f6">Figure 6</xref>, structures of the three nearest neighbors of optimized coordinates are shown and their ChEMBL IDs, scaled distances to the optimized coordinates and predicted pK
                            <sub>i</sub> values, are reported.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure7.gif"/>
                </fig>
            </sec>
            <sec>
                <title>Virtual screening</title>
                <p>ChEMBL compounds were screened relative to optimized coordinates from the nine activity classes and Euclidian distances were determined. Furthermore, pK
                    <sub>i</sub> values were predicted for screening compounds falling into the AD of each class-specific SVR model. The VS calculations ultimately led to alternative distance- and potency-based compound rankings. 
                    <xref ref-type="table" rid="T5">Table 5</xref> reports screening compound statistics and VS results. For each activity class, screening compounds contained large numbers (497&#x2013;1152) of true positive test instances. Distance-based VS yielded AUC values of at least 0.6 for five of nine activity classes, with a maximum of 0.76. For the four remaining classes, essentially random predictions were observed. Potency-based VS produced AUC values of greater than 0.6 for seven of nine classes, including values above 0.7 for three classes and a maximum of 0.77. Thus, potency-based predictions led to slightly better compound rankings than distance-based VS relative to optimized coordinates, but prediction accuracy was overall moderate at best. Moreover, the true positive ratio among the 30 top-ranked compounds was generally very low for both distance- and potency-based VS. 
                    <xref ref-type="fig" rid="f8">Figure 8</xref> shows exemplary potency prediction landscapes including optimized coordinates as a reference. 
                    <xref ref-type="other" rid="SF1">Figure S3</xref> shows these representations for all activity classes. Highly potent compounds proximal to optimized coordinates were predicted for several activity classes. However, most true positives were not separated from the bulk of ChEMBL screening compounds on the basis of potency predictions. Overall the ability of VS calculations to identify novel active compounds and separate them from false positives was only limited. Thus, although 
                    <italic toggle="yes">de novo</italic> structure generation from optimized coordinates is challenging, it would be difficult to replace the structure generation step in two-stage inverse QSAR with standard VS calculations. However, despite limited prediction accuracy, the VS calculations provided support for the chemical relevance of optimized coordinates because for each activity class, at least few true positives were among top-scoring screening compounds and proximal to optimized coordinates.</p>
                <fig fig-type="figure" id="f8" orientation="portrait" position="float">
                    <label>Figure 8. </label>
                    <caption>
                        <title>Activity prediction for ChEMBL compounds.</title>
                        <p>For the two activity classes from 
                            <xref ref-type="fig" rid="f5">Figure 5</xref>, predicted pK
                            <sub>i</sub> values are plotted against the scaled distance of corresponding compounds to the optimized coordinates. ChEMBL compounds (gray squares) and test compounds according to 
                            <xref ref-type="fig" rid="f5">Figure 5</xref> (magenta squares) falling inside the applicability domain are shown. Optimized coordinates are displayed as a green circle.</p>
                    </caption>
                    <graphic orientation="portrait" position="float" xlink:href="https://f1000research-files.f1000.com/manuscripts/13238/0c60d43c-19ac-47dc-a349-0637e4d3e00c_figure8.gif"/>
                </fig>
                <table-wrap id="T5" orientation="portrait" position="anchor">
                    <label>Table 5. </label>
                    <caption>
                        <title>Virtual screening details.</title>
                        <p>Compound (CPD) statistics and VS results for distance-based compound rankings relative to optimized coordinates and potency-based rankings are reported.</p>
                    </caption>
                    <table content-type="article-table" frame="hsides">
                        <thead>
                            <tr>
                                <th align="left" colspan="1" rowspan="2" valign="top">TID</th>
                                <th align="center" colspan="3" rowspan="1" valign="top"># ChEMBL compounds</th>
                                <th align="center" colspan="2" rowspan="1" valign="top">AUC</th>
                                <th align="center" colspan="2" rowspan="1" valign="top">True positive ratio (top 30 compounds)</th>
                            </tr>
                            <tr>
                                <th align="center" colspan="1" rowspan="1" valign="top">Screening CPDs</th>
                                <th align="center" colspan="1" rowspan="1" valign="top">CPDs in AD</th>
                                <th align="center" colspan="1" rowspan="1" valign="top">True positive</th>
                                <th align="center" colspan="1" rowspan="1" valign="top">Distance-
                                    <break/>based</th>
                                <th align="center" colspan="1" rowspan="1" valign="top">Potency-
                                    <break/>based</th>
                                <th align="center" colspan="1" rowspan="1" valign="top">Distance-
                                    <break/>based</th>
                                <th align="center" colspan="1" rowspan="1" valign="top">Potency-
                                    <break/>based</th>
                            </tr>
                        </thead>
                        <tbody>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">11</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,665</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,004,761</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">497</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.76</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.51</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.30</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.13</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">15</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,412,983</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,020,546</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1145</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.48</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.77</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.07</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">51</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,207</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">822,453</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">935</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.66</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.69</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.43</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.27</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">100</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,587</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">835,967</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">561</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.64</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.75</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.17</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">107</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,391</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">865,660</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">736</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.56</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.61</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.10</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.10</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">194</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,383</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">535,306</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">727</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.51</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.64</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.17</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.13</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">10193</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,412,986</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,172,027</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1152</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.62</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.68</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.07</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.07</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">12209</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,301</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">942,956</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">838</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.55</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.73</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.00</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.00</td>
                            </tr>
                            <tr>
                                <td align="center" colspan="1" rowspan="1" valign="top">12968</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">1,413,656</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">217,995</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">502</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.60</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.50</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.03</td>
                                <td align="center" colspan="1" rowspan="1" valign="top">0.03</td>
                            </tr>
                        </tbody>
                    </table>
                </table-wrap>
            </sec>
        </sec>
        <sec sec-type="conclusions">
            <title>Conclusions</title>
            <p>The optimization of coordinates in feature space for high activity values predicted with a regression model is a central task in two-stage inverse QSAR. For this multi-constraint optimization problem, no generally applicable approach is currently available. The evaluation of differential evolution for coordinate optimization, as reported herein, was motivated by the successful application of this algorithm in areas of science other than chemistry. The study has provided proof-of-concept evidence that &#x03b5;DE is suitable for generating optimized coordinates in given feature spaces. For different compound classes, consistent predictions were obtained for &#x03b5;DE in combination with SVR, displaying robust convergence behavior and yielding optimized coordinates that not only met statistical and data set requirements, but were also chemically relevant, as indicated by compound mapping and distance- or potency-based VS calculations. However, due to limited prediction accuracy, distance-based VS relative to optimized coordinates would not be suitable to replace the 
                <italic toggle="yes">de novo</italic> structure generation step in inverse QSAR, at least not on the basis of our reference calculations. Regardless, encouraging results were obtained for coordinate optimization. Taken together, the findings reported herein indicate that &#x03b5;DE optimization has the potential to further advance inverse QSAR analysis.</p>
        </sec>
        <sec>
            <title>Data availability</title>
            <p>The data sets used in this study are freely available in ChEMBL via the identifiers reported in the manuscript.</p>
        </sec>
    </body>
    <back>
        <ack>
            <title>Acknowledgements</title>
            <p>TM is a Fellow of the 
                <italic toggle="yes">Japan Society for the Promotion of Science</italic>.</p>
        </ack>
        <sec id="SM1" sec-type="supplementary-material">
            <title>Supplementary material</title>
            <p id="SF1">
                <bold>Supplementary Figures S1-S3:</bold> Prediction surfaces and PCA projections for different activity classes and prediction surfaces for the ChEMBL screening data set, respectively. 
                <ext-link ext-link-type="uri" xlink:href="https://f1000researchdata.s3.amazonaws.com/supplementary/12228/10d78515-6c8e-433c-81cb-5b8081cb6c84.docx">Click here to access the data</ext-link>.</p>
        </sec>
        <ref-list>
            <ref id="ref-1">
                <label>1</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Kier</surname>
                            <given-names>LB</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Hall</surname>
                            <given-names>LH</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Frazer</surname>
                            <given-names>JW</given-names>
                        </name>
					</person-group>:
                    <article-title>Design of Molecules from Quantitative Structure-Activity Relationship Models. 1. Information Transfer between Path and Vertex Degree Counts.</article-title>
                    <source>
						
                        <italic toggle="yes">J Chem Inf Comput Sci.</italic>
					</source>
                    <year>1993</year>;<volume>33</volume>(<issue>1</issue>):<fpage>143</fpage>&#x2013;<lpage>147</lpage>.
                    <pub-id pub-id-type="doi">10.1021/ci00011a021</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-2">
                <label>2</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Hall</surname>
                            <given-names>LH</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Kier</surname>
                            <given-names>LB</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Frazer</surname>
                            <given-names>JW</given-names>
                        </name>
					</person-group>:
                    <article-title>Design of Molecules from Quantitative Structure-Activity Relationship Models. 2. Derivation and Proof of Information Transfer Relating Equations.</article-title>
                    <source>
						
                        <italic toggle="yes">J Chem Inf Comput Sci.</italic>
					</source>
                    <year>1993</year>;<volume>33</volume>(<issue>1</issue>):<fpage>148</fpage>&#x2013;<lpage>152</lpage>.
                    <pub-id pub-id-type="doi">10.1021/ci00011a022</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-3">
                <label>3</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Skvortsova</surname>
                            <given-names>MI</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Baskin</surname>
                            <given-names>II</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Slovokhotova</surname>
                            <given-names>OL</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>Inverse Problem in QSAR/QSPR Studies for the Case of Topological Indexes Characterizing Molecular Shape (Kier Indices).</article-title>
                    <source>
						
                        <italic toggle="yes">J Chem Inf Comput Sci.</italic>
					</source>
                    <year>1993</year>;<volume>33</volume>(<issue>4</issue>):<fpage>630</fpage>&#x2013;<lpage>634</lpage>.
                    <pub-id pub-id-type="doi">10.1021/ci00014a017</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-4">
                <label>4</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Skvortsova</surname>
                            <given-names>MI</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Fedyaev</surname>
                            <given-names>KS</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Palyulin</surname>
                            <given-names>VA</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>Inverse Structure-Property Relationship Problem for the Case of a Correlation Equation Containing the Hosoya Index.</article-title>
                    <source>
						
                        <italic toggle="yes">Dokl Chem.</italic>
					</source>
                    <year>2001</year>;<volume>379</volume>(<issue>1&#x2013;3</issue>):<fpage>191</fpage>&#x2013;<lpage>195</lpage>.
                    <pub-id pub-id-type="doi">10.1023/A:1019217526008</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-5">
                <label>5</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Schneider</surname>
                            <given-names>G</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Baringhaus</surname>
                            <given-names>KH</given-names>
                        </name>
					</person-group>:
                    <article-title>
                        <italic toggle="yes">De Novo</italic> Design: From Models to Molecules</article-title>. In:
                    <italic toggle="yes">De novo Molecular Design</italic>. Wiley-VCH Verlag GmbH &amp; Co. KGaA Weinheim Germany;<year>2013</year>;<fpage>1</fpage>&#x2013;<lpage>55</lpage>.
                    <pub-id pub-id-type="doi">10.1002/9783527677016.ch1</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-6">
                <label>6</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Speck-Planche</surname>
                            <given-names>A</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Cordeiro</surname>
                            <given-names>MN</given-names>
                        </name>
					</person-group>:
                    <article-title>Fragment-based 
                        <italic toggle="yes">in silico</italic> modeling of multi-target inhibitors against breast cancer-related proteins.</article-title>
                    <source>
						
                        <italic toggle="yes">Mol Divers.</italic>
					</source>
                    <year>2017</year>;<fpage>1</fpage>&#x2013;<lpage>13</lpage>.
                    <pub-id pub-id-type="pmid">28194627</pub-id>
                    <pub-id pub-id-type="doi">10.1007/s11030-017-9731-1</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-7">
                <label>7</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Speck-Planche</surname>
                            <given-names>A</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Dias Soeiro Cordeiro</surname>
                            <given-names>MN</given-names>
                        </name>
					</person-group>:
                    <article-title>Speeding up Early Drug Discovery in Antiviral Research: A Fragment-Based 
                        <italic toggle="yes">in Silico</italic> Approach for the Design of Virtual Anti-Hepatitis C Leads.</article-title>
                    <source>
						
                        <italic toggle="yes">ACS Comb Sci.</italic>
					</source>
                    <year>2017</year>.
                    <pub-id pub-id-type="pmid">28437091</pub-id>
                    <pub-id pub-id-type="doi">10.1021/acscombsci.7b00039</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-8">
                <label>8</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Faulon</surname>
                            <given-names>JL</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Visco</surname>
                            <given-names>DP</given-names>
                            <suffix>Jr</suffix>
                        </name>
						
                        <name name-style="western">
                            <surname>Pophale</surname>
                            <given-names>RS</given-names>
                        </name>
					</person-group>:
                    <article-title>The signature molecular descriptor. 1. Using extended valence sequences in QSAR and QSPR studies.</article-title>
                    <source>
						
                        <italic toggle="yes">J Chem Inf Comput Sci.</italic>
					</source>
                    <year>2003</year>;<volume>43</volume>(<issue>3</issue>):<fpage>707</fpage>&#x2013;<lpage>720</lpage>.
                    <pub-id pub-id-type="pmid">12767129</pub-id>
                    <pub-id pub-id-type="doi">10.1021/ci020345w</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-9">
                <label>9</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Faulon</surname>
                            <given-names>JL</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Churchwell</surname>
                            <given-names>CJ</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Visco</surname>
                            <given-names>DP</given-names>
                            <suffix>Jr</suffix>
                        </name>
					</person-group>:
                    <article-title>The signature molecular descriptor. 2. Enumerating molecules from their extended valence sequences.</article-title>
                    <source>
						
                        <italic toggle="yes">J Chem Inf Comput Sci.</italic>
					</source>
                    <year>2003</year>;<volume>43</volume>(<issue>3</issue>):<fpage>721</fpage>&#x2013;<lpage>734</lpage>.
                    <pub-id pub-id-type="pmid">12767130</pub-id>
                    <pub-id pub-id-type="doi">10.1021/ci020346o</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-10">
                <label>10</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Churchwell</surname>
                            <given-names>CJ</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Rintoul</surname>
                            <given-names>MD</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Martin</surname>
                            <given-names>S</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>The signature molecular descriptor. 3. Inverse-quantitative structure-activity relationship of ICAM-1 inhibitory peptides.</article-title>
                    <source>
						
                        <italic toggle="yes">J Mol Graph Model.</italic>
					</source>
                    <year>2004</year>;<volume>22</volume>(<issue>4</issue>):<fpage>263</fpage>&#x2013;<lpage>273</lpage>.
                    <pub-id pub-id-type="pmid">15177078</pub-id>
                    <pub-id pub-id-type="doi">10.1016/j.jmgm.2003.10.002</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-11">
                <label>11</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Weis</surname>
                            <given-names>DC</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Faulon</surname>
                            <given-names>JL</given-names>
                        </name>
							
                        <name name-style="western">
                            <surname>LeBorne</surname>
                            <given-names>RC</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>The Signature Molecular Descriptor. 5. The Design of Hydrofluoroether Foam Blowing Agents Using Inverse-QSAR.</article-title>
                    <source>
						
                        <italic toggle="yes">Ind Eng Chem Res.</italic>
					</source>
                    <year>2005</year>;<volume>44</volume>(<issue>23</issue>):<fpage>8883</fpage>&#x2013;<lpage>8891</lpage>.
                    <pub-id pub-id-type="doi">10.1021/ie050330y</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-12">
                <label>12</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Wong</surname>
                            <given-names>WW</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Burkowski</surname>
                            <given-names>FJ</given-names>
                        </name>
					</person-group>:
                    <article-title>A constructive approach for discovering new drug leads: Using a kernel methodology for the inverse-QSAR problem.</article-title>
                    <source>
						
                        <italic toggle="yes">J Cheminform.</italic>
					</source>
                    <year>2009</year>;<volume>1</volume>:<fpage>4</fpage>.
                    <pub-id pub-id-type="pmid">20142987</pub-id>
                    <pub-id pub-id-type="doi">10.1186/1758-2946-1-4</pub-id>
                    <pub-id pub-id-type="pmcid">2816860</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-13">
                <label>13</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Miyao</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Kaneko</surname>
                            <given-names>H</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Funatsu</surname>
                            <given-names>K</given-names>
                        </name>
					</person-group>:
                    <article-title>Ring-System-Based Exhaustive Structure Generation for Inverse-QSPR/QSAR.</article-title>
                    <source>
						
                        <italic toggle="yes">Mol Inform.</italic>
					</source>
                    <year>2014</year>;<volume>33</volume>(<issue>11&#x2013;12</issue>):<fpage>764</fpage>&#x2013;<lpage>778</lpage>.
                    <pub-id pub-id-type="pmid">27485423</pub-id>
                    <pub-id pub-id-type="doi">10.1002/minf.201400072</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-14">
                <label>14</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Miyao</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Kaneko</surname>
                            <given-names>H</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Funatsu</surname>
                            <given-names>K</given-names>
                        </name>
					</person-group>:
                    <article-title>Inverse QSPR/QSAR Analysis for Chemical Structure Generation (from y to x).</article-title>
                    <source>
						
                        <italic toggle="yes">J Chem Inf Model.</italic>
					</source>
                    <year>2016</year>;<volume>56</volume>(<issue>2</issue>):<fpage>286</fpage>&#x2013;<lpage>299</lpage>.
                    <pub-id pub-id-type="pmid">26818135</pub-id>
                    <pub-id pub-id-type="doi">10.1021/acs.jcim.5b00628</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-15">
                <label>15</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Miyao</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Kaneko</surname>
                            <given-names>H</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Funatsu</surname>
                            <given-names>K</given-names>
                        </name>
					</person-group>:
                    <article-title>Ring system-based chemical graph generation for 
                        <italic toggle="yes">de novo</italic> molecular design.</article-title>
                    <source>
						
                        <italic toggle="yes">J Comput Aided Mol Des.</italic>
					</source>
                    <year>2016</year>;<volume>30</volume>(<issue>5</issue>):<fpage>425</fpage>&#x2013;<lpage>446</lpage>.
                    <pub-id pub-id-type="pmid">27299746</pub-id>
                    <pub-id pub-id-type="doi">10.1007/s10822-016-9916-1</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-16">
                <label>16</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Storn</surname>
                            <given-names>R</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Price</surname>
                            <given-names>K</given-names>
                        </name>
					</person-group>:
                    <article-title>Differential Evolution &#x2013; A Simple and Efficient Heuristic for Global Optimization over Continuous Spaces.</article-title>
                    <source>
						
                        <italic toggle="yes">J Global Optim.</italic>
					</source>
                    <year>1997</year>;<volume>11</volume>(<issue>4</issue>):<fpage>341</fpage>&#x2013;<lpage>359</lpage>.
                    <pub-id pub-id-type="doi">10.1023/A:1008202821328</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-17">
                <label>17</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Onwubolu</surname>
                            <given-names>G</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Davendra</surname>
                            <given-names>D</given-names>
                        </name>
					</person-group>:
                    <article-title>Scheduling Flow Shops Using Differential Evolution Algorithm.</article-title>
                    <source>
						
                        <italic toggle="yes">Eur J Oper Res.</italic>
					</source>
                    <year>2006</year>;<volume>171</volume>(<issue>2</issue>):<fpage>674</fpage>&#x2013;<lpage>692</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.ejor.2004.08.043</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-18">
                <label>18</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Takahama</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Sakai</surname>
                            <given-names>S</given-names>
                        </name>
					</person-group>:
                    <article-title>Constrained Optimization by the &#x03b5; Constrained Differential Evolution with Gradient-Based Mutation and Feasible Elites</article-title>. In:
                    <italic toggle="yes">2006 IEEE International Conference on Evolutionary Computation</italic>. IEEE;<year>2006</year>;<fpage>1</fpage>&#x2013;<lpage>8</lpage>.
                    <pub-id pub-id-type="doi">10.1109/CEC.2006.1688283</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-19">
                <label>19</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Smola</surname>
                            <given-names>AJ</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Sch&#x00f6;lkopf</surname>
                            <given-names>B</given-names>
                        </name>
					</person-group>:
                    <article-title>A Tutorial on Support Vector Regression.</article-title>
                    <source>
						
                        <italic toggle="yes">Stat Comput.</italic>
					</source>
                    <year>2004</year>;<volume>14</volume>(<issue>3</issue>):<fpage>199</fpage>&#x2013;<lpage>222</lpage>.
                    <pub-id pub-id-type="doi">10.1023/B:STCO.0000035301.49549.88</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-20">
                <label>20</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Sch&#x00f6;lkopf</surname>
                            <given-names>B</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Platt</surname>
                            <given-names>JC</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Shawe-Taylor</surname>
                            <given-names>J</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>Estimating the Support of a High-Dimensional Distribution.</article-title>
                    <source>
						
                        <italic toggle="yes">Neural Comput.</italic>
					</source>
                    <year>2001</year>;<volume>13</volume>(<issue>7</issue>):<fpage>1443</fpage>&#x2013;<lpage>1471</lpage>.
                    <pub-id pub-id-type="pmid">11440593</pub-id>
                    <pub-id pub-id-type="doi">10.1162/089976601750264965</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-21">
                <label>21</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Tang</surname>
                            <given-names>Y</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Guo</surname>
                            <given-names>W</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Gao</surname>
                            <given-names>J</given-names>
                        </name>
					</person-group>:
                    <article-title>Efficient Model Selection for Support Vector Machine with Gaussian Kernel Function</article-title>. In:
                    <italic toggle="yes">2009 IEEE Symposium on Computational Intelligence and Data Mining</italic>; IEEE,<year>2009</year>;<fpage>40</fpage>&#x2013;<lpage>45</lpage>.
                    <pub-id pub-id-type="doi">10.1109/CIDM.2009.4938627</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-22">
                <label>22</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Bento</surname>
                            <given-names>AP</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Gaulton</surname>
                            <given-names>A</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Hersey</surname>
                            <given-names>A</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>The ChEMBL bioactivity database: an update.</article-title>
                    <source>
						
                        <italic toggle="yes">Nucleic Acids Res.</italic>
					</source>
                    <year>2014</year>;<volume>42</volume>(<issue>Database issue</issue>):<fpage>D1083</fpage>&#x2013;<lpage>D1090</lpage>.
                    <pub-id pub-id-type="pmid">24214965</pub-id>
                    <pub-id pub-id-type="doi">10.1093/nar/gkt1031</pub-id>
                    <pub-id pub-id-type="pmcid">3965067</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-23">
                <label>23</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Baell</surname>
                            <given-names>JB</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Holloway</surname>
                            <given-names>GA</given-names>
                        </name>
					</person-group>:
                    <article-title>New substructure filters for removal of pan assay interference compounds (PAINS) from screening libraries and for their exclusion in bioassays.</article-title>
                    <source>
						
                        <italic toggle="yes">J Med Chem.</italic>
					</source>
                    <year>2010</year>;<volume>53</volume>(<issue>7</issue>):<fpage>2719</fpage>&#x2013;<lpage>2740</lpage>.
                    <pub-id pub-id-type="pmid">20131845</pub-id>
                    <pub-id pub-id-type="doi">10.1021/jm901137j</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-24">
                <label>24</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Hall</surname>
                            <given-names>LH</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Kier</surname>
                            <given-names>LB</given-names>
                        </name>
					</person-group>:
                    <article-title>The Molecular Connectivity Chi Indexes and Kappa Shape Indexes in Structure-Property Modeling</article-title>. John Wiley &amp; Sons, Inc.;<year>2007</year>;
                    <bold>2</bold>:<fpage>367</fpage>&#x2013;<lpage>422</lpage>.
                    <pub-id pub-id-type="doi">10.1002/9780470125793.ch9</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-25">
                <label>25</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Gasteiger</surname>
                            <given-names>J</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Marsili</surname>
                            <given-names>M</given-names>
                        </name>
					</person-group>:
                    <article-title>Iterative Partial Equalization of Orbital Electronegativity - a Rapid Access to Atomic Charges.</article-title>
                    <source>
						
                        <italic toggle="yes">Tetrahedron.</italic>
					</source>
                    <year>1980</year>;<volume>36</volume>(<issue>22</issue>):<fpage>3219</fpage>&#x2013;<lpage>3228</lpage>.
                    <pub-id pub-id-type="doi">10.1016/0040-4020(80)80168-2</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-26">
                <label>26</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Pedregosa</surname>
                            <given-names>F</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Varoquaux</surname>
                            <given-names>G</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Gramfort</surname>
                            <given-names>A</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>Scikit-Learn: Machine Learning in Python.</article-title>
                    <source>
						
                        <italic toggle="yes">J Mach Learn Res.</italic>
					</source>
                    <year>2011</year>;<volume>12</volume>:<fpage>2825</fpage>&#x2013;<lpage>2830</lpage>.
                    <ext-link ext-link-type="uri" xlink:href="http://www.jmlr.org/papers/volume12/pedregosa11a/pedregosa11a.pdf">Reference Source</ext-link>
                </mixed-citation>
            </ref>
            <ref id="ref-27">
                <label>27</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Dong</surname>
                            <given-names>X</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Liu</surname>
                            <given-names>S</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Tao</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>A Comparative Study of Differential Evolution and Genetic Algorithms for Optimizing the Design of Water Distribution Systems.</article-title>
                    <source>
						
                        <italic toggle="yes">J Zhejiang Univ Sci A.</italic>
					</source>
                    <year>2012</year>;<volume>13</volume>(<issue>9</issue>):<fpage>674</fpage>&#x2013;<lpage>686</lpage>.
                    <pub-id pub-id-type="doi">10.1631/jzus.A1200072</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-28">
                <label>28</label>
                <mixed-citation publication-type="book">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Tu&#x0161;ar</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Filipi&#x010d;</surname>
                            <given-names>B</given-names>
                        </name>
					</person-group>:
                    <article-title>Differential Evolution versus Genetic Algorithms in Multiobjective Optimization</article-title>. In:
                    <italic toggle="yes">Evolutionary Multi-Criterion Optimization</italic>. Springer Berlin Heidelberg: Berlin, Heidelberg;<year>2007</year>;<fpage>257</fpage>&#x2013;<lpage>271</lpage>.
                    <pub-id pub-id-type="doi">10.1007/978-3-540-70928-2_22</pub-id>
                </mixed-citation>
            </ref>
            <ref id="ref-29">
                <label>29</label>
                <mixed-citation publication-type="journal">
                    <person-group person-group-type="author">
						
                        <name name-style="western">
                            <surname>Iwan</surname>
                            <given-names>M</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Akmeliawati</surname>
                            <given-names>R</given-names>
                        </name>
						
                        <name name-style="western">
                            <surname>Faisal</surname>
                            <given-names>T</given-names>
                        </name>
						
                        <etal/>
					</person-group>:
                    <article-title>Performance Comparison of Differential Evolution and Particle Swarm Optimization in Constrained Optimization.</article-title>
                    <source>
						
                        <italic toggle="yes">Procedia Eng.</italic>
					</source>
                    <year>2012</year>;<volume>41</volume>:<fpage>1323</fpage>&#x2013;<lpage>1328</lpage>.
                    <pub-id pub-id-type="doi">10.1016/j.proeng.2012.07.317</pub-id>
                </mixed-citation>
            </ref>
        </ref-list>
    </back>
    <sub-article article-type="reviewer-report" id="report24662">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.13238.r24662</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Walters</surname>
                        <given-names>W. Patrick</given-names>
                    </name>
                    <xref ref-type="aff" rid="r24662a1">1</xref>
                    <role>Referee</role>
                    <uri content-type="orcid">https://orcid.org/0000-0003-2860-7958</uri>
                </contrib>
                <aff id="r24662a1">
                    <label>1</label>Relay Therapeutics, Cambridge, MA, USA</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>Prof Bajorath and I are Gateway Advisors for the channel in which the article is published. </p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>29</day>
                <month>8</month>
                <year>2017</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2017 Walters WP</copyright-statement>
                <copyright-year>2017</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport24662" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.12228.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>This paper describes a new method for approaching one aspect of the inverse QSAR problem. &#x00a0;As the authors point out, the inverse QSAR problem can be divided into two steps. &#x00a0; 
                <list list-type="order">
                    <list-item>
                        <p>The generation of a set of coordinates, in some multidimensional space, that corresponds to one or more optimal compounds. &#x00a0;</p>
                    </list-item>
                    <list-item>
                        <p>The generation of molecular graphs that would produce chemical structures with descriptor values corresponding to these coordinates. &#x00a0;</p>
                    </list-item>
                </list> This paper focuses on the first problem and does not address the second.&#x00a0;</p>
            <p> </p>
            <p> The paper is well written and the topic will be of interest to computational chemists working in both industry and academia. &#x00a0;The methodology is described well and an individual with some QSAR expertise should be able to reproduce this work. &#x00a0;However, in the interest of making it easier to reproduce the work described here, and making the method more widely available, it would be useful for the authors to make a reference implementation available. &#x00a0;On a similar note, the authors mention that the ChEMBL datasets are available from the original source. &#x00a0;As a service to those readers who would like to reproduce the work, it would be useful if the authors provided the specific datasets used in this paper as a download. &#x00a0;As part of this download, the authors could also include a list of specific descriptors used and annotate which compounds were rejected due to PAINS filters. &#x00a0;</p>
            <p> </p>
            <p> The definition of the applicability domain used in this paper could be expanded. &#x00a0;It would be useful for the authors to provide a specific worked example demonstrating how the applicability domain is defined for one of the ChEMBL examples described in the paper. &#x00a0;This example could be expanded to demonstrate how a set of optimal coordinates is defined.&#x00a0;</p>
            <p> </p>
            <p> One other beneficial addition to this paper would be a comparison with established methods. &#x00a0;The authors provide the results of virtual screening based on their method but do not provide a comparison with commonly used techniques. &#x00a0;One way to do this would be to provide a simple comparison with an SVM model for activity calculated based on the same descriptions. &#x00a0;A comparison with activity calculated based on nearest neighbors in a simple principal component space could also be provided. &#x00a0;</p>
            <p> </p>
            <p> A few specific comments:</p>
            <p> </p>
            <p> It is unclear what the RMSE value is in Table 2. &#x00a0;This is on an arbitrary dataset, how should RMSE be interpreted?&#x00a0;</p>
            <p> </p>
            <p> There appear to be a number of errors in the chemical structures in Figure 7.</p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Yes</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Yes</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>Yes</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Yes</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Yes</p>
            <p>Reviewer Expertise:</p>
            <p>computational chemistry, cheminformatics</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report24700">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.13238.r24700</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Goldman</surname>
                        <given-names>Brian</given-names>
                    </name>
                    <xref ref-type="aff" rid="r24700a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r24700a1">
                    <label>1</label>Modeling &amp; Informatics, Vertex Pharmaceuticals, Boston, MA, USA</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>25</day>
                <month>8</month>
                <year>2017</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2017 Goldman B</copyright-statement>
                <copyright-year>2017</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport24700" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.12228.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>This is an extremely well written submission by Bajorath 
                <italic>et. al</italic> detailing an important aspect of the inverse QSAR problem, namely the generation of a feature vector optimizing the output of a QSAR equation.&#x00a0; An interesting and novel component of the work is that constrained optimization is utilized ensuring generated solutions lie within the domain of applicability of the QSAR model.&#x00a0; This paper is primarily of theoretical interest in that due to inherent limitations with inverse-QSAR the technique is rarely adopted as a means of drug discovery.&#x00a0; The primary reason for the lack of adoption revolving around the de-novo design of compounds matching optimized descriptor values.</p>
            <p> The introduction to the paper covers the relevant literature but could be made stronger by discussing the recent work of G&#x00f3;mez-Bombarelli 
                <italic>et. al.</italic>
                <sup>
                    <xref ref-type="bibr" rid="rep-ref-24700-1">1</xref>
                </sup>
                <italic> </italic>who use generative models to approach the inverse-QSAR problem.&#x00a0; Their work concerns building and optimizing QSAR equations in the latent space of an autoencoder and subsequently decoding optimized points into molecular structures.&#x00a0; Although the work by G&#x00f3;mez-Bombarelli is preliminary, it addresses both QSAR optimization and structure generation and would most likely be interesting to readers of the current paper.</p>
            <p> An aspect of the current technique that could be discussed in the paper is the generation of a family of solutions.&#x00a0; Currently, the presented technique produces one optimized feature vector.&#x00a0; It would strengthen the paper if the authors discussed how a family of diverse feature vectors (structures) could be evolved using the presented methodology.&#x00a0;</p>
            <p> Overall, the paper in its current form is more than acceptable. The methodology is clearly delineated and sufficiently supported by the included results.</p>
            <p> Minor points: 
                <list list-type="bullet">
                    <list-item>
                        <p>Figure 3: it would be informative to highlight the optimal point with a particular glyph (perhaps a red star?)</p>
                    </list-item>
                    <list-item>
                        <p>Figure 7: Chemical structures look suspect and should be checked</p>
                    </list-item>
                </list>
            </p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Yes</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Yes</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>No source data required</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Yes</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Yes</p>
            <p>Reviewer Expertise:</p>
            <p>machine learning, cheminformatics, algorithms</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
        <back>
            <ref-list>
                <title>References</title>
                <ref id="rep-ref-24700-1">
                    <label>1</label>
                    <mixed-citation>
                        <person-group person-group-type="author"/>:
                        <article-title>Automatic chemical design using a data-driven continuous representation of molecules</article-title>.
                        <source>
                            <italic>arXiv</italic>
                        </source>.<year>2017</year>;
                        <ext-link ext-link-type="uri" xlink:href="https://arxiv.org/abs/1610.02415">Reference source</ext-link>
                    </mixed-citation>
                </ref>
            </ref-list>
        </back>
    </sub-article>
    <sub-article article-type="reviewer-report" id="report24665">
        <front-stub>
            <article-id pub-id-type="doi">10.5256/f1000research.13238.r24665</article-id>
            <title-group>
                <article-title>Reviewer response for version 1</article-title>
            </title-group>
            <contrib-group>
                <contrib contrib-type="author">
                    <name>
                        <surname>Matter</surname>
                        <given-names>Hans</given-names>
                    </name>
                    <xref ref-type="aff" rid="r24665a1">1</xref>
                    <role>Referee</role>
                </contrib>
                <aff id="r24665a1">
                    <label>1</label>R&amp;D IDD / Structure, Design &amp; Informatics, Sanofi-Aventis Deutschland GmbH, Frankfurt, Germany</aff>
            </contrib-group>
            <author-notes>
                <fn fn-type="conflict">
                    <p>
                        <bold>Competing interests: </bold>No competing interests were disclosed.</p>
                </fn>
            </author-notes>
            <pub-date pub-type="epub">
                <day>9</day>
                <month>8</month>
                <year>2017</year>
            </pub-date>
            <permissions>
                <copyright-statement>Copyright: &#x00a9; 2017 Matter H</copyright-statement>
                <copyright-year>2017</copyright-year>
                <license xlink:href="https://creativecommons.org/licenses/by/4.0/">
                    <license-p>This is an open access peer review report distributed under the terms of the Creative Commons Attribution Licence, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</license-p>
                </license>
            </permissions>
            <related-article ext-link-type="doi" id="relatedArticleReport24665" related-article-type="peer-reviewed-article" xlink:href="10.12688/f1000research.12228.1"/>
            <custom-meta-group>
                <custom-meta>
                    <meta-name>recommendation</meta-name>
                    <meta-value>approve</meta-value>
                </custom-meta>
            </custom-meta-group>
        </front-stub>
        <body>
            <p>This interesting contribution by Bajorath 
                <italic>et al. </italic>addresses an important part of the inverse QSAR problem towards automated generation of structures with high activity from QSAR models. Inverse-QSAR, while intellectually appealing, does not find significant applications in modelling in the pharmaceutical industry. Main limitations are linked to de-novo structure generation due to issues with synthetic accessibility. Another hurdle is the challenge to identify the optimal descriptor setting for a model. The authors focus on this latter point, namely a novel and accurate approach for coordinate optimization. They demonstrate how to generate optimal descriptor coordinates under certain constraints like model applicability domain and meaningful descriptor values. A convincing validation study using virtual screening in ChEMBL 22 is also presented.</p>
            <p> </p>
            <p> The report title and abstract cover the content well. The chemoinformatics approach is well conducted and clearly described. The results are presented in a clear and interesting way and capture the interest of F1000 readers. The authors might also want to mention, whether software tools and subroutines from their study are available. Therefore this contribution is an essential view on interpretation of QSAR models and should be indexed in its present form.</p>
            <p> </p>
            <p> Some points could be addressed to highlight further aspects of their work.&#x00a0; 
                <list list-type="bullet">
                    <list-item>
                        <p>How does such an optimization approach handle typical types of variables from real-life models, e.g. two-level variables, variables with small or no SD?</p>
                    </list-item>
                    <list-item>
                        <p>Often model analysis should not result in a single solution, but multiple related structures. Could the optimization approach find multiple descriptor regions to offer options for monitoring secondary properties (e.g. solubility)?</p>
                    </list-item>
                    <list-item>
                        <p>It might be illustrative for one ChEMBL target to systematically generate analogs for potent leads close to the descriptor optimum by applying simple MedChem transformations and check, whether some analogs come closer to the optimum in descriptor space. Chemical changes are minimal here and one could access their impact to the descriptor optimum.</p>
                    </list-item>
                    <list-item>
                        <p>The moderate VS success using QSAR models might suggest a non-optimal approach to define the applicability domain. Some details on the AD definition and the descriptor space might be useful. Do the authors expect that a more strict AD definition might produce reliable results? What does this mean for de-novo structure generation as second step?</p>
                    </list-item>
                    <list-item>
                        <p>Is it possible to apply such a concept for multi-parameter optimization, e.g. multiple QSAR models combined for predicting compound profiles / selectivity / druglikeness?</p>
                    </list-item>
                    <list-item>
                        <p>Minor point: Drawings of chemical structures in figure 7 need to be checked.</p>
                    </list-item>
                </list>
            </p>
            <p>Is the work clearly and accurately presented and does it cite the current literature?</p>
            <p>Yes</p>
            <p>If applicable, is the statistical analysis and its interpretation appropriate?</p>
            <p>Yes</p>
            <p>Are all the source data underlying the results available to ensure full reproducibility?</p>
            <p>No source data required</p>
            <p>Is the study design appropriate and is the work technically sound?</p>
            <p>Yes</p>
            <p>Are the conclusions drawn adequately supported by the results?</p>
            <p>Yes</p>
            <p>Are sufficient details of methods and analysis provided to allow replication by others?</p>
            <p>Yes</p>
            <p>Reviewer Expertise:</p>
            <p>Molecular modelling, drug design</p>
            <p>I confirm that I have read this submission and believe that I have an appropriate level of expertise to confirm that it is of an acceptable scientific standard.</p>
        </body>
    </sub-article>
</article>
