跳转至

A Genetic Algorithm for Navigating Synthesizable Molecular Spaces

会议: ICLR 2026
arXiv: 2509.20719
代码: https://github.com/alstonlo/synga
领域: 分子设计 / 优化
关键词: 遗传算法, 可合成分子设计, 合成路线, 贝叶斯优化, 构建块过滤

一句话总结

提出 SynGA,一种直接在合成路线(合成树)上操作的遗传算法,通过自定义的交叉和变异算子将搜索严格约束在可合成分子空间内,结合 ML 驱动的构建块过滤实现 SOTA 的可合成类似物搜索和属性优化性能。

研究背景与动机

  1. 领域现状:分子设计中的生成模型 (VAE, RL, GFlowNet, LLM) 发展迅速,但经典的遗传算法因其简洁性、样本效率和探索能力仍然极具竞争力。
  2. 现有痛点:大多数分子生成模型不考虑可合成性,可能提出不稳定或无法合成的设计,这是实际应用的主要障碍。事后使用逆合成模型虽可缓解但计算开销大(每次评估需数分钟)。现有的合成约束 GA 方法需先训练 ML 投影模型将分子映射回合成空间,有前期训练成本且受限于投影质量。
  3. 核心矛盾:需要在庞大的离散组合分子空间中高效搜索,同时保证生成的分子有可行的合成路线。
  4. 本文要解决什么? 设计一个轻量级的、通过构造保证可合成性的遗传算法,作为独立基线和模块化组件使用。
  5. 切入角度:不是先生成再验证,而是直接在合成树上定义遗传算子,使搜索空间自始至终限制在可合成分子中。
  6. 核心 idea 一句话:通过在合成树上定义交叉/变异算子,让 GA 搜索天然受限于可合成空间,再用 ML 引导的构建块过滤加速聚焦。

方法详解

整体框架

输入为构建块集合 \(\mathcal{B}\)(约 20 万个可购买分子)和反应模板集合 \(\mathcal{R}\)(91 个),输出为优化目标下的最优可合成分子及其合成路线。核心 pipeline:GA 在合成树空间 \(\mathcal{T}\) 上迭代进化,每棵合成树叶节点为构建块、内部节点为反应。

关键设计

  1. 合成树上的遗传算子:
  2. 做什么:定义直接在合成树上操作的交叉和变异算子
  3. 核心思路:交叉——枚举两棵亲本树的子树,找到可通过某个双分子反应连接的兼容子树对,在新根节点处用随机兼容反应连接。变异——5 种操作:Grow(用新反应扩展)、Shrink(取子树)、Rerun(保持结构重采样产物)、Change Internal(换反应)、Change Leaf(换构建块)
  4. 设计动机:由于合成树的每个节点都满足"叶节点是构建块,内部节点是有效反应"的约束,任何遗传操作产生的后代都自动是有效的合成路线。无需事后验证或投影

  5. ML 引导的构建块过滤(类似物搜索):

  6. 做什么:训练一个轻量 MLP 分类器预测哪些构建块可能用于合成目标分子的类似物
  7. 核心思路:学习 \(\pi_\theta: \mathcal{M} \times \mathcal{B} \to (0,1)\),将 20 万构建块过滤到相关子集。使用 \(\varepsilon\)-过滤策略:以概率 \(1-\varepsilon\) 从过滤后的集合采样,以概率 \(\varepsilon\) 从全集采样
  8. 设计动机:20 万构建块的搜索空间巨大,ML 过滤可有效聚焦相关区域而不牺牲搜索完整性

  9. 块加性模型 + 贝叶斯优化 (SynGBO):

  10. 做什么:用神经加性模型 (NAM) 为每个构建块打分来过滤,嵌入贝叶斯优化外循环
  11. 核心思路:NAM 建模 \(\rho_\theta(\mathcal{B}_M) = (\alpha + (1-\alpha)|\mathcal{B}_M|^{-1})\sum_{B \in \mathcal{B}_M} s_\theta(B)\),用排序损失而非回归损失训练。外循环用 GP 代理模型引导 SynGA 最大化采集函数
  12. 设计动机:属性优化中不知道目标分子,无法用分类方式过滤,但 NAM 的可解释性允许直接为构建块排序实现过滤

损失函数 / 训练策略

类似物搜索的过滤器用二元交叉熵训练;属性优化的 NAM 用 pairwise ranking loss 训练;GP 代理用高斯过程标准训练。GA 使用精英选择策略,种群大小 500,后代大小 5。

实验关键数据

主实验

可合成类似物搜索 (ChEMBL, 100 分子):

方法 Morgan Sim↑ Scaffold Sim↑ Gobbi Sim↑ Subset Sim↑
SynGA (无过滤) 0.313 0.372 0.536 0.397
SynGA + MLP 0.380 0.452 0.607 0.465
SynGA + MLP+Mine 0.393 0.465 0.617 0.475
SynNet 0.325 0.383 0.549 0.427
Pasithea 0.278 0.310 0.491 0.361

属性优化 (PMO Benchmark, GuacaMol 子集):

方法 Top-10 AUC↑ 合成可行性
SynGBO SOTA 保证可合成
Graph GA 高但无合成保证 不保证
REINVENT 较高 不保证

消融实验

配置 Morgan Sim↑ 说明
SynGA 无过滤 0.313 基线
+ Sim 启发式过滤 0.336 简单启发式有一定帮助
+ MLP 过滤 0.380 ML 过滤显著提升
+ MLP + Hard Negative Mining 0.393 难负样本挖掘进一步提升精度

关键发现

  • SynGA 无需任何 ML 组件即可作为强基线,加入构建块过滤后达到 SOTA
  • Rerun 变异是独特的设计——固定合成树结构但重新采样产物,能高效探索同一骨架的变体
  • 20 万构建块的过滤可将有效搜索空间缩小数个数量级,对性能提升至关重要
  • SynGBO 在属性优化中表现优异,NAM 的排序损失比回归损失更适合过滤用途

亮点与洞察

  • 构造式可合成保证:不是"生成-验证"范式,而是搜索空间本身就是可合成空间,这是方法论上的根本优势。搜索过程中生成的每个分子都自带合成路线
  • 模块化设计哲学:SynGA 是轻量级的无 ML 基础组件,可以方便地嵌入更大的工作流(如贝叶斯优化),体现了好的工程设计——简单核心 + 可选增强
  • Rerun 变异的巧妙:在保持合成骨架不变的前提下探索化学空间,相当于"同一条合成路线可以产出不同的分子",利用了合成路线中的歧义性

局限性 / 可改进方向

  • 依赖预定义的反应模板库(91 个模板),可能错过模板外的合成路线
  • 构建块集合固定为 Enamine 商业目录,限制了化学空间的覆盖范围
  • NAM 的加性假设对复杂的非线性属性建模能力有限
  • 合成路线最多 5 步,可能无法覆盖需要更长合成路线的复杂分子

相关工作与启发

  • vs Graph GA: 传统分子图 GA 搜索能力强但不保证可合成性;SynGA 通过在合成树上操作自动保证可合成,性能相当
  • vs SynNet/Pasithea: 这些基于 ML 的投影方法需要训练额外的投影模型;SynGA 核心是无 ML 的,更简单且可靠
  • vs RetroGNN (Gao et al., 2024): 也做合成感知 GA 但用训练好的投影网络做约束;SynGA 直接在合成空间中搜索,避免了投影误差

评分

  • 新颖性: ⭐⭐⭐⭐ 在合成树上定义 GA 算子的想法虽非首创但实现精良,构建块过滤的 ML/GA 融合方式新颖
  • 实验充分度: ⭐⭐⭐⭐⭐ 类似物搜索 + 属性优化 + 2D/3D 目标,全面覆盖分子设计任务,消融详尽
  • 写作质量: ⭐⭐⭐⭐⭐ 方法描述清晰精确,形式化定义严谨,代码开源
  • 价值: ⭐⭐⭐⭐ 为分子设计提供了实用的可合成搜索工具,开源代码可直接使用