優化演算法(五)—人工蜂群演算法Artificial Bee Colony Algorithm(ABC)
人工蟻群演算法是一種模仿蜜蜂採蜜機理而產生的群智慧優化演算法。其原理相對複雜,但實現較為簡單,在許多領域中都有研究和應用。
蜜蜂採蜜機理
蜜蜂是一種群居昆蟲,雖然單個昆蟲的行為極其簡單,但是由單個簡單的個體所組成的群體卻表現出極其複雜的行為。真實的蜜蜂種群能夠在任何環境下,以極高的效率從食物源(花朵)中採集花蜜;同時,它們能適應環境的改變。
蜂群產生群體智慧的最小搜尋模型包含基本的三個組成要素:食物源、被僱傭的蜜蜂和未被僱傭的蜜蜂。兩種最基本的行為模型:為食物源招募蜜蜂和放棄某個食物源。
在基本ABC演算法中,人工蜂群包含三種個體:僱傭蜂、觀察蜂和偵查蜂
每個僱傭蜂對應一個確定的蜜源(解向量),並在迭代中對蜜源的領域進行搜尋。
根據蜜源的豐富程度(適應值的大小)採用輪盤賭的方式僱傭觀察蜂採蜜(搜尋新蜜源)
如果蜜源多次更新沒有改進,則放棄該蜜源,僱傭蜂轉為偵查蜂隨機搜尋新蜜源。
相關文章
- 人工蜂群演算法演算法
- Warshall‘s algorithm 演算法的實現及優化(修改版)Go演算法優化
- 演算法之路 - Way to Algorithm演算法Go
- 【Algorithm】全排列演算法Go演算法
- 貪心演算法(貪婪演算法,greedy algorithm)演算法Go
- Algorithm-sort 排序演算法 pythonGo排序演算法Python
- 字串演算法(string_algorithm)字串演算法Go
- 人工智慧導論——智慧計算(進化演算法+群智慧優化)人工智慧演算法優化
- Algorithm-search 查詢演算法 pythonGo演算法Python
- MySQL優化--IO排程演算法優化MySql優化演算法
- 優化演算法總結優化演算法
- iOS冒泡演算法優化iOS演算法優化
- 滑動視窗演算法(Sliding Window Algorithm)演算法Go
- 聯邦平均演算法(Federated Averaging Algorithm,FedAvg)演算法Go
- 梯度下降優化演算法概述梯度優化演算法
- 優化演算法庫DEAP的粒子群優化演算法(PSO)示例程式碼分析優化演算法
- 【Dijkstra演算法】未優化版+優先佇列優化版演算法優化佇列
- 簡單的量子演算法(二):Simon's Algorithm演算法Go
- Algorithm(4th) 1.5 union-find演算法Go演算法
- 深度學習 - 常用優化演算法深度學習優化演算法
- 無約束凸優化演算法優化演算法
- 選擇排序-演算法及優化排序演算法優化
- 人工智慧的歷史(History of artificial intelligence)人工智慧Intel
- 【Algorithm】連結串列演算法中啞結點作用Go演算法
- SciTech-BigDataAIML-Algorithm: Github的Hello 演算法專案AIGoGithub演算法
- 機器學習演算法系列(十八)-隨機森林演算法(Random Forest Algorithm)機器學習演算法隨機森林randomRESTGo
- 深度學習優化演算法總結深度學習優化演算法
- 優化學習率相關演算法優化演算法
- 06-等式約束優化演算法優化演算法
- 05-無約束優化演算法優化演算法
- 最優化演算法【牛頓法、擬牛頓法、BFGS演算法】優化演算法
- [譯] Swift 演算法學院 – Z-Algorithm 字串搜尋Swift演算法Go字串
- [譯] Swift 演算法學院 - Z-Algorithm 字串搜尋Swift演算法Go字串
- 運籌優化(十四)--離散優化的啟發式演算法優化演算法
- 機器學習演算法系列(十九)-自適應增強演算法(Adaptive Boosting Algorithm)機器學習演算法APTGo
- 11SVM-SMO-序列最小優化演算法優化演算法
- 基礎排序演算法詳解與優化排序演算法優化
- 聯邦學習中的優化演算法聯邦學習優化演算法