APP下载

基于人工神经网络的最大充放电功率预测方法研究

2012-12-23李智勇

汽车零部件 2012年3期
关键词:输入量目标值人工神经网络

李智勇

(重庆邮电大学自动化学院模式识别及应用研究所,重庆400065)

0 引言

世界能源短缺、温室气体排放、环境污染等问题促使各国研究开发新能源和节能、环保产品。交通工具的能量消耗量占世界总能源消费的40%,汽车的能源消耗量约占1/4,面对节能和环保的巨大压力,世界各国纷纷开发新能源汽车,包括纯电动汽车EV、燃料电池电动车FC、混合动力电动汽车HEV。对比其技术经济特性,HEV 对于加油站等基础设施不会为之改变,技术性能相对成熟,污染小,噪声低,操作简单,成本在三者最低,略等于传统汽车的1.3 倍,比较可知HEV 在现阶段最具节能环保优势。为此,国家在“十一五”计划安排了“863”节能与新能源汽车项目,把此纳入国家安全战略高度来考虑。混合动力汽车自主研发,成为业内追逐的热点,普遍看好其应用前景。

在混合动力汽车研发过程中,其核心就在于镍氢电池组模块的研发。电池组模块下一时刻的最大充放电功率值直接关乎混合动力汽车启动和爬坡性能,是其电池组模块使用过程中的重要参数之一,如何准确地预测一直是相关研究人员关注并投入大量精力研究的课题。

1 电池功率预测

文中镍氢电池组模块是由120 个单体镍氢电池串联组成,每个单体镍氢电池的上限电压为1.6 V,下限电压为0.8 V,额定电压为1.2 V。文中所指的下一时刻是一个瞬时值,由于在本次实验中是每隔10 ms 采集一次数据,因此下一时刻定为10 ms 后那一时刻。因此下一时刻最大充放电功率值,即是指从t=0 到t=10 ms 之间镍氢电池组模块所能吸收或释放出的累计的最大的功率值。在汽车启动和爬坡中,能预知其在10 ms 内电池所释放出的最大功率值,是很有用的。

在大多数已经发表的有关预测镍氢电池组模块下一时刻最大充放电功率的文献中,用传统估计算法、复合脉冲法、基于SOC 法[1-2]居多,还未看到有选用人工神经网络算法来预测镍氢电池组模块下一时刻最大充放电功率。

2 ANN 算法设计

2.1 ANN

文中采用人工神经网络算法,该方法预测带有较强的智能性,并具有很强的学习功能,在处理大量的不能用规则或公式描述的原始数据时表现出极大的灵活性和自适应性[3-4]。通过大量样本的反复训练,神经网络能够更好地学习和适应未知系统的动态特性,并将此特性隐含存储在网络内部的连接权中。结果证明,文中提出的ANN 算法能够准确地预测混合动力汽车中镍氢电池组模块下一时刻最大充放电功率。

人工神经网络算法是属于基于历史数据的预测方法。基于历史数据的预测,是指根据历史数据来预测功率的方法,也就是在镍氢电池组模块若干个历史数据(包括功率、电压、电流、温度等)和目标值之间建立一种映射关系,方法包括人工神经网络方法、卡尔曼滤波法、持续性算法、ARMA 算法、线性回归模型、自适应模糊逻辑算法等。

2.2 ANN 样本

神经网络的性能与样本的选取密切相关。文中在混合动力汽车多种行驶工况下,每隔10 ms 采集一次数据,得到混合动力汽车中镍氢电池组模块(由120 个单体镍氢电池串联组成)的实时电压值、电流值、温度值等基本参数。然后根据安时法得到SOC 值。

由于采集的数据之间存在一定的相似性,如直接提取训练样本则会包含很多冗余数据,所以先进行了初步整理:舍弃各种造成功率剧烈突变的不合理点,周期性或变化趋势一致的数据也只选取一组。所有的样本数据应该尽可能地相互独立并且具有代表性,否则,随着网络输入空间维数的增加,所需的网络训练样本数将迅速增加,从而容易使网络出现过拟合现象。系统的输入输出特性包含在数据样本中,网络的训练时间也明显与训练数据量有关,因此数据量的选择也需要注意。实验在选择样本时,先用数据量多的样本训练网络,后用数据量较少的样本再训练样本,最后选取结果较好的一组样本。

按照上述方法,文中总共选取了15 组样本数据。随机抽取N 组作为训练样本训练网络,其他15 ~N 组均可作为验证样本,用于验证所得到网络的预测正确性以及其泛化能力。N 的大小由训练算法决定。

通过相应实验可得到目标值与电压的对应曲线、目标值与SOC 的对应曲线、目标值与温度的对应曲线,形成所谓的匹配表,通过这个匹配表,也就是目标值与电压、SOC、温度的关系,可得到不同时刻、不同条件下的目标值。

匹配表原理如图1 所示模块。输入为电压、SOC、温度三项,根据三项与目标值一一对应表得到各自对应的目标值,再在得到的3 个目标值中取最小的一个值作为最终目标值。为了避免因为电池参数测量误差的原因导致电池功率出现大的波动,在查表得到电池功率后,再将其跟前一时刻的功率值比较,使其不能大于1。

2.3 ANN 结构

目前,在ANN 的实际应用中,绝大部分的神经网络模型都是采用BP 神经网络 (Back-Propagation Neural Network,BPNN)。研究表明,使用三层的BPNN 可以任意逼近实际函数f[5],因此文中也采用了最常用的三层BP 神经网络。

神经网络的输入变量是否合适,变量数量是否恰当,都将直接影响神经网络预测的准确性和计算量。这输入变量的选取对于本次预测能否成功至关重要,在这步中需经过多种变量组合的实验,得到各种有可能让人想象不到的意外情况,也因此得到一个结论,对于特定的目标值,其输入变量组合也是特定的那几个。变量数量不可少也不可多,少了,算法无法收敛,最终无法得到结果,多了,算法就会过于冗长,增加无限计算量,最终也无法得到结果。这就需要经过大量实验得到其所需的输入变量组合。

对于功率(下一时刻最大充放电功率,简称为功率),因为与电压和电流的乘积有关,输入变量自然要有电压和电流两个量,这一点是毋庸置疑的。单把这两个量作为输入量,功率作为输出量,最终得到的结果却是无法收敛。所以就功率来讲,只有电压和电流作为输入量是不够的。因为当电压、电流都相同时,功率是不尽相同的。又知当SOC 不同时,功率肯定也不同,根据SOC (剩余电荷量)的定义,SOC 对功率的影响应比电压、电流对其的影响都大,故SOC 也必然作为一个输入量。各输入量、输出量短期内(10 ms)是具有稳定性和连续性的,那么短期内根据前一时刻的数据来预测后一时刻的数据是可行的。举个例,根据研究,预测SOC 值可用人工神经网络算法预测得到,输入量为前一时刻(10 ms)的SOC 值、电流、电压,输入量为此时刻的SOC 值。输入量就有前一时刻的目标值,而且实验证明把前一时刻的目标值作为一输入量是必不可少的,这也证明了之前提到的人工神经网络算法是基于历史数据的算法。就算其他输入量都完全相同的情况下,前一时刻的目标值不一样,结果也会不一样。而且因为文中预测的目标值(下一时刻最大充放电功率:t=0 到t =10 ms 累加的吸收或释放的最大的功率值)跟SOC 一样,也是一个累加值,所以前一时刻(t=-10 ms 到t=0)的目标值不得不作为很重要的一个输入量。实验证明,算法很快就收敛了,为最终得到理想的结果提供了很大的帮助。温度影响着电池内阻的大小等,也影响着电池能量的释放、吸收,因此温度也是必不可少的一个输入量。

上述提到的ANN 的输入量有电压、电流、SOC、上一时刻目标值、温度,但实验证明全都作为输入量,只会让算法过于冗长,无限增加计算量,同样得不到结果。经过笔者反复从这五个输入量中提取三、四个输入量组合实验,得到结论:电压、温度、上一时刻目标值作为输入量,能很好地得到预测结果,其算法收敛较快,预测误差值在可控范围内。

因此文中研究的重点即是确定混合动力汽车镍氢电池组模块的下一时刻(t=0 到t=10 ms)最大充放电功率与电压、温度以及上一时刻(t=-10 ms 到t=0)预测出的最大充放电功率之间的关系,这是对函数曲线的预测,同时也可以将此理解为一个三元函数。

神经元的传递函数都采用线性函数。在神经网络的设计中,增加隐含层的神经元个数可以改善网络与训练组匹配的精确度,但是隐含层的神经元个数并不是越多越好。神经元个数太多会让网络记住包括噪声在内的所有训练数据,这会降低网络的泛化能力。在文中实验中,通过试凑法对比仿真结果后发现,神经网络的隐含层采用10 个神经元就可以比较准确地描述输入变量与输出变量的曲线关系。

2.4 ANN 算法

在实验中为了避免网络的过度训练,采用训练和仿真交替进行的方式。即训练样本每训练完一次网络后,保持网络的权值和阙值不变,再用验证样本数据作为网络的输入,正向运行网络,检验输出的平均误差。由于在实验时,使用前一刻的目标值输出量作为下一时刻的输入量,即Pt+1 =P't,t >1 且为整数,所以当继续训练不能减小网络的输出平均误差时,我们就认为本轮网络训练结束。

当给一个训练结束的BP 网络提供新的记忆模式时,已有的连接权将被打乱,这导致已记忆的学习模式的信息消失,在重新训练新网络时需要加入原来的学习模式。因此,在增加训练样本时,原来的样本也要保留。如果在加入新的训练数据后,不能训练得到比上一个网络平均误差还要小的网络,就说明这个神经网络已经接近稳定,是实验想要通过训练得到的神经网络。训练数据组数N 由此决定。预先设置的训练结束目标并不是越小越好,因为网络存在过度训练的问题。更新训练总步数是指网络在没有收敛的时候进行下一轮训练。实验在本轮训练结束后,还将判断神经网络预测的平均误差是否比上一轮小,如果是就需要用相同的方法继续训练,直至不再减小为止,否则就增加样本进行新的训练。

3 结果分析

根据上面所设计的ANN 算法以及按上面方法所提取的样本数据,在Matlab 中对其进行仿真。仿真结果如下。

3.1 ANN 输入量组合实验

一是输入量数量少的情况,假使输入量仅为电压、电流,仿真如图2 所示,蓝色曲线为实际功率值,红色曲线为通过人工神经网络算法预测功率值的仿真结果,误差越来越大,无法收敛。若取电压、电流、SOC、温度中任意两项作为输入量都会出现无法收敛,误差很明显的结果。

二是输入量数量过多的情况,假使电压、电流、SOC、温度、前一刻目标值等均作为输入量,结果是仿真很长时间都无法得到结果图。输入量数量过多,使计算量无限增加,导致无法得到结果。

经过输入量组合实验,当输入量为电压、温度、前一时刻目标值三项时,可得到较理想的结果,并且仿真时间不会很长,大概在半小时到1 小时之间。如图3 所示,红色的仿真功率曲线与蓝色的实际功率曲线较接近。

3.2 ANN 算法实验

在上文中提到,由于使用前一刻的目标值输出量作为下一时刻的输入量,当给一个训练结束的BP 网络提供新的记忆模式时,已有的连接权将被打乱,这导致已记忆的学习模式的信息消失,在重新训练新网络时需要加入原来的学习模式。因此,在增加训练样本时,原来的样本也要保留。

如图4 是用一组样本数据作为训练数据,训练人工神经网络模型,再用其他数据进行验证,其平均误差为13.65%,误差太大,需进一步优化模型。如图5 是按照之前算法所提到的,在基于图4 的训练数据上,再多加一组数据作为训练数据,仿真结果得出,其平均误差为10.67%。同理,如图6 所示,在基于图5 的训练数据上,再多加一组数据,此时有三组数据(包括图4 的数据、图5 新添加的数据和图6 新添加的数据)作为训练数据,仿真结果得出,其平均误差比图5 更小,为7.42%。如图7 所示,当再按照上面做法添加另一组数据作为训练数据时,仿真结果得出,其平均误差为7.39%,与图6相差很小。若再添加训练数据,误差不会再缩小多少,但仿真时间会增加不少,还会存在过度训练的问题。由此这个神经网络已经趋于稳定,训练数据组数由此决定,为4 组。

3.3 ANN 验证实验

为了验证文中人工神经网络算法预测镍氢电池最大充放电功率的可行性,必须引入现行估算镍氢电池最大充放电功率的最为实际和可靠的方法对其预测的结果数据进行比较验证分析。

可近似地认为,瞬时电流不变,放电时电池电压降到下限电压,充电时电池电压升到上限电压,那么镍氢电池下一时刻最大功率值估算为电流与电压与最大或最小工作电压之差的乘积,将此作为验证文中人工神经网络算法预测镍氢电池最大充放电功率可行性的依据。

下面是用人工神经网络模型和电流电压乘积估算方法来预测最大放电功率值的比较曲线,如图8 所示。

图8 中,蓝色曲线为人工神经网络模型预测功率曲线,红色曲线为电流电压乘积估计算法预测功率曲线,由图可知两种不同方法预测功率的效果比较接近,又由于用电流电压乘积估计算法理论可靠,故与此对比的人工神经网络模型预测功率也是比较可靠的,是具有一定的可行性的。

4 结论

为了在汽车运行过程中实时预测镍氢电池下一时刻最大充放电功率值,同时保证预测的准确性和良好的自适应能力,文中设计了一种可用于预测功率的3 个输入(电压、温度、前一时刻目标值)、10 个神经元、1 个输出的人工神经网络模型,并逐步选用1 组到4 组数据作为训练数据进行训练优化过程。该神经网络模型把电池上一时刻的功率状态即Pt引入到神经网络模型的预测中,从而考虑了Pt对预测Pt+1的影响,提高了神经网络的自适应能力。在神经网络的训练过程中采用了比例共轭梯度算法,通过交替训练仿真,不断地修改网络中各种连接的权重,最终形成固定的记忆模式用于对功率的预测。同时根据不同的神经网络仿真误差的比较避免网络的过度训练。仿真结果表明,本实验建立的人工神经网络模型预测混合汽车镍氢电池最大充放电功率误差在8%内,是比较可靠的,具有一定的可行性。

【1】Gregory L Plett. High-Performance Battery-Pack Power Estimation Using a Dynamic Cell Model[J]. IEEE Transactions on Vehicle-Technology(S0018-9545),2004,53(5):1586-1593.

【2】INEEL(Idaho National Engineering & Environmental Laboratory).Freedom CAR Battery Test Manual for Power-Assist HybridElectric Vehicles[Z]. DOE/ID-11069,2003,PDF version. USA:INEE-L.2003.

【3】Salkind A,Fennie C,Singh P,Atwater T,Reisner D. Determination of state-of-charge and state-of-health of batteries by fuzzy logic methodology[J]. Journal of Power Sources,1999,80(2):293-300.

【4】Shen Wenxue. State of available capacity estimation for lead-acidbatteries in electric vehicles using neural network[J].Energy Conversion and Management,2007,48(2):433-442.

【5】Zhang Hongmei,Deng Zhenglong.UKF-based attitude determination method for gyro less satellite[J].Journal of System Engineering and Electronics,2004,15(2):105-109.

猜你喜欢

输入量目标值人工神经网络
基于人工神经网络的Ni-ZrO2纳米镀层耐腐蚀性能预测
蒙特卡洛法在发动机推力测量不确定度评估中的应用
AI讲座:ML的分类方法
ML的迭代学习过程
电流互感器测量结果不确定度评定
输入量与尿量比在深Ⅱ度烧伤患者休克预防性补液中的应用分析
人工神经网络实现简单字母的识别
基于人工神经网络的优化配置研究
挖掘“小专业”赢得大市场
基于人工神经网络的经济预测模型