周國亮,李 剛
1.國網(wǎng)冀北電力有限公司 技能培訓中心,河北 保定 071051
2.華北電力大學 控制與計算機工程學院,河北 保定 071003
虛擬電廠(Virtual Power Plant,VPP)是未來能源互聯(lián)網(wǎng)的重要形式之一,是利用先進信息通信技術,實現(xiàn)分布式能源、儲能系統(tǒng)、可控負荷、電動汽車等DERs(Distributed Energy Resources)的聚合和協(xié)調優(yōu)化,以作為一個特殊電廠參與電力市場和電網(wǎng)運行的電源協(xié)調管理系統(tǒng),被認為是能源互聯(lián)網(wǎng)的終極組態(tài)[1]。虛擬電廠將多種DERs聚合在一起,實現(xiàn)其整體出力的穩(wěn)定可靠,為電網(wǎng)提供高效的電能,從而保證并網(wǎng)的穩(wěn)定性和安全性。虛擬電廠依據(jù)運行控制模式可分為集中式、集中-分散式和完全分散式三種[2],其中集中式架構不僅對通信系統(tǒng)具有較高的要求,而且難以應對眾多“安裝即忘記(fit and forget)”分布式能源的管理,因此為更好地實現(xiàn)DERs的管理,虛擬電廠的調度策略從傳統(tǒng)集中式向分布式轉換[3],分散型虛擬電廠獲得了更多關注,其具有更好的可擴展性和開放性。在分散型虛擬電廠中,通常利用多智能體技術實現(xiàn)DERs的分布式通信,通過智能體與鄰居節(jié)點之間的信息交互,實現(xiàn)自我調節(jié),并最終趨向于一致性變量[4-5]。但多智能體技術由于無法高效準確獲取全局信息,需要通過不斷迭代逼近一致性結果,存在計算不夠準確和效率偏低等問題。
以多智能體一致性理論為基礎的電力系統(tǒng)分散協(xié)同模式和當前主流區(qū)塊鏈技術的理念高度一致,為基于區(qū)塊鏈的分布式能源系統(tǒng)架構設計提供了良好的理論和實踐基礎[6]。區(qū)塊鏈有望成為能源互聯(lián)網(wǎng)信息基礎架構的核心部分之一,相關學者研究了區(qū)塊鏈技術在配電網(wǎng)去中心化交易機制[7]、自動需求響應系統(tǒng)[8]、能源互聯(lián)網(wǎng)多模塊協(xié)同自治模式[9]、配電網(wǎng)電力交易[10]等領域的應用。區(qū)塊鏈與分散式虛擬電廠在去中心化、分散協(xié)同、區(qū)域自治等方面相吻合,比如在分散式虛擬電廠中沒有中心控制機構,各DERs通過直接數(shù)據(jù)交換獲取全局信息,然后自主完成本節(jié)點的調控運行?;趨^(qū)塊鏈共識機制,實現(xiàn)單元間高效的分布式通信,利用數(shù)據(jù)廣播、信息交互,進而達到各單元運行特性的一致性,因此應用區(qū)塊鏈共識機制實現(xiàn)分布式調度策略及虛擬電廠最優(yōu)運行具有可行性。
針對區(qū)塊鏈在虛擬電廠中應用,文獻[11]展望了區(qū)塊鏈技術在虛擬電廠中的應用前景,分析了區(qū)塊鏈技術應用于虛擬電廠的可行性,構建了區(qū)塊鏈技術應用于虛擬電廠的模型。文獻[12]基于能源區(qū)塊鏈網(wǎng)絡實現(xiàn)了虛擬電廠運行與調度模型,模型可準確反映需求側實時信息,有助于VPP進行環(huán)境友好、信息透明的穩(wěn)定調度,并提高了系統(tǒng)的數(shù)據(jù)安全性和存儲安全性。文獻[13]針對以實時電價為驅動的能源互聯(lián)網(wǎng),結合區(qū)塊鏈安全、透明、去中心化等特性,建立基于區(qū)塊鏈的虛擬電廠模型。區(qū)塊鏈根據(jù)應用場景劃分為公有鏈、聯(lián)盟鏈和私有鏈,上述研究基于公有鏈開展,而虛擬電廠由多個不同主體構成,采用聯(lián)盟鏈及相關技術更為合適。
國內外機構也開始探索基于區(qū)塊鏈的虛擬電廠實踐,美國通用電氣公司(GE)利用區(qū)塊鏈構建虛擬發(fā)電廠,將IBM開發(fā)的區(qū)塊鏈平臺Hyperledger集成到公司的Predix平臺中,用區(qū)塊鏈控制分布式發(fā)電廠,也是為了應對大型中央發(fā)電廠向分布式發(fā)電轉變的發(fā)展趨勢。日本電子零組件大廠京瓷(Kyocera)進行區(qū)塊鏈技術的虛擬電廠實驗,基于P2P交易平臺,將太陽能發(fā)電設備的電力,在各用戶間有效分配。在國內,國家電網(wǎng)有限公司利用自主研發(fā)的區(qū)塊鏈平臺開展分布式能源交易,該平臺后續(xù)將應用到能效管理、綠證、碳交易、虛擬電廠等應用場景。
綜上所述,本文針對完全分散型虛擬電廠,基于其與區(qū)塊鏈在去中心化、點對點交互和分散協(xié)同等方面的一致性,提出利用區(qū)塊鏈技術實現(xiàn)虛擬電廠分布式調度,結合等耗量微增率準則,將微增量特征作為一致性變量,實現(xiàn)虛擬電廠的最優(yōu)經(jīng)濟調度。結合區(qū)塊鏈共識算法,每個分布式能源節(jié)點獨立計算各個機組的新功率,并將新功率數(shù)據(jù)上鏈存儲,同時保持微增量特征全局一致性,實現(xiàn)負荷在機組間的合理分配。
本文以有功功率負荷最優(yōu)分配為例開展,所謂最優(yōu)分配是在滿足一定量負荷持續(xù)供電的前提下,使發(fā)電設備在產(chǎn)生電能的過程中單位時間內消耗的能源最少,通常采用“等耗量微增率準則”在機組間分配負荷[14]。為簡化描述,采用不計網(wǎng)損的有功最優(yōu)分配方案。
假設有DERs中的發(fā)電機組成本函數(shù)為二次型,用Fi(Pi)表示成本函數(shù),實現(xiàn)VPP最小發(fā)電成本為:
其中,n表示VPP中DERs機組的個數(shù),Pi表示機組i的輸出功率,VPP的總成本記為F,F(xiàn)i(Pi),ai、bi和ci表示成本函數(shù)的系數(shù)。
VPP內部的所有DERs機組在運行時滿足整個系統(tǒng)的有功功率平衡,不考慮網(wǎng)損的情況下,即有:
PLD表示所有用戶的負荷總需求量。
依據(jù)“等耗量微增率準則”在機組間分配負荷,當達到最優(yōu)運行時,所有機組的微增量特征λ一致,λ可以用一階微分計算得到,即:
因此,可以將λ作為區(qū)塊鏈中各節(jié)點間的一致性變量,隨著負荷的變化進行調整,但全網(wǎng)保持一致。
依據(jù)區(qū)塊鏈所服務對象的不同,一般區(qū)塊鏈劃分為:公有鏈、私有鏈和聯(lián)盟鏈。公有鏈對所有用戶開放,節(jié)點可以隨意進出;私有鏈由單個組織控制,只對本單位開放;聯(lián)盟鏈介于公有鏈和私有鏈之間,對一個特定的行業(yè)組織開放,且要求每個新加入的節(jié)點都需要經(jīng)過驗證和審核。聯(lián)盟鏈可以適應包含少量故障或作惡節(jié)點的情況,具有一定容錯特性。
一般不同類型的區(qū)塊鏈采用不同的共識機制,拜占庭容錯(Byzantine Fault Tolerance,BFT)是區(qū)塊鏈共識算法中需要解決的核心問題之一。比特幣的POW和以太坊的POS等是公有鏈算法,解決的是包括眾多共識節(jié)點情況下的BFT。而實用拜占庭容錯算法(Practical Byzantine Fault Tolerance,PBFT)是在聯(lián)盟鏈共識節(jié)點較少的情況下BFT的一種解決方案。相較于公有鏈的POW、POS等,PBFT采用各個節(jié)點投票來達成共識的機制,可以解決分叉問題并提升效率。PBFT的運行環(huán)境要求是一個相對封閉的集群,每一次共識需要多次兩兩節(jié)點進行通信,通信量是O(n2),n是集群中節(jié)點的個數(shù)。PBFT適合行業(yè)、政府等主導的聯(lián)盟鏈,是節(jié)點數(shù)量有限且不需要虛擬貨幣激勵機制系統(tǒng)的理想選擇?;谔摂M電廠的運行特性,本文選擇聯(lián)盟鏈,并采用PBFT共識算法。
PBFT算法前提是通過密碼學技術保證節(jié)點之間的消息通信是不可篡改的。PBFT具有一定容錯特性,假設系統(tǒng)中的總節(jié)點數(shù)為:|n|=3f+1,f為PBFT容忍故障或者惡意節(jié)點數(shù),也就是為了保障整個系統(tǒng)正常運轉,需要有2f+1個正常節(jié)點。PBFT執(zhí)行過程包括三個階段:預準備(pre-prepare)、準備(prepare)和確認(commit),通過三階段執(zhí)行方式保證一致性。聯(lián)盟鏈中,經(jīng)典的代表項目是IBM Hyperledger組織下的Fabric項目,F(xiàn)abric0.6版本使用PBFT算法。
表1 多智能體與區(qū)塊鏈技術的異同點
多智能體技術是分布式人工智能的重要分支,是20世紀末至21世紀初國際上人工智能的前沿學科,其研究的目的在于采用自底向上的方式解決大型、復雜的現(xiàn)實問題。多智能體技術具有自主性、分布性、協(xié)調性等特征,可實現(xiàn)系統(tǒng)的自組織、自學習及推理能力。當采用多智能體技術解決實際應用問題時,具有魯棒性、可靠性和較高的問題求解效率,在能源電力行業(yè)獲得了廣泛應用和研究,如實現(xiàn)能源互聯(lián)網(wǎng)的優(yōu)化控制策略[15]、交流微網(wǎng)電流保護[16]、電力市場環(huán)境下的電源規(guī)劃[17]等。
但多智能體技術在20世紀提出,受當時的設備存儲能力和網(wǎng)絡通信帶寬限制,其采用智能體和鄰居節(jié)點之間的不斷迭代方式去逼近最優(yōu)解或最終所有智能體達到近似一致性。隨著近年來理念與多智能體技術相近的區(qū)塊鏈技術出現(xiàn),為類似問題提供了更高效解決方案。隨著硬件設備存儲容量的提高,在每個節(jié)點中可以存儲更多的數(shù)據(jù),如果只存儲關鍵數(shù)據(jù),可以適應更大規(guī)模系統(tǒng)數(shù)據(jù)存儲需求;另外網(wǎng)絡環(huán)境及帶寬有了極大改善,隨著5G等的普及,帶寬及通信延遲對系統(tǒng)的影響將越來越小。這樣每個節(jié)點可以存儲全網(wǎng)關鍵數(shù)據(jù),并通過共識機制和智能合約更新數(shù)據(jù),實現(xiàn)全網(wǎng)數(shù)據(jù)一致,從而獲取整體全景數(shù)據(jù),為每個節(jié)點單獨決策提供準確數(shù)據(jù)依據(jù),并盡而不用迭代逼近,可以通過計算直接獲取。
以多智能體一致性理論為基礎的電力系統(tǒng)分散協(xié)同模式和當前主流區(qū)塊鏈技術的理念高度一致,為基于區(qū)塊鏈的分布式能源系統(tǒng)架構設計提供了良好的理論和實踐基礎,區(qū)塊鏈系統(tǒng)中每個節(jié)點都可以認為是分布式系統(tǒng)中的一個自主和自治的智能體,區(qū)塊鏈的工作模式是基于智能體之間談判、協(xié)調與協(xié)作的去中心化共識算法,其管理規(guī)則是智能合約。表1比較了多智能體與區(qū)塊鏈技術的異同點。
完全分散結構的虛擬電廠,不存在中心化的控制機構,各發(fā)電和用電單元通過直接交互和多次迭代最終完成決策過程。與分散型虛擬電廠理念相似,在區(qū)塊鏈中不存在中心化的節(jié)點,任意節(jié)點的權利和義務平等,系統(tǒng)中的數(shù)據(jù)由整個系統(tǒng)中具有維護功能的節(jié)點來共同管理,且任一節(jié)點停止工作都不會影響系統(tǒng)整體的工作?;陔p方理念和需求的一致性,使區(qū)塊鏈有望成為構建分散型虛擬電廠的底層架構之一,實現(xiàn)虛擬電廠的調控運行。虛擬電廠與區(qū)塊鏈技術的特性比較如表2所示。
基于區(qū)塊鏈與虛擬電廠特性的吻合,可以利用區(qū)塊鏈構建分散型虛擬電廠的底層信息架構。各DERs組成區(qū)塊鏈網(wǎng)絡,可實現(xiàn)點對點通信;利用共識機制,計算一致性變量;通過智能合約執(zhí)行控制決策。具體結構如圖1所示。
表2 區(qū)塊鏈與虛擬電廠特性比較
圖1 基于區(qū)塊鏈的虛擬電廠信息架構
如圖1所示,由物理的能量傳輸網(wǎng)和區(qū)塊鏈信息網(wǎng)組成,其中能量網(wǎng)負責電力傳輸,連接各個DERs。每個DERs單元對應區(qū)塊鏈信息網(wǎng)絡中一個節(jié)點,區(qū)塊鏈節(jié)點與DER之間可以傳輸數(shù)據(jù)和控制信號,節(jié)點與節(jié)點之間組成點對點網(wǎng)絡。整個虛擬電廠的調控策略由區(qū)塊鏈網(wǎng)絡計算,并下發(fā)物理網(wǎng)絡執(zhí)行。
依據(jù)經(jīng)濟調度“等耗量微增率準則”在機組間分配負荷,當達到最優(yōu)運行配置時,所有機組的微增量特征λ值相等,因此選擇λ為區(qū)塊鏈平臺的狀態(tài)信息,通過共識機制完成計算,并保持一致性。
依據(jù)區(qū)塊鏈數(shù)據(jù)存儲特點,每個節(jié)點保存一份完整全局狀態(tài)數(shù)據(jù)備份,并與其他節(jié)點數(shù)據(jù)保持同步。依據(jù)調度策略,每個發(fā)電機組需要保存全網(wǎng)中所有機組的功率信息Pi(單位:kW)和對應機組的成本函數(shù)系數(shù)(ai,bi,ci),通常成本函數(shù)保持不便,每次功率調整后新的功率上鏈存儲。利用區(qū)塊鏈技術使每個機組可以準確獲取全局狀態(tài)信息。每個節(jié)點的數(shù)據(jù)存儲結構大致如圖2所示。
圖2 上鏈存儲的數(shù)據(jù)
依據(jù)PBFT共識執(zhí)行過程,結合等耗量微增率準則,分布式調度計算過程如圖3所示。當負荷總需求發(fā)生變化后,將功率調整需求廣播到所有機組,經(jīng)過PBFT共識,每個機組單獨計算新的功率和λ,并調整機組功率和廣播λ。同時將所有機組新的功率上鏈存儲,以備下次調整應用。
圖3 分布式計算
具體流程如下:
(1)當總負荷發(fā)生變化,激活主節(jié)點DER1的功率計算請求操作,主節(jié)點選取按照PBFT約定算法規(guī)則完成。
(2)主節(jié)點收到請求后,按照三階段協(xié)議規(guī)則向網(wǎng)絡內各DERs節(jié)點廣播請求。
首先是序號分配階段,主節(jié)點給請求賦值序號,不同請求具有不同的賦值序號,利用序號和請求操作構造pre-prepare消息,并廣播給各DERs節(jié)點,在本階段將總的變化負荷PLD和功率計算請求發(fā)送到各節(jié)點。
然后是交互階段,各DERs節(jié)點接收pre-prepare消息,每個節(jié)點向其他DERs節(jié)點廣播prepare消息;如果節(jié)點收到了2f個不同節(jié)點的消息,代表該節(jié)點的prepare階段已經(jīng)完成,至此每個節(jié)點得到了變化后總的負荷PLD,具備計算新功率的條件。
最后是序號確認階段,各節(jié)點對視圖內的請求和次序進行驗證后,如果節(jié)點收到了2f+1個commit提交消息,代表大多數(shù)節(jié)點已經(jīng)進入commit階段,這一階段已達成共識。于是節(jié)點會執(zhí)行請求,運行結果。下面以區(qū)塊鏈中第i個節(jié)點的計算過程為例,說明按等耗量微增率準則的功率分配計算過程。
依據(jù)分布式調度準則,要求所有節(jié)點λ一致,即滿足公式(4):
將公式(5)代入公式(2),得到公式(6):
由于PLD已知,可計算得到DERsi新功率的,然后將代入公式(5),得到所有節(jié)點新的功率值,并將新的值更新到區(qū)塊鏈中;同時計算λ值,并將其發(fā)送給任務發(fā)起節(jié)點;驅動DERs機組按照新的功率值工作。
(3)任務發(fā)起者接收來自不同的節(jié)點響應,若有2f+1個響應λ值相等,則該響應即為本次請求計算的結果,是全網(wǎng)一致性變量,本次分布式功率分配調整完成,實現(xiàn)最優(yōu)經(jīng)濟調度。
由于分布式能源存在隨時加入和退出的問題,當有新的節(jié)點加入時,節(jié)點廣播自身參數(shù)及當前功率值,請求完成新節(jié)點加入和功率再分配操作。基于PBFT機制,每個節(jié)點將新節(jié)點參數(shù)添加到鏈上存儲,同時基于準則調整功率,保證系統(tǒng)運行在最優(yōu)狀態(tài)。當有節(jié)點退出時,采用類似操作更新鏈上數(shù)據(jù)和調整功率。
為驗證本文所提算法的有效性,通過實驗進行仿真驗證。假設在某VPP系統(tǒng)內分散了四個DERs,類型為微型燃氣發(fā)電機(Micro Gas Generators,MGGs),MGGs通過區(qū)塊鏈網(wǎng)絡連接,每個MGG是網(wǎng)絡中的一個節(jié)點,并假設該網(wǎng)絡存在一定網(wǎng)絡延時,但保證點對點直接通信。機組的運行參數(shù)和初始功率如表3所示[18]。
存在網(wǎng)絡時延的情況下,測試一致性變量λ的變化情況。從圖4可知,在初始t=1時刻,各機組的λ值不同,不滿足等耗量微增率準則,系統(tǒng)沒有運行在最優(yōu)狀態(tài)。通過一次PBFT共識后,在t=8時刻λ變量達到一致,系統(tǒng)達到最優(yōu)運行狀態(tài)。
表3 機組的運行參數(shù)和初始功率
圖4 微增量特征λ值的變化情況
圖5 展示了在共識過程中,總負荷功率PLD與機組發(fā)電總功率sum(Pi)的對比,從圖中可以發(fā)現(xiàn)由于網(wǎng)絡延時和共識計算造成的系統(tǒng)波動,但最終達到了功率平衡。
圖5 負荷總功率和發(fā)電總功率對比
圖6 展示了各個MGGs機組的有功功率調整情況,最終功率值穩(wěn)定在最優(yōu)運行狀態(tài)。
圖6 各機組功率變化情況
虛擬電廠將是未來能源互聯(lián)網(wǎng)的終極形態(tài)之一,實現(xiàn)更大范圍內的資源優(yōu)化配置,促進分布式能源的消納。針對分散型虛擬電廠的優(yōu)化運行,采用等耗量微增率準則,結合分布式、去中心化、自治的區(qū)塊鏈技術,實現(xiàn)虛擬電廠的完全分布式運行控制,并對通信、節(jié)點故障等因素具有一定的容錯能力,提升了虛擬電廠的安全等級。后續(xù)將進一步探討區(qū)塊鏈與虛擬電廠的深度融合技術,研究針對更多種DERs特性和運行環(huán)境的優(yōu)化運行,實現(xiàn)虛擬的優(yōu)化調度運行,促進可再生能源的吸納。