覃健
摘 要:汽车底盘测功机通过电涡流测功器产生加载扭矩模拟汽车行驶在道路上时所受到的阻力。针对电涡流测功器输出扭矩的非线性特性,提出采用极限学习机神经网络建立电涡流测功器输出扭矩模型的方法,并利用粒子群算法优化网络结构提高模型的准确性。仿真结果显示,模型的平均相对误差为1.3%。通过与BP神经网络模型相比较,极限学习机模型显示出了更高的准确性。关键词:底盘测功机;加载力矩;超限学习机;粒子群优化中图分类号:U467.3 文献标识码:A 文章编号:1671-7988(2020)11-121-03
Abstract: The chassis dynamometer generates the load torque by the eddy current dynamometer to simulate the on road resistance of the vehicles. For the nonlinear characteristics of the load torque, a method that using extreme learning machine (ELM) neural network to model the load torque of the chassis dynamometer is proposed, and the Particle Swarm Optimization algorithm is applied to optimize the model structure to improve the model accuracy. The simulation results show that the mean absolute relatively error of the proposed model is 1.3%. Compared with the BP model,the ELM model shows better accuracy.Keywords: Chassis dynamometer; Load torque; Extreme learning machine; Particle Swarm OptimizationCLC NO.: U467.3 Document Code: A Article ID: 1671-7988(2020)11-121-03
1 前言
汽車底盘测功机通过加载装置产生加载扭矩实现对机动车在实际路面上行驶阻力的模拟。电涡流测功器因具有易安装、结构紧凑、可控性良好等特点,被广泛用作机动车检测站环保检测汽车底盘测功机的扭力加载装置。由电涡流测功器的工作原理可知,对于确定结构的电涡流测功器其输出扭矩可表示为[1]:
其中i为测功器励磁电流,n为测功器转速。
因电涡流测功器存在铁磁性材料的磁滞、磁饱和等特性,测功器的输出扭矩表现出很强的非线性特性。因此,选择一种合适的方法描述电涡流测功器各参数之间的非线性关系,建立一个准确的输出扭矩模型,实现对底盘测功机在工作过程中输出扭矩的预测和有效的控制具有重要意义。国内外学者[2][3]采用机理分析建模方法取得了一定的成果,模型的计算推导过程具有相当的难度,公式也比较复杂。
前馈神经网络因其强的大非线性映射逼近能力与泛化能力已在众多领域得到了广泛的应用。文献[4]提出采用BP神经网络建立底盘测功机输出转矩模型的方法。但基于此类传统神经网络的建模方法存在着在学习过程中计算量大、过拟合、学习时间长等缺点。为解决上述问题,Huang等人提出了一种新型的前馈神经网络学习算法——极限学习机(Extreme Learning Machine-ELM)[5];该算法随机给定输入权值矩阵和隐层神经元偏置,利用隐层节点输出矩阵的Moore–Penrose广义逆乘上期望输出矩阵得到输出权值矩阵的最小范数最小二乘解,相比其他神经网络算法具有更快的学习速度和更好的泛化性能。但网络的隐层神经元个数的选取对ELM网络的性能具有一定的影响,目前最优隐层神经元个数一般采用试凑的方式。本文依据实验数据,建立了电涡流测功器的加载扭矩ELM模型,并采用粒子群优化算法寻优的方式获取最佳隐层神经元个数,以进一步提高网络的性能。
2.2 粒子群算法优化ELM隐层
隐层神经元个数的选取对ELM网络的性能具有一定的影响。采用了粒子群优化算法寻优的方式获取最佳隐层神经元个数,可进一步提高网络的性能。
依据粒子群算法原理,结合本次研究对象可知,粒子维度为1,粒子位置为每个粒子所代表的隐层神经元个数。若单个粒子历史最优位置用Pi表示,全局最优位置用Pg表示,则得到如下优化过程:
(1)算法初始化:在[1,200]范围生成20个随机粒子,粒子最大迭代次数tmax=100,速度区间限制在[-1,1]范围内。
(2)针对每个粒子训练ELM网络,并将网络输出与期望输出的误差均方根作为粒子适应度值。
(3)比较各粒子适应度值,获取当前单个粒子的最优位置Pi和全局最优位置Pg。
(5)判断是否达到最大迭代次数:若是,则停止迭代,输出全局最优最优位置Pg。否则,返回第2步继续迭代计算。
3 建模结果与比较
本次建模选取的数据集为某测功机在励磁电流为0.5A、1.5A、2.5A、3.5A、4A时,采集到的测功机在不同转速条件下的输出加载扭矩;选取其中的50%的数据作为训练集;测试集选取励磁电流为2.5A和3.5A时的相应数据。数据预处理采用了归一化处理方式,如式(7)所示:
其中x表示原始数据,xmin为样本最小值,xmax为样本最大值。
结合数据样本,在MATLAB环境下编写粒子群算法优化ELM程序建立ELM模型,图2和图3分别给出了优化结果和模型的测试结果。从图2中可以看出,粒子群算法在迭代到第70次时,达到全局最优适应度0.0082,此时对应的最优隐层节点数为128。图3表明ELM模型输出与测功机实际输出具有良好的一致性;经统计,模型的预测扭矩与实际扭矩的平均相对误差为1.3%。
为验证ELM模型的优越性,利用同样的训练数据训练BP神经网络,建立BP神经模型。为避免网络结构之间的差异对建模效果的影响,同样地将BP神经网络模型的隐层节点数设置为128。模型对比结果如图4、图5所示。表1分别列出了两种模型的最大相对误差与平均相对误差。可以看出,在相同的网络结构下,ELM模型的最大相对误差为3.0%,BP模型的最大相对误差为7.9%;平均相对误差ELM模型为
1.3%,BP模型为2.5%。表明了ELM模型较BP模型具有更高的准确性和更强的泛化能力。
4 结语
针对汽车底盘测功机输出扭矩的非线性特性,以测功机的转速和励磁电流为输入变量,输出扭矩为输出变量,建立了汽车底盤测功机输出扭矩ELM模型,并引入了粒子群算法优化了ELM模型的网络结构。仿真测试结果表明,所建立的ELM模型能够准确的模拟测功机在不同励磁电流和转速条件下的输出扭矩变化。经与相同结构的BP模型比较,ELM模型显示出了更高的准确性和泛化能力。
参考文献
[1] 闵永军.车辆排气污染物测试技术研究与工程实现[D].东南大学,2006.
[2] C.Stoica, L.Melcescu.etal.Computation of the characteristics eddy current electromagnetic brake for a bicycle, by the finite element method 3D[C].International Conference on Optimization of Electri -cal and Electronic Equipment, 2010:436-440.
[3] 胡东海,何仁.基于虚拟线圈假设的涡流制动器制动力矩计算[J]. 江苏大学学报(自然科学版),2014(3):257-261.
[4] 胡久强,熊建国等.BP网络在ASM底盘测功机模型识别中的应用[J].计算机应用,2011,2:59-62.
[5] G.Bin Huang,Q.Y.Zhu,and C.K.Siew.Extreme learning machine: Theory and applications[J].Neurocomputing,vol(70):489-501,2006.