楊 賽,孔令超,董 懿,李初輝,黃天雄
(中國(guó)長(zhǎng)江電力股份有限公司,湖北 宜昌 443000)
水電站泄洪閘門是用來(lái)控制泄水通道開(kāi)閉的重要設(shè)備,具有汛期泄洪、調(diào)度控制水位、調(diào)節(jié)流量與水力發(fā)電等作用[1-3],閘門的安全穩(wěn)定運(yùn)行不僅與水資源的合理利用息息相關(guān),也承載著保障河流上下游人民生命財(cái)產(chǎn)安全的重任。因此,泄洪閘門系統(tǒng)需要始終保持高效率的運(yùn)行狀態(tài),避免重大事故的發(fā)生[4,5]。而泄洪閘門運(yùn)行過(guò)程中存在的回油箱溢油現(xiàn)象直接影響泄洪閘門開(kāi)啟和閉合的時(shí)間[6]。故而,通過(guò)油壓和液壓桿行程對(duì)閘門狀態(tài)進(jìn)行預(yù)測(cè)至關(guān)重要。
EROBRINK C D 等為了解決閘門運(yùn)行過(guò)程中存在水流動(dòng)力誘發(fā)振動(dòng)以致閘門受損甚至開(kāi)閘失敗的問(wèn)題,搭建了集成機(jī)器學(xué)習(xí)和物理模型的振動(dòng)預(yù)測(cè)混合建模系統(tǒng),可以對(duì)閘門在未來(lái)使用過(guò)程中的安全狀態(tài)進(jìn)行有效預(yù)測(cè)[7]。TRUONG T T 等將一維卷積神經(jīng)網(wǎng)絡(luò)和門控遞歸單元神經(jīng)網(wǎng)絡(luò)相結(jié)合,提出了一種有效的一維卷積門控遞歸單元神經(jīng)元網(wǎng)絡(luò),用于基于大量加速器測(cè)量的時(shí)間序列振動(dòng)信號(hào)的實(shí)時(shí)閘門損傷檢測(cè)[8]。楊軍 等利用EMD經(jīng)驗(yàn)?zāi)B(tài)分解完成振動(dòng)信號(hào)分解,并采用模糊規(guī)則進(jìn)行閘門狀態(tài)預(yù)測(cè)[9]。上述研究都采用各類算法對(duì)信號(hào)進(jìn)行預(yù)測(cè)和分析,然而上述算法過(guò)于復(fù)雜,難以實(shí)時(shí)應(yīng)用在水電站中,因此本文提出采用BP算法進(jìn)行信號(hào)預(yù)測(cè),通過(guò)PSO優(yōu)化其中權(quán)重參數(shù)。
本文基于PSO-BP的啟閉機(jī)信號(hào)預(yù)測(cè)方法,研究泄洪閘門運(yùn)行狀態(tài)分析,通過(guò)PSO-BP神經(jīng)網(wǎng)絡(luò)預(yù)測(cè)閘門開(kāi)閉狀態(tài),實(shí)現(xiàn)對(duì)泄洪閘門設(shè)備的智能運(yùn)行趨勢(shì)分析,提高泄洪閘門設(shè)備管理水平。
為了監(jiān)測(cè)預(yù)測(cè)閘門開(kāi)度是否正常,通過(guò)油缸行程、油箱油位等信息,從而監(jiān)測(cè)油缸行程、油箱油位是否異常,同時(shí)實(shí)時(shí)檢測(cè)油箱液位的變化趨勢(shì),為進(jìn)一步故障分析提供支撐。因此,本文提出PSOBP算法實(shí)現(xiàn)信號(hào)趨勢(shì)預(yù)測(cè),具體如圖1所示。將油缸行程、油箱油位等信息作為輸入,閘門開(kāi)度作為輸出。利用PSO-BP神經(jīng)網(wǎng)絡(luò)擬合之間的非線性關(guān)系,利用90%的數(shù)據(jù)進(jìn)行訓(xùn)練,10%作為測(cè)試集進(jìn)行驗(yàn)證。由于BP神經(jīng)網(wǎng)絡(luò)是一種采用誤差逆向傳播算法進(jìn)行訓(xùn)練的多層前饋神經(jīng)網(wǎng)絡(luò),其優(yōu)異的非線性逼近能力對(duì)于閘門開(kāi)度擬合至關(guān)重要,能有效抑制噪聲對(duì)擬合精度的影響。其中PSO粒子群算法用于獲取BP神經(jīng)網(wǎng)絡(luò)權(quán)重初值,使得擬合更為準(zhǔn)確。除了對(duì)閘門開(kāi)度預(yù)測(cè),從而判斷行程和油箱液位是否正常,同時(shí)也可用本文算法對(duì)油箱油位等關(guān)鍵參數(shù)進(jìn)行實(shí)時(shí)趨勢(shì)預(yù)測(cè),判斷是否出現(xiàn)異常狀態(tài)。
圖1 閘門信號(hào)預(yù)測(cè)
BP神經(jīng)網(wǎng)絡(luò)包括輸入層、隱藏層和輸出層,其模型如圖2所示。BP神經(jīng)網(wǎng)絡(luò)的信息傳遞過(guò)程可分為兩步:第一步是信號(hào)正向傳播,即信息首先由網(wǎng)絡(luò)的輸入層節(jié)點(diǎn)輸入,依次通過(guò)各個(gè)隱藏的神經(jīng)單元,最后通過(guò)輸出層節(jié)點(diǎn)輸出;第二步是誤差反向傳播,當(dāng)實(shí)際輸出與期望輸出不相符時(shí),先計(jì)算兩者之間的誤差,再?gòu)妮敵鰧娱_(kāi)始逐層反向傳播誤差信息,并在該過(guò)程中,采用梯度下降優(yōu)化算法對(duì)各單元的權(quán)值進(jìn)行調(diào)優(yōu),最終使誤差趨向一個(gè)極小值。
圖2 BP神經(jīng)網(wǎng)絡(luò)
BP神經(jīng)網(wǎng)絡(luò)的輸入層輸出及隱含層輸入、輸出可依次寫(xiě)為:
式中:上標(biāo)(1)、(2)分別代表神經(jīng)網(wǎng)絡(luò)的輸入層與隱含層;θ(2)表示隱含層的閾值;表示輸入層第j個(gè)神經(jīng)元與隱含層第i個(gè)神經(jīng)元之間的連接權(quán)值;f(x)則為隱含層的激活函數(shù),其具體內(nèi)容如下:
同時(shí),輸出層的輸入、輸出可寫(xiě)為:
上述為正向傳播過(guò)程,當(dāng)誤差不為0時(shí),則將該誤差以均方值的形式,作為修正連接權(quán)值的指標(biāo),使該誤差均方值趨向一個(gè)極小值,即反向誤差調(diào)整過(guò)程,誤差均方值可根據(jù)下式計(jì)算:
以E(k)為變量并根據(jù)負(fù)梯度規(guī)則調(diào)節(jié)連接權(quán)值同時(shí),通過(guò)引入慣性項(xiàng)來(lái)提升收斂速度和降低陷入死循環(huán)概率。此時(shí),輸出層和隱含層各神經(jīng)元的連接權(quán)值更新公式可寫(xiě)為:
式中:α為慣性項(xiàng)系數(shù);η為學(xué)習(xí)速率。
將式(6)中的偏導(dǎo)數(shù)根據(jù)鏈?zhǔn)椒▌t做如下變形計(jì)算:
經(jīng)化簡(jiǎn)、近似等計(jì)算,即可得到輸出層、隱含層各神經(jīng)元連接權(quán)值的更新公式:
為了讓BP神經(jīng)網(wǎng)絡(luò)獲得最佳初值,采用PSO算法初始化每個(gè)參數(shù),然后利用粒子群算法進(jìn)行推導(dǎo),獲得最佳初始權(quán)重參數(shù),讓BP神經(jīng)網(wǎng)絡(luò)算法不易陷入局部最優(yōu)解。具體流程是:首先對(duì)已經(jīng)構(gòu)建的神經(jīng)網(wǎng)絡(luò)參數(shù)設(shè)定范圍,將每一個(gè)參數(shù)定義為粒子的一個(gè)維度,初始化隨機(jī)粒子,然后將訓(xùn)練參數(shù)放入神經(jīng)網(wǎng)絡(luò)中進(jìn)行計(jì)算,并利用預(yù)測(cè)結(jié)果和輸出結(jié)果之間的誤差構(gòu)建目標(biāo)函數(shù),然后獲取當(dāng)前種群中的最優(yōu)粒子;根據(jù)粒子更新方程得到下一代的粒子,最后通過(guò)迭代的方式找到最優(yōu)值。假設(shè)N維搜索空間中第u個(gè)粒子的位置和速度可分別表示為xu=(xu1,xu2,…,xuN)和vu=(vu1,vu2,…,vuN),而第u個(gè)粒子在歷史中的最優(yōu)位置為Pu=(Pu1,Pu2,…,PuN),整個(gè)種群中過(guò)去最優(yōu)位置為Po=(po1,po2,…,poN)。在每一次迭代中,粒子通過(guò)對(duì)自身與整個(gè)種群的最優(yōu)粒子的跟蹤進(jìn)行更新。
粒子更新方程如下:
式中:ww為慣性權(quán)重系數(shù);c1和c2為加速因子,通常取為正數(shù);r1和r2是均勻分布在0到1之間的隨機(jī)數(shù),tw為當(dāng)前迭代次數(shù)。c1和c2分別為調(diào)節(jié)粒子自身最優(yōu)和整個(gè)種群最優(yōu)的加速因子。
以某水電站歷史數(shù)據(jù)為基礎(chǔ)驗(yàn)證實(shí)驗(yàn)的準(zhǔn)確性,采集泄洪洞數(shù)據(jù)和中孔開(kāi)啟關(guān)閉數(shù)據(jù)進(jìn)行訓(xùn)練。與泄洪洞關(guān)閉相關(guān)參數(shù)有油箱油位、弧門開(kāi)度、弧門A缸SSI行程、B缸SSI行程、A缸EHC行程、B缸EHC行程。中孔開(kāi)啟閉合相關(guān)參數(shù)為油箱油位、弧門開(kāi)度、油缸行程1、油缸行程2。
首先對(duì)泄洪洞關(guān)閉狀態(tài)進(jìn)行訓(xùn)練和預(yù)測(cè)。共1 800個(gè)數(shù)據(jù)訓(xùn)練,90%作為訓(xùn)練集,10%用于驗(yàn)證,對(duì)閘門開(kāi)度數(shù)據(jù)進(jìn)行趨勢(shì)預(yù)測(cè)。ww為慣性權(quán)重;c1和c2為1.494 45,最大迭代次數(shù)為100次,種群規(guī)模為30。對(duì)于泄洪洞參數(shù),構(gòu)建BP網(wǎng)絡(luò)為5-10-1,學(xué)習(xí)率為0.1;閘門關(guān)閉開(kāi)度曲線如圖3(a)所示,從圖中可知閘門關(guān)閉時(shí)有抖動(dòng)。不是完全線性關(guān)系。PSO實(shí)驗(yàn)結(jié)果如圖3(b)所示,由該圖可以看出隨著迭代次數(shù)的增加,適應(yīng)度值從高到低下降,達(dá)到0.4后逐漸收斂。說(shuō)明本文通過(guò)PSO算法能較好的給出初始權(quán)重。閘門訓(xùn)練結(jié)果如圖3(c)和(d)所示。真實(shí)值與預(yù)測(cè)值達(dá)到高度重合,泄洪洞關(guān)閉時(shí)閘門開(kāi)度預(yù)測(cè)模型的開(kāi)度預(yù)測(cè)誤差較小,平均值為-6.6E-4,實(shí)現(xiàn)了高精準(zhǔn)度預(yù)測(cè)。最大誤差僅出現(xiàn)在閘門關(guān)閉的開(kāi)始部分,在關(guān)閉過(guò)程中預(yù)測(cè)誤差極小。
中孔局部開(kāi)啟閉合的參數(shù)為1 800個(gè),90%作為訓(xùn)練集,10%用于驗(yàn)證,對(duì)閘門開(kāi)度數(shù)據(jù)進(jìn)行趨勢(shì)預(yù)測(cè)。ww為慣性權(quán)重;c1和c2為1.494 45,最大迭代次數(shù)為100次,種群規(guī)模為30。中孔局部開(kāi)啟閉合曲線如圖4(a)所示,PSO實(shí)驗(yàn)結(jié)果如圖4(b)所示,由該圖可以看出隨著迭代次數(shù)的增加,適應(yīng)度值從高到低下降,不斷進(jìn)行收斂,相比只有關(guān)閉情況,本次開(kāi)閉更為復(fù)雜,因此會(huì)不斷迭代收斂。閘門訓(xùn)練結(jié)果如圖4(c)和(d)所示。由該組圖可以看出真實(shí)值與預(yù)測(cè)值接近于100%的高度重合,中孔局部開(kāi)啟閉合時(shí)閘門開(kāi)度預(yù)測(cè)模型的開(kāi)度預(yù)測(cè)誤差控制在了0.27以內(nèi),實(shí)現(xiàn)了超高精準(zhǔn)度的預(yù)測(cè)。
圖4 中孔局部開(kāi)啟閉合閘門時(shí)開(kāi)度預(yù)測(cè)模型訓(xùn)練結(jié)果
本文提出基于PSO-BP的啟閉機(jī)關(guān)鍵狀態(tài)信號(hào)預(yù)測(cè)方法,用于解決閘門啟閉信號(hào)預(yù)測(cè)問(wèn)題。通過(guò)泄洪閘門運(yùn)行狀態(tài)分析確定輸入?yún)?shù)。然后通過(guò)對(duì)某實(shí)際閘門開(kāi)閉數(shù)據(jù)訓(xùn)練,構(gòu)建輸入?yún)?shù)為5個(gè),隱含層10個(gè)和輸出為1個(gè)參數(shù)的BP網(wǎng)絡(luò)。利用PSO獲取最佳初值,實(shí)現(xiàn)對(duì)泄洪閘門液壓?jiǎn)㈤]機(jī)相關(guān)參數(shù)的運(yùn)行趨勢(shì)分析,提高泄洪閘門設(shè)備管理水平。