鄧翔 陳文景 鄧仕鈞
1 深圳達實智能股份有限公司
2 華南理工大學自動化科學與工程學院
3 清華大學建筑學院
中央空調系統為人們帶來舒適的室內環境同時也消耗著巨大的電能。由于室外天氣、室內得熱量等因素的變化會使空調冷負荷需求也不斷改變。這時需要通過改變冷水機組的運行策略進行,滿足冷負荷需求同時保持冷水機組的高效率運行。由于空調系統的高延遲、大滯后性特點[1],僅依靠負反饋調節的空調系統可能無法保證室內熱舒適性和冷水機組節能運行。因此本文旨在研究通過負荷預測模型得到下一時刻的負荷預測值,從而幫助空調冷水機組實現預調節。
目前關于空調負荷預測預測的方法主要可以分為兩類[2]:
1)基于數學統計分析的方法,如自回歸積分滑動平均模型(Autoregressive Moving Average,ARMA)、多元線性回歸(Multiple Linear Regressions,MLR)等。這些方法考慮了數據的時序性關系,然而對非線性關系數據的預測精度不足。
2)基于人工智能的算法,如BP 神經網絡、隨機森林(Random Forest,RF)、支持向量機(Support Vector Machine,SVM)等。這些方法解決了數據的非線性問題然而卻缺少對時序數據時間相關性的考慮。
空調負荷預測受很多因素的影響,難以建立直觀地線性預測模型了,同時空調負荷具有較強的時序性。因此,為解決空調負荷預測中數據非線性和時序性的問題,本文采用基于深度學習LSTM 學習模型[3]對短期空調負荷進行預測。
長短期記憶網絡(Long-short Term Memory,LSTM)是基于循環神經網絡(Recurrent Neural Networks,RNN)[4]改進的一種算法。傳統神經網絡中,所有的輸入(包括輸出)之間是相互獨立的。與傳統的前饋神經網絡不同,RNN 通過周期性地連接隱層節點,利用在序列數據中上一時刻保存的記錄歷史信息用于當前輸出的計算。一個典型的RNN 網絡結構展開后如圖1 所示,x(t)表示t 時刻的輸入,為t 時刻的隱藏層狀態,O(t)是t 時刻的輸出。

圖1 RNN 結構
由圖1 可知,不同于傳統神經網絡,隱藏層的輸入有兩個,即當前時刻的輸入x(t)和上一個隱藏層的輸出s(t-1)。W 表示輸入的權重,U 表示此刻輸入的樣本的權重,V 表示輸出的樣本權重。故有:

雖然RNN 解決了輸入信息前后關聯的問題,但是當先前信息和當前任務之間的時間間隔不斷增大時,循環神經網絡會喪失學習過去較久遠信息的能力。因此本文計劃采用基于RNN 改進算法,即LSTM神經網絡模型,來解決上述梯度消失的問題。
LSTM 的計算節點由輸入門(Input gate)、輸出門(Output gate)、遺忘門(Forget gate)三個門組成,用以記錄當前時刻狀態。三個門是從塊的內部與外部接收激勵的非線性求和單元,并通過乘法(圖2 中的黑色圓點)計算來控制輸入細胞狀態的激勵。虛線表示從細胞狀態到門的加權連接。輸入和輸出門分別與輸入和輸出相乘,而遺忘門則與細胞的前一狀態相乘。遺忘門有激活函數,使得門的輸出值在[0,1]之間,當門輸出不為0 時,標示將保留部分上一狀態的信息。乘法門允許長短期記憶存儲器單元長時間存儲和訪問信息,從而減輕梯度消失的問題。

圖2 LSTM 結構
本次試驗使用的數據是某大樓從2017 年到2018年逐時空調負荷數據。每組逐時空調負荷數據包括時間、室外氣象參數(溫度、相對濕度、風速、風向、降雨)、冷水機組冷卻水和冷凍水供回水溫度及空調負荷(由冷凍水供回水溫差乘以冷凍水流量計算獲得)。
1)數據清洗
對數據檢查發現,由于數據存儲設備故障,從2017 年11 月18 日到2018 年6 月8 日空調系統數據庫內存在大量無效值,故將此段數據剔除數據集。并對其他時間段內個別無效數據,異常數據和缺失數據則進行替換或插值填補,最終獲取12170 組數據。
2)數據標準化
由于不同數據(如室外溫度與大氣壓力)之間量綱差距較大會造成數值間的差異,在進行空間距離計算時會影響結果的準確性。本文采用離差標準化法[5]對數據進行標準化處理:

式中:Xnorm為標準化后的值,X 為標準化前的值,Xmin為樣本數據最小值,Xmax為樣本數據最大值。
3)數據適配
采用LSTM 模型時,需要將數據集轉化為有監督學習問題,將當前時刻空調負荷特征移除,從而利用前n 個時刻的空調數據組數據預測了當前時刻的空調負荷。
4)數據劃分
本次實驗以2017 年數據為訓練集,共7898 組數據。以2018 年數據為測試集,共4271 組數據。
5)預測結果誤差評估標準
采用均方根誤差(Root Mean Squared Error,RMSE)和平均絕對誤差(Mean Absolute Error,MAE)[6]對模型預測結果及精度進行評估。RMSE 與MAE 分別定義為:

本次實驗采用單層LSTM 網絡,模型中的損失函數采用平均絕對誤差(Mean Absolute Error,MAE),優化算法采用Adam 算法。在選取batch size 時,batch size 越大,其確定的下降方向越準確,處理相同數據量的速度越快,引起訓練震蕩越小。然而,隨著batch size的增大,處理相同數據量的速度越快,但達到相同精度所需要的epoch 數量越來越多,最終收斂精度會陷入局部極值。在不同bath size 和Epoch 下,模型預測結果的均方根誤差與平均絕對誤差結果如表1 所示:

表1 不同Batch size 和Epoch 組合下的模型精度
根據調試結果,模型采用200 個epoch 并且每個batch 的大小為800 時,獲得的最終結果最為理想(均方根誤差與平均絕對誤差相對較小且計算速度相對較快)。
為對模型預測精度進行評估,本文將所用負荷預測模型與現有預測方法進行比較,包括基于數學統計分析的多元線性回歸法(MLR)和基于人工智能的支持向量機法(SVM)[7]。表2 該出了采用不同預測方法時的負荷預測結果誤差情況:

表2 不同預測方法的預測結果誤差對比
基于數學統計分析的MLR 法主要考慮了數據的時序性關系,而對非線性關系數據的預測精度不足;相反地,基于人工智能的SVM 法解決了數據的非線性問題然而卻缺少對時序數據時間相關性的考慮。從表2 的結果可以看出,基于MLR 方法的負荷預測誤差均要高于采用SVM 的方法預測結果誤差。可以推測,相對于數據的時序性關系,數據的非線性關系對負荷預測的結果的準確性影響更大。然而,由于兩種預測方法沒有同時考慮數據時序性和非線性,因此兩者的誤差結果均偏大。而采用LSTM 深度學習時由于同時考慮了數據的時序性和非線性問題,其負荷預測結果誤差要顯著小于其他兩種預測方法,精度最高。
圖3 進一步展示了某一周內案例建筑空調短期負荷預測結果(由于周六周天存在加班人員,空調也會開啟,但是空調冷負荷明顯小于工作日)。從圖3 中可以看出,采用LSTM 深度學習預測方法整體上能夠比較準確的預測空調負荷的變化趨勢以及各個時刻的負荷值。值得注意的是,由于空調晚上并未開啟且建筑未做夜間自然通風降溫處理,剛上班時(7:00AM-8:00AM),室內溫度較高,需要空調短時間提供大量冷負荷進行降溫。此時的空調負荷需求階躍式變化會導致預測結果會出現較大誤差。

圖3 基于LSTM 算法的空調負荷短期預測結果
空調負荷受很多因素的影響,難以建立直觀地線性預測模型,由于這些影響因素整體會隨時間會發生規律性變化,因此空調負荷也具有較強的時序性。空調冷負荷預測一般會采用傳統的時序模型或普通機器學習模型,因而無法兼顧空調負荷預測的這兩個特點。本文采用某大樓空調負荷系統歷史數據建立了一個基于深度學習的LSTM 神經網絡,并利用該模型對大樓空調短期負荷預測效果進行了測試。試驗結果表明,LSTM 模型相比于其他兩類預測模型,在預測準確度上有明顯得提升。結果還顯示當空調負荷需求階躍式變化會導致預測結果會出現較大誤差,因此在將來的研究中可針對該情況對模型做進一步的改進。