沈 鑫,鄒德旋,張 鑫,胡 震
(江蘇師范大學 電氣工程及自動化學院,江蘇 徐州 221116)
差分進化(Differential Evolution,DE)算法[1]是一種智能優(yōu)化算法,不需要問題具有連續(xù)性和可微性,因此被證明具有良好的適用性.目前,DE算法在約束優(yōu)化[2]、多目標優(yōu)化[3]、電力系統(tǒng)經(jīng)濟調(diào)度[4]等方面得到了廣泛的應(yīng)用.
與其他智能優(yōu)化算法類似[5,6],DE算法也存在早熟收斂和收斂精度低等缺點,特別是解決高維、時變問題時表現(xiàn)的更為明顯.為此,學者們從不同角度提出了相應(yīng)的改進,這些改進大致歸為以下三類:一是對DE算法本身機制的改進,如初始化種群、參數(shù)、變異策略、交叉策略和邊界處理.Zou等[7]在初始化種群時建立了一種外部存檔,外部存檔中優(yōu)秀個體將被選擇進入種群參與進化.Yi等[8]對縮放因子和交叉率進行自適應(yīng)調(diào)整,避免了參數(shù)選擇的麻煩.Islam等[9]使用新的變異算子DE/current-to-gr_best/1、參數(shù)選取機制和交叉操作中個體選擇方式.Zhang等[10]使用四種邊界處理手段以適應(yīng)不同的實際問題.二是加入一些優(yōu)良的機制,如重新開始機制等.Tian等[11]提出一種新的開始機制增強了種群多樣性和對優(yōu)秀個體的探測.三是將DE算法與其他優(yōu)化算法結(jié)合,如粒子群與人工蜂群融合的算法[12]等.以上改進措施一定程度上避免了算法陷入局部最優(yōu)并提高了算法的收斂精度,但是算法的全局尋優(yōu)能力仍有很大的提升空間.
為了進一步增強算法的全局尋優(yōu)能力,提出了融入柯西擾動的改進差分進化算法.該算法對基本DE算法做了深度改進,并通過優(yōu)化19個測試函數(shù)和2個電力系統(tǒng)經(jīng)濟調(diào)度問題,驗證了該算法的有效性.
差分進化算法是一種并行算法,其主要操作是首先種群在搜索空間內(nèi)初始化產(chǎn)生,然后進行變異、交叉、選擇操作,更新種群.基本差分進化算法的步驟如下:
1)初始化
DE算法隨機初始化產(chǎn)生NP個D維分量的個體.
xi,0=(xi1,0,xi2,0,…,xiD,0),i=1,2,…,NP
(1)
xij,0=Lj+rand ·(Uj-Lj),j=1,2,…,D
(2)
其中,Lj表示xij的下限,Uj表示xij的上限;xij,0表示初始代第i個體的第j維分量;NP表示種群數(shù)量;D表示個體的維數(shù);rand 表示在(0,1)區(qū)間上均勻分布的隨機數(shù).
2)變異
DE算法通過對目標個體xi,G進行擾動產(chǎn)生變異個體vi,G+1,在DE中最常用的變異策略是DE/rand/1,除此之外還有DE/best/1、DE/current-to-best/1、DE/current-to-rand/1等變異策略.
DE/rand/1:
vi,G+1=xr0,G+F·(xr1,G-xr2,G)
(3)
DE/best/1:
vi,G+1=xbest,G+F·(xr1,G-xr2,G)
(4)
DE/current-to-best/1:
vi,G+1=xi,G+F·(xbest,G-xi,G)+F·(xr1,G-xr2,G)
(5)
DE/current-to-rand/1:
vi,G+1=xi,G+F·(xr1,G-xi,G)+F·(xr2,G-xr3,G)
(6)
其中,F為縮放因子;r0,r1,r2表示1,2,…,NP上兩兩互不相同的隨機整數(shù)并且均不等于i;xi,G表示第G代的第i個體;vi,G+1表示變異個體;xbest,G表示第G代的最優(yōu)個體.
3)交叉
父代個體xi,G和變異個體vi,G+1進行交叉操作得到試驗個體ui,G+1=(ui1,G+1,ui2,G+1,…,uiD,G+1).
(7)
其中,CR為交叉率;jr表示1,2,…,D上的隨機整數(shù),用來確保vi,G+1中至少有一個分量保留至下一代,實現(xiàn)種群進化.
4)選擇
選擇操作是基于貪婪原則選擇試驗個體和父代個體,對于最小化問題,適應(yīng)度值越小的個體越優(yōu)秀,優(yōu)秀個體將進入下一代.
(8)
其中:xi,G+1表示經(jīng)過選擇之后進入下一代的個體.
基本DE算法存在早熟收斂和收斂精度低等缺點.為了解決這些缺點,學者們從不同角度對算法做了大量的改進.借鑒學者們的改進,這里將在DE算法中加入最優(yōu)個體信息復制機制和小概率擾動并對DE算法的變異策略、交叉策略和控制參數(shù)做如下的改進.
3.1.1 雙策略變異
DE算法是一種全局搜索算法,種群中所有個體隨著迭代的進行都逐步向全局最優(yōu)個體靠近.在算法進化的開始階段,應(yīng)盡可能使算法在搜索空間內(nèi)充分的探測,保證種群多樣性.而到了算法進化的后期,應(yīng)充分挖掘最優(yōu)個體的信息,加速種群收斂.因此,在算法的整個生命周期內(nèi)變異策略固定不變對算法的性能往往是不利的,針對算法各個搜索階段特性的不同,學者們使用的一種方法是使用多變異策略.Li等[13]使用了兩個變異策略,一個是基于隨機個體,另一個是基于最優(yōu)個體,進化前期基于隨機個體的變異策略被選中的概率大,而到了進化后期基于最優(yōu)個體的變異策略被選中的概率大,有效平衡了算法的全局搜索和局部搜索能力.借鑒前人的研究,新算法使用了一種雙策略變異算子,不同進化時期,每個變異策略在整個變異算子中所占的比重不同.變異算子的表達式如下:
w=wmin+(wmax-wmin)·(G/Gmax)
(9)
vi,G+1=(1-w)·(xr1,G+F·(xr2,G-xr3,G))+w·(xi,G+F·(xbest,G-xi,G)+F·(xr4,G-xr5,G))
(10)
其中,wmin和wmax分別取0和1,w隨著進化的進行線性遞增.Gmax表示最大進化代數(shù);當G=1時,此時變異算子近似為DE/rand/1,當G=Gmax時,此時變異算子變?yōu)镈E/current-to-best/1.r0,r1,r2,r3,r4,r5表示1,2,…,NP上兩兩互不相同的隨機整數(shù)且不等于i.
式(9)通過參數(shù)w動態(tài)調(diào)整兩種變異策略的比重,適應(yīng)了整個進化過程.
3.1.2 柯西擾動
由于DE算法易陷入局部最優(yōu),因此隨機改變算法的進化方向是一種避免陷入局部最優(yōu)的有效措施.張錦華等[14]使用rand隨機數(shù)擾動當前最優(yōu)個體達到改變粒子的進化方向,以便粒子向全局最優(yōu)個體靠近.這里使用柯西分布產(chǎn)生的隨機數(shù)擾動最優(yōu)個體xbest,G,避免算法陷入局部最優(yōu).柯西分布的圖形似一個鐘形,兩翼寬,加大了尋優(yōu)范圍.為了顯示柯西擾動的優(yōu)勢,將在第5部分詳細比較柯西擾動與rand隨機數(shù)產(chǎn)生的擾動所引起算法性能的差異.柯西隨機數(shù)表達式如下:
ci~randci(μ,λ)
(11)
其中,ci表示個體i所對應(yīng)的柯西隨機數(shù);randci表示個體i所對應(yīng)的柯西分布函數(shù),μ和λ是其局部參數(shù),這里均取0.1.
為了進一步增強算法跳出局部最優(yōu)的能力,這里使用了一種小概率擾動[15],個體以某種概率在搜索空間內(nèi)隨機產(chǎn)生.小概率擾動流程如下:
if rand vi,G+1=(1-w)·(xr1,G+F·(xr2,G-xr3,G))+ w·(xi,G+F·(ci·xbest,G-xi,G)+F·(xr4 ,G-xr5 ,G)) else vi,G+1=L+rand ·(U-L) end 其中,L和U分別是種群搜索邊界的下限和上限;Pr一般為很大的小數(shù),這里取0.99. DE算法原始交叉策略是根據(jù)交叉率決定是父代個體保留至下一代還是變異個體遺傳給下一代.為了提供更好的個體,學者們使用其他個體替換交叉策略中的父代個體.Islam等[9]使用一種線性遞減機制從當前種群中隨機選取的個體取代父代個體.這里聯(lián)合當前中心解和最優(yōu)解來取代父代個體,中心解源自于Liu等[16]提出的中心粒子群優(yōu)化算法,并被Zou等[7]用于DE算法提供一個潛在的搜索方向.中心解及交叉策略表達式如下: (12) (13) 其中,xcenter,G表示第G代的中心解,而xcenterj,G表示中心解的變量,(13ii)中的新個體分量取代父代個體分量,有效引導個體向好的方向進化. DE算法類似于達爾文主義的適者生存理論,優(yōu)秀個體存活,那么優(yōu)秀個體所包含的信息也勢必對種群的進化是有利的,這里使用當前最優(yōu)個體的z維數(shù)值替換當前最差個體對應(yīng)的z維數(shù)值,有利于擴大最優(yōu)個體的影響力,改善最差個體,充分挖掘了種群中的優(yōu)秀信息.圖1為該機制的示意圖. 圖1 最優(yōu)個體信息復制機制示意圖Fig.1 Diagram of the optimal individual information replication mechanism 控制參數(shù)F和CR對DE算法的性能有很大影響,通常取固定值,這樣不適用于各種問題以及算法搜索的全過程.優(yōu)秀的參數(shù)值更可能產(chǎn)生優(yōu)秀的個體,因此,優(yōu)秀的參數(shù)值應(yīng)保留至下一代,這里將試驗個體與目標個體比較,若個體進化成功即對于最小化問題試驗個體適應(yīng)度值小,則縮放因子和交叉率繼承上一代的值,否則F在[Fmin,Fmax]內(nèi)重新產(chǎn)生且CR重新產(chǎn)生為高斯分布的隨機數(shù).調(diào)整縮放因子和交叉率的表達式如下: (14) (15) 其中,Fi,G+1表示第G+1代第i個體的縮放因子;Fi,G表示第G代第i個體的縮放因子;CRi,G+1表示第G+1代第i個體的交叉率;CRi,G表示第G代第i個體的交叉率;Fmin是縮放因子的最小值;Fmax是縮放因子的最大值;randni(m,δ)表示平均值為m和標準差為δ的高斯分布函數(shù),若CR值落在[0,1]之外,則CR重新產(chǎn)生;對于初始代F和CR分別使用(14i)和(15i)隨機產(chǎn)生. CDMDE算法的流程如圖2. 電力系統(tǒng)經(jīng)濟調(diào)度(ELD)問題[17]是在滿足系統(tǒng)運行約束條件下優(yōu)化發(fā)電機組間功率分配,使系統(tǒng)發(fā)電成本最小化 圖2 CDMDE算法的流程Fig.2 Flow chart of the CDMDE algorithm 的問題.因此,解決ELD問題主要包括兩方面,一是使系統(tǒng)發(fā)電成本最小化,二是滿足系統(tǒng)運行約束. 系統(tǒng)發(fā)電成本的目標函數(shù)是一個多項式函數(shù),其通常被描述成一個二次函數(shù)或二次函數(shù)和正弦函數(shù)的組合,具體表達式如下: (16) (17) ELD包括了不等式約束和等式約束,不等式約束是發(fā)電機組輸出功率的上、下邊界,等式約束是所有發(fā)電機組的電力輸出等于系統(tǒng)總的負載需求和傳輸損耗.具體描述如下: (18) (19) 罰函數(shù)法是處理ELD約束條件的常用方法,但往往得不到滿意的解,這里使用了Zou等[4]處理約束的方法,該方法首先對不可行解進行修復,然后使用罰函數(shù)法進一步處理等式約束. 為了顯示新算法的優(yōu)化性能,這里將選取19個測試函數(shù)[18-20]對CDMDE算法性能進行測試,測試結(jié)果與近期著名的DE算法進行對比,19個測試函數(shù)如表1所示,變量范圍及理論最優(yōu)值見文獻[18-20].同時對算法改進部分做了如下研究:研究CDMDE算法中柯西擾動和小概率擾動的作用;研究改進交叉策略的作用;研究最優(yōu)個體信息復制機制的作用;將CDMDE算法中的算子與幾種典型的變異算子進行對比實驗.這四種算法改進部分的實驗參數(shù)與函數(shù)20維數(shù)時不同算法對比實驗參數(shù)一致.除此之外,將CDMDE算法用來優(yōu)化3機組[21]和38機組[22]ELD問題,并將他與文獻中的結(jié)果進行對比分析.所有對比實驗結(jié)果都用Matlab8.3仿真軟件實現(xiàn),且實驗的電腦配置為Intel(R)Core(TM)i5-2450M CPU @ 2.50GHz.各算法獨立運行30次. 將CDMDE算法與基本DE算法和幾種著名DE算法HSDE[8]、RMDE[15]、SPS_DE/rand/1[23]進行比較.另外,CDMDE算法與其他DE算法之間使用平均值、標準差和以顯著性水平為0.05的t-test指標[24]得出他們性能的優(yōu)劣,若經(jīng)t-test分析得出兩種算法有差異,那么使用一種勝率求出他們的優(yōu)劣,兩種算法每次運行的最優(yōu)值兩兩比較,勝的一方得1分,平的雙方各得0.5分,敗的一方不得分,求出每個算法得到的總分再除以總的比較次數(shù)就是他們各自的勝率,總共經(jīng)過900次比較,這里將對比算法分別與CDMDE算法比較.各算法的參數(shù)設(shè)置如下:HSDE、RMDE和SPS_DE/rand/1的參數(shù)與對應(yīng)的文獻一致;基本DE算法中F=0.5,CR=0.9,變異策略DE/rand/1,二進制交叉操作;CDMDE算法中參數(shù)z=10,Pr=0.99,wmin=0,wmax=1,縮放因子的最大值和最小值分別為0.9和0.1,柯西分布的局部參數(shù)μ和λ均為0.1,高斯分布的平均值m=0.8和標準差δ=0.5;所有函數(shù)的維數(shù)分別取20、50和100維;函數(shù)f8和f19最大進化代數(shù)Gmax=100,其余函數(shù)的最大進化代數(shù)Gmax=1500;種群數(shù)量NP=100.算法優(yōu)化結(jié)果見表2和表3,其中“+”、“-”和“=”分別表示比較算法性能優(yōu)于、劣于和相近于CDMDE算法.NOBM和NOBSTD分別表示某算法取得最優(yōu)平均值和最優(yōu)標準差的函數(shù)個數(shù),最優(yōu)平均值和最優(yōu)標準差分別表示優(yōu)化某個函數(shù)時某算法的平均值和標準差不差于其他算法. 從表2和表3可以看出,CDMDE算法性能與其他算法相比占絕對優(yōu)勢.在不同維數(shù)下,CDMDE算法的NOBM和NOBSTD遠大于其他算法,說明CDMDE算法對大多數(shù)測試函數(shù)的平均優(yōu)化性能和穩(wěn)定性遠好于對比算法.四種對比算法中,RMDE算法的NOBM和NOBSTD不低于其他對比算法,HSDE算法在中高維時NOBM與RMDE算法接近且兩個算法的NOBSTD相同,其他兩種對比算法的NOBM和NOBSTD最低甚至為0,因此就平均值和標準差而言,對比算法中的RMDE算法整體性能最優(yōu).一般而言,對于不同算法求解同一個函數(shù),如果某一算法的平均值和標準差都最小,那么該算法性能最佳,上述幾種算法對大多數(shù)函數(shù)可以達到平均值和標準差同時最優(yōu).對不同維數(shù)下的函數(shù)f8、f15、f16和f19,CDMDE算法均可找到它們的全局最優(yōu)值.此外對于函數(shù)f5和f12,CDMDE算法在低維時無法找到它們的全局最優(yōu)值,但該算法在中高維時能找到它們的全局最優(yōu)值,因此,對于某些優(yōu)化函數(shù),CDMDE算法在更高維時表現(xiàn)更好.從t-test指標可以看出,對大多數(shù)函數(shù)四種對比算法劣于CDMDE算法. 表1 19個測試函數(shù) 函數(shù)f1(x)=∑Dj=1x2jf2(x)=∑Dj=1|xj|+∏Dj=1|xj|f3(x)=∑Dj=1(∑jq=1xq)2f4(x)=∑Dj=1[x2j-10cos(2πxj)+10]f5(x)=14000∑Dj=1x2j-∏Dj=1(xjj)+1f6(x)=418.9829?D-∑Dj=1xjsin|xj|f7(x)=max{|xj|,1≤j≤D}f8(x)=∑Dj=1(?xj+0.5」)2f9(x)=∑Dj=1|xjsinxj+0.1×xj|f10 (x)= ∑Dj=1jx2jf11 (x)= ∑D-1j=1[100(xj+1 -x21)2 +(1-xj)2]f12(x)=∑Dj=1|xj|(j+1)f13 (x)= -20exp(-0.2∑Dj=1x2jD)-exp(∑Dj=1cos(2πxj)D)+ 20+ef14 (x)= ∑Dj=1x2j +(∑Dj=10.5jxj)2 +(∑Dj=10.5jxj)4f15 (x)= ∑Dj=1jx4jf16 (x)= -∑D-1j=1[exp(-(x2j+x2j+1 +0.5xjxj+1 )8)×cos(4x2j+x2j+1 +0.5xjxj+1 )]f17 (x)= 1-cos(2π‖x‖)+ 0.1‖x‖,‖x‖=∑Dj=1x2jf18 (x)= ∑Dj=1(106)j-1D-1x2jf19 (x)= ∑Dj=1(0.5+sin2(x2j+x2j+1 )-0.5(1+0.001(x2j+x2j+1 ))2),xD+1 =x1 表2 5種算法的仿真結(jié)果 函數(shù)算法20維50維100維平均值標準差平均值標準差平均值標準差f1DE3.87E-232.78E-23-1.33E-076.17E-08-3.89E-021.90E-02-HSDE1.61E-716.90E-71=7.40E-729.79E-72-6.51E-721.29E-71-RMDE1.37E-565.70E-56=1.07E-045.68E-04=2.64E-011.06E+00=SPS_DE/rand/12.01E-311.22E-31-1.14E-083.07E-09-2.69E+003.51E-01-CDMDE2.00E-2660.00E+002.50E-2510.00E+009.97E-2430.00E+00f2DE1.53E-119.46E-12-2.23E-032.63E-03-3.19E+002.64E+00-HSDE6.18E-365.61E-36-5.99E-363.08E-36-8.38E-368.65E-36-RMDE3.08E-151.38E-14=3.75E-021.35E-01=1.64E-012.12E-01-SPS_DE/rand/17.65E-192.56E-19-8.32E-069.49E-07-7.54E-015.03E-02-CDMDE3.95E-1421.02E-1415.76E-1302.55E-1291.09E-1265.26E-126f3DE5.13E-073.13E-07-2.30E+035.41E+02-1.20E+052.39E+04-HSDE2.99E-213.74E-21-1.12E-201.95E-20-5.72E-219.13E-21-RMDE1.31E-223.13E-22-7.99E+001.84E+01-3.85E+033.60E+03-SPS_DE/rand/16.53E-013.25E-01-3.87E+041.15E+04-2.96E+053.67E+04-CDMDE1.51E-1980.00E+003.62E-1611.32E-1601.59E-1338.72E-133f4DE8.77E+019.07E+00-3.63E+021.15E+01-8.36E+022.43E+01-HSDE6.12E+001.35E+00-6.03E+001.58E+00-6.57E+001.54E+00=RMDE4.20E-151.05E-14=3.32E-021.82E-01=1.47E-014.52E-01=SPS_DE/rand/19.41E-153.57E-14=1.16E+021.30E+01-5.52E+022.74E+01-CDMDE4.94E-032.71E-021.55E+006.01E+005.63E+001.74E+01f5DE1.73E-033.55E-03-2.23E-071.48E-07-2.30E-021.15E-02-HSDE5.34E-037.57E-03-5.42E-037.95E-03-3.04E-035.55E-03-RMDE2.23E-022.80E-02-4.56E-029.21E-02-5.77E-028.71E-02-SPS_DE/rand/10.00E+000.00E+00=1.84E-087.25E-09-8.53E-014.11E-02-CDMDE5.52E-063.03E-050.00E+000.00E+000.00E+000.00E+00f6DE2.95E+033.97E+02-1.25E+049.32E+02-2.97E+041.71E+03-HSDE1.09E+013.12E+01=1.50E+014.03E+01+1.58E+015.14E+01+RMDE2.55E-041.36E-12=9.02E-041.29E-03+1.79E-013.26E-01+SPS_DE/rand/17.90E+003.00E+01=1.41E+036.15E+02-1.99E+047.03E+02-CDMDE2.95E+008.60E+001.65E+023.38E+025.18E+029.45E+02f7DE2.37E-063.35E-06-7.98E+003.16E+00-9.42E+011.35E+00-HSDE5.92E-137.28E-13-6.13E-137.00E-13-4.93E-137.56E-13-RMDE3.21E-024.64E-02-2.47E-011.04E-01-3.56E-011.62E-01-SPS_DE/rand/11.52E-052.88E-06-5.16E+005.37E-01-3.99E+011.45E+00-CDMDE9.89E-1224.07E-1214.27E-1131.32E-1123.37E-1101.06E-109f8DE5.13E+021.21E+02-1.54E+043.18E+03-5.97E+048.91E+03-HSDE6.67E-022.54E-01=0.00E+000.00E+00=3.33E-021.83E-01=RMDE4.17E+006.22E+00-5.14E+017.34E+01-1.47E+022.00E+02-SPS_DE/rand/11.45E+022.33E+01-1.42E+041.59E+03-1.03E+056.96E+03-CDMDE0.00E+000.00E+000.00E+000.00E+000.00E+000.00E+00f9DE8.94E-032.98E-03-4.71E-028.16E-03-9.65E-021.32E-02-HSDE2.45E-057.35E-05+6.16E-051.27E-04=5.27E-059.78E-05=RMDE5.21E-131.87E-12+1.05E-031.46E-03=1.03E-021.12E-02-SPS_DE/rand/12.18E-051.69E-05+3.32E-022.40E-03-3.11E+001.38E+00-CDMDE1.11E-032.00E-034.65E-042.54E-034.44E-042.43E-03f10DE1.06E-248.40E-25-9.81E-093.97E-09-3.51E-031.48E-03-HSDE1.70E-734.02E-73-1.22E-731.41E-73-1.54E-733.69E-73-RMDE3.20E-588.51E-58-1.74E-069.45E-06=6.33E-039.14E-03-SPS_DE/rand/14.63E-333.03E-33-5.35E-101.47E-10-2.51E-013.47E-02-CDMDE8.37E-2690.00E+001.40E-2530.00E+001.15E-2430.00E+00 續(xù)表 函數(shù)算法20維50維100維平均值標準差平均值標準差平均值標準差f11DE1.64E-012.12E-01=4.09E+019.96E-01-9.81E+019.71E+00-HSDE3.99E-011.22E+00=1.33E-017.28E-01+3.99E-011.22E+00+RMDE5.11E-142.07E-13+1.77E+012.04E+01=7.20E+014.05E+01-SPS_DE/rand/11.42E+012.88E-01-4.49E+012.39E-01-1.02E+021.39E+00-CDMDE5.12E-011.13E+009.75E+001.56E+012.69E+013.45E+01f12DE3.30E-661.49E-65=1.82E-179.97E-17=1.21E-013.67E-01=HSDE6.16E-1112.30E-110=1.02E-1113.12E-111=3.08E-1121.55E-111=RMDE4.69E-1021.48E-101=3.41E-311.42E-30=1.23E-166.72E-16=SPS_DE/rand/16.99E-861.15E-85-5.97E-317.32E-31-9.74E-147.28E-14-CDMDE2.93E-2400.00E+000.00E+000.00E+000.00E+000.00E+00f13DE2.43E-128.94E-13-8.25E-051.90E-05-4.42E-022.33E-02-HSDE7.52E-151.23E-15-7.64E-151.95E-15-7.76E-159.01E-16-RMDE1.93E-101.05E-09=2.96E-021.60E-01=4.36E-029.21E-02-SPS_DE/rand/14.44E-150.00E+00-2.18E-052.90E-06-4.98E-015.84E-02-CDMDE8.88E-160.00E+008.88E-160.00E+008.88E-160.00E+00f14DE6.20E-094.63E-09-1.99E+024.16E+01-1.11E+031.32E+02-HSDE1.61E-241.75E-24-1.66E-242.07E-24-2.92E-245.21E-24-RMDE7.31E-341.84E-33-2.63E-036.98E-03-2.01E+022.08E+02-SPS_DE/rand/12.42E-031.04E-03-2.49E+021.68E+01-1.42E+038.23E+01-CDMDE2.82E-1860.00E+005.93E-933.12E-924.53E-491.57E-48f15DE3.89E-459.39E-45-4.57E-161.97E-15=1.00E-061.09E-06-HSDE1.58E-1294.67E-129=1.06E-1293.15E-129=1.03E-1294.92E-129=RMDE1.37E-916.35E-91=4.34E-172.14E-16=1.18E-094.90E-09=SPS_DE/rand/15.45E-566.47E-56-3.50E-161.52E-16-9.77E-042.58E-04-CDMDE0.00E+000.00E+000.00E+000.00E+000.00E+000.00E+00f16DE-7.35E+005.52E-01--9.66E+006.83E-01--1.26E+019.70E-01-HSDE-1.46E+013.98E-01--1.46E+013.00E-01--1.46E+013.49E-01-RMDE-1.90E+018.05E-15=-4.90E+011.96E-05=-9.90E+017.89E-03-SPS_DE/rand/1-1.84E+018.65E-01--2.75E+012.80E+00--2.63E+011.69E+00-CDMDE-1.90E+010.00E+00-4.90E+010.00E+00-9.90E+010.00E+00f17DE1.51E-014.75E-02-3.98E-014.35E-02-1.55E+001.36E-01-HSDE1.07E-012.54E-02-1.10E-013.05E-02=1.10E-013.05E-02=RMDE1.87E-019.73E-02-2.90E-011.75E-01-3.10E-011.75E-01-SPS_DE/rand/11.27E-014.50E-02-3.27E-014.13E-02-2.48E+001.04E-01-CDMDE9.16E-022.56E-029.99E-024.02E-099.99E-022.62E-09f18DE2.69E-202.87E-20-2.29E-042.03E-04-1.26E+026.24E+01-HSDE7.39E-681.14E-67-2.59E-713.45E-71-5.26E-687.66E-68-RMDE4.24E-422.32E-41=5.86E+013.18E+02=5.19E+031.62E+04=SPS_DE/rand/13.78E-282.53E-28-8.90E-062.21E-06-1.13E+031.16E+02-CDMDE6.78E-2660.00E+003.27E-2470.00E+008.97E-2410.00E+00f19DE2.45E-028.26E-03-7.32E-011.60E-01-2.88E+003.41E-01-HSDE1.07E-054.50E-06-1.33E-057.02E-06-1.05E-054.26E-06-RMDE7.24E-071.24E-06-7.77E-041.44E-03-2.32E-032.80E-03-SPS_DE/rand/17.10E-031.70E-03-6.87E-014.21E-02-4.97E+003.66E-01-CDMDE0.00E+000.00E+000.00E+000.00E+000.00E+000.00E+00 綜上所述,CDMDE算法對大多數(shù)函數(shù)具有較強的全局尋優(yōu)能力,較好的穩(wěn)定性,但該算法對函數(shù)f4、f6、f9和f11優(yōu)化性能不佳.造成CDMDE算法對少數(shù)函數(shù)表現(xiàn)不佳的原因是CDMDE算法中引入了一些局部參數(shù),而這些局部參數(shù)取值主要依靠經(jīng)驗得出,這就使得該算法的通用性在一定程度上下降.未來的工作是加強參數(shù)設(shè)置的理論研究和提高算法的通用性. 為了直觀顯示CDMDE算法的優(yōu)越性,這里選擇了3種收斂曲線如圖3、圖4和圖5,橫坐標表示進化代數(shù),縱坐標表示平均函數(shù)值. 表3 不同評價指標下的仿真結(jié)果匯總 算法20維NOBMNOBSTD+/-/=50維NOBMNOBSTD+/-/=100維NOBMNOBSTD+/-/=DE000/17/2000/17/2000/18/1HSDE011/12/6222/12/5222/11/6RMDE542/8/9321/7/11321/13/5SPS_DE/rand/1111/15/3000/19/0000/19/0CDMDE141315151515 從3種收斂曲線可以看出,CDMDE算法在進化前期就表現(xiàn)很好的收斂速度并且隨著進化的進行CDMDE算法搜索到的平均值遠小于其他算法,說明CDMDE算法具有較高的收斂精度. 圖3 20維函數(shù)f1Fig.3 Function f1 for D=20 圖4 50維函數(shù)f3Fig.4 Function f3 for D=50 圖5 100維函數(shù)f18Fig.5 Function f18 for D=100 擾動作為一種避免種群陷入局部最優(yōu)的手段,受到廣大學者的青睞.擾動的形式是多種多樣的,有基于rand函數(shù)的隨機擾動[14]和小概率擾動[15]等.CDMDE算法融入了柯西擾動和小概率擾動,因此為了說明柯西擾動和小概率擾動對算法性能的影響,這里使用CDMDE算法的結(jié)構(gòu)將融入柯西擾動的改進差分進化算法與無柯西擾動的CDMDE算法(NCDMDE)、rand隨機擾動代替柯西擾動的CDMDE算法(RDMDE)和無小概率擾動的CDMDE算法(NSPDMDE)進行比較研究.比較結(jié)果如表4所示,其中加粗字體表示該算法的平均值或標準差不劣于其他算法. 表4 擾動的作用 函數(shù)NCDMDERDMDENSPDMDECDMDE平均值標準差平均值標準差平均值標準差平均值標準差f11.15E-023.38E-022.87E-1640.00E+001.36E-2530.00E+002.00E-2660.00E+00f22.65E-024.51E-024.75E-891.24E-882.07E-1364.70E-1363.95E-1421.02E-141f38.40E+003.08E+012.72E-1607.30E-1601.81E-1980.00E+001.51E-1980.00E+00f42.68E-011.42E+001.07E+003.82E+003.41E-011.19E+004.94E-032.71E-02f51.13E-012.04E-012.54E-035.76E-030.00E+000.00E+005.52E-063.03E-05f61.25E-012.82E-015.74E+001.32E+014.09E+031.09E+032.95E+008.60E+00f71.15E-019.64E-029.97E-792.25E-782.66E-1189.60E-1189.89E-1224.07E-121f89.10E+007.10E+000.00E+000.00E+000.00E+000.00E+000.00E+000.00E+00f91.68E-035.69E-032.71E-032.00E-032.06E-045.32E-041.11E-032.00E-03f101.39E-035.68E-031.68E-1670.00E+002.26E-2540.00E+008.37E-2690.00E+00f114.35E-041.06E-038.87E-013.15E+001.60E+018.31E-025.12E-011.13E+00f127.31E-143.37E-133.37E-2090.00E+001.01E-2430.00E+002.93E-2400.00E+00f134.08E-028.80E-028.88E-160.00E+008.88E-160.00E+008.88E-160.00E+00f144.26E-011.25E+008.45E-1582.47E-1573.88E-1860.00E+002.82E-1860.00E+00f152.67E-105.85E-102.30E-3200.00E+000.00E+000.00E+000.00E+000.00E+00f16-1.90E+012.37E-03-1.90E+010.00E+00-1.90E+010.00E+00-1.90E+010.00E+00f172.15E-011.16E-019.99E-023.02E-109.75E-021.29E-029.16E-022.56E-02f186.80E+032.08E+047.15E-1660.00E+003.57E-2530.00E+006.78E-2660.00E+00f192.31E-043.58E-047.08E-151.03E-140.00E+000.00E+000.00E+000.00E+00 從表4可以看出,CDMDE算法性能明顯優(yōu)于其他算法.就平均值而言,NCDMDE算法、RDMDE算法、NSPDMDE算法和CDMDE算法在所有算法中表現(xiàn)最優(yōu)的函數(shù)個數(shù)分別為3、3、8和14;就標準差而言,NCDMDE算法、RDMDE算法、NSPDMDE算法和CDMDE算法在所有算法中表現(xiàn)最優(yōu)的函數(shù)個數(shù)分別為2、9、13和14,另外,RDMDE算法、NSPDMDE算法和CDMDE算法優(yōu)化很多函數(shù)的標準差都為0.因此,CDMDE算法表現(xiàn)最優(yōu),NSPDMDE算法的性能僅次于CDMDE算法并且就標準差而言NSPDMDE算法的性能略低于CDMDE算法.綜上分析,柯西擾動對算法性能的提升非常明顯,提高了算法的全局尋優(yōu)能力,在CDMDE算法中的小概率擾動也一定程度上提高算法的穩(wěn)定性和收斂精度,但作用低于柯西擾動,若在CDMDE算法中無柯西擾動,則算法表現(xiàn)最差.此外,RDMDE算法中的rand隨機擾動明顯沒有柯西擾動對算法性能提升好,但比NCDMDE算法性能要好.因此,就提升算法性能而言,柯西擾動比小概率擾動和rand隨機擾動好,rand隨機擾動比無柯西擾動的算法好. 最優(yōu)個體信息復制和改進的交叉策略是CDMDE算法中的兩種改進措施,為了分析他們各自在CDMDE算法中所起的作用,這里使用CDMDE算法的結(jié)構(gòu)將無最優(yōu)個體信息復制的CDMDE算法(NCBEST)、無交叉策略改進的CDMDE算法(NMCDE)與CDMDE算法進行對比分析.他們的性能優(yōu)劣通過平均值、標準差和改進率μk=mk/(m3+δ)(k=1,2)得出,結(jié)果如表5所示.m1、m2和m3分別表示NCBEST、NMCDE和CDMDE算法的平均值.δ為足夠小的正數(shù),該值是為了防止分母為0.μk表示兩個比較算法分別與CDMDE算法的比值,若μk大于等于1,則表示對某函數(shù)CDMDE算法不劣于比較算法,μk越大,說明新算法的改進機制越有效;反之,若μk小于1,則表示對某函數(shù)CDMDE算法劣于比較算法.其中加粗字體表示該算法的平均值或標準差不劣于其他算法.另外,對μ1和μ2中大于等于1的數(shù)也進行了加粗. 從表5可以看出,CDMDE算法優(yōu)于其他兩種算法.在平均值方面,與其他算法相比CDMDE算法對14個函數(shù)表現(xiàn)最優(yōu),而NCBEST算法和NMCDE算法在三種算法中表現(xiàn)最好的函數(shù)個數(shù)分別為9和5;就標準差而言,NCBEST算法、NMCDE算法和CDMDE算法表現(xiàn)最優(yōu)的函數(shù)個數(shù)分別為13、8和15,對于這三種算法優(yōu)化很多函數(shù)的標準差都為0,說明三種算法的穩(wěn)定性都較好;在改進率方面,對大多數(shù)函數(shù)NCBEST和NMCDE的改進率都大于等于1,且NMCDE的改進率大于NCBEST,因此,最優(yōu)個體信息復制和改進交叉策略能提升算法的全局尋優(yōu)能力,交叉策略的改進對算法性能的提升更大. 表5 最優(yōu)個體信息復制和改進交叉策略的作用 函數(shù)NCBEST平均值標準差μ1NMCDE平均值標準差μ2CDMDE平均值標準差f17.18E-2640.00E+003.59E+022.08E-1333.17E-1331.04E+1332.00E-2660.00E+00f27.38E-1403.16E-1391.87E+025.78E-704.78E-701.46E+723.95E-1421.02E-141f31.69E-1970.00E+001.12E+011.24E-714.42E-718.21E+1261.51E-1980.00E+00f46.32E-023.39E-011.28E+011.98E-015.09E-014.01E+014.94E-032.71E-02f50.00E+000.00E+0000.00E+000.00E+0005.52E-063.03E-05f61.46E+016.84E+014.95E+002.15E+012.93E+017.29E+002.95E+008.60E+00f71.93E-1207.37E-1201.95E+013.40E-318.36E-313.44E+909.89E-1224.07E-121f80.00E+000.00E+0010.00E+000.00E+0010.00E+000.00E+00f94.30E-041.19E-033.87E-011.15E-031.29E-031.04E+001.11E-032.00E-03f101.21E-2630.00E+001.45E+053.39E-1357.22E-1354.05E+1338.37E-2690.00E+00f114.04E-017.11E-017.89E-012.64E-013.44E-015.16E-015.12E-011.13E+00f120.00E+000.00E+0009.61E-2620.00E+003.28E-222.93E-2400.00E+00f138.88E-160.00E+0018.88E-160.00E+0018.88E-160.00E+00f141.22E-1850.00E+004.33E+006.56E-651.25E-642.33E+1212.82E-1860.00E+00f150.00E+000.00E+0012.45E-2590.00E+0010.00E+000.00E+00f16-1.90E+010.00E+001-1.90E+010.00E+001-1.90E+010.00E+00f178.41E-023.17E-029.18E-019.99E-021.55E-101.09E+009.16E-022.56E-02f185.88E-2610.00E+008.67E+043.66E-1315.88E-1315.40E+1346.78E-2660.00E+00f190.00E+000.00E+0012.56E-101.26E-1010.00E+000.00E+00 為了進一步分析CDMDE算法中雙策略變異算子(BSM)的作用,在該算法框架下,選擇三種經(jīng)典的變異算子(DE/rand/1,DE/current-to-best/1,DE/ best/1)作對比實驗.基于平均值和標準差指標,將4種算子在每個函數(shù)上進行排名,最后將每種算子的總排名除以函數(shù)個數(shù)得到每個算子的平均排名,平均排名越低的算子性能越好,反之,平均排名越高的算子性能越差.4種算子的平均排名用柱狀圖6所示,每個柱形圖上方的數(shù)字表示該算子平均排名. 從圖6可以看出,不管對于平均值還是標準差,平均排名最低的算子為BSM,說明新算法中的變異算子平均優(yōu)化性能和魯棒性最好.DE/best/1算子對平均值和標準差而言平均排名都最高,造成這的原因是該算子易陷入局部最優(yōu).其他兩種算子平均排名同樣較高,介于BSM和DE/best/1算子之間.因此,單一變異策略無法適應(yīng)算法搜索的不同階段,算法進化過程中前期要求保證種群多樣性,盡可能的遍歷搜索空間,避免出現(xiàn)早熟收斂;后期希望算法更精確的搜索,加快搜索速度.雙策略變異中DE/rand/1策略可以適應(yīng)算法前期搜索,DE/current-to-best/1策略可以滿足算法后期搜索,兩種策略在不同搜索階段所占的比重動態(tài)調(diào)節(jié).因此,雙策略變異的CDMDE算法顯示出了優(yōu)良的性能. 圖6 4種算子平均排名Fig.6 Average ranking of four mutation operators 利用CDMDE算法對3機組和38機組進行30次獨立實驗.其中,CDMDE算法優(yōu)化兩個算例的種群規(guī)模和z值分別為40和1,且他們的最大進化代數(shù)分別為300和3000,懲罰系數(shù)為1020,其余參數(shù)不變.解的可行性往往比目標函數(shù)值更重要,因此將30次獨立實驗的最優(yōu)值和對應(yīng)的約束違反量與其他文獻進行比較.對于3機組,經(jīng)過30次獨立實驗CDMDE算法的最優(yōu)解P=(393.170569,334.602777,122.226654),最優(yōu)解的目標函數(shù)值為8194.356121,該目標函數(shù)值與文獻[21]中的目標函數(shù)值相同,并且CDMDE算法和文獻[21]中的約束違反量都為0,說明他們對該算例的優(yōu)化性能相同.對于38機組,CDMDE算法與其他文獻方法對比見表6.30次獨立實驗中CDMDE算法的最優(yōu)解P=從表6看出,CDMDE算法優(yōu)化38機組得到的最優(yōu)值為9417331.431253,且滿足系統(tǒng)所有的運行約束.而其他5種方法得到的最優(yōu)目標函數(shù)值均比CDMDE算法大,且這5種方法的約束違反量都不為0,說明他們無法有效找到可行解.因此,CDMDE算法可以優(yōu)化出既滿足系統(tǒng)各種運行約束的情況下,又使發(fā)電成本最小的較優(yōu)解. 表6 不同方法優(yōu)化38機組電力系統(tǒng)經(jīng)濟調(diào)度問題的對比 方法最優(yōu)值違反量 SPSO[25] 9543984.7770.004 PSO_Crazy[25] 9520024.6010.005 New PSO[25] 9516448.3120.003 PSO_TVAC[25] 9500448.3070.005 λ-logic[22] 9447031.77549.1569 CDMDE 9417331.4312530 (420.897283,434.647261,426.694397,428.853213,432.403767,430.862396,428.264389,433.406684,114.00642,114.012771,122.405587,127.570354,110.000346,90,82.000328,120.000478,158.691548,65.000941,65.000046,271.938996,271.94118,259.968287,129.885306,10,111.386999,87.187023,35.517238,20.000265,20.000039,20.0002,20,20.00043,25.00012,18.000414,8.000026,25.000067,20.665701,20.7894 9899999952). 針對差分進化算法提早收斂等缺點,提出了融入柯西擾動的改進差分進化算法.新算法在變異策略中采用雙策略變異和柯西擾動,有效平衡了全局搜索和局部搜索.中心解和最優(yōu)解聯(lián)合去改進交叉策略中解的選取.自適應(yīng)參數(shù)保留了優(yōu)秀參數(shù),劣質(zhì)參數(shù)則被重新生成.小概率擾動和最優(yōu)個體信息復制機制進一步加強了算法收斂到全局最優(yōu)解的能力.采用了19個測試函數(shù)和2個電力系統(tǒng)經(jīng)濟調(diào)度問題比較CDMDE算法、其他DE算法和文獻中的方法,實驗結(jié)果證明了CDMDE算法具有更高的收斂精度.3.3 交叉策略的改進
3.4 最優(yōu)個體信息復制機制
3.5 自適應(yīng)調(diào)整參數(shù)
3.6 算法實現(xiàn)流程圖
4 電力系統(tǒng)經(jīng)濟調(diào)度優(yōu)化
4.1 目標函數(shù)
4.2 約束處理
5 算法性能測試
5.1 函數(shù)測試結(jié)果對比分析
Table 1 19 test functions
Table 2 Simulation results of five algorithms
Table 3 Summary of simulation results under different evaluation indicators5.2 擾動作用分析
Table 4 Effect of the disturbance5.3 最優(yōu)個體信息復制和改進交叉策略分析
Table 5 Effect of the optimal individual information replication and modified crossover strategy5.4 算子性能分析
5.5 電力系統(tǒng)經(jīng)濟調(diào)度問題優(yōu)化結(jié)果與分析
Table 6 Comparison among different approaches for 38-unit economic load dispatch problem6 結(jié)束語