王守亞,張 科
(淮南師范學(xué)院,安徽 淮南232038)
粒子群算法[1-2](Particle Swarm Optimization,PSO)是1995年Eberhart和Kennedy從生物種群的覓食行為中得到啟發(fā),提出的一種求解優(yōu)化問題的智能算法.由于PSO算法具有實(shí)現(xiàn)簡(jiǎn)單、收斂速度快等優(yōu)勢(shì),在許多求解優(yōu)化問題的領(lǐng)域得到了廣泛應(yīng)用[3-6].但隨著對(duì)該算法求解精度和適用范圍[7-10]的提高,該算法的早熟收斂和易陷入局部極值[11-12]等問題急需解決.孫俊等[13]人把PSO算法結(jié)合量子行為,提高了搜索性能;申翠香等[14]人提出了一種改進(jìn)的粒子群算法,提高了全局搜索能力;封京梅等[15]利用慣性權(quán)重指數(shù)遞減的粒子群優(yōu)化算法求解最優(yōu)值,減少了迭代次數(shù),提高了精度;邱飛岳等[16]利用學(xué)習(xí)因子和混沌初始化策略提高了算法的精度等.
一些學(xué)者對(duì)PSO算法的研究提升了該算法的性能,但PSO算法在收斂速度和精度方面還有較大的提升空間.本文提出的一種基于logistic分布密度函數(shù)的粒子群優(yōu)化算法,通過正態(tài)分布初始化策略和logistic分布密度函數(shù)改進(jìn)權(quán)重值,和一些改進(jìn)的PSO算法進(jìn)行比較,本文提出的改進(jìn)算法計(jì)算時(shí)間更短、精度更高.
設(shè)一個(gè)種群由n個(gè)粒子組成,搜索空間為D維,種群X=(X1,X2,…,Xn),其中,Xi=(xi1,xi2,…,xiD)T為D維向量,對(duì)應(yīng)的速度Vi=(Vi1,Vi2,…,ViD)T,個(gè)體極值Pi=(Pi1,Pi2,…,PiD)T,種群極值Pg=(Pg1,Pg2,…,PgD)T,詳細(xì)的參數(shù)說明可參考文獻(xiàn),每次迭代,粒子的速度和位置更新公式為:
標(biāo)準(zhǔn)的粒子群算法的初始種群是隨機(jī)生成的,種群的分布質(zhì)量不佳,有待提高,可以把初始種群以正態(tài)分布的形式生成,提高初始種群質(zhì)量.此外,改變慣性權(quán)重ω是相關(guān)研究人員改進(jìn)粒子群算法的重點(diǎn),ω的大小體現(xiàn)了PSO算法的全局和局部搜索能力,本文提出的基于logistic分布密度函數(shù)的PSO算法將ω按照l(shuí)ogistic分布密度函數(shù)形式進(jìn)行變化,并進(jìn)行適當(dāng)?shù)男拚?可以縮短搜索時(shí)間,提高搜索精度,降低算法陷于局部最優(yōu)解的概率.
標(biāo)準(zhǔn)的PSO算法隨機(jī)生成初始化種群,種群分布如圖1所示,設(shè)種群數(shù)量N=30,種群質(zhì)量不高,會(huì)增加迭代次數(shù),降低求解精度等,本文采用正態(tài)分布的形式初始化種群,提高了種群的質(zhì)量,種群分布如圖2所示,設(shè)種群數(shù)量N=30,種群的分布服從公式(3).
圖1 隨機(jī)分布的種群
圖2 服從正態(tài)分布的種群
式中,u為期望,σ為方差.
與經(jīng)典的線性遞減權(quán)重法做比較,該權(quán)重ω的變化公式為:
式中,wmax和wmin分別為w的最大和最小值,t和tmax分別為當(dāng)前和最大迭代步數(shù).
線性遞減權(quán)重法易理解、易實(shí)現(xiàn),通過實(shí)驗(yàn)發(fā)現(xiàn),在部分函數(shù)求最優(yōu)解過程中表現(xiàn)不錯(cuò),但對(duì)復(fù)雜問題求解方面還存在不足.主要是該方法的ω是在迭代過程中,由最大值以同樣的速度不斷減少到最小值,在搜索前期,全局搜索能力較強(qiáng)時(shí)間持續(xù)短,在搜索后期,局部搜索能力較強(qiáng)時(shí)間持續(xù)也短,算法容易陷入局部尋優(yōu)中無法跳出.此外,ω固定的變化,也導(dǎo)致了該算法在求解非線性等復(fù)雜問題中存在不足.本文將ω的變化結(jié)合logistic分布密度函數(shù)進(jìn)行改進(jìn),logistic分布密度函數(shù)表達(dá)式為:
式中:u是位置參數(shù),σ是尺度參數(shù),logistic分布屬于位置-尺度參數(shù)族.
在本文中,取u=0,σ=10,并對(duì)logistic分布密度函數(shù)進(jìn)行一定的修正,令ω的表達(dá)式為:
將公式(4)和(6)進(jìn)行仿真,ω的曲線變化如圖3所示.
從圖3可以看出,改進(jìn)后的權(quán)重值ω,在迭代的前期和后期分別能夠保持一段時(shí)間的較大值和較小值,能夠平衡PSO算法的全局和局部搜索能力,可以縮短搜索時(shí)間,提高搜索精度.
圖3 改進(jìn)前后ω的變化曲線
改進(jìn)后的PSO算法實(shí)現(xiàn)過程如下:
①初始化粒子種群,使種群的分布服從正態(tài)分布;
②計(jì)算每個(gè)粒子的適應(yīng)度值fit;
③初始化個(gè)體最優(yōu)值pbest和全局最優(yōu)值gbest;
④判斷是否滿足收斂條件,滿足跳到⑦,否則執(zhí)行⑤;
⑤根據(jù)公式(6)計(jì)算權(quán)重ω,根據(jù)公式(1)、(2)分別更新粒子的速度和位置,計(jì)算fit,更新pbest和gbest.
⑥若符合輸出條件,算法結(jié)束,否則,返回繼續(xù)執(zhí)行;
⑦算法結(jié)束.
本文提出的改進(jìn)PSO算法與具有代表性的自適應(yīng)權(quán)重法(記為:PSO-1)、隨機(jī)權(quán)重法(記為:PSO-2)和線性遞減權(quán)重法(記為:PSO-3)做比較,通過四個(gè)典型函數(shù)進(jìn)行實(shí)驗(yàn),對(duì)本文的基于logistic分布密度函數(shù)的粒子群優(yōu)化算法(記為:PSO-4)性能進(jìn)行詳細(xì)分析.測(cè)試函數(shù)分別為典型的單峰值函數(shù)Sphere(記為:F1)、Step(記為:F2)和雙峰值函數(shù)Griewank(記為:F3)、Rastrigin(記為:F4),四個(gè)函數(shù)的最優(yōu)值均為0.
實(shí)驗(yàn)參數(shù)設(shè)置:種群數(shù)量設(shè)為50,搜索維度設(shè)為30,迭代次數(shù)設(shè)為100,加速度因子設(shè)為c1=1.5,c2=2.5,慣性權(quán)重設(shè)為ωmax=0.8,ωmin=0.4.電腦配置:型號(hào)為聯(lián)想D5050,處理器為Intel(R)Pentium(R)CPUG3250@3.20GHz,硬盤為500G,內(nèi)存為4G.表1到表4分別為四種算法在不同測(cè)試函數(shù)上的運(yùn)行結(jié)果,表中的平均值均是在運(yùn)行20次后的結(jié)果.
表1 算法在測(cè)試函數(shù)F1上運(yùn)行結(jié)果
表4 算法在測(cè)試函數(shù)F4上運(yùn)行結(jié)果
從表1可以看出,本文改進(jìn)的算法PSO-4在測(cè)試函數(shù)F1上的適應(yīng)度值是最接近最優(yōu)值0的,而且方差是最小的,說明此算法尋優(yōu)結(jié)果最穩(wěn)定;從表2可以看出,PSO-4在測(cè)試函數(shù)F2上的適應(yīng)度值比PSO-3略大,但方差是最小的,說明此算法尋優(yōu)結(jié)果最穩(wěn)定;從表3可以看出,PSO-4在測(cè)試函數(shù)F3上的適應(yīng)度值比PSO-1略大,方差也略大,但適應(yīng)度和方差數(shù)值均非常小,非常接近最優(yōu)值0,能夠滿足實(shí)際應(yīng)用;從表4可以看出,本文改進(jìn)的算法PSO-4在測(cè)試函數(shù)F4上的適應(yīng)度值為最優(yōu)值0的,而且方差0,說明此算法尋優(yōu)結(jié)果非常理想.從表1到表4可以看出,PSO-4平均運(yùn)行時(shí)間最短,小于或遠(yuǎn)小于另外三種算法在典型測(cè)試函數(shù)上的運(yùn)行時(shí)間.綜上,可以看出,平均運(yùn)行時(shí)間最短,搜索精度和穩(wěn)定度高,性能整體優(yōu)于其余三種算法.
表2 算法在測(cè)試函數(shù)F2上運(yùn)行結(jié)果
表3 算法在測(cè)試函數(shù)F3上運(yùn)行結(jié)果
圖4—圖7是四種PSO算法在四種典型的測(cè)試函數(shù)上的迭代過程.
從圖4可以看出,各種算法在在搜尋F1函數(shù)最優(yōu)值過程中,都存在一定的“早熟現(xiàn)象”,算法PSO-4求解精度最高,最接近F1函數(shù)的最優(yōu)值,收斂的速度略慢于PSO-1,但快于PSO-2和PSO-3.
圖4 Sphere函數(shù)迭代過程
從圖5可以看出,各種算法在在搜尋F2函數(shù)最優(yōu)值過程中,都存在一定的“早熟現(xiàn)象”,算法PSO-4求解精度最高,最接近F2函數(shù)的最優(yōu)值,四種算法的收斂速度基本一樣.
圖5 Step函數(shù)迭代過程
從圖6可以看出,PSO-1、PSO-2和PSO-3算法在搜尋F3函數(shù)最優(yōu)值過程中,存在一定的“早熟現(xiàn)象”,PSO-4算法收斂速度最快,收斂精度最高.
圖6 Griewank函數(shù)迭代過程
從圖7可以看出,PSO-2和PSO-3算法在搜尋F4函數(shù)最優(yōu)值過程中,存在一定的“早熟現(xiàn)象”,PSO-4算法收斂速度最快,收斂精度最高.
圖7 Rastrigin函數(shù)迭代過程
總體上看,PSO-4算法相比另外三種算法,在四種典型的測(cè)試函數(shù)尋優(yōu)過程中,都有較快的收斂速度和較高的精度值,在克服“早熟現(xiàn)象”方面,也優(yōu)于或較優(yōu)于另外三種算法.
通過正態(tài)分布的形式初始化種群和利用修正的logistic分布密度函數(shù)改進(jìn)權(quán)重值ω,提出本文的PSO-4算法,與另外三種算法在四種典型函數(shù)上進(jìn)行測(cè)試,結(jié)果表明:PSO-4算法在收斂速度、精度和抵抗“早熟現(xiàn)象”等方面都有較顯著的優(yōu)勢(shì).在后期對(duì)該算法在實(shí)際應(yīng)用等方面進(jìn)行進(jìn)一步的研究和優(yōu)化.
太原師范學(xué)院學(xué)報(bào)(自然科學(xué)版)2021年2期