摘 要:仿生優化算法是通過模擬自然生物進化或者社會行為的隨機搜索方法而提出的一種算法。這些算法能夠解決許多傳統方法難以解決的復雜問題,因此被廣泛的應用。文章主要介紹了三種仿生優化算,即法蟻群算法、人工魚群算法、人工免疫算法。介紹了這幾種算法的基本原理、實用范圍,以及這三種算法的優缺點及未來的展望。
關鍵詞:仿生優化;蟻群算法;人工魚群算法;人工免疫算法
引言
隨著社會的飛速發展,傳統的方法已經不能解決我們遇到的許多問題,如指派問題,車間生產問題,旅行路徑問題。如果采用傳統的方法來解決這類問題將會大大的增加計算機的負擔,同時不能夠找出最優的解決方案。這就不得不使我們尋找其他的方法。為了能夠解決這些問題,科學家們從生物系統的進化和自適應現象找到了靈感,提出了解決問題的最優方案-仿生優化算法。
1 蟻群算法
蟻群算法又稱為螞蟻算法。這種算法是由意大利研究者Dorigo在1991年提出的一種新型算法。它主要是模擬螞蟻的覓食行為,通過觀察螞蟻如何能在最短的時間尋到一條食物到巢穴的最短路徑。生物學家觀察和研究發現,螞蟻覓食是一種群體行為,并不是各自尋找食物。螞蟻在尋找食物的過程中,每只螞蟻都會在它行過的路徑上分泌一種化學物質,這種化學物質叫作信息素。但是每一條道路上的信息素濃度不一,每條道路上信息素的多少會影響螞蟻的選擇。信息素的濃度越高,這條道路被選擇的可能性就越大。螞蟻就是通過這種信息素來傳遞信息的,從而尋找到最近的那條道路[2]。從而能夠更快的將食物搬入巢穴,也能夠減少搬食螞蟻的數量。螞蟻算法就是從該模型中受到啟發 ,并且用于尋找最優解。
2 人工魚群算法
人工魚群算法是李曉磊博士等在對動物群體智能行為研究的基礎上提出的一種新型仿生優化算法,這種算法是根據“水域中魚生存數目的多少來判斷這一水域中營養物質較多的地方”,通過模仿魚群的覓食行來尋找營養物質較多的地方。
這種現象在日常生活中也可以經常看見,比如釣魚的時候,通常我們在某個地方釣魚,首先要撒魚餌或者魚料,然后過一陣便會有成群結隊的魚游過來。魚群算法就是根據魚的多少來找出水域中營養物質較高的地方。人工魚群就是用人魚來模仿魚群的覓食、聚集、追尾,從而實現最優解。
覓食行為:日常生活中,水中的魚兒在沒有人為作用的條件下,在水中自由自在的游動,但當人為投入食物時,便會向食物增多的那一方游去。
聚集行為:魚在水中自然而然的聚集成群,是為了保證群體的安全而形成的一種生活習慣。
追尾行為:在魚群的游動過程中,當某一條或幾條魚發現食物的時候,它們附近的魚群也會緊隨他們而來,從而快速到達食物。
人工魚群的基本步驟如下:
(1)產生初始魚群:隨機產生n條人工魚,組成初始化人工魚群。
(2)記錄初始濃度:分別計算各人工魚的食物濃度,最終將濃度最大的人工魚記錄到公告欄。
(3)公告欄比較:各個人工魚在尋找最優的過程中,行動完成,將自身的狀態與公告欄上的狀態進行比較,如果自身的狀態優于公告欄的狀態,則將公告欄上的最優狀態改成自身狀態。反之,則不修改。
(4)經過多條魚的狀態的修改從而找到水域中濃度最高的那條道。
3 人工免疫算法
免疫系統對人體是至關重要的。免疫系統是由淋巴細胞把自身細胞與抗原識別出來,并產生抗體來對付入侵人體的抗原,從而消滅抗原。免疫系統具有免疫能力,能夠抑制過多抗體的產生,事實上免疫系統只需要根據侵入人體的抗原產生相應的抗體,從而消滅抗原即可,而不需要產生其他不必要的抗體。
人工免疫算法將抗原和抗體分別對應優化問題的目標函數和可行解。把抗體和抗原的親和力看作可行解和目標函數的匹配程度。通過計算抗體期望生存率來促進較優抗體的遺傳和變異,用記憶細胞單元保存擇優后的可行解來抑制相似可行解的繼續產生,并加速搜索到全局最優解,同時,當相似問題在此出現時,能夠較快產生該問題的較優解甚至最優解。
人工免疫算法的基本步驟如下:(1)輸入抗原;(2)產生抗體;(3)分析抗原與抗體的關系;(4)將與抗原具有最大親和力的抗體大量分解;(5)抗體的選擇。計算當前抗體群中抗體濃度,濃度高的則減小,反之,增加;(6)得到最優的抗體抑制抗原;(7)終止。
4 上述幾種算法的比較
以上幾種算法都是模擬自然界生物系統,通過生物的尋優行為找到一種最優的算法,因此仿生優化算法有許多相同的特點:
(1)不確定的算法:仿生優化算法的不確定性主要體現在隨機性。它們的搜索過程都具有非確定性,都是利用仿生理論的記憶機制加強局部搜索或抑制早熟收斂,從而使算法快速收斂到全局最優解。
(2)概率型的優化算法:不確定算法的優點在于有更多的機會求得全局的最優解。
(3)相互作用:各個個體通過相互作用來更好的適應環境,同時與環境互相交互。
(4)突顯性:最終的最優目標,總是在各個個體行為的運動中脫穎而出。
5 仿生優化算法的發展與展望
文章闡述了三種仿生優化算法,它們已經在各自適應的環境下取得了很好的成績,在某些領域體現了強大的潛力,但是還是存在一些不足。為了能夠更好的解決這些不足,提出了以下幾種方法。
(1)將仿生優化算法同其他算法結合起來產生一種新的算法,分析各種算法的優缺點,取長補短,尋求最適應的一種新算法,從而功能更加強大,能夠更好的解決尋優問題。
(2)仿生優化算法的理論基礎有待加強,建立新的模型,這對解決不同優化問題的收斂性,局部最優解,以及魯棒性有很重要的作用。目前的應用都是通過反復實驗而得到的,將會大大的影響實驗速度,因此提出一套切實有用的方案,將會大大促進仿生優化的發展。
(3)擴大仿生優化算法的應用領域,將仿生優化算法應用在更多的領域,幫助解決更多的優化問題。仿生優化算法是一類很好的算法,能夠幫助我們解決許多傳統方法不能夠解決的問題,因此大大的擴大仿生優化算法的應用,將會為我們提供更多的簡便方法。
參考文獻
[1]于佳,等.仿生優化算法在變電站選址中的應用[J].工程技術,2012.
[2]熊偉平,等.幾種仿生優化算法的比較研究[J].計算機技術與發展,2010.
作者簡介:何超君(1989,4-),女,漢族,四川省南充市西充縣,碩士研究生,研究方向:工業過程監控與故障診斷、計算機控制技術。