文档库 最新最全的文档下载
当前位置:文档库 › AutoDock中文教程

AutoDock中文教程

AutoDock中文教程
AutoDock中文教程

AutoDock和AutoDock Tools 使用教程

一、分子对接简介及软件介绍

1.分子对接理论基础

所谓分子对接就是两个或多个分子之间通过几何匹配和能量匹配而相互识别的过程。分子对接在酶学研究以及药物设计中具有十分重要的意义。在酶激活剂、酶抑制剂与酶相互作用以及药物分子产生药理反应的过程中,小分子(通常意义上的Ligand)与靶酶(通常意义上的Receptor)相互互结合,首先就需要两个分子充分接近,采取合适的取向,使两者在必要的部位相互契合,发生相互作用,继而通过适当的构象调整,得到一个稳定的复合物构象。通过分子对接确定复合物中两个分子正确的相对位置和取向,研究两个分子的构象,特别是底物构象在形成复合物过程中的变化,是确定酶激活剂、抑制剂作用机制以及药物作用机制,设计新药的基础。

分子对接计算是把配体分子放在受体活性位点的位置,然后按照几何互补、能量互补化学环境互补的原则来实时评价配体与受体相互作用的好坏,并找到两个分子之间最佳的结合模式。分子对接最初思想起源于Fisher E.的“锁和钥匙模型”(图),认为“锁”和“钥匙”的相识别的首要条件是他们在空间形状上要互相匹配。然而,配体和受体分子之间的识别要比“锁和钥匙”模型复杂的多。首先,配体和受体分子的构象是变化的,而不是刚性的,配体和受体在对接过程中互相适应对方,从而达到更完美的匹配。其次,分子对接不但要满足空间形状的匹配,还要满足能量的匹配。配体和受体之间的通过底物分子与靶酶分子能否结合以及结合的强度最终是由形成此复合物过程的结合自由能变化ΔG bind所决定的。

互补性(complementarity)和预组坦织(pre-organization)是决定分子对接过程的两个重要原则,前者决定识别过程的选择性,而后者决定识别过理的结合能力。互补性包括空间结构的互补性和电学性质的互补性。1958年Koshland提出了分子识别过程中的诱导契合(induced fit)概念,指出配体与受体相互结合时,受体将采取一个能同底物达到最佳结合的构象(图1)。而受体与配体分子在识别之前将受体中容纳配体的环境组织的越好,其溶剂化能力越低,则它们的识别效果越佳,形成的复合物也就越稳定。

图1:“锁和钥模型(a)”和“诱导契合模型(b)”示意图

2.分子对接常用方法

分子对接方法根据不同的简化程度可以大致分为以下三类:(1)刚性对接;(2)半柔性对接;(3)柔性对接。刚性对接指在对接的过程中,研究体系的构象不发生变化;半柔性对接是指在对接过程中,研究体系尤其是配体的构象允许在一定的范围内变化;而柔性对接则是指在对接过程中,研究体系的构象基本上是可以自由变化的。当然,这只是一种简单的分类方法,而在很多分子对接程序中,实际上采取了多种处理方法。在这些分子对接方法中,刚性对接适合考察比较大的体系,比如蛋白质和蛋白质以及蛋白质和核酸之间的相互作用,他计算较为简单,原理也相对简单,主要是考虑构象之间的契合程度。半柔性对接适合于处理小分子和大分子之间的对接。在对接过程中,小分子的构象一般是可以变化的,但大分子则是刚性的。由于小分子相对较小,因此在一定程度考察柔性的基础上,还可以保持较高的计算效率,在药物设计尤其在基于分子数据库的虚拟筛选过程中,一般采用半柔性的分子对接方法。柔性对接方法一般用于精确考察分子之间的识别情况,由于在计算过程中体系的构象是可以变化的,因此柔性对接在提高了对接准确性的同时却需要耗费较长的计算时间。

上述各种几何优化方法可以获得分子对应与初始态的优势构象,但实际上这样的构象可以有很多,一般认为自由能最小的构象存在的概率高,全局极小可能是比较重要的构象。同时,配体和受体活性部位结合时的构象不一定是全局极小构象,而可能是某一低能构象(药效构象)。不管是寻找分子的全局极小构象还是药效构象,均要使用构象搜索方法。

分子对接的目的是找到底物分子和受体分子的最佳结合位置。因此,分子对接面临的最重要的问题就是如何找到最佳的结合位置以及如何评价对接分子之间的结合强度。当然,这两个问题也是

相互关联的。如何找到最佳的结合位置就要牵涉到构象搜索方法。常用的构象搜索方法有系统搜索法和非系统搜索法。系统搜索法通过系统的改变每一个扭转角产生所有可能的构象,从中挑选出能量较低的构象,但计算量非常大。所以通常使用非系统搜索法来寻找能量较低构象,常用方法有:(1)分子动力学方法(Molecular dynamics,MD);(2)随机搜索(Random search);(3)遗传算法(Genetic algorithm,GA);(4)距离几何算法(Distance geometry,DG)等。随机搜索又包含:(1)完全随机算法;(2)蒙特卡罗法(Monte Carlo,MC);(3)模拟退火法(Simulated annealing,SA)。分子对接的方法很多,下表(表1)列出了针对不同对接体系的常用对接方法:

表1:常用的分子对接方法

3.分子对接软件

第一个分子对接程序是UCSF Kuntz小组于1982年开发的DOCK,早期的版本以刚性对接为主,从4.0版开始考虑配体的柔性。像这样的半柔性(刚性受体-柔性配体:rigid receptor-flexible ligand docking)对接程序还有AutoDock、FlexX等。同时考虑配体和受体柔性的对接程序主要有FlexiDock,它采用遗传算法来对配体和受体的结合构像进行优化,在初始条件较好的情况下,FlexiDock可以比较精确的确定配体和受体的结合状态,但计算时间较长。下表为一些有代表性的分子对接软件(表2)及软件的被引次数对比(图2)。

表2:有代表性的分子对接软件

注:CAPRI,Critical Assessment of PRediction of Interactions,相互作用预测临界评价

图2:分子对接软件——最常用的分子对接软件被引次数统计(ISI Web of Sciense,2005)4.AutoDock以及ADT(AutoDock Tools)

4.1.AutoDock

AutoDock是The Scripps Research Institute的OIson科研小组使用C语言开发的分子对接软件包,目前最新的版本为4.01。AutoDock其实是一个软件包,其中主要包含AutoGrid和AutoDock 两个程序。其中AutoGrid主要负责格点中相关能量的计算,而AutoDock则负责构象搜索及评价。

AutoDock在早期版本中使用的是模拟退火算法(Simulated Annealing Algorithm)来寻找配体

与受体最佳的结合位置状态,而从3.0版本开始使用一种改良的遗传算法,即拉马克遗传算法(Lamarckian Genetic Algorithm,LGA)。测试结果表明,LGA比传统的遗传算法和模拟退火具有更高的效率。在LGA方法中,作者把遗传算法和局部搜索(Local search)结合在一起,遗传算法用于全局搜索,而局部搜索用于能量优化。LGA算法引入了拉马克的遗传理论,这个操作过程可下图(图3)。

图3:LGA算法操作过程图

同时在AutoDock中配体和受体之间结合能力采用能量匹配来评价。在1.0和2.0版本中,能量匹配得分采用简单的基于AMBER力场的非键相互作用能。非键相互作用来自于三部分的贡献:范德华相互作用,氢键相互作用以及静电相互作用。而在3.0之后的版本中AutoDock提供了半经验的自由能计算方法来评价受体和配体之间的能量匹配。

为了加快计算速度,AutoDock采用格点对接的方法,但与DOCK中格点对接的处理方法有明显的区别。DOCK中,格点上保存的不是能量,而是仅与受体有关的特征量。而在AutoDock中,格点上保存的是探针原子和受体之间的相互作用能。

对于范德华相互作用的计算,每个格点上保存的范德华能量的值的数目与要对接的配体上的原子类型(表3)的数目一样。如果一个配件中含有C、O和H三种原子类型,那么在每个格点上就需要用三个探针原子来计算探针原子与受体之间的范德华相互作用值。当配体和受体进行分子对接时,配体中某个原子和受体之间的相互作用能通过周围8个格点上的这种原子类型为探针的格点值用内插法得到。

表3:AutoDock4中的原子类型(*为默认在gpf中存在的原子类型)

静电相互作用的计算采用了一个静电势格点,在格点上储存受体分子的静电势。当配体和受体分子对接时,某个原子和受体之间的静电相互作用能通过周围格点上静电势以及原子上的部分电荷就可以计算得到。

计算氢键相互作用时,格点的处理和范德华相互作用有点类似,每个格点上需要保存配体分子中所有氢键给体与氢键受体之间的相互作用能量,而且这些能量都是在氢键在最佳情况下的氢键能量值。

以上格点能量的计算都是由AutoDock中的AutoGrid程序计算得出的,AutoDock格点对接示意图如下图所示(图4)。AutoDock格点对接的基本流程如下:首先,用围绕受体活性位点的氨基酸残基形成一个范围更大的Box,然后用不同类型的原子作为探针(probe)进行扫描,计算格点能量,

此部分任务由AutoGrid程序完成。然后AutoDock程序对配体在Box范围内进行构象搜索(conformational search),最后根据配体的不同构象(conformation),方向(orientation)、位置(position)及能量(energy)进行评分(scoring),最后对结果进行排序(ranking)。

图4:AutoDock格点对接示意图

AutoDock目前的版本只能实现单个配体和受体分子之间的对接,程序本身还没有提供虚拟筛选功能(Virtual Screening),但是可以使用Linux/Unix中的Shell以及Python语言实现此功能。同时AutoDock本省所包含的AutoDock以及AutoGrid程序是完全在命令附下操作的软件,没有图形界面,但是如果使用AutoDock Tools程序,就可以在几乎完全图形化的界面中完成分子对接以及结果分析等工作,下面我们就介绍一下AutoDock Tools。

4.2.AutoDock Tools

AutoDock Tools(以下简称ADT)是The Scripps Research Institute,Molecular Graphics Laboratory (MGL)在Python Molecular Viewer(以下简称PMV,Python语言开发)基础上开发的针对AutoGrid和AutoDock程序开发的图形化的分子可视化及对接辅助软件,目前最新版本为1.5.2。在这里我们使用的版本为1.5.1,它的主界面主要包含以下几个部分(图5):

图5:ADT1.5.1的主界面及窗口部件

(1)PMV菜单:主要通过使用菜单命令对分子进行相关的操作,以及进行可视化设置;

(2)PMV工具栏:PMV菜单中一些常用命令的快捷按钮;

(3)ADT菜单:AutoGrid和AutoDock的图形化操作菜单;

(4)分子显示窗口:3D模型分子的显示和操作窗口;

(5)仪表板窗口部件:快速查看及设置分子的显示模型以及着色方式;

(6)信息栏:显示相关操作信息。

4.3.软件的获取及安装

AutoDock程序包自版本4.0起成为自由软件(Free Soft,非免费软件),只需在官方网站上完成注册(https://www.wendangku.net/doc/f719120391.html,/downloads/autodock-registration),即可下载包含完整源代码的版本以及针对各种不同操作系统平台编译好的程序。

在这里我们下载包含源代码以及编译好的各种平台程序的完整软件包,名称为“autodocksuite-4.0.1-all.tar.gz”,解压后该文件包包含三个目录:(1)“bin”目录中是针对不同平台

编译好的AutoGrid以及AutoDock程序;(2)“example”目录中包含一些程序运行的例子,可以进行软件测试以及相关操作的学习;(3)“src”目录为AutoGrid以及AutoDock程序的源代码,可以自行编译成可执行的程序文件。“bin”目录中编译好的针对不同平台的程序如下表所示(表4):表4:autodocksuite-4.0.1-all.tar.gz中各种编译好的AutoDock程序

绝大多出情况下,这些编译好的程序在相应的品台下均能正确运行,但如过碰上特殊情况或是针对自己的实际要求对程序进行了修改,那就需要重新编译AutoGrid以及AutoDock程序。下面就以Linux系统为例解释编译过程:

首先需要确认Linux中已经安装了C或C++开发工具(如:gcc,g++等)以及Make工具等,一般情况下默认安装绝大多数版本的Linux操作系统这些个工具都会安装。之后打开控制台:

完成编译后,将“autogrid4”以及“autodock4”程序拷贝到需要的目录即可。

相比AutoDock的编译,ADT的安装就显得尤其简单:首先,到ADT的官方网站下载网站(https://www.wendangku.net/doc/f719120391.html,/downloads)下载相应操作系统的版本,在这里我们下载Linux下的Standalone installer的版本:MGLTools-1.5.1-Linux-x86-Install(需要

GLIBC_2.3, libstdc++.5.X才能正常运行)。下载完毕后,直接双击程序文件即可在Linux 下进行完全图形化的安装,与Windows下安装程序一样。但是,如果

MGLTools-1.5.1-Linux-x86-Install不能运行,则下载mgltools_i86Linux2_1.5.2.tar.gz,解压缩后运行install.sh进行安装,一样会出现安装界面。需要注意的是目前ADT最新版本为1.5.2,但安装方式完全一样,1.5.2版本主要增加了针对不同版本AutoDock程序的切换功能,与AutoDock的兼容性更好。

二、对接准备及对接操作

在这一部分中我们将采用非常经典的HIV蛋白及其抑制剂(PDB ID:1HSG)来作为例子对AutoDock的整个操作分析过程做一个详细的讲解。

以下操作过程全部在ubuntu 8.04操作系统下完成,桌面系统为KDE4.0;AutoDock为在此操作系统下进行了重新编译;ADT版本为1.5.1。

1.获取Receptor(受体)及Ligand(配体)结构文件

我们可以从https://www.wendangku.net/doc/f719120391.html,网站上下载“1hsg.pdb”文件,运用ADT、VMD以及PyMol之类的常用分子显示及编辑软件来将“1hsg.pdb”中的蛋白质受体和小分子配体分离开来,保存成两个单另的文件以备后面使用。同时还可以在AutoDock网站下载“tutorial4.tar.gz”

(https://www.wendangku.net/doc/f719120391.html,/faqs-help/tutorial/using-autodock-4-with-autodocktools,受体文件:“hsg1.pdb”以及配体文件:“ind.pdb”)来进行操作。下面我们就以从AutoDock网站上获取的结构文件来进行后面的操作。

2.设置工作目录及工作环境

新建工作文件夹“1HSG”,将编译好的“autogrid4,autodock4”程序以及“hsg1.pdb,ind.pdb“两个PDB文件拷贝到此文件夹下。打开控制台,切换目录到该文件夹下,运行ADT,这样ADT的默认路径就是”1HSG“文件夹,此后所有输入/输出文件的默认路径都是1HSG,方便后面操作(图6)。

图6:控制台窗口切换工作路径并启动ADT

3.准备receptor分子

PMV菜单:File → Read Molecule选择“hsg1.pdb“打开Receptor分子:

PMV菜单:Select → Select From String 打开Select From String对话框,在Residue框中输入HOH*,Atom框中输入*,点击Add选中所有水分子。最后,点击Dismiss按钮关闭Select From String对话框(图7)。

图7:Select From String对话框及被选中的H2O分子(黄色“+“表示被选中的原子,没有H,所以

选中的都是O原子)

PMV菜单:Edit → Delete → Delete AtomSet删除已选择的水分子,点击弹出的警告窗口上的CONTINUE按钮删除。

PMV菜单:Edit Hydrogens → Add 为Receptor分子加H(X射线衍射无法获H的坐标数据,图8)。

图8:Add Hydrogens对话窗口

PMV菜单:File → Save → Write PDB保存修改过的receptor分子(图9)。

图9:Wirte PDB对话框。(注:Other write option选择Sort Nodes)4.准备Ligand分子

PMV菜单:Display → Show/Hide Molecule 隐藏hsg1分子(图10)。

图10:Show/Hide Molecule对话框

ADT菜单中:Ligand → Input → Open ... 在弹出的对话框中将文件类型由PDBQT改为PDB,选择“ind.pdb”,打开Ligand分子(图11)。

图11:Ligand File for AutoDock对话框

在打开Ligand分子时ADT会对该分子进行初始化,初始化包含一系列操作:

●ADT检测Ligand分子是否已经加了电荷,如果没有,则自动加上Gasteiger电荷。需要注意的

是:如果要使Gasteiger计算正确,就必须将Ligand上的所有H加上,包括极性的以及非极性的。如果电荷全部为0,则ADT会试图加上电荷。同时还将检测每个残基上的总电荷是否为整数。

●ADT检测并合并非极性的H。

●ADT将Ligand中的每个原子指派为“AutoDock原子类型”,原子类型见前一部分。

以上初始化操作完成后,弹出summary for ind(图12)信息窗口,包含了以上操作的统计信息,点击OK关闭。

图12:summary for ind信息窗口

ADT菜单:Ligand → Torsion Tree → Detect Root… ADT自动判定Ligand的Root;

ADT菜单:Ligand → Torsion Tree → Show Root Expansion 显示Root扩展信息;

ADT菜单:Ligand → Torsion Tree → Show/Hide Root Marker 显示/隐藏Root标记;

ADT菜单:Ligand Torsion Tree → Choose Torsions…选择Ligand中可扭转的键,弹出Torsion Count对话框中点击Make all active bonds non-rotatable,Make all rotatable bonds rotatable以及Make all amide bonds rotatable,最后结果如下图(图13)所示:该Ligand分子32个键中共有14个被设置成可扭转的键(rotatable,绿色),点击Done确定并关闭此对话框。

图13:Torsion Count对话框及Ligand分子Torsion设置效果(绿色圆球表示Root,绿色键表示可

扭转,紫色表示非扭转,红色表示不可扭转)

ADT菜单:Ligand → Torsion Tree → Set Number of Torsions…弹出Set Number of Active Torsions对话框,以设置可活动的键的数量,同时指定设定活动键时是需要移动最少的原子(fewest atoms)还是最多的原子(most atoms)。在这里我们设置fewest atoms,数量为6(图14),点Dismiss关闭对话框。

图14:Set Number of Active Torsions对话框

至此Ligand准备完毕,需将其保存为含有原子坐标、AutoDock原子类型、电荷以及可扭转键等信息的PDBQT格式的文件:

ADT菜单:Ligand → Output → Save as PDBQT…将准备好的Ligand分子保存为“ind.pdbqt”文件。

5.准备柔性残基文件

在AutoDock3的对接中Ligand是柔性的而Receptor则是刚性的;而在AutoDock4中不但Lingand可以是柔性的,而且Receptor中的部分氨基酸残基也可以设为柔性的,这就进一步提高的对接的精度。

ADT菜单:Flexible Residues → Input → Choose Macromolecule…选择需要设置柔性残基的大分子,在这里我们选择之前编辑好的hsg1分子。如果之前删除了该分子,则在ADT菜单:FlexibleResidues Input Open Macromolecule…打开该分子。此时会弹出对话框,询问是否合

并没有极性的H,点击Yes,之后会弹出统计信息窗口,点击Yes关闭(图15)。

图15:Merge Non-polar Hydrogens及ADflex_chooseMcro对话框

ADT菜单:Select → Select From String 选择需要设置成为柔性的残基。在Select From String 对话框中的Residue框中输入ARG8,点击Add选中编号为ARG8的残基(图),再点击Dismiss关闭对话框。下图(图16)可见,hsg1两个亚基上的8号ARG氨基酸残基被选中了。

图16:使用Select From String对话框选中ARG8残基

图17:hsg1两个亚基上被选中的8号ARG氨基酸残基(为了便于观察,将这两个残基按Ball and Stick

模型显示)

ADT菜单:Flexible Residues → Choose Torsions in Currently Selected Residues…将选中的残基标记为柔性残基并设置可扭转键的数量。在分子显示窗口中分别点击两个残基上CA和CB原子之间的键,使之变成非扭转的(non-rotatable,紫色),这样两个残基中的32个键共有6个是可扭转(rotatable)的(图18),点击Close关闭对话框:

图18:设置柔性残基上的可扭转键

ADT菜单:Flexible Residues → Output → Save Flexible PDBQT…保存柔性残基文件,文件名“hsg1_flex.pdbqt”;

ADT菜单:Flexible Residues → Output → Save Rigid PDBQT…保存钢性残基文件,文件名“hsg1_rigid.pdbqt”;

PMV菜单:Edit → Delete → Delete Molecule 删除hsg1分子。

6.准备大分子

ADT菜单:Grid → Macromolecule → Open…打开之前处理好并保存的“hsg1_rigid.pdbqt”,弹出对话框询问是否保留之前已经加上的电荷以代替ADT自动加上Gasteiger电荷,点击Yes,再点击OK关闭弹出的警告窗口(图19)。

图19:打开大分子(Macromolecule)文件后弹出的对话框

7.准备AutoGrid参数文件

ADT菜单:Grid → Set Map Types → Choose Ligand…选择之前准备好的Ligand分子“ind”,如果之前删除了该分子则通过ADT菜单:Grid → Set Map Types → Open Ligand…打开“ind.pdbqt”文件。

ADT菜单:Grid → Grid Box…打开Grid Options对话框,将格子的大小设置为X,Y,Z:60,60,66,格点间隔为默认值0.375 ?,这样格子中共包含249307个格点,然后将格子中心设为2.5,6.5,-7.5(x,y,z)。设置完成后点击Grid Options菜单中:File Close saving current 保存并关闭对话框(图20)。

相关文档