申建建, 張秀飛, 王 健, 程春田, 李秀峰
(1. 大連理工大學(xué)水電與水信息研究所, 遼寧省大連市 116024; 2. 云南電力調(diào)度控制中心, 云南省昆明市 650011)
水電站日負(fù)荷優(yōu)化分配包括機(jī)組組合和機(jī)組間的負(fù)荷分配兩個核心問題,目的是在滿足系統(tǒng)負(fù)荷需求和復(fù)雜調(diào)度約束條件下,合理安排各機(jī)組的啟停方式與出力計劃,保障機(jī)組安穩(wěn)、高效、經(jīng)濟(jì)運行。眾所周知,水電運行存在非常復(fù)雜的水力和電力時空耦合關(guān)系,特別是對于一些大型水電站,呈現(xiàn)出高維、非線性、離散、非凸等典型特點,使得日負(fù)荷優(yōu)化分配建模及求解面臨很大困難[1-3]。
關(guān)于水電機(jī)組組合和負(fù)荷分配問題的研究已有許多理論和實踐成果[4-5],包括動態(tài)規(guī)劃、拉格朗日松弛、智能算法[8-9]、解析式規(guī)劃[-12]等。其中,動態(tài)規(guī)劃可以求得機(jī)組間負(fù)荷分配的離散最優(yōu)解,但隨著機(jī)組臺數(shù)和離散精度增大,面臨嚴(yán)峻“維數(shù)災(zāi)”問題;拉格朗日松弛通過引入乘子處理復(fù)雜耦合約束,但乘子的微小變動會導(dǎo)致振蕩或奇異現(xiàn)象[13-14],收斂性無法保證;智能算法對目標(biāo)函數(shù)和約束條件的要求較低,但其隨機(jī)搜索特點使得結(jié)果穩(wěn)定性較差,收斂到全局最優(yōu)解甚至較好的可行解比較困難,在很大程度上限制了其廣泛應(yīng)用。由于涉及機(jī)組啟停等整數(shù)變量,日負(fù)荷分配問題更多地被描述為混合整數(shù)規(guī)劃模型求解,但受限于水電系統(tǒng)非線性特性,求解中需要將非線性因素線性化處理,這勢必會影響結(jié)果精度,通過分段線性盡管可以減少誤差,但會降低求解效率,且不同的線性化方法會產(chǎn)生不同的計算結(jié)果,如何進(jìn)行線性化非常關(guān)鍵。以水電機(jī)組出力特性曲線為例,文獻(xiàn)[15-16]為避免非線性問題,僅采用一條出力—流量關(guān)系曲線或者選用某幾個局部最優(yōu)點代替不同水頭的發(fā)電曲線,忽略了水頭變化,直接影響機(jī)組的實際發(fā)電效率,應(yīng)用結(jié)果表明最大降低了15%[17。為考慮水頭影響,文獻(xiàn)[18-20]提出了改進(jìn)的線性化方法,通過將多條出力—流量關(guān)系曲線分段線性轉(zhuǎn)換成一系列一維函數(shù)或者利用三角形和網(wǎng)格進(jìn)行三點插值,確實提高了計算精度,但由于引入大量整數(shù)變量嚴(yán)重影響了求解效率,且結(jié)果與實際出力曲線的誤差仍然難以忽視。
事實上,機(jī)組組合和負(fù)荷分配是典型的非線性整數(shù)優(yōu)化問題,非線性模型比線性模型更能準(zhǔn)確描述該問題。為此,本文從水電調(diào)度實際特性出發(fā),提出求解水電站日負(fù)荷分配的混合整數(shù)非線性規(guī)劃模型(MINLP),采用多項式技術(shù),分析并準(zhǔn)確描述了水電站日負(fù)荷分配涉及的水位—庫容曲線、尾水位—出庫流量曲線、機(jī)組流量特性曲線、發(fā)電水頭等復(fù)雜非線性關(guān)系,有效避免了線性簡化或假定影響優(yōu)化結(jié)果實用性。以金沙江干流溪洛渡水電站18臺機(jī)組的負(fù)荷分配優(yōu)化問題為例驗證了MINLP模型的有效性。
水電站日負(fù)荷優(yōu)化分配是以電網(wǎng)下達(dá)的負(fù)荷需求為控制條件,以總耗水量最小[21]為優(yōu)化目標(biāo),并考慮電站和機(jī)組復(fù)雜水力和電力運行約束,確定日內(nèi)最優(yōu)開停機(jī)組合以及各臺機(jī)組的發(fā)電出力計劃。
(1)
(2)
(3)
式中:F為耗水量最小目標(biāo)函數(shù);t,T分別為時段號及其時段總數(shù);Δt為t時段小時數(shù);Qt,wt,st分別為電站在時段t的出庫流量、開停機(jī)產(chǎn)生的耗水量、棄水流量;i,N分別為機(jī)組編號及其總臺數(shù);qi,t為機(jī)組i在時段t的發(fā)電流量;wup,wdown分別為機(jī)組開機(jī)與停機(jī)產(chǎn)生的耗水量;yi,t,xi,t分別表示機(jī)組的啟動操作與停機(jī)操作,詳細(xì)介紹可見1.2.2節(jié)。
1.2.1水庫運行約束
1)水量平衡約束
Vt+1=Vt+3 600(It-Qt)Δt
(4)
式中:It為電站在時段t的入庫流量;Vt為電站在時段t的庫容。
2)水位庫容、尾水位泄量關(guān)系約束
Zt=fzv(Vt)
(5)
(6)
3)邊界條件
(7)
(8)
st≥0
(9)
1.2.2機(jī)組運行約束
1)負(fù)荷平衡約束
(10)
式中:ui,t為機(jī)組i在時段t的開停機(jī)狀態(tài)變量(1表示運行,0表示停機(jī));pi,t為機(jī)組i在時段t的出力;Lt為電站在時段t的負(fù)荷需求。
2)最小開關(guān)機(jī)持續(xù)時間及開停機(jī)次數(shù)約束
ui,t-ui,t-1=yi,t-xi,t
(11)
yi,t+xi,t≤1
(12)
(13)
(14)
(15)
3)水頭約束
(16)
(17)
4)限制運行區(qū)約束
(18)
(19)
5)水電出力函數(shù)
pi,t=fqh(qi,t,hi,t)
(20)
6)邊界約束條件
0≤qi,t≤ui,tqi,max
(21)
0≤pi,t≤ui,tpi,max
(22)
式中:qi,max為機(jī)組i的最大發(fā)電流量。
上述模型的復(fù)雜性主要體現(xiàn)在水位—庫容關(guān)系(式(5))、尾水位—出庫流量關(guān)系(式(6))、水頭(式(16)、式(17))以及出力(式(20))等非線性函數(shù),如何合理表述這些非線性因素是構(gòu)建可求解MINLP模型的關(guān)鍵,因此下文分別針對這些非線性關(guān)系詳細(xì)敘述相應(yīng)的處理策略。
水庫水位與庫容關(guān)系是水電機(jī)組中典型的非線性函數(shù),在線性規(guī)劃模型中通常對水位—庫容曲線進(jìn)行線性化或者分段線性,本文通過分析該曲線特征,采用多項式描述水位—庫容關(guān)系,并且本文在分析多個電站數(shù)據(jù)基礎(chǔ)上發(fā)現(xiàn)低階多項式(小于四階)在基礎(chǔ)數(shù)據(jù)點較多的情況下擬合精度較低,高階多項式擬合精度一般較高,但高于四階時精度改善效果明顯變小,且會增加計算量從而降低計算效率,因而本文選用4次多項式擬合,按此方法可將式(5)轉(zhuǎn)換為:
(23)
式中:a0,ai(i=1,2,3,4)分別為常數(shù)與四次多項式函數(shù)系數(shù)(曲線擬合得到)。
結(jié)合下文實例中電站的水位—庫容曲線進(jìn)行測試(包含70個離散數(shù)據(jù)點),采用MATLAB 2014R進(jìn)行擬合,擬合后數(shù)據(jù)與實際數(shù)據(jù)點的平均誤差僅0.000 06%(誤差=|擬合值-實際值|/實際值),確定系數(shù)R2及和方差(SSE)分別為0.999 9,0.394 9,表明多項式擬合方法可以精確描述實際的水位—庫容曲線。
與水位—庫容關(guān)系類似,尾水位—出庫流量曲線也是需要考慮的重要非線性因素,同理采用四次多項式表述二者關(guān)系,即將式(6)轉(zhuǎn)換為:
(24)
式中:b0,bi(i=1,2,3,4)分別為常數(shù)與四次多項式函數(shù)系數(shù)。
通過尾水位—出庫流量曲線40個離散數(shù)據(jù)點擬合平均誤差為0.06%、確定系數(shù)為0.999 5、和方差為2.568,表明采用式(24)可以滿足尾水位—出庫流量曲線實際精度要求。
電站發(fā)電水頭取決于上游水位、尾水位以及機(jī)組水頭損失,水頭損失是機(jī)組發(fā)電流量的非線性函數(shù),一般采用下式表達(dá):
(25)
式中:ci,ci′分別為水頭損失系數(shù)與常數(shù)。
根據(jù)式(23)—式(25)以及式(17),電站凈水頭可以等效表述為庫容與出庫流量的多元四次函數(shù)。
出力特性曲線是表征機(jī)組出力與發(fā)電流量和水頭函數(shù)關(guān)系的三維曲線簇(見附錄A圖A1(a)),呈現(xiàn)出明顯的非線性特征,如何精確描述是應(yīng)用數(shù)學(xué)規(guī)劃方法求解負(fù)荷分配問題的主要難點和關(guān)鍵所在。
在混合整數(shù)線性規(guī)劃(MILP)模型中,分段線性與三角形權(quán)值技術(shù)是目前常用的兩種線性化方法。分段線性是將水頭與流量分段離散處理,將機(jī)組出力特性曲線簡化為不同水頭以及不同流量區(qū)間的折線段,見附錄A圖A1(b);模型中需要引入0-1變量,利用互斥原理確定某一時刻機(jī)組水頭與發(fā)電流量所處區(qū)間,線性插值得到機(jī)組出力。三角形權(quán)值技術(shù)是將出力、流量、水頭三維變量關(guān)系投射到二維平面上,通過對可行域三角剖分,并引入0-1變量確保只有一個三角形被選中,利用相似原理由流量和水頭得到三角形三個頂點的權(quán)重值,進(jìn)而線性加權(quán)三個頂點值確定電站出力,見附錄A圖A1(c)。上述兩種線性化方法的計算精度與離散區(qū)間或剖分三角形個數(shù)均呈正比關(guān)系,所以精度要求越高,計算效率越低。
事實上,水電機(jī)組的出力與水頭和流量的非線性函數(shù)關(guān)系在三維坐標(biāo)軸體系中是復(fù)雜的三維曲面關(guān)系,采用上述線性化方法勢必會造成精度損失,為精確反映這一關(guān)系,本文將出力描述為發(fā)電流量與水頭的二元非線性函數(shù),具體方法見式(26),對應(yīng)的三維曲面如圖1所示。
(26)
式中:β0,βi(i=1,2,3,4,5)分別為常數(shù)與二元二次函數(shù)系數(shù)。
圖1 出力特性三維擬合曲面Fig.1 Three-dimensional fitting surface of output characteristics
顯然,式(26)無法滿足發(fā)電流量為0時出力為0這一條件;為此,利用開關(guān)機(jī)狀態(tài)變量ui,t,將出力多項式進(jìn)一步轉(zhuǎn)換為式(27):
(27)
為檢驗上述出力描述方法的可行性和精度,選用某電站470個水頭—流量—出力數(shù)據(jù)點并通過MATLAB 2014R擬合,平均誤差僅0.2%,確定系數(shù)為0.997、和方差為1 358,而文獻(xiàn)[16]提出的線性擬合方法的平均誤差達(dá)到9.14%,和方差為18 003.73,確定系數(shù)為0.988 2,說明采用二次多項式函數(shù)可以更加精確地描述出力特性曲線。
本文以溪洛渡電站18臺機(jī)組的日負(fù)荷優(yōu)化分配問題為例驗證提出的MINLP模型,并采用LINGO全局最優(yōu)求解器(Global Slover)進(jìn)行模型求解。優(yōu)化計算的硬件環(huán)境為:Intel(R)Core(TM)i5-6500 CPU 3.2 GHz,8 GB RAM;軟件環(huán)境為:Windows 7。需要補充說明,Global Slover可求得凸或非凸MINLP模型的全局最優(yōu)解[22-23],主要求解思路為:①以分支定界為核心,通過將可行域不斷劃分得到一系列子問題;②對子問題進(jìn)行凸化、線性化來構(gòu)建一個緊縮的凸包絡(luò),以采用成熟線性規(guī)劃算法求解松弛子問題;③遍歷所有子問題(相當(dāng)于遍歷原問題的所有可行域),求得的最優(yōu)解即為全局最優(yōu)解。更為詳細(xì)的求解原理和流程請參考文獻(xiàn)[24]。
為體現(xiàn)MINLP模型的有效性和高效性,本文將其與文獻(xiàn)[18]提出的MILP模型進(jìn)行對比分析,兩種模型均采用同等計算條件,主要結(jié)合實際需求確定,電站開停機(jī)最小持續(xù)時間設(shè)置為4 h,日內(nèi)最多開停機(jī)次數(shù)設(shè)置為2次,電站負(fù)荷需求參考電網(wǎng)下達(dá)計劃,溪洛渡機(jī)組出力上限為770 MW,最大過流能力為430.5 m3/s,初始水位為570.00 m,限制運行區(qū)范圍為0~38.7 MW,出力特性曲線擬合系數(shù)β0至β5分別為-138.8,-0.364 8,0.010 34,-0.001 675,0.589 3,-0.001 192。在MILP模型中,為提高計算精度與計算效率,根據(jù)電站入庫流量以及初始條件,預(yù)估電站凈水頭變化范圍為190~200 m?;谇笆鰲l件,下文從兩個方面進(jìn)行了細(xì)致分析:①對比分析不同分段線性數(shù)目和分段區(qū)間對MILP模型計算效率與結(jié)果精度的影響,目的是為后面兩種模型比較提供重要條件;②對比分析MINLP與MILP兩種模型,包括計算效率和結(jié)果精度,重點以機(jī)組出力為決策變量,根據(jù)實際出力特性曲線、水位—庫容曲線、尾水位—出庫流量曲線反推機(jī)組發(fā)電流量和電站總耗水量,在同等條件下比較兩種模型的計算結(jié)果與實際的偏差大小。
在MILP模型中,分段區(qū)間與分段數(shù)目是影響優(yōu)化結(jié)果與計算效率的兩個重要因素,本文采用控制變量法,分析了如下兩種情況:①在分段區(qū)間相同的情況下,分析不同分段數(shù)目對計算結(jié)果的影響;②在分段數(shù)目相同的情況下,分析不同分段區(qū)間對計算結(jié)果的影響。
MILP模型的求解速度與0-1變量的個數(shù)密切相關(guān),由于本文計算規(guī)模較大,在較短時間內(nèi)難以獲得全局最優(yōu)解。筆者發(fā)現(xiàn),當(dāng)計算時間超過一定時間后(不同計算規(guī)模時間不同),目標(biāo)函數(shù)值維持不變,只是目標(biāo)函數(shù)下界在不斷增大,為此本文將前述臨界時間對應(yīng)的優(yōu)化結(jié)果作為MILP模型的優(yōu)化結(jié)果,其有效性已在文獻(xiàn)[25]進(jìn)行了詳細(xì)論證說明。
1)分段數(shù)目的影響
表1列出了水位—庫容、尾水位—泄量、出力特性曲線在不同分段數(shù)目下的結(jié)果,隨著分段數(shù)量增加,結(jié)果精度也越來越高,電站總耗水量呈單調(diào)遞增趨勢,說明對于溪洛渡電站而言,非線性曲線線性分段數(shù)量越少,優(yōu)化結(jié)果比實際偏小的幅度越大。
表1 不同分段數(shù)目的優(yōu)化結(jié)果Table 1 Optimization results with different numbers of intervals
2)分段區(qū)間的影響
選用表1中情景3的分段數(shù)目,并控制尾水位—泄量、出力特性曲線的分段區(qū)間,通過改變水位—庫容曲線分段區(qū)間分析對優(yōu)化結(jié)果影響(見附錄A表A1)。結(jié)果表明,水位—庫容曲線的分段區(qū)間對結(jié)果有較大影響,甚至不合理的分段區(qū)間會出現(xiàn)無可行解情況。
可見,MILP模型對非線性因素的線性化方式要求很高,實際應(yīng)用時需要結(jié)合不同問題特點確定適合的線性分段數(shù)目、分段區(qū)間等重要參數(shù)。
將MINLP模型結(jié)果與上述MILP模型得到的精度最高的方案(線性分段數(shù)量最多的方案,表1情境1)進(jìn)行比較分析。另外,考慮到機(jī)組數(shù)量較多,無法一一列舉,下文主要給出了前2臺機(jī)組的負(fù)荷分配結(jié)果。
由圖2可以看出,MINLP模型與MILP模型結(jié)果差異較大,說明選用不同模型會對機(jī)組出力安排產(chǎn)生較大影響,主要原因包括兩個方面:一是在于模型的特性,兩種模型對電站和機(jī)組非線性關(guān)系的處理方式不同,導(dǎo)致同一時段同一電站出力情況下,即使相同的機(jī)組組合和出力分配方式,也會出現(xiàn)不同的耗水量,所以在優(yōu)化搜索過程中,為盡可能降低發(fā)電耗水,兩種模型優(yōu)選得到的機(jī)組組合方式可能互不相同;二是MILP模型僅收斂到局部最優(yōu)解,而MINLP模型收斂到全局最優(yōu),不同目標(biāo)值對應(yīng)的機(jī)組開停機(jī)方式和出力過程一般是不同的,甚至存在較大差異,但從日開停機(jī)過程來看,兩種模型各臺機(jī)組的開機(jī)和停機(jī)最小持續(xù)時間均滿足了給定的約束要求,結(jié)果是合理的。從表2可以看出,MILP模型由于對水電站水位—庫容、尾水位—泄量、出力—水頭—發(fā)電流量等非線性關(guān)系的線性化處理,引入了大量0-1整數(shù)變量,使得模型總變量及約束較MINLP模型增加超過3倍,導(dǎo)致在較短時間內(nèi)無法求得全局最優(yōu)解,相反MINLP模型由于0-1變量較少,在349 s內(nèi)即得到全局最優(yōu)解,有效體現(xiàn)了MINLP模型的效率優(yōu)勢;而且模型的總耗水量減少703萬m3,降幅接近2%,效果也比較明顯。
圖2 MILP與MINLP模型機(jī)組出力過程Fig.2 Generation outputs of units obtained from MILP and MINLP models
由于MINLP與MILP模型對水電非線性關(guān)系的處理方式完全不同,僅從目標(biāo)函數(shù)與計算時間上比較兩個模型的優(yōu)劣很難完全反映模型的優(yōu)越性,因此本文從實際可操作性角度出發(fā)做了進(jìn)一步對比分析。具體思路為:①以兩個模型優(yōu)化得到的機(jī)組出力為決策變量,即作為發(fā)電決策,反推機(jī)組實際發(fā)電流量,在推求過程中完全采用電站、機(jī)組原始的水位—庫容曲線、尾水位—出庫流量曲線以及出力特性曲線,其中前兩種曲線采用線性插值計算,第三種曲線采用二次線性插值,因為兩點線性插值比MINLP模型多項式擬合函數(shù),以及MILP模型的分段線性精度更高;②從機(jī)組發(fā)電流量出發(fā),將反推的機(jī)組流量與模型計算的機(jī)組流量進(jìn)行對比,分析實際誤差;③從電站總耗水量出發(fā),對比分析MINLP模型與MILP模型計算結(jié)果與實際調(diào)度的誤差。
由表3可知,兩種模型機(jī)組發(fā)電水量與反推得到的實際調(diào)度發(fā)電水量都較為接近,說明兩種模型的結(jié)果精度均比較高。從總耗水量結(jié)果看,按照MINLP模型所得機(jī)組出力結(jié)果指導(dǎo)實際運行時,總耗水量為39 152.71萬m3,與模型所得結(jié)果39 158.31萬m3相差僅5.6萬m3,約0.001 43%;MILP模型反推得到的實際調(diào)度耗水量為39 925.2萬m3,與模型結(jié)果39 861.24萬m3的誤差為63.96萬m3,是MINLP模型的11倍,可見采用模型優(yōu)化結(jié)果指導(dǎo)實際生產(chǎn)時,MINLP模型的準(zhǔn)確性更高。
表3 機(jī)組發(fā)電耗水情況Table 3 Water consumption of generation units
通過上述MINLP與MILP模型的綜合對比分析,可以得到如下結(jié)論。模型應(yīng)用復(fù)雜度方面,MILP模型對非線性因素的線性化方式要求很高,體現(xiàn)在線性分段的數(shù)目、分段區(qū)間等方面,而且需要預(yù)估機(jī)組出力特性曲線的水頭變化區(qū)間,以選取合適的出力計算曲線,否則會對結(jié)果造成重大影響,甚至導(dǎo)致不可行解;相比較而言,本文MINLP模型通過擬合多項式函數(shù)精確描述非線性關(guān)系,降低了人為因素影響,同時由于總變量和總約束數(shù)量大幅減少,采用相同條件和相同求解器,MINLP的計算效率較MILP有明顯提高,從模型處理的實際操作方式來看,多項式擬合應(yīng)用更為簡捷。計算精度方面,在合理線性化基礎(chǔ)上,MILP模型的優(yōu)化結(jié)果可以指導(dǎo)實際生產(chǎn)運行,誤差也可以控制在工程允許范圍內(nèi),但精度要低于MINLP模型;若為提高其計算精度,可以引入更多0-1變量以實現(xiàn)精細(xì)化分段,但勢必會犧牲模型的計算效率。
本文針對水電站復(fù)雜非線性關(guān)系,建立了以總耗水量最小為目標(biāo)的水電站日負(fù)荷優(yōu)化分配的混合整數(shù)非線性規(guī)劃模型,并通過溪洛渡電站18臺機(jī)組的實際檢驗,獲得如下結(jié)論。
1)利用多項式擬合方法可以精確描述水電站日負(fù)荷分配涉及的非線性函數(shù)關(guān)系,有效保留水電站實際工程特性。
2)與經(jīng)典的MILP模型相比,本文MINLP模型由于規(guī)避了線性和分段線性化處理,大幅減少了需要優(yōu)化計算的變量和約束數(shù)量,在相同條件下減少了計算耗時,同時基于多項式擬合方法降低了非線性關(guān)系線性簡化的誤差,改善了結(jié)果精度,使發(fā)電調(diào)度決策更能反映機(jī)組實際運行情況。
3)以機(jī)組出力為決策,通過原始出力特性曲線反推機(jī)組實際耗水,發(fā)現(xiàn)按照MINLP模型優(yōu)化結(jié)果進(jìn)行實際調(diào)度,精度優(yōu)于MILP模型,體現(xiàn)了較好的實際可操作性。
4)根據(jù)水電站日負(fù)荷分配的MINLP和MILP兩種模型解決思路和結(jié)果對比分析,側(cè)面反映了水電調(diào)度中水位、流量、庫容、出力等耦合函數(shù)關(guān)系的處理策略對調(diào)度結(jié)果的重要性,為以后更好地求解此類問題提供了探索方向。
本文在解決日負(fù)荷分配問題時,主要考慮了機(jī)組單一限制運行區(qū)的情況,部分巨型水電站可能存在多限制運行區(qū)且隨水頭動態(tài)變化,這是非常復(fù)雜的非線性約束,需要進(jìn)一步深入研究。
附錄見本刊網(wǎng)絡(luò)版(http://www.aeps-info.com/aeps/ch/index.aspx)。