均勻設(shè)計在粒子群算法參數(shù)設(shè)定中的應(yīng)用
江善和,王其中,江巨浪
(安慶師范學(xué)院物理與電氣工程學(xué)院,安徽安慶246d11)
摘 要:針對依靠經(jīng)驗和試驗來確定粒子群優(yōu)化算法中的參數(shù)設(shè)定方法存在試驗工作量大且難以得到****的參數(shù)組合的問題,提出了一種改進(jìn)的粒子群算法,該算法利用均勻設(shè)計的思想設(shè)定算法的****組合參數(shù),把參數(shù)設(shè)定問題描述為均勻試驗設(shè)計中多因素多水平優(yōu)化設(shè)計問題,從而能夠以較少試驗很快設(shè)定算法參數(shù)的取值,以使算法獲得****性能。仿真試驗表明,利用均勻設(shè)計得到的參數(shù)組合可使粒子群算法獲得穩(wěn)健和高效的優(yōu)化效果,說明了該方法的可行性和有效性,且可以推廣到其他算法參數(shù)的設(shè)定。
關(guān)鍵詞:粒子群算法;均勻設(shè)計:參數(shù)設(shè)定
中圖分類號:tp 18 文獻(xiàn)標(biāo)識碼:a
1引 言
粒子群優(yōu)化(particle swarm optimization,pso)算法是由kenned j和eherhart r c于1995年提出的一種新型智能計算方法,并在多峰函數(shù)優(yōu)化、多目標(biāo)優(yōu)化、神經(jīng)網(wǎng)絡(luò)訓(xùn)練、控制系統(tǒng)等領(lǐng)域得到充分應(yīng)用:因此,pso已成為解決復(fù)雜優(yōu)化問題的有效技術(shù),吸引了眾多研究者的關(guān)注,新模型、新方法、新應(yīng)用層出不窮j5。
雖然粒子群算法發(fā)展迅速并取得了可觀的研究成果,但其算法模型中的關(guān)鍵參數(shù)設(shè)置和優(yōu)化還缺乏成熟的理論指導(dǎo)和研究,目前比較通用的方法是經(jīng)驗法和試探法。文獻(xiàn)[6]通過大量試驗分析了加速因子對算法收斂性能的影響;文獻(xiàn)[7-8]利用統(tǒng)計方法總結(jié)了算法中的種群規(guī)模、慣性權(quán)值、粒子速度的選擇萬法對算法整體性能的影響效果。但上述研究都足針對具體的研究對象或考察單一參數(shù)的沒定,實際上算法中參數(shù)之間是相互聯(lián)系、相互耦合的,具有復(fù)雜的關(guān)系,僅僅依靠粗糙的選擇和單參數(shù)分析很難找到參數(shù)的****組合,而且無法了解參數(shù)之間內(nèi)在聯(lián)系。
為此,本文提出將均勻設(shè)計應(yīng)用于粒子群算法參數(shù)設(shè)定的方法,將算法中控制參數(shù)的設(shè)定問題描述成多因素多水平的均勻試驗設(shè)計問題,通過較少試驗次數(shù)獲得參數(shù)的****配置,使算法處于****的運(yùn)行狀態(tài)。
2 基本粒子群優(yōu)化算法
1)算法原理假設(shè)在d維搜索空間中,有m個粒子組成一個粒子群,其中,第i個粒子的空間位置它是優(yōu)化問題的一個潛在解,將它代人優(yōu)化目標(biāo)函數(shù)
可計算出相應(yīng)的適應(yīng)值,根據(jù)適應(yīng)值可衡量置的優(yōu)劣;第z個粒子所經(jīng)歷的****位置稱為其個體歷史****位置,記為pi=(pi1,pi2,pi3,…,pid);同時,每個粒子還具有各自的飛行速度vi=(vi1,vi2.,…,vid)。所有粒子經(jīng)歷過的位置中的****位置稱為全局歷史****位置,記pg
=(pg1,pg2,pg3,…,pgd),相應(yīng)的適應(yīng)值為全局歷史****適應(yīng)值。對每一次迭代,粒子i在d維(1≤d≤d)空間的演化遵循如下方程進(jìn)行:
式中,m為慣性權(quán)值,它使粒子保持運(yùn)動的慣性,使其有擴(kuò)展搜索空間的趨勢,從而使算法具有全局搜索的能力;c1和c2都為正常數(shù),稱為加速因子,它使每個粒子向pi和pd位置加速運(yùn)動,表現(xiàn)出各粒子的自我認(rèn)知和相互協(xié)作r1和r2是2個在[0,1]范圍內(nèi)變化的隨機(jī)數(shù),它可以保證群體的多樣性和搜索的隨機(jī)性。
在優(yōu)化求解過程中,上述各參數(shù)相互聯(lián)系,共同維護(hù)粒子對全局和局部搜索能力的平衡。
2)算法流程基本pso算法流程如下:
step 1初始化設(shè)置粒子群的規(guī)模、慣性權(quán)值、加速因子、****允許迭代次數(shù)或適應(yīng)值誤差限,各粒子的初始位置和初始速度等。
step 2按目標(biāo)函數(shù)評份各粒子的適應(yīng)值。
step 3對每個粒子,比較其當(dāng)前適應(yīng)值和其個體歷史****適應(yīng)值,若當(dāng)前適應(yīng)值更優(yōu),則令當(dāng)前適應(yīng)值為其個體歷史****適應(yīng)值,并保存當(dāng)前位置為其個體歷史****位置。
step 4比較群體所有粒子的當(dāng)前適應(yīng)值和全局歷史****適應(yīng)值,若某粒子的當(dāng)前適應(yīng)值更優(yōu),則令該粒子的當(dāng)前適應(yīng)值為全局歷史****適應(yīng)值,并保存該粒子的當(dāng)前位置為全局歷史****位置。
|