【算法学习】蝙蝠算法简介
蝙蝠算法(Bat Algorithm,縮寫 BA),是一種元啟發(fā)式優(yōu)化算法,是楊新社(音譯自:Xin-She Yang)在2010年提出的算法[1]。這個蝙蝠算法以微蝙蝠(microbats)回聲定位行為的基礎(chǔ),采用不同的脈沖發(fā)射率和響度[2][3]。
目錄
- 1算法描述
- 2算法方程
- 3算法應(yīng)用
- 4參考文獻
- 5延伸閱讀
算法描述[編輯]
把蝙蝠的回聲定位理想化,可以總結(jié)如下:每個虛擬蝙蝠有隨機的飛行速度在位置(問題的解),同時蝙蝠具有不同的頻率或波長、響度和脈沖發(fā)射率r。蝙蝠狩獵和發(fā)現(xiàn)獵物時,它改變頻率、響度和脈沖發(fā)射率,進行最佳解的選擇,直到目標停止或條件得到滿足。這本質(zhì)上就是使用調(diào)諧技術(shù)來控制蝙蝠群的動態(tài)行為,平衡調(diào)整算法相關(guān)的參數(shù),以取得蝙蝠算法的最優(yōu)。
算法方程[編輯]
根據(jù)Yang (2010)的文章, 新的解和速度更新方程:
其中,隨機數(shù)為均勻分布。是目前找到最優(yōu)解。
A和r應(yīng)該在迭代中變換:
其中,?和是常數(shù)。
算法應(yīng)用[編輯]
蝙蝠算法已用于工程設(shè)計[4]、分類[5]等應(yīng)用。把蝙蝠算法(BA)與遺傳算法(GA)、PSO等方法進行比較,并用于訓(xùn)練神經(jīng)網(wǎng)絡(luò),得出的結(jié)論清楚顯示:蝙蝠算法比其他算法有很好優(yōu)勢[6]。
參考文獻[編輯]
延伸閱讀[編輯]
- 蝙蝠算法的詳細的介紹:Yang, X. S., Nature-Inspired Metaheuristic Algoirthms, 2nd Edition, Luniver Press, (2010).
- Matlab/Octave程序
總結(jié)
以上是生活随笔為你收集整理的【算法学习】蝙蝠算法简介的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 移动端适配(必须要知道的,亲测有效)
- 下一篇: stagefright框架(四)-Vid