沙丁魚的集群現象
沙丁魚是一些鯡魚的統稱,身體側扁平,銀白色,成年的沙丁魚體長約26釐米。沙丁魚中富含的二十二碳六烯酸(DHA),能夠提高智力,增強記憶力,因此沙丁魚又被稱為「聰明食品"。其主要以浮遊生物為食,在春季產卵,卵和剛孵化的幼魚會隨著海水漂流。(本段摘自百度百科)
也許是身形微小,在諾大的海洋裡總是被人欺負,所以它們選擇抱團生活嘻嘻。集體的力量是偉大的!!!在讀《狼圖騰》的時候,狼群作戰也是類似的決策,保護母狼和幼崽,老弱病殘在進攻時總是不幸地成為犧牲品。沙丁魚也是如此,面對捕食者時,它們聚集成一個個直徑達數十米的「魚球」。每一個魚球都包含上萬條沙丁魚。它們動作整齊劃一,持著近乎完美的球形。這讓它們在捕食者眼中成了一個巨大的銀色生物,很難找到可以「下手」的目標。捕食者們只好依靠橫衝直撞,來找一些來不及隨群體轉向而落單的個體下口。這正是集群禦敵的目的所在——犧牲掉的大多是老弱病殘,而那些精壯的個體則能夠最大限度地生存下來。(本段摘自《知識就是力量》雜誌)【遺傳算法】
遺傳算法(Genetic Algorithms,簡稱 GA)是一種基於自然選擇原理和自然遺傳機制的搜索(尋優)算法,它是模擬自然界中的生命進化機制,在人工系統中實現特定目標的優化。遺傳算法的實質是通過群體搜索技術,根據適者生存的原則逐代進化,最終得到最優解或準最優解。它必須做以下操作:初始群體的產生、求每一個體的適應度、根據適者生存的原則選擇優良個體、被選出的優良個體兩兩配對,通過隨機交叉其染色體的基因並隨機變異某些染色體的基因後生成下一代群體,按此方法使群體逐代進化,直到滿足進化終止條件。其實現方法如下:(1) 根據具體問題確定可行解域,確定一種編碼方法,能用數值串或字符串表示可行解域的每一解。(2) 對每一解應有一個度量好壞的依據,它用一函數表示,叫做適應度函數,適應度函數應為非負函數。(3) 確定進化參數群體規模 M 、交叉概率pc 、變異概率 pm 、進化終止條件。為便於計算,一般來說,每一代群體的個體數目都取相等。群體規模越大、越容易找到最優解,但由於受到計算機的運算能力的限制,群體規模越大,計算所需要的時間也相應的增加。進化終止條件指的是當進化到什麼時候結束,它可以設定到某一代進化結束,也可能根據找出近似最優是否滿足精度要求來確定。下表列出了生物遺傳概念在遺傳算法中的對應關係。(本小節摘自《數學建模》)
【小彩蛋之粒子群算法】
【附參考資料】
1.https://zhuanlan.zhihu.com/p/35986593《有史以來最容易理解的遺傳算法》
2.https://www.zhihu.com/question/23103725/answer/365298309《如何直觀形象地理解粒子群算法》
3.https://blog.csdn.net/u010451580/article/details/51178225《遺傳算法詳解(GA)》
4.吳萬勤, 陳嬌, 譚昊, et al. 一種新的基於海豚與沙丁魚的集群模型研究[J]. 雲南民族大學學報:自然科學版, 2018, 27(06):500-504.
點擊圖片給我留言,我們聊聊芝麻叭好不好