一种基于拉氏图的群体蛋白质结构预测方法
技术领域
本发明涉及一种生物信息学、智能优化、计算机应用领域,尤其涉及的是,一种基于拉氏图的群体蛋白质结构预测方法。
背景技术
蛋白质是生命的物质基础,是生命活动的主要承担者。组成蛋白质的基本单元是氨基酸,氨基酸经脱水缩合形成肽链,肽链再通过折叠形成了具有特定功能的三维结构。蛋白质的三维结构决定了蛋白质特定的功能,了解蛋白质的结构和功能之间的关系可以帮助我们设计具有特定功能的新型蛋白质、设计药物和疫苗、了解蛋白质折叠类疾病的病理等等。目前,蛋白质的实验测定方法主要有X-射线衍射法和核磁共振法(NMR),但是两种方法所需的时间长且耗资巨大,不适合大规模的蛋白质结构预测,使用计算机模拟的蛋白质结构预测是现在最有前景的蛋白质结构预测方法。
蛋白质结构预测方法主要有同源建模法和从头预测法,同源建模法的思想是序列相似的蛋白质结构也是相似的,因此当目标蛋白与模板蛋白的具有较高的序列相似度时(>30%),使用此方法得到的精度较高。从头建模法也叫无模板建模方法,不依赖序列和结构的关系,应用最广的是片段组装方法。片段组装仅使用蛋白质骨架原子的扭转角来简化的表示蛋白质的三维结构,首先将整条序列分割成多个9-mer或者3-mer片段,片段之间允许相互重叠,对每个片段,从PSI-BLAST计算出的相似序列对应的结构中,截取出相应位置的局部结构作为候选结构,然后使用MonteCarlo算法从每个片段的候选结构集中挑选出一个进行组合,使得组合成的全长结构能量最小。
拉氏图是Ramachandran等人于1963年至1968年根据肽单位刚性球面模型计算出来的,以ψ和φ表示的角度为横纵坐标,规定ψ、φ角允许的构象区域的一个图形。拉氏图表示的是α碳的二面角,ψ表示一个肽单位中α碳左边C-N键的旋转角度,φ表示α碳右边C-C键的旋转角度,理论上这C-N键和C-C键都可以自由的转动,由于键的转动会带动其他原子一起转动,所以在实际中由于分子各个基团的空间障碍和作用力的影响,拉氏图就有了允许出现的区域和不允许出现的区域。
在蛋白质结构从头预测方法中,由于能量函数的不精确以及采样能力的不足会导致构象空间的搜索效率低、收敛速度慢、局部搜索能力弱的问题,从而影响预测精度。因此,如何提高算法的搜索效率,加强局部搜索的能力是我们需要解决的问题。
发明内容:
为了解决能量函数的不精确和构象空间搜索不充足导致的蛋白质结构预测精度低的问题,本发明提出了一种基于拉氏图的群体蛋白质结构预测方法。
本发明解决其技术问题所采用的技术方案是:
一种基于拉氏图的蛋白质结构预测方法,所述方法包括以下步骤:
1)参数设置,过程如下:
设置蛋白质群体的构象为P={x1,x2,...,xi,...xN},i∈[1,N],其中xi表示群体的
第i个个体,预测蛋白的序列长度为l,群体规模为N,交叉概率CR,变异
概率f∈{3,9}为片段插入长度,交叉变异代数G,拉氏图采样代数t,最
大迭代代数Gmax,设置能量函数;
2)构建目标蛋白的拉氏图,过程如下:
在Rosetta中,将拉氏图的横纵坐标以d为间隔,分成n×n个格子,不同氨基
酸所允许的二面角角度ψ和φ不均匀的分布到在这些格子中,计算得到拉氏
图中残基二级结构为Loop的每个格子的的二面角分布概率,对其进行归一化
处理得到{p1,p2,...,pk},k∈[1,n×n];
3)群体初始化,过程如下:
对于个体xi,对群体进行片段组装,直到所有位置的残基都被替换一次,则
完成初始化操作,初始化所有个体得到群体P′;
4)群体交叉,过程如下:
4.1)对群体P′中的N个个体两两配对,组成N/2对,并对其编号a1,a2,...,aN/2,,其中aj,j∈[1,N/2]表示第j组;
4.2)随机选择其中的一组aj,根据概率CR判断是否对这两个个体进行交叉,
若交叉,则随机选取这一组个体的Loop区域交换它,形成两个新的子代,否则,保留aj中个体不变,遍历所有组后得到交叉后的种群P″;
5)群体变异,过程如下:
对于P″中的个体xi,使用概率判断是否进行变异,若变异,则仅对包含Loop
类型残基的窗口使用片段长度为f的片段组装,当插入窗口中包含Loop和非
Loop残基时,仅对Loop类型的残基变异,非Loop类型残基不变,操作后得
到新个体xi′,遍历群体中的每一个个体,对每个个体执行变异操作,得到新
的群体P*;
6)使用能量函数对群体P′UP*打分,对个体按照分数高低升序排列,挑选出前N个能量较低的个体,组成群体P*′,操作结束设置G=G+1;
7)判断是否达到最大迭代代数:
若G≤Gmax,则返回步骤4);否则,结束循环并输出最后一代群体信息,进入步骤8);
8)拉氏图采样,过程如下:
选取P*′的一个个体xi,随机选取xi的一段Loop区域,从拉氏图中根据每个格子的概率选取一个格子,使用这个格子的二面角信息来替换该Loop区域中每个残基的二面角,得到新的构象xi′,使用能量函数对构象xi和xi′分别使用能量函数计算能量得到E(x′i)和E(xi),若E(x′i)<E(xi),则保留构象xi′,若E(x′i)>E(xi),使用玻尔兹曼概率p判断是否接收采样信息的替换,若random(0,1)<p,则保留个体xi′,否则,保留个体xi,对群体所有个体采样替换后,设置t=t+1;
9)判断是否满足终止条件,若t<Gmax,返回步骤8),否则,结束循环并输出最后一代个体。
本发明的技术构思为:首先,根据群体的初始化得到全局搜索后的构象;然后,把初始化后的群体进行交叉变异得到新的群体,增加了群体的多样性信息;其次,合并初始群体和交叉变异后的群体,使用能量函数计算种群个体的能量,挑选优秀的个体组成新的群体;最后,通过从拉氏图中采样更新个体的Loop区域,使用能量函数判断是否接收,输出最终的构象。
本发明的有益效果表现在:使用群体算法能够提高构象空间的搜索效率,交叉和变异环节的引入可以增加群体的多样性,提高了算法的收敛速度。其次,拉氏图采样的过程增强了算法的局部搜索能力,通过使用上述方法可以有效地提高蛋白质结构预测的精度。
附图说明
图1是基于拉氏图的群体蛋白质结构预测方法的流程图。
图2是基于拉氏图的群体蛋白质结构预测方法对蛋白质1ENH进行结构预测得到的构象分布图。
图3是基于拉氏图的群体蛋白质结构预测方法对蛋白质1ENH进行结构预测得到的三维结构图。
具体实施方式
下面结合附图对本发明做进一步描述。
参照图1~图3,一种基于拉氏图的群体蛋白质结构预测方法,所述方法包括以下步骤:
1)参数设置,过程如下:
设置蛋白质群体的构象为P={x1,x2,...,xi,...xN},i∈[1,N],其中xi表示群体的第i个个体,预测蛋白的序列长度为l,群体规模为N,交叉概率CR,变异概率f∈{3,9}为片段插入长度,交叉变异代数G,拉氏图采样代数t,最大迭代代数Gmax,设置能量函数;
2)构建目标蛋白的拉氏图,过程如下:
在Rosetta中,将拉氏图的横纵坐标以d为间隔,分成n×n个格子,不同氨基酸所允许的二面角角度ψ和φ不均匀的分布到在这些格子中,计算得到拉氏图中残基二级结构为Loop的每个格子的的二面角分布概率,对其进行归一化处理得到{p1,p2,...,pk},k∈[1,n×n];
3)群体初始化,过程如下:
对于个体xi,对群体进行片段组装,直到所有位置的残基都被替换一次,则完成初始化操作,初始化所有个体得到群体P′;
4)群体交叉,过程如下:
4.1)对群体P′中的N个个体两两配对,组成N/2对,并对其编号a1,a2,...,aN/2,,其中aj,j∈[1,N/2]表示第j组;
4.2)随机选择其中的一组aj,根据概率CR判断是否对这两个个体进行交叉,若交叉,则随机选取这一组个体的Loop区域交换它,形成两个新的子代,否则,保留aj中个体不变,遍历所有组后得到交叉后的种群P″;
5)群体变异,过程如下:
对于P″中的个体xi,使用概率判断是否进行变异,若变异,则仅对包含Loop类型残基的窗口使用片段长度为f的片段组装,当插入窗口中包含Loop和非Loop残基时,仅对Loop类型的残基变异,非Loop类型残基不变,操作后得到新个体xi′,遍历群体中的每一个个体,对每个个体执行变异操作,得到新的群体P*;
6)使用能量函数对群体P′UP*打分,对个体按照分数高低升序排列,挑选出前N个能量较低的个体,组成群体P*′,操作结束设置G=G+1;
7)判断是否达到最大迭代代数:
若G≤Gmax,则返回步骤4);否则,结束循环并输出最后一代群体信息,进入步骤8);
8)拉氏图采样,过程如下:
选取P*′的一个个体xi,随机选取xi的一段Loop区域,从拉氏图中根据每个格子的概率选取一个格子,使用这个格子的二面角信息来替换该Loop区域中每个残基的二面角,得到新的构象xi′,使用能量函数对构象xi和xi′分别使用能量函数计算能量得到E(x′i)和E(xi),若E(x′i)<E(xi),则保留构象xi′,若E(x′i)>E(xi),使用玻尔兹曼概率p判断是否接收采样信息的替换,若random(0,1)<p,则保留个体xi′,否则,保留个体xi,对群体所有个体采样替换后,设置t=t+1;
9)判断是否满足终止条件,若t<Gmax,返回步骤8),否则,结束循环并输出最
后一代个体。
本实施例以序列长度为54的α折叠蛋白质1ENH为实施例,一种基于拉氏图的群体蛋白质结构预测方法,所述方法包括以下步骤:
1)参数设置,过程如下:
设置蛋白质群体的构象为P={x1,x2,...,xi,...x100},i∈[1,100],其中xi表示群体的第i个个体,预测蛋白的序列长度为54,群体规模为100,交叉概率0.5,变异概率f∈{3,9}为片段插入长度,交叉变异代数G,拉氏图采样代数t,最大迭代代数200,设置能量函数为“score3”;
2)构建目标蛋白的拉氏图,过程如下:
在Rosetta中,将拉氏图的横纵坐标以10为间隔,分成36×36个格子,不同氨基酸所允许的二面角角度ψ和φ不均匀的分布到在这些格子中,计算得到拉氏图中残基二级结构为Loop的每个格子的的二面角分布概率,对其进行归一化处理得到{p1,p2,...,pk},k∈[1,36×36];
3)群体初始化,过程如下:
对于个体xi,对群体进行片段组装,直到所有位置的残基都被替换一次,则完成初始化操作,初始化所有个体得到群体P′;
4)群体交叉,过程如下:
4.1)对群体P′中的100个个体两两配对,组成50对,并对其编号a1,a2,...,aj,...,a50,j∈[1,50],其中aj表示第j组;
4.2)随机选择其中的一组aj,根据概率0.5判断是否对这两个个体进行交叉,若Random(0,1)>0.5,则随机选取这一组个体的Loop区域交换它,形成两个新的子代,否则,保留aj中个体不变,遍历所有组后得到交叉后的种群P″;
5)群体变异,过程如下:
对于P″中的个体xi,使用概率WL表示包含Loop类型残基的窗口数量,判断是否进行变异,若变异,则仅对包含Loop类型残基的窗口使用片段长度为f=3的片段组装,当插入窗口中包含Loop和非Loop残基时,仅对Loop类型的残基变异,非Loop类型残基不变,操作后得到新个体xi′,遍历群体中的每一个个体,对每个个体执行变异操作,得到新的群体P*;
6)使用能量函数“score3”对群体P′UP*打分,对个体按照分数高低升序排列,挑选出前N个能量较低的个体,组成群体P*′,操作结束设置G=G+1;
7)判断是否达到最大迭代次数:
若G≤200,则返回步骤4);否则,结束循环并输出最后一代群体信息,进入步骤8);
8)拉氏图采样,过程如下:选取P*′的一个个体xi,随机选取xi的一段Loop区域,从拉氏图中根据每个格子的概率选取一个格子,使用这个格子的二面角信息来替换该Loop区域中每个残基的二面角,得到新的构象xi′,使用能量函数对构象xi和xi′分别使用能量函数“score3”计算能量得到E(xi′)和E(xi),若E(xi′)<E(xi),则保留构象xi′,若E(xi′)>E(xi),使用玻尔兹曼概率p=exp{-(E(xi′)-E(xi))/2}判断是否接收采样信息的替换,若random(0,1)<p,则保留个体xi′,否则,保留个体xi,对群体所有个体采样替换后,设置t=t+1;
9)判断是否满足终止条件,若t<200,返回步骤8),否则,结束循环并输出最后一代个体。
以序列长度为54的α折叠蛋白质1ENH为实施例,运用以上方法得到了该蛋白质的近天然态构象,最小均方根偏差为平均均方根偏差为预测结构如图3所示。
以上说明是本发明以1ENH蛋白质为实例所得出的优化效果,并非限定本发明的实施范围,在不偏离本发明基本内容所涉及范围的前提下对其做各种变形和改进,不应排除在本发明的保护范围之外。