配電網絡重構的改進混合遺傳算法
本文提出一種基于改進的混合遺傳算法的配電網重構算法,在算法中使用可操作開關支路的整數編號的排列順序來表示染色體,并通過譯碼器的設計來映射染色體所對應的輻射狀網絡結構,避免了產生不可行解的情況,大大提高了算法的運算效率。同時在算法中引入了局部尋優算子,改善了算法的局部尋優性能。算例結果表明本算法是高效,可行的。
關健字 網絡重構;遺傳算法;局部尋優算法
A refined hybrid genetic algorithm for
distribution network reconfiguration
ZHENG Xin1,YANG Li-xi1,C.T.Tse2
(1.College of Electrical Engineering,ZhengZhou University,
ZhengZhou,450002,China;
2.The Hong Kong Polytechnic University,Electric Engineering
Department,China)
Abstract: This paper proposes an improved solution for distribution network reconfiguration based on a refined hybrid genetic algorithm. In the algorithm the the integer permutation encoding is adopted with each integer representing one controllable switch. A decoder is designed to decide the final network configuration corresponding every chromosome. A local search operator is combined with the genetic algorithm which improve the local optimal capability of the algorithm. The computational result on a tested system demonstrate the algorithm is feasible and efficient.
Key words: Network reconfiguration;Hybrid genetic algorithm;Local search algorithm;
1 引言
基于網損最小的配網重構問題是一個典型的非線性、多約束的整數組合優化問題,配電網的輻射狀結構和弱環網特性是其重構的前提條件。基于圖論,配電網的結構可以用圖G(N,B)描述,N表示電源節點和負荷節點的集合,B表示饋線段集合,配網的輻射狀結構就由圖的多個樹來組成,T={t1t2t3t4...tn,l1l2...lm},其中樹支t為供電支路,連支l為聯絡支路。這樣,配網重構問題,可以被描述為在圖中尋找一個使得總網損最小并滿足運行約束的樹狀結構。一個大型的配網包含眾多的節點和支路,因此圖中支撐樹的組合數目極大,若窮舉所有的樹,算法將非常的低效。
遺傳算法具有全局收斂性、無可微性要求、具有很好的魯棒性等優點,特別適合于求解組合優化問題。另外,與一般的隨機搜索方法進行的盲目無向搜索不同,遺傳算法進行的是高效有向的全局搜索,能夠逐步地逼近并收斂于全局最優解。因此,遺傳算法在配網重構中得到越來越廣泛的應用。
但是,遺傳算法對于求解配網重構這樣的非線性組合優化問題,還存在兩個重要的缺陷,一是父代的優質基因結構對于子代影響甚小,采用常規遺傳算法,收斂速度相當慢;二是配網重構是一個強約束的問題,對于電流、電壓等約束,可以用懲罰因子來進行約束,但對于出現環網和孤島的組合無法用一個合適的評價函數來進行評價。文獻[1]-[4]提出了不同編碼、雜交和變異算子設計方法雖然在一定程度上提高了算法的效率,但是這些基于二進制編碼方法的算法在產生下一代的時候都不可避免地出現大量的不可行解。在這些文獻中對于不可行解的處理方法分為兩種,一種是刪除,補充可行解進入新生代;另一種方法是修補,將不可行解的網絡結構通過打開開關解環,合上開關消除孤島,使不可行解變為可行解。這兩種方法雖然在理論上是可行的,但只適合于每一代出現很少量的不可行解的情況。在一個復雜、多環的配網中,這些算法在每一代中都將產生大量的不可行解,要耗費大量的時間來判斷解是否可行,而補充新的可行解與修補不可行解也是非常困難和耗時的,增加了算法的復雜度。同時由于進行大量的修補和補充新個體,子代不能保持與父代的親體相似性,父代中的優質基因結構在子代中遭到完全破壞,算法最終可能蛻變成盲目的隨機搜索,收斂速度慢,甚至出現不能收斂的現象,失去了遺傳算法的意義。
本文提出一種改進的混合遺傳算法,在常規的遺傳算法中加入局部尋優算子來改善算法的局部尋優性能,同時通過編碼器和譯碼器相結合的設計方法完全避免了出現不可行解的問題,進一步提高了遺傳算法的搜索效率,從而加快遺傳算法的收斂速度。
2 配網重構的數學模型
配網重構的目的就是在滿足運行約束的前提下,使系統的網損達到最小。因此配網重構的目標函數可以表示為:
其中:Ie是支路e的電流,Re是支路e的電阻,Ke表示支路的開關狀態,1表示支路開關處于閉合狀態,0表示支路開關處于斷開狀態;(2)式代表支路電流過載約束,Iemax表示支路電流的上限;(3)式代表節點電壓約束,Vimin、Vimax分別表示節點的電壓的上下限,(4)式代表輻射狀網絡且不出現孤島的拓撲約束。本文通過前推回代的潮流算法來求解配網網損,并用約束條件進行驗證。
3 遺傳算法在網絡重構中的改進
3. 1 編碼和譯碼策略
編碼設計就是如何用一個染色體來表示一個唯一的配電網網絡結構;本文將配電網中所有的可操作的開關支路進行整數編號,染色體是由所有這些支路號的隨意排列組成,染色體中不允許出現相同的支路號,染色體的長度為可操作開關支路的數目。如一個16節點的配電系統,16條支路從1到16進行編號,其中一個染色體就可以表示為:
[1 2 3 5 6 7 8 9 10 12 14 15 16 4 11 13]
對于遺傳算法而言,僅隨機產生不同順序的串,為了使串表示一個有效的網絡拓撲,這就需借助于譯碼器的實現。譯碼器的目標就是如何根據染色體的編碼來構造出一個唯一的支撐樹。
本文在譯碼器的設計中,采取避圈法生成樹的構造方法:圖開始時,只有節點沒有邊,樹支和連支的集合為空,按照染色體中支路號從左到右的排列順序,選擇支路號對應的一條邊來加入圖中;如果與圖中的邊不構成環,就作為樹支放入樹支集合中,否則作為連支放入連支集合中,重復這個過程,直到不能進行為止;這樣最后將形成樹的形式,樹支即為閉合支路,連支為打開的聯絡支路。可見在避圈法生成樹的過程中,在一個弱環中先加入的邊會成為樹支,而最后加入的邊由于會形成環,只能作為連支,所以加入邊的順序不同也就是染色體的不同產生的樹就有可能不同,同時通過這種方法每一個染色體必然只對應出唯一一個樹狀結構的配網。雖然不同的染色體對應的樹可能是一樣的,如在上面的樹如果表示為一個染色體,隨意改變中樹支的排列順序和隨意改變連支的排列順序根據避圈法生成的樹都是一樣的,但是我們可以在產生初始代時通過連續大范圍的交叉轉換來減少出現等價染色體的機率。在本文的算例中,通過特定的交叉和變異方法在每一代中只有很少的機率出現等價或相同的染色體。由于這種通過譯碼器構造支撐樹的方法,對應的很自然的就是可行解,所以就不需要再判斷網絡結構是否符合網絡拓撲約束的問題,省去了各種對不可行解的處理步驟,大大提高了解的質量和算法的運算效率,加快了解的收斂速度。
3.2 交叉算子設計
基于構造支撐樹的順序編碼,若采用簡單的一點或多點交叉策略,必然以極大的概率產生不可行的染色體,因此本文采用與部分匹配交叉比較類似的交叉方法,方法如下:
(1)隨機在串中選擇一個交配區域,如兩父串及交配區域選定為:
A=12|3456|789 B=98|7654|321
(2)將B的交配區域加到A的前面或后面,A的交配區域加到B前面或后面得到:
A′=7654|123456789 B′=3456|987654321
(3)在A′和B′中自交配區域后依次刪除與交配區相同的城市碼、得到最終的兩子串為:
A″=765412389 B″=345698721
與其它方法相比,這種方法在兩父類相同的情況下仍能產生一定程度的變異效果,這對維持群體內一定的多樣化特性有一定的作用,實驗中也顯示了較好的結果。
3.3 變異
為了維持群體內的多樣化,本文采用隨機連續多次對換的變異技術,使可行解在順序上有了較大的變化,以抑制交叉中有可能產生的同化作用。
所謂隨機對換變異,就是隨機選擇串中的兩點,交換其編碼。例如對于串A:
A=12|3456|789
如果隨機產生的交換點是2和7,則串A中的第2點和第7點將對換,對換后,串A變為:
A′=17|3456|289
由于經過一次對換后,A′仍然有可能與A表示為同一個網絡結構,所以本文采取連續多次的對換操作,來增強變異的效果。
3.4 更新
本文采用代間更新的方式,由代溝G控制每一代群體中個體被更新的百分比,在t代N個個體中有(1-G).N個適應度最高的個體被選擇完全復制到t+1代中去,即每代只產生N*G個新個體。代間更新的方式為遺傳算法利用優化過程中的歷史信息提供了條件,加快了遺傳算法的收斂過程,但當代溝過小時,可能會造成遺傳算法的過早收斂,G一般取0. 3~1,本文取0. 8。
評論