一種新型的鰻魚群智能算法
【專利摘要】本發(fā)明公開了一種新型的鰻魚群智能算法,通過觀察鰻魚在洄游中總是跟隨鄰近的優(yōu)勢個(gè)體,在到達(dá)新的位置后對自身進(jìn)行調(diào)整,在極端環(huán)境中對自身性別進(jìn)行突變,這樣使得鰻魚群體更加順利的到達(dá)目的地。算法通過對鰻魚生活行為的分析,提取了鰻魚濃度適應(yīng)、鄰近學(xué)習(xí)、性別突變?nèi)齻€(gè)重要性為,通過對鰻魚三個(gè)重要行為的合理組織,引入等級劃分制度與標(biāo)識度的思想,提出了對于組合優(yōu)化問題的離散型鰻魚算法,對于離散個(gè)體間的鄰近學(xué)習(xí),本文采用了新穎的切割片段法,使的種群個(gè)體間的信息可以更加充分的傳遞。與遺傳算法、蟻群算法等其它智能算法相比,鰻魚算法具有更高的收斂速度與求解精度,提高了求解大規(guī)模優(yōu)化問題時(shí)的收斂速度與求解精度。
【專利說明】一種新型的鰻魚群智能算法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及智能【技術(shù)領(lǐng)域】,特別是涉及一種新型的群智能算法。
【背景技術(shù)】
[0002]基于對大自然生物規(guī)律的研究,各種群智能算法相繼被提出,來解決科學(xué)與工程領(lǐng)域大規(guī)模復(fù)雜的優(yōu)化問題。其中,比較經(jīng)典的群智能算法主要有蟻群算法、粒子群算法、人工蜂群算法、人工魚群算法等,并且已被廣泛的應(yīng)用在函數(shù)優(yōu)化,圖像處理,模糊控制,模式識別,大數(shù)據(jù)處理等領(lǐng)域。但是,對于大規(guī)模的優(yōu)化問題,這些算法普遍存在收斂速度慢、求解精度低等問題。而且,沒有一種算法可以對所有的問題均求得最優(yōu)解,不同的算法針對不同的問題會取得更好的結(jié)果。因此,對于不同類別的問題,開發(fā)新型的智能算法是非常有必要的。
【發(fā)明內(nèi)容】
[0003]本發(fā)明提供了一種新型的鰻魚群智能算法,算法通過對鰻魚生活行為的分析,提取了鰻魚濃度適應(yīng)、鄰近學(xué)習(xí)、性別突變?nèi)齻€(gè)重要性為,通過對鰻魚三個(gè)重要行為的合理組織,引入等級劃分制度與標(biāo)識度的思想,提出了對于組合優(yōu)化問題的離散型鰻魚算法,對于離散個(gè)體間的鄰近學(xué)習(xí),本文則采用了新穎的切割片段法。與遺傳算法、蟻群算法等算法相t匕,鰻魚群智能算法具有較快的收斂速度與求解精度。
【具體實(shí)施方式】
[0004]算法主要由種群初始化,濃度適應(yīng),標(biāo)識個(gè)體、鄰近學(xué)習(xí),性別突變等五個(gè)步驟組成。
[0005]初始化種群
設(shè)鰻魚的種群規(guī)模為S,初始種群可表示為 Xi =(x”...Xi,...Xn) I n ^ S (I)
其中,Xi為平均分配在空間里的解。
[0006]濃度適應(yīng)
對每個(gè)個(gè)體中相連的r個(gè)目的地進(jìn)行隨機(jī)排列來對個(gè)體進(jìn)行隨機(jī)調(diào)整,如果調(diào)整后個(gè)體的生存能力大于當(dāng)前個(gè)體,則用調(diào)整后的個(gè)體替代當(dāng)前個(gè)體,否則當(dāng)前個(gè)體保持不變。當(dāng)?shù)竭_(dá)指定調(diào)整次數(shù)后,停止調(diào)整,可用如下函數(shù)進(jìn)行描述:xi+i=f (xi, r) (2)
其中,xi+1為調(diào)整后的個(gè)體,r為調(diào)整半徑。函數(shù)表示對個(gè)體Xi中相鄰的r個(gè)數(shù)進(jìn)行隨機(jī)排列。
[0007]標(biāo)識個(gè)體
算法通過定義個(gè)體標(biāo)識度S來描述一個(gè)可行解的優(yōu)劣,可用如下函數(shù)進(jìn)行描述:
S=F+C (3)其中,S為個(gè)體的標(biāo)識度,F(xiàn)為個(gè)體的適應(yīng)值,C為個(gè)體當(dāng)前適應(yīng)值與上一代適應(yīng)值之差,即優(yōu)化距離。
[0008]跟隨鄰伴
算法一般跟隨距離自己較近的優(yōu)勢個(gè)體進(jìn)行移動,距離自身越近的優(yōu)勢個(gè)體,被學(xué)習(xí)的概率越大,反之越小。對于離散問題,可把適應(yīng)值相近的個(gè)體看做距離較近的個(gè)體。這里定義為學(xué)習(xí)系數(shù)β
β ^=1/(1+exp (- λ Fi/Fj)) (4)
其中,F(xiàn)i為當(dāng)前個(gè)體的適應(yīng)值,F(xiàn)j為被學(xué)習(xí)個(gè)體的適應(yīng)值,λ為調(diào)整算子;
通過引入等級劃分策略,可以加快算法的優(yōu)化速度,使算法達(dá)到搜索效果與效率的平衡,把種群劃分為兩個(gè)部分,其中,標(biāo)識度小的2/3為優(yōu)勢群體,標(biāo)識度大的1/3為劣勢群體,優(yōu)勢群體用于種群間的相互學(xué)習(xí),來進(jìn)行局部極小值的開發(fā),劣勢群體則在搜索空間進(jìn)行隨機(jī)探索,以發(fā)現(xiàn)新的局部極小值,對于離散問題,優(yōu)勢個(gè)體的鄰近學(xué)習(xí)采用一種新型的切割片段的方法,具體如下所示:
對于離散問題,問題的解可以化為數(shù)字的排列。片段切割則是把每個(gè)解進(jìn)行等間距分害IJ,并給每一段進(jìn)行編號。對于一個(gè)種群,對每個(gè)個(gè)體都進(jìn)行片段分割,然后每個(gè)個(gè)體根據(jù)學(xué)習(xí)系數(shù)選擇其它個(gè)體的片段,但片段選取遵循以下規(guī)則:選取片段的編號與自身已有的片段編號不能重復(fù),并且每個(gè)個(gè)體的尾片段只能選擇其它個(gè)體的尾片段,直到重新組成一個(gè)新的個(gè)體,對于個(gè) 體中重復(fù)的數(shù)字,則用未用到的數(shù)字進(jìn)行隨機(jī)替換。切割方法示意圖算例如圖2、圖3、圖4所示:
對于優(yōu)勢種群,算法采用片段切割的方法進(jìn)行個(gè)體間的離散學(xué)習(xí),算法隨機(jī)產(chǎn)生一個(gè)數(shù),如果學(xué)習(xí)系數(shù)β大于該隨機(jī)數(shù),則向此個(gè)體學(xué)習(xí),否則不向此個(gè)體被學(xué)習(xí)。如果學(xué)習(xí)后個(gè)體的適應(yīng)度大于當(dāng)前個(gè)體,則用學(xué)習(xí)后的個(gè)體替代當(dāng)前個(gè)體,否則當(dāng)前個(gè)體保持不變;對于離散問題,劣勢個(gè)體采用反轉(zhuǎn)與變異的方法進(jìn)行探索:
a.反轉(zhuǎn):隨機(jī)選擇兩個(gè)數(shù),讓兩個(gè)數(shù)之間的排序反轉(zhuǎn)
b.變異:隨機(jī)調(diào)換兩個(gè)數(shù)的位置
對于劣勢種群,對每個(gè)個(gè)體進(jìn)行反轉(zhuǎn)與變異操作,如果探索后的個(gè)體優(yōu)于當(dāng)前個(gè)體,則替代當(dāng)前個(gè)體,否則當(dāng)前個(gè)體保持不變。
[0009]變性調(diào)整
算法則根據(jù)不同性別的鰻魚對環(huán)境突變采用不同的策略這一思路,對不同類別個(gè)體的變性調(diào)整采用不同的方法。具體方法如下:
復(fù)制策略:當(dāng)一個(gè)個(gè)體突然變?yōu)樽顑?yōu)個(gè)體時(shí),則把當(dāng)前個(gè)體隨機(jī)復(fù)制給種群的另一個(gè)個(gè)體;
隨機(jī)策略:當(dāng)一個(gè)個(gè)體連續(xù)多次為最差解或者一個(gè)個(gè)體經(jīng)過指定的次數(shù)后目標(biāo)函數(shù)值仍然沒有提高,則對個(gè)體進(jìn)行初始化來模擬個(gè)體的變性調(diào)整行為。
【專利附圖】
【附圖說明】
圖1是切割前的種群個(gè)體,圖2是切割后的種群個(gè)體,圖3是調(diào)整后的種群個(gè)體。
【權(quán)利要求】
1.一種新型的鰻魚群智能算法,其特征在于:算法通過對鰻魚生活行為的分析,提取了鰻魚濃度適應(yīng)、鄰近學(xué)習(xí)、性別突變?nèi)齻€(gè)重要性為,通過對鰻魚三個(gè)重要行為的合理組織與引入等級劃分制度和標(biāo)識度的思想,提出了對于組合優(yōu)化問題的離散型鰻魚算法,算法主要由種群初始化、濃度適應(yīng)、標(biāo)識個(gè)體、鄰近學(xué)習(xí)、性別突變五部分組成,與遺傳算法、蟻群算法等其它智能算法相比,鰻魚算法具有更高的收斂速度與求解精度。
2.根據(jù)權(quán)利要求1所述的一種新型的鰻魚群智能算法,其特征在于:初始化種群中有一個(gè)個(gè)體是利用貪婪算法進(jìn)行初始化,其余個(gè)體進(jìn)行隨機(jī)初始化。
3.根據(jù)權(quán)利要求1所述的一種新型的鰻魚群智能算法,其特征在于:濃度適應(yīng)是對每個(gè)個(gè)體的一個(gè)片段進(jìn)行隨機(jī)排列來實(shí)現(xiàn)的。
4.根據(jù)權(quán)利要求1所述的一種新型的鰻魚群智能算法,其特征在于:濃度適應(yīng)過程先對每兩個(gè)個(gè)體定義學(xué)習(xí)系數(shù)β,然后產(chǎn)生一個(gè)隨機(jī)數(shù),如果β大于隨機(jī)數(shù),則采用切割片段法向此個(gè)體學(xué)習(xí),否則不向此個(gè)體學(xué)習(xí)。
5.根據(jù)權(quán)利要求1所述的一種新型的鰻魚群智能算法,其特征在于:性別突變的實(shí)現(xiàn)過程是當(dāng)一個(gè)個(gè)體突然變?yōu)樽顑?yōu)個(gè)體時(shí),則把當(dāng)前個(gè)體隨機(jī)復(fù)制給種群的另一個(gè)個(gè)體;當(dāng)一個(gè)個(gè)體連續(xù)多次為最差解或者一個(gè)個(gè)體經(jīng)過指定的次數(shù)后目標(biāo)函數(shù)值仍然沒有提高,則對此個(gè)體進(jìn)行隨機(jī)初始化。
【文檔編號】G06N3/00GK104008416SQ201410192137
【公開日】2014年8月27日 申請日期:2014年5月8日 優(yōu)先權(quán)日:2014年5月8日
【發(fā)明者】孫耀勝 申請人:孫耀勝