張乾 徐歡樂 劉敬民
(1. 東莞理工學(xué)院 計算機科學(xué)與技術(shù)學(xué)院,廣東東莞 523808;2. 香港中文大學(xué) 計算機學(xué)院,中國香港 999077;3. 維諦技術(shù)(西安)有限公司,陜西西安 710018)
數(shù)據(jù)中心是支撐大規(guī)模、關(guān)鍵任務(wù)的計算機領(lǐng)域基礎(chǔ)設(shè)施,需要保持不間斷運行,推動了IT行業(yè)的快速增長,甚至影響到經(jīng)濟(jì)發(fā)展[1]。數(shù)據(jù)中心的廣泛應(yīng)用主要由兩個現(xiàn)象引起:一方面,大規(guī)模云服務(wù)提供商、電信運營商、銀行和其他公司對數(shù)據(jù)計算、處理和存儲的需求日益增長,這需要大型數(shù)據(jù)中心的支持,其中有的數(shù)據(jù)中心有數(shù)千臺服務(wù)器(有時有數(shù)百萬臺服務(wù)器)[2];另一方面,應(yīng)用程序的需求也促進(jìn)了大規(guī)模計算機基礎(chǔ)設(shè)施的建設(shè)。隨著移動互聯(lián)網(wǎng)的發(fā)展,我國已有數(shù)十億網(wǎng)民使用移動互聯(lián)網(wǎng)應(yīng)用[3],例如淘寶、抖音、微信等,這類應(yīng)用背后需要部署大量數(shù)據(jù)中心以支撐其向上億人口提供服務(wù)。因此,數(shù)據(jù)中心在當(dāng)今科技生活中發(fā)揮了重要作用,已成為必要的基礎(chǔ)設(shè)施。
數(shù)據(jù)中心作為大規(guī)模計算基礎(chǔ)設(shè)施,擁有巨大的能源預(yù)算,也導(dǎo)致了各種能源效率問題[4]。由于經(jīng)濟(jì)、環(huán)境和性能方面的影響,數(shù)據(jù)中心的能源效率也變得至關(guān)重要。首先,數(shù)據(jù)中心具有較高的經(jīng)濟(jì)影響力。數(shù)據(jù)中心空間的耗電量可能是同等面積大小的標(biāo)準(zhǔn)辦公空間耗電量的100至200倍[5]。其次,數(shù)據(jù)中心消耗大量電能,而發(fā)電會造成多項環(huán)境問題[6]。在美國,數(shù)據(jù)中心消耗了全國所有用電量的1.7%至2.2%[7]。2012年全球數(shù)據(jù)中心消耗了270千瓦時的能源,從2007年至2012年,這種消耗的復(fù)合年增長率(Compound Annual Growth Rate,CAGR)為4.4%[8]。
數(shù)據(jù)中心內(nèi)部系統(tǒng)中,主要有兩類設(shè)備消耗電能:IT設(shè)備、相關(guān)基礎(chǔ)設(shè)施(如冷卻系統(tǒng))[9]。衡量數(shù)據(jù)中心能源效率的一項重要指標(biāo)便由以上兩類設(shè)備的耗電量計算得出,這一指標(biāo)為電能利用效率——PUE(Power Usage Effectiveness),2007年由美國綠色網(wǎng)格組織(The Green Grid,TGG)提出并將其作為數(shù)據(jù)中心能源效率的一項指標(biāo),目前被國內(nèi)外數(shù)據(jù)中心行業(yè)廣泛使用[10]。PUE計算公式如式(1):
PUE=Pt/Pit,
(1)
公式(1)中,Pt為數(shù)據(jù)中心總耗電量,Pit為數(shù)據(jù)中心IT設(shè)備耗電量。數(shù)據(jù)中心總耗電量必然包含數(shù)據(jù)中心IT設(shè)備的耗電量,所以PUE是一個大于1的數(shù)值,PUE越低,說明數(shù)據(jù)中心用于IT設(shè)備以外的能耗越低。在數(shù)據(jù)中心長期運行期間,PUE的值也會受到季節(jié)、天氣以及IT負(fù)載等多方面的影響。通常來說,夜間的PUE要低于中午的PUE,為綜合判斷數(shù)據(jù)中心能源利用效率,使用連續(xù)24小時內(nèi)檢測得到的PUE均值進(jìn)行評估。
在數(shù)據(jù)中心能耗構(gòu)成中,制冷系統(tǒng)的能耗占比高達(dá)30%以上[11]。研究并優(yōu)化數(shù)據(jù)中心的制冷方案,對于數(shù)據(jù)中心的能源節(jié)約有著十分重要的意義。本文要優(yōu)化模塊化數(shù)據(jù)中心(圖1)的空調(diào)管理系統(tǒng),是維諦技術(shù)有限公司開發(fā)并推向市場的模塊化數(shù)據(jù)中心,其優(yōu)勢是有統(tǒng)一的建設(shè)標(biāo)準(zhǔn),客戶可根據(jù)自身業(yè)務(wù)需求進(jìn)行定制。如圖1所示,在數(shù)據(jù)中心內(nèi)部,兩側(cè)交錯擺放服務(wù)器S和空調(diào)AC,中間的通道稱為冷通道,數(shù)據(jù)中心外部兩側(cè)稱為熱通道。當(dāng)數(shù)據(jù)中心運行時處于封閉狀態(tài),服務(wù)器產(chǎn)生的熱量進(jìn)入冷通道,空調(diào)則會持續(xù)向冷通道吹入冷風(fēng),從而達(dá)到降溫的目的。這種情況下,數(shù)據(jù)中心內(nèi)部始終處于相對低溫的環(huán)境,且冷通道與外界隔離,減少冷量流失,最大化利用空調(diào)制冷量[12]。此外,數(shù)據(jù)中心的IT負(fù)載以及外界環(huán)境溫度都會發(fā)生變化,那么空調(diào)的開啟狀態(tài)設(shè)置也是要進(jìn)行改變的。不合適的空調(diào)設(shè)置可能會制造過多或過少的冷量,冷量過多會浪費電能,冷量過少甚至?xí)龎姆?wù)器。
圖1 模塊化數(shù)據(jù)中心平面圖
在對冷卻系統(tǒng)進(jìn)行設(shè)置后,還需要考慮以下問題:
1)延遲影響??照{(diào)的設(shè)置在需要一定的時間才能起到調(diào)節(jié)環(huán)境溫度的作用。在開啟的瞬間空調(diào)能效比很低,會比較耗電,經(jīng)過一段時間,隨著環(huán)境狀態(tài)趨于穩(wěn)定,空調(diào)耗電也趨于穩(wěn)定,這種情況下檢測到的PUE值更具有代表性。
2)隨機偏差??刂颇K讀取位于數(shù)據(jù)中心相應(yīng)位置的檢測設(shè)備(傳感器、溫度計等)的檢測結(jié)果,其得到的檢測數(shù)據(jù)不可避免會帶來一定的隨機偏差。
3)熱點問題。模塊化數(shù)據(jù)中心內(nèi)部按照一個標(biāo)準(zhǔn)建設(shè),但會發(fā)生一些無法預(yù)知熱點問題,例如某個位置機柜只能吹到少量的冷風(fēng),導(dǎo)致這一位置散熱效果略差。
為更好地控制數(shù)據(jù)中心冷卻系統(tǒng),本文提出一種基于在線學(xué)習(xí)的模塊化數(shù)據(jù)中心空調(diào)管理方案,該方案可根據(jù)數(shù)據(jù)中心實時環(huán)境狀態(tài),給出空調(diào)設(shè)置決策(包括空調(diào)開啟臺數(shù)和設(shè)置溫度),并始終保持在線學(xué)習(xí),可適應(yīng)環(huán)境的變化。此方案含有兩個機器學(xué)習(xí)模型,第一個模型采用基于高斯過程置信上界(Gaussian Process Upper Confidence Bound,Gaussian Process UCB)的多搖臂賭博機(Multi Armed Bandit)決策出空調(diào)開啟臺數(shù),第二個模型采用XGBoost回歸模型在已確定空調(diào)開啟臺數(shù)的基礎(chǔ)上決策出空調(diào)設(shè)置溫度。雙模型將決策空間解耦可加速學(xué)習(xí)過程,并且得到的決策可在保證數(shù)據(jù)中心安全的基礎(chǔ)上,實現(xiàn)最低PUE。方案在維諦技術(shù)有限公司提供的數(shù)據(jù)中心模擬實驗室進(jìn)行測試,可在一周內(nèi)實現(xiàn)出明顯的優(yōu)化效果,訓(xùn)練一周后,日均PUE穩(wěn)定在1.25左右(IT負(fù)載固定在59 KW)。
二十一世紀(jì)初,人們更關(guān)注對冷卻系統(tǒng)的優(yōu)化,通過降低冷卻系統(tǒng)自身耗能,以實現(xiàn)節(jié)能的目的。冷卻系統(tǒng)優(yōu)化涉及復(fù)雜的冷卻系統(tǒng)控制,其中冷卻系統(tǒng)由多個部件組成,如冷卻塔、水冷機組和通風(fēng)系統(tǒng)等。冷卻系統(tǒng)控制的一種常見做法是調(diào)整設(shè)定點,即不同控制變量的目標(biāo)值。例如,通過將空調(diào)器出口處的溫度控制變量設(shè)置為所需的值,空調(diào)器可以通過消耗一定的能量來調(diào)整其內(nèi)部狀態(tài)以滿足設(shè)定點。這些設(shè)定點的最佳選擇可能是具有挑戰(zhàn)性的,因為這個過程依賴于冷卻系統(tǒng)的知識,從熱動力學(xué)到力學(xué)。許多現(xiàn)有的方法都是基于一個近似的系統(tǒng)模型,該模型通常包含熱、電和機械原理的一階效應(yīng)[13-14]。這些近似模型有時無法充分或準(zhǔn)確地捕捉各種相互作用過程的復(fù)雜冷卻操作,無法得到最佳或穩(wěn)定的冷卻控制。
因本研究要研究冷卻系統(tǒng)設(shè)置結(jié)合當(dāng)前環(huán)境狀態(tài)對PUE的影響,以此開發(fā)算法模型對冷卻系統(tǒng)進(jìn)行控制,所以需要關(guān)注數(shù)據(jù)中心PUE相關(guān)的能耗模型。AeBischer等人[15]較早地提出數(shù)據(jù)中心能耗模型,如公式(2)所示:
(2)
在公式(2)中,n是類型i的設(shè)備數(shù)量,e是處于功能狀態(tài)j的功率負(fù)載,u是用戶k的使用強度。
Liu等人[16]研究發(fā)現(xiàn),不同的工作負(fù)載下,電能使用效率也不同,他們將數(shù)據(jù)中心t時刻總電能表示為
V(t)=ηpue(t)(a(t)+b(t)),
(3)
在公式(3)中,a(t)是固定負(fù)載下的電能使用情況,b(t)是變負(fù)載下的電能使用情況。AeBischer和Liu的研究表明數(shù)據(jù)中心冷卻系統(tǒng)設(shè)置同PUE之間存在聯(lián)系,這為研究通過機器學(xué)習(xí)對數(shù)據(jù)中心進(jìn)行節(jié)能控制提供了可行性。事實上,已經(jīng)有學(xué)者嘗試過在數(shù)據(jù)中心采用機器學(xué)習(xí)算法控制冷卻系統(tǒng)并進(jìn)行優(yōu)化。
近年來,人們開始研究機器學(xué)習(xí)在數(shù)據(jù)中心節(jié)能中的應(yīng)用,這類方案不假定底層系統(tǒng)的任何特定模型,而是從系統(tǒng)狀態(tài)和能耗上收集的海量數(shù)據(jù)中學(xué)習(xí)并得到控制策略[17]。2014年,谷歌工程師首次采用神經(jīng)網(wǎng)絡(luò)解決超大型數(shù)據(jù)中心節(jié)能問題,他們利用大型神經(jīng)網(wǎng)絡(luò)建模,采用監(jiān)控數(shù)據(jù)進(jìn)行訓(xùn)練,從而去預(yù)測整個數(shù)據(jù)中心下一時刻的PUE[18]。其中,神經(jīng)網(wǎng)絡(luò)包含5個隱層,輸入達(dá)19個參數(shù),包含IT負(fù)載、溫度、濕度、冷水機組、冷卻塔數(shù)量、設(shè)備位置等。這一方案使用預(yù)先采集的離線數(shù)據(jù),適用于超大型數(shù)據(jù)中心,無法被大面積推廣,但證明了機器學(xué)習(xí)用于提升數(shù)據(jù)中心能效方面是可行的。楊振等人[10]在谷歌模型基礎(chǔ)上做出了改進(jìn),他們在輸入?yún)?shù)中加入了室內(nèi)外溫度、濕度、以及冷卻水管溫度等特征,從而更全面地描述環(huán)境狀態(tài)。但以上方案有兩點不適用于解決本文的問題。一是以上方案均采用離線數(shù)據(jù)集訓(xùn)練,需要收集足夠數(shù)量的數(shù)據(jù);二是以上方案面向超大型數(shù)據(jù)中心設(shè)計,最終訓(xùn)練得到的模型僅適用于被采樣的數(shù)據(jù)中心,無法直接用于其他數(shù)據(jù)中心。本文目標(biāo)是全程采用在線學(xué)習(xí)的方式,在較短時間內(nèi)訓(xùn)練模型并有較好的優(yōu)化效果,且模型始終處于學(xué)習(xí)狀態(tài),以適應(yīng)環(huán)境的變化。
除了大型神經(jīng)網(wǎng)絡(luò)模型,還有人研究采用強化學(xué)習(xí)進(jìn)行數(shù)據(jù)中心節(jié)能。強化學(xué)習(xí)屬于機器學(xué)習(xí),近年來其研究發(fā)展迅速,為應(yīng)對解決復(fù)雜的問題,人們采用神經(jīng)網(wǎng)絡(luò)作為強化學(xué)習(xí)決策模型,將其稱為深度強化學(xué)習(xí)(Deep Reinforcement Learning,DRL)。在游戲領(lǐng)域和虛擬機任務(wù)調(diào)度領(lǐng)域,深度強化學(xué)習(xí)已取得了進(jìn)展[19-20]。深度強化學(xué)習(xí)可實現(xiàn)在線學(xué)習(xí)的方式,適合解決一些數(shù)據(jù)中心節(jié)能問題。Li等人[21]就已經(jīng)采用深度強化學(xué)習(xí)算法進(jìn)行處理數(shù)據(jù)中心冷卻系統(tǒng)優(yōu)化,他們將工作負(fù)載列表和環(huán)境溫度列表定義為狀態(tài)空間,采用PUE和每個區(qū)域的IT設(shè)備出風(fēng)口溫度作為收益值。他們的訓(xùn)練目標(biāo)是最小化PUE,同時將IT設(shè)備出風(fēng)口溫度保持設(shè)定目標(biāo)溫度,收益值如公式(4):
(4)
在公式(4)中,s表示當(dāng)前的冷卻系統(tǒng)設(shè)置,εpue表示檢測到的PUE值,T是檢測到的IT設(shè)備出風(fēng)口溫度,φ則是設(shè)定的標(biāo)準(zhǔn)溫度。但基于現(xiàn)實條件,可以獲得的數(shù)據(jù)中心監(jiān)測數(shù)據(jù)量還是太小,依靠PUE收益值的設(shè)計排除那些PUE低但溫度較高的決策無疑會影響學(xué)習(xí)效率。經(jīng)過實驗,發(fā)現(xiàn)深度強化學(xué)習(xí)效果并不理想,轉(zhuǎn)而采用一種復(fù)合式的在線學(xué)習(xí)方案。該方案采用多搖臂賭博機和XGBoost兩個機器學(xué)習(xí)模型將空調(diào)設(shè)置的決策空間解耦,可加速訓(xùn)練。
多搖臂賭博機模型將決策視為一個個搖臂,決策時根據(jù)估計的各個搖臂收益值選擇搖臂,做出選擇后可根據(jù)真實的收益值進(jìn)行訓(xùn)練。經(jīng)過多輪決策,模型估計各個搖臂的收益越來越精確,從而做出最佳選擇。
實現(xiàn)多搖臂賭博機的重要挑戰(zhàn)是需要平衡探索和利用,以盡量能選擇到哪些收益最高的搖臂。一方面,要多選擇那些過去的實驗中收益最高的搖臂,這屬于利用;另一方面,要均衡選擇,爭取所有搖臂都被充分選擇,這屬于探索。在訓(xùn)練過程中,若過多注重利用,即頻繁選擇之前收益值更高的決策,一些潛在的好決策將無法被選擇,造成模型訓(xùn)練陷入局部最優(yōu),對收益值的估計失準(zhǔn);若過多注重探索,即頻繁隨機選擇決策,不參考模型對各個決策的收益估計值,那么會做出大量不好的決策,這樣會大大降低模型的有效率。因此,需要對探索和利用做一個合適的權(quán)衡,避免過于偏向兩者任何一方。
對于平衡探索和利用,最簡單直接的策略就是ε貪心策略。在每輪試驗t中,該算法首先估計每個搖臂的平均收益μt。然后,用ε的概率進(jìn)行貪心選擇,即選擇收益最高的搖臂,以1-ε的概率隨機選擇搖臂。在訓(xùn)練輪次夠多的情況下,每個搖臂都會被充分地嘗試,模型每個搖臂的收益估計值μt也會更加精確。 此外,隨著訓(xùn)練輪次的增加,可適當(dāng)增大ε,這樣將會逐漸降低探索的機率,增加利用的機率,從而保證模型收斂后做出更多收益高的決策。
與ε貪心所采用的非引導(dǎo)探索策略相比,置信上界(Upper Confidence Bound,UCB)策略使用一種更聰明的方法來平衡探索和利用。簡單來說,就是每個搖臂的預(yù)估收益值由根據(jù)歷史數(shù)據(jù)估計的收益值加上置信區(qū)間的長度得到。在第t輪訓(xùn)練期間,采用相應(yīng)的算法去估計各個搖臂的收益值μt,a和相對應(yīng)的置信區(qū)間ct,a,使得|μt,a-μr| (5) 在一輪訓(xùn)練中,對于過去訓(xùn)練中選擇次數(shù)較少甚至未選擇過的搖臂,其置信區(qū)間比較大,最終預(yù)估到的置信上界也會很大。對于多次選擇且收益較高的搖臂,雖然置信區(qū)間很小,但預(yù)測的收益值很大。因此,UCB可以引導(dǎo)學(xué)習(xí)器傾向于選擇那些表現(xiàn)好的或者選擇次數(shù)不足的搖臂,從而比較好地解決探索和利用之間的權(quán)衡問題。 近些年多搖臂賭博機模型在多個領(lǐng)域(推薦系統(tǒng),云資源配置等)皆有應(yīng)用,并有了改進(jìn)的實現(xiàn)方式。Li等人[22]提出了基于的Linear UCB多搖臂賭博機的個性化新聞推薦模型,用于雅虎的新聞推薦系統(tǒng)。Linear UCB是線性回歸結(jié)合多搖臂賭博機的方案,其中使用嶺回歸對收益值進(jìn)行回歸預(yù)測。Liu等人[23]提出了Accordia模型——利用高斯過程置信上界(Gaussian Process UCB)結(jié)合多搖臂賭博機去決策自適應(yīng)云服務(wù)最佳資源配置,其中采用Gaussian Process UCB進(jìn)行計算各搖臂的收益值和置信區(qū)間。本文的在線學(xué)習(xí)方案也是將基于Gaussian Process UCB的多搖臂賭博機作為第一個模型。 μt(x)=kt(x)T(Kt+σ2I)-1yt, (6) kt(x,x′)=k(x,x')-kt(x)T(Kt+σ2I)-1kt(x′), (7) (8) 在第t輪決策周期,已經(jīng)觀察到t-1個樣本數(shù)據(jù),yt-1={y1,y2,…,yt-1}和At-1={x1,x2,…,xt-1},則可以采用公式(6)和公式(8)進(jìn)行預(yù)測當(dāng)前狀態(tài)下選擇每個搖臂所得到的收益值以及方差??梢愿鶕?jù)公式(9)來選擇第t輪要選擇的搖臂(決策,即開啟的空調(diào)臺數(shù)): (9) 在公式(9)中, 其中times表示迭代次數(shù),n表示存儲的樣本的數(shù)據(jù)量。 為了優(yōu)化模塊化數(shù)據(jù)中心冷卻控制系統(tǒng),提出的方案要能夠根據(jù)當(dāng)前的環(huán)境狀態(tài)決策出數(shù)據(jù)中心的空調(diào)開啟臺數(shù)和設(shè)定溫度,使得當(dāng)前數(shù)據(jù)中心的冷通道溫度維持在設(shè)定的目標(biāo)溫度,且空調(diào)的耗電量最低。采用日均PUE作為衡量數(shù)據(jù)中心能源利用效率的指標(biāo),并且保證冷通道溫度穩(wěn)定。一方面,數(shù)據(jù)中心的冷通道溫度過高,會降低服務(wù)器散熱效率,甚至?xí)龎姆?wù)器硬件;另一方面,只有控制住冷通道溫度這一變量,才可根據(jù)日均PUE來評估數(shù)據(jù)中心電能利用效率。因此,本目標(biāo)就是:在冷通道溫度維持在設(shè)定值的情況下,使得模塊化數(shù)據(jù)中心PUE值最低,用數(shù)學(xué)公式表達(dá)如下: 珠三角、長三角、京津冀作為中國區(qū)域經(jīng)濟(jì)一體化的三大重點經(jīng)濟(jì)圈均受到了不同程度的政策傾斜與支持,改革開放之后,隨著上世紀(jì)70年代深圳經(jīng)濟(jì)特區(qū)和90年代上海浦東新區(qū)的建立,珠三角與長三角的對外貿(mào)易和區(qū)域經(jīng)濟(jì)發(fā)展都得到了不同程度的推動。京津冀地區(qū)身處內(nèi)陸,缺乏長三角和珠三角的對外貿(mào)易地理優(yōu)勢。同時相較于北京天津高水平的科技實力和對人才的強勁吸引力,河北省在基礎(chǔ)設(shè)施建設(shè)、高新技術(shù)水平提升和產(chǎn)業(yè)結(jié)構(gòu)優(yōu)化等多個領(lǐng)域都與京津地區(qū)有較大差距。因而,要推進(jìn)區(qū)域經(jīng)濟(jì)的協(xié)調(diào)發(fā)展,推動京津冀地區(qū)一體化水平的提升,需要通過新區(qū)的建設(shè)來增強河北省經(jīng)濟(jì)發(fā)展和產(chǎn)業(yè)結(jié)構(gòu)調(diào)整的動力,從而提升京津冀協(xié)調(diào)發(fā)展水平[2]。 s.t:T0-V (10) 公式(10)中,T0表示目標(biāo)冷通道溫度,V表示允許溫度波動的范圍,Ps,t表示數(shù)據(jù)中心在t時刻的空調(diào)設(shè)置為s情況下的PUE,Ts,t表示數(shù)據(jù)中心在t時刻的空調(diào)設(shè)置為s情況下的平均冷通道溫度。 為實現(xiàn)目標(biāo),要求模型可在一輪決策周期內(nèi)對空調(diào)的開啟臺數(shù)和設(shè)置溫度進(jìn)行控制,并在保持冷通道溫度達(dá)標(biāo)的情況下,降低模塊化數(shù)據(jù)中心PUE,直到PUE收斂到某一值。從模型上線時起,模型即可對冷卻系統(tǒng)設(shè)置不斷做出決策,同時搜集數(shù)據(jù)進(jìn)行在線學(xué)習(xí)。在一輪決策周期內(nèi),模型首先從各類傳感器得到環(huán)境狀態(tài),然后給出決策,之后得到新的環(huán)境狀態(tài)和收益值,模型根據(jù)新的環(huán)境狀態(tài)做出決策并使用收益值進(jìn)行在線學(xué)習(xí)。決策共包含兩個信息:空調(diào)開啟數(shù)和設(shè)置溫度。假定模塊化數(shù)據(jù)中心配有6臺空調(diào),設(shè)置溫度區(qū)間范圍是18 ℃-22 ℃,只取整數(shù)選項。通常情況下,決策空間由全部空調(diào)開啟臺數(shù)決策和全部空調(diào)設(shè)置溫度排列組合得到,那么決策空間大小將是空調(diào)開啟臺數(shù)決策空間和設(shè)置溫度決策空間大小的乘積,即6*5=30,這樣會產(chǎn)生兩個問題: 1)決策空間過大,且含有過多無用決策,從而降低學(xué)習(xí)效率。例如,開啟全部空調(diào),設(shè)置18 ℃情況下冷通道溫度會遠(yuǎn)低于設(shè)定值,導(dǎo)致制冷過度 2)決策空間中含有高危決策。例如,開啟兩臺空調(diào),設(shè)置21 ℃情況下,冷通道溫度過高,服務(wù)器產(chǎn)生的熱量無法及時排出,導(dǎo)致燒壞服務(wù)器。 為避免以上問題,采用兩個算法模型分別對空調(diào)開啟數(shù)和設(shè)置溫度給出決策。即第一個模型首先給出空調(diào)開啟臺數(shù)決策,第二個模型跟據(jù)環(huán)境狀態(tài)和空調(diào)開啟臺數(shù)決策空調(diào)的設(shè)置溫度。雙模型可將動作空間進(jìn)行解耦,使得動作空間縮小數(shù)十倍,又可以避免選擇不合適的決策。 每5分鐘讀取一次環(huán)境檢測采樣,設(shè)定訓(xùn)練周期為一個半小時,包含18組樣本數(shù)據(jù)。在一輪決策周期開始時,模型會做出決策,包含空調(diào)開啟臺數(shù)和設(shè)置溫度,采用決策周期最后4次檢測樣本的平均值作為此次決策后的環(huán)境狀態(tài)state和PUE值,從而解決延遲影響和隨機偏差。為解決熱點問題,按照空調(diào)臺數(shù)進(jìn)行分區(qū),每個區(qū)域所有檢測結(jié)果的平均值作為該區(qū)域的環(huán)境狀態(tài)。 對于空調(diào)開啟臺數(shù),采用基于Gaussian Process UCB的多搖臂賭博機模型進(jìn)決策。當(dāng)一輪決策周期開始時,多搖臂賭博機模型會得到當(dāng)前的環(huán)境信息,將環(huán)境狀態(tài)同各個空調(diào)開啟臺數(shù)組合得到一組x(包括IT負(fù)載、平均送風(fēng)溫度、平均回風(fēng)溫度、平均冷通道溫度、平均熱通道溫度、空調(diào)開啟臺數(shù)),然后將其分別代入Gaussian Process UCB公式進(jìn)行計算,最后根據(jù)公式(9)進(jìn)行決策空調(diào)開啟臺數(shù)。 對于設(shè)置溫度,采用XGBoost回歸模型進(jìn)行決策。XGBoost是基于決策樹的回歸模型[26]。當(dāng)多搖臂賭博機模型給出空調(diào)開啟臺數(shù)的決策時,將其同環(huán)境狀態(tài)組合,作為監(jiān)督學(xué)習(xí)的樣本值,然后根據(jù)XGBoost回歸模型預(yù)測各個空調(diào)設(shè)置溫度下的冷通道溫度,選擇最接近設(shè)定的目標(biāo)冷通道溫度的設(shè)置溫度決策。 圖2 XGBoost模型預(yù)測過程 如圖2所示,為了精準(zhǔn)調(diào)節(jié)冷通道溫度,將每個決策周期的環(huán)境狀態(tài)以及空調(diào)設(shè)置作為特征X,將每個控制周期穩(wěn)定后的冷通道溫度作為標(biāo)簽Y。一方面,XGBoost回歸模型采用數(shù)據(jù)集進(jìn)行擬合訓(xùn)練;另一方面,XGBoost根據(jù)特征X去預(yù)測一輪訓(xùn)練周期結(jié)束時的冷通道溫度。圖3描述了使用XGBoost回歸模型進(jìn)行決策的全部過程。在進(jìn)行空調(diào)設(shè)置溫度決策時,首先將環(huán)境狀態(tài)同空調(diào)開啟臺數(shù)組合,并依次拼接所有的設(shè)置溫度(例如18 ℃,19 ℃,20 ℃,21 ℃,22 ℃)得到幾組特征X,接著使用XGBoost回歸模型依次預(yù)測每組特征X對應(yīng)的冷通道溫度Y,最后選出最接近目標(biāo)溫度的冷通道溫度Y,其對應(yīng)的特征X中的設(shè)置溫度即為此次溫度決策。整個過程如圖3所示,此時環(huán)境狀態(tài)(包括IT負(fù)載、平均冷通道溫度、平均熱通道溫度、平均送風(fēng)溫度、平均回風(fēng)溫度)和空調(diào)開啟臺數(shù)已經(jīng)確定,將各種設(shè)置溫度決策帶入,依次預(yù)測相應(yīng)的冷通道溫度。圖3中可以看出,空調(diào)設(shè)置溫度為19℃時,預(yù)測的冷通道溫度最接近設(shè)定的目標(biāo)溫度(22℃)。 圖3 XGBoost模型決策過程 介紹了多搖臂賭博機模型和XGBoost回歸模型各自模塊的決策過程,那么方案整體流程如圖4所示,方案總共包括四個階段: 1)每個決策周期開始時,在線學(xué)習(xí)模型得到當(dāng)前的環(huán)境狀態(tài),將其輸入第一個決策模型多搖臂賭博機,該模型根據(jù)公式(9)得出空調(diào)開啟臺數(shù)決策。 2)將空調(diào)開啟臺數(shù)同環(huán)境狀態(tài)組合,得到新的數(shù)據(jù),輸入第二個決策模型XGBoost,該模型可得出空調(diào)設(shè)置溫度決策。 3)將空調(diào)的完整決策輸入控制系統(tǒng)進(jìn)行應(yīng)用,數(shù)據(jù)中心相應(yīng)數(shù)量的空調(diào)將會處于開啟狀態(tài),同時設(shè)定相應(yīng)的溫度。 4)數(shù)據(jù)中心環(huán)境隨之變化,等到?jīng)Q策周期結(jié)束的時候,在線學(xué)習(xí)模型可得到數(shù)據(jù)中心PUE值,可用于模型訓(xùn)練,同時獲得新的環(huán)境狀態(tài),接著重復(fù)1)、2)、3)步驟,進(jìn)入新一輪訓(xùn)練周期。 圖4 整體方案流程 在維諦技術(shù)有限公司提供的模塊化數(shù)據(jù)中心實驗室測試算法模型,每次測試為期十天左右。該類數(shù)據(jù)中心實驗室可模擬真實場景下的數(shù)據(jù)中心并提供相應(yīng)的IT負(fù)載環(huán)境。在數(shù)據(jù)中心實驗室測試算法模型要注意以下兩點:1)測試流程按照現(xiàn)實進(jìn)行,比較費時且花費巨大,故在實驗室部署測試前需要確保算法有效,避免無效的方案浪費時間;2)實驗室完全模擬模塊化數(shù)據(jù)中心環(huán)境,需要考慮安全性問題,部署前須確保方案不會導(dǎo)致實驗室處于危險狀態(tài)——機柜溫度過高。針對以上兩點,在設(shè)計開發(fā)方案時,需要提前在相應(yīng)的環(huán)境模擬器進(jìn)行測試。模擬器可像真實部署環(huán)境一樣提供環(huán)境狀態(tài),并接受方案提供的決策。 在開發(fā)過程中,模擬器由公司相關(guān)業(yè)內(nèi)人員根據(jù)服務(wù)器產(chǎn)生熱量,空調(diào)制冷等相關(guān)參數(shù)開發(fā)并提供。最終采用環(huán)境模擬器和實驗室對方案進(jìn)行測試,并進(jìn)行對比實驗。其中,第二個模型固定XGBoost不變,第一個模型除了基于Gaussian Process UCB的多搖臂賭博機算法外,還會換成深度強化學(xué)習(xí)和基于Linear UCB的多搖臂賭博機進(jìn)行測試對比。 首先在模擬器上面進(jìn)行固定IT負(fù)載環(huán)境測試,之后在模擬器上面進(jìn)行變IT負(fù)載測試,最后選擇方案在維諦技術(shù)有限公司提供的實驗室進(jìn)行測試。 測試過程包含如下兩個階段: 1)實驗的前三天,進(jìn)行隨機決策以獲得樣本數(shù)據(jù)用于XGBoost模型初始訓(xùn)練數(shù)據(jù)集; 2)采樣完畢模型即會進(jìn)行在線學(xué)習(xí),并跟據(jù)當(dāng)前環(huán)境狀態(tài)做出空調(diào)控制決策。 首先設(shè)定數(shù)據(jù)中心的IT負(fù)載變化幅度很小,在數(shù)據(jù)中心整體IT負(fù)載穩(wěn)定時,環(huán)境狀態(tài)整體比較穩(wěn)定,空調(diào)的決策也趨于穩(wěn)定。這種情況下,空調(diào)的開啟臺數(shù)在晝夜交替的時候會變化,甚至不變,PUE的變化也會趨于穩(wěn)定,因此學(xué)習(xí)難度也會更低。在環(huán)境模擬器上進(jìn)行測試Gaussian Process UCB,Linear UCB,深度強化學(xué)習(xí)(DRL)三種方案。三種方案只有第一個模型不同,第二個模型均為XGBoost回歸模型。 由于固定IT負(fù)載情況下學(xué)習(xí)難度較小,三種方案經(jīng)過短時間訓(xùn)練即表現(xiàn)出優(yōu)化效果,PUE迅速下降到較低的水平,且可以收斂。如圖5所示,在固定IT負(fù)載情況下運行三種方案,可見到三種方案均起到優(yōu)化效果,PUE降低,并可收斂。并且基于多搖臂賭博機的方案比基于強化學(xué)習(xí)的方案更優(yōu),其最終PUE更低。 圖5 固定IT負(fù)載下PUE變化趨勢 實際應(yīng)用場景中,IT負(fù)載會因為業(yè)務(wù)變化或者一些外界因素出現(xiàn)抖動,這一現(xiàn)象勢必也使得PUE變化,增大優(yōu)化控制難度。調(diào)整了模擬器的參數(shù),使得IT負(fù)載隨著時間變化,且變化頻率和幅度超過實際應(yīng)用場景的變化程度,其他條件不變,在此基礎(chǔ)上進(jìn)行上述三種方案的測試。 兩種基于多搖臂賭博機模型的方案可以較快地降低PUE,使其最終收斂在較低的水平,優(yōu)化效果比較好。如圖6所示,在IT負(fù)載變動情況下運行三種方案,深度強化學(xué)習(xí)的效果遠(yuǎn)不如Gaussian Process UCB 和Linear UCB方案,PUE優(yōu)化效果不佳,后期無法穩(wěn)定,甚至?xí)UE轉(zhuǎn)而升高的現(xiàn)象。 Linear UCB同Gaussian Process UCB算法效果接近,使得PUE降低,直至收斂穩(wěn)定。其中,Linear UCB收斂速度很快,Gaussian Process UCB方案探索性更好。 圖6 變IT負(fù)載下PUE優(yōu)化效果對比 將Gaussian Process UCB方案和深度強化學(xué)習(xí)方案部署在維諦技術(shù)有限公司提供的數(shù)據(jù)中心模擬實驗室進(jìn)行測試對比。實驗室完全擬真模塊化數(shù)據(jù)中心,前期設(shè)定IT負(fù)載為59 KW,若一周內(nèi)觀察到PUE明顯降低且趨于穩(wěn)定則會將IT負(fù)載降低為45 KW測試模型是否能適應(yīng)IT負(fù)載的變化。在此需要說明,兩個方案的測試時間相隔兩個月,而現(xiàn)實數(shù)據(jù)中心環(huán)境會隨著季節(jié),天氣發(fā)生改變,所以在模擬實驗室的測試并非為了單純比較PUE值的高低,而是比較PUE的下降趨勢和冷通道平均溫度是否穩(wěn)定。 經(jīng)過兩周的實驗室測試,Gaussian Process UCB方案效果比較理想,可根據(jù)環(huán)境選擇合適的空調(diào)設(shè)置,降低數(shù)據(jù)中心PUE,并且可適應(yīng)IT負(fù)載的變化。如圖7所示,測試前七天內(nèi),Gaussian Process UCB方案可發(fā)揮明顯的優(yōu)化效果,PUE呈現(xiàn)下降趨勢,第七天降低IT負(fù)載后,PUE短暫升高,但Gaussian Process UCB方案可適應(yīng)環(huán)境的變化,繼續(xù)進(jìn)行學(xué)習(xí)優(yōu)化,PUE隨后降低并保持穩(wěn)定。而基于強化學(xué)習(xí)的方案在實際場景中表現(xiàn)不理想,在全程沒改變IT負(fù)載地情況下,初期可以見到PUE曲線降低,后期PUE曲線一直不穩(wěn)定,出現(xiàn)了PUE再次上升的情況。 圖7 場景測試PUE趨勢對比圖 在測試過程中,Gaussian Process UCB方案不僅可以降低PUE,還可以維持冷通道溫度在設(shè)定值,可保證數(shù)據(jù)中心的安全。如圖8所示,Gaussian Process UCB方案將冷通道溫度維持在設(shè)定的目標(biāo)溫度(22℃)附近,數(shù)據(jù)中心的安全得以保證。而強化學(xué)習(xí)方案對冷通道溫度控制不佳,始終在波動,后期甚至出現(xiàn)冷通道溫度上升的情況。 提出了用于數(shù)據(jù)中心節(jié)能的在線學(xué)習(xí)方案,該方案包含兩種機器學(xué)習(xí)模型,首先采用基于Gaussian Process UCB的多搖臂賭博機模型決策空調(diào)開啟臺數(shù),然后用XGBoost回歸模型決策空調(diào)設(shè)置溫度。實驗表明,該方案可使數(shù)據(jù)中心控制系統(tǒng)根據(jù)環(huán)境狀態(tài)智能選擇空調(diào)開啟臺數(shù)和設(shè)置溫度。在沒有任何前置訓(xùn)練的情況下,該算法搜集數(shù)據(jù)并進(jìn)行學(xué)習(xí),可在一周之內(nèi)達(dá)到較好的優(yōu)化效果。在技術(shù)細(xì)節(jié)方面,該方案有以下兩個優(yōu)勢:第一、多搖臂賭博機模型結(jié)合XGBoost模型進(jìn)行在線學(xué)習(xí)與空調(diào)控制,將可選動作空間解耦,加快在線學(xué)習(xí)的收斂速度,并可靈活調(diào)整目標(biāo)溫度;第二、模型以在線學(xué)習(xí)的方式持續(xù)學(xué)習(xí),可適應(yīng)環(huán)境的變化,包括IT負(fù)載變化、晝夜輪轉(zhuǎn)、季節(jié)變換。 圖8 場景測試?yán)渫ǖ罍囟融厔輰Ρ葓D2.2 高斯過程置信上界
3 方案設(shè)計
3.1 方案目標(biāo)
3.2 方案流程
3.3 整體方案流程
4 實驗分析
4.1 測試環(huán)境
4.2 測試流程
4.3 固定IT負(fù)載
4.4 變IT負(fù)載
4.5 模擬實驗室
5 結(jié)語