張志龍,陳 岑,史賢俊,蔣 勇
(1.海軍航空大學(xué),山東 煙臺(tái) 264001;2.中國(guó)航天科工集團(tuán)第二研究院706所,北京 100854)
隨著航空航天、武器裝備等高新技術(shù)行業(yè)的發(fā)展,各種高端設(shè)備與產(chǎn)品的功能和結(jié)構(gòu)越來(lái)越復(fù)雜,對(duì)安全運(yùn)行的要求也日益嚴(yán)苛。測(cè)試性可提高系統(tǒng)測(cè)試與診斷能力、降低全壽命周期費(fèi)用,其在裝備質(zhì)量特性中的重要性逐漸凸顯。診斷策略作為測(cè)試性設(shè)計(jì)的重要組成部分,對(duì)于提高裝備故障診斷能力和診斷效率、降低期望測(cè)試費(fèi)用有著重要的意義。
現(xiàn)有的大部分算法研究均是二值系統(tǒng),即測(cè)試結(jié)果為“0”和“1”,二值系統(tǒng)的診斷策略問題被證明是NP 完全問題。而實(shí)際上,系統(tǒng)的測(cè)試結(jié)果不只是“通過(guò)”和“不通過(guò)”,還有可能是多個(gè)測(cè)試值。有多個(gè)測(cè)試值的測(cè)試被稱為多值測(cè)試,對(duì)應(yīng)的系統(tǒng)是多值屬性系統(tǒng)(Multi-valued attribute system,MVAS)。
目前,許多專家學(xué)者對(duì)MVAS 的故障診斷策略進(jìn)行了研究??傮w上分為2類:一類是擴(kuò)展二值測(cè)試序列尋優(yōu)算法,基于測(cè)試值以及依賴矩陣的變化擴(kuò)展傳統(tǒng)算法,得到MVAS 的測(cè)試序列尋優(yōu)算法;另一類是將MVAS簡(jiǎn)化為二值系統(tǒng),隨后運(yùn)用二值測(cè)試序列算法尋找最優(yōu)測(cè)試序列,但簡(jiǎn)化的MVAS會(huì)出現(xiàn)較多的冗余測(cè)試與模糊故障,從而遺漏許多測(cè)試信息。針對(duì)現(xiàn)有的研究,發(fā)現(xiàn)這些優(yōu)化方法存在以下缺陷:
1)現(xiàn)有優(yōu)化算法的優(yōu)化目標(biāo)單一,忽略了漏檢、虛警等不確定信息,使得最終的診斷策略最優(yōu)性難以保證;
2)傳統(tǒng)的群智能算法與診斷策略尋優(yōu)過(guò)程存在差異,容易簡(jiǎn)化一些關(guān)鍵性問題,因此,尋優(yōu)過(guò)程與群智能算法實(shí)現(xiàn)過(guò)程的合理融合是該類算法應(yīng)用于MVAS診斷策略優(yōu)化的關(guān)鍵。
人工蜂群算法(Artificial Bee Colony Algorithm,簡(jiǎn)稱ABC 算法)作為群智能算法的主要代表,已成功解決了許多NP 完全問題,但卻無(wú)法直接應(yīng)用于故障診斷策略。本文提出用ABC 算法向測(cè)試序列尋優(yōu)過(guò)程擬合,改進(jìn)后的ABC算法,記為NABC算法,通過(guò)制定狀態(tài)轉(zhuǎn)移規(guī)則和方向信息矩陣更新策略,實(shí)現(xiàn)NABC 算法與MVAS 診斷策略融合,并用導(dǎo)彈舵系統(tǒng)實(shí)例驗(yàn)證了NABC算法的正確性。
本文從測(cè)試成本、故障隔離時(shí)間、測(cè)試錯(cuò)誤代價(jià)入手,建立多值測(cè)試故障診斷模型,開展診斷策略設(shè)計(jì)。診斷策略的3個(gè)優(yōu)化指標(biāo)計(jì)算公式如下。
1)平均測(cè)試成本。診斷策略優(yōu)化問題最關(guān)注的就是測(cè)試成本。一般情況下,故障狀態(tài)的檢測(cè)和隔離是一系列測(cè)試設(shè)備工作和人為參與的結(jié)果,故該指標(biāo)是開展故障診斷策略優(yōu)化最主要的評(píng)價(jià)指標(biāo)。診斷策略對(duì)應(yīng)的測(cè)試費(fèi)用越低,診斷策略就越優(yōu),平均測(cè)試成本,如式(1)所示。
2)平均故障隔離時(shí)間。系統(tǒng)一旦發(fā)生故障,維修測(cè)試人員通常希望能夠以最短的時(shí)間隔離故障,確定故障源以便于下一步維修。本文用隔離故障過(guò)程中所需的平均測(cè)試步驟來(lái)表示所需的測(cè)試時(shí)間,故障隔離所需測(cè)試時(shí)間越少,診斷策略就越優(yōu),平均故障隔離時(shí)間,如式(2)所示。
3)平均測(cè)試錯(cuò)誤代價(jià)。由于測(cè)試不可靠因素的存在,測(cè)試會(huì)發(fā)生錯(cuò)誤,使得本應(yīng)被檢測(cè)出的故障被漏檢,正常的元件反而被“誤診”,由此產(chǎn)生“誤診”和漏檢代價(jià)疊加的情況。平均測(cè)試錯(cuò)誤代價(jià),如式(3)所示。
ABC算法無(wú)法直接應(yīng)用于故障診斷策略,原因在于大部分算法都是將測(cè)試序列尋優(yōu)過(guò)程向蜂群算法轉(zhuǎn)化,導(dǎo)致其搜索過(guò)程僅能確定1個(gè)測(cè)試,而不能為每個(gè)子集尋找最優(yōu)測(cè)試,致使診斷結(jié)果差、運(yùn)行時(shí)間長(zhǎng)。
下面介紹ABC 算法向測(cè)試序列尋優(yōu)過(guò)程擬合過(guò)程。
為將ABC算法與MVAS測(cè)試序列尋優(yōu)過(guò)程融合,本文重新定義蜂群算法搜索過(guò)程。設(shè)定1 個(gè)蜂群(故障集)由個(gè)不同批次蜜蜂組成,蜂群被隨機(jī)放置某一位置(測(cè)試點(diǎn))上,然后放任不同批次的蜜蜂尋找各自的最優(yōu)食物源,尋優(yōu)過(guò)程中每個(gè)食物源的位置代表1 個(gè)測(cè)試候選解,而所擁有的蜜量代表相應(yīng)方向上的選擇概率的大小。
蜂群中的個(gè)體根據(jù)某種規(guī)則選擇尋找最優(yōu)食物源的方向(測(cè)試),按照方向上設(shè)置的分流點(diǎn)(測(cè)試值)蜂群被分割為多個(gè)子蜂群,子蜂群重復(fù)上述選擇方向、分割種群的操作,直至所有批次的蜜蜂均已找到最優(yōu)食物源。
設(shè)定子蜂群規(guī)模小于等于1,即找到最優(yōu)食物源位置,此時(shí)認(rèn)為最后選擇的測(cè)試即為最優(yōu)食物源的位置所在,而蜜蜂尋找食物源時(shí)依次選擇的測(cè)試構(gòu)成了診斷隔離故障的測(cè)試序列。
上述蜜蜂尋優(yōu)的過(guò)程如圖1 所示,圖中的、…、a表示測(cè)試值,即分流點(diǎn)。
圖1 蜜蜂尋找最優(yōu)食物源的搜索過(guò)程Fig.1 Process of bees searching for the optimal food source
為直觀介紹重新定義的人工蜂群,對(duì)比五元組在MVAS診斷策略和NABC算法中的含義,如表1所示。
表1 MVAS診斷策略和NABC算法的五元組對(duì)比Tab.1 Comparison of five-tuple for MVAS diagnostic strategy and NABC algorithm
由表1 可知,重新定義的蜂群使得MVAS 的五元組有了新的含義,在此基礎(chǔ)上,還應(yīng)設(shè)置狀態(tài)轉(zhuǎn)移規(guī)則、確定方向信息初始化及更新方式,才能實(shí)現(xiàn)所提算法在MVAS中的應(yīng)用。
傳統(tǒng)的ABC 算法通常以觀察蜂得到的食物源選擇概率來(lái)選擇最優(yōu)食物源,而本文所提算法中定義的蜜蜂批次不同,為避免不同批次蜜蜂尋優(yōu)過(guò)程混亂,故為不同批次蜜蜂設(shè)置不同的方向選擇概率,以表示測(cè)試間的關(guān)系,引入概率信息矩陣,如表2所示。
表2 方向概率信息矩陣Tab.2 Direction probability information matrix
基于上述分析,NABC算法流程圖,如圖2所示。
圖2 NABC算法流程圖Fig.2 Flow chart of NABC
NABC算法具體流程步驟,如下所示。
STEP 2:生成1 組1 維的向量,將測(cè)試集的個(gè)測(cè)試隨機(jī)賦予。
STEP 3:隨機(jī)將蜂群放置到的測(cè)試上,運(yùn)用該測(cè)試將蜂群分割為個(gè)子蜂群。
STEP 4:利用式(7)和(8)從測(cè)試集中為個(gè)子蜂群選擇測(cè)試,并在每次選擇時(shí)留下一定量的觀察蜂,記錄該測(cè)試的方向選取概率,直到所有的子蜂群規(guī)模均小于等于1,存儲(chǔ)每個(gè)蜜蜂的測(cè)試序列。
以某型導(dǎo)彈舵系統(tǒng)及其放大器模塊為例,分別開展多值測(cè)試診斷策略優(yōu)化設(shè)計(jì)工作,由于本文研究的系統(tǒng)為多值屬性系統(tǒng),測(cè)試對(duì)不同的故障程度有不同的響應(yīng),故給出舵系統(tǒng)及其放大器模塊對(duì)應(yīng)的多值相關(guān)性矩陣,見圖3和圖4。
圖3 舵系統(tǒng)的多值相關(guān)性矩陣Fig.3 Multi-valued correlation matrix of the rudder system
圖4 舵放大器電路的多值相關(guān)性矩陣Fig.4 Multi-valued correlation matrix of the rudder amplifier circuit
表3 故障模式及相關(guān)信息Tab.3 Failure mode and correlation information
表4 測(cè)試及測(cè)試信息Tab.4 Test and test information
舵系統(tǒng)及其放大器兩層次的測(cè)試成本、故障“誤診”和漏檢代價(jià),見表5。其中,測(cè)試成本與測(cè)試錯(cuò)誤代價(jià)并無(wú)量綱,是1個(gè)以某測(cè)試成本或某故障“誤診”、漏檢費(fèi)用為基準(zhǔn)的相對(duì)值。
表5 兩層次測(cè)試成本及錯(cuò)誤診斷代價(jià)Tab.5 Two-level test cost and error diagnosis cost
首先,建立兩層次數(shù)學(xué)模型,均采用式(6);其次,運(yùn)用本文所提的算法,參數(shù)設(shè)置分別為蜂群規(guī)模為60,迭代次數(shù)為20,初始方向選擇概率均為1,3種代價(jià)權(quán)重系數(shù)均設(shè)置為1/3;最后,分別針對(duì)舵系統(tǒng)層次和放大器電路層次開展診斷策略優(yōu)化設(shè)計(jì)工作。
表6給出3種算法得出的舵系統(tǒng)層次診斷策略方案對(duì)應(yīng)的評(píng)價(jià)指標(biāo),由于本文算法的平均測(cè)試成本和平均故障隔離時(shí)間明顯減少,故選擇NABC算法進(jìn)行診斷策略優(yōu)化。
表6 不同算法診斷策略指標(biāo)對(duì)比Tab.6 Comparison of diagnosis strategy indicators of different algorithms
現(xiàn)給出本文算法對(duì)應(yīng)的診斷樹,如圖5 所示??梢钥闯觯嫦到y(tǒng)診斷策略中存在故障模糊組、和,即電動(dòng)機(jī)模塊故障模式難以通過(guò)現(xiàn)有可用測(cè)試進(jìn)行隔離,需要額外添加測(cè)試項(xiàng)進(jìn)一步進(jìn)行隔離診斷分析。
圖5 舵系統(tǒng)診斷樹Fig.5 Diagnostic tree of the rudder system
同理,將蜂群起點(diǎn)測(cè)試依次選為~,得到對(duì)應(yīng)的測(cè)試代價(jià),比較得出的測(cè)試代價(jià)最小,故放在上的蜂群獲得最優(yōu)方向。然后,根據(jù)式(9)和(10)更新該方向上的觀察蜂數(shù)目,即方向概率信息矩陣,繼續(xù)循環(huán)直至達(dá)到最大迭代次數(shù)。在此給出舵系統(tǒng)放大器模塊的診斷樹,如圖6所示。
圖6 舵系統(tǒng)放大器模塊診斷樹Fig.6 Diagnostic tree of rudder system amplifier module
經(jīng)過(guò)診斷策略對(duì)比可知,NABC 算法相比于其他算法,較好地兼顧了測(cè)試成本和故障隔離時(shí)間。通過(guò)圖5 和圖6 的故障診斷樹可以看出,利用NABC 算法進(jìn)行診斷策略構(gòu)建,不僅滿足了實(shí)際工程中多值系統(tǒng)的測(cè)試診斷需求,而且在測(cè)試診斷過(guò)程中很好地兼顧了測(cè)試成本、故障隔離時(shí)間和錯(cuò)誤診斷代價(jià)。
下面進(jìn)行診斷策略優(yōu)化算法分析,用MATLAB編程仿真,并將NABC算法與傳統(tǒng)故障診斷算法——多值Rollout 算法、多值IG 算法和ABC 算法,進(jìn)行比較分析。
用以上4種算法在20、40、60維方陣中分別運(yùn)行,且方陣元素在{0,1,2,3}中隨機(jī)取值,測(cè)試費(fèi)用在1~2之間隨機(jī)取值,算法的種群數(shù)量設(shè)置為方陣階數(shù),最大迭代次數(shù)為20,算法運(yùn)行次數(shù)設(shè)為10次。本文主要分析期望測(cè)試費(fèi)用與運(yùn)行時(shí)間2 項(xiàng)指標(biāo),圖7 是維數(shù)為60的10次計(jì)算結(jié)果。
圖7 基于4種算法的多值D60×60 矩陣計(jì)算結(jié)果Fig.7 Calculation results of multi-valued matrix D60×60 based on four algorithms
由圖7 可知,NABC 算法的平均期望測(cè)試費(fèi)用和平均運(yùn)行時(shí)間均小于ABC算法,原因在于本文將蜂群算法實(shí)現(xiàn)過(guò)程簡(jiǎn)化并重新定義,以實(shí)現(xiàn)與MVAS診斷策略尋優(yōu)過(guò)程的融合,同時(shí)引入方向概率信息矩陣,為算法的狀態(tài)轉(zhuǎn)移增加指向性,改善了診斷策略的結(jié)果和算法的尋優(yōu)速度。而ABC算法則對(duì)參數(shù)要求高,循環(huán)次數(shù)較多,造成診斷結(jié)果差、運(yùn)行時(shí)間長(zhǎng)的問題。
NABC 算法的平均期望測(cè)試費(fèi)用小于多值Rollout算法,而平均運(yùn)行時(shí)間大于多值Rollout算法,這是因?yàn)镹ABC 算法的迭代優(yōu)化了蜂群尋找最優(yōu)食物源的過(guò)程,獲得了更好的測(cè)試序列,同時(shí)也因?yàn)榈螖?shù)的增多使得運(yùn)行時(shí)間增加。
與多值IG算法相比,NABC算法的平均期望測(cè)試費(fèi)用較小,這是因?yàn)槎嘀礗G 算法是1 種貪婪算法,只能實(shí)現(xiàn)一步向前尋優(yōu),而NABC算法可實(shí)現(xiàn)多步向前尋優(yōu),從而可獲得近似最優(yōu)結(jié)果,而平均運(yùn)行時(shí)間的增加也是由于迭代次數(shù)的增多造成的。
診斷策略優(yōu)化問題是典型的組合優(yōu)化問題,目前提出的啟發(fā)式搜索方法大多僅考慮測(cè)試成本,難以滿足裝備測(cè)試實(shí)際需求,不能實(shí)現(xiàn)快速有效尋優(yōu)。同時(shí),多值測(cè)試的診斷策略優(yōu)化設(shè)計(jì)問題是1 個(gè)計(jì)算爆炸問題,全局最優(yōu)算法不適用于復(fù)雜多值屬性系統(tǒng)測(cè)試診斷策略優(yōu)化。本文在傳統(tǒng)ABC算法的基礎(chǔ)上,研究了工程上應(yīng)用更多的多值屬性系統(tǒng)故障診斷策略問題,提出將蜂群算法實(shí)現(xiàn)過(guò)程簡(jiǎn)化并重新定義,以實(shí)現(xiàn)與MVAS診斷策略尋優(yōu)過(guò)程的融合,同時(shí)以觀察蜂概率選擇食物源為啟發(fā),引入方向概率信息矩陣,為算法的狀態(tài)轉(zhuǎn)移增加指向性。經(jīng)導(dǎo)彈舵系統(tǒng)實(shí)例驗(yàn)證,證明了本文提出的算法能獲得較優(yōu)的診斷策略,是1種有效的方法,具有一定的應(yīng)用價(jià)值。