刘芊彤,邢远秀
(武汉科技大学理学院,湖北 武汉 430065)
锂离子电池具有能量密度高、循环寿命长、环境污染小等优点[1],是目前最受欢迎并且应用最广的新能源之一。然而随着锂电池充放电循环次数的增加,其容量会衰退,性能将会降低[2],未及时更换老化失效的电池可能会导致严重的安全事故。因此有效估计和控制锂电池的健康状态(state of health,SOH)和准确预测电池剩余寿命(remaining useful life,RUL)对提高电池运行的可靠性和保证系统的安全运行具有重要意义。
目前对于锂电池的RUL 预测的方法主要有基于模型的方法和基于数据驱动的方法[3]。其中,基于模型的方法主要有电化学模型和等效电路模型等。文献[4]通过电化学模型研究锂电池的内部参数来实现RUL 的预测,但是由于电化学过程是动态的和非线性的,所以难以得到一个能精确描述电池特性的模型。文献[5]利用等效电路模型对锂电池的RUL预测取得了比较好的结果,但此类模型除结构复杂,还需要大量的物理先验知识。随后文献[6]构建了基于无迹粒子滤波算法的等效电路模型,文献[7]改进了粒子滤波算法的状态跟踪与RUL 预测估计方法,上述方法虽然提高了预测精度,但模型的构建和求解过程过于复杂,在实际应用中难以实现。
由于基于模型方法的局限性,目前多数文献采用基于数据驱动的方法,该类方法不依赖电池内部结构,仅对电池的历史数据进行分析,通过挖掘电池的退化特征和退化趋势来构建RUL 预测模型。传统的机器学习方法和统计学习方法在电池预测领域被广泛应用,如文献[8]利用改进支持向量机预测了锂电池的RUL,避免了局部最优问题并获得了较高的预测精度,文献[9]使用基于高斯过程回归的自回归模型降低了锂电池RUL预测误差,文献[10]使用极限学习机提高了模型的学习效率和泛化能力。但传统方法常常包含求矩阵逆等运算,在训练预测模型时收敛速度较慢,并且当样本信息不完全时预测精度会受到较大影响。随着计算机硬件的发展和数据处理能力的提高,具有强大的特征学习和非线性拟合能力的深度学习方法成为了众多领域广泛研究的热点,并且被有效地应用于电池的RUL 预测中。文献[11]将锂电池的容量退化数据作为循环神经网络(recurrent neural network,RNN)的输入,较好地实现了对锂电池老化数据的预测。文献[12]引入自适应灾变遗传算法用于优化RNN 的初始权值和阈值,提高了锂电池RUL 的预测精度,但由于RNN存在梯度消失的问题,导致模型难以训练。文献[13]使用长短期记忆(long short term memory,LSTM)网络较好地预测了电池的寿命衰退情况,虽然在一定程度上解决了梯度消失的问题,但网络结构较复杂,参数过多。随后文献[14-15]采用了基于门控循环单元(gate recurrent unit,GRU)网络,因为GRU 具有更少的参数,在锂电池的RUL 预测中,可在保证模型预测精度的同时,使得模型收敛速度更快。
由于满电情况的电池实际容量能够直接表征电池的退化情况,在电池剩余寿命预测中常被作为电池健康的重要指标[16],然而多数的锂电池存在严重的容量再生现象,直接利用电池容量进行预测难以准确跟踪电池容量退化趋势[17-18],因此许多文献首先采用信号分解的方法对电池容量数据进行预处理后再进行RUL预测。文献[19]提出一种基于小波包分解的二维卷积神经网络的锂电池RUL 预测模型,虽然对电池容量序列进行分解后预测效果有所提升,但小波包分解过程存在着频段和分解层次的限制。文献[20-21]分别使用经验模态分解(empirical mode decomposition,EMD)和自适应白噪声完备集成经验模态分解(complete ensemble empirical mode decomposition with adaptive noise,CEEMDAN)去除锂电池原始容量数据中的噪声,尽管与小波包分解相比具有更强的自适应性,但是容易出现模态混叠现象。变分模态分解(variational modal decomposition,VMD)是一种新型的信号分解方法[22],与EMD和EEMD相比有更好的鲁棒性,分量个数更少,利用VMD 与集成深度模型结合[23]可以提高锂电池剩余寿命预测的精度和稳定性。
本工作以锂电池的容量作为健康指标,提出了一种基于VMD分解和GRU网络的锂电池RUL预测方法。首先通过VMD 方法对锂电池原始容量序列进行多尺度分解,得到一系列表征局部特征的本征模态函数(intrinsic mode function,IMF)分量;然后采用多层GRU 网络模型分别对多个IMF 分量进行预测,针对该模型预测结果不稳定的问题,在训练模型前利用PSO对GRU模型的学习率、神经元个数进行优化,用以提高模型的鲁棒性和准确率;最后将各个分量的预测结果进行叠加作为最终预测结果。在NASA数据集上的实验结果表明,本工作提出的VMD-PSO-GRU锂电池RUL预测模型具有更高的预测精度,能够有效应用于锂电池寿命的预测。
电池的SOH 表示当前充满电时电池储存电能的能力相对于新电池的存储电能的能力的比值,可以定量描述当前锂电池的健康状态[24],目前较多文献用电池容量来描述SOH[15,22],定义如下:
式中,SOH(t)为第t次充放电循环时的电池健康状态,C(t)为电池在第t次充放电循环时的容量,C0为电池初始额定容量。
随着锂电池的使用次数增加,其SOH 值会减小,当其降低至额定容量的70%时则判定锂电池的寿命终止[25],其中从当前时刻到寿命终止时的充放电循环周期次数称为电池的RUL,定义如下式:
VMD的分解过程是变分问题的求解过程[26],通过在变分问题框架中迭代搜索变分模型最优解来实现信号的分解,对噪声具有很好的鲁棒性,并且能有效规避端点效应和模态混叠问题。因此,本工作使用VMD 算法对复杂且非平稳的锂电池容量序列进行有效分解,其分解步骤如下:
第一步:构造变分模型。将锂电池原始容量信号分解为K个分量,构造其约束变分函数为:
式中,{ωk}={ω1,ω2, …,ωk}为每个模态的中心频谱;uk为分解得到的第k个IMF分量;∂t即对t求偏导数;δ(t)为冲击函数;*为卷积计算符号。
第二步:引入二次惩罚因子α以及Lagrange乘子λ(t),将约束变分问题转化为非约束变分问题。增广Lagrange表达式如下:
GRU 网络是对RNN 和LSTM 网络的改进,保留了二者优点的同时,解决了在反向传播过程中出现的梯度消失问题,并且使每个循环单元自适应地捕捉不同时间尺度的独立性,可用来对锂电池的剩余寿命进行预测。从图1 中可以看出,GRU 将LSTM的输入门和遗忘门融合为一个更新门,同时将输出门改为重置门。其中更新门用于控制前一时刻的状态信息被代入到当前状态中的程度,重置门控制前一状态有多少信息被写入到当前的候选集。这两个改变使得GRU 结构更简单,模型更容易训练,具有更高的运行效率。
图1 LSTM单元与GRU单元结构Fig. 1 Unit model of LSTM and GRU
GRU单元模型中rt和zt分别表示重置门和更新门的输出,xt为门控单元的输入,σ和tanh分别为Sigmoid 激活函数和tanh激活函数,其中重置门、更新门和输出的计算式如下:
式中wz、wr、wh、wo为需要通过反向传播学习的权重参数;σ为Sigmoid 激活函数;[ ]表示向量连接;⊙表示Hadmard积运算。
与其他随机搜索算法的盲目性搜索相比较,PSO 算法在搜索过程中具有内在指导性作用[27],PSO 中的粒子仅仅通过当前搜索到的最优点进行信息共享,整个搜索更新过程是依赖当前最优解的过程,因而使得PSO 的粒子收敛速度大于其他算法,被广泛应用于约束优化、动态多目标优化等问题。本工作为了更加准确地预测锂电池剩余寿命,使得模型具有更好的稳定性和鲁棒性,在训练GRU模型前,采用PSO算法对GRU神经网络的学习率和神经元个数进行优化。
将GRU 神经网络的学习率和神经元个数归结为同一个粒子的属性,随机生成一个粒子Zi=(Ir,q1,q2,…,qj,…,qm),其中lr为学习率,qj
其基本过程如下:
① 设置粒子的最大速度区间和位置区间,其中速度区间为[-0.4,0.4],神经元个数区间为[1,100],学习率区间为[0.001,0.050],给每个粒子赋予随机的初始位置和速度;
② 根据给定的适应度函数,计算每个粒子的适应值;
③ 记录每个粒子的最优适应值和最佳位置,并记录全局最佳适应值和最佳位置;
④ 更新每个粒子的速度和位置,更新公式如下:
式中,d1、d2为粒子的加速学习因子;w为惯性权重;r1、r2为0 到1 之间的随机数;vi(l)为第l次迭代时第i个粒子的速度;pi(l)为第l次迭代时第i个粒子经历过的最优位置;xi(l)为第l次迭代时第i个粒子的当前位置;pbest(l)为第l次迭代时全部粒子经历过的最优位置;
⑤ 当达到最大迭代次数时或全局最优适应值满足给定阈值时终止迭代,此时全局最佳位置即为PSO的最优解,否则转至步骤②继续进行迭代。
本工作采用单步预测方法,每一次仅用少量已知电池容量序列数据来预测下一个周期的剩余容量。为了提高RUL 预测的精度,采用具有m层隐藏层,每一层包含n个GRU 门控单元的多层GRU神经网络模型。网络结构如图2所示,图中GRUm表示GRU的第m层。
图2 基于PSO算法的GRU神经网络结构图Fig. 2 Structure diagram of GRU neural network based on PSO algorithm
经过多轮训练后,所获得的VMD-PSO-GRU模型可用来对锂电池的SOH 进行估计,并对RUL进行预测。
当对某个电池完成VMD-PSO-GRU 建模后,对该电池的RUL进行预测的流程如图3所示,其主要步骤如下:
图3 VMD-PSO-GRU模型整体流程图Fig. 3 Overall flow chart of VMD-PSO-GRU model
① 设置RUL的初始值为0;
② 利用VMD算法对t时刻前n个锂电池容量序列进行分解,获得K个分量序列;
③ 分别将每个分量序列中t时刻前已知的n个IMF 数据作为VMD-PSO-GRU 模型的输入值,将模型输出的各分量预测结果叠加后获得t+ 1 时刻的电池容量预测值,并计算相应的SOH(t+ 1)的值;
④ 将t+ 1 时刻的预测值回填原序列,容量序列向前滑窗一个时刻,即t=t+ 1;
⑤ 如果SOH > 0.7,则RUL = RUL + 1,转步骤②继续进行下一时刻的SOH的估计;
⑥ 对估计的SOH值、RUL值进行评价指标的计算,作为预测模型性能的评价标准。
本实验使用NASA 电池数据集中的4 种锂电池B0005、B0006、B0007和B0018的容量数据,验证VMD-PSO-GRU 算法对RUL 预测的有效性和优势。4 种电池的额定容量为2.0 Ah,以每次充满电时的电池容量为本次循环的实际电池容量,B0005、B0006、B0007 三组电池实验的充放电循环次数为168,B0018 电池的充放电循环次数为132。图4(a)为4 组电池的电池容量变化图,图4(b)为B0006号电池的信号分解图,可以看出随着循环次数的增加电池容量呈现退化趋势,并且容量下降过程均有出现容量再生现象,同时可以看出IMF1反映了原始数据的整体趋势,IMF2、IMF3显示了较小时间周期内的波动情况,IMF4~IMF6 为较高频段下的变化,因此使用VMD 可以有效地分解锂电池老化数据的不同分量。
图4 NASA电池容量变化图及B0006电池VMD分解图Fig. 4 Battery Capacity degradation and VMD decomposition results of NASA cells and B0005 battery
本实验中分别选取50%和40%的锂电池容量数据作为训练集,剩下的50%和60%的数据作为测试集来测试模型的性能,预测过程中4组电池失效阈值设置为电池容量下降至额定容量的70%。
本工作算法应用VMD 将电池容量序列分解为K个IMFs 分量,将每一个分量的预测结果进行叠加作为最终的预测输出,若分解的层数过多,则会导致训练时间大大增加,同时包含较多零值的信号会加大预测误差。因此,本工作在训练模型时逐渐增加K值,将训练时间和预测误差综合最优时对应的K= 7作为最终IMFs分量个数。
本工作构建的多层GRU 网络中包含m个隐藏层,每个隐藏层包含n个GRU 单元。随着网络层数m的增加,对输入数据的特征抽象越深,能够有效降低模型预测误差,但m过大会导致网络过于复杂,使得网络训练时间增加,甚至出现过拟合现象。表1中给出了采用B0006号锂电池的50%剩余容量数据作为训练集时,不同情况下模型3次预测的平均精度。综合考虑网络的复杂度和预测精度,本工作采用隐藏层数m= 2,每一层包含n= 20个GRU单元的双层GRU神经网络作为预测网络。
表1 GRU神经网络不同层数预测结果Table 1 Prediction results of different layers of GRU neural network
当确定K= 7 和n= 20 后,对于每一组电池,模型采用一步预测法进行RUL 预测。利用训练数据构建的训练集中包含若干个数据对,每个数据对有:每一个分量中20个连续的IMF数据,共7个分量的数据作为输入,下一个周期对应的电池容量作为标签。将7个分量数据预测的结果进行叠加作为该周期预测的剩余容量值。在测试时,利用训练数据集中最后的20个连续循环周期对应的IMF分量数据进行剩余容量预测,直至预测电池寿命结束为止。
另外,采用Xavier 方法分别对网络权重进行4次初始化,并为学习率lr和每层GRU单元数n赋予不同的初始值,PSO每次更新粒子速度和位置后对应最优值下的适应度值变化曲线图如图5 所示。从图中可以看出PSO在寻优初期收敛速度较快,随后收敛速度降低,粒子运动轨迹趋于稳定,4 次寻优的结果为n=20,lr分别为0.012、0.011、0.009和0.010。虽然PSO容易陷入局部最优解,无法保证得到网络权重的全局最优解,但通过PSO所获取的局部最优解仍然可在一定程度上提高网络预测的精度,将寻优结果n=20和lr=0.010作为最优网络参数,优化前B0006电池的平均预测精度为98.69%,PSO寻优后得到的预测精度稳定在99.30%左右。
图5 不同初始值下的适应度变化图Fig. 5 Fitness change charts with different initial values
本工作实验平台为2.3 G 的8 核CPU 和16 G内存的PC 机,编程语言为Matlab,操作系统为Windows11。
(1)平均绝对百分比误差(mean absolute percentage error,MAPE):
式中,N为测试样本的长度; RULreal为真实的剩余寿命周期;RULpre为预测的剩余寿命周期。
本工作采用上述指标对提出的模型预测性能进行评价,其中MAPE、RMSE、MAE、RULe的值越小,说明预测结果越准确,RA 的值越接近1 证明模型的预测效果越好。
图6为利用4组电池容量数据中50%的数据构建训练集,剩下50%的数据构建测试集时4组电池容量预测结果与真实测试结果的拟合情况。
从图6可以看出本工作所提出的方法能够很好地捕捉到电池的老化趋势,具有较好的预测精度。表2给出了基于VMD-PSO-GRU模型对4组锂电池数据进行预测后所对应的评价指标值,从表中能够看出模型对B0018 号电池的预测效果最好,RA 为99.42%,MAPE 最低为0.58%,RUL 预测周期误差仅有1个周期,对B0005和B0007号电池的预测结果相对较差,但是也达到了99.14%的RA,RUL预测周期误差为2个循环周期,证明本工作提出的VMD-PSO-GRU 模型能够很好地预测锂电池的未来容量变化和剩余寿命。
表2 基于VMD-PSO-GRU模型在50%数据集为训练集时的预测结果Table 2 Prediction results of VMD-PSO-GRU model with 50% training data
为了进一步验证本工作提出的模型在训练数据不足时也能很好地对锂电池剩余寿命进行预测,利用4组电池容量数据的40%构建训练样本进行网络训练,剩余60%的样本构建测试样本来验证预测模型的性能,图7为四组电池的预测结果拟合图。
从图7 和表3 中可以看出使用更少的训练数据训练的模型预测精度有所下降,表明了预测起点越靠前,建模时提供的有效信息就越少,预测结果的误差就越大。但本工作算法依然可以保持较好的预测效果,从表3中可以看出预测效果较差的B0006电 池 的MAE、RMSE 和MAPE 分 别 为0.0150、0.0170、1.13%,但总体预测的RA仍然是在98.91%以上,4组电池的RUL预测周期误差控制在3个循环周期之间,表明本工作的模型有较好的泛化能力。
图7 4组电池在40%数据集为训练集时的容量预测结果Fig. 7 Capacity prediction results of four sets of batteries with 40% training data
表3 VMD-PSO-GRU模型在40%数据集为训练集时的预测结果Table 3 Prediction results of VMD-PSO-GRU model with 40% training data
此外,为了验证本工作所提出的基于VMDPSO-GRU 模型的锂电池寿命预测模型的有效性,基于4 组电池分别与GRU、EMD-GRU、VMDGRU 三种预测模型进行了对比分析,其中均使用50%的数据集作为训练集,图8为不同算法下的预测效果对比图。
图8 不同模型的4种电池容量预测结果对比图Fig. 8 Comparison of four battery capacity prediction results of different models
从图8 中可以看出,GRU 单一预测模型和EMD-GRU模型的拟合效果较差,并且不能很好地跟踪电池容量的再生分量,表明电池容量数据序列的预处理结果会直接影响电池容量预测的精度。VMD-GRU 模型的预测结果虽然有较好的拟合效果,但是预测精度不高,本工作提出的VMD-PSOGRU 模型先使用合适的信号分解方法对初始容量数据进行预处理,并采用PSO 算法对网络参数进行优化后,再对预测模型进行训练,使得该模型不仅能够准确预测电池的整体退化趋势,并且对容量再生有很好的跟踪能力,预测效果最佳。表4给出了不同模型下4组锂电池预测结果的评价指标,其中GRU、EMD-GRU、VMD-GRU三种模型的最大MAPE 和 最 大RMSE 分 别 为4.96%、 2.61%、2.58%和0.0805、0.0433、0.0242,而本模型的最大MAPE和最大RMSE分别为0.88%和0.0148,均有明显下降,并且本工作算法在4组电池的RUL预测周期误差均为最小,只有1~2 个周期误差,证明本工作提出的模型在各组电池的测试中均有比其他3个模型更高的精度。
表4 不同模型的4组电池预测结果Table 4 Prediction results of different models on four batteries
为了进一步证明本工作所提出的VMD-PSOGRU 预测方法的优势,以NASA 数据集中的B0006电池为例,采用相同的训练集,将本工作的方法与近期相关文献所提模型的预测结果进行了对比,对比结果见表5。
表5 本工作与其他文献预测结果比较Table 5 The comparison results of different methods
从表5中可以看出,文献[22]虽然使用了VMD方法对锂电池初始容量数据进行了预处理,但是未对预测网络进行合适的优化,所以预测精度不够。文献[21]通过自适应双指数模型平滑方法减少了锂电池容量再生带来的影响,并使用CEEMDAN 对锂电池容量数据进行降噪,但是CEEMDAN 带来的模态混叠效应是无法避免的,从而降低了预测精度。文献[10]虽然使用加速鱼群算法对极限学习机预测网络的隐含层权值和偏置进行了优化,但是忽略了锂电池初始容量数据的噪声影响,所以预测误差较大。总的来说,本工作提出的VMD-PSOGRU 模型获得了较高的预测精度,在RUL 预测上有更好的优势。
为了提高锂电池剩余寿命预测的稳定性和准确性,本工作将VMD算法、PSO算法和GRU网络模型相结合,提出了一种用于锂离子电池的剩余寿命预测的VMD-PSO-GRU 模型。经过实例验证和分析,得出了以下结论。
(1)VMD 算法可以将电池容量序列分解成多个平稳的IMF分量,能够有效降低容量再生和测试误差等噪声干扰,减少预测误差。
(2)选择多层GRU网络,并运用PSO算法对其学习率和神经元个数进行优化,可以提高模型的稳定性和预测精度。
(3)在NASA数据集上的测试结果表明,与其他较先进的方法相比较,VMD-PSO-GRU 预测模型具有比较显著的优势,能有效应用于锂电池的SOH估计与RUL预测。