賈文琦 潘毅群*
同濟(jì)大學(xué)機(jī)械與能源工程學(xué)院
設(shè)計(jì)階段的負(fù)荷預(yù)測(cè)準(zhǔn)確性對(duì)設(shè)備容量和供能方案的選擇有較大影響,如 何準(zhǔn)確地計(jì)算設(shè)計(jì)階段建筑負(fù)荷是建筑性能模擬的一大挑戰(zhàn)[1],國(guó) 內(nèi)外對(duì)于建筑負(fù)荷的確定方法,主 要分為以下幾類:面 積負(fù)荷指標(biāo)法[2],數(shù) 值模型預(yù)測(cè)法[3-6]與 數(shù)據(jù)驅(qū)動(dòng)法[7-9]。但這三種方法的模型輸出數(shù)量都有限制,現(xiàn) 有研究較少討論全年逐時(shí)負(fù)荷。
因此,本 文探索了灰箱模型在設(shè)計(jì)階段建筑負(fù)荷預(yù)測(cè)的潛力:首 先選取對(duì)建筑負(fù)荷影響較大的變量進(jìn)行正交案例設(shè)計(jì),得 到大量建筑模型,在 正演模擬的方法下得到負(fù)荷計(jì)算結(jié)果,即 全年 8760 小時(shí)的逐時(shí)冷熱負(fù)荷,然 后在該結(jié)果的基礎(chǔ)上使用數(shù)據(jù)驅(qū)動(dòng)方法進(jìn)行目標(biāo)建筑的負(fù)荷預(yù)測(cè)。最后使用該方法得到的預(yù)測(cè)負(fù)荷與真實(shí)負(fù)荷進(jìn)行對(duì)比與分析。結(jié)果表明,該方法可以較為準(zhǔn)確、快 速地得到設(shè)計(jì)階段建筑全年逐時(shí)冷熱負(fù)荷,提 供了一種新的解決思路。
為了提取出預(yù)測(cè)建筑負(fù)荷所必需的、具 有普適性的建筑變量,本 文從前人研究中提取了對(duì)負(fù)荷影響較大的七個(gè)變量,充 分全面地反映建筑變量對(duì)負(fù)荷影響的變量-負(fù)荷數(shù)據(jù)集,作 為負(fù)荷預(yù)測(cè)的研究基礎(chǔ),表 征了高維變量與負(fù)荷之間的復(fù)雜關(guān)系。
建立一個(gè)全面的變量-負(fù)荷數(shù)據(jù)集,應(yīng)涵蓋盡可能多的獨(dú)立變量和變量水平,但 受制于計(jì)算能力與數(shù)據(jù)集復(fù)雜度,又 不能過多,綜 合考慮,本 文選擇了下表所示的七個(gè)獨(dú)立變量,變 量名、取 值范圍與對(duì)應(yīng)水平數(shù)如表1 所示,需要注意的是,本文針對(duì)建筑負(fù)荷預(yù)測(cè),故 獨(dú)立變量選取不涉及到空調(diào)系統(tǒng),且 各獨(dú)立變量的取值范圍均由業(yè)態(tài)標(biāo)準(zhǔn)的范圍外擴(kuò)10%得到。為了更多關(guān)注變量與負(fù)荷的關(guān)系,本 文統(tǒng)一設(shè)置空調(diào)開啟時(shí)刻表為周一至周五 6:00-18:00,天氣參數(shù)則選為上海。
表1 變量選取
本文采用圍護(hù)結(jié)構(gòu)總傳熱系數(shù)(Overall Thermal Transfer Value,O TTV)的 計(jì)算方法設(shè)計(jì)該變量,O TTV是包括墻體、屋 頂、窗 戶熱工性能的綜合指標(biāo),為 了提高設(shè)計(jì)的靈活性,最 早由ASHRAE 通過考慮不同建筑的緯度、采 暖日數(shù)、遮 陽系數(shù)等,建 立了OTTV 這樣一個(gè)可計(jì)算的建筑圍護(hù)結(jié)構(gòu)熱工性能評(píng)估參數(shù),采用OTTV 作為獨(dú)立變量可以減少總獨(dú)立變量數(shù)(外墻傳熱系數(shù)、窗 戶傳熱系數(shù)、窗 戶太陽得熱系數(shù)、窗 墻比),在保證數(shù)據(jù)集的全面性的同時(shí)減少數(shù)據(jù)集的總量。
可以把這七個(gè)變量看作一個(gè) 7 維空間點(diǎn),這 個(gè)點(diǎn)完整地描述了一棟建筑的負(fù)荷特性,為了得到每個(gè) 7維空間點(diǎn)與負(fù)荷的映射關(guān)系,最 理想的情況是對(duì)這所有的7 維空間點(diǎn)都計(jì)算對(duì)應(yīng)的負(fù)荷,也 就是次計(jì)算,這 對(duì)于常用的建筑能耗模擬工作和科研工作來說,幾 乎是不可能的任務(wù)。
表2 抽樣比例經(jīng)驗(yàn)法則
因此,針 對(duì)這一超大規(guī)模的數(shù)據(jù)集總體,本 文采用抽樣方法來代表數(shù)據(jù)集總體,現(xiàn) 有抽樣方法均為直接抽樣,即 采用抽樣方法從總體中一次抽取所需的試驗(yàn)樣本。在抽樣調(diào)查中,樣 本容量的確定可以依據(jù)經(jīng)驗(yàn)法則,見 表2。就中等規(guī)模的總體(超過 1 萬)而 言,抽樣比率為10%即可認(rèn)為反映了總體特征。對(duì)于常用的建筑能耗模擬工具來說,計(jì) 算時(shí)間與成本可以接受。
本文中生成 5000 個(gè)抽樣點(diǎn),抽 樣比率超過 10%,可以認(rèn)為這 5000 個(gè)抽樣點(diǎn)與其對(duì)應(yīng)的負(fù)荷可以全面地描述變量與負(fù)荷之間復(fù)雜的映射關(guān)系以供后續(xù)的數(shù)據(jù)驅(qū)動(dòng)方法學(xué)習(xí)。
數(shù)據(jù)集構(gòu)建過程是應(yīng)用現(xiàn)有能耗模擬工具,采 取批量生成和計(jì)算方法,按 照每一個(gè)算例點(diǎn)的設(shè)計(jì)參數(shù),規(guī)?;亟⒑陀?jì)算這5000 個(gè)抽樣點(diǎn),即 5000 個(gè)建筑負(fù)荷模型。并將模擬獲得的建筑負(fù)荷結(jié)果作為每一個(gè)算例點(diǎn)的第8 維,與其對(duì)應(yīng)的前7 維算例設(shè)計(jì)參數(shù)共同構(gòu)成完整的變量-負(fù)荷數(shù)據(jù)集,如 圖 1 所示。本 文選用應(yīng)用廣泛的建筑模擬工具 EnergyPlus 建立算例模型,并 采用 python 語言,按 照數(shù)據(jù)集的算例設(shè)計(jì)參數(shù)批量生成相應(yīng)的建筑負(fù)荷模型,并 進(jìn)行規(guī)模計(jì)算。
圖1 數(shù)據(jù)集構(gòu)建流程
EnergyPlus 的建筑負(fù)荷模型格式為 idf,本 質(zhì)上是通過文本行的方式記錄各模塊信息,可 以通過 Python編寫代碼,逐 行讀取idf 文件,找 到 7 個(gè)變量對(duì)應(yīng)模塊進(jìn)行參數(shù)修改,然后通過調(diào)用EnergyPlus 的 bat 文件調(diào)用天氣信息進(jìn)行模擬,將上述過程自動(dòng)運(yùn)行 5000次,便 可得到5000 個(gè)算例點(diǎn)對(duì)應(yīng)的負(fù)荷結(jié)果。表 3 為自動(dòng)計(jì)算過程中編寫的函數(shù)名稱及功能介紹。
表3 自動(dòng)化過程函數(shù)名稱及功能
其中,G enerator 函數(shù)調(diào)用了序號(hào) 1~7 的函數(shù),批 量生成5000 個(gè)建筑負(fù)荷模型對(duì)應(yīng)的 idf 文件,值 得注意的是由于體形系數(shù)與建筑的幾何尺寸有關(guān),故 使用代碼編輯體形系數(shù)過于麻煩,本 文中采用人工建立體形系數(shù)對(duì)應(yīng)的 idf 文件,然后在以此文件為模板的基礎(chǔ)上進(jìn)行生成其他變量參數(shù)設(shè)計(jì)下的 idf 文件。RunWorker 批量調(diào)用 EnergyPlus 的 bat 文件,為了加快計(jì)算速度,使 用了多進(jìn)程計(jì)算,縮 短了計(jì)算時(shí)間。由于每一個(gè) idf 對(duì)應(yīng)的結(jié)果都是8760 小時(shí)的冷熱負(fù)荷,數(shù)據(jù)量較大,故使用 ResultWorker 自動(dòng)逐個(gè)讀取 idf負(fù)荷結(jié)果,并 將結(jié)果保存在后續(xù)的數(shù)據(jù)庫中。
由第1.2 節(jié)產(chǎn)生的結(jié)果數(shù)據(jù)量非常大,每一個(gè)算例點(diǎn)都包含了7 維建筑變量信息,與 8760 小時(shí)的建筑負(fù)荷結(jié)果,使用傳統(tǒng)的 excel 電子表格存儲(chǔ)數(shù)據(jù)比較低效,且 不利于后續(xù)方法的集成,故 本文采用數(shù)據(jù)庫技術(shù)MySQL 來存儲(chǔ)和管理數(shù)據(jù)集。
變量-負(fù)荷數(shù)據(jù)集在數(shù)據(jù)庫中最理想的存儲(chǔ)方式應(yīng)當(dāng)是每一行對(duì)應(yīng)著一個(gè)算例點(diǎn),包含了7 維建筑信息與8760 維冷熱負(fù)荷,共 計(jì) 17528 個(gè)字段,而 MySQL最大支持一行2048 個(gè)字段,故 需要設(shè)計(jì)出新的數(shù)據(jù)架構(gòu)用來存儲(chǔ)變量-負(fù)荷數(shù)據(jù)集。
本文采用 split-table 方式,將最理想存儲(chǔ)方式中的每一行轉(zhuǎn)化為一張數(shù)據(jù)表,從 而克服一行最多2048個(gè)字段的限制。該方式自動(dòng)為 5000 個(gè)算例點(diǎn)的每一個(gè)都創(chuàng)建一張存儲(chǔ)負(fù)荷的數(shù)據(jù)表,這 張數(shù)據(jù)表存儲(chǔ)著時(shí)間與該時(shí)間對(duì)應(yīng)的負(fù)荷,維 度為(3,8760)。綜 上所述,該數(shù)據(jù)庫共包括了5000 張負(fù)荷數(shù)據(jù)表與一張總表,總 表僅包括每一個(gè)算例點(diǎn)的建筑變量信息,維度為(5000,7),且 總表的每一個(gè)算例點(diǎn)都與對(duì)應(yīng)的負(fù)荷數(shù)據(jù)表建立了外鍵聯(lián)系,方 便快速地通過總表中的某一行索引到對(duì)應(yīng)的負(fù)荷數(shù)據(jù)表提取數(shù)據(jù)。數(shù)據(jù)庫結(jié)構(gòu)如圖2 所示:
圖2 數(shù)據(jù)庫結(jié)構(gòu)概覽
在正演模型建立后,本 文需要再建立一個(gè)數(shù)據(jù)驅(qū)動(dòng)模型來學(xué)習(xí)這 5000 組 7 維建筑變量與建筑負(fù)荷的對(duì)應(yīng)關(guān)系,實(shí) 現(xiàn)對(duì)任意7 維建筑變量的建筑負(fù)荷預(yù)測(cè)。需要注意的是,模 型輸入是7 維建筑變量,而 模型輸出的建筑負(fù)荷是一個(gè)長(zhǎng)達(dá)8760 小時(shí)的長(zhǎng)序列,這 樣的低維—高維數(shù)據(jù)的關(guān)系學(xué)習(xí)對(duì)于數(shù)據(jù)驅(qū)動(dòng)模型是一個(gè)較難的任務(wù),因 此,需 要從一個(gè)新的角度來看待變量與負(fù)荷的關(guān)系。
在一年的時(shí)間長(zhǎng)度中,對(duì) 于一棟特定的建筑,描 述它的7 維建筑變量是固定的靜態(tài)數(shù)據(jù)。隨著外界天氣的變化,建 筑負(fù)荷也在發(fā)生著變化,兩 者都是時(shí)序數(shù)據(jù),因 此,建 筑負(fù)荷可看作為靜態(tài)數(shù)據(jù)的建筑變量作用于時(shí)序數(shù)據(jù)天氣變量的結(jié)果,這 樣地,低 維—高維數(shù)據(jù)的關(guān)系學(xué)習(xí)就轉(zhuǎn)化為了高維—高維數(shù)據(jù)的關(guān)系學(xué)習(xí),如圖3,這 是數(shù)據(jù)驅(qū)動(dòng)模型更易于學(xué)習(xí)的任務(wù)。
圖3 低維—高維任務(wù)到高維—高維任務(wù)的轉(zhuǎn)換
本文選擇 1 維卷積神經(jīng)網(wǎng)絡(luò)(1D CNN)作 為建筑負(fù)荷預(yù)測(cè)的數(shù)據(jù)驅(qū)動(dòng)模型,C NN 在計(jì)算機(jī)視覺問題上表現(xiàn)出色,原 因在于它可以進(jìn)行卷積運(yùn)算,從 局部輸入圖塊中高效提取特征,并將其模塊化,同樣地,1 N CNN 對(duì)時(shí)序數(shù)據(jù)處理也特別有效,因 為時(shí)間可以被看作一個(gè)空間維度,就 像二維圖像的高度或?qū)挾龋?此它可以很好地識(shí)別出具有固定長(zhǎng)度周期的時(shí)序數(shù)據(jù)與抓取其中的特征,并且可以使用GPU 并行加速。1D CNN 的輸入為天氣變量(溫度、濕 度、太 陽輻射)與 7維建筑變量,模 型輸出為建筑負(fù)荷,為 了減小網(wǎng)絡(luò)的復(fù)雜度,本文將8760 小時(shí)拆分為52 個(gè)168 小時(shí)(即一周)分 別預(yù)測(cè),最 后將結(jié)果拼接起來,如 圖4 所示。本 文使用Keras 構(gòu)建1D CNN,使 用前文所述的變量-負(fù)荷數(shù)據(jù)庫存儲(chǔ)的數(shù)據(jù)訓(xùn)練該網(wǎng)絡(luò)學(xué)習(xí)天氣變量,建 筑變量與建筑負(fù)荷的映射關(guān)系,1D CNN 的網(wǎng)絡(luò)構(gòu)架如表4 所示。
圖4 1D CNN 預(yù)測(cè)流程
表4 1D CNN 網(wǎng)絡(luò)架構(gòu)
當(dāng) 1D CNN 訓(xùn)練好后,便 可以輸入 7 維建筑變量與天氣變量到該灰箱模型中,得到建筑負(fù)荷預(yù)測(cè)值。為了更好地去判斷預(yù)測(cè)性能的好壞,需 要提出一個(gè)預(yù)測(cè)性能指標(biāo)來計(jì)算建筑負(fù)荷預(yù)測(cè)值與真實(shí)值兩個(gè)序列的相似性。對(duì)于長(zhǎng)序列數(shù)據(jù),最 常見的指標(biāo)有最近歐式距離:?jiǎn)?純地使用歐式距離來計(jì)算兩個(gè)序列中的每一維,并 將每一維的距離相加得到總距離。皮爾遜系數(shù):評(píng)判兩個(gè)序列的線性相關(guān)性。Dynamic Time Warping(DTW):衡 量?jī)蓚€(gè)長(zhǎng)度不等的序列相似性,多 用于語音識(shí)別。然而,這 些指標(biāo)是無法反映出全年逐時(shí)負(fù)荷的預(yù)測(cè)值與真實(shí)值的相似性的:歐 式距離不能反映趨勢(shì)的相似性。對(duì)于皮爾遜相關(guān)系數(shù)與DTW,由 于建筑負(fù)荷不僅受天氣、內(nèi) 熱影響,也 受建筑空調(diào)系統(tǒng)的開關(guān)影響。當(dāng)空調(diào)系統(tǒng)關(guān)閉時(shí),無 論環(huán)境、內(nèi) 熱如何變化,負(fù) 荷都為0,故 全年逐時(shí)負(fù)荷序列存在著大量的0 數(shù)據(jù),這也意味著全年負(fù)荷序列并不是連續(xù)變化的自然序列,不 適合使用評(píng)判自然序列相似性的皮爾遜相關(guān)系數(shù)與 DTW,故需要提出新的指標(biāo)衡量全年逐時(shí)負(fù)荷預(yù)測(cè)值與真實(shí)值的相似性。
考慮到設(shè)計(jì)人員更多地關(guān)注峰值負(fù)荷與整體負(fù)荷的大小,而 建筑逐時(shí)負(fù)荷曲線形狀上的相似性并不是關(guān)注目標(biāo),故 本文提出有效小時(shí)率用以評(píng)判預(yù)測(cè)值與真實(shí)值的相似性:全年N個(gè)小時(shí)中預(yù)測(cè)值誤差處于±1 5%的總小時(shí)Nm比例,如 式(1):
其中,N為真實(shí)值不為0 的總小時(shí)數(shù)。與 僅考慮長(zhǎng)序列數(shù)據(jù)“ 量”相 似性的歐氏距離,僅 考慮長(zhǎng)序列數(shù)據(jù)“形”相 似性的皮爾遜相關(guān)系數(shù)與 DTW 相比,有 效小時(shí)率不僅可以反映逐時(shí)預(yù)測(cè)負(fù)荷與真實(shí)負(fù)荷“量”的 相似性,而 且更反映了整體“ 形”的 相似性,故 本文使用有效小時(shí)率用于評(píng)價(jià)1D CNN 的預(yù)測(cè)性能。
為了能夠更有效地反映本文所提出的灰箱模型的預(yù)測(cè)性能,根 據(jù)實(shí)際參數(shù)情況,選 出貼合實(shí)際有代表性的5 棟建筑,即 5 個(gè)7 維測(cè)試點(diǎn),測(cè) 試點(diǎn)信息如表 5所示。
表5 測(cè)試點(diǎn)信息
5 個(gè)測(cè)試點(diǎn)的真實(shí)負(fù)荷則由 EnergyPlus 得出,本 文為測(cè)試點(diǎn)建立 EnergyPlus 的建筑負(fù)荷模型,模 擬后得到測(cè)試點(diǎn)對(duì)應(yīng)的 8760 小時(shí)負(fù)荷,并將其作為真實(shí)值,與 灰箱模型的預(yù)測(cè)值進(jìn)行比較,各 測(cè)試點(diǎn)下建筑負(fù)荷的有效小時(shí)率如表6 所示。
表6 各測(cè)試點(diǎn)有效小時(shí)率
由表6 分析如下:
1)從 整體上來看,該 灰箱模型的預(yù)測(cè)性能較好,即 便是最差的 5 號(hào)測(cè)試點(diǎn)熱負(fù)荷也達(dá)到了 85%以上的有效小時(shí)率,這 意味著全年有 85%以上的小時(shí)的相對(duì)誤差處于±1 5%之間。
2)各 測(cè)試點(diǎn)的負(fù)荷預(yù)測(cè)性能也是有一定的差異性的,4 號(hào)測(cè)試點(diǎn)的平均有效小時(shí)率與 2 號(hào)測(cè)試點(diǎn)相差6%,這 是因?yàn)?,?些測(cè)試點(diǎn)都是處于灰箱模型的訓(xùn)練樣本,即 變量-負(fù)荷數(shù)據(jù)庫的內(nèi)部空間,故 對(duì)于這些測(cè)試點(diǎn),灰箱模型的預(yù)測(cè)性能表現(xiàn)良好。而對(duì)于一些處于訓(xùn)練樣本空間邊緣的測(cè)試點(diǎn),灰 箱模型的泛化能力略顯不足,預(yù) 測(cè)性能下降。
為了更好地展示本文灰箱模型的預(yù)測(cè)結(jié)果,繪 制測(cè)試點(diǎn)1 的預(yù)測(cè)值/真實(shí)值的熱度圖,如 圖5 所示,該 建筑冷負(fù)荷多集中于6 月至9 月的中午,而熱負(fù)荷多集中于十二月至三月的上午與晚上。對(duì)比預(yù)測(cè)值與真實(shí)值的熱度分布,可 以發(fā)現(xiàn)兩者在大部分時(shí)間段內(nèi)分布相同,吻 合性較好。根據(jù)上述分析,本 文提出的灰箱模型預(yù)測(cè)方法在設(shè)計(jì)階段建筑負(fù)荷預(yù)測(cè)上表現(xiàn)出了較好的快速性和準(zhǔn)確性。
圖5 1 號(hào)測(cè)試點(diǎn)負(fù)荷預(yù)測(cè)結(jié)果
本文提出了基于灰箱模型的設(shè)計(jì)階段建筑負(fù)荷預(yù)測(cè)方法:首 先建立了變量 -負(fù)荷數(shù)據(jù)庫,包 含了各種使用情景下的建筑,并 將負(fù)荷預(yù)測(cè)任務(wù)轉(zhuǎn)換為了數(shù)據(jù)驅(qū)動(dòng)模型易于學(xué)習(xí)的“序列對(duì)序列”任務(wù),使用 1D CNN 作為具體模型,并 提出了新的預(yù)測(cè)性能指標(biāo)——有效小時(shí)率作為評(píng)價(jià)灰箱模型預(yù)測(cè)性能優(yōu)劣的指標(biāo),選取了貼合實(shí)際有代表性的5 棟建筑進(jìn)行測(cè)試,驗(yàn)證了該灰箱模型良好的預(yù)測(cè)性能。與軟件模擬預(yù)測(cè)法相比,本 文提出的灰箱模型預(yù)測(cè)時(shí)間短,不 需要復(fù)雜的建筑建模過程,對(duì) 使用人員的操作水平要求較低。該方法也可一次性預(yù)測(cè)8760 小時(shí)的建筑負(fù)荷,而 不是典型日逐時(shí)負(fù)荷/峰值負(fù)荷,這對(duì)建筑用能規(guī)劃有著較大的意義。需 要注意的是,本 文的變量 -負(fù)荷數(shù)據(jù)庫中變量的選取范圍由上海建筑設(shè)計(jì)標(biāo)準(zhǔn)得到,負(fù) 荷計(jì)算中也選取了上海的氣象參數(shù),在 未來,可 為各個(gè)地區(qū)分別建立變量-負(fù)荷數(shù)據(jù)庫,輸入建筑的變量與所在城市,自 動(dòng)化進(jìn)行建筑逐時(shí)負(fù)荷預(yù)測(cè),為 各地區(qū)建筑用能規(guī)劃提供準(zhǔn)確的依據(jù)。