路 寬,翟 勇,李 軍,高 嵩,楊子江
(1.國(guó)網(wǎng)山東省電力公司電力科學(xué)研究院,山東 濟(jì)南 250003;2.山東魯能軟件技術(shù)有限公司,山東 濟(jì)南 250001;3.山東科技大學(xué)電氣與自動(dòng)化工程學(xué)院,山東 青島 266590)
凝汽器作為火電機(jī)組熱力循環(huán)的冷源,將低壓缸的排汽凝結(jié)成為凝結(jié)水,通過這種方式使凝汽器內(nèi)維持一定的真空度,保證汽輪機(jī)出力[1-2]。因此,其性能將直接影響機(jī)組的安全運(yùn)行以及熱經(jīng)濟(jì)性。此外,凝汽器真空系統(tǒng)還影響機(jī)組運(yùn)行的安全。為了提前預(yù)判火電廠凝汽器真空度的穩(wěn)定性,確保機(jī)組在經(jīng)濟(jì)的區(qū)間內(nèi)安全運(yùn)行,必須對(duì)真空度進(jìn)行預(yù)測(cè),并時(shí)掌握機(jī)組真空的真實(shí)狀態(tài)。
在凝汽器真空預(yù)測(cè)方面,權(quán)學(xué)森[3]采用K-means聚類算法將輔機(jī)設(shè)備相關(guān)運(yùn)行參數(shù)劃分成相似的工況簇建立預(yù)測(cè)模型,進(jìn)行相關(guān)設(shè)備的運(yùn)行狀態(tài)分析;余昶[4]通過對(duì)比3種模型后發(fā)現(xiàn),組合灰色預(yù)測(cè)模型和BP 神經(jīng)網(wǎng)絡(luò)的模型得到了較好的預(yù)測(cè)結(jié)果;李建強(qiáng)等[5]應(yīng)用粒子群算法(Particle Swarm Optimization,PSO)與支持向量機(jī)(Support Vector Machine,SVM)相結(jié)合的算法建立了凝汽器真空預(yù)測(cè)模型,使模型具有一定的有效性和泛化性;葛曉霞等[6]提出改進(jìn)的果蠅優(yōu)化算法(Improved Fruit Fly Optimization Algorithm,IFOA)優(yōu)化SVM 的方法來建立凝汽器真空預(yù)測(cè)模型,使算法在迭代后期具有較強(qiáng)的局部尋優(yōu)能力;葛曉霞等[7]提出了基于果蠅優(yōu)化的廣義回歸網(wǎng)絡(luò)(Fly Optimization Algorithm based Generalized Regression Neural Network,F(xiàn)OAGRNN)構(gòu)建凝汽器真空預(yù)測(cè)模型,并且為了簡(jiǎn)化網(wǎng)絡(luò)模型,通過計(jì)算平均影響值(Mean Impact Value,MIV)篩選出對(duì)凝汽器真空影響較為重要的變量;夏琳琳等[8]借助核主成分分析算法(Kernel Principal Component Analysis,KPCA)構(gòu)造了BP 網(wǎng)絡(luò)、徑向基RBF(Radial Basis Function,RBF)和Elman 網(wǎng)絡(luò)的軟測(cè)量模型,實(shí)現(xiàn)了基于Dempster 組合證據(jù)的凝汽器真空度多網(wǎng)絡(luò)融合預(yù)測(cè);初廣宇[9]分析了機(jī)組正常運(yùn)行期間與凝汽器真空的關(guān)系,加深了對(duì)真空預(yù)測(cè)業(yè)務(wù)的理解;王雷[10]提出了采用SVM 時(shí)間序列預(yù)測(cè)法來預(yù)測(cè)凝汽器清潔系數(shù),取得了較好的預(yù)測(cè)精度和泛化能力;王建國(guó)[11]以聚類法的RBF 網(wǎng)絡(luò)為主,采用PSO 算法尋找RBF 模型中的基寬和輸出層權(quán)值,建立了凝汽器真空軟測(cè)量模型,證明了模型有效性。上述研究多采用預(yù)測(cè)算法和參數(shù)優(yōu)化算法相結(jié)合的方式進(jìn)行建模,部分采用了多模型組合的方法,在一定程度上提高了預(yù)測(cè)的泛化能力。但是一方面,已有的研究沒有把外部環(huán)境氣象條件作為影響因素納入建模過程中,從而使模型無法利用天氣預(yù)報(bào)信息達(dá)到真空預(yù)判的效果;另一方面,建模過程中沒有引入集成學(xué)習(xí),使模型在復(fù)雜工況條件下的預(yù)測(cè)泛化能力提升受限;最后,上述研究由于采樣樣本較少,缺少對(duì)大數(shù)據(jù)場(chǎng)景下的數(shù)據(jù)清洗和異常數(shù)據(jù)識(shí)別方法應(yīng)用與研究,導(dǎo)致建模實(shí)用性有限。
將外部氣象因素與機(jī)組工況數(shù)據(jù)相結(jié)合,建立基于集成學(xué)習(xí)的火電廠凝汽器真空度預(yù)測(cè)模型。首先,運(yùn)用iForest[12]完成數(shù)據(jù)的異常值識(shí)別和清洗。其次,使用集成學(xué)習(xí)中的Xgboost 方法進(jìn)行建立預(yù)測(cè)模型;按照是否考慮溫度、氣壓差分值兩種方式,進(jìn)行模型測(cè)試。最后,選取山東省內(nèi)某機(jī)組運(yùn)行數(shù)據(jù)對(duì)兩種模型進(jìn)行對(duì)比分析。
結(jié)合前述的參考文獻(xiàn),提取了機(jī)組負(fù)荷、低壓缸排汽溫度(發(fā)電側(cè)/調(diào)門側(cè))、凝汽器熱井出水溫度、循環(huán)水(進(jìn)/出)水溫度6個(gè)工況參數(shù)作為工況輸入變量。此外,由于環(huán)境氣象條件會(huì)對(duì)凝汽器真空度產(chǎn)生影響,同時(shí)氣象預(yù)報(bào)數(shù)據(jù)還能夠?qū)δ髡婵兆邉?shì)產(chǎn)生預(yù)判作用,因此還引入了地區(qū)大氣溫度、氣壓、濕度和風(fēng)速4 個(gè)氣象因素,作為模型的氣象輸入變量。表1給出了模型輸入、輸出參數(shù)的名稱。
表1 模型主要參數(shù)
iForest 是一種基于集成學(xué)習(xí)的異常數(shù)據(jù)快速檢測(cè)方法,具有線性時(shí)間復(fù)雜度和高精準(zhǔn)度。該方法中的森林由大量的二叉樹構(gòu)成,其構(gòu)建過程是一個(gè)隨機(jī)特征剖分的過程。組成iForest 的基分類器被稱為孤立樹(Isolation Tree,iTree),iForest 算法將異常點(diǎn)看成容易被孤立的離群點(diǎn),即分布稀疏且離密度高的群體較遠(yuǎn)的點(diǎn),其算法過程主要有如下兩個(gè)階段。
階段一:訓(xùn)練出t棵iTree。步驟1:令D={d1,…,dn}為給定的數(shù)據(jù)集,n為樣本的數(shù) 量;?di∈D,di=(di1,…,dim),m為數(shù)據(jù)的維度。從D中隨機(jī)抽取φ個(gè)樣本點(diǎn)構(gòu)成D的子集D′放入根節(jié)點(diǎn)。步驟2:從m個(gè)維度中指定一個(gè)維度q,在當(dāng)前數(shù)據(jù)中隨機(jī)產(chǎn)生一個(gè)切割點(diǎn)p,滿足:
步驟3:此切割點(diǎn)p生成了一個(gè)超平面,將當(dāng)前數(shù)據(jù)空間劃分為兩個(gè)子空間,指定維度小于p的樣本點(diǎn)放入左子節(jié)點(diǎn),大于或等于p的樣本放入右子節(jié)點(diǎn)。步驟4:重復(fù)步驟2、步驟3,直至所有的葉子節(jié)點(diǎn)都只有一個(gè)樣本點(diǎn)或者iTree 已經(jīng)達(dá)到指定的高度。重復(fù)上述步驟1至4直到生成t個(gè)iTree。
階段二:評(píng)估每個(gè)樣本點(diǎn)的異常值分?jǐn)?shù)。對(duì)于每一個(gè)數(shù)據(jù)點(diǎn)di,令其遍歷每一顆iTree,計(jì)算點(diǎn)di的路徑長(zhǎng)度h(di),h(·)為從iTree 的根節(jié)點(diǎn)到葉子節(jié)點(diǎn)所經(jīng)過的邊的數(shù)量。對(duì)所有點(diǎn)的h(·)做歸一化處理。異常值分?jǐn)?shù)的計(jì)算公式為
式中:H(·)為調(diào)和數(shù),它近似等于ln(·)+γ,其中:γ=0.577 815 664 9,為歐拉常數(shù);E(h(d))為孤立森林中h(d)的平均值。若樣本di的異常值分?jǐn)?shù)s接近1,則其被識(shí)別為異常數(shù)據(jù);若s小于0.5,則其被識(shí)別為正常數(shù)據(jù);當(dāng)s介于0.5 與1 之間時(shí),則不能被識(shí)別為明顯的異常數(shù)據(jù)。
通過山東省網(wǎng)源監(jiān)督服務(wù)技術(shù)平臺(tái)提取了山東省某電廠的凝汽器運(yùn)行工況數(shù)據(jù)和電廠所在地區(qū)天氣數(shù)據(jù),數(shù)據(jù)時(shí)間段選為:2020 年3 月18 日00:00:00至2020年10月8日23:59:59,數(shù)據(jù)周期為10 min。圖1、圖2 給出了凝汽器工況數(shù)據(jù)在使用iForest 方法進(jìn)行數(shù)據(jù)清洗前后的對(duì)比情況。在使用iForest 方法以后,原始數(shù)據(jù)中的異常點(diǎn)被識(shí)別出來并完成了剔除。
圖1 凝汽器工況原始數(shù)據(jù)
圖2 凝汽器工況清洗后數(shù)據(jù)
梯度增強(qiáng)GBDT(Gradient Boosting Decision Tree,GBDT)[13]作為一種集成算法,屬于提升算法(Boosting)中的一種。提升算法以一種高度自適應(yīng)的方法順序地學(xué)習(xí)這些弱學(xué)習(xí)器,并按照某種確定性的策略將它們組合起來。雖然通過Boosting,模型的學(xué)習(xí)偏差將達(dá)到逐步降低,但是也存在諸多缺點(diǎn),主要是:由于弱學(xué)習(xí)器之間存在依賴關(guān)系,難以并行訓(xùn)練數(shù)據(jù);高維數(shù)據(jù)導(dǎo)致計(jì)算量加大,不適于大數(shù)據(jù)應(yīng)用場(chǎng)景。
隨機(jī)森林由Leo Breiman(2001)[14]提出,它通過自助法(Bagging)重采樣技術(shù),從原始訓(xùn)練樣本集N中有放回地重復(fù)隨機(jī)抽取k個(gè)樣本生成新的訓(xùn)練樣本集合,然后根據(jù)自助樣本集生成k個(gè)分類樹組成隨機(jī)森林,新數(shù)據(jù)的分類結(jié)果按分類樹投票多少形成的分?jǐn)?shù)而定。隨機(jī)森林由于引入隨機(jī)項(xiàng)而避免了學(xué)習(xí)過程中的過擬合,同時(shí)具有比較強(qiáng)的抗噪能力;同時(shí),隨機(jī)森林比較適于處理高維數(shù)據(jù),且不需要進(jìn)行人工特征預(yù)分析,大大簡(jiǎn)化了建模工作;最后,由于隨機(jī)樹可以進(jìn)行并行計(jì)算,因此實(shí)踐中往往可以引入GPU 硬件加速,從而使其能夠在大數(shù)據(jù)場(chǎng)景下依然具有比較好的表現(xiàn)。但是隨機(jī)森林算法也有明顯的缺點(diǎn),主要是由于沒有做到以降低模型偏差為目標(biāo),因此在回歸問題中的預(yù)測(cè)精度往往不高。
為了能夠?qū)崿F(xiàn)對(duì)GBDT 算法和隨機(jī)森林算法的互補(bǔ)(見圖3),凝汽器真空度預(yù)測(cè)采用了基于梯度增強(qiáng)的隨機(jī)森林算法Xgboost[15]。Xgboost 每一輪訓(xùn)練一棵樹,使得損失函數(shù)能夠極小化。其損失函數(shù)不僅衡量了模型的擬合誤差,還增加了正則化項(xiàng),即對(duì)每棵樹復(fù)雜度的懲罰項(xiàng),來防止過擬合。
圖3 GBDT、隨機(jī)森林與Xgboost算法的關(guān)系
在Xgboost中,目標(biāo)損失函數(shù)的計(jì)算公式為
式中:l為衡量實(shí)際凝汽器真空度yi與預(yù)測(cè)量之間的差值;γT+為損失函數(shù)的懲罰項(xiàng),它通過對(duì)模型的復(fù)雜度進(jìn)行懲罰來提高模型的泛化能力,T為決策樹的葉子數(shù)量,ω為決策樹葉子的權(quán)值向量,λ與γ為系數(shù)。
式中:k為決策樹的數(shù)量;Γ為決策樹的集合;fk(xi)為樣本xi在第k棵樹上的預(yù)測(cè)結(jié)果。
在訓(xùn)練的過程中,樹的建立過程由計(jì)算公式(5)給出
模型評(píng)估采用MAE、R兩個(gè)指標(biāo)。MAE為平均絕對(duì)誤差,其計(jì)算的是真實(shí)yi與預(yù)測(cè)值差的絕對(duì)平均值,具體公式為
R為極差(Range)又稱范圍誤差,是用來表示所有真實(shí)值yi與預(yù)測(cè)值誤差中最大值與最小值之間的差距,計(jì)算公式為
在模型的驗(yàn)證過程中,數(shù)據(jù)集按照60%和40%的比例劃分成訓(xùn)練集和測(cè)試集??紤]到數(shù)據(jù)量較大,使用了GPU進(jìn)行模型訓(xùn)練加速。
模型驗(yàn)證的方式分成兩種情況:一種是按照將前述清洗后的輸入變量(包括工況數(shù)據(jù)與天氣數(shù)據(jù))原值直接輸入真空預(yù)測(cè)模型;另一種是考慮到天氣變量的變化可能對(duì)凝汽器真空的影響更顯著,因此在預(yù)測(cè)模型的輸入變量中又增加了氣溫與氣壓的差分。表2 給出了兩種方法下,模型在訓(xùn)練集和測(cè)試集中的表現(xiàn)。
表2 模型在訓(xùn)練和測(cè)試過程中的表現(xiàn)
從表2 可以看到,增加差分變量以后,測(cè)試集在MAE和R均有10%的提升。圖4、圖5 給出了兩種驗(yàn)證方法下,訓(xùn)練集和測(cè)試集預(yù)測(cè)曲線與實(shí)際曲線的對(duì)比。
圖4 不增加差分變量情況下模型的表現(xiàn)
圖5 增加差分變量情況下模型的表現(xiàn)
通過上述測(cè)試結(jié)果分析,得到如下結(jié)論:1)模型最優(yōu)的輸入測(cè)點(diǎn)為:有功功率、低壓缸排汽溫度(發(fā)電側(cè)/調(diào)門側(cè))、凝汽器熱井出水溫度、循環(huán)水進(jìn)出水溫度、大氣溫度、氣壓、濕度、風(fēng)速、溫度差分和氣壓差分;2)模型誤差較大的部分出現(xiàn)在真空值局部波動(dòng)較大的區(qū)域,增加差分變量以后模型在該區(qū)域的表現(xiàn)得到了提升。因此,可以認(rèn)為氣象因素的波動(dòng)對(duì)凝汽器真空產(chǎn)生了比較明顯的影響。同時(shí),如果能夠結(jié)合未來天氣預(yù)報(bào)信息,則可以達(dá)到提前預(yù)判以及時(shí)調(diào)整機(jī)組運(yùn)行情況的效果。
運(yùn)用集成學(xué)習(xí)的方法先后在數(shù)據(jù)清洗和模型建模環(huán)節(jié)采用了孤立森林和Xgboost 算法完成了對(duì)大數(shù)據(jù)場(chǎng)景下凝汽器真空度的預(yù)測(cè)。同時(shí),在考慮到外部氣象因素對(duì)凝汽器真空影響的情況下,還研究了氣溫和氣壓的波動(dòng)對(duì)凝汽器真空的影響,給出了定量的結(jié)論。研究發(fā)現(xiàn),集成學(xué)習(xí)由于能夠同時(shí)降低模型的偏差與方差,因此具有較好的預(yù)測(cè)效果;氣象數(shù)據(jù)的波動(dòng)也能夠在一定程度上解釋凝汽器真空的波動(dòng)。