首页 > 化工知识 > 【优化求解】基于蜘蛛猴算法求解单目标优化问题matlab代码

【优化求解】基于蜘蛛猴算法求解单目标优化问题matlab代码

时间:2021-12-04 来源: 浏览:

【优化求解】基于蜘蛛猴算法求解单目标优化问题matlab代码

原创 天天Matlab 天天Matlab
天天Matlab

TT_Matlab

每天分享一点Matlab资料,一起成长进步。需要定制程序添加qq1575304183

收录于话题 #智能优化算法及应用 212个 内容

1 简介

蜘蛛猴算法 ( SMO ) 2014 年由 Jagdish Chand Bansal 学者提出的 是一种建立在对蜘蛛猴群 觅食行为建模基础上产生的新型解决优化问题的数值优化方法 根据原始 SMO 算法多种改进算法 被研发用来解决优化问题

2 部分代码

clc;

clear;

close all;

%% TARGET EQUATION

% ((ABS(X)-20)^2+(Y)^2)  -100<X<100   -100<Y<100

%% MONKEY DEFINITION

empty_particle.Position=[];

empty_particle.Cost=[];

empty_particle.LimitCount=[];

%% GENERAL CONFIGURATION

config;

confg = repmat(empty_config,1,1);

confg.VarMin = [-100,-100];

confg.VarMax=[100,100];

confg.nVar = 2;

confg.nPop = 50;

confg.nGrp = 1;

confg.MaxGrps = 5;

confg.MaxIt=50;

confg.LocalLimitCount = 50;

confg.GlobalLimitCount = 150;

%confg.LocalLimitCount = 30;

%confg.GlobalLimitCount = 50;

confg.PR = 0.1;

confg.grpSize=ceil(confg.nPop/confg.nGrp);

%% SMO

SM = repmat(empty_particle,confg.nPop,1);

LL = repmat(empty_particle,confg.nPop,1);

GL = repmat(empty_particle,1,1);

SM = Initialize(SM,confg);

GL.Cost=Inf;

[LL,GL] = SetInitialLeaders(SM,GL,LL,confg);

for run=1:1 

    

    for it=1:confg.MaxIt

        

        SM = LocalLeaderPhase(SM,LL,confg);

        SM = GlobalLeaderPhase(SM,GL,confg);

        LL = LocalLeaderLearningPhase(SM,LL,confg);

        GL = GlobalLeaderLearningPhase(GL,LL,confg);

        [SM,LL] = LocalLeaderDecisionPhase(SM,GL,LL,confg);

        [GL,LL,confg] = GlobalLeaderDecisionPhase(SM,GL,LL,confg);

        yy(it)=GL.Cost;

        fprintf(’Iteration=%d Cost=%f Position=(%f %f) ’,it,GL.Cost,GL.Position(1),GL.Position(2));

%         plotData(SM,GL,LL,confg);

     

    end

    

end

figure(1)

plot(yy)

xlabel(’迭代次数’)

ylabel(’适应度值’)

3 仿真结果

4 参考文献

[1]徐小平, 杨转, & 刘龙. (2020). 求解物流配送中心选址问题的蜘蛛猴算法. 计算机工程与应用.

天天Matlab

赞赏二维码 微信扫一扫赞赏作者 赞赏

已喜欢, 对作者说句悄悄话
最多40字,当前共

  人赞赏

1 / 3

长按二维码向我转账

赞赏二维码

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

版权:如无特殊注明,文章转载自网络,侵权请联系cnmhg168#163.com删除!文件均为网友上传,仅供研究和学习使用,务必24小时内删除。
相关推荐