4. 常用分子对接软件:AutoDock Vina、Glide、GOLD、DOCK的特点与选择

做药物设计这行,选对接软件就像选工具箱里的扳手。
我入行头两年,用过四五个不同引擎,踩过不少坑。
今天聊聊最主流的四个:AutoDock Vina、Glide、GOLD、DOCK。
每个都有脾气,用对了事半功倍。

4.1 AutoDock Vina:开源界的扛把子

Vina是我个人最常用的。
为啥?免费、快、社区活跃。
它的打分函数是基于经验的,用起来很稳。
我习惯拿它做大规模虚拟筛选的初筛。
一次跑几万个分子,Vina几分钟搞定。

Vina的强势在于预测结合模式的位置准确性不错。
但打分绝对值有偏差,别太迷信底部的亲和力数值。
我建议:Vina配ADT(AutoDock Tools)做预处理,
然后直接用命令行跑批处理。
# 单分子对接命令示例
vina --receptor receptor.pdbqt --ligand ligand.pdbqt \
     --center_x 0 --center_y 0 --center_z 0 \
     --size_x 20 --size_y 20 --size_z 20 \
     --exhaustiveness 8 --num_modes 9 \
     --out output.pdbqt --log log.txt

4.2 Glide:精确度之王

Glide是我们药厂常用的商业软件。
贵,但精确度确实高。
Glide的SP和XP两种模式,差别很大。
SP模式适合高通量;XP模式是精修用的。
有一次我在优化一个激酶项目,Vina跑出来的结果排前十的分子,
用Glide XP一验证,三个根本对不上。
Glide的Induced Fit docking(IFD)也很牛,
能同时优化残基侧链构象。

注意:Glide需要Schrödinger套件授权,
学术版相对便宜但功能受限。
另外,Glide的预处理步骤繁琐,
蛋白准备、网格生成、配体准备缺一不可。

Glide最适合做核心化合物的结合模式精修。
尤其是你已经有初步的结合模式假设,
想看看侧链调整后能量变化。

# Glide SP & XP 对接命令(Schrödinger命令行)
$SCHRODINGER/glide -WAIT -HOST localhost:4 receptor_grid.zip ligand.maegz out_sp.maegz
# 从SP结果中提取前5个分子做XP
$SCHRODINGER/glide -WAIT -HOST localhost:4 receptor_grid.zip out_sp.maegz -JOBNAME refine -PRECISE

4.3 GOLD:柔性对接的标杆

GOLD是CCDC出的老牌子。
它的遗传算法做得特别好。
我做柔性对接时,第一个想到的就是GOLD。
为什么?GOLD可以处理配体和蛋白都是柔性的情况。
它的打分函数还有GoldScore、ChemScore、ASP三种。
我个人的经验是:GoldScore对氢键敏感,
ChemScore计算快但略粗糙,ASP适合新手不用调参。

GOLD有一个实用功能——结合模式聚类。
跑完100次遗传算法运行,会自动聚成几个候选模式。
这点在预测水分子介导的氢键时特别有用。

GOLD不适合做万级以上超大规模筛选。
它的遗传算法每次运行要几秒到几十秒,
跑一万个分子,时间成本划不来。
我常用的策略:先用Vina筛掉90%无活性分子,
剩下的候选分子用GOLD精修结合模式。
# GOLD对接配置文件关键部分
GOLD CONFIGURATION FILE
AUTOMATIC SETTINGS = 1
FITNESS FUNCTION = GoldScore
POPULATION SIZE = 100
SELECTION PRESSURE = 1.1
NUMBER OF ISLANDS = 5
NUMBER GENES = 100000
PUNCTUATION EQUILIBRIUM = 0.1

4.4 DOCK:无结构蛋白的利器

DOCK和前面三个画风不太一样。
它更强调基于形状的对接。
DOCK能处理无明确结合位点的蛋白,
用球集填充腔体来生成对接盒子。
我接触最多的是DOCK 6,它有个独特的anchor-and-grow算法。
先把配体分成刚性片段,逐个生长对接。
这种做法在遇到大分子配体时,效率惊人。

DOCK还有个冷门但很有用的功能:
可以做共价对接。
我在优化某共价抑制剂时,DOCK是唯一的可选。

DOCK的学习曲线比其他三个陡。
需要自己写分子处理脚本,参数文件也复杂。
建议初学者先跑测试集,再跑实际项目。

不过,DOCK的粉丝多是做对接方法开发的。
商业项目里用得相对少一些。

# DOCK 6 对接命令(部分)
anchor_and_grow                                        
  ligand_atom_file                                       ligand.mol2
  conformer_search_type                                  rigid
  use_internal_energy                                    yes
  internal_energy_rep_exp                                12
  internal_energy_cutoff                                 100.0
  ligand_outfile_prefix                                  docked
  flex_ligand_anchor_restraint                           3
  flex_ligand_torsion_sampling                           yes
  flex_ligand_grow_restraint                             2

4.5 四个软件的对比与选择

怎么能快速选对工具?
我按自己的经验列了个表,你扫一眼就明白。

场景 / 需求 推荐软件 理由
高通量虚拟筛选 AutoDock Vina 免费、批处理速度快、社区资源多
结合模式精修 Glide XP / IFD 打分精确,考虑侧链柔性
柔性对接 / 水分子介导 GOLD 遗传算法优化更好,支持水分子预测
无结合位点 / 共价对接 DOCK 基于形状的球集填充、共价对接原生支持
学术研究 / 方法开发 DOCK 或 Vina 开源、可读性好、可自由修改打分函数
大型制药企业流程 Glide + GOLD 商业支持、细节控制好、实验验证率高

选软件前,先问清楚自己三个问题:
1. 预算允许用商业软件吗?
2. 我关心的是位置准还是打分准?
3. 蛋白有晶体结构吗?
这三个问题定下来了,就好选了。

记住:没有万能软件,只有最适合当前阶段的工具。
Vina便宜快,Glide精贵,GOLD柔,DOCK专。
混着用才是真高手。

4.6 知识结构一览

下面这张图是我自己画的,
把四个软件的核心定位、最佳场景和关键指标串起来了。
你保存下来,以后选软件时扫一眼就行。

四种分子对接软件核心选择流程 分子对接软件核心选择流程 对接任务场景 高通量筛选 AutoDock Vina 免费、批处理、快 结合模式精修 Glide XP / IFD 精确、侧链柔性、商业 柔性对接 GOLD 遗传算法、水分子、柔 无结合位点/共价 DOCK 形状匹配、共价、开源 速度优先 <- 平衡 -> 精度优先 高通量 <- 取舍 -> 模式精修 推荐组合策略 Vina初筛 → Glide/GOLD精修 → DOCK处理特殊情况

4.7 实战避坑指南

这些年我踩过的坑,列成几条醒目的经验:
1. 别直接用默认参数跑所有项目——每个蛋白的盒子大小至少要微调两次。
2. 配体预处理很重要,加氢方向、质子化状态搞错了,对接全瞎忙。
3. 永远跑至少三个种子数,看结合模式是否一致,不一致就别信。
4. 商业软件(Glide、GOLD)一定要跑完验证集——不然你都不知道它在你的体系里表现如何。
5. DOCK的球集文件尽量手动校核,自动生成的很多时候不适合活性位点形态。

曾经我有个项目用Vina筛出来一个分数极高的分子,结果买回来没活性——后来发现配体构象错了。
从那以后,我坚持:
“先用Vina粗筛 → 再用Glide精修 → 最后用GOLD跑一次柔性验证”。
三管齐下,基本不翻车。

好了,四个软件就聊到这儿。
下一章我们聊聊结合模式打分函数的设计逻辑,
这事儿更底层,搞懂了才能自定义打分。