官金蘭,賴煜庭,林子豪,歐杰泉
(1.廣東農(nóng)工商職業(yè)技術(shù)學(xué)院基礎(chǔ)部,廣東廣州510507;2.廣州市輕工職業(yè)學(xué)校電商網(wǎng)絡(luò)部,廣東廣州510650)
隨著全球氣候的變遷和空調(diào)技術(shù)的發(fā)展,越來越多的大型建筑物利用中央空調(diào)系統(tǒng)來實現(xiàn)室內(nèi)溫度和濕度的調(diào)節(jié)控制。特別是隨著“智慧城市”建設(shè)步伐的快速推進(jìn),如何圍繞智慧城市建設(shè)實現(xiàn)中央空調(diào)系統(tǒng)的智能控制與節(jié)能,這是智慧城市建設(shè)中的重要研究課題之一。中央空調(diào)系統(tǒng)的優(yōu)化控制策略研究也是實際中的一個很有普遍意義的重要課題。粒子群優(yōu)化(particle swarm optimization,PSO)算法,或稱微粒群優(yōu)化算法,是美國心理學(xué)家Kennedy和電氣工程師Eberhart在1995年共同提出的,其思想來源于鳥類覓食等復(fù)雜群體行為,該算法概念簡明、實現(xiàn)方便、收斂速度快,是一種高效的隨機搜索方法。中央空調(diào)系統(tǒng)包含51個變量,需要對這種多變量的系統(tǒng)進(jìn)行優(yōu)化,粒子群優(yōu)化算法即可實現(xiàn)[1]。
本文還用到二進(jìn)制的粒子群算法,目的是為了通過調(diào)整設(shè)備狀態(tài)來獲得最優(yōu)控制策略,而設(shè)備狀態(tài)只有0、1(關(guān)、開)兩種狀態(tài),普通的粒子群算法無法解決含有離散型變量作為輸入的優(yōu)化,二進(jìn)制粒子群算法(Binary Particle Swarm Optimization,BPSO)則用來優(yōu)化離散空間的問題,它擴展了PSO算法的應(yīng)用,現(xiàn)已經(jīng)廣泛應(yīng)用到各種離散變量優(yōu)化問題中[2]。
本文研究所用到的中央空調(diào)系統(tǒng)數(shù)據(jù)來自于2017年廣州市泰迪智能科技有限公司舉辦的泰迪杯B題附件,該賽題是由廣州泰迪智能科技有限公司及美國伊利諾伊大學(xué)新加坡高等數(shù)字科學(xué)中心聯(lián)合出題,研究對象來源于實際生活,數(shù)據(jù)正式可靠,研究結(jié)論適用實際生活。該系統(tǒng)記錄數(shù)據(jù)的時間刻度為分鐘,本文僅選取該中央空調(diào)系統(tǒng)其中兩天的系統(tǒng)狀態(tài)數(shù)據(jù)進(jìn)行建模研究,將其中2/3的數(shù)據(jù)用來建立模型,剩下的1/3數(shù)據(jù)用來檢驗?zāi)P汀?/p>
首先,對數(shù)據(jù)進(jìn)行異常值檢測,去除例如設(shè)備狀態(tài)為關(guān)閉,功率消耗記錄卻為較大值等異常數(shù)據(jù);其次,將神經(jīng)網(wǎng)絡(luò)的輸入數(shù)據(jù)采用峰值法進(jìn)行歸一化處理,即將每一類數(shù)據(jù)的每一個數(shù)據(jù)除以該類數(shù)據(jù)中比該數(shù)據(jù)大的數(shù)據(jù),使每個數(shù)據(jù)變成0~1的數(shù)據(jù),即歸一化峰值。從而加快模型的訓(xùn)練速度和收斂速度。
神經(jīng)網(wǎng)絡(luò)是逐層構(gòu)建的,是由神經(jīng)元互相連接構(gòu)成的一個非循環(huán)的圖,也就是說一些神經(jīng)元的輸出會作為其他神經(jīng)元的輸入,另外環(huán)路是不允許的,因為這會使得神經(jīng)網(wǎng)絡(luò)的前向傳播陷入無止盡的循環(huán)中。當(dāng)然,神經(jīng)元之間的排列是有規(guī)律的,通常情況下被構(gòu)建成層層連接的形式,每一層中又有多個神經(jīng)元。對于神經(jīng)網(wǎng)絡(luò)隱藏層的節(jié)點數(shù),至今還沒有統(tǒng)一的規(guī)范來解決這個問題,一般可以利用下面兩個經(jīng)驗公式來確定[3-4]
其中,m、n分別為輸入節(jié)點數(shù)目與輸出節(jié)點數(shù)目,a為1~10之間的常數(shù)。
本文以基于梯度下降的自適應(yīng)矩估計方法(Adam)為訓(xùn)練方法,以ReLU函數(shù)為神經(jīng)網(wǎng)絡(luò)的激活函數(shù)建立模型,該模型包含4個隱藏層,每個隱藏層分別包含29、20和15個節(jié)點。建立模型的流程圖如圖1所示。
圖1 神經(jīng)網(wǎng)絡(luò)模型流程
輸入層均為全連接層中21個變量(系統(tǒng)中的51個變量去除時間、各設(shè)備功率和效率讀數(shù))。輸出層有3個神經(jīng)元,分別是熱平衡、總耗電量和冷卻負(fù)載。建立輸入變量和3個輸出神經(jīng)元的關(guān)系,作為后續(xù)優(yōu)化控制策略的基礎(chǔ)。
粒子群優(yōu)化算法是從鳥類覓食這種自然現(xiàn)象中得到啟發(fā)的。它將優(yōu)化問題的解看作搜索空間的一只鳥,在搜索空間中以一定的速度飛行,這個速度根據(jù)它自身及同伴的飛行經(jīng)驗來動態(tài)調(diào)整。鳥被抽象為沒有質(zhì)量和體積的粒子或微粒,第 i個粒子在維空間里的位置表示為向量 xi=[xi,1,xi,2,…,xi,n],飛行速度表示為向量 vi=[vi,1,vi,2,…,vi,n]。每個粒子都有一個由被優(yōu)化函數(shù)決定的適應(yīng)值,并且知道個體歷史最優(yōu)位置 xp→i=[xpi,1,xpi,2,…,xpi,n],即通常說的粒子個體最優(yōu)點或個體引導(dǎo)者,這可以看作是粒子自身經(jīng)驗(也被稱為認(rèn)知部分)。此外,每個粒子還知道到目前為止,全體粒子發(fā)現(xiàn)的群體歷史最優(yōu)位置即通常說的粒子全局最優(yōu)點或全局引導(dǎo)者,這個可以看作是粒子同伴的經(jīng)驗。PSO算法是一種基于迭代的優(yōu)化技術(shù),第t+1次迭代時,粒子將根據(jù)自身經(jīng)驗和同伴的經(jīng)驗決定下一步運動的速度和位置。以帶慣性權(quán)重的基本PSO算法為例,粒子位置和速度的更新公式如下[5]
其中,ω為慣性權(quán)重,c1和c2為學(xué)習(xí)因子或稱為加速系數(shù),r1和r2為服從均勻分布U(0,1)的隨機數(shù),i∈為搜索空間維度,j為粒子規(guī)模。粒子位置更新圖如圖2所示。
圖2 粒子位置更新圖
基本PSO算法的簡單步驟可以描述如下:
(1)初始化。在決策變量允許范圍內(nèi)隨機產(chǎn)生N個粒子的位置,初始化粒子速度為0,粒子個體引導(dǎo)者為
(2)計算每個粒子的適應(yīng)值,并以此更新粒子的全局引導(dǎo)者;
(3)判斷算法是否滿足終止條件,若滿足,則終止迭代,并輸出最優(yōu)解;
(4)由式(3)和式(4)更新每個粒子的速度和位置;
(5)更新每個粒子的個體引導(dǎo)者,并轉(zhuǎn)入步驟2。
在上述2.1建立的神經(jīng)網(wǎng)絡(luò)模型基礎(chǔ)上,建立粒子群算法的適應(yīng)度函數(shù),設(shè)一組方案為
Xij為方案i中第j個設(shè)備的開關(guān)狀態(tài),將神經(jīng)網(wǎng)絡(luò)輸入層的轉(zhuǎn)速神經(jīng)元替換為π(xi),得到一個新的輸入input(xi)∈R30,input(xi)輸入到神經(jīng)網(wǎng)絡(luò)中得到輸出O,其中
O1,O2,O3分別為執(zhí)行方案πi時,神經(jīng)網(wǎng)絡(luò)預(yù)測的系統(tǒng)熱平衡系數(shù)、系統(tǒng)總功率和冷卻負(fù)載。定義適應(yīng)性函數(shù)adapt(O)為
希望找到一個方案,使得系統(tǒng)總功率O2盡量小,系統(tǒng)熱平衡系數(shù)O1不大于5,冷卻負(fù)載O3與用戶期望的冷卻負(fù)載設(shè)定點相差小于3。
二進(jìn)制粒子群算法中粒子速度的更新公式和普通粒子群算法的速度更新公式為
二進(jìn)制粒子群算法與普通粒子群算法的區(qū)別在于其位置更新公式不同,二進(jìn)制粒子群優(yōu)化算法將粒子的速度映射到了一個二進(jìn)制空間,通過下式進(jìn)行Sigmoid函數(shù)轉(zhuǎn)換
生成一個與粒子速度同樣維度大小的[0,1]之間的隨機數(shù)矩陣R并與其相比較,二進(jìn)制粒子群算法的位置按下式更新
二進(jìn)制粒子群算法的簡單步驟可以描述如下[6]:
(1)初始化。隨機產(chǎn)生0或1的隨機數(shù)作為N個粒子的位置,初始化粒子速度為0,粒子個體引導(dǎo)者為
(2)計算每個粒子的適應(yīng)值,并以此更新粒子的全局引導(dǎo)者;
(3)判斷算法是否滿足終止條件,若滿足,則終止迭代,并輸出最優(yōu)解;
(4)由式(3)和式(4)更新每個粒子的速度和位置;
(5)更新每個粒子的個體引導(dǎo)者,并轉(zhuǎn)入步驟2。
本文所建立的神經(jīng)網(wǎng)絡(luò)的輸出結(jié)果有冷卻負(fù)載、熱平衡和系統(tǒng)耗電量。采用交叉檢驗法對所建模型進(jìn)行檢驗,得到所建立神經(jīng)網(wǎng)絡(luò)模型的3個輸出變量的誤差分別是:熱平衡誤差為1.002 5,耗電量誤差為2.452 8 kW,冷卻負(fù)載誤差為1.500 9 RT,所有輸出變量的總平均誤差為1.652 1,誤差較小。由此可見,所建立的模型能較好地模擬出該中央空調(diào)系統(tǒng)的運行,有了可靠性較高的模型,再對模型進(jìn)行優(yōu)化,從而實現(xiàn)節(jié)能的目的。
基于神經(jīng)網(wǎng)絡(luò)建立該中央空調(diào)的系統(tǒng)模型,再采取粒子群優(yōu)化算法對系統(tǒng)設(shè)備轉(zhuǎn)速進(jìn)行優(yōu)化,在滿足冷卻負(fù)載的前提下,優(yōu)化方案及原系統(tǒng)歷史記錄的耗電量和系統(tǒng)效率分別如圖3和圖4所示,其中曲線1為系統(tǒng)歷史記錄的耗電量和系統(tǒng)效率,曲線2為優(yōu)化方案的耗電量和系統(tǒng)效率。
圖3 原系統(tǒng)耗電量及優(yōu)化方案的耗電量
由圖3、4可知,優(yōu)化方案的耗電量少于原系統(tǒng)總耗電量。經(jīng)過計算,優(yōu)化方案的總耗電量比歷史記錄的系統(tǒng)總耗電量減少34 777.22 kW,相比歷史記錄的總耗電量,節(jié)省了9.678 578%的電能消耗,優(yōu)化方案的系統(tǒng)效率平均提高0.055 619 23,即1 RT的制冷量所需要的電能減少0.055 619 23 kW。
圖4 原系統(tǒng)效率及優(yōu)化方案系統(tǒng)效率
采用二進(jìn)制粒子群算法對系統(tǒng)開關(guān)狀態(tài)進(jìn)行優(yōu)化,在滿足冷卻負(fù)載的前提下,系統(tǒng)優(yōu)化方案的耗電量及系統(tǒng)歷史記錄的耗電量和系統(tǒng)效率分別如圖5和圖6所示,其中曲線1為系統(tǒng)歷史記錄,曲線2為優(yōu)化方案的系統(tǒng)耗電量和系統(tǒng)效率。
圖5 原系統(tǒng)開關(guān)狀態(tài)耗電量及優(yōu)化系統(tǒng)開關(guān)狀態(tài)耗電量
圖6 原系統(tǒng)開關(guān)狀態(tài)系統(tǒng)效率及優(yōu)化系統(tǒng)開關(guān)狀態(tài)系統(tǒng)效率
經(jīng)過計算,對設(shè)備開關(guān)狀態(tài)優(yōu)化后的優(yōu)化方案比系統(tǒng)歷史記錄的總耗電量減少38 234.31 kW,減少10.640 69%的電能消耗,優(yōu)化方案的系統(tǒng)效率平均降低0.108 748 4 kW,即1 RT的制冷量所需電能減少0.108 748 4 kW。
本文利用神經(jīng)網(wǎng)絡(luò)建模,進(jìn)行端到端的參數(shù)擬合,避免了特征選擇。用交叉檢驗法檢驗到所建模型輸出變量中的熱平衡誤差為1.002 5,耗電量誤差為2.452 8 kW,冷卻負(fù)載誤差為1.500 9 RT,誤差較小。能較好地模擬出該中央空調(diào)的運行。為了使該套中央空調(diào)系統(tǒng)實現(xiàn)節(jié)能目的,用了粒子群優(yōu)化算法和二進(jìn)制粒子群算法對模型進(jìn)行優(yōu)化,若采用優(yōu)化方案運行中央空調(diào),可節(jié)省10%左右的電能消耗。說明粒子群優(yōu)化算法和二進(jìn)制粒子群優(yōu)化算法對中央空調(diào)系統(tǒng)節(jié)能控制有一定的效果。
本文的不足之處:1)該中央空調(diào)系統(tǒng)的數(shù)據(jù)是每分鐘記錄一組的,數(shù)據(jù)前后是有時間關(guān)聯(lián)的,用神經(jīng)網(wǎng)絡(luò)建模就沒有利用到這個信息,所以用神經(jīng)網(wǎng)絡(luò)建模存在一定的不足。2)粒子群優(yōu)化算法優(yōu)化模型存在的弊端就是容易產(chǎn)生早熟收斂(尤其是在處理復(fù)雜的多峰搜索問題中),局部尋優(yōu)能力較差。
神經(jīng)網(wǎng)絡(luò)的性能主要由以下幾方面決定:神經(jīng)網(wǎng)絡(luò)的拓?fù)浣Y(jié)構(gòu)、神經(jīng)網(wǎng)絡(luò)的激勵函數(shù)、神經(jīng)網(wǎng)絡(luò)的訓(xùn)練方法及訓(xùn)練樣本的品質(zhì)。若想降低所建模型的誤差,可以采用其他訓(xùn)練方法,如牛頓算法、共軛梯度法和梯度下降法等等;或者選用其他激活函數(shù),如Sigmoid和tanh;或者加大數(shù)據(jù)預(yù)處理的力度,提高數(shù)據(jù)的品質(zhì),減少不良數(shù)據(jù)對模型的影響,從而降低模型的誤差。
[1]張勇,鞏敦衛(wèi).先進(jìn)多目標(biāo)粒子群優(yōu)化理論及其應(yīng)用[M].北京:科學(xué)出版社,2016:1-15.
[2]田雨波.粒子群優(yōu)化算法及電磁應(yīng)用[M].北京:科學(xué)出版社,2014:120-136.
[3]朱大奇.人工神經(jīng)網(wǎng)絡(luò)研究現(xiàn)狀及其展望[J].江南大學(xué)學(xué)報(自然科學(xué)版),2004,3(1):103-105.
[4]魏海坤.神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計的理論方法[M].北京:國防工業(yè)出版社,2005.
[5]劉衍民,牛奔.新型粒子群算法理論與實踐[M].北京:科學(xué)出版社,2013:11-21.
[6]潘峰,李位星,高琪.粒子群優(yōu)化算法與多目標(biāo)優(yōu)化[M].北京:北京理工大學(xué)出版社,2013:15-40.