天天看點

【優化算法】蟻獅優化算法(ALO)【含Matlab源碼 1307期】

蟻獅算法是一種模仿自然界中蟻獅的捕獵機制的智能算法。蟻獅在沙子中,利用它的下颚挖出一個圓錐形的沙坑作為捕獵陷阱。一旦有獵物落陷阱,蟻獅便會将它拖入沙子底部并吃掉。通過與一些其他流行的智能算法比較,例如PSO、GA和杜鵑算法(CS),ALO顯示出更好的收斂性、準确性和魯棒性,但依然存在着收斂準确度低、易陷入局部最優解的缺陷。

(1)螞蟻随機遊走

首先假設由n個螞蟻組成的螞蟻種群Xant=(XA,1,XA,n,…,XA,N)T,XdA,n是第n個螞蟻的第d個變量。螞蟻移動的數學表達為

【優化算法】蟻獅優化算法(ALO)【含Matlab源碼 1307期】

式中,XA,n(t)為疊代t次時第n個螞蟻的位置;cums m為累積和;tm a x為最大疊代次數。

為防止個體越限,對其進行标準化處理,即

【優化算法】蟻獅優化算法(ALO)【含Matlab源碼 1307期】

式中,min C(XdA,n)、max C(XdA,n)分别為第n隻螞蟻随機遊走時的最小和最大步長;ud(t)、ld(t)分别為第t次疊代時第d個變量的上界和下界。

【優化算法】蟻獅優化算法(ALO)【含Matlab源碼 1307期】

1 matlab版本

2014a

2 參考文獻

[1] 包子陽,餘繼周,楊杉.智能優化算法及其MATLAB執行個體(第2版)[M].電子工業出版社,2016.

[2]張岩,吳水根.MATLAB優化算法源代碼[M].清華大學出版社,2017.

繼續閱讀