1.一種基于抽象凸估計(jì)的多階段差分進(jìn)化蛋白質(zhì)結(jié)構(gòu)預(yù)測(cè)方法,其特征在于:所述蛋白質(zhì)結(jié)構(gòu)預(yù)測(cè)方法包括以下步驟:
1)選取蛋白質(zhì)力場(chǎng)模型,即能量函數(shù)E(X);
2)給定輸入序列信息;
3)初始化:種群規(guī)模NP,交叉概率CR,階段控制參數(shù)μ,支撐面斜率控制因子M;根據(jù)輸入序列產(chǎn)生初始構(gòu)象種群其中,N表示維數(shù),表示第i個(gè)構(gòu)象Ci的第N維坐標(biāo),并初始化迭代次數(shù)G=0;
4)隨機(jī)生成正整數(shù)rand1,rand2,rand3∈{1,2,3,......NP},且rand1≠rand2≠rand3≠i;再生成4個(gè)隨機(jī)整數(shù)randrange1,randrange2,randrange3,randrange4;其中randrange1≠randrange2,randrange3≠randrange4∈{1,2,…,L},L為序列長(zhǎng)度;令a=min(randrange1,randrange2),b=max(randrange1,randrange2),k∈[a,b];令c=min(randrange3,randrange4),d=max(randrange3,randrange4),p∈[c,d];其中min表示取兩個(gè)數(shù)的最小值,max表示取兩個(gè)數(shù)的最大值;
5)如果G=0,對(duì)于當(dāng)前種群中的每個(gè)構(gòu)象個(gè)體Ci,i∈{1,2,3,…,NP},令Ctarget=Ci,Ctarget表示目標(biāo)構(gòu)象個(gè)體,執(zhí)行如下操作生成測(cè)試構(gòu)象個(gè)體Ctrial:
5.1)用Crand2上位置a到位置b的片段的氨基酸k所對(duì)應(yīng)的二面角替換Crand1的相同位置所對(duì)應(yīng)的二面角;再使用Crand3上位置c到位置d的片段的氨基酸p所對(duì)應(yīng)的二面角替換Crand1上相同位置所對(duì)應(yīng)的二面角,然后將所得Crand1進(jìn)行片段組裝得到變異構(gòu)象個(gè)體Cmutant;
5.2)生成隨機(jī)數(shù)rand4,rand5,其中rand4∈(0,1),rand5∈(1,L),若rand4≤CR,則利用目標(biāo)構(gòu)象Ctarget中的rand5片段替換變異構(gòu)象Cmutant中的rand5片段,從而生成測(cè)試構(gòu)象Ctrial;若rand4>CR,則Ctrial直接等于變異構(gòu)象Cmutant;
6)如果G>0,則執(zhí)行如下階段性操作:
6.1)計(jì)算第G-1次迭代中生成的每個(gè)測(cè)試構(gòu)象個(gè)體的能量下界估計(jì)值:
6.1.1)計(jì)算當(dāng)前種群中每個(gè)構(gòu)象個(gè)體到測(cè)試構(gòu)象個(gè)體之間的距離其中表示第i個(gè)構(gòu)象Ci的第j維坐標(biāo),表示測(cè)試構(gòu)象Ctrial的第j維坐標(biāo),di表示第i個(gè)構(gòu)象Ci到測(cè)試構(gòu)象的距離;
6.1.2)根據(jù)距離對(duì)所有構(gòu)象進(jìn)行升序排列,選取前兩個(gè)構(gòu)象個(gè)體并記為并計(jì)算其下界估計(jì)支撐面:
其中,為所選構(gòu)象的能量函數(shù)值,N+1為所選構(gòu)象個(gè)體的第j為坐標(biāo),為輔助變量,M為支撐面斜率控制因子;
6.1.3)計(jì)算測(cè)試構(gòu)象Ctrial的能量下界估計(jì)值其中max表示求最大值,min表示求最小值,為測(cè)試構(gòu)象向量的第j維元素,為支撐向量lk的第j維元素;
6.2)計(jì)算所有測(cè)試構(gòu)象的平均估計(jì)誤差其中表示第i個(gè)測(cè)試構(gòu)象的能量下界估計(jì)值,表示第i個(gè)測(cè)試構(gòu)象的實(shí)際能量函數(shù)值,如果G=0,則最大平均估計(jì)誤差為UEmax;
6.3)對(duì)平均估計(jì)誤差UE進(jìn)行歸一化處理,UE的歸一化值為其中UEmin=0為最小平均估計(jì)誤差;
6.4)根據(jù)歸一化平均估計(jì)誤差值判斷算法所處的階段,并采樣不同的策略生成變異構(gòu)象Cmutant:
6.4.1)如果則用Crand1上位置a到位置b的片段的氨基酸k所對(duì)應(yīng)的二面角替換Ctarget的相同位置所對(duì)應(yīng)的二面角;再使用Crand2上位置c到位置d的片段的氨基酸所對(duì)應(yīng)的二面角替換Ctarget上相同位置所對(duì)應(yīng)的二面角,然后將所得Ctarget進(jìn)行片段組裝得到變異構(gòu)象Cmutant,其中μ為階段控制參數(shù);
6.4.2)如果則根據(jù)如下操作生成變異構(gòu)象Cmutant:
a)根據(jù)能量函數(shù)值對(duì)當(dāng)前種群中的構(gòu)象個(gè)體進(jìn)行降序排列,選取前NP/5個(gè)構(gòu)象并計(jì)算所選構(gòu)象的質(zhì)心構(gòu)象Ccentroid=(xcentroid,1,xcentroid,2,…,xcentroid,N),其中,構(gòu)象Ccentroid的第j維元素j=1,2,…,N,表示第m個(gè)選取構(gòu)象的第N維坐標(biāo),為構(gòu)象的實(shí)際能量函數(shù)值;
b)從當(dāng)前種群中隨機(jī)選取兩個(gè)不同的構(gòu)象Crand1和Crand2,其中rand1≠rand2∈[1,NP],提取構(gòu)象Crand1位置a到位置b的片段的氨基酸所對(duì)應(yīng)的二面角替換質(zhì)心構(gòu)象Ccentroid的相同位置所對(duì)應(yīng)的二面角,同時(shí)使用Crand2上位置c到位置d的片段的氨基酸所對(duì)應(yīng)的二面角替換質(zhì)心構(gòu)象Ccentroid相同位置所對(duì)應(yīng)的二面角,然后將所得Ccentroid進(jìn)行片段組裝得到變異構(gòu)象個(gè)體Cmutant;
6.4.3)如果找出當(dāng)前種群中能量最低的構(gòu)象Cbest,用Cbest上位置a到位置b的片段的氨基酸k所對(duì)應(yīng)的二面角替換Ctarget的相同位置所對(duì)應(yīng)的二面角;再使用Crand1上位置c到位置d的片段的氨基酸p所對(duì)應(yīng)的二面角替換Ctarget上相同位置所對(duì)應(yīng)的二面角,然后將所得Ctarget進(jìn)行片段組裝得到變異構(gòu)象個(gè)體Cmutant;
6.4.4)根據(jù)步驟5.2)生成測(cè)試構(gòu)象個(gè)體Ctrial;
7)分別計(jì)算目標(biāo)構(gòu)象和測(cè)試構(gòu)象的能量函數(shù)值f(Ctarget)和f(Ctrial),如果f(Ctrial)<f(Ctarget),則測(cè)試構(gòu)象個(gè)體替換目標(biāo)構(gòu)象個(gè)體;
8)判斷是否滿足終止條件,若滿足則輸出結(jié)果并退出,否則返回步驟4)。
2.如權(quán)利要求1所述的一種基于抽象凸估計(jì)的多階段差分進(jìn)化蛋白質(zhì)結(jié)構(gòu)預(yù)測(cè)方法,其特征在于:所述步驟8)中,對(duì)種群中的每一個(gè)個(gè)體都執(zhí)行完步驟4)—8)以后,迭代次數(shù)G=G+1,終止條件為迭代次數(shù)G達(dá)到最大迭代次數(shù)Gmax。