李俊,馮俊杰,武文吉,劉迎澍
(1. 國網山西省電力公司檢修分公司,太原 030032; 2. 天津大學 電氣自動化與信息工程學院,天津 300072)
電力變壓器是實現電能轉換的關鍵設備,處于電力系統核心環節。在變壓器發生故障時第一時間發現并確定故障類型對保證電力系統安全運行意義重大。現階段,主要用于變壓器故障診斷的方法是油中溶解氣體分析法(Dissolved Gas Analysis, DGA)[1-2]。三比值法[3]、羅格斯法[4]和改良三比值法等常規DGA方法因其在故障診斷中存在編碼缺失等問題而使用受限[2]。近年來,貝葉斯分類器[5-6]、人工神經網絡(Artificial Neural Network, ANN)[7-8]和支持向量機(Support Vector Machine, SVM)[9-10]等人工智能方法開始在變壓器故障診斷領域大量使用。貝葉斯分類器所需數據樣本較大,而ANN方法存在過擬合和易陷于局部最優的問題。SVM是一種新型機器學習算法,其以統計學習理論為基礎,具有較強的小樣本學習能力與較高的分類準確性,可以有效解決非線性和過擬合等常見問題[9]。
核函數參數和懲罰因子是影響SVM分類結果的關鍵參數,如何選取合適的核函數參數和懲罰因子是SVM應用領域的主要研究課題之一。現階段,遺傳算法(Genetic Algorithm, GA)、粒子群算法(Particle Swarm Optimization, PSO)、模擬退火算法(Simulated Annealing, SA)等多種智能算法在SVM核函數參數和懲罰因子尋優中已有廣泛應用。螢火蟲算法(Firefly Algorithm, FA)以其簡單的數學模型、較好的全局和局部尋優平衡能力、較快的收斂速度等優勢在許多優化問題中均表現出良好的性能[11]。文章將混沌優化理論和自適應變步長機制引入螢火蟲算法,提出一種改進螢火蟲算法(Improved Firefly Algorithm, IFA)用以對SVM參數進行尋優,利用優化得到的SVM模型進行變壓器DGA故障診斷,并將其診斷結果與PSO-SVM模型、FA-SVM模型結果進行比較,結果表明IFA較其他兩種算法收斂速度快,尋優能力強,故障診斷準確率高。
螢火蟲算法由Xin-She Yang于2009年提出[12],該算法以螢火蟲發光而相互吸引的生物群體行為為理論基礎,同時遵循以下三條規則:
(1)與真實的螢火蟲不同,算法中任意螢火蟲之間都可以相互吸引;
(2)螢火蟲所發出的熒光亮度與螢火蟲的適應度函數值有關,適應度值大的螢火蟲發出的光較強,適應度值小的螢火蟲發出的光較弱;
(3)螢火蟲所發出的熒光亮度與螢火蟲之間的距離決定了螢火蟲之間吸引度的大小。螢火蟲熒光亮度越高,螢火蟲之間距離越近,相互之間的吸引度就越大,反之亦然。
基于上述規則,定義螢火蟲之間的相對亮度為:
(1)
式中I0為螢火蟲的絕對亮度,是由螢火蟲的適應度值決定的。螢火蟲的部分熒光在傳播過程中被空氣所吸收的現象用光強γ吸收系數來表示,為一常數。任意兩只螢火蟲之間的距離dij可通過式(2)計算得出:
(2)
式中D為搜索空間維度;xi,k和xj,k分別為螢火蟲i和j在搜索空間中坐標位置的第k個分量。
假設螢火蟲xj的熒光亮度比xi的熒光亮度高,那么xj將吸引xi向其方向運動。xj對xi的吸引度可通過式(3)來計算:
(3)
式中β0為rij=0時xj對xi吸引度的最大值。螢火蟲xi向xj靠近時將按照式(4)改變其坐標位置:
xi=xi+β·(xj-xi)+α·(rand-1/2)
(4)
式中步長因子α是一常數,rand是一隨機數,二者的取值范圍均為[0,1]。
通常情況下,螢火蟲的初始位置均通過隨機分配的方式來完成,但這種方法并不能保證螢火蟲位置的相對分散。為了解決上述問題,文章使用混沌優化理論來完成螢火蟲位置的初始化。混沌序列的隨機性、遍歷性和非周期性等特性能夠使螢火蟲個體的初始位置在搜索空間中呈現均勻分布,改進螢火蟲算法正是在混沌序列這些特性的基礎上完成對解的尋找,進而保證了解的最優性。
文中采用立方映射來完成螢火蟲初始位置的混沌優化,立方映射通過式(5)完成:
(5)
式中yi,k為螢火蟲i在混沌序列D維空間中的第k個分量,yi,k∈[0,1]。
通過式(6)可求得與螢火蟲個體初始位置相對應的搜索空間中的解:
xi,k=L+(1+yi,k)·(U-L)/2
(6)
式中U和L分別為搜索空間的上限和下限。
為了保證算法在擁有較強全局尋優能力的同時兼顧局部尋優性能,需對螢火蟲位置更新時的步長因子α進行動態調整。當α取值較大時,螢火蟲收斂速度較快,使其在搜索前期盡可能避開局部最優點,從而更好地完成全局尋優任務,但較大的α在算法搜索后期容易使螢火蟲位置更新時跳過最優值,移動到最優值的另一側,即在最優值附近震蕩,若這種情況多次出現,算法的準確度和收斂速度將難以保證。如果α取值較小,算法的收斂效果雖然較好,但收斂速度有所降低,全局尋優能力變差,所得解極有可能為局部最優。基于上述分析,將自適應變步長機制應用于步長因子α的調整中,從而在迭代過程中根據搜索進度完成對α取值的動態更新。
α按照式(7)進行動態更新:
(7)
式中t為當前迭代次數;U和L的取值同式(6)。
設線性可分樣本(xi,yi)(i=1,2,…,n;xi∈Rd,yi∈{-1,+1}),n為樣本數量,d為樣本空間維度,yi為樣本所屬類別。
d維空間中的線性判別函數為:
g(x)=ω·x+b
(8)
由式(8)得分類超平面方程為:
ω·x+b=0
(9)

(10)
由于不能保證所有樣本均線性可分,因此在目標函數中增加了懲罰項來間接增大目標函數值。其中,ξi為松弛變量,對應于線性非可分樣本,C(C>0)為懲罰因子。式(10)所示優化問題通過拉格朗日乘子法求解之后的對偶形式可用式(11)表示:
(11)
前述理論均針對線性樣本,但大多數樣本呈現非線性,因此需借助核函數完成最優分類超平面的求解。徑向基核函數的表達形式如式(12)所示:
(12)
在此基礎上可實現對非線性樣本所屬類別的判定,判定公式為:
(13)
采用IFA對參數C和σ進行優化,步驟如下:
(1)初始化算法參數,包括螢火蟲位置上下限U、L,螢火蟲種群規模N,步長因子α的初始值,光強吸收系數γ,最大吸引度β0,最大迭代次數T;
(2)利用式(5)、式(6)對N只螢火蟲初始位置進行隨機分配,每只螢火蟲的位置坐標包含兩個分量,分別為C和σ,由C和σ確定每只螢火蟲的適應度值,此值即為螢火蟲個體的絕對熒光亮度I0。文章選取SVM的分類準確率作為螢火蟲個體的適應度值。;
(3)根據式(1)和式(3)分別計算螢火蟲個體的相對熒光亮度I和吸引度β;
(4)按照式(7)修改步長因子α,并將其帶入式(4)確定螢火蟲坐標位置,再次計算相對熒光亮度;
(5)將當前迭代次數t加1,并與T進行比較,未達到T返回步驟(3)繼續搜索,否則跳轉至步驟(6);
(6)算法結束,根據最優螢火蟲位置對應的C、α對SVM進行參數設置。
為真實反映變壓器運行狀態,根據《變壓器油中溶解氣體分析和判斷導則》[13],將CH4、C2H6、C2H4、C2H2和H2作為變壓器故障診斷訓練樣本和測試樣本的特征向量。不同氣體在變壓器油中含量的量級有所不同,使用前還需歸一化處理數據樣本。
選擇正常、中低溫過熱、高溫過熱、低能放電和高能放電作為變壓器的運行狀態,其編碼如表1所示,此編碼即為故障診斷模型的輸出。

表1 變壓器狀態及其編碼
SVM為二分類算法,為完成變壓器的故障診斷,需構造多分類SVM。相對于其他方法,二叉樹法訓練時間短,準確率高,所需二分類器少。采用二叉樹法構造的多分類SVM故障診斷模型如圖1所示。

圖1 多分類SVM故障診斷模型
變壓器故障診斷功能可通過以下步驟實現:
(1)讀取訓練和測試樣本,對其進行歸一化處理;
(2)以SVM的分類準確率為螢火蟲個體的適應度值,調用IFA對各二分類SVM進行參數尋優;
(3)將步驟(2)求得的各(C,σ)組合帶入各二分類SVM,在此基礎上完成訓練過程,得到式(13)所示的各二分類SVM的分類決策函數;
(4)根據圖1所示的多分類SVM故障診斷模型,對測試樣本進行分類,確定其故障類型。
從相關文獻[14-15]中收集了多組具有明確結論的變壓器DGA樣本,去除相似、異常樣本后,選取64組樣本作為故障診斷樣本,其中訓練樣本40組,測試樣本24組。各類樣本統計結果如表2所示,各二分類SVM訓練樣本統計結果如表3所示。

表2 各類樣本統計表

表3 各二分類SVM訓練樣本統計表
為了驗證IFA具有較好的尋優能力,分別采用PSO、FA、IFA三種算法對SVM參數進行優化。3種算法的種群個體數目N均設為20,最大迭代次數T設為200,C和σ的取值上限為100,下限為0.01。PSO學習因子c1、c2設為1.5,慣性權重ω設為0.8,粒子的最大、最小速度分別設為0.5和-0.5。FA、IFA光強吸收系數γ和最大吸引度β0均為1,步長因子α為0.5,其中IFA步長因子將從0.5開始隨迭代次數的增加而減小。各算法針對SVM4的參數尋優過程如圖2所示。
從圖2尋優結果來看,無論是PSO還是FA,其最終的適應度值均小于IFA,這說明IFA的參數尋優能力較PSO、FA更強。

圖2 各算法參數尋優過程
另一方面,PSO的平均適應度值無法像FA、IFA那樣達到最佳適應度值,這得益于FA、IFA沒有使用PSO全局最優位置、個體最優位置等記憶功能來控制計算的方式,同時螢火蟲的移動沒有使用速度這一概念,避免了由于速度超過閾值引起的問題[16]。
IFA在FA基礎上有了較大改進,適應度值達到穩定所需迭代次數明顯減少,比FA的收斂速度更快,在同一組訓練和測試樣本下的適應度值更高,說明IFA的螢火蟲初始位置混沌優化和自適應變步長機制較好地平衡了收斂速度和收斂精度之間的關系,使收斂速度和收斂精度均能達到最優。
分別使用PSO、FA、IFA優化得到的參數建立基于二叉樹的多分類SVM故障診斷模型,另外選取30組測試樣本用于變壓器的故障診斷,得到如表4所示的診斷結果。

表4 變壓器故障診斷結果
IFA-SVM在故障診斷中存在3處錯誤,故障診斷的準確率為90%,而PSO-SVM和FA-SVM的故障診斷準確率分別為80%、83.3%。這說明IFA-SVM的分類性能明顯優于PSO-SVM和FA-SVM,也從側面反映出IFA-SVM具有較強的全局尋優能力。
文章提出一種改進螢火蟲算法,并將其應用于SVM參數尋優,搭建基于IFA-SVM的變壓器故障診斷模型,完成對模型有效性的驗證,并得出以下結論:
(1)將螢火蟲初始位置混沌優化和自適應變步長機制引入FA能使算法更容易跳出局部最優點,更好地完成全局尋優任務,同時保證收斂速度的快速性;
(2)IFA未使用記憶功能來控制計算的方式和基于螢火蟲間距離確定螢火蟲間光強和吸引度的機制使其較PSO尋優能力更強,穩定性更好,收斂速度更快;
(3)提出的IFA-SVM可以有效地對變壓器故障進行診斷,診斷結果要優于PSO-SVM和FA-SVM的診斷結果。