李 煜,鄭 娟,劉景森
1.河南大學(xué) 管理科學(xué)與工程研究所,河南 開封 475004
2.河南大學(xué) 商學(xué)院,河南 開封 475004
3.河南大學(xué) 智能網(wǎng)絡(luò)系統(tǒng)研究所,河南 開封 475004
越來越多科學(xué)和工程應(yīng)用問題由低維發(fā)展成高維,決策變量增多,計(jì)算量大,具有不確定性且一般為多目標(biāo)復(fù)雜優(yōu)化問題[1]。一般情況下,決策變量超過100個的函數(shù)優(yōu)化問題被定義為大規(guī)模優(yōu)化問題[2],如大型電力系統(tǒng)、視頻數(shù)據(jù)處理、輸電網(wǎng)擴(kuò)展規(guī)劃、大規(guī)模交通網(wǎng)絡(luò)的車輛路徑規(guī)劃等。優(yōu)化問題的求解難度和維度息息相關(guān),搜索空間和問題復(fù)雜度隨維度增加呈指數(shù)趨勢增大,找到最優(yōu)解的概率呈指數(shù)下降,極易陷入“維數(shù)災(zāi)難”,而且這些決策變量之間相互關(guān)聯(lián),使得計(jì)算復(fù)雜度和求解難度進(jìn)一步加大。
大規(guī)模優(yōu)化問題具有非線性、不可微的特點(diǎn),傳統(tǒng)梯度下降方法無法求解,目前的求解方法主要有兩種[3]:一是將維度分組的協(xié)同進(jìn)化策略,基于降維思想分組求解分解后的低維簡單問題,后將各組低維解結(jié)合成高維解[4];另一種不分組方法是利用群智能算法對優(yōu)化問題整體求解。群智能算法基于種群迭代機(jī)制進(jìn)行優(yōu)化計(jì)算,具有潛在的并行性和分布式特點(diǎn)[5],全局搜索能力優(yōu)異,能有效求解復(fù)雜優(yōu)化問題[6-7]。這種整體求解方法能克服分組策略“兩步向前,合并向后”的缺點(diǎn)[1],如:賀桂嬌等[8]提出的改進(jìn)人工蜂群算法(artificial bee colony algorithm with at-tractor,BAABC)求解高維復(fù)雜優(yōu)化問題的優(yōu)勢明顯,魯棒性很好。Binh等[9]提出改進(jìn)布谷鳥搜索算法(improved cuckoo search,ICS)和混沌花朵授粉算法(chaotic flower pollination optimization algorithm,CFPA)求解多個無線傳感器的網(wǎng)絡(luò)區(qū)域覆蓋優(yōu)化問題。改進(jìn)算法在解決傳感器節(jié)點(diǎn)部署這個NP-Hard 問題時較其他算法具有時間優(yōu)勢。黃光球等[10]構(gòu)造的可全局收斂蝙蝠算法(bat algorithm,BA)能求解不同類型的大規(guī)模優(yōu)化問題,而且收斂速度快。
花朵授粉算法(flower pollination algorithm,F(xiàn)PA)[11]是Yang 于2012 年提出的一種新型群智能算法。該算法參數(shù)少,易實(shí)現(xiàn),易調(diào)節(jié),尋優(yōu)結(jié)構(gòu)新穎,尋優(yōu)能力良好,已在函數(shù)優(yōu)化[12]、無線傳感網(wǎng)[9]、電力系統(tǒng)[13]、作業(yè)車間調(diào)度[14]、形狀匹配[15]、背包問題[16]等領(lǐng)域得到廣泛應(yīng)用。國內(nèi)外已有不少學(xué)者對其易陷入局部最優(yōu)、尋優(yōu)精度低、后期收斂速度緩慢等缺點(diǎn)進(jìn)行了改進(jìn)。將該算法與其他智能優(yōu)化算法融合取得了不錯的效果:如Abdel-Raouf 等[17]將粒子群優(yōu)化算法融入到花朵授粉算法中;Lenin 等[18]將混沌和聲算法與花朵授粉算法進(jìn)行融合;Salgotra 等[19]提出了融合蝙蝠算法的BFP(bat flower pollination)算法。另外,Wang 等[20]認(rèn)為維間干擾會減緩算法的收斂速度,影響求解質(zhì)量,對解進(jìn)行逐維改進(jìn)并引入局部鄰域搜索策略;肖輝輝等[21]融合高斯變異和Powell法改善了算法的尋優(yōu)能力。
本文使用花朵授粉算法整體求解大規(guī)模優(yōu)化問題。采用反向?qū)W習(xí)策略增加種群多樣性,提高初始種群質(zhì)量;為降低大規(guī)模優(yōu)化問題的求解難度,降低算法迭代代價,避免維間干擾對算法收斂精度和速度的影響,設(shè)計(jì)了新的局部更新公式,發(fā)揮當(dāng)代最優(yōu)位置牽引作用,逐維動態(tài)改變配子相對受擾動程度和繼承程度,并接受更優(yōu)的結(jié)果作為下次迭代基礎(chǔ)。這種新的避免維間干擾的方法很好地彌補(bǔ)了算法易陷入“維度災(zāi)難”的缺陷,且與逐維更新評價方法相比,這種方法的時間代價具有明顯優(yōu)勢。最優(yōu)位置的牽引作用使得改進(jìn)算法僅需3~5 個種群個體即可達(dá)到滿意的優(yōu)化效果。15 個測試函數(shù)在3 種高維狀態(tài)100、1 000 和5 000 的數(shù)值仿真結(jié)果表明:相比于FPA、PSO(particle swarm optimization)[22]和BA,IFPA(improved flower pollination algorithm)的尋優(yōu)精度高、收斂速度快、魯棒性強(qiáng)且適應(yīng)度高,求解不同類型大規(guī)模優(yōu)化問題時優(yōu)勢明顯。
大規(guī)模優(yōu)化問題用公式表示如下:

其中,X=[x1,x2,…,xD]為決策變量,其取值不同對應(yīng)著優(yōu)化問題的不同決策方案,D表示決策變量的個數(shù)(即問題維度),本文維度設(shè)定為100、1 000和5 000。
F(x)表示優(yōu)化問題的目標(biāo)函數(shù),xi∈[xmin,xmax]表示邊界約束,xmax、xmin分別表示問題上下邊界。
FPA 是模仿顯花植物授粉過程而設(shè)計(jì)的隨機(jī)全局優(yōu)化算法。因花朵授粉對象的不同存在自花和異花兩種授粉方式。異花授粉是指相對較遠(yuǎn)距離的不同株植物之間的授粉,該方式一般需要傳粉者,傳粉者的行為具有萊維飛行的特征,F(xiàn)PA 的全局授粉(尋優(yōu))階段模擬了此授粉過程。自花授粉是指在較近的距離內(nèi),相鄰花朵依靠非生物手段實(shí)現(xiàn)成熟花粉粒成功傳遞并能正常受精結(jié)實(shí)的過程,F(xiàn)PA將這種授粉方式稱為局部授粉(尋優(yōu))。
一株植物能開好多花,每個花朵有百萬甚至上億的花粉配子。為簡單模擬授粉過程,假設(shè)每株植物僅有一朵花,每朵花獨(dú)有一個花粉配子。那么,一朵花或一個花粉配子的位置序列剛好是優(yōu)化問題的一個解。算法假設(shè)條件如下:
(1)生物異花授粉被看作全局授粉過程,該規(guī)則的數(shù)學(xué)表達(dá)式為:


其中,λ=3/2,Γ(λ)是標(biāo)準(zhǔn)的伽馬函數(shù)。
(2)非生物自花授粉即花朵的局部授粉,該演化機(jī)制的數(shù)學(xué)公式為:

其中,ε是均勻分布在[0,1]間的隨機(jī)數(shù);代表同類植物的不同花朵的花粉,即種群的兩個隨機(jī)解。
(3)花的繁衍概率與花朵間的類似程度存在比例關(guān)系。
(4)由p∈[0,1]來動態(tài)控制局部和全局授粉的轉(zhuǎn)換。物理上的接近和風(fēng)等自然因素的作用使得相鄰花朵更容易授粉成功,故局部授粉在整個授粉活動中占比較大,文獻(xiàn)[23]中已通過大量實(shí)驗(yàn)證明p值取0.2最為合適。
下面的偽代碼描述了FPA的基本步驟:

反向?qū)W習(xí)(opposition-based learning,OBL)策略[24]自2005 年出現(xiàn)以來,就經(jīng)常作為智能優(yōu)化算法的改進(jìn)策略出現(xiàn)[25-27],并衍生出透鏡成像反向?qū)W習(xí)策略[28]、正交反向?qū)W習(xí)[29]等。
反向?qū)W習(xí)策略基于對立點(diǎn)的定義:
定義1(對立點(diǎn)(opposite point))[26]假設(shè)在[Lb,Ub]上存在數(shù)x,則x的對立點(diǎn)為x′=Lb+Ub-x。那么,若p=(x1,x2,…,xd)為d維空間中的一個點(diǎn),其中xi∈[Lbi,Ubi],i=1,2,…,d,則其對立點(diǎn)為p′=(x′1,x′2,…,x′d),其中x′i=Lbi+Ubi-xi。
為說明反向?qū)W習(xí)初始化對種群多樣性和種群質(zhì)量的影響,圖1(a)和圖1(b)分別給出了IFPA 求解Sphere 函數(shù)時反向?qū)W習(xí)前后種群個體分布情況。其中,綠色圓圈代表花粉位置,紅色圓點(diǎn)代表全局最優(yōu)點(diǎn)。問題維度為3維,變量搜索空間為[-100,100],種群數(shù)為5。

Fig.1 Initial distribution of pollen圖1 花粉初始化分布圖
圖1清楚地顯示,反向?qū)W習(xí)使花粉個體探索了更多的位置,增加了種群多樣性,反向?qū)W習(xí)后有更多的花粉接近全局最優(yōu)點(diǎn),提高了初始種群質(zhì)量,為算法奠定了更好的迭代基礎(chǔ)。
FPA 在全局搜索中采用Lévy 飛行機(jī)制,它的較大跳躍和隨機(jī)步長的不均勻性一定程度上能規(guī)避配子陷入局部最優(yōu)點(diǎn),使其全局探索能力優(yōu)異[30]。圖2展示了50步Lévy飛行的情況。

Fig.2 A series of 50 consecutive steps of Lévy flight圖2 50步Lévy飛行
但局部開發(fā)能力相對不足,原因有以下兩點(diǎn):
(1)配子更新不受任何因素引導(dǎo),過于隨機(jī),雖能增強(qiáng)配子的多樣性,但難以滿足精準(zhǔn)開發(fā)的要求,也抑制了優(yōu)化過程的收斂速度。為提高算法的求解精度,將帶有隨機(jī)性信息的與帶有確定性信息的當(dāng)前最優(yōu)位置g*處理求得的差分向量代替原擾動中的,發(fā)揮當(dāng)代最優(yōu)位置的牽引作用,避免較大的隨機(jī)性所帶來的低搜索效率和較低收斂速度等問題[31]。
理論上,為達(dá)到相同的求解效果,搜索空間越大、種群規(guī)模越多,種群更新的代價越大,因此能較好地求解低維問題的智能算法在高維問題求解中表現(xiàn)一般。而這種改進(jìn)僅需要3~5 個種群個體就可以達(dá)到滿意的優(yōu)化效果,這是因?yàn)樵诜N群數(shù)量較少的情況下,改進(jìn)擾動中的差分算子能夠更容易地牽引整個種群朝當(dāng)前最優(yōu)位置靠近,有效解決了算法求解大規(guī)模優(yōu)化問題迭代代價大的問題,而且能夠使算法在迭代后期局部開發(fā)更加精準(zhǔn)。
(2)局部更新過程過于平緩,缺乏跳動,易陷入局部最優(yōu),這主要?dú)w因于該算法的更新機(jī)制。算法靠轉(zhuǎn)換概率p實(shí)現(xiàn)異花授粉和自花授粉的動態(tài)轉(zhuǎn)換,簡單易懂,易于執(zhí)行,也能通過合理設(shè)置p值大概率地進(jìn)行局部搜索,更加貼合現(xiàn)實(shí)。但是p值越小,進(jìn)行全局搜索的概率越小,即使某次迭代選擇全局搜索,也不能保證恰好發(fā)生遠(yuǎn)距離Lévy跳躍,配子初期可能逗留初始化位置附近,這種情況嚴(yán)重影響算法尋優(yōu)精度和收斂速度。而且多維優(yōu)化問題尤其是大規(guī)模優(yōu)化問題維數(shù)之間的干擾也很大程度上影響著算法性能和解的質(zhì)量。
原花朵授粉算法采用整體更新和評價策略求解,不能規(guī)避維間干擾現(xiàn)象[20]。Wang 等人為解決此問題提出逐維更新評價策略[20],但是該更新方式時間代價大,雖然對有些函數(shù)求解的精度較高,但魯棒性并不好。本文為打破維間干擾問題,提出局部開發(fā)的逐維隨機(jī)擾動策略,借鑒螢火蟲算法[32]相對熒光亮度公式,設(shè)計(jì)逐維隨機(jī)相對繼承程度m和逐維隨機(jī)相對受擾動程度2-m,m的公式表達(dá)為:

其中,k為花粉配子的最大繼承程度,與原花朵授粉算法保持一致取值為1,表示對上代花粉位置完全繼承;2π 是花粉粒子繼承系數(shù);|L(j)|是花粉粒子在第j維上的Lévy飛行距離。
由于每一維的Lévy 飛行距離不同,使得花粉個體的每一維不同程度地繼承上代信息,受到不同程度的擾動,解決了維間干擾問題,增加了種群多樣性,在當(dāng)代最優(yōu)位置的牽引作用下,最終提出的第j維的更新公式為:

該更新方式不僅解決了維間干擾問題,而且使得算法不會錯失Lévy 飛行的良好機(jī)制,如果較大跳躍配合全局搜索執(zhí)行,自然可以提升算法全局尋優(yōu)能力,如果較大跳躍配合局部開發(fā)執(zhí)行,就可以使花粉個體受到更大的擾動影響(Lévy 飛行距離越長,2-m的值越大)。在迭代初期種群差異較大時,花粉個體能受到更大的擾動影響,遍歷更大的范圍,因此不管進(jìn)行全局搜索還是局部搜索,都能保證算法初期花粉個體的跳躍能力,提高算法初期的迭代質(zhì)量和全局尋優(yōu)能力,有效解決算法易陷入局部最優(yōu)的問題。
被更新的花粉個體如果更優(yōu),就接受它并將它作為下代更新的基礎(chǔ),否則就舍棄該更新解,保持之前的迭代基礎(chǔ)。局部開發(fā)的逐維隨機(jī)擾動策略具體如算法1所示。


綜上,IFPA優(yōu)化流程如圖3所示。

Fig.3 Flow diagram of IFPA圖3 IFPA流程圖
為模擬改進(jìn)算法的尋優(yōu)過程,仍以Sphere 函數(shù)為例,展示花粉粒子反向?qū)W習(xí)初始化、迭代10 次、50次、100次、200次和500次后的位置分布,如圖4所示。為便于分析花粉粒子的多樣性,設(shè)置種群規(guī)模為50。
從圖4 可以看出,隨著迭代次數(shù)的增加,花粉個體以較快的收斂速度朝全局最優(yōu)解靠近。為分析全局最優(yōu)解附近的花粉多樣性,將50代、100代、200代和500代的局部放大圖展示為圖5所示。

Fig.4 Pollen iteration graph圖4 花粉迭代分布圖

Fig.5 Partial enlarged detail圖5 局部放大圖
從圖4 和圖5 可以看出,隨著迭代次數(shù)的增加,花粉離全局最優(yōu)解的距離越來越近,求解精度越來越高,但是花粉種群并沒有趨同,Lévy飛行的較大跳躍和隨機(jī)步長的不均勻性賦予決策變量的不同擾動,使得種群多樣性良好,花粉個體在迭代后期依然較為均勻地分布在全局最優(yōu)解附近。
為全面客觀地評價IFPA求解大規(guī)模復(fù)雜優(yōu)化問題的性能,選取15 個不同類型的測試函數(shù)[5,33]在3 種高維狀態(tài)下進(jìn)行測試。f1~f9為高維單峰函數(shù),可測試算法的收斂速度和尋優(yōu)精度,其中f5有非凸病態(tài)特點(diǎn),算法在對其優(yōu)化過程中很容易陷入局部極?。籪10~f15是高維多峰函數(shù),解空間中分布著大量局部極小點(diǎn),尋優(yōu)過程中極易陷入局部最優(yōu),極難找到全局最優(yōu)解,可有效測試算法跳離局部極值的能力及全局收斂性能,f10和f13是典型代表。測試函數(shù)的具體特征如表1所示。
本文設(shè)定結(jié)果精確度(accuracy,AC)和尋優(yōu)成功率(successful ratio,SR)來評價算法性能。AC反映算法迭代結(jié)果和測試函數(shù)理論最優(yōu)值的接近程度。若一個測試函數(shù)的理論最優(yōu)值是Xopt,迭代結(jié)果為Sbest,則精確度為AC=|f(Sbest)-f(Xopt)|,本文設(shè)定AC<0.000 1即稱此次運(yùn)行尋優(yōu)成功,收斂到全局最優(yōu)解;SR 即多次實(shí)驗(yàn)中算法收斂到問題全局最優(yōu)解的比例,若總實(shí)驗(yàn)次數(shù)為z,全局最優(yōu)解被收斂到的實(shí)驗(yàn)次數(shù)為z′,SR=z′/z×100%。

Table 1 Benchmark functions表1 基準(zhǔn)測試函數(shù)
為客觀評價IFPA 處理大規(guī)模優(yōu)化問題的性能,將其與經(jīng)典的PSO、BA 和FPA 進(jìn)行對比。在每次運(yùn)行中,將迭代1 000次作為這些算法的終止準(zhǔn)則。為防止偶然性誤差,產(chǎn)生有統(tǒng)計(jì)學(xué)意義的結(jié)果,對每個函數(shù)獨(dú)立運(yùn)行30 次,所有實(shí)驗(yàn)都在相同的條件下進(jìn)行,并記錄結(jié)果中的均值和標(biāo)準(zhǔn)差。種群數(shù)統(tǒng)一設(shè)為5,其他參數(shù)設(shè)置如表2所示。
基于上述參數(shù)設(shè)置,分3 種維度100、1 000 和5 000 進(jìn)行仿真實(shí)驗(yàn),實(shí)驗(yàn)筆記本操作系統(tǒng)為Win-dows10,主頻1.6 GHz,CPU 為Intel Core i5-8520,內(nèi)存8 GB,使用Matlab R2014a實(shí)現(xiàn)編程。

Table 2 Parameter settings of each algorithm表2 各算法參數(shù)設(shè)置
15個測試函數(shù)100、1 000和5 000維的實(shí)驗(yàn)結(jié)果如表3 所示,4 種算法中的最好結(jié)果加粗表示。從表3中的統(tǒng)計(jì)結(jié)果可知,除f14外,本文提出的IFPA在各個維度下的求解精度均優(yōu)于其他3種算法,尋優(yōu)精度大幅提高,以極高的尋優(yōu)成功率收斂到了f1~f4、f6、f8、f10~f13這10 個函數(shù)的全局最優(yōu)解,并能收斂到f3、f10和f13的理論最優(yōu)值,而3種對比算法對15個函數(shù)的尋優(yōu)成功率全為0。

Table 3 Simulation results of different functions表3 不同函數(shù)的仿真結(jié)果

續(xù)表
IFPA 在3 種高維狀態(tài)下次次都能收斂到f3、f10和f13的理論最優(yōu)值。IFPA 對函數(shù)f1、f2、f4、f6、f8、f11、f12的尋優(yōu)精度比對比算法中的最好結(jié)果提高了17~69個數(shù)量級。
3 種對比算法對f6的求解精度隨維度升高變化極大,特別是PSO 和BA,在1 000 和5 000 維時無法對解空間進(jìn)行任何有效搜索的概率高達(dá)93.4%~100%,魯棒性很差,而IFPA 的收斂精度依然能達(dá)到10-24以上并且變化極小。
IFPA 對f7、f9和f15的求解結(jié)果已較接近理論最優(yōu)值。IFPA對f7、f9的求解精度至少比對比算法提高了6、4個數(shù)量級。IFPA對f5的求解精度比對比算法提高了4~8 個數(shù)量級,對f14的求解精度也提高了0~16個數(shù)量級。
IFPA不但尋優(yōu)精度高,魯棒性也強(qiáng)。除f14的標(biāo)準(zhǔn)差隨維度升高變化稍大以外,另14 個函數(shù)的標(biāo)準(zhǔn)差極小且基本不隨維度改變,求解結(jié)果穩(wěn)定,證明了IFPA 的求解性能基本不受維度和函數(shù)類型的影響,與其他3 種算法相比優(yōu)勢突出,成功克服了“維數(shù)災(zāi)難”問題,適合處理大規(guī)模優(yōu)化問題。
算法跳出局部極值的能力和收斂速度都可通過適應(yīng)度收斂曲線直觀顯現(xiàn)。圖6 給出了4 種算法1 000 維下優(yōu)化8 個測試函數(shù)的適應(yīng)度收斂曲線,所有收斂曲線都是對應(yīng)算法30 次獨(dú)立運(yùn)行的平均值。除f2、f11、f12和f13外,其他函數(shù)的目標(biāo)函數(shù)值取以10為底的對數(shù)。
圖6 的收斂曲線清楚地顯示,較3 種對比算法,IFPA收斂速度更快,尋優(yōu)精度更高,跳出局部極值的能力更強(qiáng)。從圖6(c)、圖6(e)和圖6(h)中可以看出,IFPA 可分別在100、400 和300 代左右收斂到f3、f10和f13的理論最優(yōu)值。IFPA對f6的優(yōu)化效果極好,無法看到圖6(d)中BA和PSO的收斂曲線,是因?yàn)檫@兩種算法對f6搜索不到任何有效解,而IFPA對此函數(shù)求解精度依然很高。從圖6(b)、圖6(f)~圖6(h)可以看出,4種算法均有陷入局部最優(yōu)的情況,其中BA在迭代初期就易陷入局部最優(yōu),PSO和FPA幾次陷入局部最優(yōu),而IFPA的收斂曲線較為光滑,陷入局部最優(yōu)的次數(shù)偏少,收斂速度也明顯快于其他算法。

Fig.6 Convergence curve of 4 algorithms for different functions in 1000 dimensions圖6 1 000維下求解不同函數(shù)的4種算法的收斂曲線
高維狀態(tài)下,4 種算法中FPA 收斂速度較快,但求解精度偏差;PSO算法的收斂精度雖然是3個對比函數(shù)中最好的,但其收斂速度卻是4 個算法中最慢的,且容易陷入局部最優(yōu);IFPA 的全局優(yōu)化能力很強(qiáng),不但收斂速度快,尋優(yōu)精度高,而且不易陷入局部最優(yōu);BA表現(xiàn)最差。以f12的收斂曲線為例,IFPA迭代50 代左右求解精度已非常高,F(xiàn)PA 雖然前期收斂較快,但1 000次迭代后尋優(yōu)結(jié)果僅在1 300左右,離函數(shù)的理論最優(yōu)解相差很遠(yuǎn),雖然PSO 的最終求解結(jié)果比FPA 更優(yōu),但其收斂速度很慢,并且在70、130、200 代左右?guī)状蜗萑刖植孔顑?yōu),BA 不管在求解精度上還是收斂速度上都是最差的。
為了分析兩種改進(jìn)策略對算法性能的影響,從表1 中選取了7 個能代表尋優(yōu)精度不同提高程度的測試函數(shù)在100 維下進(jìn)行數(shù)值實(shí)驗(yàn),將IFPA 與僅采用反向?qū)W習(xí)策略的FPA算法(記為OFPA)、僅采用逐維隨機(jī)擾動的局部開發(fā)策略的FPA 算法(記為DFPA)和FPA 進(jìn)行比較,算法的參數(shù)設(shè)置與5.2 節(jié)相同。表4給出了4種算法的測試結(jié)果比較,最好結(jié)果加粗表示,其中T是30 次獨(dú)立運(yùn)行的總時間(單位:s),B、M、W、S分別表示最優(yōu)值、優(yōu)化均值、最差值和標(biāo)準(zhǔn)差。

Table 4 Comparison of test results of 4 algorithms(D=100)表4 4種算法的測試結(jié)果比較(D=100 維)
由表4 的比較結(jié)果可知,OFPA 提高了算法的求解精度和魯棒性,較FPA的求解精度更高,且不增加求解時間。例如,OFPA 在維持運(yùn)行時間的前提下,僅通過反向?qū)W習(xí)初始化,對f6的求解精度就提高了4個數(shù)量級;對f9求得的最優(yōu)值的精度只比IFPA低了2 個數(shù)量級。這說明反向?qū)W習(xí)初始化確實(shí)可以充分搜索解空間,保留更多的優(yōu)良個體,為算法奠定高質(zhì)量迭代基礎(chǔ),而且IFPA 的求解精度普遍比DFPA 高也證實(shí)了反向?qū)W習(xí)初始化的作用。
采用逐維隨機(jī)擾動策略設(shè)計(jì)的局部更新方式是IFPA性能改進(jìn)的有效算子,DFPA收斂到了f10和f13的理論最優(yōu)值,使f1、f6、f9、f11、f12的求解精度分別提高了58、33、5、17、31 個數(shù)量級,且求解結(jié)果穩(wěn)定,算法穩(wěn)定性強(qiáng)。DFPA 求解單峰函數(shù)的時間代價大概為FPA 的1.5~2.1 倍,求解多峰函數(shù)的時間代價為FPA 的1.3 倍左右,很好地平衡了精度提高和時間代價兩方面。
為有效處理大規(guī)模優(yōu)化問題,本文用反向?qū)W習(xí)策略提高FPA 初始種群質(zhì)量,在局部開發(fā)階段采用逐維隨機(jī)擾動策略對花粉個體進(jìn)行優(yōu)化,打破了維間干擾,降低了大規(guī)模優(yōu)化問題的求解難度,擴(kuò)大了花粉受擾動的程度,提高了算法的全局尋優(yōu)能力,并發(fā)揮當(dāng)代最優(yōu)位置的牽引作用,減少了算法迭代代價,有效解決了FPA收斂精度低、易陷入局部極值和“維數(shù)災(zāi)難”等問題,大大提高了算法求解大規(guī)模優(yōu)化問題的性能。在100、1 000 和5 000 的高維狀態(tài)下,IFPA的求解精度、收斂速度、魯棒性、對不同類型測試函數(shù)的適應(yīng)性等都明顯優(yōu)于FPA、PSO和BA,15個測試函數(shù)的最好結(jié)果基本全部由IFPA 求得,且求解精度基本不受維度影響。在今后的研究工作中,考慮將分組策略應(yīng)用其中,進(jìn)一步提高算法性能;細(xì)致研究參數(shù)p如何動態(tài)變化能使算法更優(yōu);將改進(jìn)算法應(yīng)用于實(shí)際工程問題。