智能仿生演算法
A. 智能優化演算法:雞群優化演算法
@[toc]
摘要:雞群演算法 (Chicken Swarm Optimization,CSO) 是一種新穎的仿生學演算法,充分繼承群智能優化特點,創新採用個體分類、協作優化,最大程度挖掘最優解,又能很好避免早熟現象。具有收斂快,尋優能力強的特點。
新型的仿生學演算法—雞群優化演算法,它模擬群的等級制度和雞群的群體活動行為。 在特殊的等級制度下雞群中不同雞種搜尋食物時存在著競爭。公雞搜索食物能力強,適應值小;母雞其次;小雞搜索食物能力最弱,適應值最大。
為了簡化,文中通過下列規則理想化雞群演算法:
因為不同的雞種有不同的運動規律, 因此,以下 3 種個體的位置更新策略各不相同。
適應度好的公雞能夠在更大的范圍內搜索食物,而且比適應度差的公雞能夠優先獲得食物實現全局搜索,它的位置更新受隨機選取的其他公雞位置的影響,則更新策略見式(1)-(2)
式 (1)-(2) 中:第 只公雞位置的第 j 維的值表示為, 表示當前的迭代次數,表示服從期望值為0 ,方差值為 2 的正態分布隨機數, 第 只公雞的適應度為 ,隨機選取公雞 的適應度為 , 分母中加上無窮小數 ,避免除數為零。
母雞跟隨夥伴公雞搜索食物,位置更新受夥伴公雞位置影響。由於母雞的偷食行為,位置更新又與其它公雞和母雞有關系,則更新策略見式 (3)-(5) 。
式 (3)-(5) 中: Rand 是一個服從 [0,1] 均勻分布的隨機數,該母雞的夥伴公雞 的適應度值為 , 表示其夥伴公雞對其的影響因子,其他公雞和母雞中隨機選取個體 的適應度值為 , 為其他雞對其的影響因子。
小雞在其母親周圍搜尋食物,它的搜索能力最差,位置受到母親公雞的影響,則更新策略見式 (6) 。
式 (6) 中:母親母雞 位置的第 維數值為 , ,母親母雞的位置對小雞位置的影響因子為 , 其為隨機函數隨機生成,取值范圍一般為 (0,2) 。
步驟如下:
[1] MENG X , LIU Y , GAO X Z , et al. A new bio-inspired algorithm: chicken swarm optimization[J]. Lecture Notes in Computer Science ,2014 ,8794(1):86-94.
[2] 胡漢梅,李靜雅,黃景光.基於雞群演算法的微網經濟運行優化[J].高壓電器,2017,53(01):119-125.
https://mianbaoo.com/o/bread/aJWbmZk=
文獻復現:基於模擬退火的改進雞群優化演算法(SAICSO)
[1]李振璧,王康,姜媛媛.基於模擬退火的改進雞群優化演算法[J].微電子學與計算機,2017,34(02):30-33+38.
文獻復現:一種改進的雞群演算法(ICSO)
[1]孔飛,吳定會.一種改進的雞群演算法[J].江南大學學報(自然科學版),2015,14(06):681-688.
文獻復現:全局優化的改進雞群演算法(ECSO)
[1]韓斐斐,趙齊輝,杜兆宏,劉升.全局優化的改進雞群演算法[J].計算機應用研究,2019,36(08):2317-2319+2327.
B. 智能計算/計算智能、仿生演算法、啟發式演算法的區別與關系
我一個個講好了,
1)啟發式演算法:一個基於直觀或經驗構造的演算法,在可接受的花費(指計算時間和空間)下給出待解決組合優化問題每一個實例的一個可行解,該可行解與最優解的偏離程度不一定事先可以預計。意思就是說,啟發式演算法是根據經驗或者某些規則來解決問題,它求得的問題的解不一定是最優解,很有可能是近似解。這個解與最優解近似到什麼程度,不能確定。相對於啟發式演算法,最優化演算法或者精確演算法(比如說分支定界法、動態規劃法等則能求得最優解)。元啟發式演算法是啟發式演算法中比較通用的一種高級一點的演算法,主要有遺傳演算法、禁忌搜索演算法、模擬退火演算法、蟻群演算法、粒子群演算法、變鄰域搜索演算法、人工神經網路、人工免疫演算法、差分進化演算法等。這些演算法可以在合理的計算資源條件下給出較高質量的解。
2)仿生演算法:是一類模擬自然生物進化或者群體社會行為的隨機搜索方法的統稱。由於這些演算法求解時不依賴於梯度信息,故其應用范圍較廣,特別適用於傳統方法難以解決的大規模復雜優化問題。主要有:遺傳演算法、人工神經網路、蟻群演算法、蛙跳演算法、粒子群優化演算法等。這些演算法均是模仿生物進化、神經網路系統、螞蟻尋路、鳥群覓食等生物行為。故叫仿生演算法。
3)智能計算:也成為計算智能,包括遺傳演算法、模擬退火演算法、禁忌搜索演算法、進化演算法、蟻群演算法、人工魚群演算法,粒子群演算法、混合智能演算法、免疫演算法、神經網路、機器學習、生物計算、DNA計算、量子計算、模糊邏輯、模式識別、知識發現、數據挖掘等。智能計算是以數據為基礎,通過訓練建立聯系,然後進行問題求解。
所以說,你接觸的很多演算法,既是仿生演算法,又是啟發式演算法,又是智能演算法,這都對。分類方法不同而已。
樓主,我這么辛苦給你打這么字,給我多加點懸賞分吧!謝謝了哈
