当前位置: 首页 > news >正文

2025年7月一区SCI-投影迭代优化算法Projection Iterative Methods-附Matlab免费代码

引言

本期介绍一种创新元启发式算法——投影迭代优化算法 Projection-Iterative-Methods-based Optimizer (PIMO) 。PIMO是一种受投影迭代法启发的新型元启发式算法。于2025年7月在线发表、9月正式发表在JCR 1区,中科院1区 SCI 期刊  Knowledge-Based Systems。

图片

投影法在约束优化中应用广泛,主要用于保证每次更新时解满足约束条件。通过这样的操作,可以避免解在优化过程中违反约束,从而导致不现实的结果。特别是在复杂约束的非线性优化问题中,投影法显示出其独特的优势。在此背景下,从投影方法中汲取灵感,设计了基于投影迭代方法的优化器(PIMO)。

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

图片

图片

图片

2. 残差引导投影:在残差引导投影过程中,该算法通过在多维空间中连续投影来逼近最优解。将Kaczmarz行作用迭代更新策略与随机梯度下降(SGD)相结合,建立了一个协同混合框架,在高维解空间中提供系统的轨迹引导。在残差思想的基础上,在每次迭代中选择投影方程时,加入了随机梯度的思想。该决策过程具有概率性,增强了算法的探索性。随机选取残差适应度较小的最优解的两个粒子或样本作为引导因子。这样,解的更新不仅依赖于当前解的投影,而且加速了收敛,避免了基于梯度的局部极小值

图片

在更新解决方案时,残差引导投影不仅使用所选代理和最佳解决方案之间的梯度信息,还可以通过雅可比矩阵进一步调整解

图片

雅可比矩阵J是描述非线性优化问题中解对输入变化的敏感性的关键工具。通过对目标函数进行雅可比矩阵计算, 能够基于目标函数的局部线性化进行更精确的投影更新。

图片

图片

图片

通过对目标函数进行雅可比矩阵计算,RGP能够基于目标函数的局部线性化进行更精确的投影更新。因此,位置更新是投影操作和梯度操作的结合

图片

3.双随机投影:双随机投影过程通过引入双随机性,即算法首先随机选择两个索引,增强了算法的全局搜索能力

图片

梯度投影更新:当随机决定使用梯度更新时,算法根据粒子当前位置的差值计算更新方向

图片

雅可比矩阵投影更新:如果过程选择使用雅可比矩阵投影更新,DRP首先计算当前位置的雅可比矩阵, 此步骤为后续更新提供了更细粒度的方向信息。更新方向公式为

图片

4. 加权随机投影更新:加权随机投影更新(Weighted Random Projection Update, WRPU)是一种通过随机加权和自适应调整来引导解空间中的粒子向最优解移动的优化过程。该方法结合了随机性和结构化投影,在勘探过程中保持了粒子全局和局部的平衡,从而提高了优化效率。

随机因子的生成:投影的起点。随机因子确定粒子位置更新过程中各分量的权重,为投影过程提供随机性和灵活性。投影的起始点表示为

图片

投影路径的构建:多路径策略。粒子的位置更新基于两个不同的投影路径,每个路径代表一个投影策略。
路径1:随机加权投影。当前粒子位置X是基础,而目标的位置Xbest是指导性的,两者是随机加权平衡的。附加的扰动项增强了投影路径的灵活性,允许粒子跳出局部最优区域。

图片

路径2:自适应校正投影。粒子根据一个维度因子在每个维度上选择一个投影路径,增加了位置更新的动态性

图片

5. Levy飞行引导投影:LFGP算法通过模拟自然界生物的随机运动来实现高效的全局搜索和局部优化,对粒子的位置进行引导投影,并在每次迭代中动态调整粒子与最优解之间的关系。

触发机制:Levy投影概率

图片

步骤生成:随机步骤

图片

位置更新公式结合最优解

图片

PIMO算法伪代码:

图片

 

通过三组实验验证了PIMO的有效性:CEC2017基准函数、四个现实世界的约束问题和12个UCI数据集,在这些实验中,它优于五种优秀的特征选择算法。数值结果表明,PIMO在各种问题上持续优于其他算法,包括11个高度引用的新算法、7个最先进的算法、7个新颖的数学启发算法和5个领先的二进制算法。研究结果证实,PIMO是稳健的,用户友好的,持续有效。

图片

图片

参考文献

Dongmei Yu, Yanzhe Ji, Yiqiang Xia,Projection-Iterative-Methods-based Optimizer: A novel metaheuristic algorithm for continuous optimization problems and feature selection,Knowledge-Based Systems,Volume 326,2025,113978,

https://doi.org/10.1016/j.knosys.2025.113978.. 

Matlab代码下载

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

完整代码

图片

图片

code_of_PIMO_version1.zip

点击链接跳转:

390种优化算法免费下载-matlab

https://mp.weixin.qq.com/s/EzKqtSwR9r2DkGj-ozJXwA

求解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

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

用于改进所有优化算法:21种混沌映射方法-混沌初始化(附matlab代码)21种混沌映射方法-混沌初始化,适用于所有优化算法https://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代码)https://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代码https://mp.weixin.qq.com/s?__biz=MzkxMDQ5MDk4Ng==&mid=2247486260&idx=1&sn=81b1970cb89364c0289ccdfb403e5388&chksm=c12be731f65c6e273a85456326b503b7f35d9f035405050932ff1926e0b1bfa8076b1bc2d1f2&token=25423484&lang=zh_CN#rd

http://www.lryc.cn/news/597321.html

相关文章:

  • Flutter学习笔记(四)---基础Widget
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘jupyter’问题
  • OSPF路由协议——上
  • 2025.7.15vlan作业
  • vscode怎么安装MINGW
  • Linux下SVN常用指令
  • VRRP虚拟路由器冗余协议
  • 民营医院如何突破技术与模式创新,迎来发展机遇?
  • 14.10 《24小时单卡训练!LoRA微调LLaMA2-7B全攻略,RTX 3090轻松跑》
  • Async/Await
  • translateZ数值大小变化
  • Python 程序设计讲义(7):Python 的基本数据类型——整数类型
  • SpringMVC快速入门之请求与响应
  • JavaScript事件循环机制
  • 免费下载入户申请书,轻松办理登记手续——“文件扫描助手”网站介绍
  • 使用 piano_transcription_inference将钢琴录音转换为 MIDI
  • 开闭原则在C++中的实现
  • 基于Tornado的WebSocket实时聊天系统:从零到一构建与解析
  • 【js(5)原型与原型链】
  • 自由学习记录(72)
  • JavaEE Spring框架的概述与对比无框架下的优势
  • 大模型开发
  • 【Ansible】Ansible 管理 Elasticsearch 集群启停
  • NAPI node-addon-api 编译报错 error C1083: “napi.h”: No such file or directory
  • 【esp32s3】GPIO 寄存器 开发解析
  • MACOS安装配置Gradle
  • 垃圾回收介绍
  • static 关键字的 特殊性
  • 双流join 、 Paimon Partial Update 和 动态schema
  • 【硬件-笔试面试题】硬件/电子工程师,笔试面试题-2,(电路分析/MOS管)