吳進(jìn) 周昊
摘要:在管理、經(jīng)濟(jì)、工程和科技領(lǐng)域中,常需要求解多約束條件下的最優(yōu)解問(wèn)題,群體智能算法是常用的求解方法。細(xì)菌覓食優(yōu)化算法(BFO)是近年來(lái)提出的一種新型的群體智能算法,不僅在群體智能優(yōu)化理論中具有學(xué)術(shù)意義,在動(dòng)態(tài)、多目標(biāo)、多約束等復(fù)雜條件下的工程優(yōu)化求解問(wèn)題中也具有巨大的應(yīng)用價(jià)值。
關(guān)鍵詞:細(xì)菌覓食優(yōu)化算法;群體智能算法;智能優(yōu)化算法;BFO
中圖分類號(hào):TP18 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2020)06-0073-02
1背景
在實(shí)際的工程等領(lǐng)域中,人們常需要選擇最合理、最優(yōu)的解決方案,即“求解最優(yōu)解”問(wèn)題。從數(shù)學(xué)家求解多元函數(shù)極值問(wèn)題開(kāi)始,到解決非線性規(guī)劃問(wèn)題等,最優(yōu)化理論的研究逐步得到進(jìn)展,各種優(yōu)化方法成為研究熱點(diǎn)。20世紀(jì)90年代左右,學(xué)者們從大自然中找到靈感,研究了生物啟發(fā)式算法——群體智能算法,如PSO等。近年來(lái),學(xué)者從大腸桿菌在人體腸道內(nèi)的覓食行為,提出了細(xì)菌覓食優(yōu)化算法fBacterialForagingOpti-mization,BFO),成為群體智能算法的又一研究熱點(diǎn)。
2細(xì)菌覓食算法基本原理
細(xì)菌作為最簡(jiǎn)單的、最古老的無(wú)核單細(xì)胞生物,具有強(qiáng)韌的生命力,和對(duì)復(fù)雜環(huán)境的適應(yīng)性,顯示了其生存活動(dòng)過(guò)程中的優(yōu)化本能。大腸桿菌的覓食行為主要過(guò)程可以分為3個(gè)步驟:1)尋找可能存在的食物區(qū)域;2)判斷是否進(jìn)入該區(qū)域;3)經(jīng)過(guò)一段時(shí)間的食物消耗后,或者當(dāng)前環(huán)境變得惡劣不適宜生存,細(xì)菌消亡或者遷移到其他適宜的覓食區(qū)域。
BFO算法具有并行搜索、易跳出局部極小值等優(yōu)點(diǎn),被廣泛運(yùn)用于圖像處理、自動(dòng)控制、神經(jīng)網(wǎng)絡(luò)訓(xùn)練等多方面問(wèn)題。細(xì)菌覓食優(yōu)化算法主要以趨化、復(fù)制、消亡與遷移等三種算子進(jìn)行迭代和搜索最優(yōu)解,以及種群進(jìn)化。其中最關(guān)鍵的是趨化算子,模擬的是細(xì)菌的趨化過(guò)程,翻轉(zhuǎn)(Iumble)和游動(dòng)(swim)。
3細(xì)菌覓食優(yōu)化算法的優(yōu)化流程
步驟1:初始化種群,包括各種參數(shù)。如表1所示。
步驟2:設(shè)計(jì)評(píng)價(jià)函數(shù),并求出當(dāng)前群體各個(gè)體的最優(yōu)解。
步驟3:種群進(jìn)化。分為三層循環(huán):
(1)遷移循環(huán)(1-1+1)
(2)復(fù)制循環(huán)(k=k+1)
(3)趨化循環(huán)(j=i+1)
步驟四:算法結(jié)束,輸出群體最優(yōu)解。
整個(gè)算法流程圖如圖1所示。
3.2群體交流(即聚集性操作Swarming)
細(xì)菌覓食過(guò)程中會(huì)有交流聚集行為。細(xì)菌之間既有引力又有斥力以釋放信號(hào)。斥力使其他細(xì)菌保持安全距離,不要向其游動(dòng)。引力使細(xì)菌聚集在一起,吸引其他細(xì)菌向之游動(dòng)。
3.3消亡及遷移(Elimination and Dispersal)
當(dāng)細(xì)菌環(huán)境改變時(shí),如食物逐漸耗盡或者其他變化f如溫度突變等),該區(qū)域的細(xì)菌種群就會(huì)遷移到新的適宜的地方,或者就是死亡。在BFO算法中稱為消亡及遷移操作。
遷移操作讓細(xì)菌以概率Ped被隨機(jī)重新分配到另外的空間區(qū)域,原來(lái)的細(xì)菌個(gè)體死亡,并在解空間的其他隨機(jī)位置產(chǎn)生新個(gè)體。這些新個(gè)體也許比較接近全局最優(yōu)解,從而有利于趨向操作跳出局部最優(yōu)解,進(jìn)而可以在全局尋找最優(yōu)解。
4細(xì)菌覓食優(yōu)化算法的應(yīng)用分析
與其他群體智能算法相比,細(xì)菌覓食優(yōu)化算法比較簡(jiǎn)單、靈活,也可以與其他各種算法結(jié)合產(chǎn)生新的優(yōu)化算法,可以解決多方面的應(yīng)用問(wèn)題,具有比較強(qiáng)的適應(yīng)性和魯棒性??梢杂糜趫D像處理方面,如圖像分割、圖像增強(qiáng)、特征抽取、人臉識(shí)別、圖像配準(zhǔn)等;可用于電力系統(tǒng)優(yōu)化方面,如最優(yōu)潮流設(shè)計(jì)、發(fā)電控制參數(shù)優(yōu)化、電力系統(tǒng)經(jīng)濟(jì)調(diào)度、諧波評(píng)估等;可用于智能控制方面,如電磁裝置優(yōu)化控制、太陽(yáng)能追蹤控制系統(tǒng)、非線性動(dòng)態(tài)系統(tǒng)等;可用于參數(shù)優(yōu)化選擇方面,如各種控制器的參數(shù)設(shè)計(jì)等;可用于經(jīng)濟(jì)管理方面,如車間作業(yè)調(diào)度問(wèn)題、股票預(yù)測(cè)等;還有生物信息學(xué)DNA序列主題發(fā)現(xiàn)等。但是細(xì)菌覓食算法也有不足,如算法參數(shù)比較多比較復(fù)雜,計(jì)算復(fù)雜性較大。
5總結(jié)
BFO算法作為群體智能算法中的新的醫(yī)院,已引起了國(guó)內(nèi)外大量學(xué)者的關(guān)注和研究,但是大多數(shù)是針對(duì)具體的應(yīng)用場(chǎng)景,很少是針對(duì)算法本身的研究,未來(lái)的研究應(yīng)該從算法參數(shù)改進(jìn)、算法簡(jiǎn)化等學(xué)術(shù)研究上加以創(chuàng)新,以提高理論深度與應(yīng)用價(jià)值。