一、CEC2015简介

现实世界中,许多优化问题不仅具有多属性,而且与时间相关,即随着时间的变化,优化问题本身也发生改变,这类问题称为动态多目标优化问题(dynamic multi-objective optimization problems,DMOP)。DMOP是一类目标之间相互冲突,目标函数、约束函数和相关参数等可能随着时间的变化而改变的多目标优化问题。cec2015共包含12个测试函数,分别是FDA4、FDA5、FDA5iso、FDA5dec、DIMP2、dMOP2、dMOP2_iso、dMOP2_dec、dMOP3、 HE2、HE7和HE9。其中前四个测试函数目标数为3,其余目标数为2。

cec2015详细信息如下:CEC2015

二、狮群优化算法LSO

三、动态多目标狮群优化算法DMOLSO求解CEC2015

动态多目标狮群优化算法(Dynamic Multi-objective Lion Swarm Optimization,DMOLSO)的种群大小设置为300,外部存档大小为500,以dMOP2_iso为例,当取第4组参数设置时,即环境变化程度、环境变化频率 和最大迭代次数分别为10/50/1000,其代码如下:(代码中更改TestProblem以此选择不同测试函数1-12,更改group选择不同参数设置1-8,相对于共有96种情形可供选择

%%
close all;
clear ;
clc;
warning off
%% cec2015 参考文献
%[1]M Helbig, AP Engelbrecht. Benchmark Functions for CEC 2015 Special Session and Competition on Dynamic Multi-objective Optimization. %% 动态多目标狮群优化算法(Dynamic Multi-objective Lion Swarm Optimization,DMOLSO)
TestProblem=7;%选择测试函数1-12(可以自己修改)
group=4;%选择参数1-8 (可以自己修改)
MultiObj = GetFunInfoCec2015(TestProblem);%获取测试问题维度、目标函数、上下限、目标个数等信息
MultiObj.name=GetFunPlotName(TestProblem);%获取测试问题名称
paramiter=GetFunParamiter(group);%获取参数nt taut maxgen
% 参数设置
params.Np = 100;        %Np 种群大小 (可以自己修改)
params.Nr = 200;        %Nr 外部存档大小 (可以自己修改) 注意:外部存档大小Nr不能小于种群大小Np
params.nt=paramiter(1); % nt 环境变化程度
params.taut=paramiter(2);% taut 环境变化频率
params.maxgen=paramiter(3);%maxgen 最大迭代次数%% 动态多目标狮群优化算法DMOLSO求解,结果为Result
Result = DMOLSO(params,MultiObj);%% 获取真实的POF
for gen=1:params.maxgenif rem(gen+1,params.taut)==0POF_Banchmark = getBenchmarkPOF(TestProblem,group,gen);k=(gen+1)/params.taut;Result(k).TruePOF=POF_Banchmark;end
end
%% 计算GD IGD HV Spacing
for k=1:size(Result,2)Result(k).GD=GD(Result(k).PF,Result(k).TruePOF);Result(k).IGD=IGD(Result(k).PF,Result(k).TruePOF); Result(k).HV=HV(Result(k).PF,Result(k).TruePOF);Result(k).Spacing=Spacing(Result(k).PF);%计算性能指标SP
end
%% 保存结果
save Result Result %保存结果
disp('Repository fitness values are stored in Result.PF');
disp('Repository particles positions are store in Result.PS');

部分结果:

四、完整代码

文件夹内包含动态多目标狮群优化算法求解cec2015的完整MATLAB代码,并提供所有问题真实POF,同时提供GD、IGD、HV和SP评价指标,点击main.m即可运行。

动态多目标优化算法:动态多目标狮群优化算法DMOLSO求解cec2015(提供完整MATLAB代码及所有测试问题的真实POF,含GD、IGD、HV和SP评价指标)相关推荐

  1. CEC2015:动态多目标野狗优化算法求解CEC2015(提供完整MATLAB代码,含GD、IGD、HV和SP评价指标)

    一.动态多目标优化问题简介 现实世界中,许多优化问题不仅具有多属性,而且与时间相关,即随着时间的变化,优化问题本身也发生改变,这类问题称为动态多目标优化问题(dynamic multi-objecti ...

  2. 果蝇(FOA)优化算法(附完整Matlab代码,可直接复制)

    果蝇优化算法的核心是利用果蝇搜索实物的机制来对问题进行寻优.果蝇根据气味来确定食物的位置,食物腐烂程度越高,气味越大,果蝇对其越敏感.果蝇的觅食行为如下图: Fig1. 果蝇觅食行为示意图 1.果蝇位 ...

  3. 货物配送问题的matlab,免疫算法求解配送中心选址问题matlab代码

    免疫算法求解配送中心选址问题matlab代码 所属分类:matlab例程 开发工具:matlab 文件大小:31KB 下载次数:3 上传日期:2020-12-01 16:11:00 上 传 者:代码大 ...

  4. 灰狼(GWO)算法(附完整Matlab代码,可直接复制)

    尊重他人劳动成果,请勿转载! 有问题可留言或私信,看到了都会回复解答! 其他算法请参考: 1.粒子群(PSO)优化算法(附完整Matlab代码,可直接复制)https://blog.csdn.net/ ...

  5. 粒子群(PSO)算法(附完整Matlab代码,可直接复制)

    在粒子群优化算法中,每个解可用一只鸟(粒子)表示,目标函数就是鸟群所需要寻找的食物源.寻找最优解的过程中,粒子包含两种行为:个体行为和群体行为. 个体行为:粒子根据自身在寻优过程中的最优解更新自己的位 ...

  6. 【综合评价分析】熵权算法确定权重 原理+完整MATLAB代码+详细注释+操作实列

    [综合评价分析]熵权算法确定权重 原理+完整MATLAB代码+详细注释+操作实列 文章目录 1. 熵权法确定指标权重 (1)构造评价矩阵 Ymn (2)评价矩阵标准化处理 (3)计算指标信息熵值 Mj ...

  7. 【路径优化】基于帝企鹅算法求解TSP问题(Matlab代码实现)

    目录 1 帝企鹅算法 2 旅行商问题(TSP) 3 运行结果 4 参考文献 5 Matlab代码实现 1 帝企鹅算法 帝企鹅优化算法(emperor penguin optimizer,EPO)是Ga ...

  8. 【优化调度】基于粒子群算法求解梯级水电站调度问题matlab代码

    1 简介 粒子群算法( Particle Swarm Optimization, PSO)最早是由Eberhart和Kennedy于1995年提出,它的基本概念源于对鸟群觅食行为的研究.设想这样一个场 ...

  9. 模拟退火法和蚂蚁优化算法求解TSP问题(Matlab代码实现)

    目录 1 概述 2 蚂蚁优化算法运行结果  3 模拟退火法求解结果  4 Matlab代码 1 概述 旅行商问题被定义为一个推销员在所有城市的旅行﹐以最低的成本回到最初的城市.TSP问题的计算规模随着 ...

最新文章

  1. 机器学习必知的8大神经网络架构和原理
  2. 干货|浅谈强化学习的方法及学习路线
  3. Qt Creator 常用快捷键
  4. 什么是数据结构,为什么我们需要数据结构?
  5. button按钮onclick触发不了_单按钮启停:测试模拟脉冲发生器的动作
  6. 1盒子刷webpad_拉宽带送的盒子也有春天:一招解放各种束缚限制
  7. (BCB) CComPtrIHTMLDocument2 FIEDoc;
  8. angular moment 倒计时_倒计时3天丨探寻日本室内设计之道
  9. Maven中配置redis时有红色感叹号
  10. Matlab安装指南
  11. 【SQL基础-1】SQL基本语句—增删改查
  12. 《企业架构的数字化转型》10000字有感
  13. (转)【JSON工具】一个JSON格式化查看工具——HIJSON
  14. PageHelper.startPage的使用
  15. [算法·思想]囚徒困境中Tit For Tat策略为什么就是最好的,之JAVA代码模拟实现
  16. 生命是一个无解的谜——《我喜欢生命本来的样子》读后感作文2100字
  17. 关于开源框架GPUImage 的简单说明
  18. Rigify:面向初学者解决Rigify各种错误的入门级通用解决办法
  19. 好用的z3数独求解器
  20. 本原多项式/PRBS编码

热门文章

  1. FFmpeg开发(三):音频播放器的实现
  2. 【疑难杂症】360主页锁定解决办法
  3. 关于线性调频Z变换(chirp-z transform)加速运算与逆变换
  4. Qt | Qt For Android、Qt5.14.2安卓开发环境搭建详细步骤
  5. ERA5 积雪 降雪 区别_漠河降雪量已达入秋以来最大级别
  6. wordcloud python_python模块之wordcloud
  7. php rrdtool,RRDtool 简介
  8. 【PTM】ELMo:通过预训练语言模型生成词向量
  9. 【chatGPT】如何将一个bat等应用做成windows服务
  10. ubuntu下git配置和基本使用