文献标识码: A
DOI:10.16157/j.issn.0258-7998.190981
中文引用格式: 俞美鑫,施卫,蒋龙,等. 基于GA-BP神经网络的动力锂电池SOC估算[J].电子技术应用,2020,46(1):104-107,112.
英文引用格式: Yu Meixin,Shi Wei,Jiang Long,et al. SOC estimation of power lithium battery based on GA-BP neural network[J]. Application of Electronic Technique,2020,46(1):104-107,112.
0 引言
随着能源危机和环境问题的日益严重,近些年来世界各国纷纷加大力度发展新能源汽车,以减少对环境污染和对化石燃料的依赖。锂离子电池作为电动汽车主流的储能元件,其性能直接影响整车性能的表现[1]。而动力电池为电动汽车系统的关键部件,以磷酸铁锂为正极材料的锂电池因其高能量密度及耐高温性能等优点得到了广泛的运用。电池荷电状态(SOC)是显示电池运行状态的重要参数,决定了电动汽车的可续驶公里数,国内外目前已经取得了海量的研究成果,如安时计量法、开路电压法放电试验法[2]等。这些方法的实现需要电池长时间静置或要求电流变化幅度不大的情况下方能得到精准数据。
动力锂电池内部复杂的电化学反应和运行状况中不断变化的各类因素之间的非线性关系致使传统SOC值估算方法存在较大误差。而BP神经网络算法是一种模拟人脑学习技能的新型算法,无需建立准确的数学模型,通过分析输入量和输出量之间的对应关系,为输出量建立模型。因BP神经网络是基于误差逆向传播的多层前馈网络特性[3],该算法收敛速度较慢且易陷入局部极小化。而遗传算法(GA)则是一种通过模拟自然界的选择与生物进化机理来寻找最优解智能算法,具有较强的收敛性和鲁棒性,它与神经网络相结合恰好可以完美解决易陷入局部最优点的问题,并能明显加快网络收敛速度。
1 GA-BP神经网络
1.1 GA算法
遗传算法(Genetic Algorithm,GA)是模拟生物在自然环境中的遗传和进化的过程而形成的自适应全局优化搜索算法[4]。遗传搜索算法可同时处理群体中的多个体以达到快速优化BP神经网络的初始权值和阈值,从而使优化后的BP神经网络能够更好地预测函数输出。遗传算法优化BP神经网络的要素包括群种初始化、适应度函数、选择操作、交叉操作和变异操作[5]。
1.1.1 种群初始化
个体编码方式为实数编码,每个实数作为一个染色体的一个基因位,可免去编码解码步骤,便于遗传操作简化。实数串分为四部分,分别为由输入层至隐含层权值W1、隐含层至输出层权值W2、隐含层阈值B1、输出层阈值B2。
1.1.2 适应度函数
由个体得到BP神经网络初始权值和阈值,再用训练数据进行BP神经网络训练后预测系统输出,将期望输出与预测值之间的误差绝对值记作个体适应度F,如式(1)所示:
其中n为网络输出节点个数,yi为i点期望输出值,oi为i点预测输出值,k为系数。
1.1.3 选择操作
此方案选择的轮盘赌法是在适应度比例的选择策略下完成的,单个个体被选择的概率pi如下:
式中,神经网络第i个节点的适应度值为Fi,种群个体数目设定为N。
1.1.4 交叉操作
因个体使用实数编码,故选择实数交叉法,第L个染色体al和第K个染色体kl在j位的交叉操作情况如:
1.1.5 变异操作
随机抽取个体i的第j个基因变异,变异结果如式(5)所示:
式中,amin为基因aij的下限值,amax为基因aij的上限值,0≤r≤1。
1.2 BP神经网络
BP(Back Propagation)神经网络是由输入层、输出层和隐含层构成的,具有“信号向前传递、误差反向传播”的网络模型特征[6],是一种前馈型多层感知器。在信号向前传递中,输入信号从输出层经隐含层逐次处理,直至输出层每一次神经元状态会影响下一层神经元状态,如若输出层得出数值与期望值不同,则转入反向传播阶段,再根据预测误差调整网络的阈值和权值,从而使BP神经网络输出层不断向期望值逼近[7]。汽车动力锂电池的SOC值与放电电流、电池电压、电池正极温度均存在非线性关系。BP神经网络首先使用经遗传算法优化后的输入输出参数对其进行训练,再通过训练好的GA-BP神经网络预测系统的输出值,判断误差范围是否在合理区间内,最终确定该算法在动力电池SOC值预测上的可行性。
2 动力锂电池SOC估算模型建立
建立GA-BP算法的动力电池SOC估算模型必须分别确定BP神经网络和遗传算法中的各设计参数。
2.1 BP神经网络设计与GA-BP运算参数确定
在建立BP神经网络前,首先建立网络结构框架。根据理论研究表明,在两组非线性相关的输入和输出数据中,若其他各条件选择合理,一般三层BP神经网络就能满足设计的精度要求,同时输入与输出参数的选择直接影响神经网络输入层与输出层节点数目和变换函数类型,选择合理的输入参数能够获得良好的网络性能,同时可以提高网络的训练速度和精度等,输入参数的选择一般遵循的基本原则是选择对网路输出影响大、容易测量且输入变量之间无相关性或相关性较小的参数。在汽车动力锂电池SOC神经网络输出参数选择中,电池端电压、电池放电电流和电池正极温度都可以通过单片机采集,CAN数据传输收集到,且三者与锂电池SOC值联系紧密,故将动力电池的电压、温度、电流作为神经网络三个输入变量,锂电池的SOC值作为BP神经网络的唯一输出端变量。从而训练样本可以表达为[V I T SOC]的向量形式,V为电池端电压、I为电池充放电电流、T为电池正极温度、SOC为剩余电量[8],如图1所示。
BP神经网络的节点数可根据一般经验确定,通过试验得到一个较合理的结果。常用经验公式为:
其中,m为输出节点数;n为输入节点数;P为隐藏层节点数;a为1~10之间的整数,结合网络预测精度,在这里取a=4,故隐藏层节点个数为6。
遗传算法种群规模设定为50,遗传叠代次数为100次,变异概率为0.09,交叉概率为0.4。
2.2 GA-BP神经网络构建
GA-BP神经网络框架构建的核心思想就是将遗传算法的启发式寻优和全局优化特征运用于神经网络阈值和权值的训练,再通过BP算法的误差逆传播特征进一步反馈优化,最终达到智能寻优目的[9]。基本结构框图如图2所示。
3 数据采集及试验结果分析
本文选取的汽车动力电池为磷酸铁锂电池,试验平台为江苏理工学院与中德诺浩公司合作开发的电池管理试验台架,如图3所示。
电池放电试验参数经飞思卡尔MC9S12中央处理器运算后通过CAN通信协议传输信号,经MCGS组态软件实现电池电压数据采集实时更新,如图4所示。
电池额定电压为3.2 V,额定容量为60 Ah,内阻≤2 mΩ,过充保护电压3.65±0.05 V,放电截止电压为2.5±0.05 V,放电工作温度为-20 ℃~60 ℃,充电工作温度为
-10 ℃~55 ℃[10]。在额定温度(20±5 ℃)情况下,先用1/3C(20 A)恒流充电,电池电压到达3.65 V时静置2小时,放电过程分别采用1/3C、1/2C的放电电流进行放电试验,到达设定时间后停止放电,在放电时段分别随机采集电池的放电电流、电压、温度、剩余电量值,归一化处理制作成样本数据,如表1所示。
选取1至12号组样本作为训练样本数据,13至16组用作测试样本数据,运用MATLAB工具箱搭建网络模型,通过样本学习得到最优化的阈值和权值,带入两组测试样本中测试该算法的可行性[11]。设置已使用遗传算法优化后的BP神经网络学习速率为0.01,均方差为0.000 001,迭代次数为5 000次。将随机初始BP神经网络与经遗传算法优化过的权值和阈值两种情况下的训练误差曲线做对比[12],如图5、图6所示。
明显看出经GA-BP算法优化过的网络当训练次数接近6次时,误差很小且已达到目标要求精度。遗传算法优化过程中适应度变化过程和GA-BP算法的训练状态图如图7、图8所示。
随机抽取测试样本中的两组电池试验数据,将电池SOC的实际值分别经BP神经网络和GA-BP神经网络算法仿真后的数据进行对比,如表2所示。
由表2可知,经过遗传算法训练后的BP网络相比误差逆传播算法实现了对电池SOC精准估算,克服了传统算法应过度依赖建立数学模型的弊端,为实现动力电池SOC的精确估算提供了一种新途径。
4 结论
本文选用运用于纯电动汽车的60 Ah的磷酸铁锂锂电池为研究对象,针对影响电池SOC值的复杂非线性关系影响因素,提出了将遗传算法和BP神经网络算法相结合,提升收敛速度和迭代过程的平稳性,从而达到迅速获取权值和阈值的目的,并在所得试验数据的基础上进行仿真试验,验证了GA-BP神经网络算法在动力锂电池SOC估算中具有良好的全局搜索能力、高度的鲁棒性优势和准确性。
参考文献
[1] 孙涛,龚国庆,陈勇.锂电池参数辨识模型的设计与研究[J].电子技术应用,2019,45(3):127-130.
[2] 李世光,汪洋,王建志,等.基于改进EKF算法的锂电池SOC预估研究[J] .电子技术应用,2017,43(9):87-89,97.
[3] 刘冰,郭海霞.MATLAB神经网络超级学习手册[M].北京:人民邮电出版社,2014.
[4] 包子阳,余继周,杨杉.智能优化算法及其MATLAB[M].北京:电子工业出版社,2018.
[5] MATLAB中文论坛.MATLAB神经网络30个案例分[M].北京:北京航空航天大学出版社,2010.
[6] 吕聪颖.智能优化方法的研究及应用[M].北京:中国水利水电出版社,2014.
[7] 赵刚,孙豪赛,罗淑贞.基于BP神经网络的动力电池SOC估算[J].电源技术研究与设计,2016(4):818-819.
[8] 周美兰,赵强,周永勤.改进的PSO-BP神经网络估算磷酸铁锂电池SOC[J].哈尔滨理工大学学报,2015(4):892.
[9] 黄妙华,严永刚,朱立明.改进BP神经网络的磷酸铁锂电池SOC估算[J].武汉理工大学学报,2014(12):790-793.
[10] 高文敬.动力电池SOC估算方法研究与BMS开发[D].淄博:山东理工大学,2018.
[11] 程泽华.基于人工神经网络的MATLAB接触线磨耗预测型研究[D].北京:中国铁道科学研究院,2018.
[12] 谭霞.基于GA优化的MIV-BP神经网络连续血压无创监测方法研究[D].重庆:重庆大学,2018.
作者信息:
俞美鑫,施 卫,蒋 龙,王 浩
(江苏理工学院 机械工程学院,江苏 常州213000)