李波,趙瑞鋒,黎皓彬
(廣東電網(wǎng)有限責任公司電力調(diào)度控制中心,廣東 廣州510600)
隨著配用電物聯(lián)網(wǎng)的發(fā)展,海量分布式電源與配用電智能設備大量接入,對電力自動化系統(tǒng)的信息感知、分析、處理能力提出了更高的要求[1-4]。同時,配電網(wǎng)增量接入對象產(chǎn)生異構多源的數(shù)據(jù)信息也為實現(xiàn)配用電業(yè)務的多元化、生態(tài)化提供了支撐[5-8]。然而,現(xiàn)有電力自動化系統(tǒng)存在軟硬件強耦合、計算資源冗余等問題,難以適應配電物聯(lián)網(wǎng)的發(fā)展需求,其技術體系和架構形態(tài)亟待重構[9-10]。
云邊融合的物聯(lián)網(wǎng)平臺突破了傳統(tǒng)集中式電網(wǎng)分析控制模式[11-12],以業(yè)務管理協(xié)同、計算資源協(xié)同、數(shù)據(jù)智能協(xié)同的方式,充分發(fā)揮云主站和邊緣計算終端各自的優(yōu)勢,從而滿足配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務實時性、安全性、可靠性的需求,并支撐著現(xiàn)有電力自動化系統(tǒng)從“主子站”架構的集中控制模式向“云管邊端”架構的分布式協(xié)同控制模式轉(zhuǎn)變[13-16]。
為了滿足形態(tài)多樣的業(yè)務融合和快速變化的服務要求,微服務成為組織和構建配電物聯(lián)網(wǎng)業(yè)務的關鍵技術,通過將業(yè)務分解為多個微服務和微服務間的相互調(diào)用,可以實現(xiàn)業(yè)務功能。在配用電物聯(lián)網(wǎng)軟件定義、軟硬件解耦模式下,微服務可自由靈活部署在云計算中心和邊緣計算終端容器中。合理的微服務云邊部署方案一方面能夠降低業(yè)務延時,更好地滿足業(yè)務實時性、可靠性的要求,另一方面能提高計算資源的利用率,發(fā)揮云計算中心和邊緣計算終端冗余資源的價值。因此,研究配用電物聯(lián)網(wǎng)的微服務云邊部署方法具有十分重要的意義。
目前,部署問題可分為計算節(jié)點部署和業(yè)務應用部署2種,學者們首先研究了云計算或邊緣計算的節(jié)點部署問題。文獻[17]考慮密度和距離2種因素,提出基于聚類思想的邊緣控制中心部署方法,以提高通信質(zhì)量和減輕接入壓力;文獻[18]針對電纜實時監(jiān)控的場景建立以經(jīng)濟成本為目標和平均延時為約束的計算節(jié)點規(guī)劃模型,采用遺傳算法求解邊緣計算節(jié)點的部署方案;文獻[19]提出一種多目標進化算法,以實現(xiàn)服務質(zhì)量和可靠性最大化、成本和能耗最小化為目標,求解5G網(wǎng)絡邊緣設備的部署方案。但是上述文獻研究場景并非配用電物聯(lián)網(wǎng)。在配用電物聯(lián)網(wǎng)中邊緣計算終端應用場景主要為配電臺區(qū)和配電房,受地理位置、安裝空間、計算資源分布、安全分區(qū)接入等因素的制約,計算節(jié)點的部署位置往往相對固定,可作為已知條件,由此開展關于業(yè)務應用部署的研究。文獻[20]采用深度強化學習和神經(jīng)網(wǎng)絡訓練業(yè)務的部署策略,來降低業(yè)務的響應延時;文獻[21]提出將應用部署于云邊的模糊控制系統(tǒng),以降低業(yè)務應用執(zhí)行延時;文獻[22]針對應用應該在邊緣設備執(zhí)行還是云計算中心執(zhí)行的問題,提出一種動態(tài)規(guī)劃算法來求解計算任務的部署方案。上述文獻忽略了不同業(yè)務應用間的時序邏輯關系。文獻[23]指出配用電物聯(lián)網(wǎng)業(yè)務可被分解為多個微服務,且各微服務間并非獨立,具有邏輯約束關系。
針對已有研究的不足,本文提出配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的微服務云邊部署方法。首先將配用電監(jiān)控業(yè)務拆分成多個微服務,建立配用電監(jiān)控業(yè)務的時序邏輯模型和微服務的云邊部署模型;然后采用改進差分進化算法來求解業(yè)務延時最小化的微服務云邊部署方案;最后通過仿真實驗,驗證本文方法的有效性。
本文針對配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的功能需求,將配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務拆分為7個微服務,每個微服務對邊緣計算終端、云計算中心而言是一種計算任務,見表1。
表1 配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的微服務
7個微服務之間存在彼此的數(shù)據(jù)依賴關系,據(jù)此建立配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的微服務時序邏輯模型,該模型將數(shù)據(jù)依賴關系轉(zhuǎn)化為孤立型、串聯(lián)型、并聯(lián)型和復合型4種連接支路。定義4種支路的組成規(guī)則如下:①每個單一微服務原則上可視為一個孤立支路,而并聯(lián)支路、串聯(lián)支路和復合支路由多個孤立支路構成;②并聯(lián)支路由2個及以上的孤立支路并聯(lián)而成;③串聯(lián)支路只存在于復合支路中,且由2個及以上的孤立支路或經(jīng)等效后的孤立支路串聯(lián)而成;④復合支路上至少存在一個串聯(lián)支路,可由串聯(lián)支路和孤立支路并聯(lián)而成。
依據(jù)所提出的4種支路組成規(guī)則和配用電監(jiān)控業(yè)務的流程,建立其微服務的時序邏輯,如圖1所示。圖1中,0、1、2、3、4、5標號為各支路間的節(jié)點編號。
進一步建立時序邏輯模型,為計算各支路和業(yè)務的總延時大小奠定基礎,包括連接矩陣模型、串并關系模型和支路延時模型。
連接矩陣模型L用于描述各微服務所處支路的連接始末關系。L共2行元素,列數(shù)取決于業(yè)務的微服務個數(shù),每列表示1個微服務。L的第1行元素表示各微服務的起始節(jié)點編號,第2行元素表示各微服務的終止節(jié)點編號。由圖1可得
圖1 配用電監(jiān)控業(yè)務的微服務時序邏輯
(1)
串并關系模型X用于描述各微服務所處的支路類型。X共2行元素,列數(shù)取決于業(yè)務的微服務個數(shù),每列表示1個微服務。X的第1行元素為串聯(lián)支路編號,第2行元素為并聯(lián)支路編號,該列所處2行元素均為0表示孤立支路,其中1行元素不為0表示串聯(lián)或并聯(lián)支路。由圖1可得
(2)
式中:微服務1、2、5、7處于孤立支路,因此其對應列中的2行元素均為0、0;微服務3、4處于同一個并聯(lián)支路,且為第1個并聯(lián)支路,因此其對應列中的2行元素均為0、1;微服務6處于串聯(lián)支路,且為第1個串聯(lián)支路,因此其對應列中的2行元素為1、0。
延時模型用于表示各支路的延時大小,通過對各支路的延時大小進行等效和整合,可最終得到配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的延時。
串聯(lián)支路模型可通過式(3)計算:
tk1,ser=∑ti,ser,i∈K1.
(3)
式中:tk1,ser為第k1個串聯(lián)支路的延時;集合K1為第k1個串聯(lián)支路上的微服務集合;ti,ser為屬于集合K1的第i個微服務的延時。
并聯(lián)支路模型可通過式(4)計算:
tk2,par=maxtj,par,j∈K2.
(4)
式中:tk2,par第k2個并聯(lián)支路的延時;集合K2為第k2個并聯(lián)支路上的微服務集合;tj,par為屬于集合K2的第j個微服務的延時。
復合支路模型可通過式(5)計算:
tk3,com=maxth,com,h∈Tis∪Ts.
(5)
式中:tk3,com為第k3個復合支路的微服務總延時;集合Tis為屬于該復合支路的孤立支路的延時集合;集合Ts為屬于該復合支路的串聯(lián)支路延時集合;th,com為Tis與Ts的并集中第h個微服務的延時。
業(yè)務延時可通過對干路上所有延時環(huán)節(jié)的累加獲得,計算式為
(6)
式中:t為該業(yè)務延時;tk4,is為第k4個孤立支路上微服務的延時;N4、N2和N3分別為干路上的孤立支路總數(shù)、并聯(lián)支路總數(shù)和復合支路總數(shù)。
本文的優(yōu)化問題建立在云邊協(xié)同機制上,需要將微服務部署到云節(jié)點或邊緣節(jié)點,并分配合理的計算資源,以滿足配用電監(jiān)控業(yè)務的實時性要求。云節(jié)點和邊緣節(jié)點通過骨干通信網(wǎng)進行通信,通信資源也對業(yè)務延時有影響。
本文所建優(yōu)化模型的決策變量為表示第i個微服務部署于邊緣計算終端或云計算中心的0-1變量si,e、si,c,以及表示第i個微服務獲得的邊緣計算終端或云計算中心容器計算資源量的連續(xù)變量ci,e、ci,c。
本文以最小業(yè)務延時為微服務云邊部署模型的目標函數(shù),即
mint.
(7)
孤立支路延時為與該孤立支路對應的微服務i的計算延時ti,cal,is和數(shù)據(jù)傳輸延時ti,tra,is之和,即:
tk4,is=ti,cal,is+ti,tra,is;
(8)
(9)
(10)
式中:di,j為第i個微服務與第j個微服務云邊通信的0-1變量;θi,cpu、Di分別為微服務i的時鐘周期數(shù)和數(shù)據(jù)傳輸量;Ri,j為微服務i、j間的通信速度,可細分為下行通信速度和上行通信速度,下行通信速度為云計算中心向邊緣計算終端傳輸數(shù)據(jù)的速度,上行通信速度為邊緣計算終端向云計算中心傳輸數(shù)據(jù)的速度。
串聯(lián)支路延時為串聯(lián)支路上所有微服務的計算延時和數(shù)據(jù)傳輸延時之和,即
tk1,ser=∑ti,cal,ser+∑ti,tra,ser,i∈K1.
(11)
并聯(lián)支路延時為并聯(lián)支路上微服務的最大計算延時和最大數(shù)據(jù)傳輸延時之和,即:
tk2,par=maxti,cal,par+
max(tk2,up,par,tk2,down,par),i∈K2;
(12)
(13)
(14)
(15)
式中:tk2,up,par、tk2,down,par分別為該并聯(lián)支路上的微服務上行通信延時、下行通信延時;Di,up、Di,down分別為該并聯(lián)支路上的微服務i的數(shù)據(jù)傳輸量;Ri,j,up、Ri,j,down分別為微服務i、j間的上行通信速度、下行通信速度。
復合支路延時為屬于該復合支路的孤立支路和串聯(lián)支路的延時最大值,
tk3,com=max(tk1,is,tk4,ser),k1,k4∈B3.
(16)
式中:B3為屬于該復合支路的孤立支路和串聯(lián)支路集合。
a)邊緣計算終端的計算資源應滿足部署于邊緣計算終端的微服務計算資源需求,計算資源約束表達式為
(17)
式中:n為微服務總數(shù);CE為邊緣計算終端計算資源。
b)云計算中心的計算資源約束。云計算中心的計算資源應滿足部署于云計算中心的微服務計算資源需求,計算資源約束表達式為
(18)
式中CD為云計算中心計算資源。
c)微服務部署集合約束。微服務部署集合約束可用0-1變量si,e、si,c來表示,約束表達式為
si,e+si,c=1.
(19)
d)云邊通信約束。若前驅(qū)微服務與后置微服務同部署于邊緣計算終端或云計算中心,則無需進行云邊通信,否則需進行云邊通信。云邊通信的約束表達式為:
li=si,e+2si,c,
(20)
di,j=li-lj.
(21)
式中:li為微服務i的鏈路變量,相應lj的計算方法與之相同;di,j=1表示前驅(qū)微服務與后置微服務部署于不同位置,需要進行云邊通信,di,j=0表示前驅(qū)微服務與后置微服務部署于相同位置,不需要進行云邊通信。
差分進化算法具有結(jié)構簡單、容易實現(xiàn)、收斂快速等特點,本文采用改進差分進化算法求解,主要步驟如下:
步驟1,輸入仿真參數(shù)及矩陣L、X;
步驟2,初始化迭代次數(shù)g=1,產(chǎn)生初始種群X0;
步驟3,對種群進行變異、交叉操作;
步驟4,使用矩陣X獲得最大串聯(lián)、并聯(lián)、孤立支路數(shù);
步驟5,使用式(3)—(5)和L、X計算串聯(lián)、并聯(lián)、復合支路延時;
步驟6,使用式(6)和L、X計算業(yè)務延時;
步驟7,輸出業(yè)務延時,并對種群進行選擇操作;
步驟8,判斷迭代是否滿足收斂條件,若收斂則輸出結(jié)果,結(jié)束算法流程,若不收斂則返回至步驟4,繼續(xù)迭代。
本文設置的仿真場景包含云節(jié)點和邊緣節(jié)點,二者通過骨干通信網(wǎng)通信,協(xié)作完成配用電監(jiān)控業(yè)務。在骨干通信網(wǎng)中存在上行通信鏈路和下行通信鏈路。本文配用電監(jiān)控業(yè)務的微服務仿真參數(shù)見表2;差分進化算法參數(shù)設置包括:迭代次數(shù)為400,種群大小為20,交叉概率為0.2,縮放因子上、下限分別0.8和0.2。
表2 業(yè)務包含的微服務參數(shù)
采用本文方法求解微服務云邊部署并對比其他3種部署策略的結(jié)果,見表3,其中策略1為邊部署策略,策略2為云部署策略,策略3為均衡部署策略。采用粒子群優(yōu)化(partical swarm optimization,PSO)算法求解,結(jié)果見表4。
表3 改進差分進化算法求解微服務云邊部署結(jié)果
表4 PSO算法求解微服務云邊部署結(jié)果
由表3可知:采用策略1時,邊緣計算終端的計算資源有限,配用電監(jiān)控業(yè)務的總延時高達63.78 s;采用策略2時,云計算中心提供了充足的計算資源,但由于配用電監(jiān)控業(yè)務的執(zhí)行結(jié)果數(shù)據(jù)量大,需要從云計算中心依靠下行通信傳輸至邊緣計算終端,該微服務的部署方案業(yè)務延時也比本文方法高出10.95 s;采用策略3時,由于部署方案并未得到優(yōu)化,其業(yè)務延時也較高。通過微服務的云邊部署優(yōu)化,能有效發(fā)揮邊緣計算終端和云計算中心的資源協(xié)同優(yōu)勢,降低業(yè)務延時。
對比表3和表4可知,采用改進差分進化算法和PSO算法求解本文模型所得的微服務云邊部署位置結(jié)果一致;改進差分進化算法求得的業(yè)務延時結(jié)果比PSO算法求得結(jié)果較??;本文優(yōu)化模型目標為最小化業(yè)務延時,而PSO算法尋優(yōu)過程與改進差分進化算法相比較容易陷入局部最優(yōu)。因此,本文采用改進差分進化算法在尋優(yōu)深度和求解精度上的效果更好。
本文分析云邊計算資源對微服務部署的影響,分別設定邊緣計算終端的計算資源為2 GHz和4 GHz,改變云計算中心的計算資源,分析云邊計算資源對微服務部署結(jié)果的影響,見表5。
表5 云邊計算資源對微服務部署的影響
由表5可知:在相同的邊緣計算終端計算資源下,隨著云計算中心計算資源增加,部署于云計算中心的微服務數(shù)量增加,業(yè)務延時減少;在相同的云計算中心計算資源下,隨著邊緣計算終端計算資源增加,部署于邊緣計算終端的微服務數(shù)量增加,業(yè)務延時減少。從部署結(jié)果也可以得出如微服務6、微服務7這種計算所需時鐘周期數(shù)較多的微服務,一般部署于云計算中心,如微服務1、微服務2、微服務4這種計算所需時鐘周期數(shù)較少的微服務,一般部署于邊緣計算終端。
本文分析云邊通信資源對微服務部署的影響,分別設定下行通信速度為12 MB/s和15 MB/s,改變上行通信速度,分析云邊通信資源對微服務部署的影響,結(jié)果見表6。
由表6可知:在相同的下行通信速度下,上行通信速度增加雖沒有改變微服務部署的方案,但能降低業(yè)務延時;在相同的上行通信速度下,下行通信速度增加也沒有改變微服務的部署方案,但同樣能降低業(yè)務延時。影響微服務部署方案的主要因素是邊緣計算終端和云計算中心的計算資源,而通信資源對業(yè)務部署方案的影響較小。
表6 云邊通信資源對微服務部署的影響
本文提出一種配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的微服務云邊部署方法,建立配用電物聯(lián)網(wǎng)監(jiān)控業(yè)務的微服務模型,采用改進差分進化算法求解建立的微服務云邊部署模型。仿真結(jié)果表明,所提方法相比邊部署策略、云部署策略和均衡部署策略能有效降低業(yè)務的延時,云邊的計算資源相較于通信資源對微服務部署結(jié)果的影響更顯著,且本文方法在尋優(yōu)深度和求解精度上比現(xiàn)有PSO算法更好。