APP下载

基于免疫遗传算法的BP神经网络在纱线条干预测上的应用

2019-09-10查刘根谢春萍

丝绸 2019年2期
关键词:BP神经网络遗传算法

查刘根 谢春萍

摘要: 為了避免因随机生成BP神经网络初始权值和阈值而带来的不确定性,以及得到更好的预测纱线条干CV值的精度和速度,借助免疫遗传算法对传统单一的BP神经网络进行权值和阈值的优化。免疫算法中特有的浓度调节机制有效地解决了遗传算法后期未成熟收敛的问题。利用Matlab构建单一的BP神经网络模型、遗传BP神经网络模型和免疫遗传BP神经网络模型进行纱线条干CV值的预测实验,通过仿真训练结果的对比分析可得出,免疫遗传算法优化的BP神经网络能够更准确、更快速、更稳定地完成纱线条干CV值的预测。

关键词: 纱线条干;纱线质量预测;BP神经网络;免疫算法;遗传算法

中图分类号: TS111.914

文献标志码: A

文章编号: 1001-7003(2019)02-0019-08

引用页码: 021104

Abstract: In order to avoid uncertainty caused by randomly generating initial weights and threshold values of BP neural network, and obtain higher prediction accuracy and speed of yarn evenness CV value, weights and threshold values of traditional single BP neural network were optimized with the aid of immune genetic algorithm. The unique concentration adjustment mechanism of immune algorithm effectively works in solving the problem of premature convergence in later period of genetic algorithm. Matlab was applied to construct a single BP neural network model, genetic BP neural network model and immune genetic BP neural network model to predict yarn evenness CV value. Comparative analysis of simulation training results indicate that the BP neural network developed via optimization with immune genetic algorithm performs more accurately, quickly and stably in predicting yarn evenness CV value.

Key words: yarn evenness; yarn quality prediction; BP neural network; immune algorithm; genetic algorithm

纱线粗细均匀度是指构成纱线的纤维在沿成纱方向上排列时,其根数分布的均匀一致的程度[1-3]。在纺织生产上,将纱线条干粗细的均匀度客观地用条干CV值来进行表征[4]。如何更加快速准确地预测出纱线条干CV值,帮助控制生产是本文的研究目的,其在实际的纺织生产活动中更是具有十分重要的意义。

人工神经网络是一种受人类神经系统启发而提出的智能结构,其强大的容错能力使得其具有对非线性映射问题建模的能力,所以在近十几年来,各领域都在研究和应用人工神经网络,特别是在质量预测方面,BP神经网络的使用已经相当普遍,而且都取得了很好的效果[5-7]。但需要说明的是,由于BP神经网络所使用的BP算法是基于梯度下降的,所以其误差反向传播过程在后期几乎都会收敛于局部极值,这样一来就严重限制了网络的预测能力。为了弥补BP神经网络存在的不足,更好地使用BP神经网络解决问题,国内外的神经网络专家在近些年做了大量的探索和深入研究,提出了一系列的智能算法来优化BP神经网络的参数和结构,逐步地提高了BP神经网络的预测能力,增强了其使用性能[8-9]。本文在借鉴前人研究成果的基础上,提出将免疫遗传算法作为BP神经网络建模的辅助算法,优化网络的权值和阈值,然后进行纱线条干CV值的预测实验。通过多次的训练仿真,并与单一的BP神经网络模型和遗传BP神经网络模型的预测结果进行对比分析,验证免疫遗传算法在纱线质量预测模型中的有效性。

1 免疫遗传算法

免疫算法是对生物体免疫机制的抽象表达,求解的问题是抗原,对应的解是抗体,抗原和抗体的亲和度体现了可行解与最优解的逼近程度[10]。免疫遗传算法以遗传算法为基础,兼具自身特有的抗体浓度调节机制,通过保持抗体群的多样性来抑制遗传算法后期的退化现象。获得的免疫遗传算法收敛速度更快,搜索能力更强,其具有的多样性保持机制,能使算法在收敛过程中可以不断地调整搜索方向,避免陷入局部极值,增强了算法的全局搜索能力。免疫遗传算法是遗传算法和免疫算法的结合。

2 基于免疫遗传算法的BP神经网络设计

2.1 BP神经网络建模

本文构造的条干CV值预测模型所使用的数据来源于山东某棉纺织厂的原棉物理指标及细纱质量指标,为提高预测结果的准确性和计算的稳定性,数据在使用之前使用log函数进行了统一的归一化处理。网络以马克隆值、上半部平均长度、整齐度、短纤维指数和强度作为输入,以纱线条干CV值为输出,即输入层有m=5个神经元,输出层有n=1个神经元。隐含层单元数由经验公式(1)[11]计算,得到s=4.5,再用同一组样本数据多次测试最后确定网络的隐层单元数为4,得到的三层BP神经网络的拓扑结构。

s=0.43mn+0.12n2+2.54m+0.77n+0.35+0.51(1)

2.2 網络权值和阈值的优化设计

2.2.1 编 码

将待寻优变量即神经网络的连接权值和阈值作为抗体进行编码,考虑到单独的二进制编码的复杂性及计算量大的缺点,本文主要采用实数编码,在基于浓度的群体更新时再转换成二进制进行操作,可有效提高算法的收敛速度。

2.2.2 初始群体的产生

随机化生成M个抗体组成初始种群。设输入单元数为m,隐层单元数为n,输出单元数为l,则连接权值共有m×n+n×l个,阈值共有n+l个,抗体长度L=m×n+n×l+n+l。

2.2.3 适应度函数的设计

BP神经网络的目标函数设定为[12]:

BP神经网络通过不断地学习训练来进行权值和阈值的修正,直到输出误差满足最初的设计要求时训练终止。而免疫遗传算法解决的一般是目标最大化问题,故最终的适应度函数设定为:

2.2.4 遗传操作

1)选择。采用适应度比例的方法选择子代抗体,设M为抗体数量,fj是第j个抗体的适应度值,那么该抗体被选择的概率为Pj,即:

适应度比例法很好地保留下了高适应度的父代抗体,保证优良基因逐代遗传,有效地维持了算法的全局搜索能力。

2)交叉。本文采用算数交叉法,通过设定一个参数α和线性重组可以产生任意两个位于两个父代抗体间的子代抗体。

3)变异。变异操作能恢复抗体失去的或未开发的有效信息,维持群体的多样性,本文采用单重均匀变异法。

2.2.5 基于浓度的群体更新

如果只是通过简单的遗传选择筛选出大量的高适应度父代抗体,而不施加控制,那么这些个体的浓度就会越来越高,收敛后期群体的多样性便会急剧降低,最终算法陷入局部极值。所以,就需要找到一个更好的方法,既能保留住高适应的个体,还可以确保在新产生的抗体群里,适应度值较低但可能包含优良基因的个体也有被挑选出来的机会,这就是基于浓度机制的群体更新,该操作能够维持每代抗体群的多样性。

这里先给出信息熵、相似度和抗体浓度的概念和计算公式:

1)信息熵。免疫系统中,一个抗体所包含的信息量可由Shannon的平均信息熵H(M)来表述。设某抗体包含s种不同的符号,某一符号位于t号基因座的概率pst可由式(5)计算得出,即:

pst=在基因座t上出现第s个符号的总数M(5)

则Ht(M)为第t个基因的信息熵,定义为:

整个群体的平均信息熵为:

2)相似度。抗体a和抗体c的相似程度称之为相似度:

H(2)可由式(7)计算得出,是两个抗体的平均信息熵。还可以定义群体的相似度X(M):

X(M)的大小反映了整个群体的相似程度,X(M)∈(0,1),X(M)越大,群体相似度越高。当X(M)=1时,表示所有抗体完全相同。

3)抗体浓度。抗体浓度是指某个抗体和与其相似的个体在种群中的比率,可由下式[13]求得:

伴随着抗体群的不断更新,部分抗体的相似度必定会逐渐增大,为了有效地保持群体的多样性,为其相似度设定一个阈值(设为X0,X0与抗体群规模的大小成正比),当群体发展到其相似度大于该阈值时,就将随机增殖Z个新抗体,抗体总数扩大为M+Z。

在单一适应度评价方法之上,加入抗体浓度进行调整,提出聚合适应度的概念,作为最后筛选个体的评价指标,其表达式如下式所示[14]:

采用聚合适应度比例的方法更新下一代群体,某抗体被保留下来的几率与其聚合适应度成正比,最终筛选出M个抗体作为下一代的种群。这种做法的优点在于:一方面抗体的浓度不变时,聚合适应度的大小与适应度的值成正相关,能够有效保留住优秀的个体;另一方面,适应度值一定时,聚合适应度的大小与抗体浓度值呈负相关,体现出免疫系统的自我调节能力,保证了算法的全局搜索能力。

3 训练仿真实验

本文欲对免疫遗传算法优化的BP神经网络在纱线质量预测上的可行性与效果进行探究,利用表1所示来自山东某棉纺厂的棉纱质量数据,其中前50组用于模型训练,后10组数据用于测试神经网络。

在2.1设立的BP神经网络模型的基础上,利用Matlab软件进行训练和仿真,BP神经网络的参数设定如下:训练步数为1000,训练目标为0.0001,两次显示之间的训练步数为50;另外,网络的激活函数选择tansig函数,训练函数选择trainlm函数。

利用遗传算法和免疫遗传算法进行网络权值、阈值的优化操作,其中遗传算法的参数设定为:种群规模为30,进化代数为50,实数编码方式,适应度比率选择方法,交叉概率为0.8,变异概率为0.2;免疫遗传算法在遗传算法的基础上设定新增抗体数Z为10,聚合适应度计算公式中常数β设定为-0.6。两种模型的适应度函数值迭代曲线。

免疫遗传算法模型当进化代数达到30代以后,优化结果的适应度函数值(即平均绝对误差)逐渐趋于稳定,约为1.1,表明每个个体都在最优解附近。遗传算法适应度函数值从40代之后逐渐稳定在1.6左右,且曲线的平稳性要差于免疫遗传算法模型,说明免疫遗传算法在优化网络参数的效果上要好于遗传算法模型。

分别建立三个不同的预测模型-BP神经网络模型、遗传BP神经网络模型和免疫遗传BP神经网络模型,对纱线条干CV值进行预测分析。利用前50组数据进行预测模型训练,每个模型经过10次训练后取实验数据的平均值,最后所得结果如表2所示。

从表2可以看出,在单一的BP神经网络模型上,遗传BP神经网络模型的性能已经有了较大的提高,训练步数平均值从646减少到109,相对平均误差由8.3%降到4.7%,拟合度从0.915升到0957;而免疫遗传BP神经网络模型在此基础上又得到了进一步提高,训练步数平均值从109继续减少到29,相对平均误差由4.7%降到3.2%,拟合度进一步升到0.975。免疫遗传算法优于遗传算法的原因在于,首先免疫遗传算法相比较遗传算法增加了多样性保持功能,可以提高算法的局部搜索能力,然后免疫算法特有的浓度调节机制使得算法在发展过程中能够自我调节,避免陷入局部极值,最终就能为BP神经网络预设出比遗传算法更精确的权值和阈值,提供更精确的网络搜索空间。所以免疫遗传算法优化的网络训练速度更快,预测值的误差也显著降低。其中,10次实验的训练步长统计情况。

三種模型中,10次训练的平均收敛速度,免疫遗传BP神经网络模型远远高于前两种。绘制出三种模型中训练效果最好的一次的误差曲线。可以看出,由于三种模型都是以BP神经网络为模型基础的,所以三幅误差曲线图的收敛趋势近乎相同,但显然训练速度是逐个提升的。

为了进一步比较三个模型性能的差异,考证三种模型的拟合度,通过对真实数据的拟合来分析其与BP神经网络预测值之间的接近程度,其结果。

三种模型中拟合度最大的是免疫遗传BP神经网络模型(R=0.975),说明该网络模型的预测值与真实数据的一致性更高,训练误差更小,训练效果更好。

神经网络模型训练好以后,再用10组测试数据对所构建的两种优化神经网络模型进行验证分析,并给出测试结果纱线条干CV预测值,如表3所示。

从表3可以看出,免疫遗传算法模型预测结果的平均相对误差相对于遗传算法模型降低1.6%,说明免疫遗传算法模型的泛化性能要优于遗传算法模型。

4 结 论

本文在使用了免疫算法和遗传算法对BP神经网络的权值和阈值进行优化处理后,分别建立了3种不同的BP神经网络模型,并通过多次实验逐一对纱线条干CV值进行训练和测试仿真。

实验最后统计计算得出每个模型的平均最大训练步长、相对平均误差和拟合度值,结果分析表明,免疫遗传BP神经网络模型在纱线条干预测模型中获得了最快的训练速度和精度,网络的稳定性也是最高,说明将免疫遗传算法优化后的BP神经网络用于纱线质量预测是切实可行的,对实际的生产具有重要的意义。

参考文献:

[1]谷有众, 高卫东, 卢雨正, 等. 应用遗传算法优化支持向量回归机的喷气涡流纺纱线质量预测[J]. 纺织学报, 2016,37(7): 9-13.

GU Youzhong, GAO Weidong, LU Yuzheng, et al. Prediction of vortex yarn properties based on hybrid genetic algorithm and support vector regression[J]. Journal of Textiles Research, 2016,37(7): 9-13.

[2]谷有众, 刘建立, 高卫东. 基于遗传模拟退火神经网络的纱线强力预测[J]. 上海纺织科技, 2016,44(1): 21-25.

GU Youzhong, LIU Jianli, GAO Weidong. Prediction of yarn strength based on genetic simulated annealing BP neural network[J]. Shanghai Textile Science and Technology, 2016,44(1): 21-25.

[3]张立仿, 张喜平. 量子遗传算法优化BP神经网络的网络流量预测[J]. 计算机工程与科学, 2016,38(1): 7-11.

ZHANG Lifang, ZHANG Xiping. Network traffic prediction based on BP neural networks optimized by quantum genetic algorithm[J]. Computer Engineering and Science, 2016,38(1): 7-11.

[4]熊经纬, 杨建国, 徐兰. 基于PSO-BP神经网络的纱线质量预测[J]. 东华大学学报(自然科学版), 2015,41(4): 43-47.

XIONG Jingwei, YANG Jianguo, XU Lan. Combining the particle swarm optimization with BP neural network for yarn quality forecasting[J]. Journal of Donghua University (Natural Science), 2015,41(4): 43-47.

[5]YANG Jianguo, XU Lan, LU Zhijun, et al. Yarn quality prediction and process parameters optimization based on genetic algorithm and neural network[J]. Applied Mechanics and Materials, 2015 (742): 112-118.

[6]徐立云, 刘伟, 楼科文, 等. 基于改进免疫遗传算法的加工工艺重构[J]. 同济大学学报(自然科学版), 2016,44(6): 35-39.

XU Liyun, LIU Wei, LOU Kewen, et al. Reconfigurable process planning based on improved immune genetic algorithm[J]. Journal of Tongji University (Natural Science), 2016,44(6): 35-39.

[7]EUGENE Y C Wong, HENRY S C Yeung, HENRY Y K Lau. Immunity-based hybrid evolutionary algorithm for multi-objective optimization in global container repositioning[J]. Engineering Applications of Artificial Intelligence, 2008,22(6): 842-854.

[8]韩莉, 张振宇, 刘倩, 等. 基于免疫遗传算法-BP神经网络的主汽温控制[J]. 化工自动化及仪表, 2011(3): 67-71.

HAN Li, ZHANG Zhenyu, LIU Qian, et al. Main steam temperature control based on immune genetic algorithm and BP neural network[J]. Control and Instruments in Chemical Industry, 2011(3): 67-71.

[9]纪雪, 周兴华, 陈义兰, 等. 基于BP神经网络的海底地形复杂度自动分类方法研究[J]. 海岸工程, 2016,35(4): 15-20.

JI Xue, ZHOU Xinghua, CHEN Yilan, et al. Study on automatic classification method for seafloor terrain complexity based on BP neural network[J]. Coastal Engineering, 2016,35(4): 15-20.

[10]高兴培. 免疫遗传算法在BP网络结构优化中的应用[J]. 广东广播电视大学学报, 2005,14(1): 21-26.

GAO Xingpei. Application of immune genetic algorithm in structural optimization on BP network[J]. Journal of Guangdong Radio & TV University, 2005,14(1): 21-26.

[11]史步海, 朱学峰. LMBP神经网络改进算法的研究[J]. 控制工程, 2006, 13(6): 525-529.

SHI Buhai, ZHU Xuefeng. Research on improved algorithm of LMBP neural network[J]. Control Engineering Practice, 2006, 13(6): 525-529.

[12]罗菲, 何明一. 基于免疫遗传算法的多层前向神经网络设计[J]. 计算机应用, 2005,25(7): 1661-1665.

LUO Fei, HE Mingyi. Multilayer feed-forward neural networks based on immune genetic algorithm[J]. Computer Applications, 2005,25(7): 1661-1665.

[13]杨孔雨, 王秀峰. 免疫记忆遗传算法及其完全收敛性研究[J]. 计算机工程与应用, 2005(12): 47-50.

YANG Kongyu, WANG Xiufeng. Research of immune memory genetic algorithm and its complete convergence[J]. Computer Engineering and Applications, 2005(12): 47-50.

[14]宮新保, 臧小刚, 周希朗. 基于免疫算法的前向神经网络学习方法[J]. 系统工程与电子技术, 2004, 26(12): 1927-1929.

GONG Xinbao, ZANG Xiaogang, ZHOU Xilang. Learning strategy of feedforward neural network based on immune algorithm[J]. Systems Engineering and Electronics, 2004, 26(12): 1927-1929.

猜你喜欢

BP神经网络遗传算法
面向成本的装配线平衡改进遗传算法
基于遗传算法对广义神经网络的优化
基于遗传算法对广义神经网络的优化
基于遗传算法的临床路径模式提取的应用研究
基于遗传算法的临床路径模式提取的应用研究
遗传算法在校园听力考试广播系统施工优化中的应用
物流配送车辆路径的免疫遗传算法探讨
就bp神经网络银行选址模型的相关研究
基于DEA—GA—BP的建设工程评标方法研究
复杂背景下的手势识别方法