鄧 科,李 挺,蔡 昂,金 石,王 匯
(1.國網湖北省電力公司檢修公司,武漢 430050;2.國網湖北省電力公司,武漢 430077)
伴隨著電力產業的不斷發展,電網系統數據量大幅增加,數據的沉積和堆疊對現有電網數據負載均衡系統提出了更高的要求[1]。Hopfield神經網絡作為一種遞歸神經網絡,能夠實現對局部的極小收斂,可以應用于電力系統數據的負載均衡,實現電力網絡的更新和穩定[2]。在目前的變電站電力自動化系統中,服務器均為類Unix系統[3~6],服務器設備通過網絡交換機進行數據交換,并且通過圖形網關機管理網絡中所有模塊的服務器[7,8]。本文提出一種基于Hopfield神經網絡的變電站網絡負載分配算法,用于變電站的網絡服務器當中,同時采集服務器的硬件和軟件信息[9,10],提出一種基于快速傅立葉變換、多元線性回歸和學習算法的監測算法,維持電力網絡的穩定。
Hopfield神經網絡是典型的循環神經網絡,實現了所有環節的輸出輸入反饋,單個神經元與其他神經元實現完全的相互連接。可以利用Hopfield能量函數分析來顯示網絡的穩定性。
將神經網絡中的Nc作為Hopfield類型的反饋重復網絡,Hopfield神經網絡使用客戶端的異步狀態變化。利用C1,C2,…,Cn作為客戶機的狀態和,作為通信鏈路的連接強度。網絡的穩定狀態為:


圖1 Hop field算法變換示意圖
在將Hopfield能量函數與Nc的每個輸出狀態相關聯時,在Nc的任何狀態處的客戶機的能量可以被表示為:

網絡的突觸動力學將修改連接強度以反映網絡中的變化,如下所示:

由于權重變化和其他節點的狀態,任何節點i的新狀態可以表示為:

考慮由于節點k的更新,在某個瞬間的Nc中狀態的變化。在改變和重量改變之前和之后的能量表達可以寫為:

所以有:


整個網絡中的節點將按照上面討論的策略更新它們的狀態。在節點的狀態發生變化之前,節點的更新過程將繼續進行,即:

Hopfield能量函數將用于分析隨機選擇的、狀態改變的客戶機及服務器。變電站數據包含:電壓V、電流I、功率P(包括有功功率、無功功率),功率因數t,電能計量讀數O,此外還包含各類設備的運行參數, 如變壓器的溫度、油位等,氣體絕緣設備的壓力值(密度), 避雷器泄露電流i、動作次數n,斷路器的跳閘報告、測距報告、動作次數等等數據。
服務器與每個客戶端連接,而所有客戶端在完全連接模式下相互連接。客戶端之間的連接優勢是對稱的,而客戶端和服務器之間的連接是不對稱的。將客戶網絡解釋為全連通Hopfield神經網絡。本設計中,可以將電力設備N個客戶端和一個服務器組成的客戶端服務器組成一個網絡拓撲結構。節點總數為N+1,網絡中的節點完全連通。客戶之間的通信可以看作是整個網絡的一個子網絡,即:NC?N。節點wi和wj的通信鏈路或連接定義為:。f為系統的傳遞函數;Ot為系統的輸出。
變電站數據交換較為龐大,涉及到SCADA、WEB、網絡交換機、維護模塊、通信站、路由器以及調度站等模塊[11]。每一個模塊涉及的數據量都很大、數據類型眾多、信息交換頻率高,而且還存在著數據傳輸的同步和異步現象[12]。
本設計中,將變電站數據負載均衡系統設計為分布式數據交換系統,如圖2所示為服務器與客戶端之間的拓撲關系圖。其中維護、通信站、路由器、調度站等均為電力網絡負載,而服務器與各負載之間是分布式數據傳輸。

圖2 服務器S和客戶端C之間的全連接拓撲
客戶端采集的數據為變電站實際運行中涉及到的各類數據(電壓V、電力I、功率P等數據),各類數據經過拓撲處理后形成客戶端負載。本文設計的神經網絡中,F1可如下式表示:

所以,第k個客戶端的狀態更新規則如下:


可以看出,第k個客戶端狀態變化時選用任意可能和實例,都得出F1<0。
網絡的大小并不影響網絡的穩定性和最小能量狀態,因為在網絡的不同大小下,得到了相同的最小能態[13]。系統的最小能態近似于客戶端網絡的最小能態。一旦獲得了客戶網絡的穩定性值,由于服務器的功能所引起的擾動是可調的,網絡獲得了穩定的狀態,但是平衡區域保持不變[14,15]。隨著網絡規模的增大,各種網絡大小的回歸線也得到了相應的穩定性。
服務器S的狀態更新規則:



可以看出F2并不總是小于零,但是服務器S在更新時候,F2并不存在大于0的情況的。
F3和F2基本相同,就是服務器的更新順序有點小變化。

F3與F2的條件是相同的,所以服務器S在更新時候,F3并不存在大于0的情況的。所以,服務器狀態數據的更新是穩定的。
自學習負載分配,標記為F4:

服務器S狀態和任何客戶端k的更新規則可視為:

可以看出當Ck(t)=Ck(t+1)時,F4<0。

可以看出當Ck(t)Ck(t+1)>1時,F4<0。
從ΔE公式中可知,對于F1、F2、F3、F4、F5的值,能量的變化小于等于零。因此可以從ΔE公式中監測ΔE<0。那么,F1到F5的值大于0,這最壞情況的ΔE可以表示為:

因此,在這種狀態變化的規則中,對于能量情況都有ΔE<0。且當選擇客戶機或服務器進行修改時,能量總是減少。由于客戶端或服務器的擾動,網絡均衡狀態下的最終最優連接強度反映了客戶端與服務器端之間負載的最優分布。因此,網絡將節點之間的負載均衡為穩定。這意味著網絡中最優負荷分布可以對不同節點的噪聲和畸變具有容忍度。
確定了Hopfield神經網絡的反饋方式,只要根據反饋獲得的最新數據,對訓練數據集更新之后,在進行自學習的負載分配算法,并且負載分配系統對客戶端狀態更新和服務器狀態更新進行集成。為了使得電網系統穩定的運作,監測系統時刻控制電網客戶端與服務器之間的能量差異值應當最小,理想為小于0,即ΔE<0。那么則需要F1,F2,F3,F4,F5都小于0。對異步網絡數控狀態是變化的,對于整個網絡節點N將更新他們的狀態,一個是服務器,另一個是各類電力負載節點,能量的變化則是:

本實驗的測試環境為電力系統常用的Unix操作系統,數據使用MATLAB軟件進行處理。為了確定客戶端服務器網絡的最優負荷分布,并建立網絡的穩定性判據。實驗中確定了在節點中對攝動的托架極限。整個網絡的穩定性分析分兩階段進行。在第一階段,建立了客戶網絡的穩定性,并在引入服務器后的第二階段對整個網絡的穩定性進行了研究。神經網絡架構隨著客戶機節點的數量而變化。
客戶端和服務器節點表示為具有雙相狀態輸出的神經網絡結構的處理單元。神經網絡中的連接強度被隨機賦值,并保持每個單元的閾值為零。節點被初始化為-1或1。采用Hebbian學習方法進行連接強度修正。在隨機生成的狀態下,每個網絡都進行了5次試驗。對每個試驗的能量最小值進行了檢驗,并使用結果來確定網絡的最終狀態。
由服務器S和4個客戶機組成的客戶端服務器網絡,即C1、C2、C3、C4,所有客戶機都通過通信鏈接連接到系統。如果四個神經元輸入場與第五個神經元相連,則由四維空間中的向量輸入變換或映射到五維空間中第五個神經元的信號向量。
確定了該網絡工作的穩定性。最后確定了最小能態客戶網絡的最終連接強度。這些連接強度反映了客戶網絡中的負載分布,以保持網絡處于平衡狀態。在這個階段,服務器被激活,由于這個原因,整個網絡變得不穩定。
本實驗測試了網絡對擾動的穩定性和公差。通過使用Hopfield能量函數,成功地獲得了網絡的最小能量狀態。分析中使用的4種不同的網絡客戶端服務器組成,分別有4-1、5-1、8-1和12-1。每個測試網絡中客戶端網絡的平均能量為零。客戶端和客戶端網絡之間的方差、協方差和相關性已經計算出來,如表1所示。
可利用Hebbian規則對網絡的連接強度進行改進,從而將系統導向穩定狀態。在每個網絡上進行測試(4-1,5-1,8-1和12-1個客戶機-服務器配置),以獲得與不同輸入探針對應的能量,其中Hopfield神經網絡表現了網絡穩定性,如圖3服務器-客戶端負載數據關聯圖所示。

圖3 服務器-客戶端負載數據關聯圖
該算法的編碼如圖4所示已在MATLAB中完成。已經測試了幾組網絡示例來檢查程序的效率。這些能量的平均值和標準差計算如圖5所示。

圖4 UNIX環境下的部分宏定義
如圖6所示,通過800組數據的測試,不難看出,訓練200次之后的網絡負載平衡會有很大的干擾和不確定性。隨著測試的進行,數據集的增加,訓練800次之后,網絡負載平衡度得到很大的提高,系統能夠準確的分配出過多的負載,并且得到非常好的收斂性和平衡。

表1 網絡負載數據

圖5 網絡負載分析圖

圖6 訓練200次和800次之后的網絡負載平衡圖
本算法利用神經網絡的反向傳播對客戶端-服務器網絡中的負載分布進行了研究,增加了網絡分配的合理性,保證服務器的安全,但是也存在一些問題:
1)在狀態不斷的更新下,數據集會越來越大,數據的處理能力會逐步下降,數據更新的實時性就降低;
2)本算法注重討論了對于服務器安全性能的保障。然而實際系統中還存在系統的持續性能等問題。
后續解決第一個問題可以從Hopfield算法函數構建中進一步優化,優化的方向在于函數處理速度與大型數據處理穩定性之間的協調。解決第二問題需依賴算法函數采樣擴展與算法函數的進一步穩定。
Hopfield能量函數分析已經在人工神經網絡問題上得到了廣泛的應用。只要給定能量函數或問題的目標函數,并給出相關變量和約束條件,就可以利用識別與函數中的各類常數項系數相對應的權重建立反饋網絡。本文研究的變電站有一套專門的電力管理系統運行在雙網絡架構設計的局域網上,將變電站電力管理系統的服務器和客戶端網絡設計為Hopfield型全連接網絡,則可以用Hopfield能量函數分析來定義網絡中的負載分布,并實現對變電站網絡負載的數據均衡。最終最優值也反映了整個網絡中對應的負載分布,以維持穩定狀態景觀中的網絡,且負載分布上,網絡可以容忍小的擾動,并且可以擴展到多個服務器和多個客戶端。