鯨魚優化演算法原理(Whale Optimization Algorithm, WOA)

鯨魚優化演算法(Whale Optimization Algorithm, WOA)是一種群體智慧最佳化演算法(swarm intelligence optimization algorithm),模擬座頭鯨(Humpback Whale)的氣泡網捕食行為(bubble-net feeding behavior),由 Mirjalili 與 Lewis 於 2016 年提出 [1],主要用於求解連續最佳化(continuous optimization)問題。
核心方法
WOA 的設計靈感來源於座頭鯨獨特的合作捕食策略。其捕食過程主要包含三種行為模式,並被轉化為相應的數學更新規則,以引導搜索個體(鯨魚)在解空間中移動。
包圍獵物(Encircling Prey) 當座頭鯨群體識別到獵物位置後,會共同圍繞並縮小包圍圈。在演算法中,此行為被模擬為個體向當前已知的最佳解(即獵物)移動。
氣泡網攻擊(Bubble-net Attacking) 這是座頭鯨最具特色的捕食方式,牠們會吐出一串氣泡並同時沿螺旋路徑向上游動,形成「氣泡網」以困住獵物。此行為對應於演算法中的局部開發(exploitation)階段,讓搜索個體圍繞最佳解進行精細的螺旋搜索。
隨機搜尋(Search for Prey) 在未發現明確目標時,鯨魚會在廣闊的海域中隨機遊走以探索食物來源。這對應於演算法的全域探索(exploration)階段,透過隨機選擇的參考個體來引導搜索,有助於跳出局部最優。
-
→ exploration
-
→ exploitation
其中,係數向量 與 共同調控移動的幅度與方向。收斂因子 在迭代中從 2 線性衰減至 0,使演算法能自適應地從前期的廣泛探索過渡到後期的集中開發。
演算法流程
- 初始化:隨機產生鯨魚種群,評估適應度並記錄最佳解。
- 迭代更新:對每隻鯨魚,根據概率 與係數 選擇上述三種策略之一更新位置。
- 評估與選擇:計算新位置的適應度,更新全域最佳解。
- 終止:重複步驟 2–3 直至滿足停止條件(如達最大迭代次數)。
特點與優勢
WOA 結構簡單、參數少,透過係數 與 的自適應變化,能有效平衡探索(exploration)與開發(exploitation)。其螺旋更新與隨機搜尋機制有助於避免早熟收斂,在許多連續優化問題上表現出良好的求解效率與穩健性。
應用領域
WOA 已廣泛應用於工程設計、機器學習超參數調優、特徵選擇、電力系統調度及影像處理等領域。其衍生版本亦擴展至離散、多目標與約束優化問題。
總結
鯨魚優化演算法是一種高效且易於實現的元啟發式演算法,其仿生機制為複雜優化問題提供了可靠的求解框架。後續研究多聚焦於其改進變體與跨領域應用,持續推動群體智慧優化技術的發展。
內容聲明 此文章是一篇基於原始學術文獻的導讀與評論用途。文中介紹的核心方法、數學模型及流程框架等,其智慧財產權完全歸屬於所引用原始文獻的作者及相關出版機構,如需完整了解研究細節與圖表數據,請參考原始論文出處。
參考文獻
[1] S. Mirjalili and A. Lewis, “The Whale Optimization Algorithm,” Advances in Engineering Software, vol. 95, pp. 51–67, May 2016, doi: https://doi.org/10.1016/j.advengsoft.2016.01.008.


