基于改进的BP神经网络算法对发动机输出功率的预测建模

2021-11-18 23:42张国良张延良李升建魏孜倩李康
科技信息·学术版 2021年26期

张国良 张延良 李升建 魏孜倩 李康

摘要:发动机输出功率受进气压力、温度、燃油消耗率、转速和扭矩等多个因素的影响,各个因素之间是一种非线性关系。可以利用传统BP神经网络算法对采集数据进行训练得到功率预测模型,但BP算法存在局部最优差、收敛速度慢和初始权阀值不易确定的缺点,因此,可以结合遗传算法对BP神经网络的参数进行优化弥补其缺点,同时利用采集的数据对网络进行重复学习,得到更高精度的功率预测模型。

关键词:BP算法1;遗传算法2;发动机功率3;人工神经网络4

1 引言

发动机是一个非线性、延时、耦合、滞后的复杂系统,其工作过程中涉及的状态变量较多,具有模型设计复杂,计算量的特点。人工BP神经网络算法有自学习、自调节和反逼近的能力,可以逼近任意具有非线性函数的模型。发动机功率是发动机性能的重要指标,其输出与多个因素相关且是非线性的关系,在工作中是一个动态变化的过程。根据物理统计,发动机在不稳定的工况下工作时间约占总时间的70%,借助神经网络,研究其动态状况下的功率輸出特性,建立准确的预测模型具有重要意义。

2基于遗传算法的BP神经网络

2.1 BP神经网络算法

BP神经网络是由输入层、隐含层、输出层组成的多层前馈神经网络,同一层网络由多个神经元组成且神经元之间没有相互关联,而相邻层之间的每一个神经元相互关联,因此决定了信号是单向传播的,且分配到各个神经元上,具体结构如下图1所示。

2.2遗传算法

遗传算法是模拟自然界生物进化理论提出的一种搜索最优解的方法,其原理为将问题的求解转化为对进化中染色体进行变异、交叉,寻找到最优的变异个体,进而得到问题的最优解。

2.3 遗传神经网络算法

遗传算法可以对神经网络的样本进行编码得到合适的权值和参数,利用随机产生的初始化种群n维向量作为神经网络的权值向量,同时利用神经网络中Sigmoid函数计算适应度,保证在误差越小的情况下,得到的染色特越好,在交叉变异中对算子进行计算得到高适应的的样本,具体的流程如下图2所示。

3 发动机功率预测建模

3.1结构参数的确定

发动机功率是发动机的一个重要性能指标,其输出与多个因素有关,包括进气压力、温度、转速、扭矩等。本文中主要考虑9个因素,发动机转速、中冷后进气压力、排气温度、进气温度、瞬时油耗、后处理上游温度、后处理下游排气温度、DPF排气温度和实际扭矩。因此,在神经网络中输入节点数为9。神经网络的隐含层数量决定了仿真的精度和训练时间,选择不同的隐含层数量经过多次训练 以后,均可以达到理想的收敛结果。通过对比测试理想误差,确定的隐含层数7,同时输出节点数为1,即发动机输出功率。隐含层节点数根据经验公式为

式中:l是隐含层节点数目,m和n分别为输入输出个数,a为1~10之间的整数。

在隐含层中传递函数为tansig,输出层的传递函数为purelin,训练最大次数为100,目标精度为0.05,训练的平滑度为0.1,训练的样本来自某实验实车数据,训练样本的个数为300组数据,测试样本个数为100组数据。

遗传算法对参数进行初始化,选择的迭代次数为10,种群的规模数为30,交叉概率为0.3,变异概率为0.1。

3.2仿真结果分析

训练样本为某型号发动机数据,采集的时间频率为1s/次 ,共选择400组采集数据,其中前300组数据作为训练样本,后100组数据为测试样本,具体的仿真结果如下。

利用遗传算法进行数据迭代,在迭代到第6次时,数据的适应度达到平衡,在840左右,如图3所示。为了体现遗传BP神经算法的优越性,并将该算法与BP算法进行对比,得到的训练跟踪趋势和误差曲线分别如图4、5所示,从图5得到BP神经网络算法的测量误差平均值为0.004,要大于GA-BP算法误测量误差0.001;且满足实验要求,利用训练的实际模型测试测试样本得到如图6所示。

4试验结论

采用matlab自带的前馈BP神经网络工具箱可以对发动机的输出功率进行非线性预测,得到较好的结果,同时结合遗传算法可以解决BP神经网络的局部最优问题,使预测精度更高,性能更加可靠。

参考文献

[1]王辉,胡斐.MATLAB智能算法30个案例分析[M].1版.北京:北京航空航天大学出版社,2011.

[2]陈虞涛,曾凡明.基于动态神经网络的柴油机建模研究[J].海军工程大学学报.2003,15(1):90-92.

[3]谢秋,基于遗传算法和BP神经网络的协同设计效率研究及应用[D],重庆大学,2013.

[4]李炎,一种BP神经网络改进算法的研究[J],齐齐哈尔大学学报,2010,29(2)29-31.

作者简介:张国良(1991-),男,山东潍坊人,研究生,助理工程师,主要研究方向为车联网。