一种基于支持向量机的超级电容器电容值退化趋势的预测方法与流程

文档序号:12272326阅读:349来源:国知局
一种基于支持向量机的超级电容器电容值退化趋势的预测方法与流程
本发明提出了一种基于支持向量机(SVM)的超级电容器电容值退化趋势的预测方法,属于储能
技术领域

背景技术
:超级电容器因为功率密度高、充放电时间短、循环寿命长、工作温度范围宽等优点而日益得到广泛利用。超级电容器的剩余使用寿命又称为超级电容器的健康状态(StateOfHealth;SOH),是超级电容器的重要状态参数之一。行业普遍认为当超级电容器的电容值下降20%,即可认为超级电容器使用寿命终结。因此,准确预测超级电容器的电容值的变化趋势,为超级电容器的预测性维护、维修及优化提供支撑信息,是提高储能系统的可靠性和安全性的保障。如何准确又可靠地预测超级电容器的电容值退化趋势是超级电容器组管理系统的重要任务。目前常用的方法主要是基于故障机理模型法和阿列纽斯定律的预测方法。基于故障机理模型的预测方法从超级电容器电化学反应的本质机理角度分析电容器的运行机理并建立老化模型,超级电容器机理模型都是针对特定的电极和电解液材料、使用环境以及充放电条件进行的研究,而且此类方法所采用的模型参数一般是根据电极的物理特性来获取,因此利用此类模型难以动态跟踪环境条件的变化,从而会导致模型的准确度较差。同时,对于超级电容器这种复杂多变的电化学系统,若要对退化特征及老化原因进行详细描述,则模型的复杂程度较高,参数较多,给实际应用造成较大的困难。阿列纽斯定律主要描述温度对化学反应速度的影响,对电容器的电极和电解液的材料特性,以及充放电电压、电流等条件不做考虑,因此使用范围具有较大的局限性,预测精度较低。技术实现要素:本发明的内容是基于支持向量机算法,根据超级电容器工作的历史数据或者状态数据进行电容值退化趋势的预测。同时引入粒子群优化算法对支持向量机参数选择的过程进行优化,提高了参数选择的效率。该预测方法不需要深入理解超级电容器的内部机理,具有广泛的适用性和较高的预测精度。为了达到上述目的,本发明的技术方案为:基于支持向量机的超级电容器电容值退化趋势的预测方法,该预测方法将支持向量机的回归预测功能,用于超级电容器电容值退化趋势的预测之中,具体步骤如下:第一步,通过实验方式得到输入变量和输出变量,并对输入变量和输出变量进行预处理。1.1)在对超级电容器进行循环充放电的过程中,实时记录超级电容器的工作状态的相关数据,包括循环次数、温度、放电电压、放电时间以及充放电电流,作为回归预测的输入变量。间隔一定的循环周期数,对超级电容器进行一次恒流充放电,根据公式(1)和公式(2),计算得到超级电容器的电容值C,作为回归预测的输出变量。Q=UC=IT(1)其中,Q为电荷量,U为电压值,I为恒流充放电的电流值,T为放点时间,ΔU为对应放电时间的电压减小值。1.2)对步骤1.1)得到输入变量和输出变量进行归一化处理。为了获得更准确的预测结果,所有的输入变量和输出变量在用于训练之前一般要进行归一化处理,即根据公式(3)将输入变量和输出变量转化到[0,1]的取值范围。其中,x为输入变量和输出变量,xnor为归一化后的值,xmin和xmax分别为x的最小值和最大值。1.3)将步骤1.2)归一化处理后的输入变量和输出变量分为两部分,第一部分作为训练集,用于训练得到预测模型;第二部分作为测试集,用于回归预测。1.4)当输入变量为多维数据时,为了降低输入空间的维数,缩小求解问题的规模,从而降低计算量,而且可以得到更好的决策函数,提高预测的效率和准确性,采用主成分分析法(PCA)对训练集和测试集的输入变量进行降维处理。具体步骤如下:步骤1:设定训练集为{(xi,yi),i=1,2,…,l},预测集为{(xi,yi),i=l+1,l+2,…,l+m},其中xi∈RN是N维输入变量,yi∈R为对应的输出变量,l为训练集的样本数,m为测试的样本数。又设定降维后的维数D<N;步骤2:构造{x1,x2,…,xl+m}所示的集合,并计算该集合的协方差矩阵其中步骤3:求协方差矩阵∑与最大的D个特征值相应的D个互相正交的单位特征向量v1,v2,…,vD;步骤4:用特征向量v1,v2,…,vD组成投影矩阵V=[v1,v2,…,vD];步骤5:计算所得到的和即分别为训练集输入值和测试集输入值降维后的向量。第二步,通过对第一步得到的训练集数据进行训练,得到回归估计函数。2.1)训练集设为{(xi,yi),i=1,2,…,l},其中xi∈RN是N维输入变量,yi∈R为对应的输出变量,l为训练集的样本数。针对训练集数据的非线性回归问题,首先使用一个非线性映射把训练集数据映射到一个高维特征空间,再在高维特征空间进行线性回归。此时,非线性回归函数的形式如式(5)所示。f(x)=ω·φ(x)+b(5)式中,ω为回归系数向量,b为阈值,φ(x)为输入变量和输出变量的映射函数。为完成非线性映射过程,首先要定义适当的核函数K(xi,xj),再通过核函数K(xi,xj)将训练集中的数据x映射到一个高维特征空间中,核函数的形式如式(6)所示:K(xi,xj)=φ(xi)·φ(xj)(6)2.2)定义不敏感损失函数为:其中,ε是事先取定的一个正数,f(xi)为预测输出值,y为实际输出值。当y与f(xi)的差别小于ε时,不计入误差;大于ε时,误差计为|y-f(xi)|-ε。2.3)为寻找非线性回归函数f(x)的参数值(w,b),在式(7)的前提下保证最小化。当公式(7)的约束条件不可能实现时,根据统计学习理论的结构风险化准则,为了控制函数的复杂性,应使线性回归函数尽量平坦,并考虑可能超出精度的回归误差。因此,引入松引入松弛变量ξ和ξ*。同时,引入惩罚变量c,用来控制对超出误差ε的样本的惩罚程度。便得到了支持向量机的原始问题的凸二次规划,如式(8)所示:求得式(8)所示的凸二次规划问题的解(ω,b,ξ)后,即可构造出决策函数。2.4)为求得凸二次规划问题的解,需要推导出原问题的对偶问题,引入如式(9)所示拉格朗日函数。其中,是拉格朗日乘子向量。函数L应对ω,b,ξ,ξ*最小化,对α,α*,η,η*最大化。函数L的极值应满足条件:从而得到:将式(11)代入式(9)中,可以得到凸二次规划问题的对偶形式,即最大化函数及其约束条件,如式(12)所示:进一步求解得到回归估计函数,如式(13)所示:2.5)采用支持向量机解决回归估计问题时,需要确定一个核函数,核函数分为多项式函数,径向基函数以及Sigmoid函数等几类。其中多项式函数具有较强的泛化能力,但是其学习能力较差,具有全局核函数的特性;而径向基函数具有很强的学习能力,但是其泛化能力较差,具有局部核函数的特性。本发明所建立的容量预测模型,采用径向基核函数。将式(14)带入公式(13)中,得到如公式(15)所示的SVM回归估计函数的最终形式;其中,σ为径向基核函数的核宽度。第三步,采用粒子群算法(PSO)对支持向量机的参数进行寻优。在使用Libsvm对超级电容器电容值退化趋势进行回归预测时,需要设定支持向量机的相关参数,具体包括惩罚参数c、径向基核函数宽度σ以及损失函数p。现阶段常用的参数值的优化方法是在一定区间进行无数次的交叉验证以寻找最优解,该方法的缺点是效率抵,且很难确定参数的合理取值区间。本发明采用粒子群优化算法对上述三个参数进行自动寻优,大大提高了参数寻优的效率以及模型的预测精度采用粒子群算法(PSO)进行参数寻优的具体计算过程为:首先初始化一群随机粒子,并用适应度函数对应的值,去评价解的优劣。通过比较粒子适应度值更新自己的位置和速度,在每一次迭代中,粒子通过跟踪本身所能找到的最优解(pb)和整个种群目前找到的最优解(gb),最后通过有限次数的迭代寻找到全局的最优解。具体的参数寻优的步骤如下:步骤1:对粒子群进行初始化,包括粒子群的位置、速度、迭代次数;步骤2:计算每个粒子的适应值;步骤3:将粒子群中每个粒子的当前位置与其历史最优位置的适应值进行比较,如果优于历史最优位置,用当前位置作为新的历史最优位置;步骤4:对于每个粒子,将其历史最优位置与粒子群内或邻域内所经历的最优位置的适应值进行比较,若更好,将其作为当前的全局最优位置;步骤5:根据公式(16)和公式(17),更新粒子的速度和位置;式中:和分别为第q次迭代过程中,第i个粒子的速度、当前位置和历史最优位置,c1和c2为学习因子,通常等于2,ξ,η∈[0,1]是在[0,1]区间内均匀分布的伪随机数,分别为在第q+1次迭代过程中,第i个粒子的速度、当前位置和历史最优位置;。步骤6:若未达到设定的迭代次数,则转到步骤2;若达到迭代次数,终止循环,输出参数值。第四步,根据第三步寻优得到的参数值设置支持向量机的c,σ,g的值,将训练集的数据代入设置好c,σ,g参数值的支持向量机模型,进行训练得到回归预测模型;第五步,将测试集的数据代入第四步得到的回归预测模型,对超级电容器的电容值退化趋势进行预测,并对预测结果的精度进行评价。本发明的有益效果是:1)本发明提出的预测方法,不针对特定的电极和电解液材料、使用环境和充放电条件,具有广泛的适用性。2)可以根据实时采集到的超级电容器的工作状态数据代入预测模型,实现电容值退化趋势的实时在线预测。3)同物理建模预测相比,数学预测模型更为简单,同时引入了粒子群算法对支持向量机的相关参数自动进行寻优,提高了预测效率和精度。附图说明图1是SVM预测超级电容器电容值退化趋势的流程图。图2是PSO算法优化SVM参数的流程图。图3是PSO算法参数寻优结果。图4(a)是训练集电容值的退化趋势预测图。图4(b)是测试集电容值的退化趋势预测图。图5是超级电容器电容值随循环次数的退化趋势预测图。具体实施方式下面结合说明书附图和技术方案,对本发明具体实施方案作详细说明。第一,在对超级电容器进行循环充放电的过程中实时记录超级电容器的工作状态的相关数据,包括循环次数、温度、放电电压、放电时间以及充放电电流等,作为回归预测的输入值。第二,间隔一定的循环周期数,对超级电容器进行一次恒流充放电。根据公式(1)和公式(2),计算得到超级电容器的电容值C,作为回归预测的输出值。第三,对输入和输出数据进行归一化。为了获得更准确的预测结果,所有的输入和输出数据在用于训练之前一般要进行归一化处理,即根据式(3)转化到[0,1]的取值范围。第四,当输入值为多维数据时,为了降低输入空间的维数,缩小求解问题的规模,从而降低计算量,而且可以得到更好的决策函数,提高预测的效率和准确性,采用主成分分析法(PCA)对输入值进行降维处理,具体步骤如下:步骤1:设定训练集为{(xi,yi),i=1,2,…,l},预测集为{(xi,yi),i=l+1,l+2,…,l+m},其中xi∈RN是N维输入变量,yi∈R为对应的输出变量,l为训练集的样本数,m为测试的样本数。又设定降维后的维数D<N;步骤2:构造{x1,x2,…,xl+m}所示的集合,并计算该集合的协方差矩阵如公式(4)所示。步骤3:求协方差矩阵Σ与最大的D个特征值相应的D个互相正交的单位特征向量v1,v2,…,vD;步骤4:用特征向量v1,v2,…,vD组成投影矩阵V=[v1,v2,…,vD];步骤5:计算所得到的和即分别为训练集输入值和测试集输入值降维后的向量。第五,采用粒子群优化算法对支持向量机的参数进行寻优的过程如附图2所示,具体步骤如下:步骤1:对粒子群进行初始化,包括粒子群的位置、速度和迭代次数;步骤2:计算每个粒子的适应值;步骤3:将粒子群中每个粒子的当前位置与其历史最优位置的适应值进行比较,如果优于历史最优位置,用当前位置作为新的历史最优位置;步骤4:对于每个例子,将其历史最优位置与群里内或者邻域内所经历的最优位置的适应值进行比较,若更好,将其作为当前的全局最优位置;步骤5:更新粒子的速度和位置,更新公式如(16)和(17)所示;步骤6:未达到设定的迭代次数,则转到步骤2,达到迭代次数,终止循环,输出参数值。PSO参数寻优的结果如图3所示。第六,根据参数寻优得到的结果设置惩罚因子c,损失函数p以及径向基核函数宽度σ的值。然后利用二次规划的Lagrange算法,求解样本在特征空间的最优分类面,最后利用判别函数公式,得到输入空间的非线性模型,即数据序列关于时间的预测模型。第七,根据SVM原理用训练集数据训练模型,构造核函数矩阵并求解线性方程组,计算出拉格朗日乘子。得到SVM预测模型后,将测试集的数据代入模型,进行超级电容器的电容值变化趋势的预测。训练集和测试集的预测结果分别如图4(a)和图4(b)所示。图5为电容值随循环次数的退化趋势预测图。分别对训练集和测试集的预测结果通过均方差(MSE)、平方相关系数(SCC)和误差百分比平均值三种指标进行评价,具体评价结果如表1所示。从三个指标的数值来看,基于支持向量机的超级电容器电容值退化趋势的预测方法具有较高的预测精度。表1超级电容器电容值退化趋势预测精度评价指标MSESCC误差百分比平均值训练集0.0008040.9840.483%测试集0.004690.8701.63%当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1