基于CEEMDAN-LSTM组合的锂离子电池寿命预测方法
2021-06-28史永胜施梦琢丁恩松洪元涛
史永胜,施梦琢✉,丁恩松,洪元涛,欧 阳
1) 陕西科技大学电气与控制工程学院,西安 710021 2) 江苏润寅石墨烯科技有限公司,扬州 225600
锂离子电池在长期的使用过程中,伴随着充放电循环次数的增多,电池内部发生了一些不可逆的化学反应,导致内阻增大,性能衰退[1-4].可靠的寿命预测技术不仅可以更加有效地使用电池,更能降低故障发生率[5].锂离子电池的剩余使用寿命(Remaining useful life,RUL)即在一定的工作条件下,电池从全新开始到寿命终止(End of life,EOL)所经历的充放电循环周期数,一般容量衰减20%达到EOL.
目前对于锂离子电池寿命预测的方法主要分为模型法和数据驱动法,基于模型法的锂离子电池预测技术已经较为成熟[6].目前数据驱动的预测方法依旧是主流,基于数据驱动方法能够在不建立复杂电池模型的基础上探索电池外部参数和内部状态之间的关系[7].Yun与Qin[8]利用了充放电时间来评价锂离子电池的健康状态,并利用贝叶斯方法对锂电池健康状态评估.如Park等[9]考虑了使用电压、电流、温度、充电曲线等多个测量数据,并结合长短期记忆(Long short term memory,LSTM)算法构建了锂离子电池寿命预测模型.熊瑞等[10]利用长短期记忆递归神经网络(LSTMRNN)学习了锂离子电池容量退化的长期依赖性.韦海燕等[11]建立了基于线性优化重采样粒子滤波(LORPF)的锂离子电池RUL预测方法,其预测误差小于5%.但是因为部分电池有严重的容量重生现象,因此很难准确追踪电池容量退化趋势.
针对锂电池寿命衰退过程存在的容量重生问题,Yu[12]提出了一种多尺度逻辑回归(LR)和高斯过程回归(GPR)结合的锂离子电池寿命预测方法,采用了经验模态分解(EMD)方法将电池容量序列分解为全局退化、局部再生,从而减少了局部再生现象对寿命预测的影响.Zhou与Huang[13]提出一种基于时间卷积网络(TCN)预测模型并采用了经验模态分解(EMD)技术对离线数据进行去噪处理,避免了局部再生造成的RUL预测误差.其预测模型具有起点影响小、预测精度高、鲁棒性强的特点.Li等[14]将经验模态分解与LSTM和Elman神经网络结合起来,使用EMD算法将数据分为若干层,分别建立了低频预测模型和高频预测模型.
传统的EMD算法在模态分解过程中常常伴随着模态混叠并且分解不够完全,不能根据循环前期的容量退化趋势进行可靠的寿命预测.而改进的自适应噪声完全集成的经验模态分解(CEEMDAN)算法,具有分解更为充分、重构误差更小、而且运算时间短等一系列优点,在提取复杂序列的波动模式进而提升预测模型的精度方面具有突出的优势.且近年来LSTM预测模型以其优异的性能在故障诊断和预测领域都得到了很广泛的应用,文献[15-18]都使用LSTM或其改进算法对齿轮、发电机、卫星锂离子电池等进行了寿命预测,均得到了优异的预测结果.
综上所述,为综合两者算法的优势,本文提出了一种CEEMDAN和LSTM的组合锂离子电池寿命预测方法.克服了锂离子电池在寿命预测过程中存在的剧烈波动,可以准确捕捉到锂离子电池容量变化过程的微小变化,并使用公开数据验证了组合预测模型的预测性能.
1 基本理论
1.1 CEEMDAN理论
CEEMDAN理论是在经验模态分解(EMD)算法的基础上发展的,EMD相当于是一种自适应正交基的时频信号处理方对未知的非线性信号的处理方法,不需要预先的分析与研究,就可以直接开始分解,且会自动按照一些固定模式按层次分好,不需要人为干预与设置,但是实际上采用EMD的分解方法对信号处理会出现频率混叠的现象,也叫模态混叠.
为解决此问题,总体经验模态分解(EEMD)算法针对EMD方法的不足提出噪声辅助数据分析方法,在每次信号分解过程都对原始信号加入了零均值、固定方差的白噪声,有效解决了EMD算法的模态混叠现象,但是处理过程中加入的高斯白噪声很难消除.为此在EEMD的基础上,通过在分解过程加入自适应白噪声进一步改进EEMD,提出了CEEMDAN算法,有效克服了EEMD分解不完备和重构误差大的问题[19-20].CEEMDAN算法实现的具体步骤如下:
步骤1 对锂离子电池容量序列C(t)添加白噪声容量序列,如公式(1)所示:
其中,t表示电池循环次数,Cj(t)表示第j次添加了白噪声的容量序列,nj(t)表示了第j次添加的服从标准正态分布的高斯白噪声,βk表示第k个信噪比.
步骤2 使用EMD算法对Cj(t)信号进行N次重复分解,通过均值计算得到第一个模态分量imf1(t),并且通过公式(2)求出第一个余量信号R1(t).
步骤3 求出第二个模态函数和余量,对信号R1(t)+β1E1(nj(t))进行N次重复分解并求均值.Ek()为经过EMD分解产生的第k个分量.由公式(3)~(4)得到第二个模态分量imf2以及第二个余量信号R2(t).
步骤4 对于后面每个阶段,k=3,4,···,K求解方法都类同于步骤3,得到的第k+1个模态分量imfk+1和第k+1个余量Rk+1信号.
步骤5 重复步骤4,直到所得到余量信号不能再继续分解,即余量序列极值点数小于或等于两个,满足分解的终止条件.最终信号被分解为:
1.2 LSTM预测模型
LSTM是一种循环神经网络,是Hochreiter为解决传统循环神经网络(RNN)梯度消失或梯度爆炸的问题而提出的一种特殊结构[21-25].通常用于解决长时间序列的长期依赖性,图1所示为LSTM的总体结构图.
图 1 LSTM总体结构图Fig.1 LSTM structure diagram
LSTM结构的关键点在于三个门(Gate)控制,分别为遗忘门、输入门和输出门.遗忘门决定了上一时刻的单元状态St-1有多少保留到当前时刻单元状态St,其计算如(6)所示.
其中,Wf为遗忘门的权重矩阵,xt表示t时刻输入层向量,yt-1表示t-1时刻输出层向量,bf表示遗忘门偏置矩阵,ft表示遗忘门输出矩阵,σ(·)表示sigmoid激活函数.经过激活函数之后单元状态St输出一个0到1之间的实数向量,1表示完全保留,0表示完全舍弃该状态值.
输入门决定了当前网络时刻的输入xt有多少保存到单元状态St,计算公式如下:
其中,Wi和bi分别为输入门权值矩阵和偏置.并使用tanh函数构建一个新的单元状态t,输出门决定了最终将要输出的信息,计算公式如下:
其中,WO和bO分别为输出门权值矩阵和偏置.
2 CEEMDAN-LSTM组合预测方法框架
本文所提出的CEEMDAN-LSTM组合预测模型结构如图2所示.大致预测步骤可理解为合成—分解—再合成,大致分为4步.
图 2 组合模型预测框图Fig.2 Block diagram of combination prediction model
步骤1 将锂电池容量退化数据C(t)作为锂离子电池预测参数.
步骤2 利用CEEMDAN算法对C(t)信号进行分解,根据式(1)~(5)将C(t)分解为n组 imf(t)和1组R(t)信号.
步骤3将分解后的imf(t)和1组R(t)信号分为一定比例的训练集和测试集,并分别代入训练好的LSTM模型中.
步骤4 对LSTM模型的预测结果进行有效集成,得到最终的锂离子电池寿命预测结果.
3 实验及结果分析
3.1 锂离子电池充放电实验
为了研究锂离子电池的容量衰减,美国马里兰大学先进生命周期工程研究中心(Center for Advanced Life Cycle Engineering, CALCE)对锂离子电池进行了充放电实验并获得了大量实验数据[26],每个数据集记录了有关充电、放电和测量电阻的信息.本文研究了其中CX和CS两种不同型号的钴酸锂 (LiCoO2)电池,包括了 CS33、CS34、CS37、CS38和CX36、CS37共6个电池,详细规格参数如表1所示.
表 1 LiCoO2电池详细参数Table 1 LiCoO2 battery details
实验中所有电池充电为先恒流后恒压充电模式,放电为恒流放电.具体过程为:充电时以0.5倍率恒流充电,当电池电压达到4.2 V再进行恒压充电,达到截止电流(50 mA)停止充电.放电时采用恒流放电,放电截止电压为2.7 V.其中CS33和CS34以 0.5倍率放电,CS37、CS38和CX36、CX37以1倍率放电.重复上述充放电实验直到锂离子电池达到寿命阈值,即总容量的80%(CX从1.35 A·h 降至 1.08 A·h,CS 从 1.1 A·h降至 0.88 A·h)停止.所有实验均在室温(24 ℃)下进行.如图3所示为6块锂离子电池放电过程中容量随循环次数的衰减曲线.
图 3 锂离子电池容量衰减数据.(a)CS33、CS34;(b)CS37、CS38、CX36、CX37Fig.3 Capacity degradation data of lithium-ion batteries: (a) CS33,CS34; (b) CS37, CS38, CX36, CX37
3.2 CEEMDAN锂离子电池容量序列分解结果分析
本文以CS33电池剩余容量衰减数据为例,将容量信号分解为频率从高到底排列的若干个本征模态函数(imf)和一个残差信号(R),极大地消除了锂离子电池容量衰减过程的噪声信号.分解结果如图4所示,可以看到,分解之后的余量信号光滑且没有容量重生现象,可以很大程度提高锂离子电池的寿命预测精度.
图 4 基于CEEMDAN的CS33容量序列分解Fig.4 CS33 capacity sequence decomposition based on CEEMDAN
如图5所示为EEMD算法和CEEMDAN算法的分解重构误差比较图,明显可以看出CEEMDAN算法的重构误差小于EEMD算法.
图 5 CS33两种算法重构误差对比Fig.5 Comparison of reconstruction errors between two algorithms
3.3 模型评价
为全面分析所选方法的有效性,本文选择以下3个指标来评估模型的性能,分别是均方根误差(RMSE),平均绝对百分比误差(MAPE)和平均绝对误差(MAE),计算公式如下.
其中,Ct和t分别代表实际容量值和预测容量值,n代表样本数.
3.4 锂电池寿命预测结果分析
本次实验为了体现CEEMDAN-LSTM组合模型的性能,分别选取了EMD-LSTM模型和LSTM进行对比说明.本次研究采用的LSTM参数设置如表2所示,为了避免LSTM模型在训练过程中发生过拟合现象,在训练时当迭代次数达到250次时学习率降低为初始值的十分之一.
表 2 LSTM预测模型参数设置Table 2 LSTM prediction model parameter setting
训练时,分别使用了数据集的50%和30%的全寿命循环数据来训练模型,然后将剩余的50%和70%全寿命循环数据用来测试模型,得到最终的预测结果如图6所示.M1表示LSTM预测模型,M2表示EMD-LSTM预测模型,M3表示CEEMDANLSTM预测模型.
图 6 50% 训练集电池预测结果.(a)CS33;(b)CS34;(c)CS37;(d)CS38;(e)CX36;(f)CX37Fig.6 Battery prediction results under 50% training set: (a) CS33; (b) CS34; (c) CS37; (d) CS38; (e) CX36; (f) CX37
(1)首先使用50%数据集对3种模型进行训练.
如图6(b)所示,使用LSTM模型对CS34容量预测时预测波动比较大,而使用CEEMDANLSTM组合预测模型可以很好地跟随容量退化曲线,预测误差较小.且对于6块不同型号、工作在不同放电倍率下的锂离子电池,使用文中所提出的CEEMEDAN-LSTM组合预测模型的寿命预测方法均有较高的预测精度.
图7给出了6块锂离子电池的估算误差曲线,可以从中更好比较3种预测算法的性能.
图 7 相对误差曲线(a)CS33;(b)CS34;(c)CS37;(d)CS38;(e)CX36;(f)CX37Fig.7 Relative error curve: (a) CS33; (b) CS34; (c) CS37; (d) CS38; (e) CX36; (f) CX37
图8绘制出了不同算法下6块锂离子电池预测结果的评价指标,其中RMSE和MAPE越小,代表预测模型的预测精度越高.
图8中显示了组合预测模型CEEMDANLSTM预测的各项性能指标均优于其他两种方法,准确率高,最大RMSE不超过2%,最大MAPE控制在1.5%之内.其中CX36和CX37两块锂离子电池的最大MAPE在0.6%之内,具有很高的预测精度.
图 8 50% 训练集电池预测误差.(a)CS33;(b)CS34;(c)CS37;(d)CS38;(e)CX36;(f)CX37Fig.8 Battery prediction error under 50% training set: (a) CS33; (b) CS34; (c) CS37; (d) CS38; (e) CX36; (f) CX37
根据容量衰减到初始容量的80%为限作为寿命阈值,从而预测锂离子电池达到寿命终止时的可用循环次数.并使用RULer和Per来衡量寿命预测精度.公式如下所示.
其中,RULer为锂离子电池RUL预测误差;RULpr为锂离子电池RUL预测值;RULtr为锂离子电池RUL真实值.Per为锂离子电池预测的相对误差.
对锂离子电池寿命预测误差进行总结,寿命预测误差及相对误差Per如表3所示.
表 3 50%训练集锂电池寿命预测误差Table 3 Lithium battery life prediction error under 50% training set
根据表3进行分析,可以得到文中新预测模型CEEMDAN-LSTM对于6块电池的预测平均相对误差最小,不会出现较大的波动,如CS34使用LSTM模型进行预测时,相对误差高达52.8%,而CS38使用EMD-LSTM模型预测剩余寿命时,其相对误差也达到10.45%.比较而言,使用CEEMDANLSTM组合模型时只有CS38预测结果较差,相对误差为10.95%,但是综合6块电池预测结果,CEEMDAN-LSTM组合模型的平均相对误差也只有2.41%.体现了组合模型较好的适应性.
(2)为了根据寿命前期的容量衰退趋势来预测锂离子电池的剩余使用寿命,使用30%数据集对预测模型进行训练,3种模型预测结果如图9所示.
图 9 30% 训练集锂离子电池预测结果.(a)CS33;(b)CS34;(c)CS37;(d)CS38;(e)CX36;(f)CX37Fig.9 Battery prediction error under under 30% training set: (a) CS33; (b) CS34; (c) CS37; (d) CS38; (e) CX36; (f) CX37
如图9表示了使用30%的训练数据对模型训练得到的6块电池容量预测结果,因为模型训练不够充分,预测效果有一定误差.如图9(a)所示,从图中预测起点开始直到第600次循环左右,EMD-LSTM模型的预测结果一直比较稳定,和初始容量保持一定的相关性,但600次循环之后,EMD-LSTM模型预测结果产生了很大的误差.而CEEMDAN-LSTM组合预测模型在训练数据较少的情况下依旧可以很好拟合锂离子电池退化趋势,稳定性均优于其他两种算法.
图10总结了30%训练集的所有锂离子电池的预测性能指标.
图 10 30% 训练集电池预测误差.(a)CS33;(b)CS34;(c)CS37;(d)CS38;(e)CX36;(f)CX37Fig.10 Battery prediction error under 30% training set: (a) CS33; (b) CS34; (c) CS37; (d) CS38; (e) CX36; (f) CX37
由图10可以看出只有CS33的预测MAPE值超过3%,其余均在1.5%之内,CEEMDAN-LSTM组合算法预测效果均优于LSTM和EMD-LSTM算法.与前文相似,计算出30%训练集时各型号锂电池的寿命预测结果如表4所示.
表 4 30%训练集锂电池寿命预测误差Table 4 Lithium battery life prediction error under 30% training set
由表4所示,训练数据仅为30%时,LSTM模型预测误差较大,不能很好地拟合锂离子电池容量退化趋势.CEEMDAN-LSTM组合寿命预测模型中最大相对误差为6.5%,6块平均相对误差为2.04%.且只有CS38这一块电池的RULer超过了20,其主要原因还是CS38的剩余容量在寿命阈值附近波动较大,造成预测的不准确,但相对于其他两种模型精度都有一定的提升.
为进一步说明本组合方法进行电池寿命预测的优越性,将该方法与其他机器学习的方法进行了比较说明.实验使用CS33电池数据集,训练数据都为总数据集的30%,利用前馈神经网络(BP)、支持向量机(SVR)、极限学习机(ELM)的方法分别对锂离子电池寿命衰减状态进行预测,预测结果如表5所示.
表 5 不同算法预测精度Table 5 Prediction accuracy of different algorithms
针对同一样本数据,将CEEMDAN-LSTM组合算法和几种常用的机器学习算法进行了比较,在训练数据量偏少时,BP、SVR、ELM的预测精度均有所下降,而CEEMDAN-LSTM组合预测算法却仍然有很高的预测精度,体现了组合预测算法对数据的充分训练,提高了预测精度,并减小了对数据的强依赖性,唯一不足是训练时间较长.
4 结论
本文提出了一种新的组合CEEMDAN-LSTM寿命预测模型对锂离子电池的剩余寿命进行有效的学习和预测.主要结论有:
(1)文中提出的CEEMDAN-LSTM组合模型对于不同型号和不同放电倍率的锂离子电池寿命预测均有较高的精度,而且训练数据的减少对预测结果的影响不大,预测模型具有一定的泛化性和鲁棒性.
(2)通过与EMD-LSTM和LSTM及其他机器学习算法的对比,所提出的组合模型预测精度相对EMD-LSTM、LSTM模型均有一定的提升,CEEMDAN-LSTM组合算法的最大MAPE不超过1.5%,平均相对误差在3%以内.
(3)因为引入CEEMDAN分解算法,影响了LSTM模型的训练时间,所以CEEMDAN-LSTM组合预测模型的训练时间与LSTM模型相比较长.后续的工作将在此基础上改进,在提高预测精度的同时也可以节省模型训练时间.