文摘
我們提出了一個新的優(yōu)化框架,結合兩個元啟發(fā)式:遺傳算法(GA)和粒子群優(yōu)化(PSO)。 與使用第二種算法來處理第一種算法的最終結果的通常的雜交模型相反,我們的方法在競爭性方式下對同一群體并行地使用兩種算法。 這些算法可以協(xié)調(diào)和改進彼此的解決方案,從而在人口中可以實現(xiàn)更多樣化和更好的質(zhì)量。 另一個改善因素是根據(jù)最后一個群體的解決方案的多樣性和質(zhì)量來重新設置每次迭代中的人口規(guī)模和參數(shù)。 我們的方法在五個眾所周知的基準問題上進行了測試。 我們的方法的優(yōu)點通過將其性能與純GA和PSO,GA在GA之后工作的混合動力,反之亦然以及這些來自文獻的這些算法的混合方法進行比較來驗證。
關鍵詞
并行混合,遺傳算法,粒子群優(yōu)化,動態(tài)參數(shù)設置
介紹
雖然元啟發(fā)式優(yōu)化算法是解決復雜問題的有希望的技術,但它們都具有特定的優(yōu)點和缺點。因此,組合多元啟發(fā)式(稱為雜交)的思想引起了廣泛關注,一項調(diào)查見[6]。我們假設讀者很熟悉
遺傳算法(GA)和粒子群優(yōu)化(PSO)。雖然GA和PSO已經(jīng)被證明是成功的各種各樣的問題,每個都有自己的弱點[4,5]。例如,在GA中,如果未選擇個人,則其固有信息將丟失,而在PSO中,內(nèi)存將避免此問題。另一方面,PSO缺乏選擇算子,因此可能浪費資源給窮人。為了解決這個挑戰(zhàn),文獻[2,7]中提出了混合方法。在[7]中,通過將PSO的速度和位置更新規(guī)則與GA運算符選擇,交叉和突變相結合,引入了稱為“育種群”的混合GA-PSO方法。在[2]中,提出了一種從PSO開始的混合方法,其中每個迭代中嵌入一個GA,以提高特定數(shù)量的粒子。此外,在工業(yè)應用中使用混合GA-PSO技術的興趣越來越大[1,3]。對現(xiàn)有研究的綜述表明,GA和PSO的雜交技術的全部潛力還沒有被探索,并揭示了沒有一個平行的模式,這兩個算法都有公平的機會貢獻自己的優(yōu)勢。
我們的平行混合GA-PSO
我們的目標是開發(fā)先進的混合技術,用于結合GA和PSO,以更好地補償具有優(yōu)勢的缺點。 我們提出了一種新型并行混合GA-PSO方法(稱為P GA-PSO)。 我們的方法的一個特點是GA和PSO都是一樣的
在每次迭代中同時對相同人群進行工作并展示其能力的機會。 我們通過給予在一次迭代中表現(xiàn)更好的算法在下一次迭代中擁有更大份額的機會來強化兩者之間的競爭力。 此外,在每次迭代中,GA和PSO的參數(shù)在測試所得人口的多樣性和質(zhì)量改進之后被動態(tài)地調(diào)整。 現(xiàn)在我們介紹我們的方法的逐步描述:
1.初始化一個隨機人口Pop(1)大小Sbase
2.根據(jù)個人的適應性對流行(1)進行排序
3.考慮群體個體作為PSO的粒子,并將其作為第一代GA
4.通過PSO規(guī)則更新粒子的速度和位置,并應用GA算子選擇,交叉和變異
5.評估PSO的新粒子位置,并將GA中獲得的后代個體從交叉和突變添加到群體中,然后根據(jù)適應性對合并群體進行排序
6.分別計算PSO和GA的平均適應度MeanQ PSO均值QGA
7.基于平均質(zhì)量確定每個算法的下一次迭代(GA和PSO)中的份額,即對于較好的一個為0.6,對于另一個為0.4
8.分別基于GA和PSO的股份,從最佳的PSO和GA結果中填寫B(tài)asepop
9.計算Basepop的多樣性
10.如果多元化多于Mindiv,將其視為Newpop并轉(zhuǎn)到第13步;否則轉(zhuǎn)到下一步
11.考慮使用大小為SDivpop的擴展程序Divpop,并隨機填寫來自其他PSO和GA結果的獨特個人,基于股票
12.將Divpop合并到Basepop中以獲得Newpop
13.如果滿足終止標準,則將Newpop中的最佳個人報告為算法的全局最佳和最終結果,并停止;否則轉(zhuǎn)到下一步
14.將迭代計數(shù)器增加1
15.考慮Newpop作為新迭代的人口
16.檢查新迭代人數(shù)與先前迭代次數(shù)的改善,并重新設定GA和PSO的勘探和開發(fā)參數(shù)
17.返回步驟2
在第9步中,多樣性被定義為方差
-----
的解決方案空間中的個體,其中μpop是人口的平均點。
在步驟16中,使用矢量Imp = [imp 1,imp 2,imp3]來測量在之前的1,5和10次迭代中新迭代的改進。 GA參數(shù)交叉率CR和突變率MR,PSO參數(shù)W,C1,C2由問題復原,
具體規(guī)則的一般結構如下:
------1
實驗結果
我們進行了實驗,將我們的方法的性能與其他五種方法進行比較:純GA,純PSO,GA和PSO連續(xù)應用的混合(GA - →PSO或PSO→GA),以及 混合GA-PSO方法[7]。 對于我們的實驗,我們在具有Intel(R)Core(TM)i7,3.10GHz CPU和16GB RAM的PC上使用MATLAB。 我們已經(jīng)針對已經(jīng)在[7]中使用的以下五個著名的基準函數(shù)f i(x)進行了測試:
-----function
我們已經(jīng)在n = 30維度中解決了每個測試問題。 每次實驗重復30次。 表1顯示了每個基準測試功能的平均功能值,標準偏差和直到終止的平均執(zhí)行時間。 我們將基數(shù)和多樣化人口的大小設置為Sbase = 100,Divpop = 30。終止標準為Maxit = 1000。對于第一次迭代,我們設置了如下參數(shù):MR = mr 3,CR = cr 2,W = w 2,C1 = c1 2,C2 = c2 4。
-------table
結論
我們觀察到我們的方法(PGA-PSO)能夠找到最佳或接近最優(yōu)解。 與其他方法相比,我們的方法在幾乎所有情況下都勝過純GA,純PSO,GA - →PSO和PSO - →GA,因為它達到較低的平均值,并且相對較快。 此外,在許多情況下,我們的做法優(yōu)于[7] 在某些情況下,兩種方法的表現(xiàn)都是相似的; 只有在很少的情況下[7]比我們的方法更好。 對于未來的研究,我們建議通過使用特定于問題的規(guī)則進一步增強參數(shù)更新系統(tǒng),進一步改進我們方法的可靠性能。