基于萤火虫算法优化的BP神经网络预测模型(Matlab代码实现)

简介: 基于萤火虫算法优化的BP神经网络预测模型(Matlab代码实现)

1 概述

现实的世界中混沌现象无处不在,大至宇宙,小到基本粒子,都受到混沌理论支配.如气候变化会出

现混沌现象,数学、物理、化学和生物中也存在混狸现象,混沌的出现,打破了学科之间的界限,是一门

新兴的交叉学科.随着非线性动力学领域的发展,混沌时间序列预测已成为混沌领域研究的热点.许多

专家学者在这一领域做了许多研究工作,如 EMD算法[1]、联合嫡扩维法[2]、支持向量机3l、Volterra滤波器[4]、BP神经网络模型 5]、RBF神经网络模型!6以及一些混合模型[783.在这些预测算法中,神经网络因具有良好的泛化能力与强大的学习能力,成为许多专家学者研究的热点.但在实际应用中,神经网络中初始权值和阈值的取值对其优化性能有着较大的影响3].萤火虫优化算法(Glowworm SwarmOptimization,GSO)是模拟萤火虫求偶或觅食行为而提出的一种新的群智能算法[10],它不仅具有很强的全局寻优能力,而且不需要目标函数的梯度信息,具有易用性、鲁棒性和容易实现等特点,非常适用于神经网络的参数优化.

本文从非线性时间序列出发,提出了一种采用萤火虫算法优化BP神经网络的算法(GSOBPNN),该算法利用萤火虫算法得到更优的网络初始权值和阈值,该方法利用萤火虫算法来弥补BP神经网络连接权值和阈值选择上的随机性缺陷.利用该方法对Duffing 系统产生的混沌时间序列预测分析,仿真结果表明该算法具有更高的预测准确性.


2 萤火虫算法


基本萤火虫算法是Krishnanad等人在2005年提出的一种新型群智能优化算法[8,它是将搜索和寻优过程模拟成萤火虫个体的吸引和移动过程,通过求解问题的目标函数量化萤火虫个体所处位置的优劣.在萤火虫算法中,每只萤火虫分布在目标函数的定义空间内,这些萤火虫个体都有自己的决策半径且自身携带荧光粉,萤火虫的亮度是由自己所在的位置的目标函数值决定,某处的亮度越大说明该处的萤火虫具有越好的目标函数值,从而可以吸引更多的萤火虫往该方向移动,由于每个萤火虫拥有各自的决策半径,决策半径同时会受到相邻的萤火虫影响,当其周围的萤火虫的数量较少时,萤火虫的决策半径就会增大,从而能够吸引周围更多的萤火虫.当周围的萤火虫的数量比较多的时候,决策半径就会变小.最终,绝大多数萤火虫会聚集在若干个具有较优目标函数值的位置.


3 萤火虫算法优化BP神经网络的算法设计

3.1 基本思想

GSOBPNN的基本思想是:根据输入输出参数确定BPNN的网络结构,从而确定萤火虫算法每个个体的编码长度.种群中的每个个体都包含了BPNN 的所有权值和阈值,通过适应度函数计算个体适应度函数值,并通过位置更新、决策半径更新以及荧光素更新找到最佳函数值对应的个体.将GSO优化得到的个体对BPNN的初始权值和阈值进行赋值,再利用BPNN 网络模型进行优化,从而得到具备全局最优解的BPNN预测值.


3.2 萤火虫算法优化BP神经网络算法

 

4 运行结果


5 参考文献

[1]侯越,赵贺,路小娟.基于萤火虫优化的BP神经网络算法研究[J].兰州交通大学学报,2013,32(06):24-27.

6 Matlab代码及文章

相关文章
|
2月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
204 0
|
2月前
|
机器学习/深度学习 算法 机器人
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
使用哈里斯角Harris和SIFT算法来实现局部特征匹配(Matlab代码实现)
143 8
|
2月前
|
机器学习/深度学习 算法 自动驾驶
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
基于导向滤波的暗通道去雾算法在灰度与彩色图像可见度复原中的研究(Matlab代码实现)
154 8
|
2月前
|
机器学习/深度学习 数据采集 负载均衡
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
结合多种启发式解码方法的混合多目标进化算法,用于解决带工人约束的混合流水车间调度问题(Matlab代码实现)
129 0
|
2月前
|
机器学习/深度学习 人工智能 算法
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
【基于TTNRBO优化DBN回归预测】基于瞬态三角牛顿-拉夫逊优化算法(TTNRBO)优化深度信念网络(DBN)数据回归预测研究(Matlab代码实现)
120 0
|
3月前
|
机器学习/深度学习 算法 调度
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
14种智能算法优化BP神经网络(14种方法)实现数据预测分类研究(Matlab代码实现)
338 0
|
3月前
|
机器学习/深度学习 传感器 算法
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
【无人车路径跟踪】基于神经网络的数据驱动迭代学习控制(ILC)算法,用于具有未知模型和重复任务的非线性单输入单输出(SISO)离散时间系统的无人车的路径跟踪(Matlab代码实现)
208 2
|
2月前
|
机器学习/深度学习 数据采集 存储
概率神经网络的分类预测--基于PNN的变压器故障诊断(Matlab代码实现)
概率神经网络的分类预测--基于PNN的变压器故障诊断(Matlab代码实现)
274 0
|
3月前
|
机器学习/深度学习 并行计算 算法
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
【CPOBP-NSWOA】基于豪冠猪优化BP神经网络模型的多目标鲸鱼寻优算法研究(Matlab代码实现)
|
3月前
|
机器学习/深度学习 缓存 算法
2025年华为杯A题|通用神经网络处理器下的核内调度问题研究生数学建模|思路、代码、论文|持续更新中....
2025年华为杯A题|通用神经网络处理器下的核内调度问题研究生数学建模|思路、代码、论文|持续更新中....
400 1

热门文章

最新文章