APP下载

基于BP神经网络的汽车内阻模型预测*

2014-07-31朱佳葆

机械研究与应用 2014年1期
关键词:内阻神经网络样本

朱佳葆

(上海交通大学 自动化系,上海 200030)

基于BP神经网络的汽车内阻模型预测*

朱佳葆

(上海交通大学 自动化系,上海 200030)

分析了利用BP神经网络方法改进传统滑行法测量车辆内阻的可行性,并通过Matlab软件中的神经网络工具箱nntool实现了该网络的设计、训练和结果对比,表明利用BP神经网络的方法预测不同条件下车辆内阻是满足工程要求的。

汽车内阻;BP神经网络;nntool工具箱

1 引 言

车辆道路阻力的模拟在汽车台架试验中有着非常重要的作用,准确的车辆道路阻力模拟可以使台架试验的结果更趋近于实际道路行驶情况。车辆道路阻力主要由两部分构成:迎面风阻和车辆内阻(该文所指车辆内阻为传动系阻力与滚动阻力之和),迎面风阻在汽车设计初期由外形所决定,而车辆内阻会随不同的开发阶段车辆配置的改变而产生变化。有限的整车台架试验资源无法满足大量的车辆内阻测试需求,因此寻找一种建立阻力模型的方法,使之能较为准确的预估不同车辆状态下的车辆内阻是解决上述问题的一种手段。

2 车辆内阻模型预测

2.1 国内外现状分析

目前国内外对车辆内阻中轮胎部分的研究有很多,通过有限元仿真、Yeoh材料模型、模态参数模型和阻尼模型等等,对其基础力学特性作了细致的计算和验证[1]。但在整车背景下,引入传动系、路面、外部环境等因素,直接套用公式法或在理想条件下建立模型分析计算都是比较困难的,因此以输入输出为导向,运用BP(Back Propagation)神经网络建立内阻模型是比较符合实际应用的方法,同时很多研究也表明BP神经网络在有大量样本支持下对非线性问题的识别和预测有良好表现,所以运用此方法建立滑行试验阻力模型并检验其效果是可行且值得探究的。

2.2 前期样本收集

车辆内阻的大小受诸多条件的影响,主要因素有轮胎的花纹深浅、轮胎胎压、摩擦片磨损度、周围环境温度、车辆配载和传动系内阻等。根据研究目标的不同选择输入输出对阻力模型的构建效果有着较大的影响。本例中以新旧轮胎、高低胎压、不同程度的摩擦片磨损和环境温度的改变进行交叉试验,在底盘测功机上用滑行法结合在各种不同车速下测得滑行阻力作为本次神经网络构建的输入输出训练样本。

2.3 神经网络训练原理

BP网络是一种按误差逆传播算法训练的多层前馈网络,是目前应用最广泛的网络模型之一。它包含输入层、隐含层和输出层,隐含层可以为一层或多层,每层上的神经元称为节点或单元。BP算法的实质是把一组样本输入输出问题转化为一个非线性优化问题。BP算法是一个快速下降的方法,使用了最优化方法中的梯度下降算法,目的是使实际输出和预期样本输出之间的均方差最小化。它要求传递函数具有连续可微分的非线性特征。一般使用S型逻辑非线性函数:

对于一个三层前馈BP网络,设输入层有m个节点,隐含层有s个节点,输出层有n个节点。输入层、隐含层和输出层神经元之间的连接权值为wij、vil以及神经元阈值θj和γl,神经元阈值赋予(-1,1)间的随机值,学习系数α、β。输入层的输出ul、隐含层输出yj,输出层输出zi。

BP算法的具体步骤:

(1) 初始化权值和阈值,即随机赋予wij、vil、θj和γl(-1,1)之间的较小值。

(2) 给出输入向量xi=(x1,x2,x3…xm)和对应的预期输出向量zi

(3) 将xi的值输入输入层节点,计算隐含层各神经元的输出:

(4) 计算输出层神经元的输出:

(5) 利用给定的输出数据计算输出层神经元的一般化误差:

(6) 计算隐含层各神经元的一般化误差:

(9) 选取另一组输入-输出数据,返回式(2)进行学习,重复利用全部数据组进行学习。这是网络利用样本集完成一次学习过程。

(10) 重复学习过程,直至网络全局误差小于设定值或学习次数到达设定次数为止[2]。

3 神经网络工具箱应用实例

在Matlab软件把输入输出以矩阵形式表达,作为样本训练集的输入input和output,输入包括轮胎花纹深浅、胎压、环境温度、摩擦片磨损度以及车速120~10 km/h共12类,合计144组输入样本,命名为input。输出为144组样本在底盘测功机下单独测量得到的车辆内阻,命名为output。测试集为样本外12组输入,命名为test。

如图1所示,在命令窗口中键入nntool打开Matlab神经网络工具箱GUI界面,导入input、output及test样本集。点击New按钮建立神经网络,网络类型选择Feed-forward backprop即所说的BP网络[3]。

图1 神经网络工具箱数据和网络管理器

在网络结构设置界面中对学习算法和传递函数进行选择。权值学习算法的选择很多,系统默认也是最常用的是Levenberg-Marquard优化算法,简称LM算法。LM算法属于信赖域法,在优化算法中,要求每一步迭代中目标函数是下降的,信赖域法就是从起点开始,假设一个可信赖的最大位移s,然后在当前点以s为半径的范围内寻找目标函数的一个近似二次函数最优点,以此求解得到真正的位移,在得到真正的位移之后再计算目标函数值,如果目标函数值下降满足了一定的条件则说明这个位移可靠,就继续按此规则迭代计算下去。反之则减小信赖域范围重新求解。在本例中推荐使用Levenberg-Marquard优化算法,它可以用于解决非线性最小二乘问题,内阻模型构建属于曲线拟合类问题,在LM算法适用的范围内。同时后续用TRAINSCG共轭梯度算法、TRAINDG动量梯度下降算法和TRAINDGX动量梯度自适应算法建立网络,以比较不同算法实际效果。

理论已证明若输入输出层采用线性传递函数,隐层采用S型传递函数,则含有一个隐层的多层神经网络能以任意精度逼近任何有理函数。基于这点,我们选择的网络结构应该是带有一个隐层的三层BP网络。而隐层节点数的选择,在目前理论上还没有一种科学和普遍的确定方法。原则上是在满足精度要求的前提下,尽可能精简隐层节点数,隐层节点数太少会导致网络不收敛;而太多会在训练时出现“过拟合”现象。本例中选择tansig和lonsig都是可行的,输出层则选择比例函数purelin,尝试5~10个隐层节点,并根据网络性能选择合适节点数。

创建好的网络会显示在Networks列表中,打开需要训练的网络,选择训练时所用的输入输出集,网络的训练一般把检验样本检查数作为终止条件,因此对训练参数不需要作过多的设置。通常把样本输入网络中训练时,系统会自动把样本分为3部分,训练样本、验证样本和测试样本用于训练和评估网络效果。在网络利用训练样本进行训练时,确认样本的误差曲线连续N次(N为最大插值次数的设定值)迭代不再下降,此时训练终止(即使网络训练结果没有达到目标值)。在训练参数设置中,最大插值次数的设定值规定了检验样本检查的次数,默认为6。可尝试提高这个设定值到12、18甚至更高,但其效果只会推迟网络训练结束的时间,这是因为如果检验样本误差不再减小而继续训练网络,即使网络训练精度不断提高,其性能也不会有所改善,图2为一次提高插值次数的网络训练效果。

图2 把最大插值次数提高1倍后对网络性能没有帮助

4 网络的评估与分析

对创建好的网络进行训练,训练结束后可在性能图表中查看均方误差曲线,来观察网络的学习效果。BP网络训练的过程是信号正向传播和误差反向传播的过程。通过误差反传不断修正网络连接权值使网络模型输出值与已知的训练样本输出值之间的误差平方和达到最小或期望值,由于训练网络的目的是使其对非训练样本有良好的泛化能力,因此单纯看均方误差的大小没有意义。一般来说如果在均方误差曲线中,验证样本和测试样本的误差与训练样本误差较为接近甚至更小,则网络模型已有效地逼近了目标系统所呈现的特性。由此得到结论是测试样本误差大小是样本客观条件所决定的,而网络泛化能力的好坏主要是看三类样本的误差接近程度,在图3中给出了一组理想的网络训练结果以供读者参考。

在网络训练前,初始权值、阈值是在一个范围内按均匀分布随机产生,初始值的不同会导致不同的训练结果,因此确定一个合适的模型,不仅要尝试不同的训练方法和节点数还要改变初始权值、阈值进行多次训练以寻找能够反映车辆内阻特性的理想网络模型。通过实践证明TRAINLM和TRAINGDX算法都可以在有限次的训练中,得到比较理想的模型。而隐含层节点数设置为5,更高的设置会影响网络的泛化能力,而传递函数选择TANSIG和LONSIG对网络的表现影响差异不大。

图3 TRAINGDX算法下一组理想的网络模型表现

在某一网络训练达到期望的效果后,在选项卡中点击回归图表查看样本回归情况,如图4所示。在该神经网络仿真选项卡中输入预测条件集,通过仿真得到预测数据并记录。根据预测条件集配置车辆,在底盘测功机上进行滑行试验测量车辆内阻。把两组数据进行对比,评估网络泛化能力。

图4 训练完后在回归图中查看3组样本回归情况

在多组预测值与实测值的比较后发现,TRAINSCG和TRAINDGX训练算法都可以实现内阻模型构建的功能,但是SCG算法在网络性能总体表现上相较LM算法略逊一筹,而DGX算法的收敛速度受初始权值、阈值影响较大,训练表现不及LM算法稳定,因此在本例中LM算法是车辆内阻模型构建的第一选择。表1的数据为LM算法下训练完成的网络仿真值与实测值的比较,可以看到除了最后两项外,预测值与实测值的相对误差控制在5%以内,而之所以在低速下产生较大误差,可能是因为在低速下某一影响内阻的因子未在输入样本中体现或是实测值有较大误差而产生的。

表1 某组条件下车辆内阻实测值与预测值的比较

5 结 论

通过对BP神经网络训练原理的分析,使用Matlab中神经网络工具箱对车辆内阻模型进行设计、训练和仿真。在多组预测数据与实测数据进行比较的情况下证明:BP神经网络对车辆内阻预测是符合工程要求的。通过若干组车辆配置和环境下测得的车辆内阻作为训练样本,可以对其他配置下的内阻值进行较为准确的预测,大大节省了试验资源。

[1] 尤金艳,臧孟炎. 乘用车子午线轮胎滚动阻力的有限元分析[J]. 科学技术与工程,2012(31):70-73.

[2] 戴永文. 基于改进BP神经网络算法的企业可持续发展力评价研究[D]. 南昌:南昌大学,2010.

[3] 王福昌,张宝雷,张同庆. 神经网络工具nntool及其应用[J]. 计算机与现代化,2003(9):84-85.

BP Neural Networks in Vehicle-Loss Prediction Model

ZHU Jia-bao

(ShanghaiJiaotongUniversity,Shanghai200030,China)

The feasibility analysis of BP Neural Networks which is used to improve the vehicle-loss measurement is performed in this paper. Through the nntool of Matlab software to finish the networks design, training and result analysis, it has been proved to meet the requirement of project.

vehicle-loss; BP neural networks; nntool GUI

2013-12-24

朱佳葆(1987-),男,上海人,助理工程师,主要从事整车台架试验方面的工作。

TH11

A

1007-4414(2014)01-0090-03

猜你喜欢

内阻神经网络样本
用样本估计总体复习点拨
神经网络抑制无线通信干扰探究
Effect of Xuebijing injection on hematopoietic homeostasis of LPS induced sepsis in mice
推动医改的“直销样本”
“测定电池的电动势和内阻”复习课之八问
随机微分方程的样本Lyapunov二次型估计
伏安法测电源电动势和内阻的测量值与真实值
基于神经网络的拉矫机控制模型建立
村企共赢的样本
超级电容器内阻测试方法研究