三款主流对接软件深度对比:Vina、Glide、GOLD
做高通量虚拟筛选这些年,我接触过的对接软件少说也有七八款。但真正能在工业级筛选中站住脚的,其实就这三家:开源的AutoDock Vina、Schrödinger家的Glide、以及CCDC的GOLD。
这三款工具,说白了一个道理——没有最好的软件,只有最适合场景的工具。我在搭建筛选流程时吃过不少亏,今天把这些经验摊开来聊。
AutoDock Vina:开源界的扛把子
Vina是Oleg Trott在2010年推出的作品。它继承了AutoDock的衣钵,但换了全新的打分函数和优化算法。
核心优势:免费、速度快、容易部署。我个人做开始的初步筛选,十次有八次会用Vina。
Vina的评分函数基于经验打分,结合了成对相互作用的求和项。它的算法并不复杂——布谷鸟算法配合局部优化,但胜在足够鲁棒。
# 典型的Vina对接命令
vina --receptor protein.pdbqt \
--ligand ligand.pdbqt \
--out output.pdbqt \
--center_x 12.0 \
--center_y -8.5 \
--center_z 5.2 \
--size_x 22 \
--size_y 22 \
--size_z 22 \
--exhaustiveness 8
优点:
- 完全开源,可以查看和修改代码
- 支持多线程并行,天然适合高通量
- 输入输出格式简单,好做批处理脚本
- 运行速度快,单配体一般几秒到几十秒
缺点:
- 打分函数精度有限,尤其是对柔性侧链的处理
- 无法处理水分子和金属离子的特殊配位
- 缺乏图形界面,调试不够直观
- 采样效率在低柔性区域不够均匀
避坑提醒:我曾经在一个项目中,用Vina对某个含锌离子的蛋白酶做过虚拟筛选。结果排名靠前的分子几乎全假阳性——Vina根本不认得锌离子的配位几何。后来我不得不给锌离子单独加了约束参数,才勉强把召回率提上去。
Glide:精度至上的帝王工具
Glide是Schrödinger公司的招牌产品。如果你问我哪款软件在蛋白—配体结合模式预测上最准,我肯定会说Glide——前提是你预算够。
Glide的核心创新在于“漏斗式”筛选策略。它先做粗粒度的栅格采样,然后逐步精细化。它独有的HTVS(High Throughput Virtual Screening)、SP(Standard Precision)和XP(Extra Precision)三级精度模式,让高通量筛选有了梯度选择。
# Glide对接命令示例(通过Schrödinger的Python API)
import schrodinger.application.glide.glide as glide
conf = glide.GlideConfig()
conf.receptor = 'protein.mae'
conf.ligand = 'ligands.mae'
conf.precision = glide.Precision.SP
conf.grid = 'grid.zip'
conf.output = 'glide_out.mae'
conf.nposes = 5
job = glide.run(conf)
优点:
- 采样精度极高,XP模式的pose还原度堪称行业标杆
- 内置Embrace算法,处理结合位点柔性更合理
- 与Schrödinger生态无缝集成,分析管线的自动化非常顺畅
- 对带金属蛋白、水分子介导结合的物理建模很细致
缺点:
- 商业授权极其昂贵——说实话,一个小课题组根本扛不住
- 计算资源消耗大,尤其XP模式,时间成本接近Vina的5到10倍
- 依赖Maestro图形界面配置,命令行运维也有不小学习成本
我的经验:现在做真正的先导化合物筛选,我的策略是先用Vina做第一轮粗筛,砍掉70%的明显不合理分子。然后拿剩下30%用Glide的SP模式精筛。这样既保住了通量,又拿到了Glide的高精度打分——成本只要纯Glide方案的三分之一。
GOLD:遗传算法的老将
GOLD是CCDC公司开发的老牌工具,从1998年就开始服务学术界和工业界了。如果你研究的是含金属离子的酶,或者结合口袋特别不规则的情况,GOLD可能是你的首选。
GOLD的独特之处在于它用遗传算法做构象搜索,而不是传统的蒙特卡洛或梯度下降法。它不需要预先计算格点,而是动态评估配体与受体间的相互作用。
# GOLD配置文件片段(gold.conf)
GOLD_CONFIGURATION_FILE
GOLD_SYSTEM_DIR = /path/to/gold/system
RECEPTOR_FILE = receptor.mol2
LIGAND_FILE = ligand.mol2
FITNESS_FUNCTION = chemscore
SEARCH_EFFICIENCY = 200%
AUTOMATIC_SETTINGS = True
NUM_POSES = 10
ALLOW_EARLY_TERMINATION = True
优点:
- 遗传算法对复杂搜索空间适应性极强
- 原生支持金属配位键建模——这一点Glide也要向它学习
- 打分函数多样化,GoldScore、ChemScore、ASP等可选
- 处理柔性残基的能力很强,适合诱导契合场景
缺点:
- 速度慢——遗传算法的天然短板,高通量时非常吃力
- 结果稳定性不如Glide,相同参数跑两遍可能会有差异
- 社区和技术支持不及Schrödinger,更新频率稍慢
- 配置文件不直观,新手容易埋坑
避坑指南:我第一次用GOLD跑10万分子级的高通量时,以为默认参数就够了。结果跑了整整一个礼拜,才发现SEARCH_EFFICIENCY设成200%对大多数分子完全没必要。后来调整为100%,时间砍了一半,pose质量几乎没有变化。嗯,默认参数不一定是好参数。
三款软件核心指标对比
下面这个表我建议你收藏。高通量筛选的初期选型,就是在这几个维度间做权衡。
| 对比维度 | AutoDock Vina | Glide | GOLD |
|---|---|---|---|
| 授权方式 | 开源免费 | 商业付费(昂贵) | 商业付费(中等) |
| 核心算法 | 布谷鸟+局部优化 | 漏斗式层级采样 | 遗传算法 |
| 单配体速度 | 快(秒级) | 中(分钟级) | 慢(分钟到小时级) |
| 打分精度(QM验证) | 中等 | 高(尤其XP) | 中等偏高 |
| 金属配位建模 | 弱 | 强 | 很强 |
| 高通量适用性 | 非常适用 | 适用(配合HTVS) | 一般不适用 |
| 跨平台支持 | Linux/macOS/Windows | Linux为主 | Linux/Windows |
| 社区活跃度 | 极高 | 高(商业化支持) | 中等 |
我的选型方法论
你可能会问:那我到底选哪个?我个人的思路是这样的。
如果你手头项目是百万级以上超高通量初筛,预算也不充裕——别犹豫,直接上Vina。配好蛋白预处理流程,写几层Shell脚本做批处理,配合HPC集群,一个周末就能跑完一轮。虽然误报率高一些,但作为第一道筛子是够用的。
如果你的项目已经到了先导化合物优化阶段,或者你研究的是GPCR这类对pose精度要求极高的蛋白——那就咬咬牙用Glide。XP模式的能量分解报告,能直接指导你做官能团改造。
而GOLD嘛,它的位置在两者之间。当你面对那些带金属辅因子、或结合口袋异常灵活的蛋白时,GOLD偶尔能给你意想不到的好结果。不过说实话,在纯高通量场景下它确实不太合适当主力。
总结实战建议
说了这么多,我想给你三个摆在手边的建议。
建立分级筛选管道:别指望一把定胜负。我自己的管道永远是三层:Vina粗筛 → Glide SP精筛 → 分子动力学验证。三层过滤下来,命中率能稳定在20%以上。
场景驱动选型:如果是对接计算本身需要24小时内拿到百万分子结果——那Vina几乎是唯一选择。如果是10万分子以下且精度是生命线——就上Glide。遇到金属蛋白或奇怪的口袋——试试GOLD,哪怕只跑几千分子也值得。
别忽视输入数据质量:讲实话,再好的对接软件也是垃圾进垃圾出。我曾经花三个月调Glide的参数,结果发现是受体晶体结构选错了——绑定态结构用成了非绑定态。受体结构优化和配体电荷分配,比挑对接软件重要十倍。