2026年1月一区SCI-波动光学优化算法Wave Optics Optimizer-附Matlab免费代码

引言

本期介绍一种新的创新算法------波动光学优化算法Wave Optics Optimizer,WOO。WOO的灵感来自弗劳恩霍夫衍射实验,该实验揭示了光的波动性质。在WOO中,每个光波对应于一个候选解。该成果于2026年1月最新发表 在 JCR 1区,中科院1区(小区)期刊 Communications in Nonlinear Science and Numerical Simulation。

数学建模

受夫琅和费衍射实验的启发,本文提出了一种新的优化器WOO。在WOO中,空间中的每个平行光波都被视为候选解。这些波由于衍射效应扩散到空间中,并由于干涉效应在屏幕上形成明暗相间的条纹图案。光强最高的区域称为中央亮边,被认为是种群的最佳位置。光波在空间中的扩散和相互作用可以看作是种群探索空间的过程。

  1. 初始化:和其他群优化算法一样,采用随机初始化。

当单色光通过狭缝时,就会发生衍射。为了以后的计算方便,我们假设有N衍射后波前上的点,其中点的数目等于初始平行光波的数目S。提出了一种计算平行光波通过狭缝后初始波前位置的模型

一组F在式(14)中存储了表示质量的评价值的位置X。在最小化问题中,一个较小F表示更好的位置X,其中全局最优解定义为BestX,其对应的最优适应度值定义为BestF。

参数Ua表示平行光波通过狭缝时的初始不确定度。它有助于在解决复杂的优化问题时有效地指导WOO,防止避免陷入局部最优,并确保WOO在复杂的搜索空间中保持强大的优化性能。

在以后的迭代中,它引入了较小的扰动来增强局部开发能力。此外,这些小的扰动有助于减轻算子对BestX周围邻域信息的破坏性影响

WOO个体的选择策略如下所示。在这个阶段,WOO排名基于F的质量,作为顶部N/2个体更接近全局最优位置,使其成为个体扩散的合适参考。

  1. 随机策略:当波浪在屏幕上相遇并形成明暗交替的条纹时,种群正式进入解决方案空间内的交互式学习和搜索阶段:
  1. 强化策略:随着迭代的进行,种群向全局最优位置移动。然而,在复杂的优化问题中,解空间往往是巨大而复杂的,充满了大量的局部最优。仅仅依靠探索可能会使算法陷入这些局部最优,从而使最终结果无法达到全局最优。因此,利用有希望的位置有助于算法摆脱局部最优,找到更高质量的解。WOO在强化策略中合并了以下两个更新操作符。
  1. 调整策略:为了进一步提高贪婪策略在WOO中更新个体位置时对空间信息的利用,本文提出了一种基于群体优势信息的调整策略。

算法伪代码:

03. 对比验证

原文作者为了评估WOO的优化能力,在3个CEC套件(CEC2014、CEC2017、CEC2022)和7个工程优化问题上进行了实验。将WOO与11个经典优化器、11个改进优化器和9个高性能CEC优化器进行了比较。实验结果和统计分析表明,WOO在大多数测试任务中都取得了优异的优化性能,在各种类型的数值优化问题中保持了较强的适应性和竞争力。因此,WOO可以看作是一个高性能的优化算法

参考文献

Yong Peng, Shaowei Gu, Yunbin Liang, Kaichen Ouyang, Yingli Li, Kui Wang, Guohua Wu, Chaojie Fan,

Wave Optics Optimizer: A novel meta-heuristic algorithm for engineering optimization,Communications in Nonlinear Science and Numerical Simulation,Volume 152, Part D,2026,109337, https://doi.org/10.1016/j.cnsns.2025.109337.

Matlab代码下载

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

完整代码

Code of WOO.zip

链接:https://pan.quark.cn/s/29556d4fcd1c

点击链接跳转

400多种优化算法免费下载-matlab

https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247488871&idx=1&sn=ea026691584099bc23b5d9a8c0d9d9cf&scene=21&poc_token=HG5-tWijLKDzrao_cHY0NlLHnIgBxRgsfIQFxbLihttps://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247488871&idx=1&sn=ea026691584099bc23b5d9a8c0d9d9cf&scene=21&poc_token=HG5-tWijLKDzrao_cHY0NlLHnIgBxRgsfIQFxbLi

求解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种群智能优化算法https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=1&sn=6b439e55b37b6482b8d3831ca85f1d55&chksm=c12be0c8f65c69de71ad51d3b736b871ff52f8646e90624f95dd32b024dfaad369d654aaf8fc#rd

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

略微出手,工程设计问题(12)(附Matlab代码)https://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代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486669&idx=2&sn=eea8fb04dc507ab9119e2c97c03ca2f6&chksm=c12be0c8f65c69decd6c8109f6b997986bf58725fdbbd7ab03752cb6f61aacdb5a2dc7fec762#rd

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

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

《一行破万法》:80余种改进策略仅需一行,可改进所有优化算法(附matlab代码)

https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247487693&idx=1&sn=2e112a6ecad1a302179ed83a955fb26b&scene=21&poc_token=HBF_tWijdJadHRqwV2szg8ee9k-p1DTwa8W7GF4Chttps://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247487693&idx=1&sn=2e112a6ecad1a302179ed83a955fb26b&scene=21&poc_token=HBF_tWijdJadHRqwV2szg8ee9k-p1DTwa8W7GF4C

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

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

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

2025年故障诊断的创新思路在哪里?赶紧来学习这28种创新方法!https://mp.weixin.qq.com/s/EdRYeziIhnZE5zK0ZZhwmg

相关推荐
扶苏-su2 小时前
Java-文件
java·开发语言
wregjru2 小时前
【读书笔记】Effective C++ 条款3:尽可能使用const
开发语言·c++
kylezhao20192 小时前
C#手写串口助手
开发语言·c#
Kyln.Wu2 小时前
【python实用小脚本-292】[HR揭秘]手工党点名10分钟的终结者|Python版Zoom自动签到+名单导出加速器(建议收藏)
开发语言·python·swift
普通网友2 小时前
PictureSelector 相册全白不显示问题
java·开发语言
普通网友2 小时前
用 Next.js 15 做图片查看网站:图片双击放大的交互坑与修复
开发语言·javascript·交互
独自破碎E2 小时前
kafka中的时间轮实现
java·开发语言
程序员阿鹏2 小时前
如何保证写入Redis的数据不重复
java·开发语言·数据结构·数据库·redis·缓存
JAY_LIN——82 小时前
字符串函数(strncpy/cat/cmp、strstr、strtok、strerror)
c语言·开发语言