王悅 黃澤天 鄒鋒



摘要:針對大型公共建筑之中實際能耗數據缺乏、能耗預測精度低的問題,提出了一種方法——基于生成對抗網絡的Q學習能耗預測算法(Reinforcement Learning Algorithm Based on Generative Adversarial Networks,GAN_RL)。該算法首先將能耗數據轉化成時間標記的數據,同時利用生成對抗網絡生成部分建筑能耗數據,并將其加入原始能耗數據之中,將前幾個時辰的能耗數據通過環境狀態進行建模,結合Q學習方法預測后續能耗。該算法采用結合生成對抗網絡與Q學習的方法解決了能耗數據不足的問題。實驗表明,該算法能有效地預測建筑能耗,預測精度高。
關鍵詞:建筑能耗; 生成對抗網絡;Q學習;能耗預測
中圖分類號:TP181? ? ? ? 文獻標識碼:A
文章編號:1009-3044(2020)23-0222-03
Abstract: Aiming at the problem of lack of actual energy consumption data and low accuracy of energy consumption prediction in large public buildings, a method based on Q-learning algorithm based on generative adversarial networks (GAN_RL) is proposed. Firstly, the energy consumption data is transformed into time tagged data. At the same time, part of the building energy consumption data is generated by the generation of countermeasures network and added to the original energy consumption data. The energy consumption data of the first few hours are modeled through the environmental state, and the subsequent energy consumption is predicted by combining the Q-learning method. In this algorithm, the problem of energy consumption data shortage is solved by combining the generation of countermeasure network and Q-learning. Experimental results show that the algorithm can effectively predict building energy consumption with high accuracy.
Key words: building energy; generative adversarial networks;Q-learning; energy consumption prediction
1 緒論
在我國經濟突飛猛進的今天,大型公共建筑的總數量呈逐年上升的態勢,同時大型公共建筑的耗電量也是普通居民住宅的幾十倍[1]。隨著社會發展速度的加快,大型公共建筑耗能高的難題日漸凸顯,關于大型的公共建筑能耗變化和發展特性進行剖析,能夠為城市的建筑節能任務給予一定的根據[4]。因而在大型建筑的用電能耗進行預測是必要的。
關于大型公共建筑一類能耗預測的問題, 2018年,Lai等人提出了一種能耗預測算法,該算法使用人工神經網絡用歷史能耗數據訓練神經網絡,達到預測能耗的目的[3]。但是該算法存在收斂速度慢、效率比較低的問題。因此,劉倩穎等人于2018年提出了基于kmeans聚類與BP神經網絡的建筑能耗預測模型,此算法在BP神經網絡的基礎上,應用kmeans聚類算法以在它之上聚類,顯著提高了預測精度[1]。但是,目前人工神經網絡算法的改進基本來說是從改良神經網絡的方面入手的,或者提高歷史能耗數據的利用率,沒有考慮到從數據樣本大小的角度出發去改善預測精度。生成對抗網絡(Generative Adversarial Networks,GAN)主要是生成器模型及判別器模型構成,其暗含的根本思想是從訓練數據庫中得到足量的經驗樣本,并學習這些經驗樣本的概率分布,以處理數據樣本缺乏的難題[4]。
本文針對大型公共建筑能耗預測精度不高的問題,提出一種算法,該算法將生成對抗網絡與Q學習相結合作為一種建筑能耗預測算法(Reinforcement Learning Algorithm Based on Generative Adversarial Networks,GAN_RL)。該算法通過采集建筑能耗形成真實能耗樣本池,而后應用GAN構成GAN產生的數據樣本池作為新生成的能耗樣本。兩者共同為Q學習預測模型提供訓練樣本。這個算法將能耗數據轉化成時間標記的數據,經過前幾個時辰的能耗對環境狀態進行建模,結合Q學習方法預測后續能耗。該算法有效解決了因能耗樣本不足而導致的大型建筑能耗預測準確率較低的問題,為解決能耗預測問題提供了新思路。試驗結果表明,該能耗預測方法預測的精度較高。
2 背景知識
建筑能耗的預測與分析是確定合理節能策略的根底,是節約能耗降低耗能工作的研究熱點之一, 目前很多專家學者于建筑節能問題進行了深入的研究[5],從研究對象的角度大抵可以被分兩類:第一類主要從建筑結構方面著手,在建筑最初規劃設計階段使用建筑能耗模擬軟件對建筑能耗進行預測[1]。在建筑構建階段進行軟件仿真對于建筑能耗剖析具備相當價值的側面作用,通過軟件模擬可以細致研究建筑物本身不可變因素對能耗的影響。雖然在建筑設計初期通過軟件模擬可以獲得建筑物能耗預測,但是由于不同人生活習慣的差異以及之后對建筑物使用方式的不同導致模擬軟件所預測的能耗與實際能耗有很大差異。建筑能耗數據包含了在使用建筑物過程中能耗的所有相關信息,所以通過研究建筑能耗數據可以了解建筑能耗產生規律,并基于此選擇合適的建筑物能耗使用方案和節能措施;第二類研究主要集中在對建筑能耗數據的分析處理上,經過線性回歸算法尋找能源數據與影響變量因素的權值聯系,然后對建筑能耗數據做進一步的分處理以達到分析預測能耗的目的[3]。但此類研究的對象一般是整個地區或整個城市的能耗數據,并且時間段一般以月/單位耗電量和年/單位耗電量為單位,關于逐時耗電量簡直未曾提及,不可以充分的達到短期的能耗預測的目的標準。
目前,建筑能耗預測方法大致可分為以下四種:工程簡化算法、統計學方法、并行計算方法和人工智能方法。工程簡化算法不需要煩瑣的輸入,通過月平均溫度來預測校園、大型商業建筑或住宅的能耗;統計學方法以多元回歸方法為例,使用回歸方法關聯建筑能耗與建筑參數快速預測能耗;并行計算方法在保證原有計算精度的同時增加計算資源以達到快速預測能耗的目的;而人工智能方法以人工神經網絡模型為例,不僅能夠改變各個變量之間的非線性關系,在能耗預測方面也比傳統方法具有更高的精度。
3 基于GAN的Q學習能耗預測算法
基于Q學習的能耗預測算法需要通過計算值函數來獲得最優策略,但是在訓練過程中,由于agent缺少建筑物能耗樣本,所以存在學習速度慢、預測準確率低的情況。因此,在面對Q學習預測算法效率不高的問題,引入生成對抗網絡,采用一種結合生成對抗網絡技術的以Q學習為根底研討措施的能耗預測算法。在面對能耗數據不足的問題上生成符合已有數據特征分布的“仿真”數據解決數據不足的問題,從而提高研究中所要預測的數據的精度。
3.1 基于Q學習的建筑能耗預測方法
在Q學習任務中,Q學習算法能夠在不理解馬爾科夫動態的特點的情況下找到馬爾科夫決策進程最優的策略,Q學習不會為馬爾科夫決策進程其動態特性去建立模型,通常直接估量每個狀態下每個舉措的Q值,而后經過抉擇每個狀態下最高Q值所對應的舉措來構成策略[2]。面對能耗數據預測的問題接下來利用馬爾可夫決策過程來進行建模:
因為收集到的能耗數據具備時間序列的特性,因此預測模型樣本也應該具有時間序列結構,這是一種時間序列結構。因此,預測模型樣本包含以下幾個部分:
基于上述預測模型的樣本,使用Q學習算法進行Q學習, 如式(1)所示:
其中,α 表示學習率,[γ]表示的是折扣因子,動作[a∈A], [A]則是被稱作為動作空間,狀態[s,s'∈S],[S]則是被稱作為狀態空間,[r]為agent執行從當前狀態到下一狀態的操作所獲得的獎勵值,[Q(s,a)]為動作值函數。在每個時辰,依據上一時辰狀態[s]抉擇動作a,并觀察獎賞[r]和下一時刻狀態[s'],結合公式更新Q值。
3.2 基于GAN的建筑能耗樣本生成方法
針對由于訓練過程中缺少建筑物能耗樣本導致能耗預測算法效率低的問題,在預測模型中引入之前所提到的生成對抗網絡。此時建筑物能耗真實樣本集如式(2)所示:
[s]表示上一狀態建筑物能耗,[s']表示下一狀態建筑物能耗。由于后續狀態[s']基于上一時刻狀態[s]。因此,[s]與[s']之間存在一定的聯系,并通過其聯系基于深層神經網絡(Rectified Relationship Unit,R-RU)的關系校正單元的構建,其中作為輸入用[s]表示,作為輸出用[s']表示,關系修正單元用于訓練建筑能耗真實樣本集[s]和[s']之間所存在的內在關系。
主要是用于指導生成對抗網絡GAN生成更加近似真實能耗數據的樣本。
與建筑物能耗真實樣本集一致,利用GAN所生成的建筑物能耗數據如式(3)所示:
[sz]代表生成器模型所生成前一狀態的建筑能耗值,[sz']代表生成器模型所生成的后續狀態的建筑能耗值。生成器所生成的建筑物能耗數據與原先所測得的真實能耗樣本集共同訓練agent,以獲得最優策略。
考慮利用建筑物能耗真實樣本集訓練GAN,GAN能夠學習到屬于最初收集的真實樣本地概率分布,然后GAN以此生成建筑物能耗樣本,同時,結合生成的能耗樣本中的上一狀態建筑物能耗[sz],將[sz]輸入R-RU,R-RU的輸出作為構建的下一狀態建筑物能耗[sz''],目標是使得所生成的下一狀態建筑物能耗[sz']與構建的下一狀態建筑物能耗[sz'']他們之間有很高的相似性。[sz']和[sz'']之間的相似程度采用相對熵([KL]散度)來描述,如式(4)所示:
[P]表示生成的上一狀態建筑物能耗[sz'],[Q]表示構建的下一狀態建筑物能耗[sz'']。因此,值函數[W(D,G)]如式(5)所示:[]
其中k是權重參數。同時,通過對GAN模型的正則化,提高了數據生成的質量。的一個輔助方法。另外,當GAN參數不斷改變時, [sz]和[sz']也會依據真實能耗數據集不斷地改變更新,最終[W(D,G)]會趨向一個全局最小值。
3.3 GAN_RL算法
針對大型公共建筑能耗預測精度低、實際能耗數據缺乏的問題,提出了一種方法——基于生成對抗網絡的Q學習能耗預測算法(Reinforcement Learning Algorithm Based on Generative Adversarial Networks,GAN_RL)。該算法在Q學習的基礎上引入了生成對抗網絡,具體流程圖如圖1所示。
其中,首先收集真實能耗數據,在對能耗數據進行簡單的預處理之后導入到GAN之中生成的數據一并加入建筑能耗數據之中,以改善數據不足的問題,同時在訓練GAN的過程中加入R-Ru算法。
根據算法流程圖可以大致了解能耗預測模型中數據的處理過程,以此為基礎建立GAN_RL算法,如算法1所示。
算法1? ?GAN_RL算法
GAN_RL算法其中訓練生成對抗網絡GAN和關系修正單元R-RU的同時,根據收集真實數據,R-RU也會不斷改進GAN,提高GAN生成數據的可靠度。在訓練agent的同時,GAN也會生成新的樣本加入[D2]中,最后結合[D1]和[D2]共同選擇樣本數據,提供給控制器agent訓練獎賞值函數,以達到最大化累計獎賞,來實現更加精準的建筑能耗預測效果。
4 實驗結果分析
如圖2,表示的是原始建筑能耗數據量,坐標軸橫軸表示時間,坐標軸縱軸表示相對應的建筑能耗。上圖圖3表示的是經過能耗預測擬合曲線與真實能耗數據的對比圖。由于要避免偶然性,預測算法需要獨立執行50次,摒棄具有異常值的數據曲線,求各個節點數據的均值。在試驗最初,獲取能耗數據的同時,將其排列為時間序列,如圖2,之后將這些數據作為算法的輸入值即原始數據,算法的輸出值與實際值的對比如圖3,根據圖3可知該算法通過結合GAN與Q學習,將其應用到建筑能耗預測中,具有很好的預測效果,預測模型的預測精確度也較高。
5 結束語
本文主要針對大型公共建筑中的能耗預測任務準確率不高的問題,提出一種算法,該算法將生成對抗網絡GAN結合Q學習作為一種能耗預測算法應用到建筑領域中。該算法首先采集能耗數據構成真實能耗樣本池,而后通過GAN產生數據作為新的能耗數據。新數據與原始數據兩者合并一起作為Q學習預測模型的訓練樣本,之后這些數據則用于能耗預測。該算法有效解決了因能耗樣本不足而導致的預測準確率不太高的問題,為解決能耗預測問題提供了新思路。根據實驗結果可以得出該能耗預測方法的準確率較高。
參考文獻:
[1] Banihashemi S,Ding G,Wang J.Developing a hybrid model of prediction and classification algorithms for building energy consumption[J].Energy Procedia, 2017,110:371-376.
[2] Watkins C J C H,Dayan P.Q-learning[J].Machine Learning, 1992,8(3/4):279-292.
[3] 陳建平,鄒鋒,劉全,等.一種基于生成對抗網絡的強化學習算法[J].計算機科學,2019,46(10):265-272.
[4] 鄒鋒,田大偉,王悅,等.基于生成對抗網絡的深度學習能耗預測算法[J].電腦知識與技術,2019,15(2):198-200.
[5] 鄒鋒.基于生成對抗網絡的強化學習方法及其在建筑節能方面的應用[D].蘇州:蘇州科技大學,2019.
【通聯編輯:唐一東】