摘要: 針對標(biāo)準(zhǔn)粒子群算法中種群多樣性喪失導(dǎo)致過早收斂、陷入局部最優(yōu)解等問題,借鑒自然界中動物群體分工協(xié)作的現(xiàn)象,引入粒子協(xié)作模式概念,不同協(xié)作模式代表了粒子的不同行為模式,群體分工協(xié)作可有效保持種群多樣性、增強(qiáng)算法尋優(yōu)能力和改善早熟收斂問題,基于分工協(xié)作優(yōu)點提出一種基于微粒群體分工協(xié)作的粒子群優(yōu)化算法.使用幾種典型的基準(zhǔn)測試函數(shù)進(jìn)行仿真試驗,結(jié)果顯示改進(jìn)后的算法尋優(yōu)能力顯著高于標(biāo)準(zhǔn)粒子群算法,與其他改進(jìn)算法相比較,所提算法的尋優(yōu)能力具有一定優(yōu)勢.
關(guān)鍵詞: 粒子群算法;群體協(xié)作;全局優(yōu)化
中圖分類號: TP391 文獻(xiàn)標(biāo)志碼:A
An Improved Particle Swarm Optimization Algorithm Basedon Group Division and Cooperation
YU Yong-hai(School of Information Engineering, Lanzhou Technology and Business College, Lanzhou 730101, China)
Abstract: In view of the loss of population diversity in the standard Particle Swarm Optimization algorithm, which leads to premature convergence and local optimal solution, the concept of particle cooperation mode is introduced based on the phenomenon of animal population division and cooperation in nature. Different cooperation modes represent different behavior modes of particles. Group division and cooperation can effectively maintain population diversity, enhance the optimization ability of the algorithm and improve the premature convergence problem. Based on this, a particle swarm optimization algorithm based on particle swarm division and cooperation is proposed. Several typical benchmark functions are used for simulation tests. The results show that the improved algorithm has significantly higher optimization ability than the standard PSO. Compared with other improved algorithms, the optimization ability of the algorithm proposed in this paper also has certain advantages.
Key words: particle swarm optimization (PSO); group collaboration; global optimization
粒子群算法是一種模擬自然界動物群體行為的搜索算法,由Kennedy博士和Eberhart教授于1995年提出,靈感來源于鳥類搜索食物的行為[1].該算法將動物個體抽象為可以獨立自由移動的理想粒子,通過粒子之間的信息交流和學(xué)習(xí),尋找最優(yōu)解.粒子群算法具有設(shè)計簡潔、易于實現(xiàn)、參數(shù)少和尋優(yōu)能力強(qiáng)等優(yōu)點,被廣泛應(yīng)用于各類優(yōu)化問題的求解,如自動化控制、電氣工程和通信技術(shù)等領(lǐng)域[2-3].近年來,也有很多研究人員對粒子群算法進(jìn)行了改進(jìn),以提高其性能和適應(yīng)性[4].
粒子群算法雖然簡潔高效,但也容易出現(xiàn)早熟收斂.改進(jìn)算法主要有4種類型,即參數(shù)調(diào)整優(yōu)化、粒子空間結(jié)構(gòu)改善、學(xué)習(xí)策略改進(jìn)和與其他算法相融合.韓江洪等[5]提出了自適應(yīng)慣性權(quán)重的方法,平衡了算法的收斂性和速度.李冰曉等[6]將種群分為潛力子群和普通子群,實行不同的進(jìn)化策略.鄧浩等[7]利用鄰域信息設(shè)置粒子參數(shù),并引入自適應(yīng)方法.宋威等[8]為粒子設(shè)計不同的學(xué)習(xí)策略和引力系數(shù).閆群民等[9]將粒子群算法和模擬退火算法相結(jié)合.這些改進(jìn)方法提高了算法的尋優(yōu)能力,但仍然存在過早收斂等問題,需要進(jìn)一步研究和探索更好的改進(jìn)方法.
上述研究表明,加入不同的搜索策略、保持種群的多樣性是改善算法尋優(yōu)能力的一個有效方向.聯(lián)想到自然界中的動物群落具有多種類型的群體分工協(xié)作行為,基于群體一致行為中存在的個體不同行為,本文提出一種基于微粒個體協(xié)作模式的粒子群優(yōu)化算法.粒子群中部分粒子有意采取與其他粒子不同的行動,使粒子群體保持較高的多樣性特征,提高了粒子群突破局部極值束縛的能力.
1 標(biāo)準(zhǔn)粒子群算法及其分析
標(biāo)準(zhǔn)粒子群算法是一種基于適應(yīng)度信息共享和群體統(tǒng)一行動的隨機(jī)搜索方法,粒子在搜索空間中不斷移動,這也是算法的尋優(yōu)過程.粒子群中每個粒子的位置代表了一個可行解,每個粒子都具有位置和速度兩個特征,位置自變量對應(yīng)優(yōu)化問題的目標(biāo)函數(shù)值就是該粒子的適應(yīng)度值,算法通過適應(yīng)度值來衡量粒子的搜索成果.算法首先產(chǎn)生一個既定數(shù)量的、具有隨機(jī)特征的粒子群,然后通過迭代更新粒子群中每一個粒子的位置和速度.在每一次迭代更新中,每個粒子會通過兩個要素來更新自己,一個是個體極值pBest,即粒子自身所經(jīng)歷過的最好位置;另一個是全局極值gBest,即整個粒子群所經(jīng)歷過的最好位置.每個粒子迭代更新的公式為
由式(1)和式(2)可知,粒子的速度更新由3個分量之和構(gòu)成.第1個分量代表“慣性”,也就是粒子對自身原有速度的維持;第2個分量是“個體經(jīng)驗”,也就是粒子會按照自己的搜尋經(jīng)驗來調(diào)整自己的速度,朝自己經(jīng)歷過的最佳位置移動;第3個分量是“群體經(jīng)驗”,它代表了粒子之間的信息共享,粒子會朝著整個群體經(jīng)歷過的最好位置移動.
標(biāo)準(zhǔn)粒子群算法在搜索的初始階段,粒子分布比較分散,搜索范圍大,但隨著搜索經(jīng)驗的積累,粒子會逐漸趨向于歷史最佳位置,導(dǎo)致粒子群多樣性降低.在搜索后期,“個體經(jīng)驗”和“群體經(jīng)驗”趨于一致,粒子群多樣性大幅降低,使算法容易早熟收斂在一個局部最優(yōu)值上.因此,在改進(jìn)算法時,需要保持粒子群的多樣性,以獲得更好效果.
2 基于群體分工協(xié)作的粒子群優(yōu)化算法
2.1 算法設(shè)計思想
自然界中的動物存在多種多樣的群體活動,如捕獵、遷徙、逃跑和嬉戲等,這些動物在進(jìn)行群體活動時,在合作中存在分工現(xiàn)象,即群體中的部分個體采取了與同伴不同的行動,群體之間實現(xiàn)了信息共享,采取了不同行動的個體更好實現(xiàn)了它們共同的目標(biāo).受到這種現(xiàn)象的啟發(fā),本文提出粒子群中的個體應(yīng)該具有不同的行為模式,即“協(xié)作模式”,粒子群中部分粒子有意采取與其他粒子不同的行動,即采用不同的方式更新自己的速度,使粒子群體保持較高的多樣性特征,提高粒子群突破局部極值束縛的能力.
標(biāo)準(zhǔn)粒子群算法要求粒子總是向已發(fā)現(xiàn)的群體最佳位置和個體最佳位置移動,這也就意味著粒子群會不斷向局部極值位置靠近并聚攏,聚集的粒子可以更精確找到局部極值點的位置,但也會伴隨著群體多樣性的喪失,最終算法收斂于該局部極值.為解決這一問題,基于分工協(xié)作的思想,新算法在粒子群多樣性即將喪失的情況下,讓部分粒子先拋棄原有移動規(guī)則,不受個體經(jīng)驗和群體經(jīng)驗的影響,使粒子得到穿越落入局部極值范圍的機(jī)會,然后再重新用原來的規(guī)則進(jìn)行移動,以達(dá)到在該范圍外發(fā)現(xiàn)更好適應(yīng)度值的目的.
2.2 粒子協(xié)作模式的設(shè)計
在新的粒子群算法中,粒子具有4種不同的協(xié)作模式(如圖1),即S1(正常移動)、S2(協(xié)同搜索)、S3(快速擴(kuò)展)和S4(精細(xì)搜索).S1和S2模式的粒子采取和群體一致的行動,即代表協(xié)作;S3和S4模式的粒子采取與群體不一致的獨立行動,即代表分工.在不同的協(xié)作模式中,粒子使用不同的方式移動自己的位置.
2.3 越界處理
2.4 對模式轉(zhuǎn)換條件的設(shè)定
3 仿真實驗與結(jié)果分析
3.1 測試函數(shù)及參數(shù)設(shè)置
為了驗證本文提出的基于群體分工協(xié)作的粒子群優(yōu)化算法的實際運(yùn)行效果,選取了目前常用的5種Benchmark函數(shù)進(jìn)行了測試.
3.2 仿真結(jié)果及分析
4 結(jié)論
本文針對粒子群算法容易早熟收斂并陷入局部最優(yōu)值的問題,借鑒了自然界中動物群體的行為模式,提出了一種改進(jìn)的基于群體分工協(xié)作的粒子群算法.實驗結(jié)果表明,該算法能有效保持粒子群體的多樣性,使粒子擺脫局部最優(yōu)值的束縛,防止算法早熟收斂,提高了算法的尋優(yōu)能力,為改進(jìn)粒子群算法提供了新的思路.
參考文獻(xiàn):
[1] J KENNEDY,R EBERHART.Particle swarm optimization[C]//Proc IEEE Int Conf on Neural Networks.USA:IEEE,1995,4:1942-1948.
[2] 楊曉輝,李瑞欣,姚凱,等.混沌改進(jìn)粒子群算法及其在儲能電站優(yōu)化調(diào)度中的應(yīng)用[J].南昌大學(xué)學(xué)報(理科版),2020,44(1):76-80,86.
[3] 黃英杰,姚錫凡,申輝陽.熵增強(qiáng)的混沌粒子群算法在車間調(diào)度中的應(yīng)用[J].組合機(jī)床與自動化加工技術(shù),2018(9):152-155.
[4] YUDONG ZHANG,SHUIHUA WANG,GENLIN JI.A comprehensive survey on particle swarm optimization algorithm and its applications[J].Mathematical Problems in Engineering,2015,9:1-38.
[5] 韓江洪,李正榮,魏振春.一種自適應(yīng)粒子群優(yōu)化算法及其仿真研究[J].系統(tǒng)仿真學(xué)報,2006(10):2969-2971.
[6] 李冰曉,萬睿之,朱永杰,等.基于種群分區(qū)的多策略綜合粒子群優(yōu)化算法[J].河南師范大學(xué)學(xué)報(自然科學(xué)版),2022,50(3):85-94.
[7] 鄧浩,李均利,胡凱,等.學(xué)習(xí)鄰域參數(shù)的粒子群算法[J].小型微型計算機(jī)系統(tǒng),2021,42(5):996-1002.
[8] 宋威,華子彧.融入社會影響力的粒子群優(yōu)化算法[J].計算機(jī)科學(xué)與探索,2020,14(11):1908-1919.
[9] 閆群民,馬瑞卿,馬永翔,等.一種自適應(yīng)模擬退火粒子群優(yōu)化算法[J].西安電子科技大學(xué)學(xué)報,2021,48(4):120-127.
[10] El-GALLAD A,EL-HAWARY M,SALLAM A.Enhancing the particle swarm optimizer via proper parameters selection[C]//IEEE Conference on Electrical and Computer Engineering,Canadian:IEEE,2002:792-797.
[11] 徐浩天,季偉東,孫小晴,等.基于正態(tài)分布衰減慣性權(quán)重的粒子群優(yōu)化算法[J].深圳大學(xué)學(xué)報(理工版),2020,37(2):208-213.
[12] 董紅斌,李冬錦,張小平.一種動態(tài)調(diào)整慣性權(quán)重的粒子群優(yōu)化算法[J].計算機(jī)科學(xué),2018,45(2):98-102,139.
[責(zé)任編輯:李 嵐]