周愛國 ,余漢華 ,,何怡剛
(1.中國國能電力工程有限公司,上海200061;2.湖南大學,湖南 長沙410082)
在達爾文生物進化論的基礎上,學者相繼進行了遺傳算法、PSO算法、蟻群算法、魚群算法、果蠅算法等智能群體算法的研究[1-3],在神經網絡基礎上,學者提出了優于BP網絡和Hopfield網絡的Boltzmann機[4]。其中,由潘文超提出的果蠅算法通過嗅覺和視覺兩方面實現搜尋,加快了搜尋速度,提高了搜尋精度[5];Boltzmann機結合了兩種網絡結構和學習算法的優點。基于此,本文采用果蠅算法搜尋Boltzmann機結構,實現對發電機機端電流檢測研究。將此方法與傳統網絡濾波及濾波器濾波對比,更體現了本文方法的優越性。
果蠅算法(FOA)是繼遺傳算法、蟻群算法、粒子群算法等智能群體算法之后,由潘文超提出的一種全新的演化式算法。通過對果蠅搜尋食物的研究,分析出果蠅是通過嗅覺尋找食物的大概位置,再用視覺確定食物的準確位置的覓食規律,提出了果蠅優化算法。
果蠅群體同以往群體算法一樣,也是通過迭代搜尋得到最優值,果蠅群體演化式搜索算法流程如圖1所示。

圖1 算法流程
Boltzmann機網絡結構沒有明顯的層次,通過神經元的互聯實現網絡狀態按概率分布進行變化。神經元之間通過正向、逆向實現信息雙向傳遞,即 ωij=ωji、ωii=0,中間部分隱見神經元不受外部環境的約束。Boltzmann機的每個神經元都具有隨機的興奮和抑制狀態,其概率取決于神經元輸入,圖2表述了Boltzmann機網絡結構形式。
i神經元的數學模型為:


果蠅算法尋優Boltzmann機通過果蠅算法對網絡結構的權值和閾值進行優化,具體過程分為網絡結構的確定、果蠅算法的優化和網絡預測。算法流程如圖3所示。

圖3 果蠅算法尋優Boltzmann機網絡結構
通過對燃機發電機機端電流諧波檢測,與傳統網絡搜尋結果相比,驗證本文算法的優越性。通常,發電機機端短路都是采用低通濾波器實現Matlab的仿真,本文采用Simlink與Matlab語言的交互平臺,用Create Bubsystem實現代碼模塊化,模塊分別為傳統Boltzmann機網絡模塊和果蠅算法優化Boltzmann機網絡模塊。圖4為實驗仿真原理圖,原理還涉及圖5~圖7所示關于C23變換、C32變換、Cpq變換。

圖4 檢測電流原理圖
從圖8、圖9能明顯看出,果蠅算法搜索相比傳統智能搜索算法優化過程和迭代步驟都得到了簡化,說明從嗅覺和視覺兩方面搜尋的高效性。從圖10~圖12可以看出,在同樣的原始輸入波情況下,果蠅算法尋優后的基波效果明顯優于傳統濾波效果。
傳統網絡算法都是對合適的樣本集,尋求一個參數集使其能量函數最小,其缺陷是使網絡容易陷入局部極小問題。果蠅算法通過嗅覺、視覺兩方面的非線性尋優Boltzmann機結構并配合Boltzmann機的動態濾波優點,通過對燃機發電機機端諧波檢測,說明本文方法可以明顯改善諧波檢測效果,提高濾波性能。

圖5 三相/二相變換模塊C32

圖6 二相三相變換模塊C23

圖7 ip、iq運算模塊 Cpq

圖8 果蠅算法的優化過程

圖9 果蠅算法的搜尋迭代路徑

圖10 原始輸入波

圖11 果蠅算法尋優后的基波

圖12 傳統網絡結構濾波的基波
[1]KENNEDY J,EBERHART R C.Particle swarm optimization[C].Proceedings of IEEE International Conference on Neural Networks,1995:1942-1948.
[2]謝宏,何怡剛.離散Hopfied神經網絡在混燒控制系統故障診斷中的應用[J].湖南大學學報(自然科學版),2007,34(3):33-35.
[3]譚陽紅,何怡剛.模擬電路故障診斷的小波方法[J].電工技術學報,2005,20(8):89-93.
[4]陳潔,劉希玉,姚樹魁.用遺傳算法優化 Boltzmann機[J].計算機工程與應用,2011,47(7):65-69.
[5]潘文超.果蠅最佳化演算法[M].臺灣:滄海書局出版社,2011:10-134.