1.一种基于多模态构象空间采样的蛋白质结构预测方法,其特征在于,所述方法包括以下步骤:
1)输入预测蛋白质的序列信息,读取序列长度L;设置参数:种群规模N,迭代次数G,阈值ε;
2)根据目标蛋白序列信息,利用Robetta构建片段库;
3)迭代Rosetta第一、二阶段,生成具有N个个体的初始种群
4)按照如下方式计算两个个体之间的相似度:
4.1)对于每一个个体,计算每一对氨基酸之间的距离,当两个氨基酸之间的距离小于等于 时,则定义为接触,记为1,否则记为0,最终构建出一个L×L的接触矩阵,记两个个体的接触矩阵分别为M1、M2;
4.2)按照如下公式给形成的接触分配权重:其中i和j均∈{1,2,…L},表示氨基酸序号,|i-j|表示两个氨基酸在序列上的距离;
4.3)将两个个体的接触矩阵重叠,按如下公式计算两个接触矩阵形成交集的点的分数总和,记为Soverlap:
按如下公式计算两个接触矩阵形成并集的点的分数总和,记为Stotal:将两个体的相似度分数为:
5)根据步骤4)计算种群中所有个体两两之间的相似度;
6)运用N-1阶近邻方法确定模态数目:
6.1)把两个个体之间的相似度分数作为两个个体之间的距离V,令V1i为个体Piinit的一阶最短近邻距离, 为个体Piinit的二阶最短近邻距离,以此类推则有:
6.2)按如下公式分别计算j阶最短近邻距离的平方均值 和平均值
6.3)计算N-1阶方差:
6.4)根据计算出的N-1个方差值按如下公式统计方差的阶跃点数目,当公式成立时,阶跃点数目加一:
6.5)统计得出阶跃点数目为U,则模态数目为K=U+1;
7)运用K-均值聚类算法对种群进行聚类,形成K个模态;根据这K个模态将种群划分成K个子种群,记作
8)设g=1,g∈{1,2,...,G};
9)对每个模态中的每个个体依次进行交叉、变异和排挤操作,过程如下:k k
9.1)交叉操作:从目标个体Pi所在的模态中随机选择两个互不相同且与Pi 不同的个体,记作 在[1,L-2]内生成两个不同的随机整数rand1和rand2;将Pik的第rand1至rand1+2号残基的二面角值替换成 对应残基的二面角值,将Pik的第rand2至rand2+2号残基的二面角值替换成 对应残基的二面角值,形成交叉后的个体Pik′;
9.2)变异操作:在[1,L-2]内生成与rand1和rand2不同的随机整数rand3;在rand3对应的滑动窗口的片段库中随机选一个片段,替换Pik′的第rand3至rand3+2号残基,形成变异后的个体Pik″;
9.3)排挤操作:用Rosetta score3能量函数计算个体Pik″的能量值,按照步骤4)的方法计算个体Pik″与该模态中所有个体的相似度,找到与个体Pik″最相似的个体,若该个体能量值比Pik″高,则替换掉该个体;
10)g=g+1;若g≤G,转至步骤9);
11)选出每个模态中能量最低的个体作为最终输出结果。