Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
ATOM TYPE DEFINITION SYSTEM AND ATOM TYPE MATCHING METHOD THEREFOR
Document Type and Number:
WIPO Patent Application WO/2019/134315
Kind Code:
A1
Abstract:
An atom type definition system and an atom type matching method therefor, belonging to the technical field of force fields, and comprising an atom type visualisation UI interface, an atom type matching module, an atom type data management module and an atom type format conversion module, the atom type data management module comprising an atom type definition data packet. The atom type definition means may describe nesting relationships, inheritance relationships, hierarchical relationships, tree relationships and various complex atomic chemical environments, thereby improving description capabilities, describing richer and more accurate atom types, and increasing the accuracy of force field calculations. The present invention implements convenient operations with respect to atom types, and addition, deletion, modification, searching and multi-dimensional statistics are intuitive and convenient. The present invention is more efficient than existing methods, and matching is more accurate.

Inventors:
SHI XUEKUN (CN)
CAO FENGLEI (CN)
YANG MINGJUN (CN)
SUN GUANGXU (CN)
ZHANG PEIYU (CN)
MA JIAN (CN)
LAI LIPENG (CN)
WEN SHUHAO (CN)
Application Number:
PCT/CN2018/085724
Publication Date:
July 11, 2019
Filing Date:
May 04, 2018
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
SHENZHEN JINGTAI TECH CO LTD (CN)
International Classes:
G16C10/00
Foreign References:
CN101196963A2008-06-11
CN102609246A2012-07-25
CN102609604A2012-07-25
Attorney, Agent or Firm:
SZ KINDWALF INTELLECTUAL PROPERTY FIRM (CN)
Download PDF:
Claims:
权利要求书

[权利要求 1] 原子类型定义系统, 其特征在于, 包括原子类型可视化 UI界面、 原子 类型匹配模块、 原子类型数据管理模块、 原子类型格式转换模块; 所 述的原子类型数据管理模块包括原子类型定义数据包;

原子类型定义数据包, 拥有原子类型定义方式, 承载了原子类型的全 部定义; 所述的原子类型定义包括了原子类型的名称、 元素、 符合这 种类型的原子周围化学环境的描述, 以及原子类型的层级依赖关系; 原子类型数据管理模块是整个系统的底层基础, 支持原子类型的增加 、 修改、 删除和各种维度的查询和统计;

原子类型匹配模块, 实现对给定分子中的每个原子高效、 精准的匹配 对应的原子类型;

原子类型格式转换模块, 现有各力场原子类型定义互相转换; 原子类型可视化 UI界面分别与原子类型匹配模块、 原子类型数据管理 模块、 原子类型格式转换模块通信连接, 原子类型匹配模块、 原子类 型格式转换模块分别与原子类型数据管理模块通信连接。

[权利要求 2] 根据权利要求 1所述的原子类型定义系统的原子类型匹配方法, 其特 征在于, 包括以下步骤:

( 1) 用户在原子类型可视化 UI界面选择需要匹配原子类型的分子文 件, 将原子类型文件和需要转换的格式传到原子类型格式转换模块, 然后将转换后的分子文件传到原子类型匹配模块;

(2) 原子类型匹配模块将分子文件内所有的分子键按照标准化学键 类型逐一标记; 将标记好的分子键和带属性的原子连接成图的数据结 构。

(3) 用原子类型定义数据包中的原子类型的图与上述的图做子图匹 配;

(4) 原子类型数据管理模块将匹配成功的原子类型加入分子中对应 原子的匹配列表中;

(5) 全部原子类型匹配完成后, 原子类型匹配模块从每个原子的匹 配列表中找到层级最深的原子类型作为该原子的原子类型;

(6) 原子类型格式转换模块会将匹配完成的原子类型列表转换后发 送给原子类型可视化 UI界面, 将类型标记在 2D分子图上展示给用户

[权利要求 3] 根据权利要求 2所述的原子类型定义系统的原子类型匹配方法, 其特 征在于, 步骤 (3) 所述的子图匹配, 匹配方法: 将有 n个原子的输入 分子转化成一个 n*n的矩阵, 矩阵中的点 P(i,j)是第 i个原子和第 j个原 子的边的类型, 0表示不成键、 1表示单键、 2表示双键、 3表示三键、

4表示芳香键、 5表示共轭键; 将这个矩阵扩增成 (n+l)*(n)的矩阵, 矩阵的第一列增加每个原子按属性转换的数值; 转换方法是: 元素编 号 +电荷 * 100+环边数 * 1000+芳香性 * 100000+共轭性 * 1000000, 芳香 性和共轭性 0表示没有、 1表示有; 然后将原子类型的图也按上述方法 转换成矩阵; 最后对原子类型的图按行遍历分子图的所有等长度组合 , 如果原子类型矩阵的每一行都能按相同的方式找到相同匹配, 则子 图匹配成功, 否则匹配失败。

Description:
原子类型定义系统及其原子类型匹配方法 技术领域

[0001] 本发明属于力场技术领域, 具体为原子类型定义系统及原子类型匹配方法 。

背景技术

[0002] 力场技术是分子和晶体模拟中用来精确计算结 构和能量的计算技术。 原子类型 定义系统是力场技术中的核心系统, 现有的力场包括 Amber、 Charmm、 OPLS、 OpenFF等都有自己的原子类型定义系统, 而且各自的原子类型的个数、 原子周 围化学环境的定义方式、 数据格式和使用方式等都不尽相同。 原子类型定义系 统的优劣不但会影响力场构建的难度和成本, 也直接影响力场在使用过程中的 计算准确度。

[0003] 现有力场的原子类型定义系统的主要问题有以 下几个:

[0004] 1、 原子类型对原子周围化学环境的区分度不够, 很多不同类型的原子被归为 同一类型, 导致计算准确度下降;

[0005] 2、 原子类型的定义方法局限性大, 一般基于 SMARTS和通配符的定义方法在 描述环、 桥、 嵌套等负责化学环境时难道较大, 而且性能不好;

[0006] 3、 原子类型不易扩展, 当发现原子类型不够, 需要新增类型时没有完善的方 法和工具扩展, 导致每次升级都需要消耗大量的人力和时间成 本, 一般短则 2〜 3年, 长则 5〜 10年;

[0007] 4、 原子类型的查看和编辑困难, 没有友好的可视化工具辅助, 导致在查看和 修改时易出错。

[0008] 5、 互相之间格式转换困难, 各自都是基于文本行的数据模型来做存储和使 用

, 当用户希望交叉使用或相互对比时难度很大。

发明概述

技术问题

问题的解决方案

技术解决方案 [0009] 针对上述技术问题, 本发明提供一种效率更高效、 匹配的准确度更高的原子类 型定义系统及其定义方法。

[0010] 具体的技术方案为:

[0011] 原子类型定义系统, 包括原子类型可视化 UI界面、 原子类型匹配模块、 原子类 型数据管理模块、 原子类型格式转换模块; 所述的原子类型数据管理模块包括 原子类型定义数据包;

[0012] 原子类型定义数据包, 拥有原子类型定义方式, 承载了原子类型的全部定义; 所述的原子类型定义包括了原子类型的名称、 元素、 符合这种类型的原子周围 化学环境的描述, 以及原子类型的层级依赖关系;

[0013] 原子类型数据管理模块是整个系统的底层基础 , 支持原子类型的增加、 修改、 删除和各种维度的查询和统计;

[0014] 原子类型匹配模块, 实现对给定分子中的每个原子高效、 精准的匹配对应的原 子类型;

[0015] 原子类型格式转换模块, 现有各力场原子类型定义互相转换;

[0016] 原子类型可视化 UI界面分别与原子类型匹配模块、 原子类型数据管理模块、 原 子类型格式转换模块通信连接, 原子类型匹配模块、 原子类型格式转换模块分 别与原子类型数据管理模块通信连接。

[0017] 原子类型定义系统的原子类型匹配方法:

[0018] ( 1) 用户在原子类型可视化 UI界面选择需要匹配原子类型的分子文件, 将原 子类型文件和需要转换的格式传到原子类型格 式转换模块, 然后将转换后的分 子文件传到原子类型匹配模块;

[0019] (2) 原子类型匹配模块将分子文件内所有的分子键 按照标准化学键类型逐一 标记; 将标记好的分子键和带属性的原子连接成图的 数据结构。

[0020] (3) 用原子类型定义数据包中的原子类型的图与上 述的图做子图匹配;

[0021] 匹配方法: 将有 n个原子的输入分子转化成一个 n*n的矩阵, 矩阵中的点 P(i,j) 是第 i个原子和第 j个原子的边的类型, 0表示不成键、 1表示单键、 2表示双键、 3 表示三键、 4表示芳香键、 5表示共轭键; 将这个矩阵扩增成 (n+l)*(n)的矩阵, 矩阵的第一列增加每个原子按属性转换的数值 ; 转换方法是: 元素编号 +电荷 *1 00+环边数 * 1000+芳香性 * 100000+共轭性 * 1000000, 芳香性和共轭性 0表示没有 、 1表示有; 然后将原子类型的图也按上述方法转换成矩阵 ; 最后对原子类型的 图按行遍历分子图的所有等长度组合, 如果原子类型矩阵的每一行都能按相同 的方式找到相同匹配, 则子图匹配成功, 否则匹配失败。

[0022] (4) 原子类型数据管理模块将匹配成功的原子类型 加入分子中对应原子的匹 配列表中;

[0023] (5) 全部原子类型匹配完成后, 原子类型匹配模块从每个原子的匹配列表中 找到层级最深的原子类型作为该原子的原子类 型;

[0024] (6) 原子类型格式转换模块会将匹配完成的原子类 型列表转换后发送给原子 类型可视化 UI界面, 将类型标记在 2D分子图上展示给用户。

发明的有益效果

有益效果

[0025] 本发明提供的原子类型定义系统及其定义方法 , 具有技术效果:

[0026] 1、 本发明设计的原子类型定义方式可以描述嵌套 关系、 继承关系、 层级关系

、 树形关系和各种复杂的原子化学环境。 其能力远远超过现有的基于 SMARTS 的定义方式, SMARTS只能描述单一原子类型, 无法描述嵌套、 继承、 层级、 树等多种关系。 由于提升了描述能力, 这样就能描述更丰富、 更精确的原子类 型, 这样力场的计算就能更准确。

[0027] 2、 本发明的数据管理模块配合可视化 UI界面, 可以对原子类型实现便捷的操 作, 增、 删、 改、 查、 多维度统计都非常直观方便。 现在已有的原子类型系统 都没有实现相应的功能, 增、 删、 改只能手动编辑文本文件, 无法交互式操作 , 查看原子类型也只能看文本文件中的原始定义 , 非常晦涩, 可读性非常差。 而且没有对现有原子类型的统计功能, 使用者很难对原子类型有一个全面的认 识。 由于本发明能改善这些问题, 从而大幅提升了原子类型开发的效率,

[0028] 3、 本发明中的原子类型的算法比现有的方法效率 更高效, 匹配的准确度更高

[0029] 4、 本发明支持现有各力场原子类型定义的互相转 换, 比现有系统和工具支持 程度都全面。 对附图的简要说明

附图说明

[0030] 图 1本发明的原子类型定义系统模块架构图;

[0031] 图 2本发明的数据管理模块数据结构;

[0032] 图 3本发明的原子类型匹配流程;

[0033] 图 4本发明的可视化 UI界面说明;

[0034] 图 5本发明的原子化学环境 2D可视化标识;

[0035] 图 6本发明的原子类型格式转换流程。

发明实施例

本发明的实施方式

[0036] 本发明的一个具体实施例是用于药物分子和生 物蛋白结合计算模拟的系统中。

在生物和药物研发领域有大量的计算需求需要 模拟不同药物分子构象与生物蛋 白靶点结合的情况, 从而找到最合适的药物分子构象用于接下来的 药物开发。 业界已有商业的系统能完成模拟, 我们也在自研功能类似的系统。 这种系统中 的一个关键核心就是需要用力场算准药物分子 和蛋白的结合能, 而力场准确的 核心是有一套定义准确的原子类型。 所以本发明会运用在这个系统中, 用来创 建和优化原子类型定义, 从而为计算模拟提供更好的力场。

[0037] 本发明实施的技术方案是作为子系统嵌入药物 分子和生物蛋白结合计算模拟的 系统, 加入该系统后, 研究人员可以非常方便的优化现有力场, 也可以非常方 便的引入新的力场。 极大的优化了调优计算模拟系统的核心力场的 效率。

[0038] 如图 1所示, 这套系统由原子类型定义数据包、 原子类型数据管理模块、 原子 类型匹配模块、 原子类型可视化 UI界面、 原子类型格式转换模块。

[0039] 原子类型定义数据包, 拥有全新的原子类型定义方式, 具体的数据包承载了原 子类型的全部定义。 原子类型定义包括了原子类型的名称、 元素、 符合这种类 型的原子周围化学环境的描述, 以及原子类型的层级依赖关系。 数据包采用了 JS ON作为数据包的持久化格式。

[0040] 如图 2所示, 原子类型数据管理模块是整个系统的底层基础 。 我们采用了基于 面向对象的模块化设计, 能方便的支持原子类型的增加、 修改、 删除和各种维 度的查询和统计.

[0041] 如图 3所示, 原子类型匹配模块依托数据模块的底层设计, 可以实现对给定分 子中的每个原子高效、 精准的匹配对应的原子类型。

[0042] 如图 4所示, 原子类型可视化 UI界面可以让用户方便的与原子类型数据交互

本系统设计了全新的原子化学环境 2D可视化标识。 这套标识能将复杂的原子化 学环境定义直观的展现出来。 原子化学环境 2D可视化标识如图 5所示。

[0043] 如图 6所示, 原子类型格式转换模块支持将现有各力场原子 类型定义互相转换 , 支持各种格式的导入导出。

[0044] 原子类型定义系统以微服务的架构部署原子类 型数据管理模块、 原子类型匹配 模块和原子类型格式转换模块, 每个模块的核心功能都封装成用 Python开发的 模块包, 然后利用 Flask Webservice框架, 将每个模块部署在基于 Kubernetes的 微服务框架上, 各模块通过 https协议相互通信, 以及对外提供服务支持。

[0045] 原子类型数据管理模块使用 PostgreSQL作为底层数据库。 数据控制层逻辑也 是用 Flask框架封装起来, 部署在 Kubernetes上。

[0046] 原子类型可视化 UI界面用 HTML+CSS+ Javascript开发, 跟后台服务采用

Client/Server的架构模式, 通过 https协议请求数据、 发送命令。

[0047] 整个系统可以部署在公有云上、 本地集群上, 也可以部署在用户的个人电脑上

[0048] 系统运行硬件环境: Intel i7及以上处理器、 16G以上内存、 500G以上硬盘存 储空间;

[0049] 系统运行软件环境: Linux 4以上内核版本, Python2.7运行环境;

[0050] UI界面使用环境: 浏览器 IE8以上、 Chrome、 Safari。

[0051] 用本发明创建新的原子类型步骤如下:

[0052] ( 1) 打开原子类型可视化 UI界面, 在右侧树形导航控件中点击右键, 添加一 个新的原子类型。 这时系统会弹出窗口提示输入原子类型名称, 填写完成后点 击确定完成添加。 点击确定后, 系统会将当前的原子类型数据包 ID、 需要新建 原子类型的名称和其所在树形导航中的位置以 json的格式用 https协议发送到原 子类型数据管理模块的微服务, 数据管理模块将这些内容插入数据库, 完成添 加。

[0053] (2) 在左侧原子类型详情页面编辑修改原子类型的 化学环境, 填写元素、 电 荷、 环的边数、 芳香性、 周围连接原子数、 共轭性。 系统工作方式同上。

[0054] (3) 可以调整原子类型在定义树中的位置, 通过制定父节点和子节点完成。

系统工作方式同上。

[0055] 用本发明导入已有原子类型定义的步骤如下:

[0056] ( 1 ) 在可视化 UI界面右上角点击打开按钮, 在本地文件系统中选择原子类型 的 json文件。

[0057] (2) 可视化 UI界面会将用户选择的 json文件发送到数据管理模块的微服务, 数据管理模块会按结构解析 json文件, 并在按图 2的数据模型将数据加载到内存 中, 同时将 json文件存储到 PostgreSQL数据库里。

[0058] 用本发明匹配分子的原子类型步骤如下:

[0059] ( 1 ) 在可视化 UI界面右上角点击打开按钮, 在本地文件系统中选择需要匹配 原子类型的分子文件, 支持 xyz、 mol、 pdb等的分子文件。

[0060] (2) 可视化 UI界面会将分子文件传到原子类型匹配模块的 服务

[0061] (3) 原子类型匹配模块将分子内所有的分子键按照 单键、 双键、 芳香键、 共 轭键等标准化学键类型逐一标记。

[0062] (4) 匹配模块为分子内的每个原子标记属性, 属性包括元素、 电荷、 环的边 数、 芳香性、 周围连接原子数、 共轭性。

[0063] (5) 将标记好的分子键和带属性的原子连接成图的 数据结构。

[0064] (6) 用原子类型定义数据包中的原子类型的图与上 述分子的图做子图匹配。

匹配算法是将有 n个原子的输入分子转化成一个 n*n的矩阵, 矩阵中的点 P(i,j) 是第 i个原子和第 j个原子的边的类型 0表示不成键、 1表示单键、 2表示双键、 3表 示三键、 4表示芳香键、 5表示共轭键。 接下来将这个矩阵扩增成 (n+l)*(n)的矩 阵, 矩阵的第一列增加每个原子按属性转换的数值 。 转换方法是: 元素编号 +电 荷 * 100+环边数 * 1000+芳香性 * 100000+共轭性 * 1000000, 芳香性和共轭性 0表示 没有、 1表示有。 然后将原子类型的图也按上述方法转换成矩阵 。 最后对原子类 型的图按行遍历分子图的所有等长度组合, 如果原子类型矩阵的每一行都能按 相同的方式找到相同匹配, 则子图匹配成功, 否则匹配失败。

[0065] (7) 原子类型匹配模块将匹配成功的原子类型加入 分子中对应原子的匹配列 表中。

[0066] (8) 全部原子类型匹配完成后, 原子类型匹配模块会从每个原子的匹配列表 中找到层级最深的原子类型作为该原子的原子 类型。

[0067] (9) 原子类型匹配模块会将匹配完成的原子类型列 表以 json的方式发送给可 视化 UI界面, 界面会将类型标记在 2D分子图上展示给用户。

[0068] 其中, 用本发明转换原子类型格式的步骤如下:

[0069] ( 1) 在原子类型可视化 UI界面右上角点击打开按钮, 在本地文件系统中选择 需要转换的文件, 支持 Amber, Gromacs,Charmm,MacroModel和 json的数据格 式的文件。

[0070] (2) 原子类型可视化 UI界面会将原子类型文件和需要转换的格式传 原子类 型格式转换模块的微服务。

[0071] (3) 原子类型格式转换模块识别输入文件的类型, 根据类型调用对应文件的 解释器, 解释器为原子类型格式转换模块中的解释函数 ;

[0072] (4) 解释器会按照对应文件的解释规则解释文件中 的每一个原子类型, 并将 每个原子类型按图 2中的数据结构存储在内存中。 所述的内存是系统指分配给原 子类型格式转换模块的内存。

[0073] (5) 原子类型格式转换模块会调用需要输出的格式 的编码器, 编码器为原子 类型格式转换模块中的编码函数;

[0074] (6) 编码器会调用步骤 4中的内存中的数据, 将数据编码成需要输出的文件格 式; 原子类型格式转换模块将编码好的文件传到原 子类型可视化 UI界面供用户 使用。

[0075] 具体的使用实例:

[0076] 例子 1

[0077] 预测分子 CCCC的密度。 该分子 4个碳原子连接的氢原子的个数不同, 头尾两 个碳各连接 3个氢原子, 中间两个碳连接 2个氢原子。 现有的力场的原子类型都 不区分这两种碳的类型, 这样在预测密度的时候与实验值的误差大概在 5%左右 。 用本发明增加两种原子类型, 区分连接 3个氢原子的碳和连接 2个氢原子的碳 , 在这个基础上优化过的力场预测密度误差可以 达到 2%以内。 大幅提升了预测 的准确度。 不用本发明, 如果要增加原子类型只能依靠最初定义原子类 型的人 员手动修改, 效率低, 周期长, 实际用户完全没有自主性。

[0078] 例子 2

[0079] 预测分子 C(C=0)N的蒸发焓。 该分子中的氮原子在现有力场中是按胺分子中 的类型定义的, 这样预测蒸发焓与实验值的误差在 10%左右。 通过分析, 这个分 子中的氮是在酰胺基团中, 用本发明增加新的氮原子类型进行区分, 在这个基 础上优化力场, 预测蒸发焓的误差可以达到 5%以内, 提高了 1倍的精度。 不用本 发明, 如果要增加原子类型只能依靠最初定义原子类 型的人员手动修改, 效率 低, 周期长, 实际用户完全没有自主性。

[0080]