祁星晨,卓旭升
(武漢工程大學(xué) 電氣信息學(xué)院,武漢430205)
近年來新能源上網(wǎng)比例增大,由其帶來的隨機波動一定程度上威脅了電網(wǎng)的安全穩(wěn)定運行,火電機組是穩(wěn)定電網(wǎng)的主力,提高機組的靈活運行能力可以推進新能源發(fā)展以及火電機組發(fā)電量盡早達峰[1-2],而改善火電機組控制器的性能是一種有效手段[3]。
關(guān)于機組控制算法的研究,有PID 型控制[4]、魯棒控制[5]、自適應(yīng)控制[6]等。但上述控制方法的設(shè)計較為依賴火電機組的非線性數(shù)學(xué)模型,而模型預(yù)測控制(MPC),對模型的精度要求不高,因而可依賴于建模較為方便快速的T-S 模型,另外還能夠有效地處理系統(tǒng)約束,而且關(guān)于模型預(yù)測控制算法在各種領(lǐng)域的研究和應(yīng)用也較為廣泛[7-10]。在機組歷史數(shù)據(jù)基礎(chǔ)上,建立T-S 模糊模型需要對其進行前件辨識和后件辨識,關(guān)于前件辨識中有人工設(shè)計[11]和聚類算法[12-13]等,面對海量的機組數(shù)據(jù)人工設(shè)計顯然較為繁瑣,在聚類算法中,依據(jù)已有數(shù)據(jù),通過各種數(shù)據(jù)點之間的度量,如歐氏距離、相似度等對其聚類,經(jīng)典的模糊C 均值聚類相對來說聚類速度較慢,k-means++[14]是一種基于k-means 的改進方法,有效解決了k-means 的初始聚類中心隨機選擇從而導(dǎo)致聚類性能下降的問題,并且更快速準(zhǔn)確。所以本文采用k-means++作為前件辨識算法。后件辨識最為常用的有最小二乘法[11,15-16],但是不太適用于機組的在線反饋矯正,隨機梯度下降(SGD)作為一種在線學(xué)習(xí)算法,能在線辨識模型參數(shù),但是為了更快速地辨識模型,引入了動量的隨機梯度下降(MSGD),能夠有效降低SGD 的震蕩。
本文將k-means++與MSGD 應(yīng)用于T-S 模糊模型的辨識,并針對模型設(shè)計了模糊模型預(yù)測控制算法,將其控制算法的數(shù)值最優(yōu)解輸出到非線性系統(tǒng),仿真實例中將本文方法應(yīng)用于鍋爐汽輪機系統(tǒng)中,并設(shè)計了2 種仿真案例,所提出的控制方法與傳統(tǒng)控制方案進行了對比。
假設(shè)非線性系統(tǒng)可由如下離散T-S 模糊模型表示:
Ri:IF φ(t)isFi,THEN:
前件部分,其中Ri表示第i個模糊推理規(guī)則,r是模糊規(guī)則數(shù),前提向量φ(t)是由已知狀態(tài)變量或者輸入變量構(gòu)成,F(xiàn)i是第i個模糊集。后件部分,x(t)∈Rn是系統(tǒng)狀態(tài)向量,u(t)∈Rp是系統(tǒng)輸入向量,yi(t)∈Rm是第i個模糊規(guī)則的系統(tǒng)輸出向量,Ai,Bi,Ci和Di為第i個模糊規(guī)則系統(tǒng)矩陣。
對于式(1)在t時刻有:
其中:
式中:ωi為歸一化后的φ(t)的隸屬度,由式(4)、式(5)計算:
式中:μi為隸屬度;Vc為離聚類中心最近的一個聚類中心。再將隸屬度歸一化:
前件辨識為k-means++聚類算法,前件所有的聚類中心Vi,該算法較為簡單快速,能夠很好地應(yīng)對大量數(shù)據(jù),算法的具體步驟如下:
第1 步:從數(shù)據(jù)φ 中任選一組作為第一個聚類中心V1,計算每組數(shù)據(jù)到V1的距離。從數(shù)據(jù)φ 中隨機選取下一個聚類中心V2,概率為d2(φ(i),V1)/為數(shù)據(jù)和聚類中心的距離,L組數(shù)據(jù)。
第2 步:計算每組數(shù)據(jù)到每個聚類中心的距離,將數(shù)據(jù)分配給最近的聚類中心,輪盤法選擇下一個聚類中心。
第3 步:重復(fù)第2 步直至選擇了r個聚類中心。
后件辨識采用動量隨機梯度下降,參數(shù)在線更新:
式中:W為參數(shù)隨機初始化為較小的常數(shù);▽為梯度函數(shù);ε 為學(xué)習(xí)率;σ 為動量權(quán)重;ζ 為動量,如下式:
對應(yīng)于本文模型參數(shù)在第t組辨識數(shù)據(jù)的梯度函數(shù)如下式:
本文模糊模型預(yù)測控制算法(FMPC)的結(jié)構(gòu)如圖1所示。非線性系統(tǒng)的當(dāng)前輸出經(jīng)模糊模型預(yù)測N步后,滾動優(yōu)化得到數(shù)值最優(yōu)解,輸入到非線性系統(tǒng),進而使系統(tǒng)跟蹤參考信號。
圖1 模糊模型預(yù)測控制原理框圖Fig.1 Scheme of FMPC
模糊模型在某一時刻能夠代表其動態(tài)特性,可設(shè)計模糊模型預(yù)測控制算法,但有一定的精度損失,對式(2)在N步內(nèi)的輸出為
其中:
而系統(tǒng)輸入可由系統(tǒng)輸入增量表示為
式中:I 為單位矩陣。
要使系統(tǒng)在N步內(nèi)達到設(shè)定點,需要目標(biāo)函數(shù)作為優(yōu)化目標(biāo):
其中:y、u 和Δu 的上下界均為物理系統(tǒng)的約束,T為采樣時間,根據(jù)式(6)可將式(9)轉(zhuǎn)化為二次規(guī)劃(QP)問題:
其中:
式中:Q 和R 均為半正定矩陣。
物理系統(tǒng)的物理約束由下式表示:
式中:Umax是umax的N個對角分塊矩陣;Umin、Ymin、Ymax、ΔUmin和ΔUmax也是相同的構(gòu)造方法。由式(10)~式(13)經(jīng)過優(yōu)化算法可得最優(yōu)結(jié)果ΔU*,取其中第一組Δu*(1)為模糊模型預(yù)測控制算法的輸出。
本例對象為160 MW 燃油鍋爐汽輪機系統(tǒng),系統(tǒng)可由三階MIMO 非線性方程表示[17]:
其中:
汽包水位xw為
其中:
狀態(tài)變量x1、x2、x3和xw分別是鍋爐汽輪機系統(tǒng)的汽包出口壓力(kg/cm2)、機組發(fā)電功率(MW)、汽包內(nèi)汽水液體密度(kg/cm3)和汽包水位(m);系統(tǒng)輸入量u1、u2、u3分別是燃料控制閥門開度(%)、主蒸汽流量控制閥門開度(%)及給水流量閥門開度(%)。αcs為蒸汽品質(zhì)系數(shù);qe為蒸發(fā)率(kg/s)。三個閥門的輸入范圍和輸入每秒變化的上下界為
建立準(zhǔn)確的系統(tǒng)模型需要較多且盡可能覆蓋全工況范圍的運行數(shù)據(jù),這樣的數(shù)據(jù)能夠更好地代表系統(tǒng)的動態(tài)特性,因此辨識數(shù)據(jù)為式(18)的系統(tǒng)輸入,及其對應(yīng)的系統(tǒng)響應(yīng):
經(jīng)過繼續(xù)迭代,辨識最終結(jié)果的均方根誤差如表1所示。圖2 為對比實驗結(jié)果,從圖中顯示來看,動量隨機梯度下降算法更快速,震蕩幅度更小,且更接近于極小值點。
表1 已辨識模型的均方根誤差Tab.1 RMSE of identified model
圖2 辨識對比曲線Fig.2 Identification result comparison curve
控制仿真之前,模糊模型預(yù)測控制算法參數(shù)Q和R分別取為diag([1 1 1]T)和diag([9000 100 500]T),預(yù)測步長N=30,優(yōu)化算法采用有效集(active-set)。仿真中將模糊模型預(yù)測控制算法和傳統(tǒng)PID 控制算法對比,PID 控制加入了強制約束。
模擬機組的大范圍的變負荷靈活運行,低負荷到高負荷再到低負荷的變負荷運行,從15 MW 到140 MW 再到15 MW 升降負荷運行,系統(tǒng)響應(yīng)如圖3~圖8所示。仿真結(jié)果顯示,PID 控制在較大升負荷變化的情況下超調(diào)大,水位在降負荷時幾乎難以穩(wěn)定,綜合來看,F(xiàn)MPC 控制預(yù)測能夠很好地處理約束,并且在靈活性上較PID 方法要好,負荷指令跟蹤較快,超調(diào)小也能使機組更安全經(jīng)濟的運行。
圖3 主蒸汽壓力響應(yīng)曲線Fig.3 Steam pressure response curve
圖4 負荷響應(yīng)曲線Fig.4 Power response curve
圖5 水位響應(yīng)曲線Fig.5 Water level response curve
圖6 燃料閥曲線Fig.6 Fule valve curve
圖7 汽閥曲線Fig.7 Steam valve curve
圖8 給水閥曲線Fig.8 Feed water valve curve
利用k-means++和動量隨機梯度下降辨識非線性系統(tǒng)的T-S 模糊模型,并設(shè)計了模糊模型預(yù)測控制器,求二次規(guī)劃問題的數(shù)值最優(yōu)解。模型僅由兩條模糊規(guī)則構(gòu)成,便得到具有有一定精度且能夠代表鍋爐汽輪機系統(tǒng)動態(tài)特性的模糊模型,從控制器的靈活性和處理系統(tǒng)約束的能力綜合來看,本文的模糊模型預(yù)測控制算法優(yōu)于傳統(tǒng)PID 控制算法。