配電網(wǎng)絡(luò)重構(gòu)的改進(jìn)混合遺傳算法
本文提出一種基于改進(jìn)的混合遺傳算法的配電網(wǎng)重構(gòu)算法,在算法中使用可操作開關(guān)支路的整數(shù)編號(hào)的排列順序來表示染色體,并通過譯碼器的設(shè)計(jì)來映射染色體所對(duì)應(yīng)的輻射狀網(wǎng)絡(luò)結(jié)構(gòu),避免了產(chǎn)生不可行解的情況,大大提高了算法的運(yùn)算效率。同時(shí)在算法中引入了局部尋優(yōu)算子,改善了算法的局部尋優(yōu)性能。算例結(jié)果表明本算法是高效,可行的。
關(guān)健字 網(wǎng)絡(luò)重構(gòu);遺傳算法;局部尋優(yōu)算法
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 引言
基于網(wǎng)損最小的配網(wǎng)重構(gòu)問題是一個(gè)典型的非線性、多約束的整數(shù)組合優(yōu)化問題,配電網(wǎng)的輻射狀結(jié)構(gòu)和弱環(huán)網(wǎng)特性是其重構(gòu)的前提條件?;趫D論,配電網(wǎng)的結(jié)構(gòu)可以用圖G(N,B)描述,N表示電源節(jié)點(diǎn)和負(fù)荷節(jié)點(diǎn)的集合,B表示饋線段集合,配網(wǎng)的輻射狀結(jié)構(gòu)就由圖的多個(gè)樹來組成,T={t1t2t3t4...tn,l1l2...lm},其中樹支t為供電支路,連支l為聯(lián)絡(luò)支路。這樣,配網(wǎng)重構(gòu)問題,可以被描述為在圖中尋找一個(gè)使得總網(wǎng)損最小并滿足運(yùn)行約束的樹狀結(jié)構(gòu)。一個(gè)大型的配網(wǎng)包含眾多的節(jié)點(diǎn)和支路,因此圖中支撐樹的組合數(shù)目極大,若窮舉所有的樹,算法將非常的低效。
遺傳算法具有全局收斂性、無可微性要求、具有很好的魯棒性等優(yōu)點(diǎn),特別適合于求解組合優(yōu)化問題。另外,與一般的隨機(jī)搜索方法進(jìn)行的盲目無向搜索不同,遺傳算法進(jìn)行的是高效有向的全局搜索,能夠逐步地逼近并收斂于全局最優(yōu)解。因此,遺傳算法在配網(wǎng)重構(gòu)中得到越來越廣泛的應(yīng)用。
但是,遺傳算法對(duì)于求解配網(wǎng)重構(gòu)這樣的非線性組合優(yōu)化問題,還存在兩個(gè)重要的缺陷,一是父代的優(yōu)質(zhì)基因結(jié)構(gòu)對(duì)于子代影響甚小,采用常規(guī)遺傳算法,收斂速度相當(dāng)慢;二是配網(wǎng)重構(gòu)是一個(gè)強(qiáng)約束的問題,對(duì)于電流、電壓等約束,可以用懲罰因子來進(jìn)行約束,但對(duì)于出現(xiàn)環(huán)網(wǎng)和孤島的組合無法用一個(gè)合適的評(píng)價(jià)函數(shù)來進(jìn)行評(píng)價(jià)。文獻(xiàn)[1]-[4]提出了不同編碼、雜交和變異算子設(shè)計(jì)方法雖然在一定程度上提高了算法的效率,但是這些基于二進(jìn)制編碼方法的算法在產(chǎn)生下一代的時(shí)候都不可避免地出現(xiàn)大量的不可行解。在這些文獻(xiàn)中對(duì)于不可行解的處理方法分為兩種,一種是刪除,補(bǔ)充可行解進(jìn)入新生代;另一種方法是修補(bǔ),將不可行解的網(wǎng)絡(luò)結(jié)構(gòu)通過打開開關(guān)解環(huán),合上開關(guān)消除孤島,使不可行解變?yōu)榭尚薪狻_@兩種方法雖然在理論上是可行的,但只適合于每一代出現(xiàn)很少量的不可行解的情況。在一個(gè)復(fù)雜、多環(huán)的配網(wǎng)中,這些算法在每一代中都將產(chǎn)生大量的不可行解,要耗費(fèi)大量的時(shí)間來判斷解是否可行,而補(bǔ)充新的可行解與修補(bǔ)不可行解也是非常困難和耗時(shí)的,增加了算法的復(fù)雜度。同時(shí)由于進(jìn)行大量的修補(bǔ)和補(bǔ)充新個(gè)體,子代不能保持與父代的親體相似性,父代中的優(yōu)質(zhì)基因結(jié)構(gòu)在子代中遭到完全破壞,算法最終可能蛻變成盲目的隨機(jī)搜索,收斂速度慢,甚至出現(xiàn)不能收斂的現(xiàn)象,失去了遺傳算法的意義。
本文提出一種改進(jìn)的混合遺傳算法,在常規(guī)的遺傳算法中加入局部尋優(yōu)算子來改善算法的局部尋優(yōu)性能,同時(shí)通過編碼器和譯碼器相結(jié)合的設(shè)計(jì)方法完全避免了出現(xiàn)不可行解的問題,進(jìn)一步提高了遺傳算法的搜索效率,從而加快遺傳算法的收斂速度。
2 配網(wǎng)重構(gòu)的數(shù)學(xué)模型
配網(wǎng)重構(gòu)的目的就是在滿足運(yùn)行約束的前提下,使系統(tǒng)的網(wǎng)損達(dá)到最小。因此配網(wǎng)重構(gòu)的目標(biāo)函數(shù)可以表示為:
其中:Ie是支路e的電流,Re是支路e的電阻,Ke表示支路的開關(guān)狀態(tài),1表示支路開關(guān)處于閉合狀態(tài),0表示支路開關(guān)處于斷開狀態(tài);(2)式代表支路電流過載約束,Iemax表示支路電流的上限;(3)式代表節(jié)點(diǎn)電壓約束,Vimin、Vimax分別表示節(jié)點(diǎn)的電壓的上下限,(4)式代表輻射狀網(wǎng)絡(luò)且不出現(xiàn)孤島的拓?fù)浼s束。本文通過前推回代的潮流算法來求解配網(wǎng)網(wǎng)損,并用約束條件進(jìn)行驗(yàn)證。
3 遺傳算法在網(wǎng)絡(luò)重構(gòu)中的改進(jìn)
3. 1 編碼和譯碼策略
編碼設(shè)計(jì)就是如何用一個(gè)染色體來表示一個(gè)唯一的配電網(wǎng)網(wǎng)絡(luò)結(jié)構(gòu);本文將配電網(wǎng)中所有的可操作的開關(guān)支路進(jìn)行整數(shù)編號(hào),染色體是由所有這些支路號(hào)的隨意排列組成,染色體中不允許出現(xiàn)相同的支路號(hào),染色體的長(zhǎng)度為可操作開關(guān)支路的數(shù)目。如一個(gè)16節(jié)點(diǎn)的配電系統(tǒng),16條支路從1到16進(jìn)行編號(hào),其中一個(gè)染色體就可以表示為:
[1 2 3 5 6 7 8 9 10 12 14 15 16 4 11 13]
對(duì)于遺傳算法而言,僅隨機(jī)產(chǎn)生不同順序的串,為了使串表示一個(gè)有效的網(wǎng)絡(luò)拓?fù)?,這就需借助于譯碼器的實(shí)現(xiàn)。譯碼器的目標(biāo)就是如何根據(jù)染色體的編碼來構(gòu)造出一個(gè)唯一的支撐樹。
本文在譯碼器的設(shè)計(jì)中,采取避圈法生成樹的構(gòu)造方法:圖開始時(shí),只有節(jié)點(diǎn)沒有邊,樹支和連支的集合為空,按照染色體中支路號(hào)從左到右的排列順序,選擇支路號(hào)對(duì)應(yīng)的一條邊來加入圖中;如果與圖中的邊不構(gòu)成環(huán),就作為樹支放入樹支集合中,否則作為連支放入連支集合中,重復(fù)這個(gè)過程,直到不能進(jìn)行為止;這樣最后將形成樹的形式,樹支即為閉合支路,連支為打開的聯(lián)絡(luò)支路。可見在避圈法生成樹的過程中,在一個(gè)弱環(huán)中先加入的邊會(huì)成為樹支,而最后加入的邊由于會(huì)形成環(huán),只能作為連支,所以加入邊的順序不同也就是染色體的不同產(chǎn)生的樹就有可能不同,同時(shí)通過這種方法每一個(gè)染色體必然只對(duì)應(yīng)出唯一一個(gè)樹狀結(jié)構(gòu)的配網(wǎng)。雖然不同的染色體對(duì)應(yīng)的樹可能是一樣的,如在上面的樹如果表示為一個(gè)染色體,隨意改變中樹支的排列順序和隨意改變連支的排列順序根據(jù)避圈法生成的樹都是一樣的,但是我們可以在產(chǎn)生初始代時(shí)通過連續(xù)大范圍的交叉轉(zhuǎn)換來減少出現(xiàn)等價(jià)染色體的機(jī)率。在本文的算例中,通過特定的交叉和變異方法在每一代中只有很少的機(jī)率出現(xiàn)等價(jià)或相同的染色體。由于這種通過譯碼器構(gòu)造支撐樹的方法,對(duì)應(yīng)的很自然的就是可行解,所以就不需要再判斷網(wǎng)絡(luò)結(jié)構(gòu)是否符合網(wǎng)絡(luò)拓?fù)浼s束的問題,省去了各種對(duì)不可行解的處理步驟,大大提高了解的質(zhì)量和算法的運(yùn)算效率,加快了解的收斂速度。
3.2 交叉算子設(shè)計(jì)
基于構(gòu)造支撐樹的順序編碼,若采用簡(jiǎn)單的一點(diǎn)或多點(diǎn)交叉策略,必然以極大的概率產(chǎn)生不可行的染色體,因此本文采用與部分匹配交叉比較類似的交叉方法,方法如下:
(1)隨機(jī)在串中選擇一個(gè)交配區(qū)域,如兩父串及交配區(qū)域選定為:
A=12|3456|789 B=98|7654|321
(2)將B的交配區(qū)域加到A的前面或后面,A的交配區(qū)域加到B前面或后面得到:
A′=7654|123456789 B′=3456|987654321
(3)在A′和B′中自交配區(qū)域后依次刪除與交配區(qū)相同的城市碼、得到最終的兩子串為:
A″=765412389 B″=345698721
與其它方法相比,這種方法在兩父類相同的情況下仍能產(chǎn)生一定程度的變異效果,這對(duì)維持群體內(nèi)一定的多樣化特性有一定的作用,實(shí)驗(yàn)中也顯示了較好的結(jié)果。
3.3 變異
為了維持群體內(nèi)的多樣化,本文采用隨機(jī)連續(xù)多次對(duì)換的變異技術(shù),使可行解在順序上有了較大的變化,以抑制交叉中有可能產(chǎn)生的同化作用。
所謂隨機(jī)對(duì)換變異,就是隨機(jī)選擇串中的兩點(diǎn),交換其編碼。例如對(duì)于串A:
A=12|3456|789
如果隨機(jī)產(chǎn)生的交換點(diǎn)是2和7,則串A中的第2點(diǎn)和第7點(diǎn)將對(duì)換,對(duì)換后,串A變?yōu)椋?br /> A′=17|3456|289
由于經(jīng)過一次對(duì)換后,A′仍然有可能與A表示為同一個(gè)網(wǎng)絡(luò)結(jié)構(gòu),所以本文采取連續(xù)多次的對(duì)換操作,來增強(qiáng)變異的效果。
3.4 更新
本文采用代間更新的方式,由代溝G控制每一代群體中個(gè)體被更新的百分比,在t代N個(gè)個(gè)體中有(1-G).N個(gè)適應(yīng)度最高的個(gè)體被選擇完全復(fù)制到t+1代中去,即每代只產(chǎn)生N*G個(gè)新個(gè)體。代間更新的方式為遺傳算法利用優(yōu)化過程中的歷史信息提供了條件,加快了遺傳算法的收斂過程,但當(dāng)代溝過小時(shí),可能會(huì)造成遺傳算法的過早收斂,G一般取0. 3~1,本文取0. 8。
評(píng)論