資源簡介
處理二維問題的狼群算法代碼,狼群算法是啟發式算法的一種,具有優越的全局搜索性。
代碼片段和文件信息
%%?WPA算法
clear
close
clc
%%?初始化參數
wolfnum?=?50;
maxgen?=?300;
alfa?=?4;%探狼比例因子
Tmax?=?30;%最大游走次數
omega?=?100;%距離判斷因子
S?=?1000;%網格數決定步長
beta?=?10;%拋棄
lb?=?-pi;
ub?=?pi;
stepa?=?(ub?-?lb)/S;
stepb?=?(ub?-?lb)/S*2;
stepc?=?(ub?-?lb)/(S*2);
hmax?=?15;%
hmin?=?2;
%%?初始化狼群
X?=?lb?+?(ub?-?lb)*rand(wolfnum1);
Y?=?objfunc(X);
[maxYmaxYindex]?=?max(Y);
maxX?=?X(maxYindex);
leadY?=?maxY;
leadX?=?maxX;
[YYindex]?=?sort(Y‘descend‘);
X?=?X(Yindex);
plotx?=?linspace(-pipi200);
ploty?=?objfunc(plotx);
plot(plotxploty);
hold?on
hobj?=?plot(XY‘*‘);
for?iter?=?1?:?maxgen
????%%?游走
????minSnum?=?ceil(wolfnum?/?(alfa?+?1));
????maxSnum?=?floor(wolfnum?/?alfa);
????Snum?=?randi([minSnummaxSnum]11);
????flag?=?0;
????
????for?i?=?1?:?Tmax
???????
- 上一篇:Gabor濾波matlab代碼
- 下一篇:多個運動估計的塊匹配算法matlab
評論
共有 條評論