路 寬,王文寬,孟祥榮,李 軍,楊子江,張森燁
(1.國網山東省電力公司電力科學研究院,山東 濟南 250003;2.山東科技大學電氣與自動化工程學院,山東 青島 266590;3.國網山東省電力公司煙臺供電公司,山東 煙臺 264000)
火電機組在運行的過程中形成了海量高維數據,集中儲存在廠級監控信息系統(Supervisory Information System,SIS)和分布式控制系統(Distributed Control System,DCS)中,這為汽輪機閥門流量特性曲線辨識工作提供了豐富的基礎數據。汽輪機閥門流量特性的準確辨識以及調節參數的優化能夠有效提升火電機組一次調頻品質和自動發電控 制(Automatic Generation Control,AGC)協調水平[1]。傳統上,汽輪機閥門流量特性是通過現場試驗人員對目標機組進行解列后手動測試計算得到的。同時,不同工況下的閥門流量特性受主蒸汽壓力、主蒸汽流量、機組各閥后壓力等多個因素的影響。因此,在大數據背景下,反映這些因素的測點數據質量會反過來影響閥門指令與閥門流量之間的關系[2-5]。
黃彥浩等[6]提供了在電力系統仿真領域開發大數據技術的基本框架。盛鍇等[7]為了實現汽輪機閥門流量特性問題的全過程管控,基于大數據運行環境開發了一套汽輪機閥門流量特性在線監測優化系統,該系統可實現對閥門流量特性的在線監測和閥門流量函數的滾動優化。朱彥等[8]針對火電機組的熱力系統存在復雜、高維、非線性、時變性、參數冗余性等導致的傳統建模方法無法準確反映機組運行特性問題,采用聚類分析、多項式擬合的方法對168 萬組運行數據進行了調門特性辨識,并基于流量特性線性化考慮,優化了汽輪機數字電液調節系統(Digital Electronic Hydraulic Control,DEH)閥門管理函數,提升了機組變負荷能力和一次調頻能力。李存文等[9]基于多種經典數據挖掘算法的對比分析,合理改進了K-medoids 算法,提出了一種用于汽輪機流量特性分析的多元線性回歸方法,有效解決了機組出現的線性度不合理問題。尚興宇等[10-11]利用流量校正的方法對閥門開度進行優化,并使用反向傳播(Back Propagation,BP)神經網絡對優化后的閥門流量特性進行了模擬還原。鄒包產等[12]在流量特性數據處理過程中應用了神經網絡,并使用最小二乘法確定了最佳的汽輪機汽門流量曲線調節量;試驗結果表明,校正后的汽輪機調閥流量曲線具有良好的線性度,從而可提高機組網源協調能力。王志杰等[13]通過對機組的歷史運行數據進行篩選,提出了一種基于最小二乘支持向量機(Least Squares Support Vector Machines,LSSVM)的汽輪機閥門流量特性辨識方法。
雖然上述研究均給出了閥門流量曲線的辨識方法,但主要辨識模型往往采用了非線性函數。在實際優化閥門函數的過程中,給定流量下得到最優閥門指令值的過程實際是一個求解辨識模型反函數的過程。如果辨識的非線性函數不存在反函數,那么就無法實現閥門函數的精準修正。利用前饋神經網絡(Forward Neural Network,FNN)實現了對閥門流量特性數據的分段線性辨識,同時使用了貝葉斯優化的方法得到了最優分段數,這就保證了閥門流量特性的辨識函數具有反函數,從而在給定閥門流量時能夠提供唯一的閥門指令解。最后,所提方法在山東省某火電機組上進行了應用與辨識,得到了驗證。
閥門流量的優化主要包括閥門特性辨識和閥門調節參數優化兩個部分。
在辨識過程中,火電機組汽輪機蒸汽流量獲取通常有直接測量、給水流量法、凝結水流量法以及間接計算等方法[8]。文獻[14]中基于弗留格爾公式演變的流量計算公式被主要應用在基于大數據場景下的閥門流量特性識別中,如式(1)所示。

式中:Q為等效實際流量,%;pi為調節級壓力,MPa;p0為主蒸汽壓力,MPa;pie為額定工況下的調節級壓力;p0e為額定工況下主蒸汽壓力。辨識的結果則形成了閥門總指令μ與實際進汽流量Q之間的閥門流量曲線函數:

在閥門調節參數優化過程中,令PCV=f(μ)表示原始閥門管理函數,PCV為單個閥門閥位指令[7],Q*=g*(μ)表示表示理想閥門流量特性曲線,那么,優化后的閥門管理函數可以表示為:

顯然式(3)的有解需要閥門流量曲線函數g存在反函數。
由于流量曲線擬合是后續閥門優化工作的先決條件,而機器學習中非線性擬合得到的輸入——輸出函數是無法計算反函數的,這就無法為閥門函數的優化提供可操作的建議。把FNN作為閥門流量曲線函數g(·)的具體形式,同時通過在FNN 中引入ReLU 激活函數使其變成線性分段函數,那么就可以確保g-1(·)的存在[15]。
人工神經網絡(簡稱神經網絡),是一種模仿生物神經網絡的結構和功能的數學模型或計算模型,其通過梯度下降法不斷更新每層網絡中的神經元,從而具備了學習能力,一般用于對函數進行估計或近似。前饋神經網絡,是神經網絡中最常見的一種。它采用一種單向多層結構,其中每一層包含若干個神經元。在此種神經網絡中,各神經元可以接收前一層神經元的信號,并產生輸出到下一層,如圖1所示。

圖1 前饋神經網絡
FNN中的多層前饋神經網絡是一個單輸入、輸出層和多中間層的前饋網絡結構。它每一層都有多個神經元,圖2給出了FNN中單個神經元的詳細結構。

圖2 神經元結構
圖中,xi和yi分別是神經元的輸入、輸出,wi是對應每個輸入的權重,f(·)表示激活函數;θ是截距參數。這里,選取ReLU[16]作為FNN的激活函數,即為

ReLU 函數由于具有稀疏性結構,使得神經網絡在輸出的過程中并不激活所有的神經元。相比于Sigmoid 激活函數和tanh 激活函數,ReLU 激活函數由于沒有上下界,因此在訓練過程中不會存在神經元飽和的情況;同時,由于對ReLU 函數求導為常數,因此訓練過程中也不存在梯度消失的問題,這就為加深神經網絡深度創造了條件。
通過在模型輸出層的上一層神經元先進行ReLU 激活后再逐項相加,就可以得到自動分段的線性擬合函數。令倒數第二層神經元個數為n,那么擬合的分段函數段數為n+1。
如圖3所示,最后一層網絡的數學表達式為

式中:x為網絡中倒數第二層中間層的輸出值,在圖3中就是(h1,h2,h3,h4),這些變量均通過了ReLU 函數進行激活;WT是倒數第二層網絡與最后一層連接的權重向量;ch是常數值;為了使最后一層網絡的輸出達到分段線性表達的效果,倒數第二層的輸出值要進行直接相加,因此需要用(1,…,1)T與(h1,h2,h3,h4)進行向量乘法,這里(1,…,1)T的維度是1×4,其中:4是一個超參數,可以在建模時任意選取。

圖3 分段線性函數的神經網絡結構
FNN 分段線性辨識模型能夠對閥門流量進行分段線性辨識,但線性分段數目作為模型的超參數需要人為設定。為了能夠自動完成線性分段數量的確定,使用貝葉斯優化方法。
2.2.1 高斯過程回歸
高斯過程(Gaussian Process,GP)是概率論和數理統計中隨機過程的一種,是一系列服從正態分布的隨機變量在一指數集內的組合[17]。
高斯過程回歸(Gaussian Process Regression,GPR)[18]假定輸入向量與目標輸出之間的關系f為高斯過程,則f~GP(m,K)。其中:m表示過程f的均值向量,K表示協方差矩陣。對于訓練集D={(Xi,yi)|i=1,2..,n},其中Xi和yi分別表示第i個輸入和目標輸出,向量表示為X和y。構建回歸模型為

式中:ε為噪音,服從正態分布,ε~N(0,σ2),σ2表示噪聲的標準差向量。
對于輸入向量X,假設f(xi)服從高斯分布,則f(X)服從多元高斯分布
f(X)~N(m(X),K(X,X))
通常均值向量設為0,那么有
f(X)+ε~N(0,K+σ2)
當出現新的輸入變量向量X*時,由于假設f(X*)服從高斯過程,滿足
f(X*)~N(0,K*)
那么訓練集和新輸入向量的聯合分布也滿足高斯過程

式中:K*=k(X,X*),K**=k(X*,X*),k(·)表示協方差函數,也稱為核函數。變換式(7)得到的f(X*)的后驗概率分布也滿足高斯過程

其中,m(f*)和cov(f*)的具體形式如下:

2.2.2 基于貝葉斯的線性分段數尋優
貝葉斯優化(Bayesian Optimization,BO)是基于數據使用貝葉斯定理估計目標函數的后驗分布,然后再根據分布選擇下一個采樣的超參數組合。它充分利用了前一個采樣點的信息,其優化的工作方式是通過對目標函數形狀的學習,并找到使結果向全局最大提升的參數[19]。目標函數和采集函數(Acquisition Function,AC)[20]構成了BO 的兩個重要組成部分。這里的目標函數采用了GPR,采集函數選取了置信下限(Lower Confidence Bound,LCB)函數,表達式為

式中:μ(x)=m(f*),σ(x)=cov(f*);X是已經觀測到的點集,x是未知的候選點,相當于式(7)中的X*;β是人為設定的超參數。
綜合BO 應用于FNN 的訓練過程以確定最優線分段數,主要包括神經網絡訓練和超參數的貝葉斯優化尋優兩個階段。
步驟1:設定線性分段數的超參數,對FNN 分段線性網絡進行訓練,觀測驗證集誤差的變化情況。
步驟2:使用BO 對步驟1 中設置的線性分段數進行尋優,重復步驟1 的過程直到驗證集誤差觸發閾值。這里,通過設定驗證集的均方根殘差(Root Mean Square Error,RMSE)作為停止步驟1、2的閾值,圖4給出了整個過程的流程展示。

圖4 基于BO的FNN線性分段數尋優框架
選取山東省某電廠330 MW機組作為應用對象,特征參數選取了有功功率、主汽流量、主控指令、調節級壓力信號。所有數據的時間長度為6 個月,時間周期為5 s,共計315萬組。
由于數據量較大,為減少閥門流量特性辨識過程中的誤差,針對海量機組運行數據進行了數據預處理,主要包括以下3個方面:
1)剔除異常值。使用了箱型圖法完成對異常數據的識別與剔除。
2)機組運行方式篩選。由于在提取數據的時間周期內,機組存在單閥和順序閥交替運行的情況,為了排除不同運行方式對特性辨識效果的影響,從剔除異常值后的數據中單獨提取了單閥運行方式下的數據。
3)等效流量計算。根據主汽壓力與調節級壓力的關系,使用式(1)計算出了不同調節級壓力下的等效流量。
數據預處理后的主要特征參數如表1所示。

表1 模型主要參數
按照70%和30%的比例劃分訓練集和驗證集,驗證集用來對BO 的優化效果進行驗證。這里的FNN 模型選取了4 個隱藏層的全連接前饋神經網絡,每個隱藏層的神經元數量分別為128、256、256和32;同時,將線性段數的超參數范圍設置為[1,20],其表明該網絡可以給出的潛在線性分段數區間。
在BO優化的過程中,選擇了GPR作為FNN誤差函數的近似,采集函數函數選擇了LCB 函數。同時,使用了限制內存的擬牛頓算法(Limited Memory Broyden Fletcher Goldfarb-Shanno,L-BFGS)求解AC函數的最優解。此外,為了提高FNN訓練的速度,在Pytorch 建模的基礎上使用了圖形處理器(Graphics Processing Unit,GPU)進行訓練加速,并將Batch_size設置為128,最后使用了自適應矩估計(Adaptive Moment Estimation,ADAM)進行參數優化。
通過BO 尋優,本次應用案例數據的最優的線性分段數為4,此時對應的驗證集誤差為0.004 56,圖6給出了模型的辨識結果,可知該模型能夠對汽輪機閥門流量特性實現較準確地辨識。

圖5 線性分段數BO尋優

圖6 基于BO的FNN線性自分段模型辨識
通過將ReLU 激活函數引入FNN 網絡實現了閥門流量特性的分段線性可辨識,同時在FNN 的訓練過程中引入BO 方法實現了對線性分段數進行自動尋優。所得到的線性分段函數可以較好地實現對閥門流量特性的辨識,同時滿足了辨識函數存在反函數的要求,進而為閥門控制函數的精準優化提供了可靠的基礎。