一给 发表于 7 天前

一种多策略改进小龙虾智能优化算法MSCOA 改进策略:种群混沌映射初始化+透

一种多策略改进小龙虾智能优化算法MSCOA 改进策略:种群初始化精英反向+透镜成像反向学习+黄金正弦变异策略


一、小龙虾COA基本原理

小龙虾优化算法(Lobster Optimization Algorithm,LOA)是一种模拟小龙虾觅食举动的优化算法。其基本原理和步骤如下:

[*] 初始化:

[*]随机天生小龙虾种群的位置(解)和速率。

[*] 适应度评估:

[*]盘算每只小龙虾的适应度值(目标函数值)。

[*] 更新位置:

[*]小龙虾通过两种重要举动来更新位置:

[*]觅食举动:小龙虾在其当前位置附近搜索更好的解。
[*]社会举动:小龙虾根据邻近个体的位置调整自己的位置,以利用群体的知识。


[*] 选择最优解:

[*]通过比力适应度值,选择当前最优的小龙虾解作为全局最优解。

[*] 迭代:

[*]重复步骤2-4,直到到达最大迭代次数或满足停止准则。

[*] 输出结果:

[*]输出最优解及其适应度值。

小龙虾优化算法的优点包括较强的全局搜索能力和较快的收敛速率,但其效率和结果依赖于具体题目和参数设置。
二、改进策略

2.1种群初始化 映射

六种映射可供选择
tent
chebyshev
Singer
Logistic
Sine
Circle
2.2 透镜成像反向学习

https://i-blog.csdnimg.cn/direct/2699cf6fefcb4ea9aca56baf430b4860.png
2.3 黄金正弦变异策略

https://i-blog.csdnimg.cn/direct/0dd4c1ac68594793975974d35a4a2185.png
三、实行结果

https://i-blog.csdnimg.cn/direct/54214297f4cb43a48aba63598867839f.png
https://i-blog.csdnimg.cn/direct/cb1173f93fdc4e0cb187d69324b7c8d0.png
https://i-blog.csdnimg.cn/direct/e3167257c2a0420aae8515156dc11c63.png
https://i-blog.csdnimg.cn/direct/43cf9b68fb63495697bba741f1d03124.png
https://i-blog.csdnimg.cn/direct/a87c1c79fd9b4ea293ef1bf74390c757.png
https://i-blog.csdnimg.cn/direct/01bb891562734baca36ae43342d5796b.png
https://i-blog.csdnimg.cn/direct/67389dc772734897a1cdfae3f73fe2a8.png
https://i-blog.csdnimg.cn/direct/07482e8151b1443eb1a9d13ead30f012.png
https://i-blog.csdnimg.cn/direct/86c4c2b0b0cd4f4b84a7392b606e9e3a.png
https://i-blog.csdnimg.cn/direct/0ad0196a8b0f473ea7889614e84afb3a.png
https://i-blog.csdnimg.cn/direct/925aeba178c644b59e9d23922d281334.png
https://i-blog.csdnimg.cn/direct/d203e32141ab4d8db1ee39847a597cff.png
https://i-blog.csdnimg.cn/direct/7fbf07119e3b4376b06ade357c8dd3fe.png
https://i-blog.csdnimg.cn/direct/c5faad7e5534466fb22499bb111ea6bc.png
https://i-blog.csdnimg.cn/direct/693dada20b13414a98312fa0f6cdcada.png
https://i-blog.csdnimg.cn/direct/18d91014255d4ed5b9637bc532b179ce.png
https://i-blog.csdnimg.cn/direct/88a3814caca444edb8891f951f678a95.png
https://i-blog.csdnimg.cn/direct/7182d10d460248389d9ee3549e7e6caa.png
https://i-blog.csdnimg.cn/direct/d7d623292e424ebd9fb34ee702b4a889.png
https://i-blog.csdnimg.cn/direct/2098a0289f644d52b2711dd4d6905f49.png
https://i-blog.csdnimg.cn/direct/1ab7c21e80154e7ebcb97fbf408cddbd.png
四、核心代码


%%清空环境变量
warning off             % 关闭报警信息
close all               % 关闭开启的图窗
clear                   % 清空变量
clc                     % 清空命令行
% rng(24,'twister');      % 随机种子

%%参数设置
SearchAgents = 30;                              % COApulation members
Max_iterations = 500;                           % maximum number of iteration
number = 'F10';                                    % 选定优化函数,自行替换:F1~F23   
= Get_Functions_details(number); % :下界、上界、维度、目标函数表达式

%% 循环实验
for i = 1:2
%% MSCOA
=MSCOA(SearchAgents,Max_iterations,lb,ub,dim,fobj);
MSCOA_fitness(i) = MSCOA_Best_score;
%% COA
=COA(SearchAgents,Max_iterations,lb,ub,dim,fobj);
COA_fitness(i)= COA_Best_score;
end

%% 算法的最佳适应度值
% MSCOA
MSCOA_min_value = min(MSCOA_fitness);MSCOA_max_value = max(MSCOA_fitness);MSCOA_mean_value = mean(MSCOA_fitness);MSCOA_std_value = std(MSCOA_fitness);
MSCOA_result = ;
disp('---------------------------MSCOA--------------------------------')
disp(['MSCOA平均值:', num2str(MSCOA_mean_value)])
disp(['MSCOA最优值:', num2str(MSCOA_min_value)])
disp(['MSCOA标准差:', num2str(MSCOA_std_value)])

% COA
COA_min_value = min(COA_fitness);COA_max_value = max(COA_fitness);COA_mean_value = mean(COA_fitness);COA_std_value = std(COA_fitness);
COA_result =;
disp('---------------------------COA--------------------------------')
disp(['COA平均值:', num2str(COA_mean_value)])
disp(['COA最优值:', num2str(COA_min_value)])
disp(['COA标准差:', num2str(COA_std_value)])

%% 把结果保存
columnNames = {'平均值', '最优值', '标准差'};
RowNames = {'MSCOA', 'COA'};
result = ;

%% 保存适应度函数
curve = ;

%% 绘图
figure1 = figure('Color',);
G1=subplot(1,2,1,'Parent',figure1);
func_plot(number)
title(number)
xlabel('x')
ylabel('y')
zlabel('z')
subplot(1,2,2)
G2=subplot(1,2,2,'Parent',figure1);
CNT=20;
k=round(linspace(1,Max_iterations,CNT)); %随机选CNT个点
% 注意:如果收敛曲线画出来的点很少,随机点很稀疏,说明点取少了,这时应增加取点的数量,100、200、300等,逐渐增加
% 相反,如果收敛曲线上的随机点非常密集,说明点取多了,此时要减少取点数量
iter=1:1:Max_iterations;
if ~strcmp(number,'F16')&&~strcmp(number,'F9')&&~strcmp(number,'F11')%这里是因为这几个函数收敛太快,不适用于semilogy,直接plot
    semilogy(iter(k),MSCOA_cg_curve(k),'r-','linewidth',1);
    hold on
    semilogy(iter(k),COA_cg_curve(k),'g-','linewidth',1);
else
    plot(iter(k),MSCOA_cg_curve(k),'r-','linewidth',1);
    hold on
    plot(iter(k),COA_cg_curve(k),'g-','linewidth',1);
end
grid on;
title('收敛曲线')
xlabel('迭代次数');
ylabel('适应度值');
box on
legend('MSCOA','COA')
set (gcf,'position', )


五、代码获取

99
六、总结

包括但不限于
优化BP神经网络,深度神经网络DNN,极限学习机ELM,鲁棒极限学习机RELM,核极限学习机KELM,混淆核极限学习机HKELM,支持向量机SVR,相关向量机RVM,最小二乘回归PLS,最小二乘支持向量机LSSVM,LightGBM,Xgboost,RBF径向基神经网络,概率神经网络PNN,GRNN,Elman,随机丛林RF,卷积神经网络CNN,长短期记忆网络LSTM,BiLSTM,GRU,BiGRU,TCN,BiTCN,CNN-LSTM,TCN-LSTM,BiTCN-BiGRU,LSTM–Attention,VMD–LSTM,PCA–BP等等
用于数据的分类,时序,回归预测。
多特征输入,单输出,多输出

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页: [1]
查看完整版本: 一种多策略改进小龙虾智能优化算法MSCOA 改进策略:种群混沌映射初始化+透