呂 青
(武漢船舶職業(yè)技術(shù)學(xué)院機(jī)械工程學(xué)院,湖北武漢 430050)
狀態(tài)評(píng)估技術(shù)是船舶監(jiān)控技術(shù)的共性技術(shù),它能提高船舶監(jiān)控系統(tǒng)的性能,對(duì)船舶電力推進(jìn)系統(tǒng)進(jìn)行狀態(tài)評(píng)估的研究在國(guó)際上也是一個(gè)新的概念。以人工神經(jīng)網(wǎng)絡(luò)作為推進(jìn)電機(jī)的狀態(tài)評(píng)估方法,通過(guò)仿真建立狀態(tài)評(píng)估模型,是這一課題目前的研究方向。而預(yù)測(cè)性是狀態(tài)評(píng)估系統(tǒng)的重要性質(zhì),如何建立一個(gè)精確有效、可行的預(yù)測(cè)模型,是做好狀態(tài)評(píng)估系統(tǒng)的關(guān)鍵。
BP神經(jīng)網(wǎng)絡(luò)是目前應(yīng)用最為廣泛的神經(jīng)網(wǎng)絡(luò),它一般包含輸入層、隱含層和輸出層,該算法是以多層感知器為基礎(chǔ)的,因而人們通常把多層感知器稱為BP神經(jīng)網(wǎng)絡(luò)。應(yīng)用遺傳算法優(yōu)化該神經(jīng)網(wǎng)絡(luò),可以對(duì)結(jié)構(gòu)、權(quán)值和閾值矩陣進(jìn)行優(yōu)化,遺傳算法的個(gè)體編碼就分為兩個(gè)部分,第一部分是對(duì)網(wǎng)絡(luò)結(jié)構(gòu)的優(yōu)化,第二部分是對(duì)權(quán)值、閾值矩陣的的優(yōu)化,但是因?yàn)榫W(wǎng)絡(luò)結(jié)構(gòu)的改變會(huì)使權(quán)值、閾值的數(shù)目發(fā)生變化,這樣操作以后會(huì)使得每次學(xué)習(xí)的個(gè)體長(zhǎng)度不同,個(gè)體間就沒(méi)有辦法進(jìn)行交叉,也就沒(méi)有實(shí)際的訓(xùn)練意義。鑒于以上原因,本文僅采用常規(guī)的對(duì)權(quán)值、閾值矩陣進(jìn)行優(yōu)化,而不對(duì)網(wǎng)絡(luò)結(jié)構(gòu)進(jìn)行優(yōu)化。
對(duì)BP 神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化有以下幾個(gè)步驟:首先是BP神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)的確定,即確定其各層神經(jīng)元的個(gè)數(shù),優(yōu)化權(quán)值和閾值。開(kāi)始時(shí)系統(tǒng)會(huì)預(yù)先給出初始的權(quán)值和閾值,若是單純的訓(xùn)練往往不能達(dá)到最優(yōu),所以要用其他方法對(duì)其進(jìn)行優(yōu)化。然后是BP 神經(jīng)網(wǎng)絡(luò)訓(xùn)練及預(yù)測(cè)仿真實(shí)現(xiàn),建立了網(wǎng)絡(luò)之后,就要通過(guò)輸入輸出數(shù)據(jù),對(duì)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,這和前面的優(yōu)化是同步的,訓(xùn)練結(jié)束了,就通過(guò)輸入預(yù)測(cè)樣本得到預(yù)測(cè)數(shù)據(jù),并把得到的預(yù)測(cè)數(shù)據(jù)與真實(shí)數(shù)據(jù)作比較,若在誤差范圍內(nèi),則證明模型可靠。其中,BP神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)是根據(jù)樣本輸入輸出參數(shù)個(gè)數(shù)確定的,這樣就可以確定遺傳算法優(yōu)化參數(shù)的個(gè)性,即各神經(jīng)元間彼此聯(lián)系的個(gè)數(shù),從而確定種群個(gè)體的編碼長(zhǎng)度。其算法流程如圖1所示。
圖1 遺傳算法優(yōu)化BP神經(jīng)網(wǎng)絡(luò)算法流程圖
(1)確定訓(xùn)練樣本,表1為推進(jìn)電機(jī)變壓器的某一相電壓、電流、繞組溫度的實(shí)測(cè)數(shù)據(jù)。數(shù)據(jù)是每秒采集一次,共采集到16 組數(shù)據(jù)。如表1,前10組數(shù)據(jù)作為訓(xùn)練樣本,后6組數(shù)據(jù)用來(lái)測(cè)試預(yù)測(cè)模型的精確程度。
表1 推進(jìn)變壓器的實(shí)測(cè)參數(shù)
(2)創(chuàng)建網(wǎng)絡(luò),對(duì)于BP網(wǎng)絡(luò)結(jié)構(gòu)的確定有兩點(diǎn)需要注意,首先是對(duì)于大多數(shù)問(wèn)題,三層網(wǎng)絡(luò)足以解決,另外就是隱含層神經(jīng)元的個(gè)數(shù)m 的計(jì)算:m=2×n+1,其中n為輸入層神經(jīng)元個(gè)數(shù),這是用一般求隱含神經(jīng)元數(shù)目的方法。
這里,n=3,所以m=7。BP 神經(jīng)網(wǎng)絡(luò)的結(jié)構(gòu)是3-7-1結(jié)構(gòu),即輸入層、隱含層和輸出層分別有3個(gè)、7個(gè)和1個(gè)神經(jīng)元。所以共有8×7+7×1=63個(gè)權(quán)值。7+1=8個(gè)閾值。所以遺傳算法優(yōu)化參數(shù)的個(gè)數(shù)為63+8=71個(gè)。
(3)網(wǎng)絡(luò)訓(xùn)練與測(cè)試,網(wǎng)絡(luò)訓(xùn)練是一個(gè)不斷調(diào)整權(quán)值和閾值的過(guò)程,訓(xùn)練的目的就是使得網(wǎng)絡(luò)的輸出誤差越來(lái)越小,這時(shí)會(huì)得到最佳的網(wǎng)絡(luò)權(quán)值和閾值。網(wǎng)絡(luò)訓(xùn)練完之后,對(duì)網(wǎng)絡(luò)進(jìn)行仿真測(cè)試,所使用的是sim 函數(shù),也是通過(guò)這個(gè)函數(shù)仿真出來(lái)參數(shù)的預(yù)測(cè)值。下面給出本次預(yù)測(cè)得到的預(yù)測(cè)值[467.5328 654.9285 27.8543;468.8529 648.3243 29.2439;468.4936 652.8793 31.3681]。這 與 真 實(shí) 值[467.2 893.3 28.6;468.5 896.3 28.4;468.4 898.5 29.4]之間的比較可以從圖2、圖3、圖4看出。
圖2 預(yù)測(cè)輸出與期望輸出的比較
圖3 BP網(wǎng)絡(luò)預(yù)測(cè)誤差
圖4 神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)誤差百分比
在以上各圖中,點(diǎn)1、4、7為電壓參數(shù),點(diǎn)2、5、8為電流參數(shù),點(diǎn)3、6、9 為繞組溫度參數(shù)。從上面三張圖可以看出,所預(yù)測(cè)的三個(gè)參數(shù)中電壓和繞組溫度的預(yù)測(cè)值與真實(shí)值相差不大,電流預(yù)測(cè)值與真實(shí)值差異較大。這是由于樣本數(shù)據(jù)很少,所以為了達(dá)到一定數(shù)目的訓(xùn)練樣本,不得不壓縮輸入矩陣的長(zhǎng)度,使得僅是用前三個(gè)時(shí)間點(diǎn)的數(shù)據(jù)去預(yù)測(cè)下一個(gè)時(shí)間點(diǎn)的數(shù)據(jù),而數(shù)據(jù)中的電流存在較大突變,如此少的數(shù)據(jù),網(wǎng)絡(luò)很難模擬出真實(shí)的內(nèi)部變化趨勢(shì),所以對(duì)于不穩(wěn)定的參數(shù),預(yù)測(cè)就不理想。所以在實(shí)際的應(yīng)用中應(yīng)盡可能多的采集數(shù)據(jù),使訓(xùn)練樣本增多,這樣不僅可以使輸入矩陣的長(zhǎng)度增加以更好地逼近設(shè)備真實(shí)運(yùn)行趨勢(shì),使預(yù)測(cè)精度增加,也可以通過(guò)設(shè)置訓(xùn)練輸出矩陣,增加更晚時(shí)間的輸出,使預(yù)測(cè)模型可以預(yù)測(cè)下幾個(gè)時(shí)間點(diǎn)的數(shù)據(jù)。
利用遺傳算法對(duì)BP 神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,使得優(yōu)化后的模型輸出的預(yù)測(cè)數(shù)據(jù)比較好地吻合實(shí)際數(shù)據(jù)。其優(yōu)化過(guò)程的具體步驟如下:
(1)對(duì)種群進(jìn)行初始化,一般都是使用實(shí)數(shù)編碼對(duì)個(gè)體進(jìn)行編碼,每個(gè)個(gè)體都是一組實(shí)數(shù)串,有四個(gè)組成部分,這四個(gè)部分包括兩組權(quán)值和兩組閾值,他們分別來(lái)處三層神經(jīng)網(wǎng)絡(luò)的各個(gè)層。
(2)確定適應(yīng)度函數(shù),計(jì)算公式如下:
式中F即為輸出誤差絕對(duì)值之和,K 為系數(shù)。
(3)選擇操作,選擇操作的方法很多,應(yīng)根據(jù)具體情況具體選擇。常用的有輪盤(pán)賭法和錦標(biāo)賽法,這里采用的是輪盤(pán)賭法。
(4)交叉操作,在這里使用的是實(shí)數(shù)交叉法。
(5)變異操作,變異以一定概率產(chǎn)生變異基因,在這里用隨機(jī)方法產(chǎn)生變異基因。
經(jīng)遺傳算法的BP 神經(jīng)網(wǎng)絡(luò),從第二代開(kāi)始其平均適應(yīng)度就與最佳適應(yīng)度值相接近,這說(shuō)明優(yōu)化效果是比較理想的。
這里可以得出的結(jié)論是,本文所建立的用遺傳算法優(yōu)化的BP 神經(jīng)網(wǎng)絡(luò),所建立的預(yù)測(cè)模型可以很好的預(yù)測(cè)變壓器的未來(lái)狀態(tài)參數(shù),使誤差達(dá)到很小,這說(shuō)明所建立的預(yù)測(cè)模型是真實(shí)可靠的。
(1)確定訓(xùn)練樣本,這里用到的推進(jìn)電機(jī)的訓(xùn)練樣本如表2所示。有電機(jī)的8個(gè)參數(shù)的6組數(shù)據(jù),是從電機(jī)正常模式下仿真出來(lái)的數(shù)據(jù)中抽取的比較典型的數(shù)據(jù)樣本,并非按時(shí)間序列排列。對(duì)正常模式下的6組數(shù)據(jù)進(jìn)行預(yù)測(cè),這6組數(shù)據(jù)是按照時(shí)間序列排列的,并將得到的預(yù)測(cè)數(shù)據(jù)用于后面的狀態(tài)評(píng)估,驗(yàn)證其是否為正常模式。對(duì)樣本的處理是有三組訓(xùn)練樣本集和一組測(cè)試集,并將用測(cè)試集所得到的預(yù)測(cè)數(shù)據(jù)作為后面評(píng)估的預(yù)測(cè)樣本。
表2 推進(jìn)電機(jī)的訓(xùn)練樣本
(2)創(chuàng)建網(wǎng)絡(luò),其為設(shè)計(jì)的三層BP 網(wǎng)絡(luò),各層神經(jīng)元數(shù)目分別為:3、7、1。
(3)網(wǎng)絡(luò)訓(xùn)練與預(yù)測(cè),根據(jù)以上說(shuō)明用正常模式的六組數(shù)據(jù)得到的訓(xùn)練樣本對(duì)模型進(jìn)行訓(xùn)練,用測(cè)試樣本對(duì)下一時(shí)刻的參數(shù)進(jìn)行預(yù)測(cè),并得到預(yù)測(cè) 數(shù) 據(jù)[586.0 593.0 585.0 562.0 224.0 31298.0 38.00.916]。從得到的預(yù)測(cè)數(shù)據(jù)可以看出,本次預(yù)測(cè)所得參數(shù)數(shù)據(jù)均在設(shè)備正常運(yùn)行參數(shù)范圍之內(nèi),即預(yù)測(cè)的下一時(shí)刻設(shè)備狀況也在正常模式下。
建立了基于遺傳算法的預(yù)測(cè)模型,運(yùn)用推進(jìn)變壓器的實(shí)際運(yùn)行參數(shù),對(duì)預(yù)測(cè)模型進(jìn)行仿真,驗(yàn)證了基于遺傳算法優(yōu)化的BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)方法的可行性和優(yōu)越性。
1 高海波.船舶電力推進(jìn)系統(tǒng)的建模與仿真[D].武漢:武漢理工大學(xué),2008
2 余建新.船舶電力系統(tǒng)狀態(tài)評(píng)估方法研究[J].船舶工程,2008,30(6):39—41
3 吳莉琳.變壓器狀態(tài)評(píng)估與信息管理系統(tǒng)的研究[D].北京:華北電力大學(xué),2004
4 蔣宗禮.人工神經(jīng)網(wǎng)絡(luò)導(dǎo)論[M].北京:高等教育出版社,2001
5 田景文,高美娟.人工神經(jīng)網(wǎng)絡(luò)算法研究及應(yīng)用[M].北京:北京理工大學(xué)出版社,2006
武漢船舶職業(yè)技術(shù)學(xué)院學(xué)報(bào)2014年5期