參考文獻(xiàn):
[1]王月漢,劉文霞,姚齊,萬海洋,何劍,熊雪君.面向配電網(wǎng)韌性提升的移動儲能預(yù)布局與動態(tài)調(diào)度策略[J].電力系統(tǒng)自動化,2022,46(15):37-45.
1.基本原理
? ? ? ? 災(zāi)后調(diào)度階段以故障持續(xù)時間內(nèi)負(fù)荷削減功率加權(quán)值最小為目標(biāo),建立了多源協(xié)同的災(zāi)后恢復(fù)優(yōu)化模型,通過動態(tài)調(diào)度移動儲能、電動汽車與柴油發(fā)電機(jī),最大限度提升配電網(wǎng)韌性。其中移動儲能的調(diào)度考慮到了配電網(wǎng)和交通路網(wǎng)的耦合關(guān)系,并對冰雪災(zāi)害等氣候情況對移動儲能移動狀態(tài)的影響進(jìn)行了數(shù)學(xué)建模,此外,在災(zāi)后恢復(fù)階段,各時刻的負(fù)荷削減功率、分布式電源出力與配電網(wǎng)運(yùn)行仍需要滿足相應(yīng)約束,約束條件形式與災(zāi)前預(yù)布局階段相同。具體的原理這里不再贅述,可以自行下載文獻(xiàn)進(jìn)行查看。
2 模型求解
????????災(zāi)后恢復(fù)優(yōu)化模型為混合整數(shù)二階錐規(guī)劃問題,可利用商業(yè)求解器 Gurobi 求解。
3.編程思路分析
3.1參數(shù)和變量定義
表1 相關(guān)參數(shù)
?表2 決策變量
?
3.2編程思路
????????根據(jù)對文獻(xiàn)內(nèi)容的解讀,可以設(shè)計下面的編程思路:
步驟1:輸入所需數(shù)據(jù)
????????部分?jǐn)?shù)據(jù)和災(zāi)前移動儲能預(yù)配置階段的相同,繼續(xù)用就行其他的數(shù)據(jù)可在原文提供的附錄中獲取,這部分主要的問題和難點如下:
????????獲取各節(jié)點的距離矩陣。原文中給出的假設(shè)是交通網(wǎng)拓?fù)渑c電網(wǎng)相同,相鄰電氣節(jié)點間的道路距離為 2 km。但是,在文章的背景中,由于考慮了配電網(wǎng)重構(gòu),配電網(wǎng)拓?fù)浣Y(jié)構(gòu)可能會不斷變化,交通網(wǎng)不可能隨著電網(wǎng)拓?fù)渥兓?。所以假設(shè)交通網(wǎng)和初始配電網(wǎng)拓?fù)湎嗤A硗?,需要用到的距離矩陣是所有節(jié)點兩兩之間的距離,目前已知的是相鄰節(jié)點的距離,需要采用圖論算法進(jìn)行求解。
????????步驟2:定義決策變量
????????這一步比較簡單,按照表2,初始化決策變量即可。要注意的是每個決策變量的維度以及類型(sdpvar還是binvar)不要出錯。
????????需要注意一點,由于文中共有兩個移動儲能車,33個節(jié)點,11個時段,如果采用常規(guī)變量定義方式,alpha_ME將是一個2×33×11的三維變量,這么處理會大大降低程序運(yùn)行速率。為了方便起見,將定義兩個33×11的二維變量,alpha_ME1和alpha_ME2,就可以避免使用三維決策變量。
????????步驟3:定義目標(biāo)函數(shù)和約束條件,嘗試求解確定性優(yōu)化問題
????????按照原文中給定的公式,寫出相應(yīng)的目標(biāo)函數(shù)與約束條件即可。但文中涉及的優(yōu)化問題是一個多時段的混合整數(shù)二階錐優(yōu)化,如果采用常規(guī)的思維,在寫約束條件時經(jīng)常會用到三層以上的循環(huán),大大拖慢程序運(yùn)行速度,可以采用一些小技巧避免多層循環(huán)的使用,提高程序效率。
????????1.以約束條件(26)為例說明如何避免多重循環(huán)的使用。式(26)只寫了t的取值范圍,如果把其他下標(biāo)的取值范圍都標(biāo)上,式(26)就變成了下面這樣:
????????按常規(guī)思維來看,需要寫成5層循環(huán)的形式,matlab代碼如下:
for t = 1:NT
for i = 1:NME
for j = 1:NB
for k = 1:NB
for dt = 1:min([floor(T_ME(j,k,t)),NT-t])
Constraints = [Constraints , alpha_ME(i,j,t) + alpha_ME(i,k,t+dt) <= 1];
end
end
end
end
end
????????首先,在定義決策變量時,就已經(jīng)把兩個移動儲能的決策變量分開表示,可以減小一層循環(huán),另外,可以將j,k兩層循環(huán)寫成一組數(shù)對,方法如下:
j_index = zeros(1,33*33);
k_index = zeros(1,33*33);
it = 1;
for j = 1:33
for k = 1:33
j_index(it) = j;
k_index(it) = k;
it = it + 1;
end
end
????????其中j_index和k_index都是1089(33×33)維的數(shù)據(jù),把這兩個變量提前存在工作區(qū),使用時讀取出來,就可以把5層循環(huán)減小到2層循環(huán),如下所示:
for t = 1:NT
for dt = 1:min([floor(T_ME(j_index(k),k_index(k),t)),NT-t])
% 式26
Constraints = [Constraints , alpha_ME1(j_index,t) + alpha_ME1(k_index,t+dt) <= 1 , alpha_ME2(j_index,t) + alpha_ME2(k_index,t+dt) <= 1];
end
end
????????經(jīng)過這樣處理,運(yùn)行時間從原本的0.383611秒減小到0.001126秒,提升的效率達(dá)到了99.71%。我只是以約束條件(26)為例進(jìn)行說明,當(dāng)優(yōu)化問題非常復(fù)雜時,減少循環(huán)語句的使用對程序運(yùn)行效率的提升是非常驚人的。
????????2.另外再強(qiáng)調(diào)一點,配電網(wǎng)最優(yōu)潮流最容易踩坑的地方就是標(biāo)幺值轉(zhuǎn)換上。之前有朋友拿自己寫的代碼問我,說感覺公式模型都是按照參考文獻(xiàn)打的,但一用求解器就是“Infeasible problem”,拿給我一看,參數(shù)中有的數(shù)值用的是實際值,有的數(shù)值用的是標(biāo)幺值,非?;靵y,我把參數(shù)統(tǒng)一修改為標(biāo)幺值就可以正常運(yùn)行了。建議在編程時都轉(zhuǎn)換為標(biāo)幺值求解。
????????這一步是最難的部分,需要有耐心,反復(fù)調(diào)試。為了避免在大段約束條件中尋找錯誤,建議是每加上一條約束條件,便調(diào)試一下模型是否可解,如果可解,再加入下一個約束條件,否則需要反復(fù)調(diào)試,找到問題所在。
????????步驟4:輸出計算結(jié)果
????????原文中將移動儲能的預(yù)布局和優(yōu)化調(diào)度拆成兩階段優(yōu)化策略,第二階段為多源協(xié)同的災(zāi)后恢復(fù)優(yōu)化模型,是一個混合整數(shù)二階錐規(guī)劃模型(MISOCP)。這份代碼復(fù)現(xiàn)了第二階段多源協(xié)同的災(zāi)后恢復(fù)優(yōu)化模型的結(jié)果,第一階段的結(jié)果可以查看我之前的博客。
4.完整Matlab代碼
? ? ? ? 災(zāi)后恢復(fù)的完整matlab代碼可以從這個鏈接獲?。?/span>
面向配電網(wǎng)韌性提升的移動儲能預(yù)布局與動態(tài)調(diào)度策略(2)-災(zāi)后調(diào)度matlab代碼
? ? ? ? 包含災(zāi)前預(yù)配置和災(zāi)后恢復(fù)的完整matlab代碼可以從這個鏈接獲取:
面向配電網(wǎng)韌性提升的移動儲能預(yù)布局與動態(tài)調(diào)度策略-全文復(fù)現(xiàn)matlab代碼
5.運(yùn)行結(jié)果分析
5.1表2 移動儲能的動態(tài)調(diào)度結(jié)果
?
5.2 圖B3 災(zāi)害發(fā)生后光伏機(jī)組的預(yù)測出力?
5.3 圖4 各時段負(fù)荷功率和恢復(fù)比例?
5.4 圖B4 移動儲能有功功率輸出與接入位置的關(guān)系
5.5 圖B5 移動儲能荷電狀態(tài)與接入位置的關(guān)系?
文章來源:http://www.zghlxwxcb.cn/news/detail-481044.html
5.6 圖B6 災(zāi)后恢復(fù)階段柴油發(fā)電機(jī)有功功率輸出
?文章來源地址http://www.zghlxwxcb.cn/news/detail-481044.html
到了這里,關(guān)于(文章復(fù)現(xiàn))面向配電網(wǎng)韌性提升的移動儲能預(yù)布局與動態(tài)調(diào)度策略(2)-災(zāi)后調(diào)度matlab代碼的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!