资源简介
此代码包含MFEA和MFEAII的matlab实现,只需要将所有文件夹加入路径,然后运行main即可。
代码片段和文件信息
% 本程序主要实现了进化多任务优化2、优化函数为最小化函数、最大化函数需要转化为最小化函数
% 有任何问题可以联系我的邮箱: wangchao(Email: xiaofengxd@126.com)
clcclear
%% 参数设置
global N gen
N = 30; % 种群大小(设置为偶数)
rmp = 0.3; % 随机交配池概率
pi_l = 1; % 个体学习的概率(BFGA quasi-Newton Algorithm),trap-5onemaxLeadingOnes_TrailingOnes不可以使用预搜索
Pc = 1; % 模拟二进制交叉概率
Pm = 1; % 多项式变异概率
mu = 15; % 模拟二进制交叉参数(可调)
muu = 15; % 多项式交叉参数
probswap = 0.5; %变量交换概率
sigma = 0.02; % 高斯变异模型的标准差(可调)
gen = 500; % 迭代次数
selection_process = ‘elitist‘; % 可供选择:elitist、roulette wheel、Tournament
name = ‘RastriginAckley‘; % 测试任务选择有:RastriginAckley、SphereWeierstrass、RastriginAckleySphere、RastriginRastrigin、AckleyAckley,trap-5onemaxLeadingOnes_TrailingOnes请在类TASK中修改增加任务,后两个任务需要将Calobj.m文件的15-18注释,使用19~21行
options = optimoptions(@fminunc‘Display‘‘off‘‘Algorithm‘‘quasi-newton‘‘MaxIter‘5); %调用matlab函数优化器(拟牛顿法)->设置预学习优化器
times = 1; %算法运行次数
%% 初始化任务
Task = TASK();
Task = initTASK(Taskname);
%% 多次实验
EvBestFitness = zeros(gen+1Task.M);%由于还保存了初始化结果,第0代,因此+1
rmpval = zeros(gen+1Task.M*Task.M); %每代的rmp
for i =1:times
% data_MFEA(i) = MFEA(rmppi_lPcPmmumuusigmaselection_processoptionsTaskprobswap);%调用MFEA算法
% save([‘Data\‘name‘_data.mat‘]‘data_MFEA‘);%记录多次实验结果
% EvBestFitness = EvBestFitness + data_MFEA(i).EvBestFitness;
data_MFEA2(i) = MFEA2(pi_lPcPmmumuusigmaselection_processoptionsTaskprobswap);%调用MFEA算法
save([‘Data\‘name‘_data.mat‘]‘data_MFEA2‘);%记录多次实验结果
EvBestFitness = EvBestFitness + data_MFEA2(i).EvBestFitness;
rmpval = rmpval + data_MFEA2(i).rmpval ;
end
EvBestFitness = EvBestFitness./times;%计算每代适应度的均值
rmpval = rmpval./times;
%% 画图
for i=1:Task.M
figure(i)
hold on
plot(EvBestFitness(:i));
xlabel(‘GENERATIONS‘);
ylabel([‘TASK ‘ num2str(i) ‘ objectIVE‘]);
saveas(gcf[‘Data\figure_‘name‘_Task‘num2str(i)‘.jpg‘]);
end
%% 画RMP
for j=1:Task.M*Task.M
figure(i+j)
hold on
plot(rmpval(:j));
xlabel(‘GENERATIONS‘);
if(mod(jTask.M) == 0)
ylabel([‘rmp‘‘_‘ num2str(Task.M)‘_‘num2str(j/Task.M)]);
saveas(gcf[‘Data\figure_‘name‘rmp ‘‘_‘ num2str(Task.M)‘_‘num2str(j/Task.M)‘.jpg‘]);
else
ylabel([‘rmp‘‘_‘ num2str(mod(jTask.M))‘_‘num2str((j-mod(jTask.M))/Task.M+1)]);
saveas(gcf[‘Data\figure_‘name‘rmp ‘‘_‘ num2str(mod(jTask.M))‘_‘num2str((j-mod(jTask.M))/Task.M+1)‘.jpg‘]);
end
end
%% 记录多次平均实验结果
data.EvBestFitness=EvBestFitness;
% data.RT = Score;
save([‘Data\‘name‘_datasum.mat‘]‘data‘); 属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 2383 2019-09-04 13:29 MFEA2 by xiaofengboke\algorithm\MFEA\MFEA.m
文件 2880 2019-09-03 09:24 MFEA2 by xiaofengboke\algorithm\MFEA2\learnRMP.m
文件 2554 2019-09-04 13:27 MFEA2 by xiaofengboke\algorithm\MFEA2\MFEA2.m
文件 3260 2019-10-25 20:18 MFEA2 by xiaofengboke\main.m
文件 1436 2019-09-03 11:14 MFEA2 by xiaofengboke\operators\Calfactor.m
文件 1765 2019-09-04 13:32 MFEA2 by xiaofengboke\operators\CalObj.m
文件 575 2019-05-23 09:07 MFEA2 by xiaofengboke\operators\combpop.m
文件 1669 2019-05-23 15:51 MFEA2 by xiaofengboke\operators\EnvironmentalSelection.m
文件 2595 2019-05-24 08:53 MFEA2 by xiaofengboke\operators\GA.m
文件 5510 2019-09-04 13:24 MFEA2 by xiaofengboke\operators\GA_MFEA.m
文件 5498 2019-09-04 12:19 MFEA2 by xiaofengboke\operators\GA_MFEA2.m
文件 523 2019-05-23 22:40 MFEA2 by xiaofengboke\operators\RouletteWheelSelection.m
文件 556 2019-05-23 19:52 MFEA2 by xiaofengboke\operators\TournamentSelection.m
文件 315 2019-05-24 08:40 MFEA2 by xiaofengboke\problems\Ackley.m
文件 137 2019-09-03 18:23 MFEA2 by xiaofengboke\problems\leadone.m
文件 257 2019-05-24 08:41 MFEA2 by xiaofengboke\problems\Rastrigin.m
文件 217 2019-05-24 08:42 MFEA2 by xiaofengboke\problems\Sphere.m
文件 145 2019-03-26 17:02 MFEA2 by xiaofengboke\problems\targetRan.m
文件 71 2019-09-03 18:30 MFEA2 by xiaofengboke\problems\trailone.m
文件 434 2019-09-03 15:47 MFEA2 by xiaofengboke\problems\trap5.m
文件 530 2019-05-24 08:42 MFEA2 by xiaofengboke\problems\Weierstrass.m
文件 1291 2019-05-24 08:47 MFEA2 by xiaofengboke\public\INDIVIDUAL.m
文件 7130 2019-09-03 15:58 MFEA2 by xiaofengboke\public\TASK.m
目录 0 2019-10-25 20:16 MFEA2 by xiaofengboke\algorithm\MFEA
目录 0 2019-10-25 20:16 MFEA2 by xiaofengboke\algorithm\MFEA2
目录 0 2019-10-25 20:16 MFEA2 by xiaofengboke\algorithm
目录 0 2019-10-25 20:17 MFEA2 by xiaofengboke\Data
目录 0 2019-10-25 20:16 MFEA2 by xiaofengboke\operators
目录 0 2019-10-25 20:16 MFEA2 by xiaofengboke\problems
目录 0 2019-10-25 20:16 MFEA2 by xiaofengboke\public
............此处省略4个文件信息
相关资源
- Pattern Recognition and Machine Learning(高清
- 随机梯度下降算法的MATLAB实现
- DeepLearningLSTM.m
- 线性拟合仿真-最小二乘法、正交回归
- matlab编写的有限元杆的计算
- 机械臂SEA柔顺控制matlab仿真
- 最全最新的matlab----findpeaks代码运用
- matlabreadgrib用matlab读grib数据grib数据是
- matlab beamforming
- MATLAB 特征提取
- 斯坦福机器学习编程作业machine-learn
- Nonlinear control systems using MATLAB(2019)
- 图像去噪方法分析比较BLS GSM BM3D Non
- Linear Algebra with Applications 9th ed - Stev
- K均值聚类算法,图像处理,GUI,mat
- MACHINE_LEARNING_with_NEURAL_NETWORKS_using_MA
- MATLAB Deep Learning: With Machine Learning Ne
- 用matlab编写的Meanshift追踪程序
- matlab车牌定位识别,完整案例
- mean shift 目标跟踪matlab程序
- mp3read and mp3write 完整打包
- Clustering by fast search and find of density
- big creature.m4a
- shearlet变换
- MATLABDeepLearning.rar
- 基于K-means算法的遥感图像分类的mat
- Meanshift算法实现目标跟踪的MatLAB代码
- Practical Finite ElementModeling in Earth Scie
- 基于Matlab实现的图像分割的常用算法
- meanshift分割算法的matlab实现,完整标
川公网安备 51152502000135号
评论
共有 条评论