APP下载

基于IGA-BP神经网络的锂电池健康状态估算

2022-01-28何浩然丁稳房吴铁洲

电源技术 2022年1期
关键词:适应度交叉变异

何浩然,丁稳房,吴铁洲,王 航

(湖北工业大学太阳能高效利用及储能运行控制湖北省重点实验室,湖北 武汉 430068)

锂离子电池具有能量密度高、寿命长和清洁可靠等优势,在电动汽车领域广泛应用[1]。随着锂离子电池充放电次数的积累,老化程度递增,可用电池健康状态(SOH)描述,当达到限定值时,锂离子电池难以长时间运转,可能产生毁灭性的后果,从而导致高昂的维修成本,故老化的电池应及时更换或者维修[2-3]。SOH是电池管理系统的重要状态量之一,同时也是老化锂离子电池更换、维修的重要参考依据[4]。因此,锂离子电池SOH的准确估算极为重要,是保证其健康、高标准运行的必要环节。

锂离子电池SOH的估算方法主要有直接测量法、基于模型的方法和数据驱动法。文献[5]结合化学和机械降解机理,建立了一个容量衰减模型,准确预测电池容量衰减随循环次数的变化。文献[6]从电化学阻抗谱中提取双极化等效电路模型,以电阻值作为容量指标来预测电池寿命结束前的容量衰减,误差小于3%。文献[7]在容量分析的背景下引入区域容量和区域电压的概念,融合经验模型设计SOH估计器,能够与美国宇航局(NASA)的电池老化数据紧密匹配且误差小于2.5%,实现了SOH实时快速估计。

基于数据驱动的SOH估算忽略掉电池内部结构,只需提取和分析与电池容量衰退密切相关的外部健康特征,并通过机器学习算法来建立与电池SOH之间的非线性映射关系,避免了物理建模和参数辨识问题,具有较强的灵活性。文献[8]以间隔电容为健康因子(Health Indicator,HI),采用BP 神经网络(BPNN)进行建模估算电池SOH。文献[9]提出采用LSTM和支持向量机结合的锂离子SOH的估算算法,以单次放电过程的平均电压、平均温度和容量作为输入,SOH作为输出,平均绝对百分比误差达0.6%以内。文献[10]提出基于萤火虫算法优化BP 神经网络对锂离子SOH估算,以欧姆内阻、极化内阻和极化电容作为输入,平均误差为0.87%。文献[11]提出基于遗传算法优化BP 神经网络进行锂离子电池SOH估算,但并未考虑温度等因素,且传统遗传算法收敛能力较差,容易陷入局部最优。文献[12]提出的自适应交叉、变异概率仅考虑个体的适应度值,并未考虑算法迭代次数的影响。BP 神经网络具有较强的非线性映射能力及鲁棒性,适用于锂离子电池SOH估算,但BP 神经网络收敛速度慢、全局搜索能力弱,影响估算精度[10]。

综上所述,本文基于传统遗传算法提出自适应交叉、变异概率策略得到IGA,增强全局寻优能力和收敛性,筛选最优个体基因染色体,以此作为BP 神经网络的初始权值和阈值,以克服BP 神经网络的缺陷,以此为基础建立IGA-BP 神经网络的SOH估算模型,提高估算精度。

1 BP 神经网络SOH 估算模型的建立

本文选择锂离子电池恒流放电循环过程作为样本,提取平均放电电压Vm、平均放电温度T和放电电压达到最低点时间t作健康特征因子,SOH为回归量。SOH定义为电池以一定倍率完成放电过程所释放出的容量与初始容量的比值,如式(1)所示:

式中:Cx为第x次放电循环的电池容量;C0为电池的初始容量。

BP 神经网络以梯度最速下降法为学习规则,当隐藏层神经元数目足够多时,3 层BP 神经网络能够对任意非线性函数逼近。BP 神经网络结构如图1 所示,以测量得到的Vm、T和t为输入,网络输出为锂电池SOH。

图1 基于BP神经网络的SOH估算模型

输入层和输出层节点数分别为3 和1。隐藏层节点数可由公式(2)判断。

式中:p为隐藏点节点;m为输出层节点;n为输入层节点;a为1~10 的整数。

根据式(2)结合数次仿真测试对比,p取10 时,仿真效果最好。隐藏层和输出层激励函数分别采用S 型函数tansig、线性传递函数purelin,性能函数选择均方误差性能函数(mean squared error,MSE)。BP 算法步骤如下:

设隐藏层的输出为Yj;隐藏层的阈值为θj;输出层的阈值为θk;隐藏层的传递函数为f1;输出层的传递函数为f2;输入层到隐藏层的权重为wij;从隐藏层到输出层的权重为wjk,期望的输出为Tk。

学习次数设为0,权值、阈值为[-1,1]的随机数。

输入学习样本(xk,bk),其中k∈{1,2,3,…,M},M为样本数,xk∈Rm。

计算隐藏层第j个神经元的输出Yj以及网络的输出Yk:

输出层节点误差的计算:

隐藏层节点误差的计算:

误差函数的定义:

权值更新公式:

式中:η为学习率;ω为权值。网络训练采用最速下降法调整连接权值,使误差E迅速达到最小值。

2 基于IGA-BPNN 的SOH 估算模型

SOH随充放电循环次数增加总体趋势减小,但在过程中多次出现“跃迁”现象,其物理机制为电压、电流和温度的暂态变化导致锂电池内部离子被短暂激活,有可能导致SOH估计数学方法陷入局部最优。为避免传统GA 陷入局部最优,本文引入了自适应比例概率函数改进了传统GA 中的选择、交叉和变异操作。

2.1 改进的遗传算法

传统GA 通过模拟生物个体染色体的选择、交叉、变异实现全局最优,而GA 采用固定的交叉概率和变异概率,易产生局部最优、收敛速率慢等问题。针对上述问题,提出由个体适应度值、算法迭代次数决定的自适应交叉、变异概率,用于增强GA 全局寻优能力和提高收敛速度[12]。

2.1.1 染色体编码

神经网络结构由3 节点输入层、10 节点隐藏层、1 节点输出层组成,故采用实数编码,遗传算法中个体编码长度为51。

2.1.2 适应度函数的确定

个体的适应度值是判别个体优良与否的首要指标,本文选取BPNN 的均方误差函数E作为适应度函数F。

2.1.3 选择操作的设计

本文采用基于自适应度比例的轮盘赌法,在这种方法中,群体中的个体越优秀,被选中的概率就越大,计算公式如下:

式中:Fq为第q个个体的适应度值;j为调节因数;N为种群个体数目。

2.1.4 交叉操作

(1)交叉概率

交叉操作是GA 的关键步骤,本文提出的自适应交叉概率将个体适应度值和算法迭代次数融合在一起,既对个体的筛选发挥作用,也考虑迭代次数增加后的稳定性,具体表述如下:适当增加较差个体的交叉概率,优化其基因结构;适当降低优良个体的交叉概率,保持原有基因结构。迭代次数较小时,交叉概率仅取决于个体适应度值的大小,增大了种群前期的多样性和寻找优良个体的速度;迭代次数较大时,交叉概率较小,使算法搜索范围缩小即收敛性提高,并且能避免出现在极值点处的震荡现象。个体交叉概率的计算公式为:

式中:g为算法当前的迭代次数;Pcq为第q个个体在第g次交叉的概率;T为算法的总迭代次数;Fmin为最佳个体适应度值;k1、k2为Pcqmax、Pcqmin,取值为0.6 和0.3。

(2)交叉方式

选择实数交叉法,第i个染色体Xi与第j个染色体Xj在第k位交叉公式为:

式中:α为随机数,α∈[0,1]。

2.1.5 变异操作

(1)变异概率

同交叉概率一样,GA 的变异概率不能跟随适应度值和迭代次数进行自适应调整,难以保证算法全局优化与收敛速度能力同时兼具。为此,提出一种变异概率的自适应调整策略,此处设计和变异概率原理相同,都是根据个体适应度值和算法迭代次数决定概率大小,其计算式如下[13]:

式中:g为当前迭代次数;Pmq为第q个个体在第g次变异概率;T为总迭代次数;A为控制参数,A∈[0,0.95],本文中A选择0.5。

(2)变异方式

第i个染色体的第j个基因Xij的变异公式为:

式中:Xmax为基因Xij的上边界;Xmin为基因Xij的下边界;g为当前迭代次数;T为总迭代次数;λ为随机数且λ∈[-1,1]。

在算法形成初始种群后,本文所提出的自适应策略使交叉概率和变异算子随着迭代次数增加而降低,保留优良的个体剔除低劣的个体,此方法将会得到越来越优的近似解。

2.2 IGA-BP 神经网络算法

利用IGA 具有由适应度值和迭代次数决定的自适应遗传策略与BPNN 结合起来,在保留其泛化能力的同时也避免易陷入局部最小和收敛速度慢的缺陷。具体步骤如下:

(1)对数据进行预处理,确定编码方式及神经网络结构;

(2)初始化种群,随机生成个体,每个个体上染色体的基因编码对应BPNN 的权值和阈值,在BPNN 训练之前将种群个体作为网络参数,通过BPNN 输出结果的误差按照式(9)计算个体适应度值;

(3)根据式(9)计算染色体被选择为父代染色体的概率,利用式(10)、(12)计算所选个体的交叉、变异概率,若概率值较大,则以式(11)、(13)进行基因重组和变异更新基因编码;

(4)选择当前种群中适应度最小的染色体对应的权值、阈值作为BPNN 的参数;

(5)计算隐藏层及输出层各节点的输出误差,若不满足精度要求,则需由BP 算法按负梯度方向调整更新每一层的权值和阈值,并使用更新后的权值和阈值去计算输出误差,重复训练至误差满足要求,以达到全局最优点,结束训练。图2为IGA 优化BP 神经网络算法的流程图。

图2 IGA-BP算法流程

3 实验结果与分析

3.1 锂电池实验数据集概况

本实验数据集选自NASA 锂电池数据集[14]。实验过程见文献[9]。A 组类型电池(B05、B06、B07)均进行了168 次充放电循环,图3 为A 组电池放电循环过程中的SOH曲线图,SOH曲线随循环次数的增加呈下降趋势。

图3 A组电池SOH变化曲线

为了描述放电电压达到最低点的时间与锂离子电池老化过程的相关性,图4 为B05 电池不同循环周期放电电压随时间变化的曲线图,并将每次循环放电电压到达最低点的时间提取,如图5 所示,从两者曲线递减趋势可看出具有一定的关联性,利用Pearson 和Spearman 相关系数对其相关性进行定量分析[15],表1 中数据可看出能够较好地描述锂电池老化过程。为了简短清晰地描述实验结果,本文选择最具代表性、性能处于中等的B05 电池作为研究对象,取前100 次循环样本作为训练集,后68 次作为测试集。

图4 B05电池不同周期的放电电压曲线

表1 HI 与SOH 相关性分析

3.2 数据预处理及评估指标

由于所选特征数据处于不同的维度,故样本数据被用于估算模型之前需进行式(15)所示的归一化处理。

式中:yn为归一化后的数据;y为原始值;ymax、ymin分别为原始值中最大值、最小值;

本文选用平均绝对百分比误差(MAPE)、均方根误差(RMSE)和拟合程度R2作为模型的评估指标,计算公式如下:

式中:yp(i)表示第i个样本的估算值;y(i)表示第i个样本的原始值。MAPE和RMSE的值越小代表模型估算越精确,R2值越大,曲线拟合优度越大。

3.3 实验结果分析

利用Matlab 软件进行仿真,分别搭建IGA-BPNN 和GABPNN 的SOH估算模型。对IGA-BP 具体参数进行设定:种群规模为10,最大迭代次数为100,染色体长度为51,交叉和变异操作按照本文提出的自适应的计算概率策略;设置BPNN 训练次数为100,误差精度目标为1.0×10-5,学习率为0.05。在GA-BP 算法中交叉概率固定为0.4,变异概率为0.1,其他参数设定与IGA-BP 相同。

将处理后的数据输入模型进行仿真,从图6、图7 可知,GA-BPNN 算法经过29 次迭代达到预设的精度要求且在迭代过程中有陷入局部寻优的可能,而IGA-BPNN 算法经过8 次迭代就达到了目标且在迭代过程中全局寻优能力更强。由此可知IGA-BPNN 的收敛性更佳。

图6 GA-BPNN训练样本迭代误差

图7 IGA-BPNN训练样本迭代误差

为比较两种估算模型的估算效果,以预测值与真实值之差作训练误差,两种模型的估算结果及训练误差如图8、图9所示,图9中ξr表示误差。如图8所示,两种组合算法均能较好地估算锂电池的SOH,拟合曲线均较为平缓,但本文提出的IGABPNN 算法对5 号电池的SOH估算效果更好,更接近真实值。由图9 可知,GA-BPNN 算法的估算误差波动范围为[-0.63%,1.87%],最大误差为1.87%,平均误差为0.48%,IGA-BPNN 算法的估算误差范围为[-0.53%,0.25%],最大误差为0.53%,平均误差为0.14%,与GA-BPNN 算法相比,误差波动范围降低了1.72%,最大误差降低了1.34%,平均误差减少了0.34%。

图8 B05电池测试集数据估算结果

图9 B05电池SOH估算模型的训练误差

从表2 中可看出B05 号电池IGA-BP 算法的拟合程度为0.992,高于GA-BP 算法近8 个百分点。为验证此方法的普适性,用同样的方法对B06、B07 号电池进行实验。IGA-BP 在不同型号电池中仍取得较好的估算效果,说明该方法有较好的鲁棒性及适用性。

表2 A 组电池SOH 估算对比

由图10 可知IGA-BP 算法对应的MAPE、RMSE均低于GA-BP 算法。由此可见本文提出自适应的交叉和变异操作,既确保了算法有较快的收敛速度、较强的全局寻优能力,又有更高的准确率与精度。

图10 A 组电池两种方法估算性能指标

4 结语

本文主要研究基于IGA-BP 的锂电池SOH估算。该算法核心思想是将传统GA 固定的交叉概率和变异概率抛弃,提出一种自适应概率计算策略来优化BP 神经网络的初始权阈值,以提升模型的估算效果。通过对比IGA-BP 与GA-BP 神经网络的SOH估算结果,发现IGA-BP 的估算曲线R2达0.992,MAPE为0.436,RMSE为0.376,在数值上均优于GA-BP 神经网络模型,且收敛速度更快。其克服了传统模型易陷入局部最优及收敛速度慢等问题,具有更高的理论价值,同时在电动汽车锂离子电池SOH估算中有一定的实际应用价值。

猜你喜欢

适应度交叉变异
改进的自适应复制、交叉和突变遗传算法
菌类蔬菜交叉种植一地双收
变异危机
变异
“六法”巧解分式方程
一种基于改进适应度的多机器人协作策略
连数
连一连
变异的蚊子
自适应遗传算法的改进与应用*