找回密码
 立即注册
查看: 256|回复: 0

动态多目标优化算法:动态多目标野狗优化算法DMODOA ...

[复制链接]
发表于 2022-9-28 06:50 | 显示全部楼层 |阅读模式
一、cec2015中测试函数DIMP2、dMOP2、dMOP2iso、dMOP2dec详细信息

CEC2015:动态多目标测试函数之DIMP2、dMOP2、dMOP2_iso、dMOP2_dec_IT猿手的博客-CSDN博客
二、动态多目标野狗优化算法

多目标优化算法:多目标野狗优化算法MODOA(Matlab代码) (mianbaoduo.com)
动态多目标野狗优化算法(Dynamic Multi-objective Dingo Optimization  Algorithm,DMODOA)在MODOA基础上加入环境变化检测及种群重启机制,以应对动态环境下多目标问题的求解。
三、DIMP2、dMOP2、dMOP2iso、dMOP2dec参数说明及求解结果

3.1 8种不同参数设置

环境变化程度、环境变化频率 和最大迭代次数考虑如下8种情形:


3.2多样性度量指标(Spacing,SP)

Schott提出了计算解集分布性的方法, 该指标用来衡量在目标空间的解集分布是否均匀, 其函数定义为:


其中:


式中, di是第 i 个解与其最近解之间的欧几里得距离, n 是已知 Pareto 边界的大小。SP 反映了算法所得到的 Pareto 前沿的均匀性, SP 越小说明算法得到的 Pareto 最优解分布的越 是均匀. 当这种方法与其他方法结合时, 它能提供所得解的分布信息, 从而使结果更加准确。
3.3部分求解结果

设置种群大小为300,外部存档大小为500,当取第一组参数设置时,即环境变化程度、环境变化频率 和最大迭代次数分别为10/5/100,以dMOP2iso为例,其代码如下:(代码中更改TestProblem可以选择不同测试函数,更改group可以选择不同参数设置
close all;
clear ;
clc;
warning off
%参考文献
%[1]M Helbig, AP Engelbrecht. Benchmark Functions for CEC 2015 Special Session and Competition on Dynamic Multi-objective Optimization.
%[2]Hernán Peraza-Vázquez, Adrián F. Pe?a-Delgado, Gustavo Echavarría-Castillo, et al. A Bio-Inspired Method for Engineering Design Optimization Inspired by Dingoes Hunting Strategies[J]. Mathematical Problems in Engineering, vol. 2021, Article ID 9107547, 19 pages, 2021.
%[3]https://blog.csdn.net/weixin_46204734/article/details/126942590?spm=1001.2014.3001.5501
%% 动态多目标野狗优化算法(Dynamic Multi-objective Dingo Optimization Algorithm,DMODOA)
% DMODOA求解cec2015中DIMP2、dMOP2、dMOP2_iso、dMOP2_dec
TestProblem=7;%选择测试函数5-8分别为DIMP2、dMOP2、dMOP2_iso、dMOP2_dec
group=1;%选择参数1-8
MultiObj = GetFunInfoCec2015(TestProblem);%获取测试问题维度、目标函数、上下限、目标个数等信息
MultiObj.name=GetFunPlotName(TestProblem);%获取测试问题名称
paramiter=GetFunParamiter(group);%获取参数nt taut maxgen
% 参数设置
params.Np = 300;        %Np 种群大小
params.Nr = 500;        %Nr 外部存档大小
params.nt=paramiter(1); % nt 环境变化程度
params.taut=paramiter(2);% taut 环境变化频率  
params.maxgen=paramiter(3);%maxgen 最大迭代次数


%动态多目标野狗优化算法求解,结果为Result
Result = DMODOA(params,MultiObj);
save Result Result %保存结果
disp('Repository fitness values are stored in Result.PF');
disp('Repository particles positions are store in Result.PS');
dMOP2iso在环境变化程度为10和环境变化频率为5时:
DMODOA求解dMOP2iso得到的PF:


DMODOA求解dMOP2iso的多样性度量指标SP随时间的变化曲线:


在代码中更改TestProblem和group的值就可以实现不同测试函数在不同参数设置下的结果,简洁方便。
四、参考代码

文件夹中包含DMODOA求解cec2015中测试函数DIMP2、dMOP2、dMOP2iso、dMOP2dec在8种不同参数设置下的所有MATLAB代码,点击main.m即可运行。只需在main.m代码中更改group的值就可以选择不同参数,更改TestProblem的值就可以选择不同测试函数,代码中包含部分注释,快捷方便。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-11-24 11:11 , Processed in 0.089477 second(s), 26 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表