崔文浩,鄭勝,楊森權(quán),楊珊珊,曾曙光,羅驍域
(1.三峽大學(xué)電氣與新能源學(xué)院,宜昌 443002;2.三峽大學(xué)理學(xué)院,宜昌 443002;3.中核核工業(yè)仿真技術(shù)重點(diǎn)實(shí)驗(yàn)室,武漢 443074)
推進(jìn)能源電力清潔低碳轉(zhuǎn)型與高質(zhì)量發(fā)展是貫徹落實(shí)中國(guó)碳達(dá)峰、碳中和戰(zhàn)略目標(biāo)[1-2]的核心要義。核電作為清潔能源因具有污染排放少、發(fā)電效率高等優(yōu)點(diǎn),而擁有良好的發(fā)展前景。隨著核電數(shù)字化發(fā)展[3],核電廠中各系統(tǒng)的傳感器數(shù)據(jù)被采集和存儲(chǔ),這些數(shù)據(jù)蘊(yùn)含了系統(tǒng)設(shè)備的狀態(tài)信息,為工況劃分模型的建立提供了數(shù)據(jù)基礎(chǔ)。核電廠對(duì)各工況數(shù)據(jù)進(jìn)行處理分析,便可實(shí)現(xiàn)對(duì)運(yùn)行過(guò)程的在線監(jiān)控[4]、實(shí)時(shí)預(yù)警[5]和故障診斷[6],為核電運(yùn)維人員的安全維護(hù),經(jīng)濟(jì)運(yùn)行提供有效的數(shù)據(jù)基礎(chǔ)和分析手段,因此核電的工況劃分是一項(xiàng)非常重要的工作。但是由于核電廠內(nèi)部過(guò)程的復(fù)雜性,無(wú)法得知核電運(yùn)行工況的準(zhǔn)確個(gè)數(shù),因此需要采用聚類(lèi)方法來(lái)確定工況數(shù)。
目前,有幾種合適的聚類(lèi)算法可以被應(yīng)用至工況劃分之上。Hallac等[7]提出了TICC(toeplitz inverse covariance-based clustering)算法,該算法通過(guò)考察信號(hào)各維度之間的相關(guān)性,利用時(shí)間窗口來(lái)完成對(duì)多元時(shí)序數(shù)據(jù)的聚類(lèi)。早前有相關(guān)核電研究人員將該方法應(yīng)用至工況劃分,但是由于時(shí)間窗的大小需要靠先驗(yàn)知識(shí)確定,而核電數(shù)據(jù)較為復(fù)雜,難以通過(guò)人工的方式確定時(shí)間窗口的大小,使得該方法的適用性不強(qiáng)。K-means聚類(lèi)算法[8]收斂速度快,聚類(lèi)高效且效果好,從理論上看比較適合核電運(yùn)行數(shù)據(jù)這種維度高體量大的大規(guī)模數(shù)據(jù)集。秦緒華等[9]通過(guò)改進(jìn)K-means算法并應(yīng)用至火電的外部工況劃分上,使工況劃分結(jié)果更合理。然而K-means聚類(lèi)算法對(duì)初始聚類(lèi)中心的依賴非常嚴(yán)重[10],對(duì)非凸數(shù)據(jù)集的聚類(lèi)效果欠佳[11],且會(huì)出現(xiàn)局部最小值的情況[12],而核電廠的內(nèi)部過(guò)程復(fù)雜,難以獲知準(zhǔn)確的工況個(gè)數(shù)和聚類(lèi)中心,這也使得將K-means方法應(yīng)用于核電工況劃分時(shí)所得到的結(jié)果并不理想。
為了解決上述算法在應(yīng)用于核電運(yùn)行工況劃分時(shí)所出現(xiàn)的問(wèn)題。提出了基于密度峰值聚類(lèi)的高斯混合模型核電運(yùn)行工況劃分算法。密度峰值聚類(lèi)算法[13]的聚類(lèi)速度快、能夠快速發(fā)現(xiàn)任意形狀的類(lèi)簇[14]、魯棒性強(qiáng),且不受聚類(lèi)對(duì)象嵌入的空間維數(shù)的影響,已廣泛用于圖像識(shí)別[15]、天文數(shù)據(jù)處理[16]等領(lǐng)域。該算法通過(guò)引入決策圖的方式,使得操作人員可以直觀的確定聚類(lèi)的個(gè)數(shù),該算法可以幫助確定核電運(yùn)行工況的個(gè)數(shù)。高斯混合模型(Gaussian mixture model,GMM,)[17-18]能適用于線性與非線性數(shù)據(jù),在異常檢測(cè)[19]、工況劃分[20]等方面均得到了廣泛的應(yīng)用。核電廠在穩(wěn)定運(yùn)行狀態(tài)下的數(shù)據(jù)可認(rèn)為是服從高斯分布的時(shí)序數(shù)據(jù),因此可利用高斯混合模型來(lái)完成工況劃分。但是核電廠數(shù)據(jù)維度高,直接導(dǎo)入模型中會(huì)產(chǎn)生計(jì)算難度大的問(wèn)題,且高斯混合模型需要確定聚類(lèi)初值,不合適的聚類(lèi)初值會(huì)給聚類(lèi)結(jié)果帶來(lái)很大的影響。
鑒于此,利用主成分分析(principal component analysis,PCA)算法[21]篩選出高維核電數(shù)據(jù)的主元,完成數(shù)據(jù)降維,降低高斯混合模型的計(jì)算難度,然后采用密度峰值聚類(lèi)算法來(lái)確定工況個(gè)數(shù),為確定高斯混合模型的初值提供參考。最后,通過(guò)模型響應(yīng)度剔除響應(yīng)度低的子模型,提高混合高斯模型的準(zhǔn)確性,實(shí)現(xiàn)準(zhǔn)確的工況劃分。
基于密度峰值聚類(lèi)的高斯混合模型核電運(yùn)行工況劃分算法流程圖如圖1所示,具體步驟如下。
圖1 算法流程Fig.1 Algorithmic flow
步驟1 對(duì)核電數(shù)據(jù)進(jìn)行預(yù)處理,去除原始數(shù)據(jù)中的噪聲。
(1)
(2)
步驟3 采用密度峰值聚類(lèi),該算法以決策圖的方式將分類(lèi)結(jié)果可視化。密度峰值聚類(lèi)算法是由Rodriguze等[13]于2014年提出的聚類(lèi)算法,其思想是將高密度區(qū)域從低密度區(qū)域的包圍中剝離出來(lái),所以該算法也就滿足以下兩點(diǎn)假設(shè):①聚類(lèi)中心的密度大于周?chē)鷧^(qū)域的密度;②聚類(lèi)中心點(diǎn)與其他高密度點(diǎn)的距離較大。
由此可知,密度峰值聚類(lèi)算法的核心在于如何計(jì)算局部密度ρi與聚類(lèi)中心點(diǎn)的距離δi??蓪ⅵ裪定義為
(3)
(4)
式中:dc為截?cái)嗑嚯x;dij的含義為任意一點(diǎn)j與i點(diǎn)的距離;χ(x)為判斷點(diǎn)是否處于聚類(lèi)圓之中的函數(shù)。
式(3)可理解為與數(shù)據(jù)點(diǎn)i的距離dij小于截?cái)嗑嚯xdc的點(diǎn)的個(gè)數(shù)。對(duì)于聚類(lèi)中心點(diǎn)的距離δi可定義為
(5)
利用該算法對(duì)PCA降維后的數(shù)據(jù)進(jìn)行聚類(lèi),在計(jì)算得出局部密度ρi和距離δi之后,可通過(guò)如圖2所示的決策圖,將同時(shí)滿足具有較大密度和較大距離的點(diǎn)認(rèn)定為類(lèi)簇中心。對(duì)于具有較大距離的但是局部密度較低的點(diǎn),可認(rèn)定為噪聲點(diǎn)。對(duì)于剩余的點(diǎn)可將其分配到最近鄰的且密度更大點(diǎn)的所在簇中。所找到的類(lèi)簇中心個(gè)數(shù)即為該數(shù)據(jù)內(nèi)存在的工況個(gè)數(shù)。
■為人工選擇出的聚類(lèi)中心圖2 密度峰值聚類(lèi)決策圖Fig.2 Density peak clustering decision plot
通過(guò)該方法可以得到核電的運(yùn)行工況類(lèi)數(shù),為高斯混合模型的聚類(lèi)初值提供參考,從而提高了高斯混合模型的精度。
步驟4 高斯模型是一種常用的變量分布模型,廣泛應(yīng)用于數(shù)理領(lǐng)域。一維高斯分布的概率密度函數(shù)可定義為
(6)
式(6)中:μ為均值;σ為標(biāo)準(zhǔn)差;σ2為方差。
高斯混合模型可以理解為多個(gè)單高斯模型按一定的權(quán)重組合起來(lái),每一個(gè)不同的類(lèi)都分別代表一個(gè)高斯分布,因此可把高斯混合模型[24]的概率分布描述為
(7)
關(guān)于第k個(gè)高斯模型的響應(yīng)度γk的計(jì)算公式為
(8)
為了使高斯混合模型得到最優(yōu)參數(shù),選擇使用EM算法來(lái)優(yōu)化參數(shù),EM算法可分為兩步,在進(jìn)行這兩步工作之前需要設(shè)定子分布模型的參數(shù)的初值。E步:求取第k個(gè)分模型的對(duì)當(dāng)前觀測(cè)數(shù)據(jù)的響應(yīng)度γ′jk,M步:迭代求新一輪的模型參數(shù)(期望、方差、權(quán)重),當(dāng)?shù)鷿M足|αk-αk-1|≤ε時(shí)即可終止迭代,其中ε為閾值。
(9)
(10)
(11)
高維核電數(shù)據(jù)在利用PCA完成降維后,降低了高斯混合模型的計(jì)算難度,參考密度峰值聚類(lèi)的結(jié)果,確定高斯混合模型的初值K。將降維數(shù)據(jù)導(dǎo)入模型,迭代至模型均值和方差趨于穩(wěn)定的同時(shí),利用模型響應(yīng)度γk去排除模型響應(yīng)度低的類(lèi),提高分類(lèi)合理性。如圖3所示,為高斯混合模型的聚類(lèi)結(jié)果圖,能夠找到聚類(lèi)中心的聚類(lèi)結(jié)果即為一類(lèi)工況,未找到聚類(lèi)中心的結(jié)果會(huì)根據(jù)模型響應(yīng)度的大小被剔除掉。降維數(shù)據(jù)與原始數(shù)據(jù)的索引一致,因此在高斯混合模型劃分出工況以后,根據(jù)各工況中所屬數(shù)據(jù)點(diǎn)的索引,依次還原至各個(gè)傳感器的原始數(shù)據(jù)當(dāng)中,找到原始數(shù)據(jù)中各點(diǎn)所屬的工況,實(shí)現(xiàn)最終的工況劃分。
圖3 高斯混合模型聚類(lèi)結(jié)果圖Fig.3 Clustering results plot of Gaussian mixture model
采用國(guó)內(nèi)某核電廠的歷史運(yùn)行數(shù)據(jù)來(lái)完成工況的劃分和算法有效性的驗(yàn)證。該數(shù)據(jù)的記錄時(shí)間為2017年1月1日—2017年3月31日。如表1所示,本次實(shí)驗(yàn)使用了其中12個(gè)傳感器的數(shù)據(jù),其中包括了液位、壓力、溫度和流量等傳感器。每個(gè)傳感器記錄了2 759 638條運(yùn)行數(shù)據(jù),可以清晰還原整個(gè)系統(tǒng)的運(yùn)行工況。
表1 參數(shù)分布Table 1 Parameters distribution
將上述12個(gè)參數(shù)的數(shù)據(jù)整理得到一個(gè)2 759 638×12的原始數(shù)據(jù)矩陣,利用PCA算法對(duì)該數(shù)據(jù)矩陣進(jìn)行降維,選取總貢獻(xiàn)率達(dá)到55%的兩個(gè)向量作為投影向量(實(shí)際貢獻(xiàn)率為58.80%),得到了一個(gè)2 759 638×2的降維數(shù)據(jù)矩陣。如圖3所示,高斯混合模型的結(jié)果以兩個(gè)維度(第一主成分、第二主成分)的形式呈現(xiàn),即為降維數(shù)據(jù)的可視化呈現(xiàn)。使用密度峰值聚類(lèi)算法對(duì)降維后的數(shù)據(jù)進(jìn)行聚類(lèi)。該算法將每個(gè)數(shù)據(jù)點(diǎn)的ρ值(密度)和δ值(距離)表示在一個(gè)二維的決策圖上。用戶根據(jù)決策圖的分布情況,對(duì)聚類(lèi)中心點(diǎn)進(jìn)行選擇,這是一個(gè)人工操作,無(wú)法自動(dòng)完成。圖2為聚類(lèi)所得的決策圖,在決策圖中靠近δ(縱軸)的點(diǎn)屬于噪聲點(diǎn),這一類(lèi)點(diǎn)密度小且距離其他點(diǎn)也遠(yuǎn),不能選為聚類(lèi)核心,靠近ρ(橫軸)的屬于正常點(diǎn),但是周?chē)懈鼮楹线m的點(diǎn)可以選作聚類(lèi)核心。圖2所示紅圈標(biāo)記出的3個(gè)點(diǎn),即為人工選擇出的3個(gè)聚類(lèi)中心,因?yàn)檫@3個(gè)點(diǎn)具有較大的局部密度以及距離,符合作為聚類(lèi)中心的標(biāo)準(zhǔn),因此將這3個(gè)點(diǎn)選擇為聚類(lèi)中心點(diǎn),每一個(gè)聚類(lèi)中心點(diǎn)就代表著一類(lèi)工況。由此可知實(shí)驗(yàn)數(shù)據(jù)中所存在的工況個(gè)數(shù)為3類(lèi)。該值為后續(xù)的高斯混合模型在選擇聚類(lèi)初值時(shí)提供參考。
由于密度峰值聚類(lèi)所得到的結(jié)果為3類(lèi)工況,可以獲知在該數(shù)據(jù)類(lèi)存在的工況種類(lèi)應(yīng)該為3類(lèi),其他不屬于這3類(lèi)的點(diǎn),會(huì)以散點(diǎn)的形式呈現(xiàn)。如圖3所示,將降維數(shù)據(jù)以散點(diǎn)形式呈現(xiàn)時(shí),可以看出,有3個(gè)點(diǎn)簇以及其他的散點(diǎn)。為了不把散點(diǎn)強(qiáng)行劃入某一類(lèi)工況之中,根據(jù)峰值密度聚類(lèi)所得到的3類(lèi)工況參考值,可在其參考值上加1,將高斯混合模型的聚類(lèi)初值定為4。迭代運(yùn)算100次后,高斯混合模型的方差和均值均趨于穩(wěn)定,此時(shí)可輸出最終的聚類(lèi)結(jié)果。從圖3可以看出,Cluster0、Cluster1、Cluster3找到聚類(lèi)核心。Cluster2包括其他的點(diǎn),但是沒(méi)有找到聚類(lèi)中心。高斯混合模型的聚類(lèi)結(jié)果以點(diǎn)集的形式呈現(xiàn),處于不同工況的點(diǎn)所屬的集合也不相同,但每個(gè)散點(diǎn)所對(duì)應(yīng)的時(shí)間點(diǎn)與實(shí)驗(yàn)數(shù)據(jù)的時(shí)間點(diǎn)依然保持一致。
獲得了高斯混合模型的聚類(lèi)結(jié)果后,可找到每類(lèi)工況中所包含點(diǎn)所對(duì)應(yīng)的時(shí)間點(diǎn)(索引),按時(shí)間點(diǎn)將所對(duì)應(yīng)的工況情況還原到原始的傳感器數(shù)據(jù)當(dāng)中。因此可以獲得各類(lèi)傳感器在原始數(shù)據(jù)中的工況分布情況。以RCP012MN液位傳感器為例,該傳感器的數(shù)據(jù)占主成分的40.45%,為占比最大的傳感器,最能代表實(shí)驗(yàn)數(shù)據(jù)的特點(diǎn),其還原效果也最為優(yōu)秀。在還原過(guò)程中使用的是傳感器的原始數(shù)據(jù),利用高斯混合模型所得到的聚類(lèi)結(jié)果,根據(jù)各個(gè)類(lèi)別點(diǎn)所對(duì)應(yīng)的時(shí)間點(diǎn),依次還原至原數(shù)據(jù)點(diǎn)上,即可達(dá)到工況分類(lèi)的可視化。其聚類(lèi)初值均選擇為4時(shí),利用本文算法(基于密度峰值聚類(lèi)的高斯混合模型核電運(yùn)行工況劃分算法)與K-means聚類(lèi)算法、TICC聚類(lèi)算法以及DBSCAN(density-based spatial clustering of applications with noise)[25]算法在RCP012MN傳感器數(shù)據(jù)上的工況劃分結(jié)果對(duì)比如圖4所示。
圖4 RCP012MN液位傳感器的工況劃分結(jié)果Fig.4 Working condition division results of RCP012MN liquid level sensor
圖4為各算法對(duì)傳感器RCP012MN采集的數(shù)據(jù)的工況劃分結(jié)果。該傳感器記錄了穩(wěn)壓器內(nèi)的液位變化,當(dāng)液位的處于不同的穩(wěn)定狀態(tài)時(shí),代表著液位所處的不同工況,液位的變化過(guò)程不屬于任何工況。從圖4(c)中可以看出,本文算法的劃分結(jié)果僅呈現(xiàn)了工況0、工況1、工況3,這3種工況對(duì)應(yīng)圖3中高斯混合模型結(jié)果中有聚類(lèi)中心的3個(gè)點(diǎn)簇(Cluster0、Cluster1、Cluster3),未找到聚類(lèi)中心的點(diǎn)簇中的點(diǎn)就被劃為過(guò)渡狀態(tài)(原始點(diǎn))。如圖4(a)、圖4(b)、圖4(d)所示K-means、TICC和DBSCAN的劃分結(jié)果均將過(guò)渡態(tài)(變化區(qū)間)做出了錯(cuò)誤劃分,同時(shí)在這3種方法的劃分結(jié)果中均出現(xiàn)工況穿插問(wèn)題。
從劃分結(jié)果來(lái)看,高斯混合模型劃分的工況個(gè)數(shù)為3,工況2這一類(lèi)劃分結(jié)果因?yàn)槠淠P晚憫?yīng)度低的原因而遭到剔除,因此在還原圖中并未出現(xiàn)Cluster2的分類(lèi)。從高斯混合模型的還原結(jié)果來(lái)看,不同工況的劃分邊界比較清晰,在每一類(lèi)工況區(qū)域中幾乎未出現(xiàn)明顯的工況穿插情況,在變化態(tài)階段以原始點(diǎn)的形式出現(xiàn),這是因?yàn)檫^(guò)渡段的點(diǎn)是不屬于任何工況,這也說(shuō)明劃分結(jié)果的合理性。同時(shí),由于在工況劃分過(guò)程中,對(duì)于工況變化的判斷是通過(guò)變化趨勢(shì)來(lái)判別的,當(dāng)變化趨勢(shì)持續(xù)出現(xiàn)時(shí)才會(huì)將這一段判斷為變化態(tài),因此會(huì)出現(xiàn)變化態(tài)邊界上的點(diǎn)被劃分到某個(gè)工況的情況。
通過(guò)人工判斷,屬于工況0中的數(shù)據(jù)點(diǎn)應(yīng)該為1 630 080個(gè)(2017-01-01T00:59:27—2017-01-21T11:12:53和2017-02-14T11:23:02—2017-03-10T22:19:23),工況1中的數(shù)據(jù)點(diǎn)應(yīng)為158 201個(gè)(2017-01-21T23:29:24—2017-02-05T12:13:00),工況3中的數(shù)據(jù)點(diǎn)應(yīng)為907 447個(gè)(2017-02-06T21:13:32—2017-02-14T09:19:21和2017-03-11T08:45:25—2017-03-31T23:59:54)。在通過(guò)人工方式去除各算法得出劃分結(jié)果中的錯(cuò)誤分類(lèi)點(diǎn)后,可知利用本文算法獲得的工況0中的數(shù)據(jù)點(diǎn)為1 618 540個(gè),工況1中的數(shù)據(jù)點(diǎn)為158 201個(gè),工況3中的數(shù)據(jù)點(diǎn)為885 380個(gè),三類(lèi)工況中的錯(cuò)分總數(shù)為33 607個(gè)。TICC算法的劃分結(jié)果為工況0中的數(shù)據(jù)點(diǎn)為1 603 661個(gè),工況1中的數(shù)據(jù)點(diǎn)為153 850個(gè),工況3中的數(shù)據(jù)點(diǎn)為782 568個(gè),三類(lèi)工況中的錯(cuò)分總數(shù)為155 649個(gè)。K-means算法的劃分結(jié)果為工況0中的數(shù)據(jù)點(diǎn)為1 417 213個(gè),工況1中的數(shù)據(jù)點(diǎn)為158 201個(gè),工況3中的數(shù)據(jù)點(diǎn)為519 800個(gè),三類(lèi)工況中的錯(cuò)分總數(shù)為700 514個(gè)。DBSCAN算法的劃分結(jié)果為工況0中的數(shù)據(jù)點(diǎn)為1 581 140個(gè),工況1中的數(shù)據(jù)點(diǎn)為149 000個(gè),工況3中的數(shù)據(jù)點(diǎn)為904 147個(gè),三類(lèi)工況中的錯(cuò)分總數(shù)為61 441個(gè)。在此工況劃分準(zhǔn)確率為劃分出的數(shù)據(jù)點(diǎn)數(shù)與該類(lèi)工況準(zhǔn)確點(diǎn)數(shù)的商。錯(cuò)誤率為錯(cuò)誤劃分個(gè)數(shù)與三類(lèi)工況的準(zhǔn)確數(shù)據(jù)點(diǎn)數(shù)總和的商。表2為各算法的劃分準(zhǔn)確率對(duì)比。本文算法對(duì)工況0、工況1、工況3的劃分準(zhǔn)確率分別達(dá)到99.29%,100%,97.57%,且錯(cuò)誤率僅為1.25%。其他3種算法中DBSCAN的效果最好,但是其在工況0和工況1的劃分準(zhǔn)確率上低于本文算法,且錯(cuò)誤率也更高。
表2 算法準(zhǔn)確率對(duì)比Table 2 Algorithm accuracy comparison
通過(guò)實(shí)驗(yàn)表明,K-means算法、TICC算法以及DBSCAN算法與本文算法相比,本文算法對(duì)三類(lèi)工況的劃分準(zhǔn)確率均高于其他三類(lèi)算法,且錯(cuò)誤率更低。K-means算法錯(cuò)誤率高的原因在于K-means在聚類(lèi)過(guò)程中只考慮了數(shù)據(jù)點(diǎn)的空間分布卻忽略了數(shù)據(jù)的時(shí)間順序問(wèn)題,因此造成了很多數(shù)據(jù)點(diǎn)被錯(cuò)誤歸類(lèi)。TICC算法錯(cuò)誤率較高的原因是該算法是基于滑動(dòng)窗口來(lái)做聚類(lèi),每一次滑動(dòng)均會(huì)在該窗口內(nèi)做一次聚類(lèi),從而出現(xiàn)了穿插結(jié)果的出現(xiàn)。這種穿插現(xiàn)象的出現(xiàn)對(duì)劃分精度產(chǎn)生了極大的影響。DBSCAN算法雖然在準(zhǔn)確率和錯(cuò)誤率上的表現(xiàn)均比較好,但在對(duì)過(guò)渡態(tài)數(shù)據(jù)的處理上,DBSCAN算法與K-means算法和TICC算法一樣錯(cuò)誤的將過(guò)渡段劃分為一類(lèi)工況,根據(jù)專家經(jīng)驗(yàn),過(guò)渡狀態(tài)是不屬于任何一類(lèi)工況的,因此這種劃分方式是不合理的。
提出了一種基于密度峰值聚類(lèi)的高斯混合模型核電工況劃分方法。該方法有效地解決了高維核電數(shù)據(jù)工況類(lèi)數(shù)難以確定的問(wèn)題,且劃分結(jié)果符合實(shí)際情況。將本文方法與K-means方法、TICC方法以及DBSCAN算法應(yīng)用于真實(shí)核電數(shù)據(jù)中,得出如下結(jié)論。
(1)本文方法的劃分準(zhǔn)確率更高,其三類(lèi)工況的劃分準(zhǔn)確率分別達(dá)到99.29%、100%、97.57%,且錯(cuò)誤率僅為1.25%,減少了類(lèi)與類(lèi)之間穿插現(xiàn)象的出現(xiàn)。
(2)在對(duì)過(guò)渡段的處理上,本文方法較K-means、TICC以及DBSCAN的劃分結(jié)果更具有合理性。