AutoDockADT教程AutoDockTools分子对接中文.docx
《AutoDockADT教程AutoDockTools分子对接中文.docx》由会员分享,可在线阅读,更多相关《AutoDockADT教程AutoDockTools分子对接中文.docx(44页珍藏版)》请在冰豆网上搜索。
AutoDockADT教程AutoDockTools分子对接中文
分子对接
——使用AutoDock和AutoDockTools
一、分子对接简介及软件介绍
二、对接准备及对接操作
三、结果分析
一、分子对接简介及软件介绍
1.分子对接理论基础
所谓分子对接就是两个或多个分子之间通过几何匹配和能量匹配而相互识别的过程。
分子对接在酶学研究以及药物设计中具有十分重要的意义。
在酶激活剂、酶抑制剂与酶相互作用以及药物分子产生药理反应的过程中,小分子(通常意义上的Ligand)与靶酶(通常意义上的Receptor)相互互结合,首先就需要两个分子充分接近,采取合适的取向,使两者在必要的部位相互契合,发生相互作用,继而通过适当的构象调整,得到一个稳定的复合物构象。
通过分子对接确定复合物中两个分子正确的相对位置和取向,研究两个分子的构象,特别是底物构象在形成复合物过程中的变化,是确定酶激活剂、抑制剂作用机制以及药物作用机制,设计新药的基础。
分子对接计算是把配体分子放在受体活性位点的位置,然后按照几何互补、能量互补化学环境互补的原则来实时评价配体与受体相互作用的好坏,并找到两个分子之间最佳的结合模式。
分子对接最初思想起源于FisherE.的“锁和钥匙模型”(图),认为“锁”和“钥匙”的相识别的首要条件是他们在空间形状上要互相匹配。
然而,配体和受体分子之间的识别要比“锁和钥匙”模型复杂的多。
首先,配体和受体分子的构象是变化的,而不是刚性的,配体和受体在对接过程中互相适应对方,从而达到更完美的匹配。
其次,分子对接不但要满足空间形状的匹配,还要满足能量的匹配。
配体和受体之间的通过底物分子与靶酶分子能否结合以及结合的强度最终是由形成此复合物过程的结合自由能变化ΔGbind所决定的。
互补性(complementarity)和预组坦织(pre-organization)是决定分子对接过程的两个重要原则,前者决定识别过程的选择性,而后者决定识别过理的结合能力。
互补性包括空间结构的互补性和电学性质的互补性。
1958年Koshland提出了分子识别过程中的诱导契合(inducedfit)概念,指出配体与受体相互结合时,受体将采取一个能同底物达到最佳结合的构象(图1)。
而受体与配体分子在识别之前将受体中容纳配体的环境组织的越好,其溶剂化能力越低,则它们的识别效果越佳,形成的复合物也就越稳定。
图1:
“锁和钥模型(a)”和“诱导契合模型(b)”示意图
2.分子对接常用方法
分子对接方法根据不同的简化程度可以大致分为以下三类:
(1)刚性对接;
(2)半柔性对接;(3)柔性对接。
刚性对接指在对接的过程中,研究体系的构象不发生变化;半柔性对接是指在对接过程中,研究体系尤其是配体的构象允许在一定的范围内变化;而柔性对接则是指在对接过程中,研究体系的构象基本上是可以自由变化的。
当然,这只是一种简单的分类方法,而在很多分子对接程序中,实际上采取了多种处理方法。
在这些分子对接方法中,刚性对接适合考察比较大的体系,比如蛋白质和蛋白质以及蛋白质和核酸之间的相互作用,他计算较为简单,原理也相对简单,主要是考虑构象之间的契合程度。
半柔性对接适合于处理小分子和大分子之间的对接。
在对接过程中,小分子的构象一般是可以变化的,但大分子则是刚性的。
由于小分子相对较小,因此在一定程度考察柔性的基础上,还可以保持较高的计算效率,在药物设计尤其在基于分子数据库的虚拟筛选过程中,一般采用半柔性的分子对接方法。
柔性对接方法一般用于精确考察分子之间的识别情况,由于在计算过程中体系的构象是可以变化的,因此柔性对接在提高了对接准确性的同时却需要耗费较长的计算时间。
上述各种几何优化方法可以获得分子对应与初始态的优势构象,但实际上这样的构象可以有很多,一般认为自由能最小的构象存在的概率高,全局极小可能是比较重要的构象。
同时,配体和受体活性部位结合时的构象不一定是全局极小构象,而可能是某一低能构象(药效构象)。
不管是寻找分子的全局极小构象还是药效构象,均要使用构象搜索方法。
分子对接的目的是找到底物分子和受体分子的最佳结合位置。
因此,分子对接面临的最重要的问题就是如何找到最佳的结合位置以及如何评价对接分子之间的结合强度。
当然,这两个问题也是相互关联的。
如何找到最佳的结合位置就要牵涉到构象搜索方法。
常用的构象搜索方法有系统搜索法和非系统搜索法。
系统搜索法通过系统的改变每一个扭转角产生所有可能的构象,从中挑选出能量较低的构象,但计算量非常大。
所以通常使用非系统搜索法来寻找能量较低构象,常用方法有:
(1)分子动力学方法(Moleculardynamics,MD);
(2)随机搜索(Randomsearch);(3)遗传算法(Geneticalgorithm,GA);(4)距离几何算法(Distancegeometry,DG)等。
随机搜索又包含:
(1)完全随机算法;
(2)蒙特卡罗法(MonteCarlo,MC);(3)模拟退火法(Simulatedannealing,SA)。
分子对接的方法很多,下表(表1)列出了针对不同对接体系的常用对接方法:
表1:
常用的分子对接方法
对接类型
对接方法类型
对接方法
Flexible-LigandDocking
柔性配体对接
Systematic
系统方法
Conformational构象
Fragmentation片段生长
Database数据路
Random/stochastic
随机方法
MonteCarlo(MC)蒙特卡罗
Geneticalgorithm(GA)遗传算法
TabuSearch禁忌搜索
Simulationmethods
模拟方法
Moleculardynamics(MD)分子动力学
Energyminimization能量最小化
Flexible-ProteinDocking
柔性蛋白对接
Moleculardynamics(MD)分子模拟
MonteCarlo(MC)蒙特卡罗
Rotamerlibraries旋转异构体库
Protein-ensemblegrids蛋白集合栅格
Soft-receptormodeling软受体建模
3.分子对接软件
第一个分子对接程序是UCSFKuntz小组于1982年开发的DOCK,早期的版本以刚性对接为主,从4.0版开始考虑配体的柔性。
像这样的半柔性(刚性受体-柔性配体:
rigidreceptor-flexibleliganddocking)对接程序还有AutoDock、FlexX等。
同时考虑配体和受体柔性的对接程序主要有FlexiDock,它采用遗传算法来对配体和受体的结合构像进行优化,在初始条件较好的情况下,FlexiDock可以比较精确的确定配体和受体的结合状态,但计算时间较长。
下表为一些有代表性的分子对接软件(表2)及软件的被引次数对比(图2)。
表2:
有代表性的分子对接软件
名称
优化方法
评价函数
速度
Protein-protein(peptide)docking
Protein-liganddocking
DOCK
片断生长
分子力场、表面匹配得分、化学环境匹配得分
快
√
AutoDock
遗传算法
半经验自由能评价函数
一般
√
ICM-Docking
随机全局优化
半经验自由能评价函数
快
√
GOLD
遗传算法
半经验自由能评价函数
快
√
FlexX
片断生长
半经验自由能评价函数
快
√
Affinity
蒙特卡罗/分子力学/分子动力学
分子力场
慢
√
ZDock&RDock
几何匹配/分子动力学
CAPRI*/分子力场
慢
√
FlexiDock
遗传算法
分子力场
慢
√
eHiTS
系统搜索
半经验自由能评价函数
快
√
Hex
几何匹配
CAPRI*
快
√
注:
CAPRI,CriticalAssessmentofPRedictionofInteractions,相互作用预测临界评价
图2:
分子对接软件——最常用的分子对接软件被引次数统计(ISIWebofSciense,2005)
4.AutoDock以及ADT(AutoDockTools)
4.1.AutoDock
AutoDock是TheScrippsResearchInstitute的OIson科研小组使用C语言开发的分子对接软件包,目前最新的版本为4.01。
AutoDock其实是一个软件包,其中主要包含AutoGrid和AutoDock两个程序。
其中AutoGrid主要负责格点中相关能量的计算,而AutoDock则负责构象搜索及评价。
AutoDock在早期版本中使用的是模拟退火算法(SimulatedAnnealingAlgorithm)来寻找配体与受体最佳的结合位置状态,而从3.0版本开始使用一种改良的遗传算法,即拉马克遗传算法(LamarckianGeneticAlgorithm,LGA)。
测试结果表明,LGA比传统的遗传算法和模拟退火具有更高的效率。
在LGA方法中,作者把遗传算法和局部搜索(Localsearch)结合在一起,遗传算法用于全局搜索,而局部搜索用于能量优化。
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中存在的原子类型)
AtomType
H
NonH-bondingHydrogen
HD*
Donor1H-bondHydrogen
HS
DonorSSphericalHydrogen
C*
NonH-bondingAliphaticCarbon
A*
NonH-bondingAromaticCarbon
N*
NonH-bondingNitrogen
NA*
Acceptor1H-bondNitrogen
NS
AcceptorSSphericalNitrogen
OA*
Acceptor2H-bondsOxygen
OS
AcceptorSSphericalOxygen
F
NonH-bondingFluorine
Mg
NonH-bondingMagnesium
MG
NonH-bondingMagnesium
P
NonH-bondingPhosphorus
SA*
Acceptor2H-bondsSulphur
S
NonH-bondingSulphur
Cl
NonH-bondingChlorine
CL
NonH-bondingChlorine
Ca
NonH-bondingCalcium
CA
NonH-bondingCalcium
Mn
NonH-bondingManganese
MN
NonH-bondingManganese
Fe
NonH-bondingIron
FE
NonH-bondingIron
Zn
NonH-bondingZinc
ZN
NonH-bondingZinc
Br
NonH-bondingBromine
BR
NonH-bondingBromine
I
NonH-bondingIodine
静电相互作用的计算采用了一个静电势格点,在格点上储存受体分子的静电势。
当配体和受体分子对接时,某个原子和受体之间的静电相互作用能通过周围格点上静电势以及原子上的部分电荷就可以计算得到。
计算氢键相互作用时,格点的处理和范德华相互作用有点类似,每个格点上需要保存配体分子中所有氢键给体与氢键受体之间的相互作用能量,而且这些能量都是在氢键在最佳情况下的氢键能量值。
以上格点能量的计算都是由AutoDock中的AutoGrid程序计算得出的,AutoDock格点对接示意图如下图所示(图4)。
AutoDock格点对接的基本流程如下:
首先,用围绕受体活性位点的氨基酸残基形成一个范围更大的Box,然后用不同类型的原子作为探针(probe)进行扫描,计算格点能量,此部分任务由AutoGrid程序完成。
然后AutoDock程序对配体在Box范围内进行构象搜索(conformationalsearch),最后根据配体的不同构象(conformation),方向(orientation)、位置(position)及能量(energy)进行评分(scoring),最后对结果进行排序(ranking)。
图4:
AutoDock格点对接示意图
AutoDock目前的版本只能实现单个配体和受体分子之间的对接,程序本身还没有提供虚拟筛选功能(VirtualScreening),但是可以使用Linux/Unix中的Shell以及Python语言实现此功能。
同时AutoDock本省所包含的AutoDock以及AutoGrid程序是完全在命令附下操作的软件,没有图形界面,但是如果使用AutoDockTools程序,就可以在几乎完全图形化的界面中完成分子对接以及结果分析等工作,下面我们就介绍一下AutoDockTools。
4.2.AutoDockTools
AutoDockTools(以下简称ADT)是TheScrippsResearchInstitute,MolecularGraphicsLaboratory(MGL)在PythonMolecularViewer(以下简称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起成为自由软件(FreeSoft,非免费软件),只需在官方网站上完成注册(http:
//autodock.scripps.edu/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程序
名称
硬件系统及操作系统平台
i86Cygwin
Intelx86处理器,Window系统(使用Cygwin)
i86Darwin8
Intelx86处理器,Mac操作系统
i86Linux2
Intelx86处理器,Linux操作系统
ia64Linux2
Intel安腾64位处理器,Linux操作系统
ppcDarwin8
IBMPower处理器,Mac操作系统
sgi4DIRIX646
Sgi图形工作站,IRIX操作系统
sun4SunOS5
Sun服务器,Sun操作系统
绝大多出情况下,这些编译好的程序在相应的品台下均能正确运行,但如过碰上特殊情况或是针对自己的实际要求对程序进行了修改,那就需要重新编译AutoGrid以及AutoDock程序。
下面就以Linux系统为例解释编译过程:
首先需要确认Linux中已经安装了C或C++开发工具(如:
gcc,g++等)以及Make工具等,一般情况下默认安装绝大多数版本的Linux操作系统这些个工具都会安装。
之后打开控制台:
tar-xzvfautodocksuite-4.0.1-all.tar.gz#解压缩软件包
cdautodocksuite-4.0.1/src/autogrid-4.0.0#切换到autogrid-4.0.0目录
./configure#设置编译环境
make#编译autogrid,完成后此目录中会有autogrid4程序生成
cd../autodock-4.0.1#切换到autodock-4.0.1目录
./configure#设置编译环境
make#编译autodock,完成后此目录中会有autodock4程序生成
完成编译后,将“autogrid4”以及“autodock4”程序拷贝到需要的目录即可。
相比AutoDock的编译,ADT的安装就显得尤其简单:
首先,到ADT的官方网站下载网站(http:
//mgltools.scripps.edu/downloads)下载相应操作系统的版本,在这里我们下载Linux下的Standaloneinstaller的版本:
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蛋白及其抑制剂(PDBID:
1HSG)来作为例子对AutoDock的整个操作分析过程做一个详细的讲解。
以下操作过程全部在ubuntu8.04操作系统下完成,桌面系统为KDE4.0;AutoDock为在此操作系统下进行了重新编译;ADT版本为1.5.1。
1.获取Receptor(受体)及Ligand(配体)结构文件
我们可以从www.pdb.org网站上下载“1hsg.pdb”文件,运用ADT、VMD以及PyMol之类的常用分子显示及编辑软件来将“1hsg.pdb”中的蛋白质受体和小分子配体分离开来,保存成两个单另的文件以备后面使用。
同时还可以在AutoDock网站下载“tutorial4.tar.gz”(http:
//autodock.scripps.edu/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→ReadMolecule选择“hsg1.pdb“打开Receptor分子:
PMV菜单:
Select→SelectFromString打开SelectFromString对话框,在Residue框中输入HOH*,Atom框中输入*,点击Add选中所有水分子。
最后,点击Dismiss按钮关闭SelectFromString对话框(图7)。
图7:
SelectFromString对话框及被选中的H2O分子(黄色“+“表示被选中的原子,没有H,所以选中的都是O原子)
PMV菜单:
Edit→Delete→DeleteAtomSet删除已选择的水分子,点击弹出的警告窗口上的CONTINUE按钮删除。
PMV菜单:
Edit→Hydrogens→Add为Receptor分子加H(X射线衍射无法获H的坐标数据,图8)。
图8:
AddHydrogens对话窗口
PMV菜单:
File→Save→WritePDB保存修改过的receptor分子(图9)。
图9:
WirtePDB对话框。
(注:
Otherwriteoption选择SortNodes)
4.准备Ligand分子
PMV菜单:
Display→Show/HideMolecule隐藏hsg1分子(图10)。
图10:
Show/HideMolecule对话框
ADT菜单中:
Ligand→Input→Open...在弹出的对话框中将文件类型由PDBQT改为PDB,选择“ind.pdb”,打开Ligand分子(图11)。
图11:
LigandFileforAutoDock对话框
在打开Ligand分子时ADT会对该分子进行初始化,初始化包含一系列操作:
●ADT检测Ligand分子是否已经加了电荷,如果没有,则自动加上Gasteiger电荷。
需要注意的是:
如果要使Gasteiger计算正确,就必须将Ligand上的所有H加上,包括极性的以及非极性的。
如果电荷全部为0,则ADT会试图加上电荷。
同时还将检测每个残基上的总电荷是否为整数。
●ADT检测并合并