CEC2015:(二)动态多目标野狗优化算法DMODOA求解DIMP2、dMOP2、dMOP2iso、dMOP2dec(提供Matlab代码)

一、cec2015中测试函数DIMP2、dMOP2、dMOP2iso、dMOP2dec详细信息

CEC2015:动态多目标测试函数之DIMP2、dMOP2、dMOP2iso、dMOP2dec详细信息

二、动态多目标野狗优化算法

多目标野狗优化算法(Multi-Objective Dingo Optimization Algorithm,MODOA)原理

动态多目标野狗优化算法(Dynamic Multi-objective Dingo Optimization Algorithm,DMODOA)在MODOA基础上加入环境变化检测及种群重启机制,以应对动态环境下多目标问题的求解。

三、DIMP2、dMOP2、dMOP2iso、dMOP2dec参数说明及求解结果

3.1 8种不同参数设置

环境变化程度、环境变化频率 和最大迭代次数考虑如下8种情形:
在这里插入图片描述

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

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

CEC2015:(二)动态多目标野狗优化算法DMODOA求解DIMP2、dMOP2、dMOP2iso、dMOP2dec(提供Matlab代码)_第1张图片

其中:
CEC2015:(二)动态多目标野狗优化算法DMODOA求解DIMP2、dMOP2、dMOP2iso、dMOP2dec(提供Matlab代码)_第2张图片

式中, 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/126926257?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:

CEC2015:(二)动态多目标野狗优化算法DMODOA求解DIMP2、dMOP2、dMOP2iso、dMOP2dec(提供Matlab代码)_第3张图片

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

CEC2015:(二)动态多目标野狗优化算法DMODOA求解DIMP2、dMOP2、dMOP2iso、dMOP2dec(提供Matlab代码)_第4张图片

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

四、参考代码

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

在这里插入图片描述

你可能感兴趣的:(动态多目标,CEC,MATLAB,算法,动态多目标优化,多目标算法)