許曉萍,葉泓偉
(1.福州職業(yè)技術(shù)學院 機器人學院,福建 福州 350108;2.福州大學 電氣工程與自動化學院,福建 福州 350108)
信息時代網(wǎng)絡(luò)信息傳輸量和業(yè)務(wù)應(yīng)用要求飛速增長,推進云計算中心規(guī)?;l(fā)展,但隨之而來的能源消耗過高問題也日益突出.在“碳達峰、碳中和”節(jié)能減排的背景下,云計算中心綠色運行已成為其生存和發(fā)展的關(guān)鍵.機柜設(shè)備作為云計算中心提供云計算服務(wù)載體,機柜設(shè)備能耗直接決定云計算中心總體能效.實時監(jiān)控、準確預(yù)測機柜能耗,動態(tài)調(diào)整機柜投入、減少能源消耗,有助于優(yōu)化云計算中心能源管理方案與提高能效指標.如何精確預(yù)測機柜設(shè)備能耗,成為云計算中心能耗管理和能效優(yōu)化的關(guān)鍵.因云計算中心用戶需求差異大,使得云計算中心能耗時間序列具有較強的隨機性、非平穩(wěn)特點,這些因素加大能耗預(yù)測難度.
常見的能耗預(yù)測方法有基于回歸的預(yù)測法[1]、時間序列法[2]和基于人工智能的預(yù)測方法.隨著深度學習技術(shù)的發(fā)展,人工智能預(yù)測方法逐漸成為能耗預(yù)測的主流方法.文[3-4]提出基于神經(jīng)網(wǎng)絡(luò)的能耗預(yù)測模型,具有較強的學習與自適應(yīng)能力;但單一的神經(jīng)網(wǎng)絡(luò)預(yù)測模型,無法有效學習非平穩(wěn)能耗序列中的所有信息,因此難以獲得最佳精度.葉瑞麗等[5]采用小波變換與Elman神經(jīng)網(wǎng)絡(luò),基于信號處理技術(shù)的能耗組合預(yù)測模型,有效實現(xiàn)對能耗序列中不同特征信息的學習,進一步提高預(yù)測精度.但小波分解需依靠經(jīng)驗人為選擇小波基函數(shù),模型的適用范圍有所限制.因此,本文融合信息處理和深度學習方法,開展機柜能耗序列特征提取、能耗預(yù)測建模、實驗驗證等研究,設(shè)計一種基于變分模態(tài)分解與粒子群優(yōu)化的門控循環(huán)單元的能耗預(yù)測模型能耗組合預(yù)測模型,旨在實現(xiàn)對非平穩(wěn)能耗信號的特征提取且有效提高模型的精度與通用性.
變分模態(tài)分解(variational modal decomposition,VMD)是一種自適應(yīng)、非遞歸的信號分解算法,相比于經(jīng)驗?zāi)B(tài)分解(empirical mode decomposition,EMD),魯棒性更好,能有效提取信號中粗略與精細信息且能避免模態(tài)混疊問題.云計算中心進行能耗建模的第一步是對能耗時間序列f進行VMD特征提取,提取到K個本征模態(tài)函數(shù)(intrinsic mode functions,IMF)uk,滿足如下約束關(guān)系:
(1)
其中:{uk}代表分解后得到的所有固有模態(tài)函數(shù);{ωk}為固有模態(tài)函數(shù)對應(yīng)的中心頻率;*為卷積運算.為求解{uk}的變分問題,引入二次懲罰因子、拉格朗日乘子將其轉(zhuǎn)變?yōu)榉羌s束問題;采用乘法算子交替方向法(alternating direction method of multipliers,ADMM)在頻域上迭代更新{uk},直至求得的{uk}滿足給定迭代收斂精度.
IMF的個數(shù)K在選取時,應(yīng)遵循包含盡可能多地有效信息且應(yīng)盡可能避免模態(tài)混疊問題的原則,在實際操作時,可通過觀察法進行確定.當K取3~7時,對機柜A能耗序列進行特征提取,得到的IMF中心頻率值如表1所示.由表1可知:當K<5時,信號中的精細信息將被過濾,VMD算法相當于濾波器的作用;當K>5時,信號中的精細信息雖被保留,但各個IMF中心頻率過于接近,容易引起模態(tài)混疊;當K=5時,信號既保留了精細信息,中心頻率距離也適中.因此,確定云計算中心能耗序列IMF的K值為5,既能解決模態(tài)混疊問題,也能為后續(xù)機器學習提供充分的信息.對機柜A能耗序列進行VMD算法分解獲得的5個IMF分量如圖1所示.
表1 K取不同值時IMF中心頻率分布
圖1 機柜A能耗數(shù)據(jù)VMD分解結(jié)果圖
GRU(gated recurrent unit)神經(jīng)網(wǎng)絡(luò),在結(jié)構(gòu)上引進“更新門”和“重置門”的門控機制,有效避免循環(huán)神經(jīng)網(wǎng)絡(luò)中難以克服的梯度消失問題,且比長短時記憶網(wǎng)絡(luò)(long short-term memory,LSTM)少1個門,模型在訓練時的變量少,計算速度更快,甚至在某些場合效果比LSTM還要好.為此,本研究采用GRU神經(jīng)網(wǎng)絡(luò)建模,基于TensorFlow框架構(gòu)建2層隱含層、1層輸出層的預(yù)測模型.其中,超參數(shù)學習率α取0.001,訓練批次取32,迭代次數(shù)取100.GRU神經(jīng)網(wǎng)絡(luò)隱含層節(jié)點數(shù)則通過PSO算法尋優(yōu),建立最優(yōu)預(yù)測模型.
粒子群算法(particle swarm optimization,PSO)廣泛應(yīng)用于函數(shù)尋優(yōu)領(lǐng)域.該算法用粒子群模擬鳥群覓食行為,通過在d維空間搜索目標對粒子群的位置進行尋優(yōu).首先用一組隨機生成的值初始化粒子群的位置和速度;然后通過迭代法根據(jù)粒子個體、群體與目標距離,按照一定算法更新粒子群的位置和速度,直到尋找到目標或達到迭代次數(shù).此時,個體最優(yōu)位置就是個體最優(yōu)解,群體最優(yōu)位置既是群體最優(yōu)解,也是要尋找的最終目標.
粒子個體速度、位置更新滿足
(2)
(3)
(4)
其中:ω為慣性權(quán)重;ωmax和ωmin分別表示慣性權(quán)重的最大值和最小值;k為當前迭代次數(shù),kmax為最大迭代次數(shù).
經(jīng)過上述VMD特征提取、PSO尋優(yōu)GRU神經(jīng)網(wǎng)絡(luò)得到的VMD-PSO-GRU能耗組合預(yù)測模型框圖如圖2所示.首先,VMD-PSO-GRU模型采用VMD算法對機柜設(shè)備能耗序列進行特征提取,得到K個不同頻率的IMF分量,所得IMF分量中心頻率各不相同,有效解決模態(tài)混疊問題.其次,構(gòu)建PSO-GRU預(yù)測模型對每一個IMF分量進行學習,自動尋優(yōu)GRU隱含層節(jié)點數(shù)求得最優(yōu)模型,有效解決GRU神經(jīng)網(wǎng)絡(luò)依靠人工經(jīng)驗進行反復(fù)試驗的問題.最后,使用最優(yōu)模型對每一個IMF分量進行預(yù)測并重構(gòu),以序列疊加方式得到最終的能耗預(yù)測結(jié)果.
圖2 VMD-PSO-GRU能耗組合預(yù)測模型框圖
本研究在云計算中心機柜設(shè)備進行測試,驗證VMD-PSO-GRU模型的通用性與精度.能耗序列取自機柜設(shè)備連續(xù)100 d內(nèi)每小時的樣本點,即每個機柜有2 400個樣本點,分別采用GRU、PSO-GRU、VMD-PSO-GRU模型對機柜A、B能耗序列做提前1、2、3、24 h預(yù)測,從對比實驗中驗證模型通用性與預(yù)測精度.
模型訓練性能誤差指標選擇最小目標損失函數(shù),即預(yù)測值與真實值的均方誤差(root mean square error,RMSE),模型泛化性能誤差指標選擇平均絕對百分比誤差(mean absolute percentage error,MAPE).RMSE、MAPE的計算公式為
(5)
(6)
兩者計算得到的值越小,表明該模型進行能耗序列預(yù)測時的訓練性能、泛化性能越好,預(yù)測精度越高.
對機柜A、B能耗序列分別采用GRU、PSO-GRU、VMD-PSO-GRU模型進行提前1、2、3、24 h預(yù)測,其中GRU模型中的節(jié)點數(shù)n0、n1均取較大值200.PSO-GRU、VMD-PSO-GRU模型的節(jié)點數(shù)通過PSO算法在1~200內(nèi)自動尋優(yōu)確定,計算得到的能耗預(yù)測誤差指標如表2所示.
表2 能耗預(yù)測誤差指標
因篇幅原因,僅列出機柜A的提前1、24 h能耗預(yù)測結(jié)果,分別如圖3、4所示.從圖3、4可以看出,相對于GRU、PSO-GRU模型,VMD-PSO-GRU神經(jīng)網(wǎng)絡(luò)組合預(yù)測模型在對機柜能耗序列進行預(yù)測時,能耗預(yù)測值曲線更加貼近實際值曲線,擬合度更高,能耗預(yù)測精度更好.
圖3 各模型提前1 h預(yù)測機柜A能耗結(jié)果
分析表2中各模型能耗預(yù)測誤差指標的具體值,可以得到如下幾點結(jié)論:(1)采用單一的GRU神經(jīng)網(wǎng)絡(luò)模型對機柜A能耗序列進行預(yù)測時,隨著預(yù)測步數(shù)增加,GRU模型預(yù)測精度大幅降低,從1 h的8.33%、2 h的10.7%到24 h的22.4%,這是由于GRU神經(jīng)網(wǎng)絡(luò)預(yù)測精度會隨著能耗序列時間關(guān)聯(lián)性減弱而顯著降低.(2)采用PSO-GRU神經(jīng)網(wǎng)絡(luò)對機柜A進行能耗預(yù)測時,預(yù)測精度從1 h的7.8%降低到24 h的18.2%;當采用PSO對GRU的隱含層節(jié)點數(shù)進行尋優(yōu)后,PSO-GRU模型預(yù)測精度相對于GRU有一定程度地改善,但還無法從根本上解決GRU無法學習到具有強隨機性的能耗序列信息的問題.(3)采用本文提出的VMD-PSO-GRU模型對機柜A每一個IMF分量進行能耗預(yù)測,對應(yīng)的神經(jīng)網(wǎng)絡(luò)節(jié)點數(shù)根據(jù)PSO尋優(yōu)確定,并疊加得到能耗預(yù)測結(jié)果,得到的預(yù)測精度顯著提高,提前1、2、3 h預(yù)測的精度在2.97%以內(nèi),24 h預(yù)測精度為8.96%.(4)對機柜B采用VMD-PSO-GRU模型進行能耗預(yù)測時,提前1、2、3 h的精度控制在3%內(nèi),24 h的精度也在9%內(nèi),表明模型具有良好的通用性能.實驗結(jié)果表明,VMD-PSO-GRU神經(jīng)網(wǎng)絡(luò)組合預(yù)測模型,在采用VMD算法提取機柜能耗序列特征值的基礎(chǔ)上,采用PSO算法優(yōu)化GRU模型,能有效實現(xiàn)基于能耗序列特征的機器學習尋優(yōu),可顯著提高模型預(yù)測的精度,且模型對全天24 h能耗預(yù)測通用性能好.
圖4 各模型提前24 h預(yù)測機柜A能耗結(jié)果
本研究針對云計算中心機柜設(shè)備能耗序列非平穩(wěn)性、隨機性強的特點,研究設(shè)計一種VMD-PSO-GRU能耗組合預(yù)測模型.在云計算中心進行機柜設(shè)備能耗預(yù)測實驗結(jié)果表明,該模型不僅有效地解決了能耗序列非平穩(wěn)問題、信號分解容易存在的模態(tài)混疊問題、GRU神經(jīng)網(wǎng)絡(luò)節(jié)點數(shù)依靠人工經(jīng)驗進行反復(fù)試驗確定的問題,而且能耗預(yù)測精度高且通用性強.