1.一種基于多目標(biāo)遺傳規(guī)劃算法的序貫測試優(yōu)化方法,其特征在于,包括以下步驟:
S1:根據(jù)系統(tǒng)的測試依賴矩陣隨機生成H個故障診斷樹,H的大小根據(jù)需要確定;
S2:令迭代次數(shù)w=1;
S3:分別計算種群中每個個體的測試指標(biāo)值Fhr,h=1,2,…,H,r=1,2,…,R,R表示測試指標(biāo)的數(shù)量;根據(jù)測試指標(biāo)值Fhr對種群中的個體進行分組,分組的具體步驟包括:
S3.1:初始化集合A等于當(dāng)前種群,令分組序號v=1;
S3.2:從集合A中搜索每個測試指標(biāo)值Fhr極值對應(yīng)的個體,如果測試指標(biāo)的優(yōu)化目標(biāo)是盡可能大,則選擇最大值對應(yīng)的個體,如果測試指標(biāo)的優(yōu)化目標(biāo)是盡可能小,則選擇最小值對應(yīng)的個體;
S3.3:從集合A中篩選出未被測試指標(biāo)值Fhr極值支配的個體;
S3.4:將本輪篩選中步驟S3.2和步驟S3.3得到的個體構(gòu)成第v個分組,并將該分組中的個體從集合A中刪除;
S3.5:判斷是否集合A為空,如果是,分組結(jié)束,否則進入步驟S3.6;
S3.6:令v=v+1,返回步驟S3.2;
S4:計算當(dāng)前種群中每個個體的適應(yīng)度值λh=αh-0.5βh,其中αh=0.5(V-vh+1),vh表示個體h所屬的分組序號,Gh表示個體h所屬分組中除該個體以外其他個體構(gòu)成的集合,γhh′表示擁擠距離,其計算公式如下:
其中,δshare表示預(yù)設(shè)距離閾值,h′∈Gh;
S5:根據(jù)步驟S4計算的各個個體的適應(yīng)度,選擇得到父個體集合;
S6:將父個體集合中的個體隨機分為H/2組,然后以組為單位,比較每組中的兩個個體是否存在故障集相同的結(jié)點,如果某組中的兩個個體不存在故障集相同的結(jié)點,則該組不進行交叉操作,如果某組中的兩個個體存在故障集相同的結(jié)點,首先刪除大小等于M-1或等于1的相同故障集,M表示系統(tǒng)故障集S中故障數(shù)量,在剩余的相同故障集中任意選擇一個故障集,交換該故障集結(jié)點及其子樹;
S7:對交叉后得到的個體進行變異操作,其變異方法為:對于種群中的每個個體,隨機選擇一個節(jié)點,若該節(jié)點只包含一個故障,則重新選擇,若該節(jié)點包含若干個故障且有能分割對應(yīng)故障集的可用測點,則從該節(jié)點的可用測點中隨機選擇一個與之前使用過的測點都不相同的測點,將以該節(jié)點為根節(jié)點的子樹從故障診斷樹中刪除,用新選出的測點重新生成相應(yīng)的子樹;
S8:判斷是否w<W,W表示最大迭代次數(shù),如果是,進入步驟S9,否則進入步驟S10;
S9:令w=w+1,返回步驟S3;
S10:從最終代種群中搜索每個測試指標(biāo)值Fhr極值對應(yīng)的個體,再篩選出未被測試指標(biāo)值Fhr極值支配的個體,作為本系統(tǒng)序貫測試的非支配故障診斷樹。
2.根據(jù)權(quán)利要求1所述的序貫測試優(yōu)化方法,其特征在于,所述的步驟S1中,故障診斷樹的生成方法為:
S2.1:令根節(jié)點p0為故障集,即p0=S,令層數(shù)初始值k=0;
S2.2:統(tǒng)計第k層故障集節(jié)點數(shù)量Dk;
S2.3:判斷是否Dk=0,如果不是,進入步驟S2.4,否則故障診斷樹生成結(jié)束;
S2.4:令故障集節(jié)點序號d=1;
S2.5:首先確定當(dāng)前測點節(jié)點的可用測點集φ=T-T′,T′表示當(dāng)前測點節(jié)點上層節(jié)點的測點集合;從可用測點集φ中任意選擇一個可以分割故障集Skd的測點t,Skd即表示第k層第d個故障集節(jié)點所對應(yīng)的故障集,令測點節(jié)點tkd=t,根據(jù)測點t的分割結(jié)果確定故障集Skd的子故障集Skd-left和Skd-right,如果不存在可以分割故障集Skd的測點,則不做任何操作;
S2.6:判斷是否d<Dk,如果是,進入步驟S2.7,否則進入步驟S2.8;
S2.7:令d=d+1,返回步驟S2.5;
S2.8:令k=k+1,返回步驟S2.2。
3.根據(jù)權(quán)利要求1所述的序貫測優(yōu)化方法,其特征在于,所述步驟S3中測試指標(biāo)包括測試時間和測試費用。