融合注意力机制的CNN-GRU 动车组蓄电池SOC 估算方法

2023-11-06 06:14王升晖刘力豪冯恩来于天剑
控制与信息技术 2023年5期
关键词:蓄电池注意力卷积

王升晖,田 庆,刘力豪,冯恩来,于天剑

(1. 中车青岛四方机车车辆股份有限公司,山东 青岛 266111;2. 中南大学 交通运输工程学院,湖南 长沙 410075)

0 引言

碱性镍镉电池是动车组最常用的蓄电池,为动车组辅助装置提供高效稳定的起动和应急电源,在动车组起动至受电弓接入接触网阶段或者故障工况时,为动车组的牵引控制、信号传输以及照明等直流低压电气设备供电[1]。在动车组电池管理系统中,荷电状态(state of charge,SOC)指标是反应电池能量状态的重要参数,是电池能量管理的基础指标[2]。但是电池的SOC值无法通过传感器直接测量,只能通过电池循环数据中的电压、电流等物理参数,间接映射得到[3]。因此,建立精确的电池荷电状态估算模型,准确估计剩余电量对于延长电池使用寿命,提高能量利用率具有极为重要的意义。

目前,电池SOC 估计方法主要有基于实验的方法、基于电池模型的方法、基于数据驱动的方法以及多模型融合方法。

基于实验的方法包括安时积分法[4]和开路电压法[5]等方法。安时积分法为开环方法,会累计误差[6],开路电压法需要电池达到电压稳定状态才能采集开路电压值,无法应用于实际线路。

电池模型方法主要可以分为两类:一类是基于物理等效电路模型[7],另一类是基于电化学原理模型方法[8]。等效电路模型主要依据电池的电化学特性来建模,需深入分析电池内部的化学反应和过程;然而,由于电池状态易受到外界环境的影响,加之其内部的电化学反应十分复杂,这使得建立一个完全精确的模型来描述电池的所有状态变得极为困难。

数据驱动[9-11]的方法是通过大量实验,采用统计方法、机器学习以及深度学习方法对实验数据进行分析和建模,不需对电池化学模型进行深度分析便可以准确地反映电池的真实运行状态和性能,同时具有较高的适应性和实时性。数据驱动模型具有强大的分析能力。

单一模型通常具有一定的局限性,容易受到应用场景和计算能力限制,从而导致模型不适用。而多模型融合方法通常具有较好的泛化能力,能够抓取数据的多方面特征表现来提高模型的鲁棒性。张珂瑞等[12]通过联合扩展卡尔曼粒子滤波和二阶Thevenin等效电路方法对退役动力锂离子电池开展SOC估计。李畅等[13]通过改进的蝴蝶优化算法对BP 神经网络进行超参数寻优,降低了电池SOC 估算误差。李龙等[14]以循环神经网络为预测模型,采用卷积神经网络对电池数据进行充分特征提取,提高了SOC估算模型的泛化能力。

蓄电池在实际使用中,其状态参数受环境影响较大,容易导致传感器测量参数波动,同时随机误差导致电池SOC 具有时变、非线性等特点,单一模型难以捕捉动态数据中电池的状态信息。同时,在长序列分析中,循环神经网络(recurrent neural network,RNN)容易产生梯度消失和梯度爆炸的问题,长短期记忆网络(long short-term memory,LSTM)以及门控循环单元(gated recurrent unit,GRU)容易出现丢失现象,难以学习电池容量数据中的长距离依赖关系[15]。

基于上述现象,为了更精确地估计动车组蓄电池的SOC并优化电池管理系统,本文提出一种融合注意力机制(attention mechanism)的卷积-门控循环单元(convolutional-gated recurrent unit,CNN-GRU)电池SOC 估算模型(简称“CNN-GRU-Attention 模型”)。其首先利用卷积神经网络(convolutional neural network,CNN)从电池循环数据中提取短时特征依赖关系,同时利用融合注意力机制的GRU 网络结构捕捉特征数据的长空间距离依赖关系,从而加强时序性对电池能量状态的影响,达到更准确的电池SOC估算精度以及更强的泛化能力。此外,为了适应小样本电池循环数据SOC 的精准估算,本文提出一种改进方法,将连续回归模型转化为分类问题,通过将电池SOC连续区间离散化,把电池SOC值映射到0到100的101个离散类别中。这样,最终的预测结果将直接给出电池的SOC 类别,从而更有效地处理数据的不确定性和随机噪声。

1 模型算法

1.1 CNN特征提取模块

CNN通过卷积操作可以捕捉数据中的局部特征和关键模式,其特征提取能力来源于卷积操作、激活函数和池化(pooling)操作。卷积操作是CNN的核心,数据中的某些模式和规律可能只在短时间窗口内出现,CNN卷积操作可以捕获这些局部依赖性,使模型能够识别并利用这些短时特征。激活函数被应用于卷积操作的输出,为模型增加了非线性,使得模型能够拟合更复杂的关系。常用的激活函数有ReLU、tanh、Sigmoid等。池化操作可以将提取的特征进行降维和抽象,去除冗余信息,减小计算复杂度,同时提高模型的泛化能力。不同于全连接层,CNN在提取特征的同时保持了数据的序列结构,这对于处理时间序列数据(电池循环数据)是非常重要的。通过CNN特征提取模块,我们可以从电池循环数据中获取电池能量状态信息,并为后续的GRU模块提供更有效的输入,从而提高整体模型的SOC 估算性能。

1.2 融合注意力机制的GRU模块

GRU 模型是为解决循环神经网络长期记忆依赖关系捕捉和解决反向传播梯度消失的问题所提出的[16],相较于LSTM 模型,GRU 具有更加简单的结构以及较少的参数,GRU通过更新门和重置门两个门控单元进行训练和推理,而LSTM具有输入门、遗忘门和输出门3个门控单元。这使得GRU在训练和推理过程中具有更高的计算效率。此外,LSTM 通过细胞状态(cell state)来保持和传递信息,这增加了模型的复杂性。相比之下,GRU仅使用隐藏状态(hidden state)来传递信息,减少了内部状态的数量,简化了模型结构,所以它通常具有更快的训练速度。

GRU模型具有一定的记忆能力,但是在处理较长序列时,无法充分捕捉到每个时间步的重要信息,因为隐藏状态的传递通过时间步进行,信息在时间上逐渐减弱或消失。为了解决这一问题,本文提出通过引入注意力机制,动态地为输入特征分配权重,从而对每个时间步的重要信息进行更为精确的捕捉。这不仅能帮助模型更好地关注那些对预测电池剩余电量最具影响力的观测值,而且有助于捕捉数据中的长期依赖关系。这种方法能够有效地增强模型的预测性能和准确性。

融合注意力机制的GRU模型即GRU-Attention模型结构如图1所示,其中GRU部分箭头方向表示数据流向,其中,更新门zt实现对前一时刻隐藏状态信息的选择性遗忘,重置门rt实现对当前状态和之前信息的选择性记忆,rt和zt的值越接近0,说明上一时刻需要遗忘的信息越多;其值越接近1,代表记忆下来的信息越多。

图1 融合注意力机制的GRU 结构图Fig.1 Architecture of GRU fused with attention mechanism

将输入的电池SOC 映射特征序列经过CNN 模块进行特征提取之后,得到向GRU-Attention模型输入的特征向量组,之后在GRU- Attention 模型中对蓄电池SOC利用梯度下降原理进行最小误差特征映射。GRU部分计算公式如下:

式中:zt——时间步t的更新门,决定多少过去信息将被传递到当前时间步;rt——时间步t的重置门,用于计算过去信息对当前时间步候选隐藏状态h~t的影响程度;ht——当前时间步t的隐藏状态,表示模型在时间步t的内部记忆;xt——序列在时间步t输入的数据;Wz——更新过程权重矩阵;Wr——重置过程权重矩阵;Wh——隐藏权重矩阵;bz——更新过程的偏置向量;br——重置过程的偏置向量;bh——隐藏偏置向量;σ——Sigmoid激活函数,它将输入值映射到0和1之间,用于门的操作;tanh——双曲正切激活函数,它将输入值映射到-1和1之间,用于GRU的隐藏状态计算,最后得到经过GRU激活处理输出的向量集合H={h1,h2,h3,…,hn},其中,n为集合长度。

在注意力层,对于每个时间步的隐藏状态ht首先计算一个注意力分数St。

式中:Wa——注意力的权重矩阵;v——可学习的权重向量;ba——偏置向量。

利用Softmax函数将注意力分数转化为注意力权重αts。

式中:s——所有的注意力分数个数。

利用计算得到的注意力权重来获得上下文注意力向量cn。

注意力向量cn被用来加权输入序列,从而帮助解码器更好地生成输出序列。

1.3 CNN-GRU-Attention模型

CNN-GRU-Attention 模型如图2 所示。其主要由4个部分构成,包括输入层、CNN 特征提取层、GRUAttention层以及输出层。其中,输入数据为电池混合脉冲功率特性(hybird pulse power characterization,HPPC)循环实验获取的放电参数集合X,包括电池电能累积量E={e1,e2,e3,…,el},电池电荷量Q={q1,q2,q3,…,ql},放电时间T={t1,t2,t3,…,tl},l表示参数时序长度,可用X={E,Q,T}表示。其中,电荷量Q以及电能积累量E可通过电池参数在该时间戳下的电流值I、电压值V随时间积分值得到。

图2 CNN-GRU-Attention 算法模型结构Fig.2 Algorithmic model structure of CNN-GRU-Attention

CNN 特征提取层主要对输入特征序列进行特征提取,包括1D 卷积层、池化层和全连接层,同时引入ReLU 激活函数来提高复杂非线性表达能力。池化层选择最大值池化,经过卷积和池化之后,原始数据被映射到低维压缩表示,之后通过全连接层对特征进行特征融合和非线性映射,将输出数据作为GRU-Attention层的输入数据,计算过程如下:

式中:Θ1——卷积层1 的输出;Θ2——卷积层2 的输出;P1——池化层1 的输出;P2——池化层2 的输出;HC——卷积、池化之后通过全连接层将局部特征进行整合,转化为高维度表示数据;W1——卷积层1 权重矩阵;W2——卷积层2 权重矩阵;W3——全连接层权重矩阵;b1——卷积层1偏置向量;b2——卷积层2偏置向量;b3——全连接层偏置向量。

之后通过GRU-Attention层对CNN层提取到的特征向量时序规律进行充分学习,学习特征数据对于电池SOC 映射的长时序依赖关系。在对第t个序列计算时,其输出数据Yt为

式中:GRU_Attention——注意力-GRU 计算函数;t∈[1,dim(ϕ(X))],其中,dim(ϕ(X))为CNN 特征映射函数ϕ(X)的维度。

最后通过全连接层计算出电池SOC 映射的概率分布值。由于传统数据回归任务需要大量的数据进行训练,但是在实际应用中会遇到小样本问题,这时模型泛化能力不足会导致模型不能适应多种电池的SOC估算以及工况使用条件。为了进一步提高网络的鲁棒性和可靠性,本文创新性提出将电池SOC映射回归问题转化为分类问题,即通过将动车组蓄电池SOC连续阶段分成0~100的101个离散的等级。

对于连续的SOC 序列S,其取值范围为[0,1],代表电池荷电状态百分比,本文引入量化函数QSOC:[0,1] →{0,1,2,…,100}对电池连续SOC 序列进行离散化处理:

在保证高预测精度下,连续任务可转化为离散任务,保证了一定的模型容错率,以有效提高模型泛化能力。利用101个Softmax激活的神经元节点计算输出电池SOC的预测值,通过对交叉熵损失函数(cross-entropy loss)进行损失优化,输出最终电池SOC映射结果。

式中:p——将输出数据Yt归类为电池的SOC 预测值ysoc,h的概率,其中,ysoc,h∈{1%,2%,…,100%};θ——模型参数矩阵;k——总类别数。

2 实验分析

为了深入探究本文所提算法的精确度和鲁棒性,本文选定了亚通达LPH140A 型动车组镍镉蓄电池作为实验对象。首先,通过搭建HPPC工况的充放电实验平台,对电池进行了不同温度下的放电实验,以获取关于电池放电电流、电压和SOC 的实验数据;基于这些数据,本文通过开展模型消融以及对比实验,进一步验证了CNN-GRU-Attention模型的预测精度。

2.1 电池放电实验

图3 为两种不同型号镍镉蓄电池(亚通达LPH140A 型和长虹20KMZ180P-2 型)在相同条件下的恒流(0.2C)放电电压曲线,图中不同种类的镍镉蓄电池放电电压随放电百分比变化的特征相似。

在医学模式逐渐发展和转变的过程中,护士的角色和功能也在不断增加,护理工作的领域也在不断扩大,护理人员的责任也越来越多。仅依靠一次性学校教育所获得的知识已无法有效满足护理工作的实际需求,因此就需要积极开展继续教育。在开展成人医药护理继续教育时,应根据自身情况不断改革和创新教学模式,提高继续教育的质量,建设综合素质高、专业技术强的护理队伍,最终为患者提供更加优质的护理服务。

图3 不同型号镍镉蓄电池放电电压曲线Fig.3 Discharge voltage curves of different types of nickelcadmium batteries

本文选取亚通达LPH140A 型动车组镍镉蓄电池开展实验研究。所搭建的充放电实验平台搭建如图4所示,利用BTS-4008电池测试系统作为实验组镍镉电池充放电平台,利用电池测量仪对测试系统进行数据采集,将电压、电流等数据传至上位机并存入数据库,通过可编程恒温箱对测试环境进行温度控制,以保证测试环境的稳定性。

图4 实验平台Fig.4 Experimental platform

HPPC工况是用于电池性能测试和评估的一种标准工况。在HPPC工况下,电池通过交替进行脉冲放电和静态放电来评估其瞬态和持久性能,即电池在持续负载情况下的容量和能量输出能量,进而估算电池SOC。实验步骤如表1所示。

表1 电池实验流程Tab.1 Battery experiment procedure

在20 ℃的实验环境条件下,电池在HPPC工况下放电的电流、电压变化以及SOC变化曲线如图5所示。

图5 20 ℃时镍镉电池HPPC 工况放电参数Fig.5 Discharge parameters for nickel-cadmium batteries under HPPC conditions at 20°C

2.2 SOC预测算法结果分析

在传统的回归预测中,连续回归任务通常需要大量的数据作为模型的输入进行训练,当样本数量有限时,模型的预测性能可能会受到严重影响。如图6所示,本研究在固定的数据和参数条件下,对电池放电过程中的SOC变化情况进行了基于分类映射和回归拟合的预测。预测结果表明,在特征样本较少的情况下,利用分类映射方法得到的预测结果相对于传统的回归方法更接近真实数据。这表明,在数据受限的条件下,采用分类映射方法进行预测是一个更有效的策略。

图6 在离散和连续条件下模型预测结果Fig.6 Model prediction results under discrete and continuous conditions

2.2.1 模型结构参数

CNN-GRU-Attention模型旨在处理序列数据,从中提取特征并进行多类别分类。模型的结构包括2个卷积层、2个GRU层、1个注意力层以及3个全连接网络构成的输出层。每个卷积层都包含32个卷积滤波器,每个滤波器的卷积核大小为3。这些卷积层的主要任务是捕获输入序列中的局部特征,从而有助于模型更好地理解序列中的结构和模式信息;每个GRU层包含32个GRU单元,并设置为返回完整的序列,用于捕获序列中的时间相关性和长期依赖关系。为了减少过拟合的风险,在GRU层之后应用丢弃层,丢弃率设置为0.2。

在特征提取的过程中,模型输出层包括3 个全接层。第一个全连接层具有32 个神经元,第二个全连接层具有16 个神经元,最后一个全连接层包含101 个神经元,并使用Softmax激活函数执行多类别分类,从而完成SOC预测输出任务。模型在训练过程中的参数汇总如表2所示。

表2 模型超参数设置Tab.2 The model hyperparameter settings

2.2.2 模型预测结果以及分析

在利用估算模型对蓄电池SOC进行估算时,必然会存在估算误差。估算误差是评价模型的优劣程度的重要指标。本文引入平均绝对误差(mean absolute error,MAE)Θmae、均方根误差(root mean square error,RMSE)Θrmse和平均相对误差(mean relative error,MRE)Θmre作为模型精度的评价指标,其计算公式为

式中:z——序列长度;yreal——真实值;—— 预测值。

考虑在不同温度下电池放电性能不同,本文通过在-10 ℃、20 ℃、30 ℃和40 ℃的电池HPPC工况放电实验对电池SOC进行估算,建立蓄电池放电过程中的电池电荷量、电能累积量和放电时间对电池SOC映射关系。在进行电池SOC估算之前,对输入特征数据进行归一化处理,将数据转换为同一尺度有助于提高模型的性能和收敛速度;同时,采用分层随机抽样的方式选取数据训练集和测试集,训练集和测试集数量比例为8∶2。

基于本文提出的融合模型以及对比模型在不同温度下电池SOC估算对比结果如图7所示,模型预测误差分析结果如表3所示。可以得到,在不同的温度下,CNNGRU-Attention模型可以有效地捕捉蓄电池在HPPC放电工况下电池的SOC变化,通过将蓄电池SOC进行分类化指标计算,可以在小样本数据集下对电池SOC进行良好的映射,为蓄电池SOC估算提供了一种新的思路。

表3 不同温度条件下,各模型SOC 估算误差对比Tab.3 Comparison of SOC estimation errors of various models under different temperature conditions

图7 不同温度下各模型预测结果Fig.7 Model prediction results at different temperatures

如表3 所示,对于4 种不同的温度条件(-10 ℃、20 ℃、30 ℃、40 ℃),CNN-GRU-Attention模型在动车组碱性镍镉电池工况放电SOC 映射任务中均展现出了卓越的表现。与其他三种模型(CNN-GRU、GRU、LSTM)进行比较,CNN-GRU-Attention 在关键指标RMSE、MAE 和MRE 上均显著优于其他模型。具体来说,与CNN-GRU 模型相比,CNN-GRU-Attention 在RMSE、MAE和MRE上分别提升了约18.90%、17.92%和19.78%;与GRU 模型相比,提升了约44.65%、44.29%和42.97%;而与LSTM 模型相比,提升更为明显,分别为约45.01%、47.29%和48.23%。这些数据证明了CNN-GRU-Attention 模型在预测准确性、稳定性和鲁棒性上的显著优势。因此,我们可以得出结论,CNN-GRU-Attention 模型为动车组碱性镍镉电池的SOC估算提供了一种高效且可靠的新方法,尤其是在面对不同的温度条件时,其预测性能始终保持稳定和高效。

为了验证CNN-GRU-Attention 模型的稳定性性能,本文对电池在20℃下的放电电流、电压特征参数添加随机噪声,噪声阈值强度分别为1%、3%以及5%,在含噪特征的基础上进行模型训练以及验证,模型预测结果如图8所示,模型评价如表4所示。

表4 不同噪声阈值强度下,CNN-GRU-Attention模型误差对比Tab.4 Comparison of errors for the CNN-GRUAttention model under different noise threshold intensities

图8 不同噪声含量下CNN-GRU-Attention模型预测结果Fig.8 Prediction results of CNN-GRU-Attention model under different noise levels

由表4结果可知, 即使在噪声条件下,误差指标的增加仍然相对有限,说明模型在预测上仍然相对准确;并且在面对不同水平的噪声干扰时,模型的预测能力仍然保持稳定,这是模型鲁棒性的一个明显标志。这些发现验证了本研究所提出的,通过使用分类模型替代传统的回归模型来进行电池SOC的分类映射,并将电池SOC 数据离散化的方法,在数据量有限的情境下,仍能够准确且稳定地完成电池SOC的预测任务。这为蓄电池管理系统中的SOC预测提供了一种新的、可靠的方法论方向。

3 结束语

本文针对小样本电池循环数据SOC 的精准估算问题,提出了一种融合注意力机制的CNN-GRU 电池SOC估算模型。该模型首先利用CNN从电池循环数据中提取长序列中的短时特征依赖关系,然后,通过融合注意力机制的GRU 对提取的特征数据进行长空间距离依赖关系的捕捉。这种方法强化了时序性对电池能量状态的影响,同时,对时变参数进行了更好的特征提取,从而达到了更准确的电池SOC估算精度以及更强的泛化能力。

为了适应小样本电池循环数据SOC的精准估算,本文还提出将连续回归模型转化为分类问题,将电池SOC区间离散化。这样做将最终预测结果转化为电池SOC区间值,从而更好地处理数据的不确定性和随机噪声。通过亚通达LPH140A型动车组镍镉蓄电池在不同温度下的HPPC 工况放电实验对本文算法进行验证,结果显示,本研究提出的算法具有较高的预测精度,相较于其他对比算法,本文算法的预测结果与CNN-GRU 算法的相比在均方根误差、平均绝对误差以及平均相对误差这3 个关键指标上分别提升了18.90%、17.92%和19.78%。

为了适应更广泛的工况和电池类型,未来可探索如何将本文算法应用于多种电池型号以及多种电池工况条件下,以进一步提升本文模型SOC 估算的准确性和可靠性。

猜你喜欢
蓄电池注意力卷积
让注意力“飞”回来
基于3D-Winograd的快速卷积算法设计及FPGA实现
从滤波器理解卷积
基于傅里叶域卷积表示的目标跟踪算法
“扬眼”APP:让注意力“变现”
聊聊蓄电池的那点事儿(1) 汽车蓄电池的前世
A Beautiful Way Of Looking At Things
蓄电池去哪儿了
蓄电池去哪儿了?VOL12.雷克萨斯RX450h
蓄电池去哪儿了?