AutoDock 系列软件简介
AutoDock 是一款用于分子对接的免费开源软件套件,广泛应用于药物设计和结构生物学领域,它主要包括两个核心程序:

- AutoDock4: 一个经典的对接引擎,使用拉马克遗传算法,计算速度较慢,但结果有时更稳定。
- AutoDock Vina: 目前最主流的对接引擎,使用改进的优化算法。速度极快,精度高,是本教程的重点。
工作流程: 我们将使用图形界面工具 AutoDock Tools (ADT) 来准备输入文件,然后使用命令行工具 Vina 来执行计算,最后用可视化软件来分析结果。
教程目标
我们将完成一个完整的对接任务:将一个已知的小分子药物 阿司匹林 对接到其靶点蛋白 环氧合酶-2 (COX-2, PDB ID: 5IKR) 的活性口袋中。
第一部分:准备工作
在开始之前,请确保你已经安装了以下软件:
- AutoDock Tools (ADT): 下载地址 (选择对应你操作系统的版本,如 Windows, Linux, macOS),安装后启动,界面是一个独立的窗口。
- AutoDock Vina: 下载地址 (下载
vina或vina.exe可执行文件)。无需安装,只需将下载的可执行文件放在一个固定的路径下(C:\vina),并记住这个路径。 - PyMOL 或 ChimeraX: 用于查看和分析结果。
- 一个文本编辑器: 如 Notepad++, VS Code, Sublime Text 等。
第二部分:获取和准备蛋白质
步骤 1: 下载蛋白质结构文件
- 访问蛋白质数据库 RCSB PDB: https://www.rcsb.org/
- 在搜索框中输入 PDB ID:
5IKR,然后点击 "Download Files"。 - 下载
5IKR.pdb文件,这个文件包含了蛋白质的原子坐标。
步骤 2: 清理蛋白质结构
PDB 文件中可能包含水分子、其他配体、离子等,这些通常需要移除,只保留我们感兴趣的蛋白质部分。

-
使用 PyMOL 清理 (推荐):
-
打开 PyMOL,加载
5IKR.pdb文件。 -
在命令行窗口输入以下命令:
# 移除所有水分子 (HOH) remove resn HOH # 移除所有其他配体和非标准残基 # 5IKR 中的配体是 ITS (Ibuprofen Trisalate),我们也要移除它 remove resn ITS # 移除所有离子 remove elem Na,Cl,K # 保存清理后的蛋白质文件 save 5IKR_clean.pdb, chain A
-
现在你得到了一个干净的蛋白质文件
5IKR_clean.pdb。
(图片来源网络,侵删)
-
-
使用 ChimeraX 清理:
-
打开 ChimeraX,输入
open 5IKR.pdb。 -
在命令行输入:
# 移除水、离子和其他配体 delete ~water ~ion ~het # 保存文件 save 5IKR_clean.pdb
-
步骤 3: 在 AutoDock Tools 中准备蛋白质
- 打开 AutoDock Tools (ADT)。
- 点击菜单栏的 File -> Open,选择刚刚保存的
5IKR_clean.pdb文件。 - 加氢: 蛋白质在晶体结构中通常缺少氢原子,而对接需要氢原子来形成氢键。
- 点击菜单栏的 Edit -> Hydrogens -> Add Polar Hydrogens,这会添加极性氢原子。
- 再次点击 Edit -> Hydrogens -> Add Non-Polar Hydrogens,这会添加非极性氢原子(如与碳相连的氢)。
- 计算电荷: AutoDock 依赖于原子电荷来计算能量。
- 点击菜单栏的 Grid -> Macromolecule -> Choose...,在弹出的窗口中,确保
5IKR_clean被选中,然后点击 Select。 - ADT 会自动为蛋白质中的原子分配 Gasteiger 电荷,这个过程是自动完成的,你无需额外操作。
- 点击菜单栏的 Grid -> Macromolecule -> Choose...,在弹出的窗口中,确保
- 保存为 PDBQT 文件: 这是 AutoDock 专用的格式,包含了原子坐标、电荷和类型信息。
- 点击菜单栏的 File -> Save As,将文件名设为
5IKR_protein.pdbqt,然后保存。
- 点击菜单栏的 File -> Save As,将文件名设为
第三部分:准备小分子配体
我们将使用阿司匹林(Aspirin)作为配体,你可以从 PDB 文件中提取,也可以从化学数据库下载。
步骤 1: 获取配体结构
- 从 PDB 文件中提取
- 在 PyMOL 中,加载
5IKR.pdb。 - 在命令行输入:
select ligand, resn ITS(ITS 是阿司匹林的类似物,结构非常相似)。 - 输入
save aspirin.pdb, ligand,得到配体文件。
- 在 PyMOL 中,加载
- 从在线数据库下载
- 访问 PubChem: https://pubchem.ncbi.nlm.nih.gov/
- 搜索 "Aspirin",找到其 CID (2244),点击 "Download",选择 "3D Structure (SDF)" 格式并下载。
步骤 2: 在 AutoDock Tools 中准备配体
- 在 ADT 中,点击 File -> Open,选择你得到的配体文件(如
aspirin.pdb或从 PubChem 下载的 SDF 文件)。 - 设置键的旋转自由度: ADT 需要知道哪些键可以旋转,从而在对接过程中进行构象搜索。
- 点击工具栏上的 Torsion Tree 按钮(看起来像一个小树)。
- ADT 会自动检测可旋转的键(通常是单键),并用绿色高亮显示。
- 检查一下,确保所有合理的旋转键都被标记了,阿司匹林只有一个可旋转的键(酯键),应该只有一个绿色标记。
- 计算电荷和原子类型:
- 点击菜单栏的 Ligand -> Choose...,选中你的配体,点击 Select。
- ADT 会自动分配电荷和原子类型。
- 保存为 PDBQT 文件:
- 点击 File -> Save As,将文件名设为
aspirin_ligand.pdbqt,然后保存。
- 点击 File -> Save As,将文件名设为
第四部分:定义对接网格
网格定义了在蛋白质表面哪个区域进行搜索,一个合适的网格区域可以大大节省计算时间。
步骤 1: 确定活性位点
- 根据已知信息
- 对于
5IKR,我们知道阿司匹林结合在 COX-2 的活性口袋,通过 PyMOL 观察蛋白质结构,可以大致定位口袋中心。
- 对于
- 使用 ADT 的中心点功能
- 在 ADT 中,确保你的蛋白质
5IKR_protein.pdbqt已经打开。 - 点击菜单栏的 Grid -> Grid Box...。
- 在弹出的窗口中,你可以通过在 PyMOL 视图中点击一个原子来设置中心点坐标。
- 中心: 输入你选择的中心坐标,
x: -12.5, y: 10.0, z: -10.0(这是一个针对 5IKR 的示例坐标)。 - 大小: 定义搜索空间的尺寸,对于小分子对接,
20 x 20 x 20 Å通常足够,如果配体较大,可以适当增加到25 x 25 x 25 Å或更大。
- 在 ADT 中,确保你的蛋白质
步骤 2: 生成网格文件
- 在 Grid 菜单中,点击 Output -> Gpf...。
- 选择要保存的文件名,
5IKR_receptor.gpf(Grid Parameter File)。 - 然后点击 Output -> Dpf...,保存为
5IKR_receptor.dpf(Docking Parameter File)。 - 点击 Output -> Grid...,保存为
5IKR_receptor.gridpt(Grid Data File)。
注意: gpf 和 dpf 文件是文本文件,你可以用记事本打开查看参数。gridpt 是二进制文件,供 Vina 使用。
第五部分:运行 AutoDock Vina
现在我们准备好了一切,可以开始运行对接计算了。
步骤 1: 准备配置文件
我们需要一个文本文件来告诉 Vina 所有参数。
-
用记事本创建一个新文件,命名为
config.txt。 -
receptor = 5IKR_protein.pdbqt ligand = aspirin_ligand.pdbqt center_x = -12.5 center_y = 10.0 center_z = -10.0 size_x = 20 size_y = 20 size_z = 20 exhaustiveness = 8 # 搜索强度,值越高越准越慢,推荐 4-16 num_modes = 9 # 生成多少个构象,推荐 9-20 energy_range = 3 # 能量范围 (kcal/mol) out = output.pdbqt # 输出文件名
exhaustiveness: 最重要的参数之一,控制搜索的彻底程度,8 是一个不错的起点,如果电脑性能好,可以设为 16。num_modes: 你希望 Vina 返回多少个结合最好的构象。
步骤 2: 执行对接
-
打开命令行工具(在 Windows 上是 "CMD" 或 "PowerShell",在 macOS/Linux 上是 "Terminal")。
-
使用
cd命令切换到你存放所有文件的目录(cd C:\my_docking_project)。 -
运行 Vina 程序,假设你的
vina.exe在C:\vina目录下:# Windows C:\vina\vina.exe --config config.txt # macOS / Linux (假设 vina 可执行文件在当前目录) ./vina --config config.txt
-
程序开始运行,你会看到进度条,运行时间取决于
exhaustiveness和你的电脑性能,通常需要几分钟到半小时。 -
运行结束后,目录下会生成一个新的文件
output.pdbqt,里面包含了对接后的 9 个构象。
第六部分:分析结果
对接完成后,分析结果是最关键的一步。
步骤 1: 查看对接构象
-
使用 PyMOL:
- 打开 PyMOL,首先加载原始的蛋白质
5IKR_clean.pdb。 - 然后点击 File -> Open,加载对接结果文件
output.pdbqt。 - 你会看到蛋白质上叠加了 9 个阿司匹林分子,它们按照结合能从低到高排列(第一个结合最好)。
- 你可以使用 PyMOL 的选择工具来分别查看每个构象,并测量它们与关键氨基酸残基的距离,分析氢键等相互作用。
- 打开 PyMOL,首先加载原始的蛋白质
-
使用 ChimeraX:
- 打开 ChimeraX,输入
open 5IKR_clean.pdb。 - 输入
open output.pdbqt。 - ChimeraX 会自动将对接结果以不同颜色显示,你可以使用命令
show as sticks来更好地观察相互作用。
- 打开 ChimeraX,输入
步骤 2: 理解输出文件
打开 output.pdbqt 文件,你会看到文件末尾有一段总结信息:
... REMARK Vina finished REMARK Results for 5IKR_protein.pdbqt and aspirin_ligand.pdbqt ... REMARK 1 -7.3 0.000 -12.5 10.0 -10.0 REMARK 2 -7.1 0.000 -12.5 10.0 -10.0 ...
REMARK 1: 第一个数字是 结合能,单位是 kcal/mol。这个值越低(负得越多),代表结合越稳定。REMARK 2: 后面的三个数字是该构象下配体质心的坐标。
通过比较不同配体的结合能,你可以判断哪个配体与靶点蛋白的结合能力更强。
总结与进阶
恭喜你!你已经完成了一次完整的 AutoDock Vina 分子对接流程。
关键要点回顾:
- 准备: 获取 PDB 文件,用 PyMOL/ChimeraX 清理。
- 加氢和电荷: 在 ADT 中为蛋白质和配体加氢并分配电荷,保存为
.pdbqt。 - 定义网格: 在 ADT 中设置网格的中心和大小,生成
.gridpt文件。 - 运行对接: 编写
config.txt,在命令行运行 Vina。 - 分析结果: 用 PyMOL/ChimeraX 查看
.pdbqt输出文件,分析结合能和相互作用。
进阶方向:
- 虚拟筛选: 如果你有一系列配体,可以编写一个脚本来批量准备和运行对接,以找到潜在的活性化合物。
- 柔性对接: 本教程是半柔性对接(蛋白质刚性,配体柔性),要进行柔性对接(蛋白质侧链也可移动),需要使用 AutoDock4,过程更复杂。
- 分子动力学: 对接结果是一个静态的快照,你可以将最佳构象导入 GROMACS 或 AMBER 等软件进行分子动力学模拟,以评估结合的稳定性和动力学行为。
希望这份详细的教程能帮助你顺利入门 AutoDock!如果在操作中遇到问题,请仔细检查每一步的文件格式和参数设置。
