崔運進,江 帆,黃建德,閻 峻,趙 鋒
1(華東桐柏抽水蓄能發(fā)電有限責任公司,杭州 310003)
2(國網(wǎng)新源控股有限公司,北京 100761)
截至2020年,我國抽水蓄能電站裝機規(guī)模將達4000 萬千瓦[1].隨著抽水蓄能電站規(guī)模的日益增大以及新技術(shù)、新方法的逐步應用和成熟,為抽水蓄能電站進一步實現(xiàn)智能化、自動化提供了需求背景和技術(shù)基礎.目前國內(nèi)主要發(fā)電集團、設備制造商、科研所等相關單位均進行了深入積極研究,并陸續(xù)建成實現(xiàn)了數(shù)據(jù)收集、控制調(diào)度、生產(chǎn)管理等較完備的自動化體系[2].然而由于終端設備的算力存在不足,導致抽水蓄能電站的物聯(lián)網(wǎng)體系智能化程度不高.云計算技術(shù)在一定程度上能夠緩解終端設備計算資源不夠的問題[3],但是由于物理距離的限制,云計算技術(shù)會導致較高的任務處理時延.為此,邊緣計算模式應運而生,邊緣計算可以滿足相關應用場景的低時延需求[4].邊緣計算的主要特點是將移動計算、網(wǎng)絡控制和存儲遷移到網(wǎng)絡邊緣,以便在資源有限的移動設備上實現(xiàn)計算密集型和延遲關鍵性應用.與云計算相比,邊緣計算可以實現(xiàn)更低延遲、移動設備的能耗節(jié)省、上下文感知計算以及移動應用隱私和安全的增強[5].
邊緣計算技術(shù)包含計算卸載、資源管理、移動性管理以及安全與隱私保護4 個方面,其中計算卸載是將移動終端的計算任務卸載到邊緣服務器上,它是邊緣計算的關鍵環(huán)節(jié)[6].并且,計算卸載是邊緣服務器進行數(shù)據(jù)處理的有效方式,通過計算卸載策略實現(xiàn)數(shù)據(jù)分流,有效利用邊緣服務器和本地計算資源,增加數(shù)據(jù)處理效率,減少任務處理時延.邊緣計算技術(shù)通過計算卸載算法對復雜的計算任務進行分配,被分配后的數(shù)據(jù)利用邊緣附近計算資源而不是利用本地資源,大大減少了中心云的數(shù)據(jù)處理壓力[7].
本文利用邊緣計算的概念,將邊緣計算的理念應用到抽水蓄能電站系統(tǒng)里,提出一種基于邊緣計算的卸載算法.首先,針對終端設備不同的任務屬性信息進行優(yōu)先級預處理,在邊緣控制器端基于深度Q 網(wǎng)絡制定任務卸載決策,然后將終端設備的計算任務遷移到邊緣服務器處進行處理,以獲得更低的任務處理時延,并保證任務卸載決策的長期有效性,從而大幅提高抽水蓄能電站中數(shù)據(jù)處理相關工作的有效性與抽水蓄能電站物聯(lián)網(wǎng)管理體系的智能化程度.
目前國內(nèi)外大量研究者對邊緣計算和深度Q 網(wǎng)絡進行了深入研究.文獻[8]中作者提出了一種動態(tài)的端邊協(xié)同任務調(diào)度算法,聯(lián)合優(yōu)化卸載過程中的執(zhí)行時延和傳輸能耗,動態(tài)調(diào)整終端任務調(diào)度策略.文獻[9]中,作者通過數(shù)值優(yōu)化算法,提供了任務卸載過程中的最優(yōu)解.文獻[10]針對計算任務無差別向邊緣服務器卸載的情況,基于一維搜索算法提出最優(yōu)卸載決策.但是對于動態(tài)變化的物聯(lián)網(wǎng)環(huán)境來說,文獻[9,10]的卸載決策不能保證長期有效性.在文獻[11]中提出了一種基于DQN的多用戶單小區(qū)計算卸載與資源分配算法,聯(lián)合優(yōu)化任務執(zhí)行時延與能耗的加權(quán)和,實現(xiàn)了任務總成本的下降.
隨著抽水蓄能電站規(guī)模的不斷擴大以及物聯(lián)網(wǎng)技術(shù)的不斷應用,抽水蓄能電站正在進一步地向智能化的體系轉(zhuǎn)變.文獻[12]對泛在電力物聯(lián)網(wǎng)下的抽水蓄能電站智慧管理模式進行了思考,其中泛在物聯(lián)網(wǎng)提出了全息感知、泛在連接、開放共享、融合創(chuàng)新的技術(shù)路線,對目前抽水蓄能電站的智能化發(fā)展進一步提供了思路.文獻[13]提出一種多能耦合協(xié)同的新一代抽水蓄能電站,極大地增強了傳統(tǒng)抽水蓄能電站的綜合效益性能.文獻[14]研究了關于抽水蓄能電站自動化系統(tǒng)智能化發(fā)展,分析了自動化系統(tǒng)框架的結(jié)構(gòu),實現(xiàn)將抽水蓄能電站各并聯(lián)電力機組加以高度集成化、互動化控制,使其在智能電網(wǎng)中發(fā)揮更為顯著的應用效用.文獻[15]中基于國網(wǎng)新源控股有限公司正在建設的物聯(lián)網(wǎng)架構(gòu),對智慧管控平臺進一步提出了設想,該平臺建設并完善了信息采集、數(shù)據(jù)處理、智能分析等功能,形成了共享、互聯(lián)的智能管控系統(tǒng).文獻[16]針對能源管理,信息管理和安全性等多個不同領域的電網(wǎng)架構(gòu)進行了分析,同時對邊云協(xié)同技術(shù)的應用進行了全面調(diào)研,論證了相應技術(shù)在這些領域的效性與可靠性,為智能電網(wǎng)的發(fā)展指明了方向.文獻[17]將集成信息系統(tǒng)引入抽水蓄能電站的生產(chǎn)管理中做出了嘗試,并提出相應的技術(shù)方案,有效解決抽水蓄能電站的生產(chǎn)管理任務.文獻[18]介紹了小型光伏抽水蓄能系統(tǒng)的設計和頻率控制,提出了系統(tǒng)的雙重用途和智能控制方法.其中儲罐設計計算是針對傳統(tǒng)用水進行的,進行計算是為了預測每個設計情況下的發(fā)電量,進而在不同運行條件下,采用非線性PID 控制器和神經(jīng)網(wǎng)絡進行頻率控制.
本文所提出的系統(tǒng)模型應用于抽水蓄能電站生產(chǎn)活動中,該系統(tǒng)包含電站物聯(lián)網(wǎng)終端設備及邊緣設備.在智能電網(wǎng)的應用場景中,電網(wǎng)對抽水蓄能機組的安全等級、響應方式及速度等提出了新的要求,電站物聯(lián)網(wǎng)終端設備會產(chǎn)生各種各樣的計算密集型任務.如果按照傳統(tǒng)的方式將計算任務上傳至云服務器,會產(chǎn)生較大的處理時延,影響電站的正常運轉(zhuǎn).為優(yōu)化處理程序,減小任務執(zhí)行時延,本文將計算任務卸載至邊緣服務器進行處理.如圖1所示,該系統(tǒng)包含3 個層面:終端層,邊緣層和控制層.其中,終端層包含大量進行數(shù)據(jù)采集任務的傳感器以及對數(shù)據(jù)進行匯總的終端設備,邊緣層為一組高計算性能的邊緣服務器.在該系統(tǒng)架構(gòu)中,終端設備將收集的數(shù)據(jù)匯總并形成對應的計算任務后,由于受限與自身較弱的計算能力,終端設備會將最大容忍時延、計算復雜度、數(shù)據(jù)量大小等任務屬性信息上傳至邊緣控制器,之后由邊緣控制器制定相應的卸載算法決定哪些終端設備的計算任務可以卸載至邊緣服務器.
本文假設抽水蓄能電站廠區(qū)的終端設備集合表示為K={1,2,···,k,···,K},邊緣層的邊緣服務器集合表示為E={1,2,···,e,···,E},第k個終端設備在第i個時隙產(chǎn)生的計算任務表示為Ci,k=(Vi,k,Di,k,Γi,k,Pi,k,e),其中Vi,k表示任務的計算復雜度,單位為比特/輪(bit/cycle),Di,k表示計算任務的數(shù)據(jù)量大小,單位為比特(bit),Γi,k表示計算任務的最大可容忍時延,其單位為毫秒(ms),Pi,k為邊緣控制器給該任務制定的卸載決策,其中Pi,k,e=0表示本地執(zhí)行,Pi,k=1表示計算任務被卸載至邊緣服務器e執(zhí)行.同時我們設定廠區(qū)的終端設備本地計算能力為fkl,單位為轉(zhuǎn)/秒(cycle/s).邊緣服務器的功率設為pe,計算資源表示為F={fe,k|e∈E,k∈K},且滿足約束其中fe,k>0表示終端設備k卸載到邊緣服務器e后被分配的計算能力,單位為轉(zhuǎn)/秒(cycle/s).最后本文假設無論是在本地或者卸載執(zhí)行,計算任務的相關屬性信息保持不變,一旦任務執(zhí)行時延超過最大容忍時延,則將該次任務標記為執(zhí)行失敗.
如果廠區(qū)的終端設備k選擇本地執(zhí)行任務Ci,k,則計算任務的本地執(zhí)行時延可表示為:
在本地計算中,任務的執(zhí)行速率可以表示為:
同時由文獻[19]可知,若終端設備的能耗系數(shù)為α,則終端設備k執(zhí)行任務的能耗可以表示為:
若終端設備k采用卸載方式執(zhí)行計算任務,則該過程可分為3 段:任務上傳、任務執(zhí)行、執(zhí)行結(jié)果下載.
首先在任務上傳過程中,本文將當前終端設備上傳帶寬設定為Bk,信道傳輸噪聲設定為N0,無線信道增益設定為gk,終端設備發(fā)射功率為pk,則上傳速率可表示為:
上傳時延表示為:
在任務執(zhí)行過程中,計算任務的執(zhí)行時延我們可以表示為:
本文將任務結(jié)果下載過程的執(zhí)行時延忽略不計,因此終端設備k在任務卸載過程中的執(zhí)行時延可以表示為:
能耗表示為:
由于計算任務屬性的不同,其所需的計算資源也不一樣,本文基于層次分析法(Analytic Hierarrchy Process,AHP)[20]對計算任務進行預處理,給計算復雜度更高、最大容忍時延更小的計算任務賦予更高的權(quán)重,從而為邊緣控制器制定卸載決策更合理的依據(jù).
本文將計算任務復雜度Vi,k、最大容忍時延Γi,k、數(shù)據(jù)量大小Di,k作為計算任務權(quán)重系數(shù)的3 個考量因素,其重要程度依次下降.首先,可以得到評價因素判斷矩陣A=(aij)3×3,如式(1)所示:
然后根據(jù)方根法可以求得矩陣對應的權(quán)重向量元素.如式(10)所示:
根據(jù)式(10),可以得到廠區(qū)所有終端設備計算任務的權(quán)重矢量矩陣:
接著如式(9)構(gòu)造出目標層與準則層之間的判斷矩陣B1,B2,B3=(aij)k×k,并求出判斷矩陣B的權(quán)重向量,如式(12)所示:
最后,根據(jù)式(13)可得到廠區(qū)所有終端設備計算任務的權(quán)重向量:
在3.1 節(jié)中,本文選取了計算最大容忍時延、任務復雜度、數(shù)據(jù)量大小3 個因素對終端的計算任務進行了預處理,其重要性依次下降,得到了對應的計算權(quán)重.因此考慮以邊緣服務器計算資源及能耗為約束、以時延為優(yōu)化目標建模時,具體問題可以如下表示:
其中,約束2 (C2)、約束4 (C4)分別表示邊緣服務器分配的計算資源以及任務執(zhí)行總能耗不可超過限定值.
式(13)是一個典型的混合整數(shù)非線性規(guī)劃問題,多項式時間內(nèi)無法用常規(guī)的數(shù)值優(yōu)化方法求出[21].對于需要動態(tài)監(jiān)測的抽水蓄能電站而言,本文考慮采用深度強化學習對問題進行求解,將邊緣控制器作為智能體,協(xié)調(diào)廠區(qū)內(nèi)的所有邊緣服務器.在本節(jié)中,我們首先對強化學習三要素進行建模.
(1)狀態(tài)
在本文中,考慮到邊緣服務器剩余計算資源隨著終端計算任務卸載決策的變化而變化,將邊緣服務器在每個時隙開始時具有的剩余計算資源設定為當前狀態(tài),表示如式(15):
其中,S(t)表示第t個時隙的狀態(tài)空間,se(t)表示邊緣服務器e在第t個時隙開始時剩余的計算資源.
(2)動作
本文訓練算法采用Double DQN,其核心迭代算法使用的是Q 學習算法[22].由式(13)可知,本文主要優(yōu)化的變量分別為邊緣控制器的卸載決策以及邊緣服務器的計算資源分配決策,因此將動作向量定義為;
其中,P表示邊緣控制器制定的卸載決策向量,fk表示邊緣服務器分配給第k個終端設備的計算資源,pk表示第k個終端的發(fā)射功率.
(3)獎勵
邊緣控制器可以通過獎勵值的期望來對未來動作進行規(guī)劃,其目標是最大化當前獎勵值.結(jié)合本文應用場景,我們計算任務的本地執(zhí)行速率與上傳速率的加權(quán)和作為獎勵函數(shù),定義如下:
接下來可以得到該問題的長期累積獎勵,表示為:
在本文中,動作、狀態(tài)值、獎勵值存放于回訪記憶單元中,通過Q 學習算法經(jīng)歷多個迭代過程來反復訓練Q 值網(wǎng)絡,最后得到最佳卸載決策,可以表示為:
本文算法流程描述如算法1 所示.
算法1.任務卸載算法輸入:終端設備計算任務的計算復雜度V、數(shù)據(jù)總量D 及最大容忍時延,終端設備的上傳功率p.根據(jù)式(9)~式(13)得到每個計算任務的優(yōu)先級W,即計算任務的計算資源分配權(quán)重.輸出:終端設備計算任務的卸載決策P.Γ 1.初始化經(jīng)驗池存儲空間容量并且用隨機權(quán)重 初始化動作-價值函數(shù).2.for each episode:S(t)θ Qπ(s,a)3.初始化狀態(tài).4.for each iteration:ε a=maxQ(s,a;θ)5.以的概率選擇隨機動作,否則選擇潛在回報最大的動作.;6.執(zhí)行動作a,得到獎勵值R與S'.7.將放入經(jīng)驗池中,并從經(jīng)驗池中選取最小批次數(shù)量的經(jīng)驗對Double DQN 神經(jīng)網(wǎng)絡進行訓練以更新權(quán)值.θ θ 8.每隔L 步,將評估網(wǎng)絡的權(quán)值 復制給目標網(wǎng)絡.9.如果是終止狀態(tài),結(jié)束本輪迭代過程10.end for 11.end for
本節(jié)通過Python 編程語言對本文算法進行仿真以評估算法性能.本文考慮抽水蓄能電站中有單小區(qū)多邊緣服務器場景.基站覆蓋范圍內(nèi)部署一個邊緣服務器,且覆蓋范圍內(nèi)抽水蓄能電站廠區(qū)的終端設備均勻分布,其中邊緣控制器能夠調(diào)度所有基站及邊緣服務器資源.假定每個基站覆蓋范圍為1000 m,每個終端設備計算能力為1 GHz,邊緣服務器最大計算資源為5 GHz.終端設備計算功率為3 W,發(fā)射功率為0.3 W,攜帶的計算任務數(shù)據(jù)大小(以兆比特為單位)服從[0,2]的均勻分布,計算任務復雜度(以兆輪為單位)服從[900,1100]的均勻分布.下面將本文算法分別與全部本地計算、全部卸載計算、Q 學習算法進行比較.
圖2為平均總延遲與抽水蓄能電站廠區(qū)的終端設備待處理的計算任務數(shù)據(jù)大小的關系.任務的總延遲隨著輸入數(shù)據(jù)大小的增加而增加.在數(shù)據(jù)量最大時,本文算法相比較于Q 學習算法延遲減少了300 ms.分析可知,一方面我們引入了邊緣計算,提高了系統(tǒng)的計算容量,能夠優(yōu)化任務執(zhí)行效率.另一方面,基于DQN 算法,可以根據(jù)環(huán)境變化自適應制定卸載決策,最大化利用系統(tǒng)資源,并保證卸載決策的長期有效性,對抽水蓄能電站的物聯(lián)網(wǎng)體系智能化建設有著較大的幫助.
圖2 總延遲和任務數(shù)據(jù)大小的關系
在圖3中,本文以任務復雜度作為變量,對Q 學習算法和本文算法進行了比較.從圖3可以看出,隨著任務計算復雜度的上升,卸載決策的制定變得更加艱難,任務執(zhí)行失敗概率都隨之增加.但是本文算法的任務執(zhí)行失敗概率低于Q 學習算法,同時本文算法執(zhí)行失敗率的上升趨勢也明顯低于Q 學習算法,這是因為本文算法對抽水蓄能電站廠區(qū)終端設備所有的計 算任務做了自適應優(yōu)先級預處理,給優(yōu)先級更高的計算任務分配了更多的計算資源,使計算任務執(zhí)行成功概率更高,提高卸載決策正確率,有效減小了廠區(qū)終端設備計算任務執(zhí)行時延,從而能夠使得抽水蓄能電站能夠在邊緣側(cè)完成一系列控制調(diào)度、自動化監(jiān)測等時延敏感型應用的部署.
圖3 3 種情況下總延遲不滿足要求發(fā)生的概率
面向抽水蓄能電站中終端設備最大容忍時延及最大能耗約束的情況,本文提出了一種基于邊緣計算的任務卸載算法.通過引入邊緣計算,在完成終端自身攜帶計算任務的優(yōu)先級處理后,邊緣控制器通過DQN 算法制定卸載決策,以最小化終端設備的任務執(zhí)行時延.通過對該算法的大量仿真分析及數(shù)值驗證,本文所提出的任務卸載算法在不同的情景下都優(yōu)于傳統(tǒng)的方案.今后的研究將會考慮對DQN的訓練算法進行相應改進,同時抽水蓄能電站中復雜的無線電干擾等環(huán)境因素也會加以綜合考慮.