国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

自適應(yīng)動態(tài)學(xué)習(xí)雞群優(yōu)化算法

2020-10-19 04:40顧艷春魯海燕沈莞薔
關(guān)鍵詞:公雞母雞適應(yīng)度

顧艷春,魯海燕 ,2,向 蕾,沈莞薔,2

1.江南大學(xué) 理學(xué)院,江蘇 無錫 214122

2.江南大學(xué) 無錫市生物計(jì)算工程技術(shù)研究中心,江蘇 無錫 214122

1 引言

群智能優(yōu)化算法是通過模擬自然現(xiàn)象的物理規(guī)律及自然界各類生物種群的生活習(xí)性和行為特點(diǎn)而構(gòu)造的一類隨機(jī)優(yōu)化算法,如遺傳算法[1-2](Genetic Algorithm,GA)、粒子群算法[3-4](Particle Swarm Optimization,PSO)、蝙蝠算法[5](Bat Algorithm,BA)、蜂群算法[6-7](Artificial Bee Colony,ABC)等。這些算法為解決大量存在于計(jì)算科學(xué)、工程科學(xué)、管理科學(xué)等領(lǐng)域的復(fù)雜問題提供了新的求解途徑。

雞群算法[8](Chicken Swarm Optimization,CSO)是2014年由孟獻(xiàn)兵等人提出的一種智能優(yōu)化算法,該算法具有原理簡單、易于實(shí)現(xiàn)和全局搜索能力較強(qiáng)等優(yōu)點(diǎn),因此被廣泛研究并應(yīng)用于圖像處理[9]、電網(wǎng)優(yōu)化[10]、傳感器與通信[11]等優(yōu)化問題[12-14]。但雞群算法也存在求解精度偏低、局部求解能力較弱等問題,因此,眾多學(xué)者進(jìn)行研究改進(jìn),提出了一系列改進(jìn)雞群優(yōu)化算法。李振壁等人[15]將模擬退火的思想引入雞群算法,提高了算法的尋優(yōu)性能。史旭棟等人[16]把雞群算法和人工蜂群算法相融合,平衡了算法的全局和局部搜索能力。張慕雪等人[17]在算法的公雞更新公式中添加了向當(dāng)前最優(yōu)個(gè)體和最差個(gè)體學(xué)習(xí)部分,提高了算法跳出局部極值的能力。鄭家明等人[18]在算法中用佳點(diǎn)集構(gòu)造初始種群,并引入了尋食速度因子和聚集度因子,提高了算法的穩(wěn)定性和求解精度。張瑩杰等人[19]改進(jìn)了雞群算法的邊界約束處理機(jī)制,提高了算法的收斂速度。韓萌[20]將耗散結(jié)構(gòu)引至公雞位置的更新中,并對隨機(jī)選擇的個(gè)體進(jìn)行差分變異操作,增強(qiáng)了算法的全局搜索能力。

上述改進(jìn)算法在一定程度上提高了算法的尋優(yōu)能力,但仍存在著一些不足。比如,有些改進(jìn)算法雖然提高了算法的求解精度,但算法的收斂速度較慢;還有些改進(jìn)算法在求解高維問題上,仍存在早熟收斂等問題。為此,本文提出自適應(yīng)動態(tài)學(xué)習(xí)雞群優(yōu)化算法(ADLCSO),利用反向覓食機(jī)制和非線性遞減的學(xué)習(xí)因子來動態(tài)地自適應(yīng)更新種群中的公雞位置,以提高公雞個(gè)體跳出局部極值的能力,從而提高求解精度和收斂速度;同時(shí)利用整個(gè)種群中個(gè)體間適應(yīng)度值之差定義了一種新的種群相似度指標(biāo),根據(jù)該指標(biāo)使母雞個(gè)體進(jìn)行自適應(yīng)更新,在保持種群多樣性的同時(shí)使母雞個(gè)體朝著對整個(gè)群體較為有利的方向覓食。通過對12個(gè)經(jīng)典測試函數(shù)的仿真實(shí)驗(yàn),結(jié)果表明上述兩個(gè)更新策略能夠有效地提高雞群算法的求解精度和收斂速度,特別是在求解高維問題上ADLCSO算法比標(biāo)準(zhǔn)雞群算法有顯著優(yōu)勢。

2 雞群優(yōu)化算法

雞群算法是模擬雞群的等級制度和覓食行為的一種隨機(jī)優(yōu)化算法,該算法遵循如下規(guī)則:

(1)將整個(gè)雞群分成若干子群,每個(gè)子群都由一只公雞,若干只母雞和小雞組成,即子群的個(gè)數(shù)由公雞的個(gè)數(shù)決定。

(2)按照每只雞適應(yīng)度值的大小將種群分為公雞、母雞和小雞三種,其中適應(yīng)度較好的若干個(gè)體為公雞,適應(yīng)度較差的若干個(gè)體為小雞,其余的為母雞。

(3)公雞、母雞、小雞三者之間的等級制度一旦確立將數(shù)代保持不變,等級制度每隔G(G∈[2,20])代更新一次。

(4)每個(gè)組內(nèi)母雞跟隨該組的公雞覓食,也可隨機(jī)偷取其他組內(nèi)食物;每組內(nèi)小雞跟隨媽媽母雞進(jìn)行覓食。

(5)每一只雞的位置都對應(yīng)優(yōu)化問題的一個(gè)解。假設(shè)在一個(gè)種群里有N個(gè)個(gè)體,公雞、母雞、小雞、媽媽母雞的數(shù)量分別為NR、NH、NC、NM。媽媽母雞是從母雞中隨機(jī)選取,每個(gè)母雞媽媽有若干個(gè)孩子小雞。

(6)在雞群中,不同等級的雞的位置更新方式有所不同。公雞作為適應(yīng)度最好的雞群,在整個(gè)覓食過程中占據(jù)主導(dǎo)地位,可以在更廣泛的空間里尋找食物。公雞位置更新公式如下:

其中,randn(0,σ2)是均值為0、標(biāo)準(zhǔn)差為σ2的一個(gè)高斯分布;fi為個(gè)體i的適應(yīng)度值;ε為充分小的正數(shù),以防止的分母取值為0;k為任一公雞個(gè)體的編號,且k≠i。

母雞位置更新公式如下:

其中,r1 為第i只母雞的配偶公雞個(gè)體的編號,r2 為隨機(jī)選取的任一公雞或母雞個(gè)體的編號,且r1 ≠r2,rand為[0,1]內(nèi)的隨機(jī)數(shù)。

小雞位置更新公式如下:

其中,xm,j(t)代表第t次迭代時(shí)第i只小雞的媽媽的位置,F(xiàn)L(FL∈[0,2])為跟隨系數(shù)。

3 自適應(yīng)動態(tài)學(xué)習(xí)雞群算法

本文在標(biāo)準(zhǔn)雞群優(yōu)化算法中引入了非線性遞減學(xué)習(xí)因子和反向覓食機(jī)制,使公雞個(gè)體在向全局最優(yōu)個(gè)體動態(tài)學(xué)習(xí)的同時(shí)還自適應(yīng)地進(jìn)行反向覓食,可提高算法跳出局部極值的能力;此外定義了種群相似度指標(biāo),根據(jù)該指標(biāo)使母雞個(gè)體進(jìn)行自適應(yīng)更新,可進(jìn)一步提高算法的性能。

其中,tmax為總迭代次數(shù);w(t)為第t次迭代的學(xué)習(xí)因子;wmax和wmin為學(xué)習(xí)因子的最大值和最小值(wmax=0.9,wmin=0.4)。

在算法迭代前期,學(xué)習(xí)因子較大,從而使公雞個(gè)體有較大的學(xué)習(xí)范圍,不僅能擴(kuò)大搜索區(qū)域,還能有利于跳出局部極值;而在算法后期搜索階段學(xué)習(xí)因子較小,有利于提高公雞群體的局部搜索能力,從而有利于找到全局最優(yōu)值。

3.1.2 公雞個(gè)體向最優(yōu)個(gè)體學(xué)習(xí)

公雞群體是整個(gè)種群中適應(yīng)度值最好的群體,它起著引領(lǐng)其他群體向全局最優(yōu)位置前進(jìn)的作用。為了加快整個(gè)種群搜索到最優(yōu)解的速度,本文使公雞個(gè)體在向自身學(xué)習(xí)的同時(shí)還要向當(dāng)前種群中最優(yōu)個(gè)體動態(tài)學(xué)習(xí),從而能夠使公雞個(gè)體盡快地進(jìn)入最優(yōu)解附近的區(qū)域。改進(jìn)的公雞更新公式如下:

其中,xbest(t)為第t次迭代最優(yōu)個(gè)體的位置。

3.1.3 反向覓食機(jī)制

公雞個(gè)體向當(dāng)前種群中最優(yōu)個(gè)體學(xué)習(xí)雖然能夠提升算法的收斂速度和求解精度,但在解決高維多峰函數(shù)時(shí)容易使大多數(shù)個(gè)體聚集在局部極值附近難以跳出,算法會出現(xiàn)早熟收斂的情況。

為了合理地判斷算法是否陷入局部極值,本文通過計(jì)算從第t+1-K次迭代到第t次迭代出現(xiàn)的K個(gè)最優(yōu)解的方差來檢測算法是否早熟收斂,計(jì)算公式如下:

3.1 基于反向覓食機(jī)制的公雞位置更新

3.1.1 非線性遞減學(xué)習(xí)因子

為了能較好地平衡雞群算法的全局和局部的搜索能力,本文在雞群算法的公雞更新公式中引入非線性遞減的學(xué)習(xí)因子,該學(xué)習(xí)因子的公式如下:

其中,δ(t)為第t+1-K次迭代到第t次迭代出現(xiàn)的K個(gè)最優(yōu)解的方差;xmean為K個(gè)最優(yōu)解的均值。當(dāng)δ(t)<ε(ε為充分小的正數(shù)),表明連續(xù)K次迭代最優(yōu)解沒有發(fā)生明顯變化,則可認(rèn)為算法出現(xiàn)早熟收斂現(xiàn)象。

為了提高算法跳出局部極值的能力,文獻(xiàn)[17]在算法陷入局部極值時(shí)使公雞個(gè)體向當(dāng)前整個(gè)種群中最差粒子學(xué)習(xí),使得整個(gè)雞群能夠以一定的概率跳出局部最優(yōu)區(qū)域,文獻(xiàn)[17]中的公雞更新公式為:

其中,xworst(t)為第t次迭代的最差解向量;Q為學(xué)習(xí)系數(shù),在文獻(xiàn)[17]中Q=0.5。

文獻(xiàn)[17]的改進(jìn)策略一定程度地增強(qiáng)了算法跳出局部最優(yōu)的能力,但使用常數(shù)學(xué)習(xí)系數(shù)不利于平衡全局與局部的搜索能力。為此,本文在公雞位置更新中引入反向覓食機(jī)制,當(dāng)算法陷入局部極值時(shí)使公雞個(gè)體向遠(yuǎn)離全局最優(yōu)位置的方向進(jìn)行覓食,并且在更新公式中加入了非線性遞減的學(xué)習(xí)因子。此時(shí)公雞個(gè)體的更新公式為:

其中,xbest(t)為第t次迭代的最優(yōu)個(gè)體的位置。

3.2 基于種群相似度指標(biāo)的母雞位置更新

3.2.1 種群相似度指標(biāo)

當(dāng)前種群的多樣性與算法的搜索能力密切相關(guān),當(dāng)種群多樣性較差時(shí),算法的全局搜索能力較弱。因此,一些學(xué)者通過定義種群中個(gè)體之間的密集度來衡量當(dāng)前種群多樣性的高低。王叢佼等人[21]定義群體適應(yīng)度值方差來反映種群中所有個(gè)體聚集程度,以此來改進(jìn)差分進(jìn)化算法。何瓊月等人[22]在改進(jìn)粒子群算法時(shí),用當(dāng)前粒子之間的歐氏距離來定義種群的相似度。

本文在雞群算法中引入種群相似度概念,利用當(dāng)前整個(gè)種群中每個(gè)個(gè)體與最優(yōu)個(gè)體之間的適應(yīng)度的差來定義整個(gè)種群的相似度,繼而根據(jù)種群的相似度對母雞個(gè)體進(jìn)行自適應(yīng)更新。當(dāng)兩個(gè)個(gè)體之間的適應(yīng)度差值較大時(shí),很容易判斷這兩個(gè)個(gè)體相似度較低;當(dāng)兩個(gè)個(gè)體之間的適應(yīng)度差值較小時(shí),對個(gè)體之間相似度的判斷則較為困難。為了合理度量兩個(gè)個(gè)體之間的相似度高低,本文在設(shè)計(jì)相似度指標(biāo)函數(shù)時(shí)需要遵循以下幾點(diǎn)要求:

(1)函數(shù)的值域?yàn)?0,1)。

(2)在自變量較小時(shí),函數(shù)值對自變量變化比較敏感,函數(shù)的圖像較陡。

(3)在自變量較大時(shí),函數(shù)值受自變量變化的影響較小,函數(shù)的圖像較緩。

遵循以上幾點(diǎn)要求,定義個(gè)體之間的相似度指標(biāo)公式如下:

其中,fi為個(gè)體i的適應(yīng)度值;fp為當(dāng)前種群中最優(yōu)個(gè)體的適應(yīng)度值;u(i,p)為個(gè)體i與最優(yōu)個(gè)體的相似度指標(biāo);a為固定常數(shù),大量實(shí)驗(yàn)表明,當(dāng)a=5 時(shí)算法求解效果較好。

通過分析公式(14)知,函數(shù)u為增函數(shù),當(dāng)兩個(gè)個(gè)體之間適應(yīng)度的差值越大時(shí),個(gè)體之間的相似度指標(biāo)越大,兩個(gè)個(gè)體之間相似度就越低。為了更加直觀地看出相似度指標(biāo)函數(shù)圖像前陡后緩的特點(diǎn),特地給出了函數(shù)圖像(見圖1)。

圖1 u 函數(shù)的曲線圖

由公式(14)可得到個(gè)體與最優(yōu)個(gè)體之間的N(種群個(gè)數(shù))個(gè)相似度指標(biāo)值,然后對這N個(gè)指標(biāo)值進(jìn)一步求均值來度量整個(gè)種群的相似度。種群相似度指標(biāo)s(t)的表達(dá)式如下:

其中,s(t)表示第t代的種群多樣性指標(biāo)。當(dāng)s(t)→1時(shí),種群中個(gè)體的相似度較低,種群多樣性較好;當(dāng)s(t)→0 時(shí),種群中個(gè)體的相似度較高,種群多樣性較差。

3.2.2 母雞個(gè)體更新方式

根據(jù)上述的種群相似度指標(biāo),本文改進(jìn)的母雞更新公式如下:

其中,h1 和h2 為雞群中的隨機(jī)個(gè)體的編號。若s(t)<rand,則第i只母雞選擇隨機(jī)粒子進(jìn)行隨機(jī)學(xué)習(xí),以增加種群多樣性;若s(t)≥rand,則第i只母雞選擇最優(yōu)個(gè)體和自身所在子群的公雞個(gè)體學(xué)習(xí),從而促使個(gè)體向最優(yōu)解靠近。

3.3 ADLCSO算法的求解步驟

自適應(yīng)動態(tài)學(xué)習(xí)改進(jìn)雞群算法(ADLCSO)的求解步驟如下所述:

(1)種群初始化。設(shè)置種群數(shù)量N,公雞個(gè)數(shù)NR,母雞個(gè)數(shù)NH,小雞個(gè)數(shù)NC,小雞媽媽的個(gè)數(shù)NM,進(jìn)化代數(shù)G,最大迭代次數(shù)tmax等相關(guān)參數(shù)。

(2)計(jì)算雞群里每個(gè)個(gè)體的適應(yīng)度值,設(shè)置整個(gè)雞群全局最優(yōu)位置,設(shè)置迭代次數(shù)t=1。

(3)根據(jù)公式(7)~(8)計(jì)算學(xué)習(xí)因子;根據(jù)公式(14)~(15)計(jì)算當(dāng)前種群相似度指標(biāo)值。

(4)若mod(t,G)=1,則根據(jù)雞群里每個(gè)粒子的適應(yīng)度值對雞群里每個(gè)個(gè)體進(jìn)行排序,建立等級制度。

(5)如果t≥K,則根據(jù)公式(10)~(11)計(jì)算方差δ(t),然后轉(zhuǎn)步驟(6);否則轉(zhuǎn)步驟(7)。

(6)如果δ(t)<ε,則轉(zhuǎn)步驟(8);否則轉(zhuǎn)步驟(7)。

(7)根據(jù)公式(9)對公雞個(gè)體進(jìn)行更新。

(8)根據(jù)公式(13)對公雞進(jìn)行位置更新。

(9)然后根據(jù)公式(16)對母雞位置更新。

(10)根據(jù)公式(6)對小雞位置更新。

(11)更新雞群中的全局最優(yōu)位置,t=t+1。

(12)若滿足算法終止條件,則迭代停止,輸出最優(yōu)解;否則轉(zhuǎn)步驟(3)。

4 數(shù)值實(shí)驗(yàn)與結(jié)果分析

4.1 算法參數(shù)設(shè)置和測試函數(shù)

本文通過12 個(gè)基準(zhǔn)測試函數(shù)對本文改進(jìn)算法(ADLCSO)進(jìn)行測試。為了保證比較的公平及合理性,令所有算法的種群規(guī)模為100,迭代次數(shù)為1 000,獨(dú)立運(yùn)行30 次,所共有參數(shù)保持一致。各算法的參數(shù)設(shè)置見表1。在12 個(gè)測試函數(shù)中,f1~f4為單峰函數(shù),f5~f11為多峰函數(shù),f12為固定維數(shù)的多峰函數(shù)。函數(shù)理論最優(yōu)值都為0,12個(gè)基準(zhǔn)測試函數(shù)表達(dá)式如下:

(1)Sphere函數(shù)

(2)BentCigar函數(shù)

(3)Discus函數(shù)

(4)High Conditioned Elliptic函數(shù):

表1 三種算法的參數(shù)設(shè)置

(5)Ackley函數(shù)

(6)Griewank函數(shù)

(7)Rastrigin函數(shù)

(8)Powell函數(shù)

(9)Alpine函數(shù)

(10)Quartic函數(shù)

(11)Zakharov函數(shù)

(12)Bukin函數(shù)

4.2 兩種改進(jìn)策略的有效性分析

為了驗(yàn)證反向覓食機(jī)制和種群相似度指標(biāo)的可行性和有效性,本文利用上述12 個(gè)函數(shù)對ADLCSO-I 算法和ADLCSO-II 算法進(jìn)行測試。這里ADLCSO-I 算法是在CSO算法中只引入基于反向覓食機(jī)制的公雞位置更新策略;ADLCSO-II 算法是在CSO 算法中只引入基于種群相似度指標(biāo)的母雞位置更新策略。ADLCSO-I算法和ADLCSO-II算法中的參數(shù)設(shè)置同表1中ADLCSO算法的參數(shù)設(shè)置相同。表2為對比實(shí)驗(yàn)結(jié)果,圖2為3種不同策略對單峰函數(shù)f1和多峰函數(shù)f7的收斂圖。

圖2 部分測試函數(shù)的收斂圖

由表2 和圖2 可以看出,使用兩種改進(jìn)策略的ADLCSO算法的尋優(yōu)精度、收斂速度和尋優(yōu)穩(wěn)定性都要優(yōu)于使用單一改進(jìn)策略的ADLCSO-I算法和ADLCSO-II算法,ADLCSO-I 算法在大多函數(shù)優(yōu)化上的表現(xiàn)優(yōu)于ADLCSO-II 算法。單獨(dú)使用反向覓食機(jī)制和種群相似度對標(biāo)準(zhǔn)雞群算法性能的改進(jìn)雖然有一定的效果但效果有限,組合的改進(jìn)策略可以更加有效地提高算法的尋優(yōu)性能。

4.3 學(xué)習(xí)因子的有效性分析

本文在公雞個(gè)體位置的更新公式中加入了非線性遞減的學(xué)習(xí)因子,為了驗(yàn)證該策略的優(yōu)越性,利用上述前9個(gè)測試函數(shù)對ADLCSO-I和ADLCSO-Iw進(jìn)行實(shí)驗(yàn)對比。這里ADLCSO-Iw算法是把ADLCSO-I算法中的學(xué)習(xí)因子替換成文獻(xiàn)[17]中的常數(shù)因子(w=0.5)。表3為實(shí)驗(yàn)結(jié)果,圖3表示兩種算法尋優(yōu)收斂曲線圖。

表2 不同改進(jìn)策略下ADLCSO算法的測試結(jié)果

由表3中數(shù)據(jù)可以看出,對于函數(shù)f1~f4和f8~f9來說,ADLCSO-I 算法的求解精度要優(yōu)于ADLCSO-Iw 算法。對于函數(shù)f5~f7,兩種學(xué)習(xí)因子求得的結(jié)果相同,但從圖3 上可以看出,ADLCSO-I 算法比 ADLCSO-Iw 算法的收斂速度有明顯的提高。綜上分析,無論是求解單峰函數(shù)還是多峰函數(shù),非線性遞減的學(xué)習(xí)因子總體上都要優(yōu)于常數(shù)學(xué)習(xí)因子。

4.4 與標(biāo)準(zhǔn)算法實(shí)驗(yàn)對比

本文通過求解上述12 個(gè)測試函數(shù)對標(biāo)準(zhǔn)雞群算法(CSO)、標(biāo)準(zhǔn)粒子群算法(PSO)和本文改進(jìn)算法(ADLCSO)的性能進(jìn)行比較。各算法參數(shù)設(shè)置見表1。表4 記錄了3 種算法求解的結(jié)果,圖4 表示在30 維問題上3種算法的收斂曲線圖。

圖3 ADLCSO-I算法和ADLCSO-Iw算法求解部分測試函數(shù)的收斂圖

4.4.1 尋優(yōu)精度分析

從表4中可以看出,對于大部分測試函數(shù),ADLCSO算法得到的平均值和標(biāo)準(zhǔn)差都為0,這說明ADLCSO算法的求解精度和穩(wěn)定性比其他兩種算法更高。

對于多峰函數(shù)f5、f9和f10,CSO 算法和 PSO 算法的尋優(yōu)精度明顯不如ADLCSO 算法,并且隨著維數(shù)的增加,CSO 算法和PSO 算法的尋優(yōu)效果有所下降,但ADLCSO 算法在高維上依舊能收斂到較高精度。對于多峰函數(shù)f6和f7,在10 維和30 維問題上CSO 算法和ADLCSO 算法的求解結(jié)果都達(dá)到了0,PSO 算法求解結(jié)果較差;但是在100 維的問題上時(shí),CSO 算法和PSO 算法都出現(xiàn)陷入局部極值,ADLCSO算法卻依舊能收斂到最優(yōu)解。對于函數(shù)f11,CSO算法和PSO算法陷入局部極值,但ADLCSO算法在求解100維問題時(shí)求解精度達(dá)到了2.175 8E-205。以上分析說明在求解高維問題時(shí),CSO算法和PSO算法都容易陷入局部極值,但ADLCSO算法依舊能收斂到較高精度,甚至對于大部分函數(shù)能求解到理論最優(yōu)值。

4.4.2 收斂速度分析

由圖4 可以看出,隨著迭代次數(shù)的增加,ADLCSO算法的收斂曲線下降很快,且在求解大部分函數(shù)時(shí)都能快速收斂到理論最優(yōu)解。

為了對比ADLCSO 算法在求解不同維數(shù)上的性能,本文給出了ADLCSO 算法在不同維數(shù)下的收斂圖(圖5)。從圖5 的收斂曲線可以得到,即使在求解高維問題時(shí),ADLCSO算法的收斂速度仍然很快。

表4 三種算法的性能測試結(jié)果

綜合以上分析,與CSO 算法和PSO 算法相比,ADLCSO算法在穩(wěn)定性、求解精度與收斂速度上均有顯著提高。

4.5 與其他改進(jìn)雞群算法的比較

將本文所提出的ADLCSO算法與PRCSO[17]、ICSO[18]、ICCSO[19]、DMCSO[20]和 GCSO[23]進(jìn)行對比,對比數(shù)據(jù)見表5。5種改進(jìn)雞群算法的參數(shù)設(shè)置和數(shù)據(jù)均來自于對應(yīng)的參考文獻(xiàn)。在表5 中,D為算法求解的問題維數(shù),T為算法最大迭代次數(shù)。

由表5可以看出,ADLCSO算法的求解結(jié)果整體上優(yōu)于其他5種對比算法。

維數(shù)為30,算法迭代次數(shù)為500 時(shí),ADLCSO 算法的尋優(yōu)效果明顯優(yōu)于ICSO 算法。對于函數(shù)f6和f7,ADLCSO 算法和ICSO 算法的求解結(jié)果都為0,但是由圖4的收斂曲線可知,在求解函數(shù)f6和f7時(shí),ADLCSO算法在迭代40次左右就收斂了,而從文獻(xiàn)[18]中可以看出ICSO算法在迭代300次左右才收斂。

維數(shù)為 100,迭代次數(shù)為1 000 時(shí),ADLCSO 算法求解的結(jié)果整體上優(yōu)于DMCSO 算法和GCSO 算法。對于函數(shù)f5,ADLCSO算法的求解的平均值稍差于GCSO算法;但是ADLCSO 算法得到的標(biāo)準(zhǔn)差卻為0,在求解穩(wěn)定性上ADLCSO算法明顯優(yōu)于GCSO算法。

以上分析說明,與以上5 種相關(guān)改進(jìn)算法相比,ADLCSO算法的求解性能最好。

4.6 ADLCSO算法的時(shí)間復(fù)雜度分析

在標(biāo)準(zhǔn)雞群算法CSO 中,假設(shè)解空間的維數(shù)為n,種群大小為N,各參數(shù)的初始設(shè)置、生成一個(gè)均勻隨機(jī)數(shù)、求目標(biāo)函數(shù)值、將所有個(gè)體的適應(yīng)值排序并得到當(dāng)代最優(yōu)個(gè)體適應(yīng)度值的時(shí)間分別為t1、t2、f(n)、t3,則算法初始化階段的時(shí)間復(fù)雜度為:

圖4 3種算法求解測試函數(shù)的收斂圖

圖5 ADLCSO算法在不同維數(shù)下的部分測試函數(shù)收斂圖

表5 不同改進(jìn)算法的對比實(shí)驗(yàn)結(jié)果

進(jìn)入迭代后,在雞群個(gè)體位置更新階段,假設(shè):迭代次數(shù)為m,公雞個(gè)數(shù)為N1,母雞個(gè)數(shù)為N2,小雞個(gè)數(shù)為N3,新產(chǎn)生個(gè)體的適應(yīng)度計(jì)算時(shí)間為f(n);公雞個(gè)體每一維進(jìn)行位置更新的時(shí)間為t4;母雞個(gè)體每一維進(jìn)行位置更新的時(shí)間為t5;個(gè)體每一維進(jìn)行位置更新的時(shí)間為t6;新舊個(gè)體適應(yīng)值比較互換的時(shí)間為t7;每一次更新種群等級制度的時(shí)間為t8;則雞群個(gè)體位置更新階段的時(shí)間復(fù)雜度函數(shù)為:

綜上所述,標(biāo)準(zhǔn)雞群算法的時(shí)間復(fù)雜度為:

ADLCSO 算法在標(biāo)準(zhǔn)雞群算法的基礎(chǔ)上增加了公雞位置更新中的學(xué)習(xí)因子、方差和母雞位置更新中的相似度指標(biāo)。假設(shè):計(jì)算一次迭代的學(xué)習(xí)因子的時(shí)間為t9,計(jì)算一次迭代的方差的時(shí)間為t10,計(jì)算當(dāng)前個(gè)體與最優(yōu)個(gè)體的相似度指標(biāo)的時(shí)間為t11,則計(jì)算學(xué)習(xí)因子、方差和相似度指標(biāo)的時(shí)間復(fù)雜度為:

從而ADLCSO算法的時(shí)間復(fù)雜度為:

由此可知,本文算法ADLCSO 和標(biāo)準(zhǔn)雞群算法CSO的時(shí)間復(fù)雜度依舊在同一個(gè)數(shù)量級。

5 總結(jié)

本文在雞群算法的基礎(chǔ)上提出了自適應(yīng)動態(tài)學(xué)習(xí)雞群優(yōu)化算法,在算法中引入反向覓食機(jī)制和種群相似度指標(biāo),分別對公雞和母雞的位置更新公式進(jìn)行自適應(yīng)調(diào)整,并在公雞位置更新公式中加入非線性遞減學(xué)習(xí)因子。反向覓食機(jī)制增強(qiáng)了種群跳出局部極值的能力,提高了算法的收斂速度和求解精度;非線性遞減學(xué)習(xí)因子的引入較好地平衡了算法全局探索和局部開發(fā)能力,增強(qiáng)了算法的穩(wěn)定性;通過種群相似度指標(biāo)對母雞的位置進(jìn)行自適應(yīng)更新,抑制了種群多樣性的衰減,提高了算法的求解精度。最后,通過對12 個(gè)經(jīng)典測試函數(shù)的仿真實(shí)驗(yàn),驗(yàn)證了ADLCSO算法的優(yōu)越性。

猜你喜歡
公雞母雞適應(yīng)度
改進(jìn)的自適應(yīng)復(fù)制、交叉和突變遺傳算法
母雞
兩只公雞
母雞下蛋
母雞
一種基于改進(jìn)適應(yīng)度的多機(jī)器人協(xié)作策略
說話的公雞
基于空調(diào)導(dǎo)風(fēng)板成型工藝的Kriging模型適應(yīng)度研究
聰明的公雞
自適應(yīng)遺傳算法的改進(jìn)與應(yīng)用*
江阴市| 溧水县| 云浮市| 蓝田县| 仪陇县| 苏州市| 炉霍县| 沛县| 德格县| 屯留县| 新龙县| 黔南| 霞浦县| 金昌市| 东丰县| 泰宁县| 夏津县| 永州市| 疏勒县| 阿鲁科尔沁旗| 廉江市| 湛江市| 宝丰县| 胶州市| 克什克腾旗| 湄潭县| 冕宁县| 长垣县| 黑龙江省| 康平县| 白朗县| 博野县| 福州市| 万州区| 西城区| 弥渡县| 彰化县| 休宁县| 扶沟县| 海原县| 邳州市|