本发明涉及电池管理系统领域的健康状态估计,具体来说,涉及麻雀搜索算法对最小二乘支持向量机(lssvr)进行参数优化,并利用该lssvr模型进行电池容量的训练与测试,以得到电池的soh估计与rul预测结果。
背景技术:
电池健康状态(soh)被用来描述电池的健康状况,最直观的表现是随着电池的使用电池容量衰减,电阻增大。剩余使用寿命(rul)为从当前周期到寿命终止(eol)所经过的充放电周期数。soh估计值体现了电池短期预测的剩余寿命,为锂离子电池的优化及检修等可预知性管理提供参考,rul预测体现了电池长期预测的剩余寿命,可以对锂离子电池全寿命周期内的安全和稳定性进行估算,判断电池能否满足汽车驾驶年限和行驶里程的要求。
soh估计和rul预测方法可以分为基于模型的预测方法和基于数据驱动的预测方法,支持向量机是基于数据驱动预测方法的一种。支持向量机(svm)是最流行的机器学习算法之一,主要用于模式识别和分类。当前的soh估计算法主要使用svm作为回归工具,实现了该算法的一种变体,称为支持向量回归(svr)。采用svr方法对容量数据进行训练和测试,可以实现电池的soh估计和rul预测。
麻雀搜索算法(ssa)是受麻雀觅食行为和反捕食行为的启发而得到的一种新型的群体智能优化算法。ssa的具体实现和abc算法接近,基本结构几乎一致,只是搜索算子有一定的差异,可以说ssa是abc的改进算法。ssa算法是一种原理简单、参数少、精度高、收敛速度快、适应度高、搜索效率高的优化算法,可以解决多种实际问题,得到更精确的参数。
技术实现要素:
本发明的目的是在于提供一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,旨在提高电池健康状态估计与剩余寿命预测的精度。
本发明解决其技术问题采取的技术方案是:
一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,包括以下步骤:
步骤一,对进行算法验证的两组电池数据集进行数据处理;
步骤二,建立最小二乘支持向量回归模型;
步骤三,应用麻雀搜索算法得到最小二乘支持向量机模型的最优参数;
步骤四,将处理后的数据代入进行lssvr模型训练和测试,得到电池的soh估计和rul预测。
进一步,所述步骤一包括以下步骤:
进行数据处理,需要注意的是对同一个电池来说,其额定容量是不变的,当前容量值和soh具有相同的变化趋势,电池的soh估算问题可以转化为容量的估算问题。b0005、b0007预测起始点设置在锂离子电池退化的中期ty=84,cs35、cs37预测起始点为ty=323。根据预测起点划分训练集与测试集,并对数据进行归一化处理。采用前三天的数据预测后一天的方法:
其中,
进一步,所述步骤二包括以下步骤:
最小二乘支持向量回归的优化问题可以表示为下式所示。
s.t.yi=wt·φ(xi) b eii=1,2,…,n
其中,{xi,i=1,2,…,n}为输入特征量,{yi,i=1,2,…,n}为输出目标值,c为惩罚因子,e为回归误差,
采用lagrange乘子法将上式转化为α的求极大值问题:
对其求偏导可得:
引入核函数ωij=φ(xi)tφ(xj)=k(xi,xj),并从上式中消去w和ei并简化可得:
其中,α=[α1,α2,…,αn]t,in为n阶矩阵,y=[y1,y2,…,yn]t。
通过上式解出b和α:
代入可得lssvr模型:
进一步,所述步骤三包括以下步骤:
首先进行算法初始化:给出麻雀数量p、迭代次数m、寻优参数γ、核函数参数σ的值;在麻雀搜索算法中,每只麻雀有3种可能的行为:探索者、追随者和警戒侦查,每代选取种群中位置最好的p只麻雀作为探索者,剩余的n-p只麻雀作为追随者。
具有较好适应度值的探索者会优先获取食物,且觅食搜索范围更大,其位置更新方程如下式所示。
其中,t为当前迭代数,m为最大迭代次数。xi,j表示第i个麻雀在第j维中的位置,α为[0-1]区间内的随机数。r2为预警值,r2∈[0,1],st为安全值,st∈[0.5,1],q是服从正态分布的随机数。l为1×d的矩阵,该矩阵每个元素都为1。若r2<st说明周围没有捕食者,探索者进入宽搜索模式,若r2≥st,表明种群中的一些麻雀发现了捕食者并发出警报,所有麻雀要飞到安全的地方觅食。
追随者的位置更新描述如下式所示。
其中xp是目前搜索者占据的最优位置,xw是全局最差的位置,a表示一个1×d的矩阵,其元素为随机赋值1或者-1,a =at(aat)-1。当i>n/2时,意味着适应度较低的第i个追随者没有获得食物,需要飞往其他地方觅食。
麻雀觅食的同时他们的部分会负责警戒,当发现危险会进行反捕食行为:放弃食物移动到一个新的位置。处在种群外围的麻雀容易受到捕食者的攻击需要不断调整位置,而种群中心的麻雀会去接近它们相邻的同伴,减少它们的危险区域。每代中将从种群中随机选择s个个体进行预警。其位置更新公式如下式所示。
其中xb是当前的全局最优位置,β为步长控制参数,是服从均值为0,方差为1的正态分布的随机数。k为随机数,取值在[-1,1]之间,表示麻雀移动的方向。fi是当前麻雀个体的适应度。fg、fw分别为当前全局最佳和最差的适应度值。ξ为很小的常数,防止出现分母为0的情况。fi>fg意味着麻雀处在种群的外围容易受到攻击。fi=fg意味着处于中心位置的麻雀意识到了危险,需要靠近其他麻雀。
当满足条件时停止迭代,输出lssvr模型的最优参数[γ,σ],并对模型进行训练,得到输出soh估计和rul预测的结果。
进一步,所述步骤四中,将训练集输入输出数据代入训练,得到lssvr训练模型。代入测试数据集输入输出,得到预测的容量值。b0005和b0007电池容量衰减的eol阈值设置为初始容量的75%,即衰减到1.4ah和1.42ah。cs35、cs37电池容量衰减的eol阈值设置为初始容量的80%,即都衰减到0.90ah。根据衰减阈值设置和估算的容量值,进行rul预测。
其中,所述步骤一至步骤四都在计算机matlab中完成。
本发明与现有仿真方法相比较具有以下优点:
(1)采用最小二乘支持向量机模型(lssvr),提高了训练效率和求解的收敛速度,精度更高。
(2)提出了麻雀搜索算法(ssa)对lssvr模型进行参数化,得到的参数精度高、收敛速度快、适应度高。
(3)该方法实现简单,在进行电池soh估计及rul预测时相较pso-svr、abc-svr算法精度有了较大的提高。
附图说明
图1为本发明一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法流程图。
图2为本发明电池容量估算结果对比图(a)b0005(b)b0007(c)cs35(d)cs37。
图3为本发明电池容量估算误差结果对比图(a)b0005(b)b0007(c)cs35(d)cs37。
图4为本发明电池rul预测对比结果(a)b0005(b)b0007(c)cs35(d)cs37。
表1为本发明电池容量估算的误差值。
表2为本发明电池rul预测结果。
具体实施方式
以下结合附图和实施方法对本发明作进一步说明。
为验证本发明方法的精确性,采用马里兰大学的cs35、cs37电池和nasa电池数据集的b0005、b0007电池进行电池的soh估计及rul预测。需要注意的是对同一个电池来说,其额定容量是不变的,当前容量值和soh具有相同的变化趋势,电池的soh估算问题可以转化为容量的估算问题。
参照图1,本发明基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,包括以下步骤:
1、电池容量数据处理:b0005、b0007预测起始点设置在锂离子电池退化的中期ty=84,cs35、cs37预测起始点为ty=323。根据预测起点划分训练集与测试集,并对数据进行归一化处理。采用前三天的数据预测后一天的方法:
其中,
2、建立lssvr模型并通过麻雀搜索算法得到最优参数:首先进行算法初始化:给出麻雀数量p=20、迭代次数m=10、寻优参数γ、核函数参数σ的值。将种群分为探索者和追随者,按照相应公式更新探索者和追随者的位置。随机选择s个个体进行预警,按照相应公式更新其位置。当满足条件时停止迭代,输出lssvr模型的最优参数[γ,σ]。
3、通过ssa优化的lssvr模型进行训练集的训练,代入测试集数据求得电池容量估计及误差如图2、图3所示。图2为电池容量估计结果,图3为电池容量估算误差,表1给出了电池容量估算的误差值。
通过图2、图3及表1可以得到结论:本发明方法得到的容量估算值跟随实际值变化,且误差较小。pso-svr算法得到的容量估算误差mae值为0.013、rmse为0.0164,mape值为0.811%。abc-svr对应的值为0.015、0.0085及0.53%,ssa-lssvr对应的值为0.0069、0.0135及0.495%。ssa-lssvr算法精度高于abc-svr和pso-svr算法。
b0005、b0007电池容量衰减的eol阈值设置为初始容量的75%,即衰减到1.4ah和1.42ah。cs35、cs37电池容量衰减的eol阈值设置为初始容量的80%,即都衰减到0.90ah。图4给出了电池的rul预测结果对比图,表2给出了电池rul预测结果。
通过图4和表2可得,本发明方法得到的rul预测值接近实际的rul值,相差不大,pso-svr算法得到的rul预测值与真实值之间的误差最大,ssa-lssvr与abc-svr算法精度相似。
本发明之一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法能实现对电池soh与rul的预测,方法简单有效,同时具有较高的精度。
本领域的技术人员可以对本发明进行各种修改和变型,倘若这些修改和变型在本发明权利要求及其等同技术的范围之内,则这些修改和变型也在本发明的保护范围之内。
说明书中未详细描述的内容为本领域技术人员公知的现有技术。
1.一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,其特征在于包括以下步骤:
步骤一,对进行算法验证的两组电池数据集进行数据处理;
步骤二,建立最小二乘支持向量回归模型;
步骤三,应用麻雀搜索算法得到最小二乘支持向量机模型的最优参数;
步骤四,将处理后的数据代入进行lssvr模型训练和测试,得到电池的soh估计和rul预测。
2.根据权利要求1所述的一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,其特征在于,所述步骤一包括以下步骤:
进行数据处理,需要注意的是对同一个电池来说,其额定容量是不变的,当前容量值和soh具有相同的变化趋势,电池的soh估算问题可以转化为容量的估算问题。b0005、b0007预测起始点设置在锂离子电池退化的中期ty=84,cs35、cs37预测起始点为ty=323。根据预测起点划分训练集与测试集,并对数据进行归一化处理。采用前三天的数据预测后一天的方法:
其中,
3.根据权利要求1所述的一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,其特征在于,所述步骤二包括以下步骤:
最小二乘支持向量回归的优化问题可以表示为下式所示。
s.t.yi=wt·φ(xi) b eii=1,2,…,n
其中,{xi,i=1,2,…,n}为输入特征量,{yi,i=1,2,…,n}为输出目标值,c为惩罚因子,e为回归误差,
采用lagrange乘子法将上式转化为α的求极大值问题:
对其求偏导可得:
引入核函数ωij=φ(xi)tφ(xj)=k(xi,xj),并从上式中消去w和ei并简化可得:
其中,α=[α1,α2,…,αn]t,in为n阶矩阵,y=[y1,y2,…,yn]t。
通过上式解出b和α:
代入可得lssvr模型:
4.根据权利要求1所述的一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,其特征在于,所述步骤三包括以下步骤:
首先进行算法初始化:给出麻雀数量p、迭代次数m、寻优参数γ、核函数参数σ的值;在麻雀搜索算法中,每只麻雀有3种可能的行为:探索者、追随者和警戒侦查,每代选取种群中位置最好的p只麻雀作为探索者,剩余的n-p只麻雀作为追随者。
具有较好适应度值的探索者会优先获取食物,且觅食搜索范围更大,其位置更新方程如下式所示。
其中,t为当前迭代数,m为最大迭代次数。xi,j表示第i个麻雀在第j维中的位置,α为[0-1]区间内的随机数。r2为预警值,r2∈[0,1],st为安全值,st∈[0.5,1],q是服从正态分布的随机数。l为1×d的矩阵,该矩阵每个元素都为1。若r2<st说明周围没有捕食者,探索者进入宽搜索模式,若r2≥st,表明种群中的一些麻雀发现了捕食者并发出警报,所有麻雀要飞到安全的地方觅食。
追随者的位置更新描述如下式所示。
其中xp是目前搜索者占据的最优位置,xw是全局最差的位置,a表示一个1×d的矩阵,其元素为随机赋值1或者-1,a =at(aat)-1。当i>n/2时,意味着适应度较低的第i个追随者没有获得食物,需要飞往其他地方觅食。
麻雀觅食的同时他们的部分会负责警戒,当发现危险会进行反捕食行为:放弃食物移动到一个新的位置。处在种群外围的麻雀容易受到捕食者的攻击需要不断调整位置,而种群中心的麻雀会去接近它们相邻的同伴,减少它们的危险区域。每代中将从种群中随机选择s个个体进行预警。其位置更新公式如下式所示。
其中xb是当前的全局最优位置,β为步长控制参数,是服从均值为0,方差为1的正态分布的随机数。k为随机数,取值在[-1,1]之间,表示麻雀移动的方向。fi是当前麻雀个体的适应度。fg、fw分别为当前全局最佳和最差的适应度值。ξ为很小的常数,防止出现分母为0的情况。fi>fg意味着麻雀处在种群的外围容易受到攻击。fi=fg意味着处于中心位置的麻雀意识到了危险,需要靠近其他麻雀。
当满足条件时停止迭代,输出lssvr模型的最优参数[γ,σ],并对模型进行训练,得到输出soh估计和rul预测的结果。
5.根据权利要求1所述的一种基于麻雀搜索和最小二乘支持向量机的电池健康状态估计与剩余寿命预测方法,其特征在于,所述步骤四中,将训练集输入输出数据代入训练,得到lssvr训练模型。代入测试数据集输入输出,得到预测的容量值。b0005和b0007电池容量衰减的eol阈值设置为初始容量的75%,即衰减到1.4ah和1.42ah。cs35、cs37电池容量衰减的eol阈值设置为初始容量的80%,即都衰减到0.90ah。根据衰减阈值设置和估算的容量值,进行rul预测。
技术总结