周步祥,李祖鋼,陳實,臧天磊,曹強
(四川大學 電氣工程學院, 成都 610065)
隨著全球氣候變化加劇、傳統能源的日漸枯竭,可再生能源將逐步代替化石能源,成為滿足社會發展需求的主要能源形式。微電網是一種將分布式電源、負荷、儲能裝置、變流器以及監控保護裝置有機整合在一起的小型發配電系統,被普遍認為是利用分布式電源的有效方式之一[1]。
傳統電量交易多為主從關系,由交易中心主導,是第三方公權力的體現。而微電網內開展產銷者之間的點對點電量交易,無權威機構主導,容易造成用戶之間的不信任問題。區塊鏈融合P2P協議、非對稱加密、共識機制、塊鏈結構等多種技術,無需借助任何第三方機構,即可在互不了解、互不信任的多方實現可信、對等的價值傳輸[2-4]。區塊鏈的技術形態與能源領域開放、平等、互聯和共享的理念相契合[5],為構建公開、透明、高效的微電網電量交易市場,提供了解決途徑。
國內外相關領域專家學者,對于區塊鏈技術如何應用于微電網電量交易進行了諸多研究。文獻[6]針對微電網電量交易中的報價問題,提出了自適應進取性交易策略,并通過連續雙向拍賣機制完成交易匹配。文獻[7]為實現光伏微電網中用戶間的電力交易,引入了不完全信息博弈模型。文獻[8]從局域多微電網市場結構出發,建立了多方非合作博弈模型,并通過改進蟻群算法對上述多主體博弈模型進行求解。文獻[9]考慮微電網市場經濟性和能源利用情況,構造基于雙向時變信息交互下狀態量序數勢博弈的微電網運行優化模型,并通過策略學習算法進行求解驗證。文獻[10]研究了基于圖的改進型拍賣算法,可綜合考慮距離、時間、經濟等因素實現電能的合理分配。文獻[11]采用多階段混合拍賣機制,實現微電網內資源的最優配置。文獻[12]采用聯盟區塊鏈技術解決微電網等場景下P2P電量交易具有的安全與隱私問題,提出基于信用值的交易機制,并通過斯塔克伯格博弈實現最優報價策略。
上述研究取得了較好成果,但大多采用拍賣機制或非合作博弈理論實現區塊鏈環境下的微電網電量交易。對于同一問題,參與者若采用合作博弈一般可以獲得比采用非合作博弈更大的利益[13]。已有的博弈論相關研究采用中心化方式進行數據存儲與處理,交易中心在受到攻擊時易發生單點故障,影響系統的安全運行;此外,中心化存儲的數據有被篡改的可能,且各個系統之間存在數據壁壘,難以保證數據的安全共享。相比之下在區塊鏈網絡中,數據存儲于多個節點,與微電網P2P電量交易中的分布式架構相適應;采用背書策略與共識算法對數據進行了安全校驗以及實時同步,可實現多個組織間數據的安全實時共享;通過哈希函數計算每個區塊數據對應的哈希值,進而由哈希值將各個區塊連接成區塊鏈,這種特殊設計的數據結構避免了數據篡改。區塊鏈技術解決了已有研究中存在的問題,提高了系統的數據安全性與可靠性。為此研究基于合作博弈的微電網電量交易機制,以降低談判成本,迅速達成交易,確保電力供需的穩定[14]。
文章首先構建微電網P2P電力交易系統的總體架構,對區塊鏈網絡、智能合約邏輯進行設計;進一步,通過微電網中各用戶主體的效益,優化交易過程中的用戶匹配;接著,采用合作博弈中的核仁法實現微電網P2P(Peer-to-Peer)電力交易定價模型。最后,通過數值仿真對文中的方案進行了驗證。
基于聯盟區塊鏈的微電網電量交易系統總體架構如圖1所示,系統主要由數據層和物理層構成。交易主體為具有雙向潮流的電能產銷者、微電網運營商、配電網運營商。交易標的物為電量以及相關的輔助服務。

圖1 系統總體架構
數據層由信息系統、市場機制、定價機制、能量管理系統等構成[15]。其中信息系統依托于區塊鏈技術,可以有效破除用戶之間的信息壁壘,使得市場電價、電量供需情況、政策等信息能夠安全高效地在用戶之間進行共享。從而構建公開、透明、高效的電力市場環境。此外智能合約具有強制自動執行的特點,采用智能合約技術對市場機制、定價機制予以實現,能夠確保P2P電量交易市場的公平。
物理層主要由分布式電源、配電網絡、計量設備、通信基礎設施等構成[16]。以確保達成P2P電量交易的用戶之間,能夠安全、高效地傳輸電能,并能夠實時將采集與計算到的電量、電費、潮流等數據傳遞給數據層,以便進一步地分析處理。需要注意,物理設備需要相關的網絡能力,以進行相關的系統升級以及連接至區塊鏈網絡。物理層與數據層的融合,將構建起應用層。用戶通過使用應用程序,可實現設備的能量管理、獲取區塊鏈網絡服務、采用代理系統輔助用戶決策、對區塊鏈賬本進行數據挖掘等功能。
區塊鏈網絡是微電網P2P電量交易系統設計的核心。相比于其它區塊鏈開發框架,Hyperledger Fabric采用了合約自動執行與共識機制相分離的系統架構,模塊化地實現了共識服務、成員服務等的即插即用[17],可定制開發區塊鏈網絡。此外,相比于以太坊,Hyperledger Fabric區塊鏈網絡更適用于區域能源交易[18]。為此,選用Hyperledger Fabric開發區塊鏈網絡。
文中基于Hyperledger Fabric1.4.3構建區塊鏈網絡,由微電網運營商、配電網運營商、監管部門共3個組織構成。各組織包含了相關的組件,用以實現包含3個通道的聯盟區塊鏈網絡。采用通道技術構建了以交易區塊鏈為主鏈,匹配區塊鏈、電量區塊鏈為從鏈的一主二從區塊鏈存儲結構。根據不同的業務需求,將數據存入相應的區塊鏈,以避免數據量過大對區塊鏈網絡性能造成的影響。
智能合約被定義為“執行合同條款的計算機交易協議”[19],是一段由時間驅動,具有狀態且運行在共享區塊鏈上的代碼,擁有自動處理數據以及控制管理區塊鏈上的資產等功能[20-21]。
區塊鏈技術為智能合約的運行提供了可信的環境,而智能合約確保了系統中的關鍵業務邏輯能夠安全、高效、強制地執行。智能合約的上述特點,有利于P2P電量交易市場機制、定價機制的實現。文中使用智能合約,對用戶報價、用戶匹配、安全校核、電能轉移、交易結算、分析統計,6個部分的業務邏輯進行實現。
所有產銷者用戶需要向監管部門提供身份證明材料、待綁定的設備信息,以完成用戶注冊。注冊通過后,監管機構將向用戶頒發私鑰、證書等材料,此時用戶才能以對應的角色和權限使用區塊鏈網絡中的相關服務。用戶的公鑰及證書存放在監管機構的CA服務器中,便于其它用戶對其進行身份核實。
產銷者在注冊并登錄后,可結合市場信息與自身用電需求,向微電網運營商提交充/放電請求。微電網運營商不間斷收集用戶的報價請求,定時執行用戶匹配算法。配電網運營商將對匹配成功的用戶請求,進行安全校核與過網費核算以生成最終的用戶匹配數據以及交易訂單;微電網運營商將用戶匹配結果存儲至匹配區塊鏈、配電網運營商將交易訂單存入交易區塊鏈。通過底層的P2P協議,將數據共享到網絡上的各個組織,確保數據公開透明、實時共享。
匹配成功的用戶,在設備連接正常、并確認訂單后,開啟P2P電量交易。其電能計量設備將實時記錄電量轉移過程中的電量變化數據,在充放電結束后,調用設備內置的Fabric-SDK,將最終的充/放電電量數據存入電量區塊鏈。
P2P電量交易用戶在完成電量轉移后,將觸發交易結算智能合約,依據區塊鏈中存儲的該用戶此輪交易中的交易訂單以及實際轉移電量,計算充電用戶需要支付的充電費用以及服務費,并對各組織應得的利益進行合理分配,完成交易結算、生成交易賬單并存入交易區塊鏈。
本節對微電網P2P電量交易中,涉及到的最優匹配與交易電價制定問題進行分析。首先,構建產銷者的相對收益函數,并對用戶報價以及報價排序進行建模;接著,以用戶總相對收益最大為目的,構建目標函數。將最優化問題轉換為二分圖下的最佳完美匹配問題,并采用改進Kuhn-Munkres算法進行求解;最后,采用合作博弈中的核仁法,對P2P交易電價進行制定,以確保合作模式下用戶利益的合理分配。
每輪完整交易的時間間隔為Δt小時,每天共開展n輪P2P電量交易,其中n∈[0,24/Δt]。定義微電網內的購電用戶集合為φ?(CUi|i∈)={1,2…m},購電用戶的充電量取值范圍為報價范圍為售電用戶的集合為ψ?(DUj|j∈),={1,2…n},售電用戶的放電量取值范圍為報價范圍為購電用戶與售電用戶之間的P2P成交價格為Pij,成交的電量為Eij。Pg(n)表示第n輪交易的實時電價,Pfin(n)為第n輪交易的上網電價。
采用式(1),計算產銷者的相對收益:
(1)
role=0時,用戶具有充電需求,其P2P交易電量為EijkWh,相對收益為原本從電網的購電費用減去采用P2P方式的購電費用。role=1時,用戶具有放電需求,其中kdep(元/kWh)為設備的折舊費用,其相對收益為考慮設備放電的折舊費用后,相比于余量上網,采用P2P方式多獲取到的利潤。
微電網運營商,將不間斷的收集用戶的報價數據。購電用戶與售電用戶報價,分別為:
Bquote=[QID,UID,Ci,Pi,role,time,rank]
(2)
Squote=[QID,UID,Dj,Pj,role,time,rank]
(3)
式中QID為報價的唯一標識、UID為用戶標識;Ci為用戶充電需求、Dj為用戶放電需求;Pi為用戶充電報價;Pj為用戶放電報價;role為用戶角色、時間戳為time、rank為待計算的報價排序因子。
如圖2所示,當用戶報價截至后,微電網運營商將對收集到的用戶報價進行報價排序、用戶匹配、報價調整、制定合約電價的操作。

圖2 基于二分圖的用戶匹配
用戶的排序因子,通過式(4)進行計算。
(4)

考慮到購電用戶總希望以低價購買到電量,售電用戶總希望以高價出售電量。因此購電用戶中當前報價越高、電量需求越大、報價時間越靠前的用戶越有可能達成P2P電量交易,因此對Bquote按照排序因子rank降序排列;同理售電用戶中當前報價越低、電量供給越大、報價時間越靠前的用戶越有可能達成P2P電量交易,因此對Squote按照排序因子rank進行升序排列。對報價進行排序,有利于提升用戶匹配算法的收斂速度。
采用基于二分圖的改進Kuhn-Munkres算法,對用戶報價進行匹配。其目標函數見式(5),表示微電網運營商通過合理的資源分配,使得用戶的相對收益最大。

(5)
式中的Q為m×n維的權值矩陣,其中的元素Q[i,j]>0,表示購電用戶i(0≤i 該最優化問題的約束條件,如下: T[i,j]∈{0,1} (0≤i (6) (7) (8) 其中式(6)為0-1約束,表示用戶之間只存在P2P電量交易或不開展交易中的一種狀態;式(7)為充電需求約束,表示購電用戶i(0≤i 采用基于二分圖的改進Kuhn-Munkres算法[22],對上述優化問題進行求解。問題的求解算法見附表1,可以實現多對多的最大用戶匹配。 博弈論也稱對策論,用于研究多主體利益聯系或沖突下的決策問題。根據各主體間的合作或非合作關系,博弈論可分為合作博弈與非合作博弈兩大類[13]。區塊鏈技術有效降低了用戶間的信任成本、確保了共享數據的可信、為產銷者之間開展合作提供了環境。購/售電用戶開展合作的關鍵是能產生相對收益,并通過交易電價的制定實現相對收益的合理分配。對于合作博弈,有較多的求解方法。相比而言,核仁法所求解必定存在且唯一,具有較好的特性[14]。因此,選用核仁法制定P2P交易電價,以提升用戶的滿意度。 Schmeidler于1969年,首次提出采用核仁法求解合作博弈問題。合作博弈問題可表示為(N,v),其中N為參與者集合即N=∪,v為特征函數即文中的相對收益函數R。核仁定義如式(9),存在為合作博弈的解。 (9) 聯盟S對于分配x的不滿意度指標e(S,x),可采用式(10)計算。 (10) 式中S為購/售電用戶組成的聯盟;x為用戶的相對收益分配方案,代表產銷者的利益分配集合;π(S)為聯盟的合作利潤。e(S,x)的值越小,表示用戶越能從合作博弈中獲得效益,即用戶對于此次利潤分配結果越滿意。 核仁,即為用戶對于利潤分配最滿意情況時的解,實現了帕累托最優。對于核仁的求解,可將其轉換為式(11)的線性規劃問題。 minε (11) 式中ε為不滿意度;S1為m+n個產銷者構成的聯盟;x′i為第i個產銷者分配到的利潤,S2為2m+n種不同的合作方式的集合。 已有雙向拍賣機制中,多以P2P電量交易雙方報價的均值為最終交易電價,其電價制定過程未考慮用戶對于利潤分配的滿意度。 將核仁法求解出的最優利益分配值x′,代入價格利潤公式(12),即可為P2P電量交易雙方制定更為合理的電價。 (12) 式中Qij為P2P交易電量;Pij為P2P交易電價;Pi為購電用戶報價;Pj為售電用戶報價。 選用4臺配置為Intel i7-9700 CPU、32G內存、1TB固態硬盤,CentOS 7.3操作系統的臺式機為實驗載體。編寫網絡及通道配置文件,并采用Docker Compose啟動基于Raft共識算法、具有1.2節所述的3個組織、3個通道的微電網P2P電量交易系統底層Fabric區塊鏈網絡。 采用fabric-chaincode-java編寫鏈碼,實現1.3節設計的智能合約。基于fabric-gateway-java編寫客戶端,實現鏈碼安裝及實例化的功能、并模擬產銷者向Fabric網絡提交用戶報價請求等功能。 基于成都市某區域地圖,構建圖3所示的微電網P2P電量交易仿真測試系統。對15位電動汽車用戶、5位屋頂光伏用戶的出行規律、用電規律以及P2P報價進行模擬。 圖3 仿真系統 交易時隙為1 h;用能偏好因子k1=0.5、k2=0.5;電動汽車用戶的kdep=0.15元/kWh、屋頂光伏用戶的kdep=0.10元/kWh。通過智能合約實現用戶匹配、電量轉移、余量平衡、交易結算等操作交易流程,對微電網1天內的P2P電量交易情況進行仿真。 圖4為P2P電量交易市場發布的實時購電價、實時上網電價以及對當天基礎負荷的預測值。用戶將結合市場信息、自身的電量需求以及區塊鏈中的歷史交易信息,在上網電價與購電價之間報價。 圖4 電力市場基礎數據 首先,以電力市場信息為參考,對微電網內電動汽車、屋頂光伏產銷者的充放電需求以及報價進行模擬。此階段共分為合作與非合作,兩種交易模式。非合作模式下用戶報量、報價為標量值,用戶不斷地調整自身的報價,通過連續雙向拍賣算法實現用戶的撮合;而在合作模式下,用戶提交的報價、報量為區間范圍,由微電網運營商在該范圍內對用戶進行匹配,并通過核仁法計算P2P交易電價。 然后,當報價時間截至時,由微電網運營商對收集到的用戶報價進行匹配,并分析電量需求。 圖5為雙向拍賣機制下的電量需求情況,可以看出充放電用戶之間部分達成P2P電量交易,較多的充放電需求要通過電網公司進行余量平衡。造成此現象的原因在于,存在較多的買方用戶報價低于賣方報價預期,用戶之間難以達成交易。 圖5 電量需求情況 對于相同的報價數據,采用文中的方式再次進行用戶撮合。將總電量需求消納率,定義為P2P充放電需求之和,占總充放電需求之和的百分比。圖6對合作博弈機制與雙向拍賣機制下的總電量需求消納率,進行了對比。合作博弈機制下的平均總電量需求消納率為79.92%,雙向拍賣機制下的平均總電量需求消納率為50.12%。通過合作的方式,將更有利于微電網內電量需求的合理消納。 圖6 總電量需求消納情況對比 隨后,微電網運營商根據交易區塊鏈、電量區塊鏈、匹配區塊鏈中的數據,生成此輪交易中的用戶交易訂單,并觸發智能合約自動完成用戶錢包之間的轉賬操作。 圖7為雙向拍賣機制下,用戶的相對收益情況。可知P2P電量交易方式為充電用戶降低了成本,為放電用戶提升了收益,并提升了微電網的總體社會效益。 圖7 用戶相對收益 對于相同的報價數據,采用合作博弈的方式再次進行用戶撮合。將用戶總相對收益,定義為購電用戶相對收益與售電用戶相對收益之和。圖8對比了不同交易模式下的用戶相對收益情況。從中可以看出,在合作博弈模式下購電用戶、售電用戶的相對收益均有所增加,進而提升了微電網內的用戶總相對收益。 最后,采用Hyperledger Caliper基準測試工具,對用戶匹配智能合約、交易結算智能合約的系統時延、吞吐量性能進行測試。 由圖9可知,隨著交易請求速率的提高,用戶匹配與交易結算的系統時延與吞吐量均有所提升。由于交易結算過程需要進行多鏈數據協同與錢包轉賬操作,因此其時延大于用戶匹配時延、其吞吐量低于用戶匹配吞吐量。當交易請求速率為2 000 tx/s時系統最大時延為74 s,系統的最大吞吐量為1 300 tx/s,能夠滿足交易時間間隔1 h情況下的P2P電量交易需求。 圖8 用戶相對收益對比 圖9 系統性能測試 文中提出了一種基于區塊鏈與合作博弈的微電網P2P電量交易方法,采用區塊鏈技術實現交易過程中信息的共享、通過改進Kuhn-Munkres算法實現用戶報價的最優匹配、應用核仁法制定合理的P2P交易電價。 理論分析與仿真結果表明,將區塊鏈技術用于微電網電量交易的各個環節,有利于構建公開、透明、高效的合作環境。基于通道技術實現一主二從的區塊鏈存儲結構,在確保數據安全的前提下,可保證數據的存儲效率;采用改進Kuhn-Munkres算法進行多對多的用戶匹配,有利于電量資源合理消納;合作博弈的使用,確保了用戶利益的合理分配,有利于用戶之間的達成合作、降低交易成本、提升交易效率。 以上研究,著重于區塊鏈框架下的用戶匹配與基于合作博弈的利益分配,并未考慮具體的阻塞管理與系統的物理約束,這將是接下來需要深入研究的部分。2.3 基于合作博弈的交易電價制定

3 算例分析
3.1 仿真實驗環境
3.2 基礎數據


3.3 實驗結果分析





4 結束語