1.一种基于多模态内外交叉的蛋白质构象空间采样方法,其特征在于,所述方法包括以下步骤:
1)输入预测蛋白质的序列信息,读取序列长度L;
2)设置参数:种群规模N,迭代次数G1、G2,交叉概率Pc,变异算子F,模态个数H;
3)初始化种群:迭代Rosetta第一、二阶段,生成具有N个个体的初始种群P={P1,P2,...,PN};
4)设g1=1,g1∈{1,2,...,G1};
5)对种群进行交叉、变异和选择操作,过程如下:
5.1)变异操作:对于目标个体Pi,从种群中随机选择两个互不相同且与Pi不同的个体,记作Prand1、Prand2;按如下方式生成变异后的个体Pi′:Pi′=Pi+F(Prand1-Prand2)
5.2)交叉操作:生成两个随机数,r和jrand,r∈[0,1],jrand∈{1,2,...,L};按如下方式生成交叉后的个体Pi″:j∈{1,2,…L},表示氨基酸序号;
5.3)迭代步骤5.1)和5.2),直至遍历完所有目标个体,生成子代种群P″;
5.4)选择操作:用能量函数对种群P和P″中的个体进行打分,将所有个体按能量由低到高排序,选出能量低的前N个个体替换种群P中原有的个体;
6)g1=g1+1;若g1≤G1,转至步骤5);
7)模态生成,过程如下:
7.1)按如下公式计算种群P中两两个体之间的相似度:和 分别表示个体Pi和Pj中第k个Cα原子的三维坐标,L为结构的序列长度,RMSE越小表示两个个体越相似;
7.2)把两个个体之间的相似度分数作为两个体之间的距离,运用K-中心聚类算法将种群聚为H个类,类中心点记作Ch,h∈{1,2,...,H};
8)设g2=1,g2∈{1,2,...,G2};
9)若g2为奇数,执行步骤9.1),进行模态内交叉;否则执行步骤9.2),进行模态外交叉:
9.1)基于排挤策略的模态内交叉,过程如下:
9.1.1)对于目标个体Pi,随机选择两个互不相同且与Pi来自同一个类中的个体Prand1、Prand2,在[1,L-2]内生成两个不同的随机整数r1和r2;将Pi的第r1至r1+2号残基以及第r2至r2+2号残基的二面角值分别替换成Prand1和Prand2对应残基的二面角值,形成交叉后的个体Pi*;
9.1.2)计算个体Pi*与所有类中心点Ch的距离,找到与个体Pi*最近的类中心点对应的类,并找出该类中与Pi*最相似的个体,用Rosetta score3能量函数计算该个体和Pi*的能量值,如果Pi*的能量值更低,则替换掉该相似个体,并更新该类的中心点;
9.2)基于贪婪搜索策略的模态外交叉,过程如下:
9.2.1)对于目标个体Pi,随机选择两个互不相同且与Pi来自不同类中的个体Prand1、Prand2,在[1,L-2]内生成两个不同的随机整数r1和r2;将Pi的第r1至r1+2号残基以及第r2至r2+2号残基的二面角值分别替换成Prand1和Prand2对应残基的二面角值,形成交叉后的个体Pi**;
9.2.2)计算子代个体Pi**与所有类中心点Ch的相似度,找到与个体Pi**最近的类中心点对应的类,并找出该类中能量最高的个体替换掉,更新该类的中心点;
10)g2=g2+1;若g2≤G2,转至步骤9);
11)按照步骤7)的方式对所有个体再次进行种群划分,聚为H个类,输出每个类的类中心点作为最终预测结果。