張坤 徐歡樂 劉敬民
(1.東莞理工學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,廣東東莞 523808;2.香港中文大學(xué) 計(jì)算機(jī)學(xué)院,中國香港 999077;3.維諦技術(shù)(西安)有限公司,陜西西安 710018)
數(shù)據(jù)中心是保證互聯(lián)網(wǎng)應(yīng)用正常運(yùn)轉(zhuǎn)的算力基礎(chǔ)設(shè)施,包括近些年比較火熱的大數(shù)據(jù)、物聯(lián)網(wǎng)、5G、云計(jì)算、移動(dòng)軟件等應(yīng)用都依托于數(shù)據(jù)中心提供的底層支撐。2020年突如其來的新冠疫情使人們的工作、學(xué)習(xí)和生活等方式發(fā)生了巨大的變化,遠(yuǎn)程辦公、在線教學(xué)和社區(qū)購物等方式紛紛呈現(xiàn)。此外,新出臺(tái)的“十四五”規(guī)劃更是明確提出了系統(tǒng)布局新型的基礎(chǔ)設(shè)施,將數(shù)據(jù)中心列為七大“新基建”之一。在政策的激勵(lì)和數(shù)字化經(jīng)濟(jì)轉(zhuǎn)型的雙重背景下,數(shù)據(jù)中心的建設(shè)迎來了前所未有的發(fā)展機(jī)遇,各大網(wǎng)絡(luò)運(yùn)營商和互聯(lián)網(wǎng)公司也紛紛加碼數(shù)據(jù)中心建設(shè)。
數(shù)據(jù)中心大規(guī)模建設(shè)的同時(shí),隨之而來的是耗電量的不斷增加。據(jù)報(bào)道顯示,到了2020年末,全球所有數(shù)據(jù)中心耗電量將達(dá)到全球總耗電量的8%[1]。因此加強(qiáng)數(shù)據(jù)中心能源使用的檢測(cè)與評(píng)估,優(yōu)化數(shù)據(jù)中心冷卻控制系統(tǒng),提高數(shù)據(jù)中心的能源使用效率,對(duì)于響應(yīng)國家節(jié)能減排的號(hào)召以及降低數(shù)據(jù)中心能源使用成本具有重要意義。
在現(xiàn)階段評(píng)價(jià)數(shù)據(jù)中心能源使用效率的指標(biāo)中,最廣泛使用的是電能使用效率(Power Usage Effectiveness, PUE)[2]。PUE是數(shù)據(jù)中心總功率與IT設(shè)備總功率的比值,PUE越小,意味著數(shù)據(jù)中心的能源更多的用于數(shù)據(jù)中心中IT設(shè)備的正常運(yùn)轉(zhuǎn),即能源使用效率越高。根據(jù)公式計(jì)算,最理想的情況是數(shù)據(jù)中心總功率全部用于數(shù)據(jù)中心IT設(shè)備的正常運(yùn)轉(zhuǎn),即PUE為1的情況。但是這種理想情況是不可能發(fā)生的,因?yàn)樵贗T設(shè)備運(yùn)轉(zhuǎn)的過程中會(huì)產(chǎn)生熱量,熱量不斷疊加,如果不將熱量及時(shí)導(dǎo)出,過高的溫度可能會(huì)影響IT設(shè)備使用壽命,甚至導(dǎo)致IT設(shè)備損壞。
為此,筆者設(shè)計(jì)并實(shí)現(xiàn)了空調(diào)冷卻控制系統(tǒng),該系統(tǒng)可以通過控制模塊化數(shù)據(jù)中心的空調(diào)臺(tái)數(shù)和空調(diào)設(shè)置溫度,保證了模塊化數(shù)據(jù)中心的冷通道溫度在安全范圍內(nèi),同時(shí)最小化PUE,達(dá)到節(jié)能的效果。一般來講,模塊化數(shù)據(jù)中心的PUE和冷通道溫度除了受到空調(diào)冷卻系統(tǒng)的控制之外,還與所在地環(huán)境溫度有關(guān),離線訓(xùn)練的方式無法適應(yīng)系統(tǒng)需要針對(duì)數(shù)據(jù)中心不斷變化的環(huán)境及時(shí)給出對(duì)應(yīng)的控制策略的問題,所以系統(tǒng)需要采用在線機(jī)器學(xué)習(xí)算法。
采用在線機(jī)器學(xué)習(xí)算法也就意味著系統(tǒng)在前兩天需要不斷地采集數(shù)據(jù),在采集數(shù)據(jù)的過程中,需要使用安全控制來保證數(shù)據(jù)中心的平均冷通道溫度在安全范圍內(nèi)。除此之外,模型采用雙網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì),一個(gè)網(wǎng)絡(luò)用來預(yù)測(cè)下一輪的PUE,另一個(gè)網(wǎng)絡(luò)預(yù)測(cè)下一輪的平均冷通道溫度。兩個(gè)網(wǎng)絡(luò)分別訓(xùn)練,將既有連續(xù)動(dòng)作又有離散動(dòng)作的動(dòng)作空間進(jìn)行解耦,極大地加快了模型的收斂速度。最后,空調(diào)系統(tǒng)決策過程中依賴于模型預(yù)測(cè)下一輪的PUE和平均冷通道溫度,從候選集中選擇在冷通道溫度在安全范圍內(nèi),同時(shí)PUE最小對(duì)應(yīng)的空調(diào)控制策略,整個(gè)過程確保了模塊化數(shù)據(jù)中心安全可靠的同時(shí),達(dá)到了節(jié)能效果。
為了評(píng)估系統(tǒng)的性能,分別在兩種模擬器上進(jìn)行測(cè)試,通過對(duì)比在線機(jī)器學(xué)習(xí)中的監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)中的實(shí)驗(yàn)效果,最終將實(shí)驗(yàn)效果最好的方案用于在實(shí)驗(yàn)室環(huán)境下進(jìn)行真實(shí)測(cè)試。其中一種模擬器是由數(shù)據(jù)中心工程師根據(jù)經(jīng)驗(yàn)編寫而成,另一種模擬器由已有的采樣數(shù)據(jù)建模。在兩種模擬器上分別運(yùn)行20 d,在實(shí)驗(yàn)室環(huán)境下運(yùn)行10 d。實(shí)驗(yàn)結(jié)果表明,采取基于強(qiáng)化學(xué)習(xí)的在線機(jī)器學(xué)習(xí)算法,收斂效果緩慢,結(jié)果不穩(wěn)定。采用基于監(jiān)督學(xué)習(xí)的在線機(jī)器學(xué)習(xí)算法可以在6 d完成收斂效果,平均冷通道維持在22℃時(shí),PUE依然穩(wěn)定在1.255左右。
模塊化數(shù)據(jù)中心將冷熱通道進(jìn)行隔離,避免了冷熱氣流混合導(dǎo)致的冷量損耗,同時(shí)將冷通道封閉處理,最大化的利用冷量[3]。其中,整個(gè)模塊化數(shù)據(jù)中心的內(nèi)部溫度僅由多個(gè)空調(diào)進(jìn)行調(diào)節(jié)。因此,為了保證數(shù)據(jù)中心的設(shè)備在安全溫度范圍內(nèi)正常運(yùn)轉(zhuǎn)的同時(shí),提高整個(gè)數(shù)據(jù)中心的能源使用效率也就成為了研究的目標(biāo)。用式(1)表示為
PUE=f(it,EnvTemp,m,SetTemp),
(1)
其中,PUE是能源使用效率,it是數(shù)據(jù)中心的工作負(fù)載,EnvTemp是環(huán)境溫度,m是空調(diào)開啟臺(tái)數(shù),SetTemp是空調(diào)設(shè)置溫度。
PUE是數(shù)據(jù)中心總設(shè)備能耗與IT設(shè)備能耗的比值,PUE越小,意味著數(shù)據(jù)中心的電力更多地用于設(shè)備的正常運(yùn)轉(zhuǎn)。因此,盡可能的降低能耗,也就等同于最小化PUE,可以將整個(gè)問題建模為參數(shù)調(diào)優(yōu)問題,用式(2)表示為
minxt∈Xf(et,xt),
(2)
其中,xt是t時(shí)刻數(shù)據(jù)中心空調(diào)的控制信息,包括空調(diào)的設(shè)置溫度和開啟臺(tái)數(shù),X是模型的動(dòng)作空間,et是t時(shí)刻數(shù)據(jù)中心的溫度信息。
除此之外,在建模過程中還需要考慮以下因素。
1)延遲效應(yīng)。空調(diào)調(diào)節(jié)溫度需要經(jīng)過一段時(shí)間才可以穩(wěn)定,開機(jī)瞬間能效比較低、耗電,隨后能效比偏高、省電,溫度值逐漸趨于正常值。另外,建模的目的是希望提前預(yù)測(cè)下一時(shí)刻的PUE值,根據(jù)預(yù)測(cè)好的PUE值選取最佳的控制方案,如果直接使用數(shù)據(jù)中心采集到的數(shù)據(jù),將導(dǎo)致預(yù)測(cè)結(jié)果不準(zhǔn)確,模型建立失敗。
2)點(diǎn)沖擊??照{(diào)開關(guān)瞬間點(diǎn)亮變化明顯,開機(jī)瞬間能效比較低、耗電,隨后能效比偏高、省電,再趨于正常。這導(dǎo)致存在臟數(shù)據(jù),從而使預(yù)測(cè)結(jié)果不準(zhǔn)確,模型建立失敗。
3)周期性。地球自轉(zhuǎn)引起的晝夜交替、地球公轉(zhuǎn)引起的四季變化等都認(rèn)為是具有周期性。在數(shù)據(jù)中心設(shè)備運(yùn)轉(zhuǎn)過程中會(huì)使得室內(nèi)溫度不斷升高,溫度過高可能會(huì)導(dǎo)致設(shè)備正常運(yùn)轉(zhuǎn)出現(xiàn)問題,為了保證數(shù)據(jù)中心的正常運(yùn)轉(zhuǎn),就需要與外部空氣進(jìn)行氣體交換,將室內(nèi)的高溫空氣傳導(dǎo)到自然界中。而自然氣溫并非一成不變。一般來講,地球公轉(zhuǎn)導(dǎo)致夏天氣溫較高,冬天氣溫較低,地球自轉(zhuǎn)導(dǎo)致白天氣溫較高,夜間氣溫較低,地理位置導(dǎo)致南方氣溫較高,北方氣溫較低,這意味著在夏天、白天和南方數(shù)據(jù)中心冷卻系統(tǒng)需要高速運(yùn)轉(zhuǎn)才可以讓室內(nèi)空氣溫度保持在安全范圍內(nèi),從而導(dǎo)致PUE很高,而在冬天、夜間和北方憑借著自然界的冷空氣就可以使得室內(nèi)溫度保持在安全范圍內(nèi),相應(yīng)的PUE較低。
4)前后時(shí)間相關(guān)性。數(shù)據(jù)中心的溫度隨著冷卻控制系統(tǒng)的調(diào)節(jié)不斷變化,未來的溫度高低會(huì)受到現(xiàn)在的溫度以及冷卻控制系統(tǒng)的影響,在時(shí)間軸上可以認(rèn)為是具有前后時(shí)間相關(guān)性。
5)熱點(diǎn)問題。模塊化數(shù)據(jù)中心內(nèi)設(shè)備的溫度控制主要靠空調(diào)的開關(guān)以及設(shè)置溫度進(jìn)行調(diào)節(jié),設(shè)備和空調(diào)的擺放位置、空調(diào)的開關(guān)狀態(tài)和空調(diào)的設(shè)置溫度對(duì)設(shè)備的溫度調(diào)節(jié)影響較大。如果模型的控制出問題,會(huì)導(dǎo)致某塊區(qū)域的溫度一直居高不下,從而有可能導(dǎo)致設(shè)備在長時(shí)間高溫環(huán)境運(yùn)轉(zhuǎn)過程中出現(xiàn)故障。
6)個(gè)性化定制。模塊化數(shù)據(jù)中心需要根據(jù)客戶需求進(jìn)行個(gè)性化定制,如數(shù)據(jù)中心內(nèi)設(shè)備的布局方式、數(shù)量、數(shù)據(jù)中心坐落位置等,這些因素并非一成不變,從而導(dǎo)致大量的離線樣本無法收集來進(jìn)行估計(jì)。
7)混合的動(dòng)作空間。在文中,空調(diào)控制變量包括空調(diào)設(shè)置臺(tái)數(shù)和空調(diào)設(shè)置溫度,空調(diào)設(shè)置臺(tái)數(shù)屬于離散動(dòng)作,空調(diào)設(shè)置溫度屬于連續(xù)動(dòng)作,動(dòng)作空間中既包含了連續(xù)動(dòng)作,又包含了離散動(dòng)作。
數(shù)據(jù)中心使用最廣泛的能效指標(biāo)之一是電能使用效率,即PUE[4-5]。較高的PUE意味著數(shù)據(jù)中心總電能中應(yīng)用于冷卻設(shè)備和基礎(chǔ)設(shè)施正常運(yùn)轉(zhuǎn)之外的部分電能使用比重大。因此,為了提高電能使用效率,需要考慮冷卻設(shè)備和基礎(chǔ)設(shè)施、非IT設(shè)備之間的關(guān)系,以降低PUE為目標(biāo)進(jìn)行優(yōu)化。
已有的基于數(shù)據(jù)中心PUE優(yōu)化的最簡單的能耗模型是AeBischer等人[6]描述的模型。在他們的模型中提到,建模的過程中需要大量的數(shù)據(jù)作為支撐,但是并非所有的數(shù)據(jù)都屬于有效數(shù)據(jù)。為此,他們決定針對(duì)設(shè)備不同使用階段的能耗進(jìn)行建模:
(3)
其中,n是類型i的設(shè)備的數(shù)量,e是處于功能狀態(tài)j的功率負(fù)載,u是用戶k的使用強(qiáng)度。同樣,LeLou等人[7]也提出過類似的模型。他們將數(shù)據(jù)中心的功耗表示為其主機(jī)的最小功耗與虛擬機(jī)的功耗之和。但上述兩種工作都沒有將數(shù)據(jù)中心中非IT設(shè)備的功耗考慮進(jìn)來。
在另一項(xiàng)研究中,Zhou等人[8]建立模型時(shí)考慮到了電能使用效率。因此,數(shù)據(jù)中心j在時(shí)間t中的功耗可以由Ej(t)表示為
(4)
其中,Mj(t)為正在運(yùn)轉(zhuǎn)的服務(wù)器的數(shù)量,βj為空閑狀態(tài)下的功耗,PUEj為電能使用效率。同樣,Liu等人[9]也提出了類似的研究。他們研究發(fā)現(xiàn),不同的工作負(fù)載下,電能使用效率不同。因此,數(shù)據(jù)中心t時(shí)刻總電能可表示為
V(t)=ηpue(t)(a(t)+b(t)) ,
(5)
其中a(t)是固定負(fù)載下的電能使用情況,b(t)是變負(fù)載下的電能使用情況。
近年來,利用機(jī)器學(xué)習(xí)技術(shù)進(jìn)行能耗建模和預(yù)測(cè)一直是數(shù)據(jù)中心研究人員關(guān)注的熱點(diǎn)。他們嘗試將在機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘中表現(xiàn)出色的算法應(yīng)用于數(shù)據(jù)中心的功耗預(yù)測(cè)[10]。機(jī)器學(xué)習(xí)算法通常可以分為四類:監(jiān)督學(xué)習(xí)、無監(jiān)督學(xué)習(xí)、強(qiáng)化學(xué)習(xí)和進(jìn)化學(xué)習(xí)[11]。
最常見的學(xué)習(xí)類型是監(jiān)督學(xué)習(xí)。監(jiān)督學(xué)習(xí)需要提供大量的正確的樣本數(shù)據(jù),以便對(duì)所有可能的輸入作出準(zhǔn)確預(yù)測(cè)。其中,線性回歸和非線性回歸都屬于監(jiān)督學(xué)習(xí),除此之外,基于樹的技術(shù),如分類樹、回歸樹、XGBoost[12],支持向量機(jī)[13]等算法均屬于監(jiān)督學(xué)習(xí)的范疇。
谷歌2014年發(fā)布白皮書[14],第一次在將神經(jīng)網(wǎng)絡(luò)應(yīng)用于超大規(guī)模數(shù)據(jù)中心領(lǐng)域,提出了利用神經(jīng)網(wǎng)絡(luò)對(duì)監(jiān)控?cái)?shù)據(jù)進(jìn)行建模,搜索數(shù)據(jù)特征之間的關(guān)系,以便生成描述輸入函數(shù)的數(shù)學(xué)模型,進(jìn)而可以預(yù)測(cè)下一時(shí)刻的能源利用率PUE。白皮書中提到使用包含5個(gè)隱含層的神經(jīng)網(wǎng)絡(luò)進(jìn)行回歸預(yù)測(cè),采用L2正則化防止過擬合的情況。神經(jīng)網(wǎng)絡(luò)的輸入包含19個(gè)變量,包括IT負(fù)載、外界空氣的溫度和濕度、運(yùn)行的冷水機(jī)組和冷卻塔的數(shù)量、設(shè)備的放置位置等,輸出的是PUE。損失函數(shù)采用的是帶有L2正則化項(xiàng)的均方誤差函數(shù)。整個(gè)算法的訓(xùn)練過程屬于離線訓(xùn)練,證明了采用機(jī)器學(xué)習(xí)的方法評(píng)估能效性能的方案是可行的。隨后,楊振[2]等人在谷歌白皮書[14]的基礎(chǔ)上進(jìn)行改進(jìn)。他們觀察到制冷系統(tǒng)對(duì)整個(gè)數(shù)據(jù)中心的能耗影響很大,于是決定在輸入特征中加入了室內(nèi)室外的溫度、濕度以及冷凍水總管的各種特征,加強(qiáng)了模型中PUE與制冷系統(tǒng)之間的連接。但本項(xiàng)目一開始沒有數(shù)據(jù)集,需要實(shí)時(shí)的在工作環(huán)境中采集數(shù)據(jù),數(shù)據(jù)隨著時(shí)間和環(huán)境的變化而變化,同時(shí)微型機(jī)房制冷系統(tǒng)采用的空調(diào)進(jìn)行調(diào)節(jié),故無法直接將白皮書[14]以及楊振等[2]人的算法直接應(yīng)用在本文的項(xiàng)目。
強(qiáng)化學(xué)習(xí)算法的行為介于監(jiān)督學(xué)習(xí)和非監(jiān)督學(xué)習(xí)之間[11],近年來,強(qiáng)化學(xué)習(xí)的研究取得了很大的進(jìn)展,在游戲和機(jī)器人任務(wù)上也取得了令人矚目的成就[15-16]。然而,將強(qiáng)化學(xué)習(xí)應(yīng)用于實(shí)際的物理環(huán)境中是很復(fù)雜的,除了算法本身的復(fù)雜度,還因?yàn)閿?shù)據(jù)集不斷更新,需要考慮到實(shí)驗(yàn)環(huán)境中各種安全約束條件,以保證實(shí)驗(yàn)環(huán)境的安全穩(wěn)定。另外,在測(cè)試過程中,需要不斷測(cè)試,以便采集數(shù)據(jù),更新模型,整個(gè)測(cè)試過程可能需要很長時(shí)間,這也可能產(chǎn)生高昂的費(fèi)用。同時(shí),可能因費(fèi)用過于高昂而對(duì)測(cè)試進(jìn)行限次。
Li等人[17]根據(jù)DDPG和Actor-Critic開發(fā)出了一種冷卻優(yōu)化算法。在RL框架中,狀態(tài)空間是工作負(fù)載列表和環(huán)境溫度列表;使用PUE四元組和每個(gè)區(qū)域的IT設(shè)備出口溫度來計(jì)算回報(bào);使用直接冷卻出口溫度、間接蒸發(fā)器冷卻出口溫度、冷卻盤管出口溫度、冷水回路出口溫度和冷水機(jī)組冷卻空氣回路出口溫度這五種設(shè)置點(diǎn)表示動(dòng)作空間。目標(biāo)是最小化PUE,并且需要將出口溫度保持在特定范圍內(nèi)。目標(biāo)函數(shù)的目的是在最小化PUE和防止服務(wù)器區(qū)域過熱之間取得平衡。即:
LT (6) 整個(gè)框架由兩個(gè)網(wǎng)絡(luò)組成,其中Q網(wǎng)絡(luò)近似于狀態(tài)-動(dòng)作對(duì)的Q值,它將當(dāng)前狀態(tài)和要采取的下一個(gè)動(dòng)作組合成向量作為輸入,并輸出一個(gè)標(biāo)量值,這個(gè)標(biāo)量值表示在狀態(tài)s處采取的動(dòng)作a的代價(jià)。Q網(wǎng)絡(luò)的倒數(shù)第2層設(shè)計(jì)輸出預(yù)測(cè)的PUE值和溫度數(shù)據(jù),根據(jù)上述式(6)計(jì)算成本。μ網(wǎng)絡(luò)是策略網(wǎng)絡(luò),它獲取最近的狀態(tài)操作歷史和當(dāng)前的狀態(tài),并輸出要采取的新的操作。但本項(xiàng)目的動(dòng)作空間中既包含了連續(xù)的動(dòng)作空間,又包含了離散的動(dòng)作空間,所以無法將Li等人[17]提出的算法直接應(yīng)用于本項(xiàng)目。 為了解決上文提到的延遲效應(yīng)、點(diǎn)沖擊、個(gè)性化等問題,需要將數(shù)據(jù)中心采集到的數(shù)據(jù)進(jìn)行篩選和處理。由于延遲效應(yīng),數(shù)據(jù)中心的環(huán)境溫度需要一段時(shí)長才可以處于穩(wěn)定狀態(tài),同時(shí)由于點(diǎn)沖擊問題導(dǎo)致PUE也需要一段時(shí)長才可以保證數(shù)據(jù)的基本準(zhǔn)確。因此算法的控制不應(yīng)該過于頻繁,系統(tǒng)兩次控制之間需要有一定的時(shí)間間隔,保證數(shù)據(jù)的穩(wěn)定和準(zhǔn)確。另外,考慮到空調(diào)及電網(wǎng)電壓等均存在噪聲數(shù)據(jù),所以需要對(duì)數(shù)據(jù)進(jìn)行歸一化處理,再將處理好的數(shù)據(jù)送入模型中進(jìn)行訓(xùn)練??紤]到空調(diào)調(diào)節(jié)溫度需要經(jīng)過一段時(shí)間才能穩(wěn)定,可以選擇每隔一段時(shí)間進(jìn)行一次控制。 其次,由于個(gè)性化的問題,空調(diào)個(gè)數(shù)、空調(diào)編號(hào)、機(jī)柜編號(hào)、機(jī)柜個(gè)數(shù)、機(jī)柜位置等可能發(fā)生變化,系統(tǒng)應(yīng)具有較強(qiáng)的適應(yīng)性,因此對(duì)數(shù)據(jù)中心采集到的數(shù)據(jù)進(jìn)行分析也是必不可少的。程序需要根據(jù)傳入的環(huán)境狀態(tài)參數(shù),將當(dāng)前環(huán)境下的數(shù)據(jù)進(jìn)行分析處理,用于獲取當(dāng)前數(shù)據(jù)中心設(shè)備布局及運(yùn)行狀況。 除此之外,為了解決熱點(diǎn)問題,可以將數(shù)據(jù)中心按照空調(diào)和機(jī)柜的擺放位置進(jìn)行分塊處理,為各個(gè)空調(diào)劃分控制范圍。 最后,考慮到周期性帶來的四季變化和晝夜變化,以及前后時(shí)間相關(guān)性,采集到的數(shù)據(jù)也應(yīng)該對(duì)應(yīng)不同的季節(jié),即數(shù)據(jù)應(yīng)有冬夏之分。因此,當(dāng)數(shù)據(jù)達(dá)到一定規(guī)模之后,當(dāng)數(shù)據(jù)集中加入一條新的數(shù)據(jù),可以隨機(jī)刪除最早幾天的某一條數(shù)據(jù),做到隨著時(shí)間的推移,數(shù)據(jù)集不斷更新,即可以自適應(yīng)四季冷暖的變化,又可以最大限度的保證模型預(yù)測(cè)的準(zhǔn)確性。 由于個(gè)性化定制導(dǎo)致設(shè)備的布局方式、設(shè)備數(shù)量、設(shè)備開關(guān)狀態(tài)以及數(shù)據(jù)中心坐落位置的不同,致使無法離線搜集大量的樣本進(jìn)行估計(jì),必須采用在線的方式搜集樣本數(shù)據(jù)。因此可以將控制系統(tǒng)分為兩個(gè)階段:第一個(gè)階段屬于隨機(jī)控制階段,隨機(jī)的給出不同的空調(diào)控制信息,包括空調(diào)開關(guān)列表和空調(diào)設(shè)置溫度列表,以搜集數(shù)量足夠多,動(dòng)作空間范圍足夠廣的樣本數(shù)據(jù)用于模型訓(xùn)練;第二階段屬于模型控制階段,根據(jù)模型預(yù)測(cè)下一時(shí)刻的電能利用效率和平均冷通道溫度,為下一時(shí)刻的空調(diào)控制信息,如空調(diào)開關(guān)列表和空調(diào)設(shè)置溫度列表等提供參考。 在隨機(jī)控制階段,為了能夠采集到足夠多的樣本數(shù)據(jù)的同時(shí)盡可能的擴(kuò)大動(dòng)作空間的覆蓋范圍,可以采用隨機(jī)預(yù)測(cè)的方式,在所有空調(diào)臺(tái)數(shù)以及空調(diào)設(shè)置溫度范圍內(nèi)隨機(jī)采樣,并通過安全控制保證數(shù)據(jù)中心的安全可靠。 在模型控制階段中采用在線擬合的方案,通過設(shè)計(jì)雙網(wǎng)絡(luò)結(jié)構(gòu)的方式將整個(gè)動(dòng)作空間進(jìn)行解耦,分別預(yù)測(cè)下一時(shí)刻的PUE和下一時(shí)刻總的平均冷通道溫度,為輸出下一時(shí)刻空調(diào)控制信息提供數(shù)據(jù)參考,加快模型的收斂速度。其中,雙網(wǎng)絡(luò)可以采用XGBoost算法作回歸訓(xùn)練。xgboost_pue預(yù)測(cè)下一時(shí)刻的PUE,xgboost_temp預(yù)測(cè)下一時(shí)刻的總的平均冷通道溫度。如圖1所示,xgboost_pue和xgboost_temp輸入的向量格式均為平均送風(fēng)溫度、平均回風(fēng)溫度、平均冷通道溫度、平均熱通道溫度、it負(fù)載、下一時(shí)刻空調(diào)開啟開關(guān)數(shù)量、下一時(shí)刻空調(diào)平均設(shè)置溫度。動(dòng)作a1和a2分別代表空調(diào)下一時(shí)刻的設(shè)置溫度列表和開關(guān)狀態(tài)列表,ac_setting_temp是空調(diào)的平均設(shè)置溫度,ac_onoff是空調(diào)開啟開關(guān)數(shù)量。 圖1 模型控制示意圖 最后,在動(dòng)作a1和a2的選取上,需要先設(shè)置目標(biāo)冷通道溫度和允許上下波動(dòng)的區(qū)間范圍,再選取xgboost_temp預(yù)測(cè)的下一時(shí)刻總的平均冷通道溫度中落在這個(gè)區(qū)間內(nèi)的同時(shí),xgboost_pue預(yù)測(cè)的下一時(shí)刻PUE中最小的PUE所對(duì)應(yīng)的空調(diào)開關(guān)數(shù)量和空調(diào)設(shè)置溫度。如果xgboost_temp預(yù)測(cè)的所有的總的平均冷通道溫度都沒有落在這個(gè)區(qū)間范圍內(nèi),則選取預(yù)測(cè)的總的平均冷通道溫度最低的值對(duì)應(yīng)的空調(diào)開關(guān)數(shù)量和空調(diào)設(shè)置溫度。 空調(diào)控制包括了隨機(jī)控制和模型控制。隨機(jī)控制階段的目的是盡可能的搜集足夠多數(shù)量,動(dòng)作空間內(nèi)范圍足夠廣的樣本數(shù)據(jù),盡管會(huì)考慮到設(shè)備安全問題,但是也很難保證設(shè)備一直處于安全的溫度范圍內(nèi)。模型控制階段早期也可能由于搜集到的樣本數(shù)量不夠多、動(dòng)作空間范圍不足等導(dǎo)致模型預(yù)測(cè)不準(zhǔn),從而導(dǎo)致設(shè)備在高溫狀態(tài)下發(fā)生運(yùn)行故障。 除此之外,由于延遲效應(yīng)、點(diǎn)沖擊等問題,在兩次控制之間需要間隔一段時(shí)間,保證采集到的樣本數(shù)據(jù)準(zhǔn)確有效的同時(shí)減少了電能浪費(fèi),從而達(dá)到提高能源使用效率的目的。在兩次控制的間隔內(nèi),如果出現(xiàn)某塊區(qū)域平均冷通道溫度過高的情況,也有可能導(dǎo)致設(shè)備出現(xiàn)故障情況,甚至發(fā)生火災(zāi)。因此需要采取安全控制措施,目的是保證數(shù)據(jù)中心的平均冷通道溫度在設(shè)備可以正常運(yùn)轉(zhuǎn)的安全范圍內(nèi)。調(diào)整原則是:先調(diào)整已開啟空調(diào)的設(shè)置溫度,當(dāng)空調(diào)的設(shè)置溫度無法再調(diào)整時(shí),再考慮將空調(diào)關(guān)閉或者打開。 綜上所述,可以得出系統(tǒng)的整體框架,如圖2所示。 圖2 系統(tǒng)設(shè)計(jì)框架 其中,空調(diào)控制每隔一段時(shí)間輸出一次空調(diào)控制信息,包括空調(diào)開關(guān)列表和空調(diào)設(shè)置溫度,與環(huán)境進(jìn)行交互;通過空調(diào)的控制信息,數(shù)據(jù)中心通過設(shè)置采樣間隔進(jìn)行采樣,將采集到的數(shù)據(jù)進(jìn)行加工處理,用于模型訓(xùn)練;訓(xùn)練好的模型用于預(yù)測(cè)空調(diào)某個(gè)配置下的PUE值和平均冷通道溫度,為下一時(shí)間段模型控制提供參考信息;另外,在兩次空調(diào)控制間隙,需要時(shí)刻監(jiān)控空調(diào)的平均冷通道溫度變化情況,進(jìn)行安全控制,確保空調(diào)平均冷通道溫度在規(guī)定的安全范圍內(nèi)。 該節(jié)介紹根據(jù)已有采集到的數(shù)據(jù)制作的模擬器實(shí)現(xiàn)。模擬器中有5臺(tái)空調(diào),19個(gè)機(jī)柜。數(shù)據(jù)來源于數(shù)據(jù)中心已有的采集到的數(shù)據(jù),經(jīng)過預(yù)處理后送入模型中訓(xùn)練。已經(jīng)訓(xùn)練好的模型根據(jù)當(dāng)前空調(diào)的控制信息,包括空調(diào)開關(guān)列表和空調(diào)設(shè)置溫度,預(yù)測(cè)當(dāng)前空調(diào)配置的環(huán)境狀態(tài)信息,提供給模擬器使用。模擬器通過提供接口函數(shù)供外界調(diào)用。接下來介紹具體實(shí)現(xiàn)細(xì)節(jié)。 數(shù)據(jù)集中空調(diào)每隔1.5 h進(jìn)行一次控制,數(shù)據(jù)每隔5 min進(jìn)行一次采樣,一條完整的數(shù)據(jù)有125個(gè)特征值,特征值一共有24種類別。但是無法直接使用,需要進(jìn)行預(yù)處理,因?yàn)闇囟仁且粋€(gè)逐漸變化的過程,大量的數(shù)據(jù)屬于無效的不準(zhǔn)確數(shù)據(jù)。根據(jù)經(jīng)驗(yàn)表明,1.5 h左右溫度基本穩(wěn)定,因此可以只選取溫度穩(wěn)定的數(shù)據(jù)作為最終的數(shù)據(jù)集。 模型輸入的數(shù)據(jù)格式依次為環(huán)境溫度、環(huán)境濕度、it負(fù)載、設(shè)置溫度列表、設(shè)置開關(guān)列表。模型輸出的數(shù)據(jù)包括空調(diào)的送風(fēng)溫度列表,回風(fēng)溫度列表,冷通道溫度列表,熱通道溫度列表和PUE。模擬器中空調(diào)個(gè)數(shù)為5,機(jī)柜個(gè)數(shù)為19,一個(gè)模型預(yù)測(cè)一個(gè)特征的數(shù)據(jù),也就需要訓(xùn)練49個(gè)模型。預(yù)測(cè)的特征值包括空調(diào)送風(fēng)溫度、空調(diào)回風(fēng)溫度、機(jī)柜熱通道溫度、機(jī)柜冷通道溫度、PUE。 模型訓(xùn)練采用XGBoost算法做回歸訓(xùn)練,模型最大樹深均為5,學(xué)習(xí)率均為0.1, n_estimators均為100。 模擬器交互示意圖如圖3所示,模擬器與外界進(jìn)行交互,外界通過調(diào)用接口設(shè)置模擬器中空調(diào)的設(shè)置溫度和開關(guān)列表,也可以獲取模擬環(huán)境的各種狀態(tài)信息,詳細(xì)的狀態(tài)信息如表1所示。模擬器中有4 d的環(huán)境溫度數(shù)據(jù)和環(huán)境濕度數(shù)據(jù),可選it負(fù)載列表,模擬器初始化空調(diào)設(shè)置溫度均為21℃,空調(diào)開關(guān)全開??照{(diào)設(shè)置溫度和開關(guān)列表可以由外界通過調(diào)用接口設(shè)置,環(huán)境溫度數(shù)據(jù)、環(huán)境濕度數(shù)據(jù)和it負(fù)載可以隨機(jī)生成,通過模型預(yù)測(cè)當(dāng)前空調(diào)設(shè)置溫度和開關(guān)列表下的空調(diào)送風(fēng)溫度列表、空調(diào)回風(fēng)溫度列表、機(jī)柜冷通道溫度列表、機(jī)柜熱通道溫度列表和PUE。 圖3 模擬器設(shè)計(jì)框架 表1 模擬器完整的狀態(tài)信息 該節(jié)介紹在兩種模擬器中和真實(shí)測(cè)試環(huán)境下的實(shí)驗(yàn)效果。 模擬環(huán)境包括數(shù)據(jù)中心工程師根據(jù)自身經(jīng)驗(yàn)寫出的模擬器和由已有的采集到的數(shù)據(jù)中心的數(shù)據(jù)制作的模擬器。其中,空調(diào)最少開啟臺(tái)數(shù)是2臺(tái),每次采樣間隔是5 min,模型兩次控制間隔是1.5 h,空調(diào)的設(shè)置溫度范圍是[15℃,25℃],冷通道溫度安全范圍是[20℃,24℃],目標(biāo)溫度是22℃,目標(biāo)溫度允許波動(dòng)范圍是[-1.5℃,1.5℃],隨機(jī)控制階段的采樣天數(shù)是2 d,送回風(fēng)溫度標(biāo)準(zhǔn)查是12℃,送回風(fēng)溫度標(biāo)準(zhǔn)查允許波動(dòng)范圍是[-2℃,2℃]。 基于監(jiān)督學(xué)習(xí)的在線學(xué)習(xí)算法中,xgboost_pue是采用XGBoost算法訓(xùn)練和預(yù)測(cè)在不同的空調(diào)開啟數(shù)量和空調(diào)平均設(shè)置溫度下的PUE值,學(xué)習(xí)率為0.1,樹深為6;xgboost_temp是采用XGBoost算法訓(xùn)練和預(yù)測(cè)在不同的空調(diào)開啟數(shù)量和空調(diào)平均設(shè)置溫度下的平均冷通道溫度值,學(xué)習(xí)率為0.1,樹深為7。 圖4為各個(gè)算法在數(shù)據(jù)中心工程師根據(jù)經(jīng)驗(yàn)寫出的模擬器上運(yùn)行的結(jié)果。模擬器中有6臺(tái)空調(diào),8臺(tái)機(jī)柜,運(yùn)行天數(shù)是20 d。其中,圖4(a)為監(jiān)督學(xué)習(xí)運(yùn)行的結(jié)果,每天的平均PUE基本穩(wěn)定在1.265左右,3 d時(shí)間模型就可以收斂。圖4(b)、圖4(c)、圖4(d)為強(qiáng)化學(xué)習(xí)運(yùn)行的結(jié)果,圖4(b)、圖4(c)、圖4(d)中曲線波動(dòng)明顯,并且結(jié)果明顯不如圖4(a),算法不是很穩(wěn)定。圖4(b)、圖4(c)曲線有呈下降趨勢(shì),但是結(jié)果沒有圖4(a)好,有可能是因?yàn)樗惴ㄊ諗克俣嚷瑢?dǎo)致最終的運(yùn)行結(jié)果不如圖4(a)。從圖4中可以看出,基于監(jiān)督學(xué)習(xí)的在線機(jī)器學(xué)習(xí)運(yùn)行結(jié)果好于基于強(qiáng)化學(xué)習(xí)的在線機(jī)器學(xué)習(xí),結(jié)果更加的穩(wěn)定。 圖4 每天平均PUE 圖5為各個(gè)算法在由已有的采集到的數(shù)據(jù)中心的數(shù)據(jù)制作的模擬器上運(yùn)行的結(jié)果。模擬器中有5臺(tái)空調(diào),19臺(tái)機(jī)柜,運(yùn)行天數(shù)是20 d。其中,圖5(a)為監(jiān)督學(xué)習(xí)運(yùn)行的結(jié)果,每天的平均PUE在1.24~1.25之間,5 d后模型趨于收斂狀態(tài),但是因?yàn)榛跈C(jī)器學(xué)習(xí)的模擬器本身存在泛化能力不足的問題,盡管模型趨于收斂狀態(tài),但是后期運(yùn)行過程中曲線還是稍有波動(dòng)。圖5(b)、圖5(c)、圖5(d)為強(qiáng)化學(xué)習(xí)運(yùn)行的結(jié)果,可能是受到模型泛化能力不足的問題,導(dǎo)致圖5(b)曲線未見明顯的下降趨勢(shì),算法沒有收斂或者收斂緩慢,圖5(c)曲線有下降趨勢(shì),但是后期甚至有上升趨勢(shì)。圖5(d)曲線有下降趨勢(shì),每天的平均PUE在1.27~1.28,但是結(jié)果明顯不如圖5(a)。 圖5 每天平均PUE 真實(shí)測(cè)試環(huán)境中有5臺(tái)空調(diào),19臺(tái)機(jī)柜。圖6和圖7是基于監(jiān)督學(xué)習(xí)的在線機(jī)器學(xué)習(xí)算法在公司的真實(shí)測(cè)試環(huán)境上運(yùn)行的結(jié)果。圖8和圖9是Policy Gradient在公司的真實(shí)測(cè)試環(huán)境上運(yùn)行的結(jié)果。圖6和圖8分別是2種算法的日均冷通道溫度趨勢(shì)圖,從圖中可以看出,圖6日均冷通道溫度趨于穩(wěn)定,基本維持在22℃左右,整個(gè)控制過程已經(jīng)收斂;圖8日均冷通道溫度一直在不斷地波動(dòng),而且有上升趨勢(shì)。圖7和圖9分別是2種算法日均PUE趨勢(shì)圖,圖7和圖9前2天均為采樣階段,圖7系統(tǒng)運(yùn)行的從第5天PUE基本處于收斂狀態(tài),PUE基本維持在1.255左右。圖9剛開始前5天模型迅速收斂,從第7天開始迅速上升,曲線隨后不斷地波動(dòng),結(jié)果一直處于不穩(wěn)定的狀態(tài)。 圖6 基于在線機(jī)器學(xué)習(xí)的日均冷通道溫度趨勢(shì)圖 圖7 基于在線機(jī)器學(xué)習(xí)的日均PUE趨勢(shì)圖 圖8 Policy Gradient 日均冷通道溫度趨勢(shì) 圖9 Policy Gradient 日均PUE趨勢(shì)圖 數(shù)據(jù)中心在社會(huì)建設(shè)中承擔(dān)著越來越重要的角色,各大公司和運(yùn)營商紛紛決定建造屬于自己的數(shù)據(jù)中心,伴隨數(shù)據(jù)中心而來的是高耗能問題。PUE是評(píng)價(jià)數(shù)據(jù)中心能源使用效率的指標(biāo),圍繞著降低PUE這個(gè)指標(biāo),科學(xué)家在大型、超大型數(shù)據(jù)中心使用了監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)算法解決這一問題,成功地將PUE降低到1.3左右,但是很少將算法應(yīng)用在微小型數(shù)據(jù)中心空調(diào)控制領(lǐng)域。為此,筆者改進(jìn)算法,設(shè)計(jì)雙網(wǎng)絡(luò)模型,加快模型的收斂速度,通過對(duì)比監(jiān)督學(xué)習(xí)和強(qiáng)化學(xué)習(xí)的實(shí)驗(yàn)效果,成功地將PUE降低到了1.255左右。3 算法設(shè)計(jì)
3.1 數(shù)據(jù)處理
3.2 空調(diào)控制
3.3 安全控制
3.4 系統(tǒng)設(shè)計(jì)框架
4 模擬器設(shè)計(jì)
4.1 數(shù)據(jù)預(yù)處理
4.2 模型訓(xùn)練
4.3 模擬器設(shè)計(jì)框架
5 實(shí)驗(yàn)結(jié)果分析
5.1 基于工程師經(jīng)驗(yàn)的模擬器結(jié)果評(píng)估
5.2 基于機(jī)器學(xué)習(xí)的模擬器結(jié)果評(píng)估
5.3 基于真實(shí)測(cè)試環(huán)境下的結(jié)果評(píng)估
6 結(jié)語