2024年SCI-莲花效应优化算法Lotus effect optimization algorithm-附Matlab免费代码

引言

本期介绍了一种基于自然行为的元启发式优化算法名为莲花效应优化算法Lotus effect optimization algorithm,LEA的元启发式算法。它将蜻蜓算法中的高效算子(比如蜻蜓在花授粉过程中的运动)与叶子上的水的自清洁特性(莲花效应)相结合,进行局部搜索操作。该成果于2024年最新发表在SCI期刊 Journal of Supercomputing 。

图片

原文作者将该方法与使用标准基准函数的其他改进版本的蜻蜓算法进行了比较,根据Fredman对29个基准函数的测试,该方法优于所有其他方法。文章还重点介绍了LEA的实际应用,通过集群降低物联网节点的能耗,从而提高分组传输率和网络寿命。此外,还对具有多重约束条件的焊接梁设计优化问题和减速机问题等实际问题进行了性能测试。

图片

 

参考文献

 Dalirinia, E., Jalali, M., Yaghoobi, M. et al. Lotus effect optimization algorithm (LEA): a lotus nature-inspired algorithm for engineering design optimization. J Supercomput 80, 761–799 (2024). https://doi.org/10.1007/s11227-023-05513-8.

Matlab代码下载

微信搜索并关注-优化算法侠(英文名:Swarm-Opti),或扫描下方二维码关注,以算法名字搜索历史文章即可下载。

2024年SCI-莲花效应优化算法Lotus effect optimization algorithm-附Matlab免费代码

点击链接跳转:

360种群优化算法免费下载-matlab

https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247487159&idx=1&sn=c157edd2a2642164256baf199835b669&chksm=c12be2b2f65c6ba4f249118777603d4936acb3333694d0ee4ce10c81b7150d357a6eba9fc235&scene=21#wechat_redirect

求解cec测试函数-matlab 

cec2017测试函数使用教程及matlab代码免费下载

cec2018测试函使用教程及matlab代码免费下载

cec2019测试函使用教程及matlab代码免费下载

cec2020测试函使用教程及matlab代码免费下载

cec2021测试函使用教程及matlab代码免费下载

cec2022测试函使用教程及matlab代码免费下载
绘制cec2017/018/2019/2020/2021/2022函数的三维图像教程,SO EASY!

215种群智能优化算法python库

Amazing!Python版215种群智能优化算法icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=1&sn=6b439e55b37b6482b8d3831ca85f1d55&chksm=c12be0c8f65c69de71ad51d3b736b871ff52f8646e90624f95dd32b024dfaad369d654aaf8fc#rd

解决12工程设计优化问题-matlab

略微出手,工程设计问题(12)(附Matlab代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247485052&idx=1&sn=80e5573c1c005ee5640e44935044ee35&chksm=c12bea79f65c636fc73758b4f4893502bd89cbd1c5d15d7db15e8b5c94eeae40450439d44944&token=681266555&lang=zh_CN#rd

求解11种cec测试函数-python

【选择自由,免费下载】215种优化算法求解11种cec测试函数-python代码icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=2&sn=eea8fb04dc507ab9119e2c97c03ca2f6&chksm=c12be0c8f65c69decd6c8109f6b997986bf58725fdbbd7ab03752cb6f61aacdb5a2dc7fec762#rd

解决30种工程设计优化问题-python

【一码解决】215种优化算法求解30个现实世界的工程设计优化问题,让你的论文增色10倍(附Python代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=3&sn=ea6d26ae7cb651e5c368f4c73ade228e&chksm=c12be0c8f65c69de739af72d9793838f59ab77bfee36bc2c204f96e2a9e5c6d87dfbbbae698e#rd

仅需一行,可改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)

用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)21种混沌映射方法-混沌初始化,适用于所有优化算法icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486215&idx=2&sn=58f1a69175b0d6431a4c7cdfa114b84d&chksm=c12be702f65c6e14e6bd1ddc33b9cec74991d93303c325853049b7e4afd09039b13083fa79c5&token=25423484&lang=zh_CN#rd

【有经典,有最新】24种信号分解方法(附matlab代码) 

沙场大点兵:24种信号分解方法(附matlab代码)icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486001&idx=1&sn=a87c24cb401017a78a90bd1b1439fcb0&chksm=c12be634f65c6f22368b7229a59ac5ef330b89d710c826dbfd1a1c34a02b1dd7e909c7f40d79&token=25423484&lang=zh_CN#rd

 【分类新范式】27种一维数据转换成二维图像的方法-matlab代码

沙场大点兵:27种一维数据转换成二维图像的方法-matlab代码icon-default.png?t=N7T8https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486260&idx=1&sn=81b1970cb89364c0289ccdfb403e5388&chksm=c12be731f65c6e273a85456326b503b7f35d9f035405050932ff1926e0b1bfa8076b1bc2d1f2&token=25423484&lang=zh_CN#rd

  • 14
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
双层优化算法是一种用于解决多目标优化问题的方法,它将优化问题划分成两个层次:上层和下层。 在上层,我们定义一个目标函数来最小化或最大化一些参数,这些参数是在下层的子问题中定义的。在下层的子问题中,我们通过优化一组约束条件来获得结果,这些约束条件来自于上层定义的优化目标函数。 双层优化算法的优点是能够同时考虑多个目标函数,且在解决高维问题时表现出色。在实现过程中,可以使用各种方法来构建优化函数和约束条件,并采用不同的求解技术来获得最优解。 下面是一个基于双层优化算法的多目标优化问题的MATLAB代码: %Step 1: Set up the upper level optimization problem x0 = [0.5; 0.5]; %Initial guess for x variable options = optimoptions('fmincon','Display','iter','Algorithm','sqp'); %Set options for optimizer [obj_upper, obj_lower] = evalUpperLevelObj(x0); %Evaluate objective function for upper level lower_level = @(y)evalLowerLevelObj(y,obj_upper); %Define lower level objective function nonlcon_lower = @(y)evalLowerLevelConstraints(y,obj_upper); %Define lower level constraint function %Step 2: Solve the lower level optimization problem Y = fmincon(lower_level,[0;0],[],[],[],[],[],[],nonlcon_lower,options); %Solve the lower level problem using fmincon %Step 3: Evaluate the upper level objective function using results of lower level problem [obj_upper,obj_lower] = evalUpperLevelObj(Y); %Evaluate the upper level objective function %Step 4: Repeat steps 2-3 until convergence is achieved while abs(obj_upper-obj_upper_prev)>0.01 %Convergence criterion obj_upper_prev = obj_upper; %Save previous upper level objective function value Y = fmincon(lower_level,[0;0],[],[],[],[],[],[],nonlcon_lower,options); %Solve lower level problem again [obj_upper,obj_lower] = evalUpperLevelObj(Y); %Evaluate upper level objective function again end function [obj_upper,obj_lower] = evalUpperLevelObj(x) %Upper level objective function obj_upper = [x(1).^2+x(2).^2; (x(1)-1).^2+x(2).^2]; %Two objectives (minimize both) obj_lower = []; %No lower level objective function end function [obj_lower] = evalLowerLevelObj(y,obj_upper) %Lower level objective function obj_lower = [y(1).^2+y(2).^2-obj_upper(1); (y(1)-1).^2+y(2).^2-obj_upper(2)]; %Two constraints (less than zero) end function [c,ceq] = evalLowerLevelConstraints(y,obj_upper) %Lower level constraint function c = []; %No inequality constraints ceq = [y(1)+y(2)-obj_upper(1); y(1)*y(2)-obj_upper(2)]; %Two equality constraints (equal to zero) end 以上是一段简单的实现,可以根据实际问题和具体的优化目标进行修改和改进。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值