多目标应用(二):多目标麋鹿优化算法(MOEHO)求解10个工程应用,提供完整MATLAB代码

一、麋鹿优化算法

麋鹿优化算法(Elephant Herding Optimization,EHO)是2024年提出的一种启发式优化算法,该算法的灵感来源于麋鹿群的繁殖过程,包括发情期和产犊期。在发情期,麋鹿群根据公麋鹿之间的争斗分为不同大小的家族,较强的公麋鹿可以与大量的雌麋鹿组成家族。在产犊期,每个家族的公麋鹿和雌麋鹿繁殖新的幼崽。在优化过程中,优化循环由发情期、产犊期和选择期三个阶段组成。在选择期,所有家族合并,选择最适应的麋鹿群用于下一轮的发情期和产犊期。EHO 将种群分为一组组的群体,每个群体在发情期有一个领导者和若干跟随者,跟随者的数量根据领导者的适应度值确定。在产犊期,每个群体根据领导者和跟随者生成新的解。在选择期,所有群体的成员包括领导者、跟随者和新解被合并,选择最适应的种群。
在这里插入图片描述

参考文献:
[1] Al-betar, M.A., Awadallah, M.A., Braik, M.S., Makhadmeh, S.N., & Abu Doush, I. (2024). Elk herd optimizer: a novel nature-inspired metaheuristic algorithm. Artif. Intell. Rev., 57, 48.

二、多目标麋鹿优化算法

针对单目标优化问题,麋鹿优化算法已显示出其有效性。然而,在面对多目标优化问题时,需要一种能够同时处理多个冲突目标的算法。因此,本文提出多目标麋鹿优化算法(Multi-objective Elephant Herding Optimization,MOEHO)。MOEHO是麋鹿优化算法的多目标扩展,它能够有效地解决多目标优化问题。

为了评估MOEHO的性能,我们将其应用于十个工程应用。此外,为了全面评估算法的收敛性和解的多样性,我们使用了六种不同的性能度量指标:GD、IGD、HV、Spacing、Spread和Coverage。通过这些指标的综合分析,我们可以有效地评估该算法在处理多目标优化问题时的整体性能。

MOEHO算法的执行步骤可以描述如下:
在这里插入图片描述

  1. 初始种群的生成:算法首先随机生成一个初始种群,其中每个个体象征着一个可能的解决方案。

  2. 个体的评估与筛选:算法对初始种群中的个体进行评估,并根据特定的标准筛选出合适的个体。

  3. 新个体的产生:通过配对操作,从筛选后的个体中生成新的子代个体。

  4. 环境选择过程:算法通过环境选择机制对新产生的子代个体进行评估,以确定哪些个体将进入下一代。

  5. 终止条件的判断:算法会持续进行迭代,直到满足预设的终止条件,这些条件可能包括达到最大迭代次数或解决方案的质量达到既定标准。

  6. 近似Pareto解集的形成:当满足终止条件后,最后一次环境选择中保留的个体将构成近似的Pareto解集。

在这一过程中,环境选择机制扮演着至关重要的角色。它负责从子代个体中挑选出能够支配其他个体或与其他个体互不支配的精英个体。这些精英个体代表了当前种群中的最优质解。随着算法的不断迭代,每次迭代都能选出新的精英个体,最终能够逼近问题的最优解。

1、Simply SupportedI-beam Design

在这里插入图片描述

2、 Gear Box Design

在这里插入图片描述

3、Multiple Disk Clutch Brake Design

在这里插入图片描述
在这里插入图片描述

4、 Spring Design

在这里插入图片描述

在这里插入图片描述

5、 Cantilever Beam Design

在这里插入图片描述

6、Bulk Carrier Design

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

7、 Front Rail Design

在这里插入图片描述

8、Multi-product Batch Plant

在这里插入图片描述

在这里插入图片描述

9、Hydro-staticThrustBearingDesign

在这里插入图片描述
在这里插入图片描述

10、 Crash Energy Management for High-speed Train

在这里插入图片描述
在这里插入图片描述

三、部分MATLAB代码

%% 参数说明
%testProblem 测试问题序号
%Name 测试问题名称
%dim 测试问题维度
%numObj测试问题目标函数个数
%lb测试问题下界
%ub测试问题上界
%SearchAgents_no 种群大小
%Max_iter最大迭代次数
%Fbest 算法求得的POF
%Xbest 算法求得的POS
%TurePF 测试问题的真实pareto前沿
%Result 评价指标随迭代次数的变化值
testProblem=2;
[Name,dim,numObj,lb,ub]=GetProblemInfo(testProblem);%获取测试问题的相关信息
SearchAgents_no=200;%种群大小 
Max_iter=200;%最大迭代次数
[Fbest,Xbest,TurePF,Result] = MOEHO(Max_iter,SearchAgents_no,Name,dim,numObj,lb,ub);%算法求解

四、部分结果

Cantilever Beam Design

在这里插入图片描述

Multiple Disk Clutch Brake Design

在这里插入图片描述

Front Rail Design

在这里插入图片描述

Simply SupportedI-beam Design

在这里插入图片描述

五、完整MATLAB代码

见下方名片

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值