基于战争策略算法的智能优化算法,如何应用于单目标优化问题并附MATLAB实现?

2026-05-16 11:401阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计570个文字,预计阅读时间需要3分钟。

基于战争策略算法的智能优化算法,如何应用于单目标优化问题并附MATLAB实现?

1+内容介绍:WSO是Ayyarao等人于2022年提出的一种基于古代战争策略的新型元启发发展优化算法。该算法灵感来源于古代战争中的攻击策略和防御策略,并通过圣兵在战场上的位置更新来表达。

1 内容介绍

WSO 是 Ayyarao 等人于 2022 年提出一种基于古代战争策略的新型元启发式优化算法 。该算法灵感来自于古代战争中的攻击策略和防御策略,并通过士兵在战场上的位置更新来达到求解优化问题的目的。具有寻优能力强,收敛速度快的特点。



2 部分代码

%_________________________________________________________________________%



% 使用方法

%__________________________________________

% fobj = @YourCostFunction 设定适应度函数

% dim = number of your variables 设定维度

% Max_iteration = maximum number of generations 设定最大迭代次数

% SearchAgents_no = number of search agents 种群数量

% lb=[lb1,lb2,...,lbn] where lbn is the lower bound of variable n 变量下边界

% ub=[ub1,ub2,...,ubn] where ubn is the upper bound of variable n 变量上边界

clear all

clc

close all

SearchAgents_no=50; % 种群数量

Function_name='F4'; % Name of the test function that can be from F1 to F23 (Table 1,2,3 in the paper) 设定适应度函数

Max_iteratinotallow=100;% 进化次数


% Load details of the selected benchmark function

[lb,ub,dim,fobj]=Get_Functions_details(Function_name); %设定边界以及优化函数

%lb%粒子最小值

基于战争策略算法的智能优化算法,如何应用于单目标优化问题并附MATLAB实现?

%ub%粒子最大值

%dim%粒子维数

[Best_pos,Best_score,pso_curve]=WSO(SearchAgents_no,Max_iteration,lb,ub,dim,fobj); %基本粒子群


figure('Position',[269 240 660 290])

%Draw search space

subplot(1,2,1);

func_plot(Function_name);

title('Parameter space')

xlabel('x_1');

ylabel('x_2');

zlabel([Function_name,'( x_1 , x_2 )'])


%Draw objective space

subplot(1,2,2);

plot(pso_curve,'Color','b')

title('Objective space')

xlabel('Iteration');

ylabel('Best score obtained so far');

axis tight

grid on

box on

3 运行结果

4 参考文献

部分理论引用网络文献,若有侵权联系博主删除。


本文共计570个文字,预计阅读时间需要3分钟。

基于战争策略算法的智能优化算法,如何应用于单目标优化问题并附MATLAB实现?

1+内容介绍:WSO是Ayyarao等人于2022年提出的一种基于古代战争策略的新型元启发发展优化算法。该算法灵感来源于古代战争中的攻击策略和防御策略,并通过圣兵在战场上的位置更新来表达。

1 内容介绍

WSO 是 Ayyarao 等人于 2022 年提出一种基于古代战争策略的新型元启发式优化算法 。该算法灵感来自于古代战争中的攻击策略和防御策略,并通过士兵在战场上的位置更新来达到求解优化问题的目的。具有寻优能力强,收敛速度快的特点。



2 部分代码

%_________________________________________________________________________%



% 使用方法

%__________________________________________

% fobj = @YourCostFunction 设定适应度函数

% dim = number of your variables 设定维度

% Max_iteration = maximum number of generations 设定最大迭代次数

% SearchAgents_no = number of search agents 种群数量

% lb=[lb1,lb2,...,lbn] where lbn is the lower bound of variable n 变量下边界

% ub=[ub1,ub2,...,ubn] where ubn is the upper bound of variable n 变量上边界

clear all

clc

close all

SearchAgents_no=50; % 种群数量

Function_name='F4'; % Name of the test function that can be from F1 to F23 (Table 1,2,3 in the paper) 设定适应度函数

Max_iteratinotallow=100;% 进化次数


% Load details of the selected benchmark function

[lb,ub,dim,fobj]=Get_Functions_details(Function_name); %设定边界以及优化函数

%lb%粒子最小值

基于战争策略算法的智能优化算法,如何应用于单目标优化问题并附MATLAB实现?

%ub%粒子最大值

%dim%粒子维数

[Best_pos,Best_score,pso_curve]=WSO(SearchAgents_no,Max_iteration,lb,ub,dim,fobj); %基本粒子群


figure('Position',[269 240 660 290])

%Draw search space

subplot(1,2,1);

func_plot(Function_name);

title('Parameter space')

xlabel('x_1');

ylabel('x_2');

zlabel([Function_name,'( x_1 , x_2 )'])


%Draw objective space

subplot(1,2,2);

plot(pso_curve,'Color','b')

title('Objective space')

xlabel('Iteration');

ylabel('Best score obtained so far');

axis tight

grid on

box on

3 运行结果

4 参考文献

部分理论引用网络文献,若有侵权联系博主删除。