引言
Autodock(自动对接)及其各种变体是广泛应用的对接方法,它们采用优化方法作为柔性配体对接和虚拟筛选的搜索算法。但其中许多方法存在高柔性配体的对接精度差和对接效率较低等缺点。本文基于自动对接环境的多群优化算法设计了一种高性能、高效的对接程序,即MSLDOCK。该搜索算法是随机漂移粒子群优化与一种新的多群策略的结合,还采用了改进的Solis 和 Wets局部搜索方法。由于该算法的结构,MSLDOCK也具有多线程模式。实验结果表明,MSLDOCK在自对接、交叉对接和虚拟筛选准确度以及对接有效性等很多方面优于其它两种 Autodock-based方法。此外,与三种非基于自动对接的对接程序相比,MSLDOCK可以是自对接和虚拟筛选的可靠选择,特别是对于处理高度柔性的配体的对接问题。
背景
尽管某些情况下,大多数改进的搜索算法结合自动对接软件和其他对接程序发现的构象的对接精度优于其中LGA被用作搜索算法的Autodock-default 发现的构象,但这些程序仍有高柔性配体对接精度差和相对较低的对接效率等局限性。因此,为设计一种基于自动对接式对接环境的高性能、高效的柔性配体对接搜索算法,本文提出了一种新的混合搜索算法——multi-swarm Lamarckian RDPSO (MSLRDPSO),与相应改进的MSLDOCK对接软件一起用于最新的自动对接版本(4.2.6版)。它将整个RDPSO群划分为几个同等大小的子群,并采用一种特征交换方法来确保子群之间有足够的信息交换。该算法结合了随机漂移粒子群优化(RDPSO)、一种新的与大多数多群策略、广泛使用的动态结构、更适合处理对接问题的多群策略和一种改进实现的SWLS方法。与之前提出的算法相比,MSLRDPSO的优势说明如下:
(1) 这种RDPSO算法通常比许多优化算法具有更好的搜索性能。
(2) 尤其在使用特征交换方法时,多群策略有助于保持多样性,从而提高算法的坚固性。
(3) 与LGA和LPSO等对接搜索算法相比,MSLRDPSO具有多群结构,其效率要高很多。
(4) 为适应多群的结构,MSLRDPSO中修改了SWLS方法的实现,进而提高了每个子群的多样性。
(5) 由于多群结构,MSLRDPSO的搜索过程很容易用子群数并行化,因此提出了MSLDOCK的多线程模式(MSLDOCK-M)来并行单一对接任务。
计算方法
随机漂移粒子群的优化
随机漂移粒子群优化(RDPSO)是一种常用于解决非连续、复杂和全局优化问题的启发式算法。本文用RDPSO作为混合算法的主体来解决对接问题。该算法是基于标准PSO的轨迹分析和位于外部电场中的金属导体中的自由电子模型所提出的。
多群策略和特征交换方法
MSLRDPSO用一种新型的多群策略,即将整个群分为同等大小的子群。为了确保每个子群不易过早收敛,使用一定数量的能量函数评估的特征交换方法,以确保不同子群之间有效地交换信息,来保持它们的多样性。(图1)
局部搜索方法的实现
改进了MSLRDPSO中SWLS的实施,可以适应多群结构来增强局部优化,并进一步提高搜索过程中每个子群的多样性。在所有的子群完成了一次性的RDPSO迭代过程后,该新的实现给出了对每个子群中的最佳粒子执行局部搜索方法的一定概率。本文将局部搜索概率设置为1/T,这意味着对于整个群,每一代执行SWLS方法的预期粒子数为1。
MSLRDPSO和MSLDOCK
MSLRDPSO算法结合了RDPSO与多群策略和改进的实施后的SWLS方法。在MSLRDPSO中,一代由T次迭代组成,每个迭代是由子群执行的正常RDPSO迭代,或由T次迭代组成,每次迭代是由每个子群执行的正常的RDPSO迭代和一个局部搜索过程的混合。所有子群在MSLRDPSO序列模式的一代内依次执行自己的搜索过程。MSLRDPSO的并行模式是对每个子群中的RDPSO和SWLS的搜索过程可以同时进行。并行模式主要由于每个SWLS应用程序的搜索时间不确定而无法保持子群之间的完全同步,但是在整个搜索过程中有如此小的空闲时间是可以接受的。为了使程序适应开放的MP接口,在MSLDOCK中修改了一些原始版本的自动对接文件,特别是那些与得分函数计算和局部搜索相关的文件,因为它们不是线程安全的。(图2)
图1. 特征交换操作示例
图片来源于JCIM
图2. MSLRDPSO的序列模式和并行模式的程序
(A)MSLRDPSO的序列模式。 (B)MSLRDPSO的并行模式
图片来源于JCIM
实验设置
数据集
本文实验部分包括自对接、交叉对接和虚拟筛选三部分。使用了两个数据集来评估自对接的性能。一是PDBbind coreset。PDB结合密码位的蛋白质和配体文件可以从http://www. pdbbind-cn.org/casf.asp.获得。二是被广泛使用的黄金基准数据集,它最初包含134个测试用例,可从https://www.ccdc.cam.ac.uk/supportand-resources/Downloads/上获得。
可比较的自动对接平台程序的设置
根据该多群策略的结构,MSLRDPSO算法的关键参数是T。我们的初步实验有子群MSLDOCK的MSLDOCK-s2和MSLDOCK-s6。当单次对接测试有足够的重复时,MSLDOCK-s2可能更适合找到具有更低结合能的对接构象,并比具有更多子群的MSLDOCK版本产生更多不同能级的姿势。MSLDOCK-s6的标准差最小,其在不同扭转次数方面的平均对接能量性能是最好的之一,可能适合为“快速”对接问题找到良好的对接结果。因此,在接下来的实验中,选择了MSLDOCK-s2和MSLDOCK-s6与其他对接程序进行比较。
性能指标
本文比较了在自动对接测试结束时,各种自动对接程序的结合自由能。由得分函数评估的能量包括分子间和分子内相互作用能,而结合自由能只是分子间能和扭转自由能之和,但不包括配体的内部或分子内相互作用能。通常通过计算均方根差(RMSD)来获得所产生的构象和共结晶的构象之间的相似性。本文用配体的所有重原子来计算RMSD值,且不考虑该定义的对称性。这意味着应测量蛋白质结合位点内整个配体的构象以及位置和方向的变化。本文还评价了两种RMSD:一种是得分最好的RMSD,即参考结构与得分最低或结合自由能之间的RMSD;另一种是采样最好的RMSD,即所有产生的构象中最接近晶体的构象的RMSD。这两个指标被广泛用于比较具有不同得分的对接程序产品。
图3. 由(A) MSLDOCK-s2, (B) MSLDOCK-s6, (C) Autodock-d, and (D) SODOCK获得的所有案例的实验结合自由能与表现最好的结合自由能之间的散点图
图片来源于JCIM
结果和讨论
从能量、准确性和效率等方面进行自对接结果的比较
图3的相关系数表明MSLDOCK-s2 在估计结合自由能时精确度最好,其次是 MSLDOCK-s6 and SODOCK,最后是Autodock-d。此外,图3A和3B中很多点的贡献非常相似,这验证了 MSLDOCK 中子群数略微影响本文提出的对接程序的结合亲和力估计的结论。表1和表2中测试结果都表明 MSLDOCK-s2 和MSLDOCK-s6 是成功对接测试用例的数量最好的两个对接程序。唯一的例外 Glide 获得了PDBbind coreset上最小的平均得分最好的RMSD,其次是两个MSLDOCK版本和Vina,然后是其它三个程序这验证了MSLDOCK、Vina和 Glide 的最佳对接精度是相等的。另一方面,两个MSLDOCK版本在最佳采样RMSD(表2)方面的优势比最佳得分RMSD(表1)更明显。虽然表2中的P值表明Vina可以与两个MSLDOCK版本相当,且Glide可以得到与MSLDOCK-s6相似的最佳采样RMSD结果,但两个MSLDOCK版本是几乎所有标准中获得的平均RMSD值第一和第二好的结果。为评估上述所有对接程序的对接效率,表3列出了每个对接程序所采取的生成每个对接构型的计算时间的平均值。其中MSLDOCK对接效率比Autodock-d,SODOCK和Vina表现更好,但比LeDock和Glide更差。
表1. 由所有比较算法对每个数据集和
所有测试用例获得的最佳得分RMSD的统计结果
表格来源于JCIM
表2 由所有比较算法对每个数据集和
所有测试用例获得的最佳样本RMSD的统计结果
表格来源于JCIM
表3. 每个虚拟对接程序生成每个对接构型的平均时间 (单位:秒)
表格来源于JCIM
交叉对接精度的比较
图4显示了由四个基于自动对接的程序获得的两类的交叉对接结果的分布图。其中,矩阵行和列对应于给定的配体或受体,并通过PDB代码识别,对角线项表示自对接。对接结果分为采样故障(红色)、得分故障(绿色)和对接成功(蓝色)。表4记录了每个类中的测试用例的数量。这两类交叉对接中MSLDOCK-s2获得的结果最好,其次是MSLDOCK-s6和SODOCK,Autodock-d最差。这意味着PSO算法可能比遗传算法更适合于处理交叉对接问题,且该算法可以比基于规范PSO算法的SODOCK获得更好的交叉对接性能。MAPK14的两个MSLDOCK版本优于Autodock-d和SODOCK,这比CDK2更明显。这表明,所提出的对接程序不仅可以对相对容易的交叉对接系列(CDK2)进行对接,还可以对硬对接系列(MAPK14)获得良好的效果。
图4. 由MSLDOCK-s2、MSLDOCK-s6、Autodock-d和SODOCK获得的(A)CDK2家族和(B)MAPK14家族的交叉对接结果
图片来源于JCIM
表4. 基于自动对接的程序交叉对接精度的结果
表格来源于JCIM
虚拟筛选精度和筛选速度的比较
图5中所有比较的对接程序的ROC曲线表明,基于自动对接的对接程序只生成非常类似的排名列表,kif11程序的SODOCK的列表除外。表5中相应的AUC-ROC值一方面验证了这两个MSLDOCK版本在平均AUC-ROC值方面的性能是否优于Autodock-d和SODOCK,另一方面,Vina在cp3a4和kf11上的性能略优于基于自动对接的程序,但在ampc和cxcr4上的性能稍微差一些。根据几乎所有目标预期上Cxcr4中的ROC曲线,Glide比基于自动对接的程序要好。然而,表5中三个非基于自动对接的程序的平均AUC-ROC值表明,这两个MSLDOCK版本比Vina和LeDock好,MSLDOCK6略好于Glide,而MSLDOCK-s2比它差一点。表5和表6中MSLDOCK-s6获得的AUC-ROC和EF值所有平均标准有最好的结果,其次是MSLDOCK-s2,Autodock-d,最后是SODOCK。这表明,所提出的多群策略和RDPSO中的随机漂移机制可以真正提高优化算法的虚拟筛选性能。此外,MSLDOCK-s6在虚拟筛选精度上比MSLDOCK-s2更好,这表明具有较多子群的MSLDOCK由于其较高的稳固性,更适合于较少重复的对接。表7中的平均结果显示,MSLDOCK-s2和MSLDOCK-s6分别在所有单线程对接程序中,仅比Glide和LeDock慢,但比其他程序好得多,类似于自身对接速度比较的结果。由于高效率和优越的筛选精度,MSLDOCK程序成为虚拟筛选的最佳选择之一。
图5. 使用所有经过比较的对接程序进行虚拟筛选四个靶标的ROC曲线。(A) 圆形混凝土的ROC曲线。(B) 循环4的ROC曲线。(C) cp3a4的ROC曲线。(D) kf11的ROC曲线
图片来源于JCIM
表5. 使用所有比较程序评估
DUD-E数据集虚拟筛选靶标的EAUC-ROC值
表格来源于JCIM
表6. 使用所有比较程序评估DUD-E数据集虚拟筛选靶标的EF值
表格来源于JCIM
表7. 使用所有比较程序的DUD-D数据集中
每个配体对接的平均筛选时间(单位:秒)
表格来源于JCIM
结论和展望
综上所述,本文通过使用 MSLDOCK程序解决了大多数柔性配体对接问题并了获得良好的对接结果。MSLDOCK的缺点在于无法通过获得一个足够好的RMSD来获得得分最好的构象,具体表现如下:
(1) 对于自对接一个具有不太灵活配体的单个测试用例,在得分最好的RMSD方面,Vina 和 Glide 比MSLDOCK表现更好。
(2) MSLDOCK-s2 由于子群更少和足够的对接重复,更适合对接一个需要多次重复的单次测试用例,找到得分最好的RMSD的构象,特别是对于高度灵活的配体对接问题。在自对接和交叉对接精度方面都优于MSLDOCK-s6。
(3) MSLDOCK-s6 由于具有相对较多的子群的高稳固性,适合对接一个需要少量重复的单个测试用例,例如虚拟筛选。
详细评估子群数的变化如何影响对接结果或充分利用多线程模式快速评估子群数的设置,MSLDOCK可以为每个特定的对接问题自动找到合适的选择。因此将进一步了解MSLDOCK在配体的原子数方面的对接性能,配体的原子数在某种程度上会真正影响对接的精度和效率。此外,已将集成MSLRDPSO与其他得分函数和/或其他对接程序,以检查所提出的搜索算法的潜力。
代码下载
MSLDOCK: https://github.com/lcmeteor/MSLDOCK
参考文献
Chao Li, Jun Sun, and Vasile Palade, Multi-Swarm Optimization for Flexible Ligand Docking and Virtual Screening, J. Chem. Inf. Model., 2021, 61, 1500-1515. DOI: 10.1021/acs.jcim.0c01358.