基于竞争学习的混沌神经网络算法用于全局优化(Matlab代码实现)
目录
1 概述
目前,很多工程领域都涉及到优化问题,如小规模负荷预测问题[1]、光伏模型参数识别[2]、作业车间调度问题[3]、机器人路径规划[4] , 风电预测[5], 能源管理问题[6], 彩色图像分割[7], 联合能源-储备市场清洁问题[8], 复杂网络聚类[9], 工程结构设计问题[10], 风能和太阳能短期功率预测[11] ,智能皮肤癌检测问题 [12],无线传感器网络的节能路由问题 [13] 以及为承诺的储备提取适当的节点边际价格 [14]。因此,开发优化方法可以解决不同类型的实际优化问题,这一直是一个热门的研究课题。经过不懈努力,研究人员开发了很多优化方法,大致可分为确定性方法和元启发式方法。
确定性方法通常基于数值线性和非线性规划方法,这些方法需要大量梯度信息并寻求改进起点附近的解决方案 [15,16]。请注意,确定性算法的性能已经变得高度依赖于所选的起点。对于确定性算法,一旦起点固定,获得的解决方案就已经确定。事实上,大多数现实世界的优化问题非常复杂,其目标函数通常是指多个局部最优解并且具有非线性特征[17]。考虑到起点的敏感性,确定性算法倾向于陷入局部最优解以解决复杂的现实世界问题 [16,18,19]。与确定性算法相比,元启发式算法不依赖梯度信息和复杂的数学原理,而是基于定义的简单规则来模仿自然现象,例如微分进化[20]inspiredbybiologicalevolution,cuckoosearch[21]灵感来自传性育雏寄生一些杜鹃物种的行为,排队搜索[22]受人类活动排队过程的启发,以及受万有引力定律启发的引力搜索算法[23]。需要注意的是,随机性可视为元启发式方法最显着的特征。
神经网络算法(NNA)是最新提出的元启发式算法之一。由于人工神经网络的独特结构,NNA具有很强的全局搜索能力。此外,NNA 是一种无需任何努力微调初始参数的算法。因此,NNA 很容易解决不同类型的优化问题。然而,当用于解决复杂的优化问题时,收敛速度慢和过早收敛是它的缺点。为了克服这两个缺点,这项工作提出了一种改进的 NNA,即具有竞争学习的混沌神经网络算法(CCLNNA),用于全局优化。在CCLNNA中,首先根据建立的竞争机制将群体分为优秀亚群和普通亚群。然后,为了平衡CCLNNA的探索和利用,通过设计的转移算子优化优秀子群,而通过设计的偏差算子和转移算子的组合更新普通子群。此外,引入混沌理论以增加CCLNNA脱离局部最优的机会。为了研究改进策略的有效性,CCLNNA 首次用于求解具有 30 个基准函数的著名 CEC 2014 测试套件。然后将其用于解决三个受约束的现实世界工程设计问题。实验结果表明,引入 NNA 的改进策略可以显着提高 NNA 的优化性能,与其他竞争算法相比,CCLNNA 是解决具有多模态属性的复杂优化问题的非常强大的算法。
2 数学模型
详细数学模型见第6部分。
3 运行结果
clc
clear all
lb = -100.*ones(1,10);
ub = 100.*ones(1,10);
maxit = 1000;
objf= @Sphere;
n = 50;
d = 10;
for i=1:n
X(i,:)=lb+rand(1,d).*(ub-lb);
end
[BestCost,BestValue]=CCLNNA(objf,n,d,lb,ub,maxit,X);
figure()
plot(BestCost,'r','linewidth',1)
xlabel('迭代次数','fontsize',15);
ylabel('最优解','fontsize',15);
4 参考文献
部分理论来源于网络文献,如有侵权请联系删除。
[1]伦泽明.改进混沌遗传算法优化BP神经网络的短时交通流预测[J].电脑编程技巧与维护,2017(05):18-20.DOI:10.16184/j.cnki.comprg.2017.05.005.
5 Matlab代码实现
相关文章
- MATLAB学习笔记 FloodFill算法
- matlab 稀疏点云在线分割
- 二进制蜻蜓优化算法(附Matlab完整代码)
- 【风电预测】考虑预测误差不确定性的风电预测研究(matlab代码实现)
- 【微电网】基于改进粒子群算法的微电网优化调度(Matlab代码实现)
- 【负荷预测】基于蚂蚁优化算法的BP神经网络在负荷预测中的应用研究(Matlab完整代码实现)
- 基于蚁群算法求解运钞车路径规划问题(Matlab代码实现)
- 基于RRT算法的最优动力学路径规划(Matlab代码实现)
- 基于蚁群算法的三维路径规划算法以及蚁群算法的优化计算——TSP优化(Matlab代码实现)
- 【路径优化】基于A*算法的路径优化问题(Matlab代码实现)
- 基于A*算法的多机器人图形路径规划解决策略(Matlab代码实现)
- 基于PSO训练常规自动编码器(Matlab代码实现)
- 基于飞机配电优化负荷管理系统研究(Matlab代码实现)
- 【语音处理】使用块反射器的基于DFT的系统中用于旁瓣抑制的正交预编码(Matlab代码实现)
- m基于GA遗传优化的GRNN广义回归神经网络销售数据预测算法matlab仿真
- m基于LOC-PCA算法的人脸重建算法matlab仿真,给定人物侧脸实现正脸重建
- m基于HMM隐性马尔科夫模型的驾驶员驾驶意图识别算法matlab仿真
- 基于LSTM深度学习网络的疾病发作检测算法matlab仿真
- m基于简化后的轻量级yolov4深度学习网络农作物检测算法matlab仿真
- m基于多核学习支持向量机MKLSVM的数据预测分类算法matlab仿真
- 蚂蚁狮子优化算法(完整Matlab代码实现)
- m基于负价环N算法的无线传感器网络性能matlab仿真
- m无线传感器网络WSN的时间同步捕获算法matlab仿真,对比单步捕获法,双步捕获法以及锯齿波匹配捕获法
- matlab图像处理:一个提取缝隙的图像处理算法
- 将数据导入到MATLAB