何豐 周鵬
1 引言
群體智能算法是根據(jù)自然界中生物的一些行為特點,以及智能活動行為而提出的一種人工智能算法模式,最早是20世紀(jì)80年代提出的,在這種模式下,算法利用群體優(yōu)勢,在沒有幾種控制和任何全局模型的前提下,為解決復(fù)雜問題提出新的思路。尤其是在數(shù)值尋優(yōu)方面,其收斂性和收斂速度都是較優(yōu)的。
2002年P(guān)assino和muller等提出了一種新的群體智能算法,細(xì)菌覓食優(yōu)化算法[1]和細(xì)菌趨藥性優(yōu)化算法[2],這種算法是根據(jù)細(xì)菌的覓食和趨化行為提出的,用于解決實數(shù)優(yōu)化問題有其明顯的優(yōu)勢。
2 菌群算法介紹
細(xì)菌覓食行為是:在營養(yǎng)基中可以實現(xiàn)游動和翻轉(zhuǎn),細(xì)菌個體移動到新的位置,在不同位置的細(xì)菌,會有不同的適應(yīng)度值,菌群算法中,如果一個細(xì)菌移動的新的位置的適應(yīng)度值更低,那么他就會翻轉(zhuǎn)向相反的方向運(yùn)動,否則就會繼續(xù)在這個方向運(yùn)動,這就是趨化,趨化若干代之后,細(xì)菌就會有新的位置,在新的位置的細(xì)菌根據(jù)優(yōu)勝劣汰的規(guī)則,保留位置好的一半細(xì)菌,位置差的一半淘汰,好的一半細(xì)菌以二分裂的方式產(chǎn)生新一代的細(xì)菌個體,新一代的個體將保留父代的所有信息。反復(fù)的執(zhí)行以上操作,菌群就會不斷的尋優(yōu),在最優(yōu)的位置不斷聚集。最終找到最優(yōu)點。
2.1 改進(jìn)的菌群優(yōu)化算法簡介
菌群優(yōu)化算法是在基本菌群算法的基礎(chǔ)上,對菌群算法的步驟做更細(xì)化的處理?;镜木核惴ㄔ谳^為簡單的環(huán)境下,尋優(yōu)效果極好,但是在多峰值,尋優(yōu)效果會大大下降,為了解決這個問題,引入了多宇宙策略,我們在菌群算法進(jìn)行的開始,對初始種群進(jìn)行分組,每個分組都可以獨立尋優(yōu),同時在各個分組獨立尋優(yōu)的同時,不同的宇宙之間還有移民和交叉,交換各個宇宙之中的優(yōu)秀個體,從而提高算法的效率,這種利用各組演化的獨立性和菌群算法結(jié)合的算法我們稱之為多宇宙菌群算法。
在多宇宙菌群算法之中,分為宇宙內(nèi)部演化和宇宙間操作,宇宙內(nèi)部的演化同菌群算法相似,初始化細(xì)菌位置,通過趨化復(fù)制和驅(qū)散,單個宇宙獨立的不斷尋優(yōu)。宇宙間操作包括移民和交叉。移民操作是各個宇宙之間按照一定的規(guī)則和比例。將各個宇宙中優(yōu)秀的個體淘汰掉其他宇宙之中的較差的個體,使得優(yōu)化的效率得到提高。宇宙間交叉是是為了實現(xiàn)宇宙間演化目標(biāo)的交互,避免算法的早熟收斂,同時克服算法收斂于局部最優(yōu)解的可能性。
多宇宙菌群覓食算法主要步驟如下:
1.隨機(jī)產(chǎn)生細(xì)菌種群菌落,使其均勻分布在覓食空間。按照尋優(yōu)覓食規(guī)模對菌群進(jìn)行分組,初始化細(xì)菌位置:
()