付茂盛,耿 建,張仰飛
(1.南京工程學(xué)院電力工程學(xué)院,江蘇 南京 211167;2.國網(wǎng)山東省電力公司泰安供電公司,山東 泰安 271000)
伴隨當(dāng)今社會經(jīng)濟飛速發(fā)展,能源短缺問題逐漸成為國家關(guān)注的焦點。工業(yè)企業(yè)是能源消費的重點,約占全國能源消費的70%[1-3],但大多數(shù)工業(yè)企業(yè)缺乏有效的監(jiān)控手段,導(dǎo)致企業(yè)用能粗放。因此,企業(yè)能耗異常精準(zhǔn)辨識研究已成為目前高耗能企業(yè)節(jié)能工作亟待解決的關(guān)鍵問題[4]。
以往已有部分學(xué)者對能耗異常問題展開研究,并取得了不少成果。文獻[5]考慮采用基礎(chǔ)統(tǒng)計算法來獲取能耗閾值,解決了能耗異常問題,實現(xiàn)了用戶能耗異常的精準(zhǔn)判斷;文獻[6]從統(tǒng)計學(xué)方面入手,通過對用戶能耗數(shù)據(jù)的深度挖掘,建立了較為精確的能耗預(yù)測模型,實現(xiàn)了能耗異常預(yù)警。以上文獻均對能耗異常問題進行了探討,但未考慮季節(jié)和時間等場景對能耗異常診斷的影響,可能會影響能耗異常診斷的準(zhǔn)確性。
因此,現(xiàn)階段能耗異常檢測主要分為2個步驟:能耗模式的識別和離群數(shù)據(jù)的檢測?,F(xiàn)有的研究大部分是對這2個步驟進行改進,文獻[7]針對玻璃窯爐能耗異常檢測問題,提出一種基于人工蜂群算法的密度峰值聚類方法,自適應(yīng)選擇密度峰值聚類參數(shù),實現(xiàn)窯爐能耗異常的檢測。文獻[8]提出一種SA-DBSCAN算法自適應(yīng)識別建筑能耗模式,有效解決高校建筑能耗容易誤判的問題。文獻[9]根據(jù)熔鍋爐生產(chǎn)過程建立不同能耗模式,并基于螢火蟲算法對數(shù)據(jù)能耗模式進行識別;然后基于改進決策樹算法對熔鍋爐能耗進行異常診斷。文獻[10]針對建筑能耗實時檢測不足問題,提出一種基于數(shù)據(jù)挖掘和能耗模式匹配的能耗實時監(jiān)測方法。以上文獻均考慮到能耗模式對異常檢測的影響,并取得了較好的效果,但未考慮時序能耗數(shù)據(jù)運行趨勢,且部分方法在針對實時能耗異常數(shù)據(jù)時效率偏低。
綜上所述,為了提高企業(yè)能耗異常檢測的準(zhǔn)確率,本文采用模態(tài)分解算法與LOF算法進行企業(yè)能耗異常辨識。首先,基于傳統(tǒng)能耗標(biāo)準(zhǔn)區(qū)間進行企業(yè)能耗異常的定性分析;然后,引入完全自適應(yīng)噪聲集合經(jīng)驗?zāi)B(tài)分解方法(complete EEMD with adaptive noise,CEEMDAN)去除能耗數(shù)據(jù)中的運行趨勢,提高局部異常因子法(local outlier factor,LOF)對企業(yè)能耗異常檢測的準(zhǔn)確度。實驗結(jié)果表明,本文所提異常辨識方法在檢測企業(yè)能耗異常數(shù)據(jù)方面具有較高準(zhǔn)確率。
DBSCAN算法[11]存在2個重要參數(shù):掃描半徑E和密度閾值M。即以數(shù)據(jù)集中任意點為中心,以E為半徑畫圓,判斷圓內(nèi)數(shù)據(jù)點個數(shù)與密度閾值M的大小關(guān)系,并按大小關(guān)系將所有數(shù)據(jù)點分為核心點、邊緣點和噪聲點。但傳統(tǒng)的DBSCAN算法存在參數(shù)E和M確定困難的問題。為了解決這一問題,采用HDBSCAN算法對企業(yè)能耗模式進行分析。
HDBSCAN算法[12]的具體步驟如下:
a.重新定義數(shù)據(jù)點之間的距離dK來降低噪聲點對聚類結(jié)果的影響,即
dK(a,b)=maxcK(a),cK(b),d(a,b)
(1)
dK(a,b)為a、b點相互可達距離;cK(x)為K近鄰下點的核心距離;d(a,b)為a、b點的歐氏距離。
b.通過Prim算法構(gòu)建最小生成樹,并按距離對樹的邊緣進行排序并迭代,為每個樹的邊緣創(chuàng)建一個新的合并集群。
c.設(shè)置最小集群大小為5,壓縮數(shù)據(jù)集層結(jié)構(gòu),采用λ=1/d計算各簇類的穩(wěn)定性,并從數(shù)據(jù)集中提取穩(wěn)定性更好的集群作為最終聚類結(jié)果。
∑p∈cluster(λp-λb)
(2)
λp為p點脫離所在集群的λ值;λb為集群分裂為自身的λ值。
由于企業(yè)用能模式可能隨用能環(huán)境的變化而變化,因此,首先需要構(gòu)建企業(yè)能耗模式判別樹,并對企業(yè)能耗實時數(shù)據(jù)進行模式匹配,具體步驟如下:
a.采用HDBSCAN對企業(yè)歷史能耗數(shù)據(jù)進行聚類分析,劃分出不同簇類,各簇類代表企業(yè)的不同能耗模式,并在數(shù)據(jù)中進行標(biāo)記。
b.對經(jīng)數(shù)據(jù)標(biāo)記后的歷史數(shù)據(jù)采用隨機森林算法[13]進行分類,確定企業(yè)能耗模式判別樹。
c.分析不同能耗模式下的數(shù)據(jù)分布,建立不同能耗模式下的企業(yè)標(biāo)準(zhǔn)庫,分別選取能耗最小值xmin作為該模式下的標(biāo)準(zhǔn)區(qū)間的下限,最大值xmax作為標(biāo)準(zhǔn)區(qū)間的上限,進而實現(xiàn)各能耗模式下的標(biāo)準(zhǔn)區(qū)間的劃分。
d.實時判斷當(dāng)前數(shù)據(jù)的能耗模式。
EMD算法是經(jīng)典模態(tài)分解方法,常用于處理非線性、非平穩(wěn)的時間序列數(shù)據(jù)[14];EEMD和CEEMD算法在經(jīng)典模態(tài)分解方法基礎(chǔ)上加入高斯白噪聲來減輕EMD算法的模態(tài)混疊問題[15],因此不可避免地會在本征模態(tài)分量中殘留一定的白噪聲,從而影響后續(xù)數(shù)據(jù)的處理。因此,引入完全自適應(yīng)噪聲集合經(jīng)驗?zāi)B(tài)分解方法解決上述序列分解所存在的問題。
CEEMDAN具體步驟如下[16]:
(3)
b.計算一階余量r(t)=e(t)-I1,與原始序列處理步驟相同,計算出序列的二階模態(tài)分量I2。
c.重復(fù)步驟b直到余量不能再分解,終止運算,輸出所有模態(tài)分量。
局部異常因子算法基于數(shù)據(jù)點的密度判斷數(shù)據(jù)是否異常,并同時量化出數(shù)據(jù)點的異常程度,具有識別速度快、精度高等特點[17]。相關(guān)概念如下:
a.定義以點a為圓心,以點a的第k距離為半徑區(qū)域內(nèi)點的集合為Rk(a)。
b.計算數(shù)據(jù)點間的可達距離dk(a,b),定義點a的局部可達密度ρk(a)為
(4)
c.局部異常值Lk(a)表示數(shù)據(jù)a與Rk(a)中其他點的局部可達密度差異程度,計算式為
(5)
由式(5)可知,局部異常值Lk(a)值表現(xiàn)點a的局部密度,Lk(a)越大于1說明該點密度與整體數(shù)據(jù)密度越不一致,越有可能為離群點。
綜上所述,基于CEEMDAN-LOF的企業(yè)能耗異常辨識過程如圖1所示。
圖1 基于CEEMDAN-LOF的企業(yè)能耗異常辨識流程
具體步驟為:
a.依據(jù)1.2節(jié)所提企業(yè)能耗模式判別樹實時判斷當(dāng)前能耗數(shù)據(jù)的能耗模式。
b.基于各能耗模式下的標(biāo)準(zhǔn)庫區(qū)間對能耗異常進行定性判斷。
c.采用CEEMDAN算法對企業(yè)能耗時序數(shù)據(jù)進行分解,得到尺度各不相同的N個分量,選取合并后的低頻分量作為時間序列的運行趨勢。
d.去除時序能耗數(shù)據(jù)趨勢性對異常辨識的影響,并基于LOF法對能耗數(shù)據(jù)進行離群點分析,實現(xiàn)企業(yè)能耗異常的精準(zhǔn)辨識。
以某省水泥企業(yè)能耗歷史數(shù)據(jù)為研究樣本,對本文提出的企業(yè)能耗數(shù)據(jù)異常辨識方法進行研究。選取該企業(yè)2020年1月1日—12月31日內(nèi)的日級能耗數(shù)據(jù)作為檢測數(shù)據(jù),共計366個數(shù)據(jù)。
圖2給出了數(shù)據(jù)歸一化后企業(yè)能耗數(shù)據(jù),從圖2中可以看出,數(shù)據(jù)中存在異常值和連續(xù)零值。
由于數(shù)據(jù)統(tǒng)計期間存在停產(chǎn)整修,企業(yè)總能耗、煤耗和電耗都為0的數(shù)據(jù);為獲取企業(yè)正常生產(chǎn)時能耗模式,應(yīng)去除該類0數(shù)據(jù)后進行聚類分析。
圖2 原始數(shù)據(jù)展示
采用HDBSCAN算法對去零能耗數(shù)據(jù)進行聚類分析,聚類結(jié)果如圖3所示。從圖3中可得,能耗數(shù)據(jù)被分為A、B和C這3個簇類。
圖3 去零數(shù)據(jù)后的企業(yè)能耗模式劃分結(jié)果
在獲取企業(yè)存在的用能模式之后,構(gòu)造2個特征:停產(chǎn)檢修和用能模式標(biāo)簽。判斷能耗數(shù)據(jù)是否為零數(shù)據(jù)并將結(jié)果填入停產(chǎn)檢修特征中,若是停產(chǎn)檢修,則該數(shù)據(jù)用能模式為模式D;將非零數(shù)據(jù)聚類得到的數(shù)據(jù)簇類結(jié)果A、B和C填入用能模式標(biāo)簽特征中,分別為用能模式A、用能模式B和用能模式C,添加數(shù)據(jù)特征后的部分能耗數(shù)據(jù)如表1所示。
表1 構(gòu)造特征后的部分能耗數(shù)據(jù)
對能耗數(shù)據(jù)采用隨機森林算法進行分類,按照3∶1的比例劃分訓(xùn)練集和檢驗集,分類誤差為2.51%。得到能耗模式判定樹如圖4所示。
圖4 企業(yè)能耗模式判別決策樹
經(jīng)HDBSCAN聚類后,各簇類詳細(xì)信息如表2所示。取各簇類能耗最大值xmax和最小值xmin作為該標(biāo)準(zhǔn)區(qū)間的上下限,即歸一化前簇類A的標(biāo)準(zhǔn)區(qū)間為[5.01 tce,10.54 tce],簇類B的標(biāo)準(zhǔn)區(qū)間為[11.90 tce,16.60 tce],簇類C標(biāo)準(zhǔn)區(qū)間為[4.56 tce,9.04 tce]。對企業(yè)能耗實時數(shù)據(jù)進行模式匹配后,判斷數(shù)據(jù)是否在相應(yīng)標(biāo)準(zhǔn)區(qū)間內(nèi),若不在,則判定為能耗異常。
表2 每個簇類中的個案數(shù)目和能耗標(biāo)準(zhǔn)區(qū)間
上節(jié)給出企業(yè)能耗用能模式的識別結(jié)果,并根據(jù)相應(yīng)模式標(biāo)準(zhǔn)區(qū)間對企業(yè)能耗異常進行定性判斷,但針對短時間內(nèi)企業(yè)用能局部突變導(dǎo)致的能耗異常問題,標(biāo)準(zhǔn)區(qū)間的檢測精度不足;以用能模式C為例,選取該企業(yè)7月—11月的時序能耗數(shù)據(jù)進行企業(yè)能耗異常精辨識。
3.2.1 基于CEEMDAN獲取能耗序列運行趨勢
分別采用CEEMDAN和EMD對所選能耗時間序列進行模態(tài)分解,獲得從高頻到低頻共5個分量。從圖5可知,經(jīng)EMD分解后的分量I2、I3存在較明顯的模態(tài)混疊現(xiàn)象,而序列采用CEEMDAN分解后模態(tài)混疊現(xiàn)象有明顯改善;經(jīng)CEEMDAN后的分量I3、I4和I5可以大致刻畫出序列趨勢;而分量I1和I2局部變化幅度和頻率較大;所以將低頻分量重組用于表示時序曲線的運行趨勢。
如圖6所示,相比于采用EMD方法,采用CEEMDAN方法獲取的能耗運行趨勢相對平緩,且受到異常點的影響更小,可以更好地表現(xiàn)企業(yè)能耗時序曲線運行趨勢。
圖5 CEEMDAN和EMD模態(tài)分解對比
圖6 企業(yè)能耗數(shù)據(jù)與運行趨勢對比
3.2.2 基于LOF的時序能耗數(shù)據(jù)離群點分析
圖7為原始時序能耗數(shù)據(jù)在k=30時的LOF檢測結(jié)果。從圖7中可得,0~20 d的全部數(shù)據(jù)被識別為離群數(shù)據(jù),這是因為檢測結(jié)果受到該時間段內(nèi)企業(yè)有規(guī)律能源使用變化的影響,導(dǎo)致判別結(jié)果存在偏差,從而無法準(zhǔn)確識別離群數(shù)據(jù)。
圖7 采用LOF離群數(shù)據(jù)檢測方法
圖8為采用CEEMDAN去除數(shù)據(jù)運行趨勢后在k=30時的LOF檢測結(jié)果。從圖8中可得,異常能耗數(shù)據(jù)與正常數(shù)據(jù)的局部異常值較容易分辨,并能準(zhǔn)確地辨識0~20 d中的能耗異常數(shù)據(jù)。
圖8 采用CEEMDAN-LOF離群數(shù)據(jù)檢測方法
針對2種算法的詳細(xì)檢測結(jié)果如表3所示,當(dāng)k=10、20、30、40時,采用原始序列檢測離群數(shù)據(jù)時均存在較多誤判值和漏檢值,而采用CEEMDAN消除序列運行趨勢后進行離群數(shù)據(jù)檢測并無誤判和漏檢值數(shù)據(jù),進一步驗證本文方法檢測異常數(shù)據(jù)的有效性。
表3 采用傳統(tǒng)LOF和CEEMDAN-LOF算法的檢測結(jié)果
企業(yè)能耗異常檢測已成為企業(yè)節(jié)能的重要措施,也是后續(xù)企業(yè)能效標(biāo)桿建立、故障成因檢測和能效評價的基礎(chǔ),具有十分重要的作用。本文提出了一種基于CEEMDAN-LOF的企業(yè)能耗異常辨識方法,通過引入CEEMDAN去除時序能耗數(shù)據(jù)的運行趨勢,并基于LOF算法對能耗數(shù)據(jù)進行離群點分析,實現(xiàn)了企業(yè)能耗異常的精準(zhǔn)辨識。實驗表明,與傳統(tǒng)的LOF算法相比,CEEMDAN-LOF算法去除了數(shù)據(jù)趨勢性對異常辨識的影響,使得企業(yè)能耗異常檢測的準(zhǔn)確性得到較高提升。