具有量子行為的粒子群優(yōu)化算法慣性權重研究
粒子群優(yōu)化(PSO)算法是一種群智能優(yōu)化算法,最早由Kennedy和Eberhart于1995年共同提出,其基本思想是對鳥群捕食行為的仿生模擬,通過鳥群之間的集體協(xié)作,快速搜尋并找到最優(yōu)解。其基本的進化方程如下:
本文引用地址:http://m.butianyuan.cn/article/148708.htm其中,r1,r2∈[0,1]為均勻分布的隨機數(shù);C1,C2均是正常數(shù);t表示進化代數(shù);Vt,Xt分別表示每個粒子的速度和位置;Pg,Pt分別是粒子群的全局最優(yōu)和個體最優(yōu)。
為了改善基本PSO算法的收斂性能,Y?Shi等人提出了慣性權重的方法和用模糊控制器來動態(tài)自適應地改變慣性權重的技術。之后Jun Sun等人提出的具有δ函數(shù)形式的粒子群算法(QDPSO)使粒子群算法的計算更加簡單容易。最近一種新的QDPSO算法考慮了速度對位置的影響,通過速度的更新選擇位置的更新方程。在經(jīng)典粒子群算法的可調(diào)整參數(shù)中,慣性權重是非常重要的參數(shù),較大的權重有利于提高算法的全局搜索能力,而較小的權重會增強算法的局部搜索能力。因此,對這種新的QDPSO算法的速度項引用慣性權重ω,通過研究4種方案,發(fā)現(xiàn)慣性權重ω的變化對具有量子行為的粒子群算法的收斂性具有很大改善??梢哉f慣性權重的適當設置對新的QDPSO算法性能也起著重要的作用。
1 量子行為的粒子群優(yōu)化算法及其改進
1.1 QDPS0算法
文獻[4]的作者認為,若是在PSO系統(tǒng)下的個體粒子具有量子行為,則該粒子將會以與基本PSO算法中的粒子不同的方式運動。在量子空間,粒子的速度和位置不能再依據(jù)“不確定原理”被同時確定,所以提出了QDPSO算法。該算法改變了基本PSO算法的粒子更新策略,只用了粒子的位置向量。QDPSO算法的粒子進化方程如下:
其中,a,b,u∈[0,1]為均勻分布的隨機數(shù);pid是第i個粒子在第d維空間找到的局部最優(yōu)解,pgd是群體在第d維空間找到的全局最優(yōu)解;xid表示第i個粒子在第d維空間找到的當前值;而g必須滿足條件:,才能保證算法的收斂。
1.2 改進的粒子群算法
新的QDPSO算法利用個體粒子的速度產(chǎn)生一個介于[0,1]之間的數(shù)來代替原算法中的由計算機隨機產(chǎn)生的數(shù),用以選擇該粒子的位置更新方程。更新方程和參數(shù)設定參考文獻[5]。
本文考慮到慣性權重隨粒子的迭代次數(shù)變化影響個體粒子的速度引導該粒子向最優(yōu)解靠攏,所以采用4種方案對該改進算法進行研究。通過使慣性權重隨粒子的迭代次數(shù)變化,從而影響速度的更新方程:
其中,采用4種慣性權重ω方案來影響速度的更新,然后與QDPSO算法進行性能比較:
方案1 ω為從(1,0.875)遞減的函數(shù)ω=1-k?0.125/genmax。采用這種方案的QDPSO算法稱為ω1-QDPSO;
方案2 ω為從(0.9,0.4)遞減的函數(shù)甜ω=0.9-k?0.5/genmax。采用這種方案的QDPSO算法稱為ω2-QDPSO;
方案3 ω為一定值0.729 8,采用這種方案的QDPSO算法稱為ω3-QDPSO;
方案4 ω為一凹函數(shù)(ωstart-ωend)(t/tmax)2+(ω-ωend)(2t/tmax)+ωstart,其中ωstart=0.95,ωend=0.4,tmax為最大的迭代次數(shù)。采用這種方案的QDPSO算法稱為ω4-QDPOS。
綜上所述,選擇測試函數(shù)F1(x)和F2(x)分別為Sphere和Rastrigin(參數(shù)設置見文獻[4]),改進后的算法流程如下:
Step 1 初始化種群粒子的速度和位置;
Step 2 通過對兩個測試函數(shù)進行初始化計算,得到每個粒子的當前位置為粒子最佳位置Pbest,初始群體粒子位置的最優(yōu)值為群體最佳位置gbest;
Step 3 重新把粒子的位置代入測試函數(shù)進行計算,得到每個粒子新的適應值,將其與Pbest比較,若較好,則將Pbest設置為新位置;并將其與gbest比較,若較好,則將gbest設置為新位置;
Step 4 根據(jù)公式(6)更新粒子的速度;
pid控制相關文章:pid控制原理
評論