• 大小: 3KB
    文件类型: .m
    金币: 2
    下载: 1 次
    发布日期: 2021-01-04
  • 语言: Matlab
  • 标签: MATLAB  

资源简介

处理二维问题的狼群算法代码,狼群算法是启发式算法的一种,具有优越的全局搜索性。

资源截图

代码片段和文件信息

%% 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
       

评论

共有 条评论