程力旻 徐 巍 張文俊
(武漢第二船舶設計研究所 武漢 430205)
可靠性指標分配是指將系統(tǒng)的可靠性指標要求合理地分配到系統(tǒng)中的各個設備。多個設備以串聯(lián)、并聯(lián)、旁聯(lián)等方式相互連接,形成系統(tǒng)的整體功能[1~5]。在系統(tǒng)任務可靠性分配中,以系統(tǒng)的可靠性指標作為輸入,將系統(tǒng)可靠性指標分解到設備,輸出各設備可靠性指標分配結(jié)果。合理的可靠性指標分配結(jié)果,可以在保證系統(tǒng)可靠性指標實現(xiàn)的情況下,有效降低系統(tǒng)各設備總的設計、制造成本,提高系統(tǒng)安全性,減少維修工作量[6]。
現(xiàn)有的可靠性指標分配方法有:等分配法、比例組合分配法、評分分配法、AGREE分配法等[7~9]。其中,等分配法對系統(tǒng)各組成設備的可靠性指標實行平均分配,分配結(jié)果的合理性差。比例組合分配法在新設計的系統(tǒng)與已有系統(tǒng)結(jié)構(gòu)相似的情況下,利用已有系統(tǒng)各設備的可靠性數(shù)據(jù),進行新系統(tǒng)各設備可靠性指標分配。在可靠性數(shù)據(jù)積累較少的情況下,無法使用。評分分配法是由業(yè)內(nèi)專家對系統(tǒng)各組成設備的技術水平、復雜程度、環(huán)境條件、工作時間等因素進行逐項評分,根據(jù)評分結(jié)果進行可靠性指標的分配。該方法受專家經(jīng)驗影響較大,如專家選擇不合理,分配結(jié)果將偏差較大。此外,評分分配法的分配算法以串聯(lián)模型為基礎,僅適用于基本可靠性分配和串聯(lián)系統(tǒng)的任務可靠性分配,無法用于非串聯(lián)系統(tǒng)的任務可靠性分配。AGREE分配法是綜合考慮系統(tǒng)各組成設備的工作時間、重要程度、復雜程度等因素的分配方法。與評分分配法類似,該方法僅適用于基本可靠性分配和串聯(lián)系統(tǒng)的任務可靠性分配,無法用于非串聯(lián)系統(tǒng)的任務可靠性分配。
為了克服現(xiàn)有可靠性分配方法的不足,本文提供一種基于免疫遺傳優(yōu)化的可靠性分配方法,以全壽期成本最低為分配目標,分配過程中將免疫算法與遺傳算法相結(jié)合,適用于復雜系統(tǒng)的任務可靠性分配。
遺傳算法是一種將智能算法與生物遺傳進化機理相結(jié)合的啟發(fā)式算法[10~13]。其通過父代抗體的交叉產(chǎn)生子代抗體,在交叉完成后進行變異操作,以在種群中引入沒有出現(xiàn)過的新抗體,并可能恢復種群中丟失的優(yōu)良基因。但是,遺傳算法作為一種尋優(yōu)算法,也存在著一定的局限性。其中較為明顯的不足就是所謂的“早熟”現(xiàn)象,隨著算法的運行,適應度較大個體的數(shù)量在種群中會逐漸增加,使得整個群體失去多樣性,影響算法的尋優(yōu)效果。本方法將免疫過程引入遺傳算法,使得加入了免疫算子的改進型遺傳算法在尋優(yōu)的過程中既不會陷入“早熟”,也能夠保持種群的多樣性。這種加入了免疫算子的改進型遺傳算法稱之為免疫遺傳算法[12,14]。
本文在免疫遺傳算法的基礎上提出了一種基于免疫遺傳優(yōu)化的可靠性分配方法,該方法包括以下步驟。
2.2.1 系統(tǒng)多工況可靠性建模
系統(tǒng)通常具有多種任務工況,在不同的工況下,設備的運行時間與備用關系各不相同。分別建立系統(tǒng)在各工況下的任務可靠性模型,各任務工況依一定的概率執(zhí)行,系統(tǒng)總的任務可靠性模型為各工況任務可靠性模型構(gòu)成的和聯(lián)模型,系統(tǒng)可靠性指標與設備可靠性指標之間是復雜的非線性關系。因此,需要確定系統(tǒng)典型任務剖面,分析各設備在系統(tǒng)任務剖面中的運行工況、運行時間及備用關系,建立系統(tǒng)的可靠性模型。
在進行分配前先對系統(tǒng)各組成設備進行篩選,排除選型的設備和可靠性指標已確定的設備,再對系統(tǒng)中剩余設備進行可靠性指標尋優(yōu)分配。根據(jù)剩余設備的運行工況,建立附帶約束條件的系統(tǒng)多工況可靠性模型,如式(1):
其中,Rs為系統(tǒng)任務可靠度,R1,R2,… ,RN為設備任務可靠度,N為設備數(shù)量,N為正整數(shù),且N≥2,F(xiàn)(R1,R2,… ,RN)為表示系統(tǒng)任務可靠度與設備任務可靠度之間關系的非線性函數(shù)。
考慮到系統(tǒng)可靠性的實際要求,該模型的約束條件為
其中,RSmin為系統(tǒng)可靠度最低要求,Rnmin為第n個設備的可靠度的初始值。
2.2.2 構(gòu)建目標函數(shù)
首先,根據(jù)可靠性指標提高的難度和指標提高帶來的效益,構(gòu)建了全壽期成本函數(shù),如式(3),該函數(shù)以可靠性指標提高難度、設備重要程度、設備維修難度作為自變量。指標提高難度越大,全壽期成本越高;設備重要程度越高,全壽期成本越低;設備維修難度越大,全壽期成本越低。
其中,Cn為第n個設備的全壽期成本,n為正整數(shù),且1≤n≤N,qn為第n個設備的可靠度指標提高難度,en為第n個設備的重要程度,sn為第n個設備的維修難度,Rn為第n個設備的可靠度的當前值。其中,qn、en、sn的取值范圍如下:qn取正數(shù),設備可靠度指標提高難度越大,qn取值越大,全壽期成本也就越高;qn取值越小,說明提高設備可靠度指標的難度越小,全壽期成本也就越低。en取正數(shù),設備重要程度越高、故障危害越大,en取值越大,一般取1~10之間。sn取正數(shù),設備維修難度越大,sn取值越大,一般取1~10之間。
全壽期成本函數(shù)是設備可靠性指標的非線性單增函數(shù),設備的可靠度指標趨于最大可靠度時,全壽期成本趨于無窮。可靠度指標低時提高可靠度所需的全壽期成本比可靠度指標高時要少。
其次,在如式(2)所示的系統(tǒng)多工況可靠性模型的約束下,可靠性指標分配的目標是系統(tǒng)的全壽期成本最小,以此構(gòu)建可靠性分配的目標函數(shù),如式(4)所示。
其中,Cs為系統(tǒng)總?cè)珘燮诔杀?,取值越小越好?/p>
2.2.3 生成初始種群,確定適應度f(xi)的函數(shù)
對于本文研究的內(nèi)容,可將各設備可靠性指標的一組分配值定義為一個抗體,對應系統(tǒng)可靠性指標分配的一個分配結(jié)果,將多組分配值構(gòu)成的集合定義為種群。
首先,可以先對系統(tǒng)中各設備的可靠性指標進行編碼,得到由多個數(shù)值構(gòu)成的數(shù)組,可靠性指標的一組分配結(jié)果對應一個數(shù)組,每個設備的可靠性指標對應數(shù)組中的一個數(shù)值,該數(shù)值的取值范圍是(0,1)。然后,根據(jù)每個設備可靠度取值的上下限,隨機生成若干抗體,得到一個初始種群。在目標函數(shù)的解空間中隨機產(chǎn)生若干抗體,可以保證算法的全局搜索能力。
其次,考慮到可靠性分配的目的是在保證系統(tǒng)可靠度基礎上使系統(tǒng)總?cè)珘燮诔杀綜S最小,因此,以抗體對應的系統(tǒng)總?cè)珘燮诔杀綜S最小為目標,設置適應度f(xi)的函數(shù)為
其中:xi為種群中第 i個抗體,i為正整數(shù),CSi為 xi對應的系統(tǒng)總?cè)珘燮诔杀尽?/p>
2.2.4 抗體篩選
抗體篩選是為了剔除初始種群中不滿足可靠性指標要求的約束條件的抗體。首先,定義抗體相似度,包括結(jié)構(gòu)相似和品質(zhì)相似。其定義如下:隨機選取兩個不同的抗體:xi、xj,i、j均為正整數(shù),且i≠j,定義兩個抗體結(jié)構(gòu)相似性的指標和品質(zhì)相似性的指標,如式(6)所示:
其中,S(xi,xj)為抗體xi與xj的結(jié)構(gòu)相似性指標;Q(xi,xj)為抗體xi與xj的品質(zhì)相似性指標。M為正整數(shù),表示抗體分量的個數(shù),f(xi)為xi的適應度,f(xj)為xj的適應度,k為正整數(shù),且1 ≤ k≤ M,xik為xi的第k個分量,xjk為xj的第k個分量。
由式(6)可以看出,抗體的結(jié)構(gòu)相似是指它的M個分量的數(shù)值接近;抗體的品質(zhì)是指它的適應度,適應度越大的抗體其品質(zhì)越好。
如果滿足式(7),則稱xi與xj相似。
其中,η為抗體的結(jié)構(gòu)相似度閾值,t為抗體的品質(zhì)相似度閾值,η、t均為正數(shù),且η、t均趨近于0。
其次,定義抗體濃度:在初始種群中,抗體xi的濃度為抗體xi本身及相似抗體的個數(shù)之和,抗體xi的濃度記為Li。根據(jù)抗體相似度的定義,可得到抗體濃度。
之后,基于抗體適應度、抗體濃度,計算抗體選擇概率,如式(8)所示。
其中,ps(xi)為抗體選擇概率,α為(0,1)之間的可調(diào)參數(shù);Li為抗體xi的濃度,Lmax為當前種群中的最大抗體濃度,fmax為當前種群中抗體的最大適應度。
從上式可以看出:當抗體濃度低時,適應度高的抗體被選中的概率就大;當抗體濃度高時,適應度高的抗體被選中的概率就小。這樣既保留了優(yōu)秀抗體,又減少了相似抗體,可確保抗體種群的多樣性。
最后,按照抗體選擇概率,對當前種群中的所有抗體進行篩選。
2.2.5 自適應交叉與變異
首先,在篩選出的抗體中,隨機選擇父代抗體進行交叉,父代抗體以線性交叉的方式產(chǎn)生子代抗體。線性交叉的方式如式(9)所示:
其中:x1和x2為兩個不同的父代抗體,為交叉后的子代抗體,r為區(qū)間[0,1]內(nèi)的隨機數(shù)。
其次,進行變異操作。變異能為種群引入新抗體,并可能恢復種群丟失的優(yōu)良基因。根據(jù)變異概率Pm,隨機選擇父代抗體進行變異,Pm為正數(shù),且取值接近于0,例如,Pm可以為0.01≤Pm≤0.1;基于變異父代抗體的適應度確定變異子代抗體的變異幅度,得到變異子代抗體。變異子代抗體記為,如式(10)所示:
其中,xv為變異父代抗體,f(xv)為xv的適應度;a為比較系數(shù),-1≤a≤1。
2.2.6 疫苗接種與免疫檢測
從交叉變異后的種群中選擇適應性和一致性最好的抗體分量作為疫苗,提取疫苗。具體操作方式如下:
首先,計算種群中各抗體的適應度f(xi),從初始種群中選取適應度最大的三個不同抗體xb、xc、xd,b、c、d均為正整數(shù),且b、c、d互不相等,xb的適應度為f(xb),xc的適應度為f(xc),xd的適應度為f(xd),且f(xb)≥f(xc)≥f(xd),取滿足下式的抗體分量組成的序列為所提取的疫苗:
xbk、xck、xdk分別為抗體 xb、xc、xd的第 k個分量,M 為正整數(shù),表示抗體分向量的個數(shù),且1≤k≤M;ε為疫苗提取的界限值,0.01≤ε≤0.1,ε為正數(shù)。
其次,計算接種概率,按照接種概率,對當前種群中所有抗體進行疫苗接種。接種概率的計算過程如式(12)所示:其中,pi(xi)為抗體xi的接種概率,f(xi)為抗體xi的適應度;fmax為當代種群中抗體適應度的最大值。
之后,對完成了疫苗接種的抗體進行免疫檢測,若接種疫苗后抗體的適應度低于父代,則用父代種群中相應的抗體替代該當代抗體;若其適應度高于父代,則該抗體將進入新一代種群。
2.2.7 進行新一代種群收斂性判斷
完成疫苗接種與免疫檢測過程后,對新一代種群進行收斂性判斷。計算新一代種群的最大適應度f′max,將f′max與前代種群的最大適應度fmax進行比較,如滿足f′max-fmax≤ ξ,ξ為收斂閾值,ξ>0且無限趨近于0,則判定為收斂,表明新一代種群的最大適應度相對前一代增長非常微小,則將新一代種群中的最大適應度抗體作為可靠性分配的最終結(jié)果;否則判定為不收斂,表明還存在較大的優(yōu)化空間,則繼續(xù)進行下一輪抗體篩選、交叉、變異、疫苗接種的迭代。
2.2.8 輸出分配結(jié)果
將新一代種群中最大適應度的抗體作為系統(tǒng)可靠性指標分配的結(jié)果,輸出該分配結(jié)果。
基于2.2節(jié)所述,可總結(jié)出基于免疫遺傳優(yōu)化的可靠性分配方法的流程圖如圖1所示。與現(xiàn)有技術相比,本方法的優(yōu)點如下:1)本方法以全壽期成本最低為目標,將各設備可靠性指標分配值的一組分配值定義為抗體,將多組分配值構(gòu)成的集合定義為種群。在遺傳算法的基礎上,加入免疫算法,將免疫算法與遺傳算法相結(jié)合,從交叉變異后的種群中選擇適應性和一致性最好的抗體分量作為疫苗,提取疫苗。在生成下一代種群的過程中,對抗體進行疫苗接種,并對接種疫苗后的抗體進行免疫檢測,接種后適應度提高的抗體將進入下一代種群,適應度降低的抗體將不進入下一代。本方法能夠保證種群中的優(yōu)良基因得以延續(xù),不會隨著遺傳操作而不斷喪失,適用于復雜系統(tǒng)的任務可靠性分配。2)本將免疫算法與遺傳算法相結(jié)合,綜合考察多個設備可靠性指標分配方案的參數(shù),找出其中系統(tǒng)全壽期成本最低的一個方案,能夠有效提高尋優(yōu)效率。3)本方法提出一種新的抗體相似度定義,它反映了抗體相似性的兩個重要特征,即結(jié)構(gòu)相似和品質(zhì)相似;與基于歐氏距離和信息熵的抗體相似度定義相比,這種定義方法對兩個抗體相似度的描述更為全面、直觀,并且計算量更小。
圖1 基于免疫遺傳優(yōu)化的可靠性分配方法的流程圖
在進行實例研究時,得到系統(tǒng)可靠性指標的一組分配結(jié)果(抗體)如表1所示。
表1 一組可靠度分配值示例
種群在進化過程中,維持種群多樣性可降低早熟現(xiàn)象的發(fā)生概率,所以必須減少種群中的相似抗體,使抗體盡可能散布到整個解空間。本方法實例中利用濃度因子來調(diào)整抗體的選擇概率,復制種群中高適應度的抗體,并抑制種群中相似的抗體。當抗體濃度高時,高適應度抗體被選擇的概率就小;當抗體濃度低時,高適應度抗體被選擇的概率就大。本方法在基于濃度的抗體選擇過程中,既保留了優(yōu)秀抗體,又可減少相似抗體,確保了抗體的多樣性。
考慮到固定的交叉概率和變異概率不能適應算法尋優(yōu)的不同情況,本方法實例研究中采用自適應交叉和變異方式,根據(jù)種群的實際情況,動態(tài)自適應地調(diào)整交叉概率和變異概率的大小。
在自適應交叉和變異過程完成后,從交叉變異后的種群中提取適應性和一致性最好的抗體分量作為疫苗,在生成下一代種群的過程中,對抗體進行疫苗接種,以表1中的抗體為例,進行疫苗接種,結(jié)果如表2所示。
表2 疫苗接種結(jié)果示例
完成疫苗接種與檢測過程后,對新一代種群進行收斂性判斷,如果新一代種群的最大適應度相對前一代增長非常微小,則將新一代種群中的最大適應度抗體作為可靠性分配的最終結(jié)果;如新一代種群的最大適應度提高較多,表明還存在較大的優(yōu)化空間,則繼續(xù)進行下一輪抗體篩選、交叉、變異、疫苗接種的迭代。
本文針對系統(tǒng)可靠性指標分配問題,搭建了系統(tǒng)可靠性模型,介紹了免疫遺傳算法的特點及作用,并在此基礎上提出了一種基于免疫遺傳優(yōu)化的可靠性分配方法。最后介紹了具體的實施方式,說明了本文提出的基于免疫遺傳優(yōu)化的可靠性分配方法適用于復雜系統(tǒng)的任務可靠性分配。