王天來,王 理,孫連營,殷夢霞
(中國建筑科學研究院有限公司信息化辦公室 北京 100013)
2022 年1 月,國務院發布《“十四五”數字經濟發展規劃》,規劃中提出要完善大數據標準體系建設,深入實施以數據為驅動的創新發展戰略。隨著大數據技術的日趨成熟以及建筑行業的業務需求,建筑行業已開始對大數據進行探索性使用。近年來,隨著公共建筑群的面積和數量持續增長以及智能建筑和綠色建筑的推廣,建筑能耗設備所采集的建筑運行能耗數據量已達到TB 級,且采集的能耗數據具有數據量大、傳輸速率快、數據結構復雜等特點,因此,基于傳統的關系數據庫存儲與分析技術已無法適應當前的業務需求。
大數據是指所涉及資料的規模巨大,在合理時間內無法通過常用的數據處理方式將數據處理成人類所能直接理解的信息。大量、復雜、快速處理、低熵是大數據的4 個主要特征。大數據不僅要將數據實時流處理進行展示,同時還要利用新一代信息化技術對存儲的大數據進行分析挖掘,發掘數據之間的內在關聯和潛在價值[1]。
廣義建筑能耗和狹義建筑能耗是當前建筑能耗的兩大分類,廣義建筑能耗是指從建筑材料制造、建筑施工、一直到建筑使用全過程所使用的能耗;狹義建筑能耗是指建筑的運行能耗,是指建筑的用能等信息。隨著我國經濟長期高速增長,我國已成為世界第二大能源消耗國,國內權威建筑能耗研究機構一致認為建筑運行能耗占全國總能耗的比例為20 ~30%[2]。隨著國內外能源供應的難度越來越大以及環境保護的切實需求,我們有必要對建筑能耗數據進行分析研究,為相關節能政策的制定提供科學依據[2-3]。
本文根據建筑能耗數據的動態特征,構建基于Hadoop技術的建筑能耗大數據平臺,平臺通過MapReduce 并行計算技術對建筑能耗的大數據進行清洗、轉化、合并和重塑,并將規整后的數據進行深度挖掘與分析,探索多元線性回歸模型、時間序列模型、神經網絡模型等分析方法的適用環境與范圍。
隨著大數據技術的不斷發展和廣泛應用,大數據的平臺架構主要分為兩種類型,一類是Google 研發的以GFS 和BigTable 為代表的主從式存儲架構,其主要代表是Hadoop;另一類是P2P 存儲架構,其主要代表是Amazon研發的Dynamo[4]。根據建筑能耗數據的特點我們認為,Hadoop 體系構架比較適用于建筑能耗數據的大數據平臺架構。
Hadoop 主從架構主要體現在HDFS(Hadoop Distributed File System)的構架設計中,見圖1。NameNode 是HDFS架構的主節點,負責存儲數據塊的信息,管理元數據,維護文件系統命名空間,同時NameNode 也提供了相關服務接口以及與DataNode、SecondNameNode 節點的通信調用;SecondNameNode 為可選節點,主要作為NameNode 節點的備用節點,與NameNode 節點定時通信,復制保持NameNode節點上的文件系統和元數據信息。當HDFS 集群中NameNode節點發生故障時SecondNameNode 可進行數據恢復,保障HDFS 文件系統的正常運行;DataNode 是HDFS 文件系統中的從節點,主要進行數據塊的存儲和管理。
MapReduce 是由Google 提出的一種分布式并行計算編程模型,可對海量數據進行計算處理,Hadoop 正是基于MapReduce 分布式計算框架實現對海量數據的處理分析工作。MapReduce 框架是由一個JobTracker 主節點和多個TaskTracker 從節點構成的主從架構。JobTracker 管理Map 和Reduce 任務的分配與執行;TaskTracker 處理JobTracker 指派的任務。MapReduce 框架的運行流程見圖2。
MapReduce計算結構中大數據集被切分為多個數據集,每個節點同時處理多個數據集。單節點中的Map 函數將數據轉化為鍵值對。每個節點都執行同樣的操作,不同機器上輸出鍵值對通過Merge 排序的過程進入Reduce 環節,最后通過Reduce函數將鍵值對中鍵名相同的值進行合并,并將合并結果輸出到HDFS 文件中。
智能建筑、綠色建筑和智慧城市的發展決定了建筑能耗數據的采集與處理需要具備實時性和精確性等要求,傳統的數據儲存與分析技術正面臨著挑戰,因此本文提出一種基于Hadoop 技術搭建的建筑能耗大數據存儲平臺,平臺利用并行化計算框架對采集的建筑能耗大數據進行快速的存儲、分析與挖掘。建筑能耗大數據平臺的基本架構見圖3。建筑能耗大數據平臺的系統架構包含應用層、數據層和數據源層3 個部分,數據源層是指傳感器采集的各項數據;數據層由ETL 數據預處理平臺和數據存儲構成,它通過標準化的邏輯模型完成數據的儲存并通過對數據源的初步分析與挖掘形成信息以滿足應用層業務需要;應用層是指基于數據分析、數據挖掘、人工智能等技術的數據應用。
由于我國國內建筑能耗數據統計發展較慢且存在數據分享等問題,本次數據分析的數據源采用美國能源情報協會EIA(Energy Information Administration)統計的美國加利福尼亞州建筑集群和單體建筑的能耗數據。該數據集為加利福尼州1990 年—2014 年城市總體建筑能耗和部分單體建筑如醫院、辦公樓、住宅建筑的建筑能耗。
我們將收集獲取的美國加州能耗數據存儲于建筑能耗大數據平臺,數據在平臺的數據層采用MapReduce 技術進行并行計算,在應用層我們采用R 語言設計實現了多元線性回歸模型、時間序列模型、BP 神經網絡模型對經平臺數據層初步規整后的加利福尼亞州建筑能耗數據進行深度的分析與挖掘。
回歸分析是數據分析領域最流行的預測技術之一,由于建筑能耗數據涉及的自變量數目較多,本次回歸分析采用多元線性回歸模型對建筑能耗進行分析[5-6]。多元線性回歸模型即用兩個以上量化的自變量預測一個量化的響應變量。多元線性回歸模型的見公式(1)。其中y是響應變量;Xk是指第k個自變量;βk是自變量Xk的回歸系數。
當前我們獲取美國加利福尼亞州1990 年至2014年建筑能耗統計數據,該建筑能耗統計分為水利用能(WaterPump)、商業建筑用能(CommercialBuilding)、其它商業用能(CommercialOther)、工業用能(Industry)、礦業建設用能(MiningConstruction)、住宅建筑用能(Residential)、城市亮化工程用能(Streetlight)以及每年加利福尼亞州的總能耗。我們將以上7 個統計量作為自變量,城市總能耗作為響應變量通過R 語言建立多元線性回歸模型。多元線性回歸的分析結果見表1。

表1 加州建筑能耗多元線性模型分析結果
由表1 可知分析結果中假定值遠遠小于0,且各自變量的回歸系數沒有顯著不為0,所以在控制其他自變量不變時,選定變量與TotalUsage(加州總能耗)均呈線性相關。因此本次建立的多元線性回歸模型見公式(2)。
TotalUsage=25.25+1.012X1+1.109X2+0.954X3+1.177X 5+1.022X6+1.875X7 (2)
為了驗證模型的適用性避免出現過度擬合等偏差,造成現實使用中出現誤差顯著的現象,我們對建立的多元線性模型進行回歸診斷。回歸診斷的結果如圖4 所示。正態Q-Q 圖顯示所有數據集的點均落在近45°角直線上,因此滿足當自變量值固定時因變量成正態分布;在殘差與擬合圖中沒有明顯曲線,因此自變量和因變量符合線性相關;在位置與尺度圖中,水平線周圍的點隨機分布,因此滿足同方差性;在殘差與杠桿圖圖中可知離群點、高杠桿值點和強影響點均很少。
通過以上的回歸診斷,可確定基于本次數據集所建立的多元線性回歸模型適應性較好,因此可以用該模型對加州建筑能耗進行預測。
本次選取數據為美國加州某辦公建筑2004 年的能耗數據,該數據的采集方式為每隔一小時采集一次,采集2004年全年的能耗數據,我們對該數據集按月進行了規整,并將規整后的數據作為訓練數據集建立指數平滑法模型,利用模型對2005 年1 月該建筑的用能信息進行預測。由于該數據集沒有季節性變動,因此我們使用簡單指數平滑法進行預測。簡單指數平滑法見公式(3)。
其中Ft是t時刻預測值;a為權值,由公式可見簡單指數平滑法是一種加權預測,數值預測時只需一個最新的觀測值和最新的預測值即可進行預測。我們使用R 語言中的HoltWinters()函數建立簡單指數平滑模型,利用建立的模型對2004 年的數據進行預測,模型預測值與真實觀測值對比見圖5。由圖5 可知本次建立的簡單指數平滑法模型對數值的預測效果較好,因此我們利用該模型對2005 年1 月該建筑的建筑能耗數據進行預測,預測值為518 402.9 Kw.h。
人工神經網絡是一種模仿生物神經網絡功能和結構的數學計算模型,神經網絡是由神經元與神經元之間的連接構成的,每兩個節點間的連接代表通過連接信號的加權值。神經元之間連接方式、權重值和激勵函是區分不同神經網絡的重要參數。感知機是神經網絡的最小單元,它是由一個線性組合器和一個二值閾值原件構成[7]。見圖6。感知機以實向量作為輸入并計算這些輸入的線性組合,將輸入結果通過二值閥值原件進行輸出,如果輸出結果大于某個閾值輸出1,否則輸出0。
為了研究建筑的熱負荷(Heating Load)和冷負荷(Cooling Load),即能源效率(Energy efficiency),英國牛津大學的工業和應用數學研究中心調查統計了建筑的相關參數并制成數據集。因統計調查的建筑參數與建筑的熱負載和冷負載之間呈非線性關系,所以無法通過回歸模型對建筑的熱負載和冷負載進行預測。為了基于統計的建筑參數對建筑熱負載和冷負載進行預測,我們建立BP(Back Propagation)神經網絡對建筑熱負載和冷負載進行分析預測。BP 神經網絡是一種誤差反向傳播算法學習過程,BP 神經網絡分為輸入層、隱藏層、輸出層,當實際輸出與期望輸出不符時進行誤差的反向傳播,誤差通過輸出層,按誤差梯度下降的方式進行模型的修正即修正加權值。
本次我們使用R語言中nnet包建立BP神經網絡模型。模型的輸入層有8 個輸入分別是X1(體型系數)、X2(建筑表面積)、X3(墻體面積)、X4(屋頂面積)、X5(建筑高度)、X6(建筑朝向)、X7(透光區)、X8(透光區分布)[8],對比模型中隱藏層取不同數目神經元時模型的學習效果,我們建立包含4 節點的單隱藏層BP 神經網絡。為了取消各輸入參數間數量級的差別,避免因輸入輸出數據數量級差別較大造成網絡預測誤差較大我們對數據集進行歸一化。本次數據集歸一化的方式為最大最小法,最大最小法的函數見公式(4),其中Xnormal為歸一化后的值;Xk為各數據的實際值;Xmin為數據序列中的最小值;Xmax為數據序列中的最大值。
通過調用歸一化后的數據集對模型進行訓練,最終建立“8-4-1”模式的BP 神經網絡,即輸入層是8 個節點,隱藏層是4 個節點,輸出層是1 個節點。
為了使模型具備更好的學習效果,我們分別用牛津大學工業和應用數學研究中心調查統計的建筑相關參數數據集中前100 條數據、前300 條數據、前500 條數據和前700 條數據對模型進行訓練,并利用訓練后的模型對數據集中701 條至768 條數據的熱負載值進行預測,見圖7。由圖可知訓練數據集越大所建立的BP 神經網絡模型學習效果越好,當訓練數據集為700 條數據時所建立的模型學習效果最好,利用該模型預測建筑的熱負載和冷負載值接近真實值。
本文結合國內外大數據研究現狀,針對建筑能耗大數據展開研究,分析了建筑能耗大數據的特點與業務需求,提出了建筑能耗大數據平臺結構模式,利用R 語言針對建筑能耗的不同數據建立不同模型進行分析研究。通過研究得出多元線性回歸模型適用于線性建筑能耗數據的分析預測;時間序列模型適用于包含精確細致時間序列的建筑能耗數據的分析預測;BP 神經網絡模型適用于非線性建筑能耗數據的分析預測。
目前大數據分析在建筑行業還屬于研究實驗階段,伴隨著大數據技術的普及大數據技術必將在建筑行業的多個領域得到廣泛應用。