2. 分子表示与约束基础
在药物分子结构约束生成工程中,第一个必须回答的问题是:分子究竟以什么形式被计算机“看见”。同一个分子,可以被写成一行字符串,也可以被画成一张原子—键的图,还可以被展开成一组三维坐标。不同的表示方式,决定了约束能挂在什么位置、以什么形式生效,也决定了生成模型能否稳定地输出合法结构。本节围绕四种主流表示——SMILES、SELFIES、分子图、3D构象——说明它们各自的结构含义、约束表达方式以及适用边界。
一、SMILES:线性字符串表示
SMILES(Simplified Molecular Input Line Entry System)用一串 ASCII 字符描述分子。原子用元素符号表示,如 C、N、O;键用符号表示,单键省略、双键为“=”、三键为“#”;分支用圆括号,环闭合用数字标记。例如乙醇可写为 CCO,苯环可写为 c1ccccc1,其中小写 c 表示芳香碳。
SMILES 的最大优势是紧凑、易存储、易被序列模型处理。但它有两个关键问题:一是同一分子存在多种合法写法,例如 CCO 与 OCC 表示同一分子,这给“按字符串比对约束”带来歧义;二是字符串本身不保证化学合法性,任意字符组合可能价键错误、环不闭合或原子价态异常。因此,在生成任务中,SMILES 约束通常以子结构 SMARTS 匹配、正则片段、或规范化后的 canonical SMILES 前缀/后缀形式表达。
二、SELFIES:自校验的字符串表示
SELFIES(SELF-referencing Embedded Strings)是为解决 SMILES 合法性问题而提出的表示。它的核心思想是:每个符号都携带“该位置需要多少后续符号才能完成”的语义,因此任意 SELFIES 字符串都对应一个化学上合法的分子。例如 [C][C][O] 对应乙醇,[C][=C][C] 对应丙烯片段。
这一性质使 SELFIES 在生成模型中极具吸引力:模型即使输出随机符号,解码结果也不会出现价键错误。但代价是可读性差、与人类直觉脱节,且约束表达不如 SMILES 直观。实践中,SELFIES 约束常通过“允许符号集合”“片段模板”“解码后过滤”三种方式实现,而不是直接在字符串上做子结构匹配。
三、分子图:原子—键的拓扑结构
分子图把分子表示为 G = (V, E):节点 V 是原子,边 E 是化学键。每个节点可带原子类型、电荷、手性、氢原子数等特征;每条边可带键级、芳香性、立体构型等特征。分子图是最贴近化学直觉的表示,也是图神经网络(GNN)的标准输入。
在约束表达上,分子图具有天然优势:子结构约束可以直接写成“必须包含某个子图”,官能团约束可以写成“某类原子必须与某类原子相连”,药效团约束可以写成“节点间距离或拓扑路径满足条件”。例如“分子必须含有一个羧基”可表达为:存在一个碳节点,同时连接一个双键氧和一个单键氧。这种约束在图上可精确判定,而在 SMILES 上只能靠子串匹配近似。
四、3D 构象:空间坐标与几何约束
分子图只描述连接关系,不描述空间形状。3D 构象在原子坐标基础上补充了键长、键角、二面角等信息。常用表示包括:笛卡尔坐标 (x, y, z)、内坐标(键长、键角、二面角)、以及距离矩阵。药物分子与靶点结合时,真正起作用的是 3D 构象,因此 3D 约束在对接、构象生成、药效团匹配中不可替代。
3D 约束的典型形式包括:原子间距离范围、二面角范围、手性中心构型、环构象、以及与蛋白口袋的互补形状。例如“苯环与受体疏水口袋平行”可转化为平面法向量夹角约束;“氢键供体与受体距离在 2.5–3.5 Å”可转化为原子对距离约束。这些约束在 3D 坐标空间中可直接计算,但计算成本高于图约束。
五、四种表示的约束表达对比
下表从“约束挂载位置”“合法性保证”“计算成本”“典型约束形式”四个维度对比四种表示,帮助在实际工程中选择合适的表示层。
| 表示方式 | 约束挂载位置 | 合法性保证 | 计算成本 | 典型约束形式 |
|---|---|---|---|---|
| SMILES | 字符/子串 | 弱,需校验 | 低 | SMARTS 子结构、前缀/后缀、正则 |
| SELFIES | 符号序列 | 强,天然合法 | 低 | 允许符号集、片段模板、解码过滤 |
| 分子图 | 节点/边/子图 | 中,需价键检查 | 中 | 子图包含、官能团、拓扑路径 |
| 3D 构象 | 坐标/内坐标 | 中,需几何检查 | 高 | 距离、角度、二面角、手性、形状互补 |
六、表示之间的转换与约束传递
实际工程中,四种表示往往需要互相转换。典型链路是:SMILES → 分子图 → 3D 构象 → 约束评估。约束可以在任意一层定义,但必须明确它在哪一层生效、在哪一层验证。例如,一个“必须含羧基”的约束,可以在 SMILES 层用 SMARTS 快速筛选,在分子图层用子图匹配精确判定,在 3D 层用原子距离验证几何合理性。三层验证结果不一致时,通常以分子图层为准,因为它是化学结构的标准拓扑表示。
七、约束表达的关键判断
选择表示方式时,可以问三个问题:第一,约束是拓扑性质还是几何性质?拓扑性质优先用分子图,几何性质必须用 3D。第二,约束是硬性还是软性?硬性约束应放在合法性有保证的表示层,软性约束可放在评估层。第三,生成模型输出什么?如果模型输出字符串,约束最好以符号集或解码过滤形式表达;如果模型输出图或坐标,约束可直接嵌入损失函数或采样过程。
下面这张图把四种表示及其约束挂载位置、转换关系、验证层级放在同一张结构图中,便于对照理解。