肖輝輝,萬常選,段艷明,喻 聰
1.江西財經(jīng)大學 信息管理學院,南昌 330013
2.河池學院 計算機與信息工程學院,廣西 宜州 546300
融合高斯變異和Powell法的花朵授粉優(yōu)化算法*
肖輝輝1,2,萬常選1+,段艷明2,喻 聰1
1.江西財經(jīng)大學 信息管理學院,南昌 330013
2.河池學院 計算機與信息工程學院,廣西 宜州 546300
花朵授粉算法(flower pollination algorithm,F(xiàn)PA)是最近提出的一種新型群智能優(yōu)化算法,由于其較好地解決了全局搜索和局部搜索的平衡性問題,且具有參數(shù)少,易實現(xiàn)等特點,已得到廣泛應用和研究,但現(xiàn)有研究對其參數(shù)的研究較少,同時該算法也存在演化后期收斂速度慢且易陷入局部極小等缺陷,使其應用范圍受到制約。為了提升FPA算法的整體性能,對其控制步長的縮放因子的取值進行了修正;提出了把高斯變異和Powell法融入到花朵授粉算法中的混合算法GMPFPA(flower pollination algorithm combination with Gauss mutation and Powell search method)。改進算法首先利用高斯變異對全局搜索進行擾動,增強種群的多樣性,提高全局探測能力,然后引入局部尋優(yōu)能力強大的Powell法提升其局部開發(fā)能力。通過12個高維經(jīng)典測試函數(shù)對比實驗,驗證了改進算法的有效性和優(yōu)越性。
高斯變異;花朵授粉算法(FPA);Powell法;最優(yōu)值;尋優(yōu)能力
群智能優(yōu)化算法是受自然界進化規(guī)律和自然界生物群體智能行為的啟發(fā)而提出的,由于其靈活、結(jié)構(gòu)直觀、適用性強等特點,已在社會、經(jīng)濟和自然科學等領域得到廣泛應用,成為人工智能中一個非常活躍的研究課題?;ǘ涫诜鬯惴ǎ╢lower pollination algorithm,F(xiàn)PA)[1]是英國劍橋大學學者Yang提出,模擬花朵授粉過程的一種新型元啟發(fā)式群智能優(yōu)化算法。由于該算法參數(shù)少、容易實現(xiàn)、易調(diào)節(jié),利用轉(zhuǎn)換概率參數(shù)p較好地解決了局部開發(fā)和全局搜索平衡問題,使其比粒子群算法(particle swarm optimization,PSO)[2]和遺傳算法(genetic algorithm,GA)[3]具有更好的尋優(yōu)能力[1]。目前,F(xiàn)PA算法已經(jīng)在函數(shù)優(yōu)化[4]、桁架結(jié)構(gòu)的尺寸優(yōu)化[5]、圖著色[6]、光伏系統(tǒng)[7]、經(jīng)濟調(diào)度[8]及產(chǎn)品裝配序列規(guī)劃[9]等眾多領域得到廣泛的應用。然而,該算法與蝙蝠算法[10]、粒子群算法類似,也存在易陷入局部最優(yōu)且進化后期收斂速度慢等不足。為此,眾多國內(nèi)外學者針對基本花朵授粉算法存在的缺陷進行改進:如Abdel-Raouf等人[11]把PSO算法融入到花朵授粉算法中,利用PSO算法來提高FPA算法初始解的質(zhì)量,從而提高算法的尋優(yōu)精度和收斂速度;Wang等人[12]認為維數(shù)之間的相互影響,使得算法的收斂速度慢和解的質(zhì)量不高,提出對解進行逐維改進和引入局部鄰域搜索策略來對算法進行改進,改進算法在尋優(yōu)速度和探索能力方面有所提高;Lenin等人[13]提出了基于混沌和聲算法的花朵授粉優(yōu)化算法,先采用混沌策略提高和聲算法種群的多樣性,再把和聲算法的最優(yōu)解作為花朵授粉算法的初始解,改進算法的尋優(yōu)精度和解的質(zhì)量得到一定程度的提升。
上述這些方法雖在一定程度上改進了FPA算法求解相關(guān)優(yōu)化問題的解的質(zhì)量和收斂速度,提高了算法的尋優(yōu)能力,但在避免陷入局部極值、全局探測能力、收斂速度等方面仍存在不足。同時,從花朵授粉算法的優(yōu)化機制可以看出,花朵授粉算法主要依賴花朵個體之間的相互影響和作用來實現(xiàn)尋優(yōu)功能,而種群個體本身缺乏變異機能,如果種群中某個體一旦受到某個局部極小約束后,則該個體就很難逃脫局部極小的制約。并且在演化進程中,種群中的少數(shù)超級花朵可能會把其他個體快速地吸引到其周圍,使得種群多樣性在進化中急劇下降;同時隨著種群的不斷進化,種群中的個體不斷向種群最優(yōu)個體靠近,其收斂速度變得非常緩慢甚至種群停滯進化,造成種群向前演化的能力喪失。為此,在求解地形復雜、多峰及高維的復雜優(yōu)化問題時,算法就很難尋找到全局最優(yōu)解。因此,提高花朵授粉算法進化過程中種群的多樣性,從而達到提升算法的全局尋優(yōu)能力,是對該算法進行改進的一種正確思路。
花朵授粉算法作為一種新型群智能算法,雖提出時間短,但從上述的研究現(xiàn)狀的闡述得知,F(xiàn)PA算法是一種非常有前途的工程優(yōu)化算法。目前國外眾多學者對此算法掀起了研究熱潮,文獻[1]中作者聲稱花朵授粉算法的性能超過粒子群算法和遺傳算法。而國內(nèi)對其研究起步較晚,相關(guān)的文章報道不多。因此迫切需要對其理論進行研究并擴展其應用領域,為今后的科學計算和工程實踐提供一定的參考。
同時,當前從國內(nèi)外學者對花朵授粉算法研究現(xiàn)狀可知,很少學者對基本花朵授粉算法中的3個關(guān)鍵參數(shù)p、λ、γ進行研究,而這3個參數(shù)的取值對算法性能具有重要的影響。從目前出版的文獻獲知,只有Draa[14]對3個參數(shù)中的p進行了研究,獲知p=0.2比p=0.8/0.5[1]效果要好。然而對于參數(shù)γ,文獻[1]在全局搜索的數(shù)學公式中丟失了γ,甚至在文中沒有提及,在這種情況下相當于γ=1;文獻[4]在全局搜索的數(shù)學公式中加入了參數(shù)γ,并建議γ取值為0.1,但并沒有對此參數(shù)進一步地研究,同時在附錄中也沒提供此參數(shù)的任何信息。這促使本文對參數(shù)γ進行研究,從實驗分析中可知,對絕大部分測試函數(shù)γ取值為16是最好的。
針對上述改進算法存在的缺陷和基本花朵授粉算法的局限性,本文提出了一種融合高斯變異和Powell法的花朵授粉算法的混合算法(flower pollination algorithm combination with Gauss mutation and Powell search method,GMPFPA)。通過對12個經(jīng)典函數(shù)進行尋優(yōu)測試,結(jié)果表明改進算法能夠有效地改善花朵授粉算法的尋優(yōu)能力,提高了其收斂速度和解的質(zhì)量,且能夠在一定程度上有效地避免早熟收斂。實驗結(jié)果驗證了改進算法的有效性和優(yōu)越性。
花朵授粉算法是模擬自然界中顯花植物花朵授粉的過程,該算法遵循如下4條理想規(guī)則[4]。
規(guī)則1生物異花授粉是帶花粉的傳粉者通過萊維飛行進行的全局授粉過程。該規(guī)則用數(shù)學公式表達如下:
其中,、分別是第t+1代、第t代的解;γ是步長的縮放因子;g*是全局最優(yōu)解;L是步長,L的計算如式(2):
其中,λ=3/2,Γ(λ)是標準的伽馬函數(shù)。
規(guī)則2非生物自花授粉是局部授粉過程。該規(guī)則的數(shù)學表達式如下:
其中,∈是[0,1]上服從均勻分布的隨機數(shù);、是相同植物種類的不同花朵的花粉。
規(guī)則3花的常性可以被認為是繁衍概率,繁衍概率與參與的兩朵花的相似性成比例關(guān)系。
規(guī)則4轉(zhuǎn)換概率p∈[0,1]控制全局授粉和局部授粉之間的轉(zhuǎn)換,由于物理上的鄰近性和風等其他因素的影響,在整個授粉活動中,p是局部授粉的一個非常重要的部分。
然而,在現(xiàn)實自然界中,每一棵顯花植物可以開好多朵花,每朵花產(chǎn)生數(shù)百萬甚至數(shù)十億的花粉配子。為了把問題簡單化,假設每棵顯花植物僅僅只開一朵花,且每朵花僅僅產(chǎn)生一個花粉配子。因此,問題經(jīng)過簡化后,意味著一朵花或一個配子就對應于優(yōu)化問題中的一個解?;谝陨详U述,文獻[1]描述了基本的花朵授粉算法的實現(xiàn)步驟。
任何群智能算法的參數(shù)取值對算法的性能影響是非常大的,在基本的花朵授粉算法中,有3個關(guān)鍵的參數(shù)p、λ、γ。參數(shù)p是全局搜索與局部搜索之間轉(zhuǎn)換的控制參數(shù);參數(shù)λ是全局搜索萊維飛行中的控制參數(shù);參數(shù)γ是控制步長的縮放因子。如何合理調(diào)整這3個參數(shù)的值,提升FPA算法的性能,是值得研究的問題。本文以下主要對參數(shù)γ的不同取值對FPA算法性能的影響進行分析。
為了驗證γ參數(shù)的不同取值對FPA算法的性能影響,通過12個測試函數(shù)[15]進行測試,并取γ=16與γ=1和γ=0.1進行比較。實驗時,各種參數(shù)設置為:操作系統(tǒng)為Windows 7,CPU為Intel Core i5-3470,主頻為3.20 GHz,內(nèi)存為4 GB,編程語言為Matlab R2012b。基本FPA算法參數(shù):轉(zhuǎn)換概率p=0.2,λ= 1.5,種群數(shù)sizepop=20,最大迭代次數(shù)為3 000。本文測試函數(shù)如表1所示,f1~f7為高維單峰函數(shù)(其中
f5是非凸病態(tài)且非常難找到全局最優(yōu)值的經(jīng)典高維單峰測試函數(shù),算法在優(yōu)化過程中容易陷入局部極小),該類函數(shù)主要用于測試群智能算法的尋優(yōu)精度;f8~f12為高維多峰函數(shù),此類函數(shù)具有大量局部極值點,在優(yōu)化時,很容易陷入局部最優(yōu),全局最優(yōu)值較難找到,求解難度隨著維數(shù)的增加而增大,尤其是函數(shù)f8。
為了防止偶然性帶來的誤差,程序獨立運行50次,分別取函數(shù)在不同維數(shù)(D=10,D=30,D=50)下的平均值(Mean)和標準差(Std)進行對比,實驗結(jié)果如表2~表4所示。表中“+”表示γ=16時FPA算法的尋優(yōu)能力優(yōu)于其他兩個取值,“-”表示γ=16時FPA算法的尋優(yōu)能力劣于其他兩個取值,“=”表示γ=16時FPA算法的尋優(yōu)能力與其他兩個取值相當。從表2中可以看出,當D=10時,有19個“+”,2個“-”,3個“=”;從表3中得知,當D=30時,有21個“+”,2個“-”,1個“=”;從表4中可以獲得,當D=50時,有20個“+”,4個“-”,0個“=”。為此,從表2~表4可以看出,γ=16時FPA算法在12個函數(shù)上的尋優(yōu)能力遠遠優(yōu)于其他兩個取值。
圖1是在γ不同取值(初始值0.1,步長0.05,終止值100)下的12個函數(shù)(分別獨立運行20次,每次迭代次數(shù)為3 000)平均值變化曲線圖。由圖1更直觀地觀察到,除函數(shù)f3和f8外,γ=16時FPA算法的尋優(yōu)能力顯著好于其他兩個取值;對于函數(shù)f3,γ=16時FPA算法的尋優(yōu)能力明顯比γ=0.1好,但比γ=1稍差一些;對于函數(shù)f8,γ=16時FPA算法的尋優(yōu)能力都差于其他兩個取值。文中γ的最大值取100,是因為萊維飛行步長乘了一個參數(shù)α(α取值為0.01),這樣相當于把步長的縮放因子控制在(0,1]之間,不至于步長過大,使FPA算法容易跳離最優(yōu)值而出現(xiàn)震蕩現(xiàn)象。
Table 1 Benchmark test functions表1 標準測試函數(shù)
Table 2 Performance comparison of FPAwith different values ofγ(D=10)表2 γ取不同值FPA算法的性能比較(D=10)
Table 3 Performance comparison of FPAwith different values ofγ(D=30)表3 γ取不同值FPA算法的性能比較(D=30)
綜合表2~表4和圖1可知,對于絕大部分測試函數(shù),γ=16時FPA算法的尋優(yōu)能力要比γ=0.1和γ=1好。
4.1 高斯變異
在智能優(yōu)化算法中引入變異算子,既可以增強種群的多樣性,又可以使算法避免陷入局部極小??挛髯儺惡透咚棺儺愂侵悄軆?yōu)化算法中兩種較常用的變異算子,這兩種變異算子都有各自的優(yōu)缺點??挛髯儺惖乃阉鞣秶雀咚棺儺惖乃阉鞣秶螅溥^大的步長容易跳離最優(yōu)值而產(chǎn)生較差的后代;而高斯變異在小范圍內(nèi)具有良好的搜索能力,這是因為其能以較大的概率產(chǎn)生較小的變異值。同時,基本的花朵授粉算法采用了Levy飛行機制,使得其能搜索的范圍很大。綜上所述,本文把高斯變異引入到FPA算法中,以提高FPA算法的尋優(yōu)能力。
高斯分布又名正態(tài)分布,是一種在工程、數(shù)學及
物理等領域都非常重要的概率分布,是在許多統(tǒng)計測試中應用最廣泛的一類分布。例如各種各樣的醫(yī)學現(xiàn)象(紅血蛋白量、紅細胞數(shù)以及實驗中的隨機誤差等)、物理現(xiàn)象(比如光子計數(shù))、心理學測試分數(shù)都被發(fā)現(xiàn)近似地服從正態(tài)分布。而高斯變異就是在原有的個體上加上一個服從高斯分布的隨機擾動向量來取代原先的個體。本文對FPA算法的全局搜索狀態(tài)實施高斯變異,以增強種群的多樣性,定義如下:
Table 4 Performance comparison of FPAwith different values ofγ(D=50)表4 γ取不同值FPA算法的性能比較(D=50)
Fig.1 Change curves of average values of functions with different values ofγ(D=30)圖1 函數(shù)平均值隨γ不同取值的變化曲線圖(D=30)
式中,N_iter為最大迭代次數(shù);t為當前的迭代次數(shù);b∈(1,0]為遞減變量;N(0,1)為服從均值為0方差為1的高斯分布的隨機向量;是第i個個體在迭代次數(shù)為t時的狀態(tài)。
由式(4)可知,具有高斯變異的FPA算法能夠充分利用當前種群中的每個個體的已有信息進行擾動,種群的多樣性得到增強,使算法能夠較好地避免陷入局部最優(yōu),提升了全局尋優(yōu)能力,同時也加快了收斂速度。在本文算法中,如果轉(zhuǎn)換概率p>rand,算法轉(zhuǎn)入全局搜索,則對當前解進行高斯變異。
4.2 Powell搜索法
Powell法又稱鮑威爾共軛方向法或方向加速法,它不必求函數(shù)導數(shù)值而是計算目標函數(shù)值來構(gòu)造共軛搜索方向的一種共軛搜索方向法,被公認為目前直接搜索法(模式搜索法、單純形搜索法、Powell法等)中最有效的算法之一。Powell法在每一階段的搜索過程是:首先依次沿n個已知的方向搜索,得到下一次搜索的基點,然后沿相鄰兩個基點的連線方向搜索得到新的基點,并用這個方向取代前面的n個方向之一。其本質(zhì)是一種搜索—試探—前進[16]的反復過程。Powell算法具體實現(xiàn)過程如下。
步驟1給定初始點x(0),n個線性無關(guān)的初始搜索方向d(0),d(1),…,d(n-1)及精度ε>0,令k=0。
步驟2 從x(0)出發(fā),依次沿d(0),d(1),…,d(n-1)進行一維搜索:
步驟5調(diào)整搜索方向,求出tn,滿足f(x(n)+tnd(n))= minf(x(n)+td(n)),得到x(0)=x(n)+tnd(n),k=0,返回步驟2。若j<n-1,令j=j+1,轉(zhuǎn)向步驟2;否則轉(zhuǎn)向步驟3。
步驟3 令d(n)=x(n)-x(0),如果||d(n)||<ε,停止迭代,輸出解x(n),否則轉(zhuǎn)步驟4。
步驟4求整數(shù)m,使得:
4.3 GMPFPA算法思想
由于基本花朵授粉算法存在收斂精度低,后期收斂速度慢,易陷入局部極小等缺陷,同時鑒于高斯變異能夠增加種群的多樣性,Powell法具有強大的局部尋優(yōu)能力優(yōu)點,本文把高斯變異和Powell法融入到花朵授粉算法。改進算法(GMPFPA)思想是:當?shù)螖?shù)小于等于總迭代次數(shù)一半時,只執(zhí)行帶高斯變異的FPA算法進行全局尋優(yōu)搜索,當?shù)螖?shù)超過總迭代次數(shù)一半后,會得到一個更優(yōu)的種群。在算法的進化后期,即[N_iter/2]+1(其中N_iter為總的迭代次數(shù))至N_iter,將執(zhí)行帶有Powell法且具有高斯變異的PFA算法。在進化過程中,先用帶高斯變異的PFA算法進行全局搜索并得到一個新的進化群體,然后對新種群中的每個個體分別產(chǎn)生一個隨機數(shù)r(r∈(0,1)),若r<p1,則Powell法以該個體的位置為初始值,進行局部尋優(yōu)。
4.4 GMPFPA算法流程
步驟1對GMPFPA算法的各個參數(shù)進行初始化,包括花朵種群數(shù)sizepop、轉(zhuǎn)換概率p、縮放因子γ、維數(shù)D等參數(shù)。
步驟2對花朵(對應目標函數(shù)的解)所在目標函數(shù)搜索空間的位置進行隨機初始化,并計算每個解的適應度值。
步驟3求解出當前的全局最優(yōu)值和其對應的最優(yōu)解。
步驟4由條件p>rand來判斷是否按式(2)、(4)、(5)、(9)對解進行更新,并對解進行越界處理:
步驟5由判斷條件p<rand來決定是否按式(3)對解進行更新,并對解進行越界處理。
步驟6對步驟4或者步驟5新解對應的適應度值進行評估,若優(yōu),則更新當前解和當前適應度值,否則保留當前解和當前適應度值。
步驟7若t>[N_iter/2],則轉(zhuǎn)步驟8,否則轉(zhuǎn)步驟4。
步驟8利用Powell法對新種群進行局部尋優(yōu),若當前的最優(yōu)值和最優(yōu)解優(yōu)于以前的最優(yōu)值和最優(yōu)解,則用當前的最優(yōu)值和最優(yōu)解替換以前的最優(yōu)值和最優(yōu)解,否則保留原有的最優(yōu)值和最優(yōu)解。
步驟9判斷結(jié)束條件,若滿足,退出程序并輸出最優(yōu)解及最優(yōu)值,否則,轉(zhuǎn)步驟4。
4.5 仿真實驗與結(jié)果分析
為了驗證本文算法的有效性和優(yōu)越性,采用第3章同樣的12個經(jīng)典函數(shù)進行測試,并與FPA、GMFPA(flower pollination algorithm combination with Gauss mutation)以及PFPA(flower pollination algorithm combination with Powell search method)進行比較。實驗測試環(huán)境同3.1節(jié)。算法中的參數(shù)設置為:縮放因子γ=16,轉(zhuǎn)換概率p=0.2[14],λ=1.5,Powell法中的判斷概率p1=0.05。
下面從算法的收斂精度、收斂速度、時間復雜度與參考文獻進行對比實驗,從而驗證本文算法的有效性和優(yōu)越性。
4.5.1 固定迭代次數(shù)的收斂精度對比
在實驗中,為了防止偶然性帶來的誤差和確保評價的客觀性及公平性,4種算法都獨立運行50次,算法的種群數(shù)都取20,最大迭代次數(shù)為3 000。
實驗仿真結(jié)果如表5所示。從表5中可知,與FPA、GMFPA、PFPA相比,除函數(shù)f4外,GMPFPA算法的收斂精度明顯好于其他3種算法,且其中f8與f10兩個函數(shù),GMPFPA算法能夠找到理論最優(yōu)值。雖然GMFPA算法也能找到理論最優(yōu)值,但對于函數(shù)f10,GMPFPA算法的平均值、最差值及標準差比GMFPA算法分別提高了1個數(shù)量級和2個數(shù)量級,而其他兩種算法沒找到理論最優(yōu)值。說明本文把高斯變異和Powell法一起融入到FPA算法中,是行之有效的,也驗證了本文算法的優(yōu)越性。另外從表5中可以看出,在12個測試函數(shù)中,其中有9個函數(shù)FPA算法的收斂精度排名最后,只有函數(shù)f6、f11及f12排名第三,從而說明本文分別把高斯變異和Powell法引入到FPA算法中是可行的。對于函數(shù)f1~f3、f5~f12,GMPFPA算法的尋優(yōu)能力(最優(yōu)值、平均值、最差值及標準差)優(yōu)于其他3種算法。這表明無論從尋優(yōu)精度、收斂速度,還是魯棒性,GMPFPA算法都取得較大幅度的提高,同時也說明GMPFPA算法在搜索過程中在一定程度上更能有效地避免陷入局部最優(yōu),體現(xiàn)了本文算法的優(yōu)越性。
由于篇幅所限,為了直觀地反映4種算法的收斂精度和收斂速度,本文畫出了8個函數(shù)的收斂曲線圖。圖2(a)~(h)分別是4種算法在維數(shù)30時的不同測試函數(shù)收斂曲線。從圖2中可以獲得,GMPFPA算法具有更高的收斂精度和更快的收斂速度。尤其從圖2(f)、(h)中可以得知,GMPFPA算法以較少的迭代次數(shù)就找到了理論最優(yōu)值,雖然GMFPA算法也能找到理論最優(yōu)值,但迭代次數(shù)比GMPFPA算法多,其他兩種算法無法找到理論最優(yōu)值。這表明GMPFPA算法的尋優(yōu)精度提高了,優(yōu)化過程提速了。同時,從圖2(a)、(b)、(f)、(g)和(h)可以看出,PFPA算法明顯陷入了局部最優(yōu),而GMPFPA算法能很好地跳出局部最優(yōu)。說明引入高斯變異能夠有效地使算法較好地避免陷入局部最優(yōu),提升了全局尋優(yōu)能力,同時也加快了收斂速度,從而佐證了GMPFPA算法的優(yōu)越性。
綜上所述,GMPFPA算法與FPA、GMFPA、PFPA算法相比,尋優(yōu)能力得到了明顯提高,也驗證了GMPFPA算法是有效可行的。
4.5.2 固定收斂精度的收斂速度對比
為了進一步驗證本文算法的有效性和優(yōu)越性,下面每個函數(shù)在收斂精度固定的情況下,獨立運行50次,取其收斂率、最小收斂代數(shù)及平均收斂代數(shù)與PFPA、GMFPA和FPA算法進行比較,其仿真結(jié)果如表6所示。實驗參數(shù)設置為:每種算法的種群數(shù)為20,函數(shù)維數(shù)為10,最大迭代次數(shù)設為2 500,在實驗
中迭代次數(shù)超過這個值,認為尋優(yōu)失敗。表中“—”表示尋優(yōu)失敗。
Table 5 Convergence accuracy comparison of 4 algorithms in a fixed number of iterations表5 4種算法在固定迭代次數(shù)的收斂精度對比
Fig.2 Convergence curves of 8 functions(D=30)圖2 8個函數(shù)的收斂曲線(D=30)
從表6中可知,對于函數(shù)f1~f2、f5~f12,GMPFPA算法的最小收斂代數(shù)、平均收斂代數(shù)及收斂率都優(yōu)于PFPA、GMFPA和FPA算法;對于函數(shù)f3,GMPFPA算法的最小收斂代數(shù)略差于GMFPA算法,但平均收斂代數(shù)好于GMFPA算法,且GMPFPA算法的最小收斂代數(shù)、平均收斂代數(shù)及收斂率都優(yōu)于PFPA和FPA算法;對于函數(shù)f4,GMPFPA算法的平均收斂代數(shù)略差于GMFPA算法,但最小收斂代數(shù)比GMFPA算法好,而PFPA和FPA算法無法收斂到目標精度。綜合圖2和表6,實驗結(jié)果表明,本文算法的收斂速度、魯棒性得到較好的提升,進一步說明了本文算法的優(yōu)越性和有效可行性。
4.5.3 算法的時間復雜度對比
對于一種改進的群智能優(yōu)化算法,一方面尋優(yōu)性能上要求比基本算法有較大的提高,同時也要求時間復雜度不能太高。為了全面地反映本文算法在時間復雜度上的可行性,本文采用了上述12個測試函數(shù)在不同維數(shù)上進行仿真實驗,實驗參數(shù)設置同4.5.1小節(jié),實驗結(jié)果如表7所示。從表7中可以獲得,GMPFPA算法的最小運行時間、平均運行時間都比較短,但比FPA算法稍長一些,這表明本文算法是可行的。
Table 6 Convergence speed comparison of 4 algorithms in a fixed accuracy表6 4種算法在固定精度下的收斂速度對比
4.5.4 與新近參考文獻算法的尋優(yōu)能力比較
在實際工程應用中,利用啟發(fā)式群智能算法對多峰、高維復雜優(yōu)化問題進行優(yōu)化時,普遍存在收斂精度低,優(yōu)化后期收斂速度慢,易陷入局部極小等問題。為了進一步驗證本文算法在優(yōu)化高維單峰、高維多峰及低維函數(shù)時的優(yōu)越性,突出本文算法的尋優(yōu)性能,將GMPFPA算法和參考文獻算法的優(yōu)化性能進行對比。鑒于篇幅限制,將GMPFPA算法分別與新近具有代表性的參考文獻[12,14]算法進行比較,且比較函數(shù)是來自參考文獻中的部分函數(shù)。為了比較的公平性,本節(jié)的實驗參數(shù)設置不同于第3章和第4.5.1小節(jié),本節(jié)算法的實驗參數(shù)設置(如種群數(shù)為50或30)跟參考文獻一致,且比較函數(shù)取自參考文獻。與文獻[12]對照時,其對比函數(shù)來自參考文獻[12],其中f4~f5為高維單峰函數(shù),f7~f10為高維多峰函數(shù),f11~f12為低維函數(shù),仿真實驗結(jié)果如表8所示,其中DDIFPA(FPA with dimension by dimension improvement)的數(shù)據(jù)來源于參考文獻[12]。從表8中可以獲知,本文算法優(yōu)化能力要優(yōu)于DDIFPA算法,特別是函數(shù)f11~f12,本文算法能找到理論最優(yōu)值,而DDIFPA算法沒有,且本文算法的標準差分別高于DDIFPA算法3個數(shù)量級和10個數(shù)量級。和參考文獻[14]對比,其比較函數(shù)取自文獻[14],f1、f6為高維單峰函數(shù),f8、f10、f11為高維多峰函數(shù),實驗對比結(jié)果如表9所示,其中MGOFPA(modified generalised opposition-based FPA)的實驗數(shù)據(jù)來自于參考文獻[14]。從表9中可知,對函數(shù)f8和f11,本文算法的標準差要略差于MGOFPA算法,但最優(yōu)值要好于MGOFPA算法,而其余3個函數(shù),本文算法的尋優(yōu)性能顯著優(yōu)于MGOFPA算法。
Table 7 Comparison of running time between GMPFPAand FPA表7GMPFPA與FPA算法的運行時間對比
綜上所述,本文算法不僅是在高維單峰函數(shù),還是在高維多峰函數(shù)、低維函數(shù)上的優(yōu)化能力要優(yōu)于參考文獻[12,14],進一步佐證了本文算法的優(yōu)越性和可行性。
Table 8 Comparison of optimization performance between GMPFPAand DDIFPA表8GMPFPA與DDIFPA算法的優(yōu)化性能對比
Table 9 Comparison of optimization performance between GMPFPAand MGOFPA表9GMPFPA與MGOFPA算法的優(yōu)化性能對比
本文提出了一種融合高斯變異和Powell法的花朵授粉算法。主要創(chuàng)新點有:(1)對基本花朵授粉算法中的步長縮放因子γ的取值進行了修正,提高了算法的尋優(yōu)能力;(2)把高斯變異引入到基本花朵授粉算法中,增強了種群的多樣性,較好地使算法在一定程度上避免陷入局部極小,提高了算法的收斂精度,加快了算法的收斂速度;(3)在算法中融入了Powell法,提升了算法的局部開發(fā)能力。實驗結(jié)果表明,改進算法的尋優(yōu)能力比基本的花朵授粉算法有較大的提高,也驗證了改進算法的有效性和優(yōu)越性。
在今后的研究中,討論p是否可以以更復雜的形式變化,并將花朵授粉算法應用于組合優(yōu)化等領域,同時從理論上對其收斂性進行論證。
[1]Yang Xinshe.Flower pollination algorithm for global optimization[C]//LNCS 7445:Proceedings of the 11th Internation Conference on Unconventional Computation and Natural Computation,Orléan,France,Sep 3-7,2012.Berlin,Heidelberg:Springer,2012:240-249.
[2]Kennedy J,Eberhart R.Particle swarm optimization[C]// Proceedings of the 1995 IEEE International Conference on Neural Networks,Perth,Nov 27-Dec 1,1995.Piscataway, USA:IEEE,1995:1942-1948.
[3]Holland J.Adaptation in natural and artificial systems[M]. Cambridge,USA:MIT Press,1992.
[4]Yang Xinshe,Mehmet K,He Xingshe.Multi-objective flower algorithm for optimization[J].Procedia Computer Science, 2013,18(1):861-868.
[5]Bekdas G,Nigdeli S,Yang Xinshe.Sizing optimization of truss structures using flower pollination algorithm[J].Applied Soft Computing,2015,37(C):322-331.
[6]Bensouyad M,Saidouni D.A discrete flower pollination algorithm for graph coloring problem[C]//Proceedings of the 2015 IEEE International Conference on Cybernetics,Gdynia,Poland, Jun 24-26,2015.Piscataway,USA:IEEE,2015:151-155.
[7]Alam D F,Yousri D A,Eteiba M B.Flower pollination algo-rithm based solar PV parameter estimation[J].Energy Conversion and Management,2015,101:410-422.
[8]Dubey H M,Pandit M,Panigrahi B K.Hybrid flower pollination algorithm with time-varying fuzzy selection mechanism for wind integrated multi-objective dynamic economic dispatch[J].Renewable Energy,2015,83:188-202.
[9]Jiao Qinglong,Xu Da,Li Chuang.Product assembly sequence planning based on flower pollination algorithm[J/OL].Computer Integrated Manufacturing Systems(2015-10-30)[2015-12-15].http://www.cnki.net/kcms/detail/11.3619.TP.20151030. 1647.012.html.
[10]Yang Xinshe,González J R,Pelta D A,et al.A new metaheuristic bat-inspired algorithm[C]//Studies in Computational Intelligence 284:Proceedings of the 2010 Nature Inspired Cooperative Strategies for Optimization,Granada,Spain,May 12-14,2010.Berlin,Heidelberg:Springer,2010:65-74.
[11]Abdel-Raouf O,Abdel-Baset M,El-Henawy I.A new hybrid flower pollination algorithm for solving constrained global optimization problems[J].International Journal of Applied Operational Research,2014,4(2):1-13.
[12]Wang Rui,Zhou Yongquan.Flower pollination algorithm with dimension by dimension improvement[J].Mathematical Problems in Engineering,2014(4):1-9.
[13]Lenin K,Reddy B R,Kalavathi M S.Shrinkage of active power loss by hybridization of flower pollination algorithm with chaotic harmony search algorithm[J].Control Theory and Informatics,2014,4(8):31-38.
[14]Draa A.On the performances of the flower pollination algorithm-qualitative and quantitative analyses[J].Applied Soft Computing,2015,34:349-371.
[15]Mirjalili S,Mirjalili S M,Lewis A.Grey wolf optimizer[J]. Advances in Engineering Software,2014,69(3):46-61.
[16]Gong Chun,Wang Zhenglin.Proficient in MATLAB optimization[M].Beijing:Electronic Industry Press,2009.
附中文參考文獻:
[9]焦慶龍,徐達,李闖.基于花朵授粉算法的產(chǎn)品裝配序列規(guī)劃[J/OL].計算機集成制造系統(tǒng)(2015-10-30)[2015-12-15]. http://www.cnki.net/kcms/detail/11.3619.TP.20151030.1647.012.html.
[16]龔純,王正林.精通MATLAB最優(yōu)化計算[M].北京:電子工業(yè)出版社,2009.
XIAO Huihui was born in 1977.He is a Ph.D.candidate at Jiangxi University of Finance and Economics.Now he is an associate professor at Hechi University.His research interests include intelligent computing and sentiment analysis.
肖輝輝(1977—),男,江西吉安人,江西財經(jīng)大學博士研究生,河池學院副教授,主要研究領域為智能計算,情感分析。
WAN Changxuan was born in 1962.He received the Ph.D.degree from Huazhong University of Science and Technology in 2003.Now he is a professor and Ph.D.supervisor at Jiangxi University of Finance and Economics,and the senior member of CCF.His research interests include Web data management,information retrieval,data mining and sentiment analysis.
萬常選(1962—),男,江西新建人,2003年于華中科技大學獲得博士學位,現(xiàn)為江西財經(jīng)大學教授、博士生導師,CCF高級會員,主要研究領域為Web數(shù)據(jù)管理,信息檢索,數(shù)據(jù)挖掘,情感分析。
DUAN Yanming was born in 1978.She received the M.S.degree in computer application from Jiangxi University of Science and Technology in 2009.Now she is a lecturer at Hechi University.Her research interest is intelligent computing.
段艷明(1978—),女,江西吉安人,2009年于江西理工大學獲得碩士學位,現(xiàn)為河池學院講師,主要研究領域為智能計算。
YU Cong was born in 1992.He is an M.S.candidate at Jiangxi University of Finance and Economics.His research interest is sentiment analysis.
喻聰(1992—),男,江西南昌人,江西財經(jīng)大學碩士研究生,主要研究領域為情感分析。
Flower Pollination Algorithm Combination with Gauss Mutation and Powell Search Method*
XIAO Huihui1,2,WAN Changxuan1+,DUAN Yanming2,YU Cong1
1.School of Information and Technology,Jiangxi University of Finance and Economics,Nanchang 330013,China
2.College of Computer and Information Engineering,Hechi University,Yizhou,Guangxi 546300,China
+Corresponding author:E-mail:wanchangxuan@263.net
Flower pollinate algorithm(FPA)is a novel swarm intelligence optimization algorithm which is proposed recently,and it has been widely researched and used because of its advantages of solving the balance problem of local search and global search,and having less parameters,being implemented easily and so on.However,there are less current researches on the parameter,and the speed of convergence in the later stage is slow,what is more,it is easy to fall into local optimizations,which incline to restrict the application of the FPA.In order to improve the overall perfor-mance of the FPA,firstly,this paper modifies the scaling factor of the control step size.Secondly,this paper proposes a hybrid algorithm GMPFPA(flower pollination algorithm combination with Gauss mutation and Powell search method). The Gauss mutation is utilized to perturb the global search of the GMPFPA,which enhances the diversity of population of the GMPFPA,and improves the global detection ability of the GMPFPA,and then the strong local search capability of the Powell search method is introduced to enhance the local development ability of the hybrid algorithm. Through the comparison experiment of 12 high dimensional classical test functions,the effectiveness and superiority of the improved algorithm are verified.
Gauss mutation;flower pollination algorithm(FPA);Powell method;optimum value;optimization ability
10.3778/j.issn.1673-9418.1601003
A
:TP301.6
*The National Natural Science Foundation of China under Grant No.F020204(國家自然科學基金);the Natural Science Foundation of Guangxi under Grant No.2013GXNSFBA019022(廣西自然科學基金);the University Science Foundation of Guangxi under Grant Nos.KY2015LX332,KY2015LX334(廣西高??茖W技術(shù)研究項目);the Graduate Innovation Project of Jiangxi Province under Grant No.YC2015-B054(江西省研究生創(chuàng)新項目);the Project of Key Laboratory for Computer Network and New Technology of Software of Hechi University under Grant No.2013-03(河池學院計算機網(wǎng)絡與軟件新技術(shù)重點實驗室資助項目);the Education Reform Project of Hechi University under Grant No.2014EB022(河池學院教改項目);the Science Foundation of Hechi University under Grant No.XJ2015QN003(河池學院基金項目).
Received 2016-01,Accepted 2016-03.
CNKI網(wǎng)絡優(yōu)先出版:2016-03-07,http://www.cnki.net/kcms/detail/11.5602.TP.20160307.1710.016.html
XIAO Huihui,WANG Changxuan,DUAN Yanming,et al.Flower pollination algorithm combination with Gauss mutation and Powell search method.Journal of Frontiers of Computer Science and Technology,2017, 11(3):478-490.