程 陳,陳堂賢,孫培勝,鐘嘉銳
(三峽大學(xué)電氣與新能源學(xué)院,湖北宜昌 443002)
光伏陣列是光伏電站的核心部件之一,也是整個(gè)光伏發(fā)電系統(tǒng)的發(fā)電源頭。但由于光伏陣列通常安裝在復(fù)雜多變的野外環(huán)境中,光伏陣列故障頻發(fā),這不僅會(huì)降低整個(gè)光伏發(fā)電系統(tǒng)的發(fā)電效率,還會(huì)對(duì)電網(wǎng)的穩(wěn)定性造成嚴(yán)重的影響,因此,研究光伏陣列的故障診斷技術(shù)尤為重要[1]。文獻(xiàn)[2]通過(guò)布谷鳥(niǎo)算法優(yōu)化反向傳播(BP)神經(jīng)網(wǎng)絡(luò)的閾值和權(quán)值,提高BP 神經(jīng)網(wǎng)絡(luò)對(duì)光伏陣列的故障診斷準(zhǔn)確率。文獻(xiàn)[3]通過(guò)粒子群優(yōu)化徑向基函數(shù)(RBF)神經(jīng)網(wǎng)絡(luò),有效地診斷光伏陣列故障類型,提高了故障診斷的準(zhǔn)確率。文獻(xiàn)[4]通過(guò)遺傳算法優(yōu)化支持向量機(jī)的相關(guān)參數(shù),對(duì)識(shí)別故障類型具有較高的準(zhǔn)確率。文獻(xiàn)[5]通過(guò)自適應(yīng)權(quán)重粒子群算法優(yōu)化BP 神經(jīng)網(wǎng)絡(luò),對(duì)光伏陣列故障進(jìn)行精準(zhǔn)識(shí)別。
光伏陣列故障問(wèn)題存在一定的復(fù)雜性,上述方法中多數(shù)采用智能算法對(duì)支持向量機(jī)和BP 神經(jīng)網(wǎng)絡(luò)進(jìn)行優(yōu)化,而B(niǎo)P神經(jīng)網(wǎng)絡(luò)自身存在學(xué)習(xí)過(guò)程收斂慢和魯棒性差等問(wèn)題,且支持向量機(jī)的參數(shù)對(duì)分類準(zhǔn)確率有很大的影響,因此兩種方法都具有一定的局限性。本文提出了一種灰狼算法優(yōu)化支持向量機(jī)的方法,對(duì)支持向量機(jī)的懲罰因子c和核函數(shù)參數(shù)γ 進(jìn)行尋優(yōu)計(jì)算,建立準(zhǔn)確率更高的光伏陣列故障診斷模型。
支持向量機(jī)(SVM)是一種比較新的基于統(tǒng)計(jì)學(xué)習(xí)理論的計(jì)算學(xué)習(xí)方法,它有豐厚的理論支持,作為解決分類問(wèn)題的有力工具而被廣泛使用。支持向量機(jī)通過(guò)找到一個(gè)最優(yōu)超平面來(lái)分離數(shù)據(jù)點(diǎn)并按其劃分類別,使不同類別之間的間隔達(dá)到最大,如圖1 所示,H 為分類面,H1與H2則是平行于H 的分類面,設(shè)H1與H2之間的間隔為margin,當(dāng)margin達(dá)到最大時(shí),二者之間的分類面則為最優(yōu)分類面[6]。
圖1 SVM超平面示意圖
在應(yīng)用過(guò)程中,該算法通過(guò)非線性映射函數(shù)將數(shù)據(jù)從低維空間投影到高維空間,從而將非線性生成問(wèn)題轉(zhuǎn)化為凹規(guī)劃問(wèn)題,然后對(duì)數(shù)據(jù)庫(kù)進(jìn)行分類。支持向量機(jī)的最優(yōu)分類函數(shù)[7]如式(1)所示:
式中:ai是拉格朗日乘數(shù),0<ai<c,c是懲罰因子;b是由訓(xùn)練樣本確定的閾值;K(xix)為核函數(shù)。
支持向量機(jī)常用的核函數(shù)有多項(xiàng)式核函數(shù)、sigmoid 核函數(shù)、線性核函數(shù)和高斯徑向核函數(shù)。由于高斯徑向核函數(shù)具有收斂速度快、非線性映射等優(yōu)點(diǎn),本文的光伏陣列故障診斷模型采用該函數(shù)作為分類器。高斯徑向核函數(shù)的表達(dá)式如式(2)所示:
式中:γ 是支持向量機(jī)的核函數(shù)參數(shù)。下文將通過(guò)灰狼算法對(duì)懲罰因子核函數(shù)參數(shù)γ 進(jìn)行尋優(yōu)。
灰狼算法是由Mirjalili 等在2014 年提出的一種智能優(yōu)化算法。該算法是受到了灰狼捕食獵物活動(dòng)的啟發(fā)而開(kāi)發(fā)的一種優(yōu)化搜索方法,并具備較強(qiáng)的收斂性能,參數(shù)少,易于實(shí)現(xiàn)等優(yōu)點(diǎn),距今為止,該優(yōu)化算法被廣泛地應(yīng)用在各科學(xué)研究領(lǐng)域。
灰狼算法中,灰狼位置更新公式為:
式中:t是當(dāng)前迭代次數(shù);E和A是系數(shù)向量;Xp(t)表示獵物的位置向量;X(t)表示灰狼的位置向量。
系數(shù)向量E和A的計(jì)算公式如式(4)所示:
式中:r1和r2是[0,1]的隨機(jī)向量;a是收斂因子。
在灰狼算法中,優(yōu)化的過(guò)程是通過(guò)每代種群中的α 狼、β狼、δ 狼對(duì)獵物進(jìn)行定位計(jì)算,不斷縮短自身與獵物的距離,來(lái)達(dá)到捕捉獵物的目的,其中,α 狼的適應(yīng)度最強(qiáng),其次是β狼,適應(yīng)度最小的是δ 狼。在狼群中,所有灰狼都必須聽(tīng)從α狼做出的決定,β 狼負(fù)責(zé)協(xié)助α 狼,δ 狼則聽(tīng)從于α 狼和β 狼,狼群的位置根據(jù)這三只狼當(dāng)前更新的位置不斷調(diào)整,直至找到最佳的獵物位置,獵物所在的位置則對(duì)應(yīng)著最優(yōu)適應(yīng)度值,三只狼的運(yùn)動(dòng)公式如式(5)~(7)所示:
式中:Dα、Dβ、Dδ分別是α 狼、β 狼和δ 狼的方向向量;X1、X2、X3則是用來(lái)決定下一代運(yùn)動(dòng)方向的方向向量。
在本模型中,選擇適應(yīng)度函數(shù)如式(8)所示:
式中:test_right和train_right分別為測(cè)試集和訓(xùn)練集的正確診斷數(shù)目;test_total和train_total分別為測(cè)試集和訓(xùn)練集的總數(shù)目。
在現(xiàn)有的支持向量機(jī)分類模型中,懲罰因子c和核函數(shù)參數(shù)γ 對(duì)模型的復(fù)雜度起著至關(guān)重要的作用,兩個(gè)重要參數(shù)的變化對(duì)分類模型的分類性能有著重要的影響。為了提高分類的準(zhǔn)確率,利用灰狼算法對(duì)懲罰因子c和核函數(shù)參數(shù)γ 進(jìn)行優(yōu)化,直至得出最優(yōu)的參數(shù)?;依撬惴▋?yōu)化SVM 的具體步驟如下:
(1)輸入光伏陣列樣本數(shù)據(jù)及其對(duì)應(yīng)的標(biāo)簽數(shù)據(jù),并設(shè)置訓(xùn)練集和測(cè)試集;
(2)設(shè)置灰狼算法的參數(shù),即種群數(shù)量、最大迭代次數(shù)、SVM 參數(shù)c和γ 的取值范圍;
(3)隨機(jī)生成狼群,每一只狼的位置都由對(duì)應(yīng)的(c,γ)組成;
(4)利用SVM 對(duì)訓(xùn)練集進(jìn)行訓(xùn)練,根據(jù)式(8)計(jì)算出每一頭狼所對(duì)應(yīng)的適應(yīng)度值;
(5)根據(jù)每一只狼的適應(yīng)度值大小進(jìn)行排序,α 狼適應(yīng)度值最大,β 狼次之,δ 狼則最??;
(6)根據(jù)式(3)~(8)對(duì)α 狼、β 狼以及δ 狼的適應(yīng)度值不斷進(jìn)行更新計(jì)算,并對(duì)狼群的等級(jí)進(jìn)行重新劃分;
(7)當(dāng)種群迭代次數(shù)達(dá)到最大迭代次數(shù)時(shí),輸出α 狼的位置所對(duì)應(yīng)的c和γ 參數(shù)的最優(yōu)解,否則跳轉(zhuǎn)至步驟6;
(8)利用最優(yōu)參數(shù)解建立模型,并對(duì)樣本進(jìn)行計(jì)算,輸出結(jié)果。
灰狼算法優(yōu)化SVM 分類模型的流程圖如圖2 所示。
圖2 灰狼算法優(yōu)化SVM流程圖
灰狼算法優(yōu)化支持向量機(jī)輸入變量的選擇不僅決定了灰狼算法優(yōu)化支持向量機(jī)模型的結(jié)構(gòu),而且對(duì)整個(gè)模型能否迅速、精準(zhǔn)地對(duì)故障類型進(jìn)行判斷有著重要的影響。因此,輸入變量必須能夠直接體現(xiàn)出光伏陣列故障時(shí)的特征信息,從而方便算法進(jìn)行分類。本文共設(shè)置5 種不同的光伏陣列工作狀態(tài),即正常、局部陰影、組件老化、組件開(kāi)路、組件短路。局部陰影故障通過(guò)減小部分光伏陣列的光照強(qiáng)度來(lái)模擬;老化故障通過(guò)在某條支路上增加5 Ω 電阻來(lái)模擬;開(kāi)路故障通過(guò)斷開(kāi)故障光伏陣列與其相鄰光伏陣列的導(dǎo)線來(lái)模擬;短路故障通過(guò)將故障光伏陣列的正負(fù)極短接來(lái)模擬[8]。使用Matlab/Simulink 仿真軟件搭建了6 行4 列的串并聯(lián)光伏陣列,如圖3 所示。
圖3 光伏陣列故障模擬示意圖
單個(gè)模塊的電氣參數(shù)相同,其參數(shù)數(shù)值為:最大功率點(diǎn)電壓是35 V,最大功率點(diǎn)電流是7.5 A,短路電流是8 A,開(kāi)路電壓是44 V,故障模擬過(guò)程中光伏陣列的光照強(qiáng)度設(shè)置為600~1 000 W/m2,溫度則設(shè)置為25~45 ℃。
通過(guò)仿真運(yùn)行,得到不同工作狀態(tài)下光伏陣列的I-U曲線和P-U曲線,如圖4~5 所示。
圖4 正常狀態(tài)與不同故障狀態(tài)下的I-U曲線圖
圖5 正常狀態(tài)與不同故障狀態(tài)下的P-U曲線圖
由圖4~5 可知,當(dāng)光伏陣列出現(xiàn)局部陰影的情況時(shí),光伏陣列的P-U曲線會(huì)出現(xiàn)多峰現(xiàn)象,I-U曲線則會(huì)出現(xiàn)多膝現(xiàn)象,并且光伏陣列的最大功率點(diǎn)電壓和最大功率點(diǎn)電流會(huì)明顯下降;當(dāng)光伏陣列出現(xiàn)組件老化的情況時(shí),光伏陣列的最大功率點(diǎn)電壓明顯下降;當(dāng)光伏陣列發(fā)生組件開(kāi)路的情況時(shí),光伏陣列的最大功率點(diǎn)電壓基本不變,但其短路電流會(huì)明顯減??;當(dāng)光伏陣列出現(xiàn)組件短路的情況時(shí),光伏陣列的短路電流基本不變,而開(kāi)路電壓和最大功率點(diǎn)電壓會(huì)明顯下降[9]。仿真實(shí)驗(yàn)過(guò)程中收集到的典型樣本數(shù)據(jù)如表1 所示。
表1 光伏陣列的仿真樣本
綜上所述,當(dāng)光伏陣列出現(xiàn)以上4 種故障中的任意一種故障時(shí),都會(huì)引起其開(kāi)路電壓、短路電流、最大功率點(diǎn)電壓和最大功率點(diǎn)電流中至少一種參數(shù)的明顯變化,因此本文選擇以上4 個(gè)參數(shù)作為灰狼算法優(yōu)化SVM 的輸入變量。
經(jīng)仿真得到共500 組數(shù)據(jù),然后將數(shù)據(jù)劃分為訓(xùn)練集和測(cè)試集。研究選定測(cè)試集數(shù)目為55 組,其中正常組(類別1)數(shù)據(jù)、局部陰影(類別2)數(shù)據(jù)、組件老化(類別3)數(shù)據(jù)、組件開(kāi)路(類別4)數(shù)據(jù)以及組件短路(類別5)數(shù)據(jù)各占11 組。剩下的數(shù)據(jù)作為訓(xùn)練集進(jìn)行訓(xùn)練。
使用未優(yōu)化的SVM 模型對(duì)測(cè)試集進(jìn)行準(zhǔn)確率測(cè)試,未優(yōu)化的SVM 模型分類結(jié)果如圖6 所示,經(jīng)診斷后該模型只能正確診斷樣本47 條,準(zhǔn)確率僅有85.5%。其中,有3 組正常樣本被分類到了組件短路類別,1 組局部陰影樣本和2 組組件短路樣本被分類到了正常類別,1 組組件老化樣本被分類到了局部陰影類別以及1 組組件開(kāi)路樣本被分類到了組件老化類別,因此未優(yōu)化的SVM 模型存在著一定的不足,對(duì)數(shù)據(jù)的分類效果一般,有待優(yōu)化。
圖6 未優(yōu)化SVM診斷結(jié)果圖
在未優(yōu)化SVM 模型的實(shí)驗(yàn)完成后,使用灰狼算法對(duì)支持向量機(jī)的懲罰因子c和核函數(shù)參數(shù)γ 進(jìn)行參數(shù)尋優(yōu)?;依撬惴ǖ脑O(shè)定參數(shù)為:種群數(shù)量為10,最大迭代次數(shù)為100,懲罰因子c的范圍為[0,500],核函數(shù)參數(shù)γ 的范圍為[0,500],在經(jīng)過(guò)100 次迭代計(jì)算后,適應(yīng)度值結(jié)果和分類結(jié)果如圖7~8 所示。由圖7 可知,灰狼算法在迭代到第40 代左右時(shí)收斂,最優(yōu)適應(yīng)度值為0.091 9,此時(shí)懲罰因子c為149.4,核函數(shù)參數(shù)γ為282.8。由圖8 可知,灰狼算法優(yōu)化SVM 模型對(duì)測(cè)試集的分類準(zhǔn)確率達(dá)到了98.2%,僅有一組數(shù)據(jù)分類錯(cuò)誤,即一組組件老化樣本被分類到了局部陰影樣本中。
圖7 灰狼算法適應(yīng)度曲線
圖8 灰狼算法優(yōu)化SVM診斷結(jié)果圖
就分類的準(zhǔn)確率而言,灰狼算法優(yōu)化SVM 在經(jīng)過(guò)參數(shù)尋優(yōu)后分類準(zhǔn)確率得到了較大提升,較未優(yōu)化SVM 的分類準(zhǔn)確率提高了12.7%?;依撬惴ǖ膬?yōu)化效果明顯,在總體的分類準(zhǔn)確率上要優(yōu)于普通的SVM 分類器。
通過(guò)使用相同的訓(xùn)練集和測(cè)試集,引入決策樹(shù)(tree)分類器和BP 神經(jīng)網(wǎng)絡(luò)分類器對(duì)測(cè)試集進(jìn)行分類,并進(jìn)行對(duì)比實(shí)驗(yàn)。SVM、灰狼算法優(yōu)化SVM、決策樹(shù)以及BP 神經(jīng)網(wǎng)絡(luò)的分類效果對(duì)比如表2 所示。
表2 不同算法分類效果對(duì)比
通過(guò)Matlab/Simulink 搭建光伏陣列模型模擬不同的故障,對(duì)不同故障狀態(tài)的I-U曲線和P-U特性曲線進(jìn)行分析,選取合理的故障特征量,進(jìn)行光伏陣列故障診斷。由于傳統(tǒng)SVM 對(duì)多分類問(wèn)題處理效果不理想,引入灰狼優(yōu)化算法與SVM 相結(jié)合,利用灰狼算法對(duì)懲罰因子和核函數(shù)參數(shù)進(jìn)行尋優(yōu),得到最優(yōu)的核函數(shù)參數(shù)和懲罰因子,建立準(zhǔn)確率更高的光伏陣列故障診斷模型。實(shí)驗(yàn)證明,在采用灰狼算法優(yōu)化SVM 模型后,局部陰影的故障辨識(shí)率為100%,組件老化的故障辨識(shí)率為90.9%,組件開(kāi)路以及組件短路的故障辨識(shí)率均為100%。