本发明属于化学结构检索领域,具体的说是一种化学分子结构的搜索方法。
背景技术:
1、在生物制药和化学设计等领域中,当人们发现了一种药物结构或化学物品,本质上都是化学分子结构式,那么,判别这种化学分子结构式是否是一种全新的结构是本发明所要解决的问题。在传统的搜索模式中,人们在具有化学品信息数据库的网站、书籍以及文献中查找,然而化学品的种类和数量非常庞大,这种方法不直观、不准确且效率低。为此,人们提出新的解决方案:把化学分子结构式转换为化学分子图,即把化学分子结构式中的原子看作是图的顶点,连接原子的化学键看作是边。进而判别化学分子结构式是否为全新的问题可以转化为判别一个化学分子图与数据库中其他化学分子图是否相同的问题。例如乙二醇的结构式如图1a所示,可以简化为化学分子图如图1b所示。这只是一个较为简单的化学分子结构式,对于更复杂的化学分子结构式,转换为化学分子图后,更容易识别其本质结构。
2、然而,在化学分子结构式转换为化学分子图时,化学分子图的表示没有一个唯一的标准,主要体现在两个方面:(1)原子顶点的标号或标识通常是人们随意表示的;(2)原子顶点之间的相对位置通常也是随意确定的。这就导致了一个化学分子结构式有可能由不同的人表示成了不同的化学分子图,从而去搜索一个给定的化学分子结构式变得很困难。比如,图2a和图2b中的两个化学分子图本质上是一样的,即都有5个顶点、5条边,其中图2a的化学分子图中的原子顶点1、2、3、4、5分别和图2b的化学分子图中的原子顶点a、b、c、d、e对应,图2a的化学分子图中原子顶点1和原子顶点2有边连接,原子顶点2和原子顶点3有边连接,等等,相应地,图2b的化学分子图中原子顶点a和原子顶点b有边连接,原子顶点b和原子顶点c有边连接,等等。换句话说,化学分子图a和化学分子图b是由同一个化学分子结构式转换而来的,即是说用化学分子图b的原子顶点标识去给化学分子图a的原子顶点重新标号,存在一种重新标号方法使得得到和化学分子图b具有相同原子顶点标识和相同原子顶点间连接关系的化学分子图。因此,将化学分子结构转化为图进行搜索判别存在效率与准确性的问题。
3、针对这种情形,现有技术主要有两种。
4、现有技术一:
5、定义1(度):设g(v,e)是一个化学分子图,v表示原子顶点集,e表示边集。对于一个原子顶点v,与其有边相连的原子顶点数目称为原子顶点v的度,记作deg(v)。在化学分子图g的所有原子顶点的度中,最大的度数用δ(g)表示。
6、将化学分子结构式转换为化学分子图后,化学分子图的所有原子顶点的度组成的序列就构成了这个化学分子图的度序列,利用度序列可以判定两个化学分子图是否相同,即判定两个化学分子结构式是否相同:计算待搜索化学分子图g(v,e)的度序列,与数据库中所有化学分子图的度序列进行两两比较,若度序列相同,则认为这两个化学分子图是相同的,并输出g(v,e)的相同化学分子图,也即输出待搜索化学分子结构的相同化学分子结构。若无重复度序列,则输出为空,认为这是一个新的化学分子结构。
7、现有技术二:
8、定义2(randic指数):
9、
10、其中,deg(u)表示原子顶点u的度,e是待搜索化学分子图g(v,e)的边集,uv∈e表示原子顶点u和v是相邻原子顶点,即有边连接两者。
11、根据上式,可以计算出待搜索化学分子图g(v,e)对应的randic指数,利用randic指数也可以判定两个化学分子图是否相同:计算待搜索化学分子图g(v,e)的randic指数,与数据库中所有化学分子图的randic指数进行两两比较,若randic指数相同,则认为这两个化学分子图是相同的,并输出化学分子图g(v,e)的相同图,也即输出待搜索化学分子结构的相同化学分子结构。若无相同randic指数,则输出为空,认为这是一个新的化学分子结构。
12、现有技术存在的问题:无论是使用度序列还是randic指数来判断两个化学分子图是否相同,都是不够准确的。特别是度序列,误差较大,两个极其不同的化学分子图,它们的度序列也可能是相同的,进而这两个化学分子图被误认为是相同的,即现有技术搜索化学分子结构的准确度不高。
技术实现思路
1、本发明是为了解决上述现有技术存在的不足之处,提出一种化学分子结构的搜索方法,以期能更为准确、高效的识别化学分子结构,从而能快速、准确地在数据库中搜索与其相同的化学分子图,从而能提高对应化学分子结构式判别的准确性。
2、本发明为达到上述发明目的,采用如下技术方案:
3、本发明一种化学分子结构的搜索方法的特点在于,包括如下步骤:
4、步骤1、将待搜索的化学分子结构式的每个原子分别作为顶点,将原子之间的化学键作为边,从而构建化学分子图g(v,e),其中,v表示所有原子顶点的集合,且v={v1,v2,…vi,…,vn},vi表示第i个原子顶点;n为原子顶点的总数;e表示任意两个原子之间是否有化学键连接的指示集合;且e={eij|i=1,2,…,n;j=1,2,…,n};eij表示第i个原子顶点vi与第j个原子顶点vj之间是否有连接化学键,若eij=1,则表示vi和vj之间存在化学键,若eij=0,则表示vi和vj之间不存在化学键;
5、步骤2、计算待搜索的化学分子图g(v,e)中所有原子顶点的[t,p]-阶;
6、步骤2.1a、将与第i个原子顶点vi有化学键相连接的顶点的个数作为第i个原子顶点vi的度;
7、将第i个原子顶点vi的度作为第i个原子顶点vi的当前值,定义t和p为两个非正的整数;
8、步骤2.2a、初始化i=1;
9、步骤2.3a、获取与vi有化学键相连接的原子顶点,并作为第i个原子顶点vi的所有邻接原子顶点;
10、步骤2.4a、定义集合s中的每个元素x为非负整数,且均满足条件:
11、至少存在vi的x个邻接原子顶点的当前值不小于x+t,且至少存在vi的y个邻接原子顶点的当前值不小于x,其中,y为0和x+p中的较大值;
12、步骤2.5a、将集合s中的最大值更新为vi的当前值;
13、步骤2.6a、将i+1赋值给i后,返回步骤2.3a顺序执行,直到i>n为止,从而完成一轮所有原子顶点的当前值的更新;
14、步骤2.7a、返回步骤2.2a顺序执行,直到所有顶点的当前值不再发生变化为止;从而得到原子顶点最终的当前值,并记为每个原子顶点的[t,p]-阶;
15、步骤2.8a、当t依次取k个不同的整数时,在t的每个不同取值下,p也依次取h个不同的整数,并重复执行步骤2.2a-步骤2.7a的过程,从而得到k×h个不同t,p组合下的所有原子顶点的[t,p]-阶;
16、步骤3、对待搜索的化学分子图g(v,e)的n个原子顶点的[t,p]-阶进行处理,得到待搜索的化学分子图g(v,e)的不同特征信息;
17、步骤4、将待搜索的化学分子图g(v,e)的若干种特征信息分别与数据库中的任一化学分子图g'(v',e')的若干种特征信息进行比较,若存在相同的特征信息,则表示g'(v',e')即为g(v,e)的相同化学分子结构,并输出,否则,表示g(v,e)在数据库中未搜索到相同化学分子结构。
18、本发明中所述的化学分子结构的搜索方法的特点也在于,所述步骤2中待搜索的化学分子图g(v,e)中原子顶点的[t,p]-阶还能按照如下过程计算:
19、步骤2.0b、定义与原子顶点有化学键相连接的顶点的个数为原子顶点的度;
20、将每个原子顶点的度作为每个原子顶点的当前值;任取t和p为两个非正的整数;
21、步骤2.1b、定义变量s,并初始化s=w;w表示所有原子顶点中的最大度;
22、步骤2.2b、当0≤i<|t|时,根据s=i-mt确定得到序号i和参数m的取值;
23、步骤2.3b、初始化j=0;
24、步骤2.4b、从化学分子图中g(v,e)中删除原子顶点的当前值小于i-jt的原子顶点及其相连接的化学键,从而得到化学分子图g′s0;
25、步骤2.5b、根据g′s0中每个原子顶点的度,对g′s0中所有原子顶点的当前值进行更新,并删除当前值小于i-jt+p的原子顶点及其连接的化学键,从而得到化学分子图g″s0;
26、步骤2.6b、判断g″s0中是否存在当前值小于i-jt+p的原子顶点,若存在,则将g″s0赋值给g′s0,返回步骤2.5b顺序执行,否则,表示g″s0即为第j次迭代下的化学分子图gs0;
27、步骤2.7b、将gs0赋值给g(v,e),将j+1赋值给j后,返回步骤2.4b顺序执行,直到j>m为止,从而得到最终的化学分子图gsm,并将gsm中的所有原子顶点作为第s个顶点集合gs中的元素;
28、步骤2.8b、将s-1赋值给s后,返回步骤2.2b顺序执行,直到s<1为止,得到w个顶点集合g1,g2,…,gs,…,gw;
29、步骤2.9b、w记为第w个集合gw中包含的原子顶点的[t,p]-阶,w-1记为第w-1个集合gw-1中除集合gw中的原子顶点之外其他的原子顶点的[t,p]-阶,以此类推,1记为第1个集合g1中除去第2个集合g2中包含的原子顶点的其余的原子顶点的[t,p]-阶;从而得到化学分子图g(v,e)的所有原子顶点的[t,p]-阶;
30、步骤2.10b、当t依次取k个不同的整数时,在t的每个不同取值下,p也依次取h个不同的整数,并重复执行步骤2.1b-步骤2.9b的过程,从而得到k×h个不同t,p组合下的所有原子顶点的[t,p]-阶。
31、所述步骤3中待搜索的化学分子图g(v,e)的特征信息包括rtp指标、btp指标、rtpc指标;
32、利用式(1)计算化学分子图g(v,e)的rtp指标φ(g):
33、
34、式(1)中,代表在t取第y个整数ty和p取第z个整数pz时第i个原子顶点vi的[t,p]-阶,表示在t取第y个整数ty和p取第z个整数pz时第j个原子顶点vj的[t,p]-阶;
35、利用式(2)计算化学分子图g(v,e)的btp指标γ(g):
36、
37、利用式(3)计算化学分子图g(v,e)的rtpc指标ψ(g):
38、
39、本发明一种电子设备,包括存储器以及处理器的特点在于,所述存储器用于存储支持处理器执行所述搜索方法的程序,所述处理器被配置为用于执行所述存储器中存储的程序。
40、本发明一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序的特点在于,所述计算机程序被处理器运行时执行所述搜索方法的步骤。
41、与现有技术相比,本发明的有益效果在于:
42、1、本发明通过将化学分子结构式转换为化学分子图,搜索识别其本质结构,并将搜索结果输出,克服了以往搜索化学分子结构存在不直观等问题。
43、2、本发明通过对化学分子图的所有原子顶点的[t,p]-阶进行处理,得到不同特征信息,这种特征信息不是显然得到的,需要经过层层计算得到,因此作为化学分子图的特征信息,比一般的度信息更具有代表性。
44、3、本发明通过比较待搜索化学分子图与数据库中化学分子图的一种或多种特征信息,进而判断数据库中是否已经存在这种化学分子结构,比较方式更多样,全面,从而提高了结果的准确性。