✅作者简介:热爱科研的Matlab仿真开发者,修心和技术同步精进,matlab项目合作可私信。
🍎个人主页:Matlab科研工作室
🍊个人信条:格物致知。
更多Matlab仿真内容点击👇
⛄ 内容介绍
2021年,一种新的算法,材料生成算法(MGA),被开发并应用于工程问题的优化设计。材料化学的一些高级和基础方面,特别是化学化合物的构型和生产新材料的化学反应,被确定为 MGA 的启发性概念。出于数值研究的目的,选择进化计算竞赛(CEC)对标的 10、30、50 和 100 不同维度的 10 个约束优化问题作为测试示例,而著名的工程设计中的 15 个还确定了问题以评估所提出方法的整体性能。不同经典和新的元启发式优化算法在处理所选问题时的最佳结果取自最近的文献,用于与 MGA 进行比较。此外,计算了 MGA 算法的统计值,包括均值、最差和标准差,并与其他元启发式算法的结果进行比较。总体而言,这项工作表明,所提出的 MGA 能够提供非常有竞争力,甚至是出色的结果,并且大多优于其他元启发式算法。
⛄ 部分代码
%__________________________________________________________________ %
% Multi-Objective %
% Material Generation Algorithm (MOMGA) %
% %
% %
% Developed in MATLAB R2022a (MacOs) %
% %
% Author and programmer %
% --------------------------------- %
% Nima Khodadadi (蕵鈥渴�) %
% e-Mail %
% --------------------------------- %
% nkhod002@fiu.edu %
% %
% Homepage %
% --------------------------------- %
% https://nimakhodadadi.com %
% %
% %
% %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% ----------------------------------------------------------------------- %
clear;
close all;
clc;
% format long g
% Initial parameters of the MOMGA algorithm
for j=8
max_iter=100;
Pop=100;
ArchiveMaxSize=100;
nvar=30;
method=3;
if method==3
Archive_F1=load(sprintf('P%d.txt',j));
end
obj_no=2;
mkdir (sprintf('P%d',j))
%-------------------------- MOMGA-----------------------------------------
for i=1% Numbver of independent runs
[Archive_F]=MOMGA(max_iter, ArchiveMaxSize,Pop,obj_no,method,j);
if numel(Archive_F')==2
continue
end
Archive_F=Archive_F';
if obj_no==2
plot(Archive_F1(:,1),Archive_F1(:,2),'Color','g','LineWidth',4);
hold on
plot(Archive_F(:,1),Archive_F(:,2),'ro','LineWidth',1,...
'MarkerEdgeColor','b',...
'MarkerFaceColor','r',...
'Marker','o',...
'MarkerSize',10);
legend('True PF','Obtained PF');
title(sprintf('MOMGA FOR P%d PROBLEM',j));
xlabel('obj_1');
ylabel('obj_2');
hold off
end
if obj_no==3
plot3(Archive_F1(:,1),Archive_F1(:,2),Archive_F1(:,3),'Color','g','LineWidth',1);
hold on
plot3(Archive_F(:,1),Archive_F(:,2),Archive_F(:,3),'ro','LineWidth',1,...
'MarkerEdgeColor','b',...
'MarkerFaceColor','r',...
'Marker','o',...
'MarkerSize',10);
legend('True PF','Obtained PF');
title(sprintf('MOMGA FOR P%d PROBLEM',j));
xlabel('obj_1');
ylabel('obj_2');
zlabel('obj_3');
hold off
end
savefig(sprintf('P%d/fig_%d.fig',j,i));
end
save(sprintf('P%d/result_P%d.mat',j,j));
end
⛄ 运行结果
⛄ 参考文献
[1] Talatahari S , Azizi M , Gandomi A H . Material Generation Algorithm: A Novel Metaheuristic Algorithm for Optimization of Engineering Problems[J]. Processes, 2021, 9(5):859.
❤️ 关注我领取海量matlab电子书和数学建模资料
❤️部分理论引用网络文献,若有侵权联系博主删除