基于IndyLSTM的锂电池充电剩余时间预测
2021-05-14杜京义柳庆莉王佳程
杜京义 刘 鑫 柳庆莉 王佳程
(西安科技大学电气与控制工程学院 陕西 西安 710054)
0 引 言
锂电池由于具备循环使用寿命长、无记忆效应、能量密度高、自放电率低和高性价比等优势,已被广泛应用于工业、日常生活等领域[1]。充电剩余时间作为锂电池荷电状态(State of Charge,SOC)的重要参数,反映了锂电池充电状态与时间的关系[2]。充电剩余时间的准确预测能够有效发现和避免锂电池过充等不安全行为,为锂电池的稳定性提供保障。
文献[3]提出了一种基于三段式的支持向量回归(SVR)模型来预测锂电池的充电剩余时间,根据三段式模型分别建立不同的预测模型,但是各个模型的决定参数单一,易受复杂充电环境的影响。文献[4]针对锂电池的充电时间受充电温度的影响,设计了锂电池在不同温度下充电、同一温度下放电的实验。通过有理数逼近的拟合方法建立不同温度下的标准充电的经验模型,根据充电温度可以预测锂电池的充电时间。但模型对数据特征的依赖性较强,泛化性较弱。文献[5]基于扩展卡尔曼滤波-高斯过程回归(EKF-GPR)并利用日常片段数据可以在有限的误差范围内对电池的实时全充时间进行预测,但是对模型的精度要求较高。文献[6]将信息粒化(IG)和支持向量回归模型相结合预测锂电池充电剩余时间,通过信息粒化降低样本输入规模,并运用重新组合的样本对训练预测模型。但是在样本有限的情况下表示复杂函数的能力有限。文献[7]提出一种基于自回归集成滑动平均模型(ARIMA)和粒子滤波(PF)融合预测框架,对锂电池剩余使用寿命预测,较好地突出了电池数据随着时间序列的变化规律,但是在预测中不能较好地表达数据的非线性相关性。
针对上述方法的不足,为了满足充电剩余时间预测对准确性和稳定性的要求,本文提出基于IndyLSTM的锂电池充电剩余时间预测方法。该方法可以挖掘数据之间的内在关系,自动提取有效特征,并建立高维度特征预测模型;同时引入忘记门、输入门、输出门,使得自循环的权重是变化的,不同时刻的积分尺度可以动态改变,从而具有长短期记忆功能。实验结果表明:在锂电池充电剩余时间预测中,相较于常规的LSTM和SVR模型,IndyLSTM模型预测效果更好,证明了该预测方法的可行性和有效性。
1 IndyLSTM神经网络
原始的神经网络是层与层之间的神经元相互连接,层内神经元不连接[8]。其构造的是点与点之间的映射,因此无法学习到序列数据之间存在的内在联系,不能有效地解决序列数据问题[9-10]。LSTM是长短期记忆网络,通过引入相应的“门”结构,获得了可以长期记忆历史重要数据的功能,并且解决了在梯度反向传播过程中容易产生梯度消失的问题,能更好地处理序列相关数据[11-12]。IndyLSTM是LSTM的变体,不同之处在于:其中隐藏层内的各个单元时间步上互不相连,循环权重不再是全矩阵,而是对角矩阵[13]。即每个IndyLSTM单元的输出和细胞状态仅取决于输入及其自身的输出和细胞状态,而不是输入以及层中所有单元的输出和细胞状态。并且每个IndyLSTM单元的参数数量与隐藏层节点数量呈线性关系,而常规的LSTM则为二次方,从而可能导致更小和更快的模型。但是IndyLSTM在每个参数的精确度和总体精度方面,始终优于常规的LSTM。
IndyLSTM单元内部结构如图1所示,IndyLSTM单元的“门”结构是通过Sigmoid激活函数和逐点乘法操作实现的,ft为忘记门、it为输入门、ot为输出门。每一个IndyLSTM单元有三个输入:上一时刻的输出ht-1、上一时刻的细胞状态ct-1和当前时刻的输入xt;两个输出:当前时刻的输出值ht和细胞状态ct。IndyLSTM的核心思想是引入了细胞状态连接,细胞状态用来存放想要记忆的信息,同时引入“门”结构用来控制信息的更新与输出。
图1 IndyLSTM单元内部结构
IndyLSTM单元内部传输方式如下:
(1) 通过忘记门决定从细胞状态中舍弃或保留哪些信息。其接收ht-1和xt,输出一个0~1之间的数值与上一时刻的细胞状态ct-1相乘(1表示完全保留之前的信息,0则表示完全舍弃之前的信息)。
ft=δg(Wfxt+uf⊗ht-1+bf)
(1)
it=δg(Wixt+ui⊗ht-1+bi)
(2)
(3)
(4)
(4) 通过输出门和细胞状态确定当前时刻需要输出的信息。
ot=δg(Woxt+uo⊗ht-1+bo)
(5)
ht=ot⊗δh(ct)
(6)
式(1)-式(6)中:δg为Sigmoid激活函数;δc、δh为tanh激活函数;W*和u*为权重;b*为偏置;⊗为Hadamard积。
2 充电剩余时间预测方法
2.1 IndyLSTM预测框架
本文以锂电池电压Bv、锂电池电流Bi、锂电池温度Bt、充电电压Cv、充电电流Ci作为模型输入预测充电剩余时间。构建的IndyLSTM预测框架如图2所示。
2.2 IndyLSTM预测模型搭建
IndyLSTM预测模型搭建过程具体如下:
(1) 数据集划分:在模型开始训练之前,为了保证测试数据的独立性需要将数据划分成训练集和测试集。本文采用美国国家航空航天(NASA)的锂电池充电过程公开数据作为数据集,数据样本有3 815个,随机选取315个样本作为测试集数据,其余样本作为训练集数据。
(2) 数据预处理:不同属性的数据往往具有不同的量纲,如果量纲差距过大会影响模型学习的结果。为了提高模型的泛化能力,消除不同属性间的量纲影响,使用数据标准化确保数据处于一个合理的分布范围内。本文首先对训练集数据进行标准化处理并保存标准化参数,然后使用保存的标准化参数对测试集数据进行处理。标准化后的数据服从标准正态分布:
(7)
(3) 训练IndyLSTM模型:将预处理后的训练数据输入到IndyLSTM模型,训练预测模型。在训练过程中,一般以损失函数作为网络模型对训练数据拟合能力的衡量标准[8]。本文使用均方误差(MSE)作为模型每次训练的损失函数,然后采用Adam算法进行模型权重的优化更新,使预测结果向优化目标靠近。多次迭代直至训练得到满足误差要求的IndyLSTM预测模型。
本文使用TensorFlow深度学习框架搭建预测模型。该模型采用双层IndyLSTM循环网络预测充电剩余时间,每层12个隐层节点。输入维度与输入数据的特征属性相同设置为5,输出维度设置为1。损失函数选择回归预测常用的均方误差(MSE),Adam作为模型的优化算法。为了增强模型的泛化能力采用小批量训练,每次输入60个样本数据,将其中20个样本数据作为1个小序列,迭代300次,学习率设置为0.005。模型训练完成之后预测充电剩余时间,根据预测数据与真实数据计算均方根误差(RMSE)和平均绝对误差百分比(MAPE),以此评价模型的预测结果。其中MSE、RMSE和RMSE的计算公式分别为:
(8)
(9)
(10)
3 实验与分析
3.1 数据集与实验平台
本文数据来源于美国国家航空航天(NASA)的锂电池充电过程公开数据集。其充电过程分为两个阶段:首先,在1.5 A的恒流(CC)模式下进行充电,直到电池电压达到4.2 V,然后以恒定电压(CV)模式继续充电,直到充电电流降至20 mA时停止充电。锂电池充电过程公开数据如图3所示,可以看出锂电池充电过程是非线性的。
图3 电池充电过程公开数据
模型训练采用Google开放的Colaboratory平台完成。该平台向开发者提供了免费的Tesla K80 GPU使用,不用做任何配置,完全运行在云端。在模型训练的过程中,首先将锂电池充电过程公开数据集划分为训练集和测试集,并将其标准化至[-1,1]区间,以消除不同属性数据之间的量纲影响;然后将训练集输入到模型中开始训练,模型训练完成之后开始预测;最后将预测数据和测试集中的真实数据进行对比分析从而调节整个网络模型的参数,直至得到满足误差要求的预测模型。
3.2 实验结果
为了验证该模型的可行性和有效性,采用常规的LSTM模型和支持向量回归模型SVR作为对比参考。首先,在给定的训练集上,训练IndyLSTM、LSTM和SVR模型;然后,将训练好的模型应用在测试集上获取测试结果并比较其性能。图4-图6分别给出了IndyLSTM、LSTM和SVR模型预测数据和真实数据的对比图。其中IndyLSTM和LSTM模型采用相同的深度、宽度和超参数,SVR模型采用径向基函数作为核函数,并使用交叉验证的方式寻找核函数的宽带系数g和误差惩罚因子C,最优参数g=1,C=2 500。
图4 IndyLSTM模型预测数据和真实数据的对比图
图5 LSTM模型预测数据和真实数据的对比图
图6 SVR模型预测数据和真实数据的对比图
在IndyLSTM模型的每一层中,其参数数量和节点个数为线性关系而常规的LSTM则为二次方,此特性使模型更小更快,并且不太容易过度拟合。从图4和图5可直观看出,当模型的深度和宽度相同时,IndyLSTM模型相较于LSTM模型,其预测数据和真实数据拟合效果更好,没有出现明显的偏差,而LSTM模型在拐点处与真实数据有较大偏差。实验结果证明在预测锂电池充电剩余时间中IndyLSTM模型的预测效果优于LSTM模型。SVR模型的预测结果如图6所示,其预测数据和真实数据的趋势大致相同,但是在拐点处预测数据与真实数据也存在一定的偏差。对比来看,IndyLSTM模型可以通过多种非线性运算自动提取数据的有效特征,相较于SVR模型可以表现出比较好的预测效果。
为了更好地体现三种模型对比的结果,本文采用均方根误差(RMSE)和平均绝对误差百分比(MAPE)作为各个模型的评价指标,指标越小,模型预测效果越好。三种模型的评价指标如表1所示。可以看出IndyLSTM模型的均方根误差和平均绝对误差百分比要明显小于LSTM和SVR模型的均方根误差和平均绝对误差百分比,其中IndyLSTM模型相较于LSTM和SVR模型预测结果的均方根误差分别降低了40.803%和46.345%,平均绝对误差百分比分别降低了7.633和5.670百分点,进一步证明了IndyLSTM模型在锂电池充电剩余时间预测中优于常规的LSTM和SVR模型。从均方根误差和平均绝对误差百分比评估的整体效果可以看出,IndyLSTM模型可以充分利用锂电池充电过程的相关数据进行充电剩余时间预测,其预测效果更加准确和稳定。
表1 三种模型的评价指标
4 结 语
本文提出一种基于IndyLSTM的锂电池充电剩余时间预测方法,该方法可以自动挖掘数据间的关系,从而构建一个最优的预测模型;同时引入忘记门、输入门、输出门,使其具有长短期记忆功能,解决了梯度消失的问题。采用美国国家航空航天(NASA)的锂电池充电过程公开数据进行训练并测试。实验结果表明:在实验条件尽量保持一致的情况下,IndyLSTM模型相比于常规的LSTM和SVR模型在准确性和稳定性方面有了较高的提升,为预测锂电池充电剩余时间提供了新的方法。