大型医疗监护设备电池健康状态检测算法研究
2024-05-13邱筱岷王志禹王小花
邱筱岷,王志禹,王小花
无锡市妇幼保健院 医学工程处,江苏 无锡 214002
引言
随着医疗监护设备技术的发展,人们对健康生活的要求有所提升,因此医疗监护设备的使用也随之增加。由于大型医疗监护设备电池的内部结构复杂[1-3],导致影响电池健康状态的因素很多[4-5]。随着大型医疗监护设备电池充电和放电次数的增多,电池的可用容量随之减少[6],使用寿命也随之减少,不仅影响使用且容易引发医疗安全事故。因此,为了避免发生医疗事故,降低消极影响,对大型医疗监护设备电池的健康检测研究具有重要意义。
针对大型医疗监护设备电池的健康检测问题,一些学者和专家进行了相关研究,李强龙等[7]提出了一种基于改进的蚁狮算法和支持向量回归(Improved ant-Lion Optimization and Support Vector Regression,IALO-SVR)的电池健康状态检测方法,即在电池充电时提取健康因子,并对健康因子与电池容量进行相关分析,再将健康因子中的数据输入支持向量回归(SVR)模型中,通过改进的蚁狮算法(IALO)对参数进行优化,从而构建电池检测模型。王兵等[8]提出一种基于充电过程数据的电池健康状态检测方法,通过电池在充电和放电过程中获取历史数据,提取单体电池电压差和电池容量等特征因子,将数据归一化,再通过平均法及层次分析法检测电池健康状态。但这两种方法忽略了大型医疗监护设备电池的内阻压降,且在使用环境温度比较高的时候,会造成较大的检测误差。
反向传播(Back Propagation,BP)神经网络具有较高的检测能力[9-10];粒子群(Particle Swarm Optimization,PSO)-BP 神经网络模型是在BP 神经网络的基础上进行优化[11],增强了BP 神经网络的寻优能力;非线性自回归模型(Nonlinear Autoregressive with Exogenous Inputs Model,NARX)神经网络具有较高的非线性预测能力,可处理复杂大型医疗监护设备电池的非线性关系。因此,本文基于以上方法提出一种大型医疗监护设备电池健康状态检测算法,以提高大型医疗监护设备的安全性。
1 大型医疗监护设备电池健康状态检测
1.1 大型医疗监护设备电池健康因子的构建
当大型医疗监护设备电池在开始充电或放电即将完成时,大型医疗监护设备电池的电压会发生较快且较大的变化,除此之外,大型医疗监护设备电池的电压不会发生较大变化。本研究通过对大型医疗监护设备电池进行监测,获取监测数据,从而提取影响大型医疗监护设备电池健康状态的特征参量,并将其作为大型医疗监护设备电池的健康因子[12]。
(1)电池内阻:将大型医疗监护设备电池在较短时间内接入电压较大的恒定直流电流,计算大型医疗监护设备电池的电压情况。因为监测的势场较短,导致大型医疗监护设备电池没有发生电极极化效应,此时监测的大型医疗监护设备电池的内阻为欧姆内阻(R0),在极化电阻(Rp)的作用下,大型医疗监护设备电池发生变化,直至极化作用殆尽。
(2)等压降放电时间:随着大型医疗监护设备电池的循环次数不断增加,大型医疗监护设备电池的等压降放电时间会随之减少,大型医疗监护设备电池的健康状态与等压降放电时间之间存在相互对应的关系[13],可因此得出大型医疗监护设备电池状态的健康因子。等压降放电时间Δti的计算方式如公式(1)所示。
(3)等间隔放电时间序列:由于在大型医疗监护设备电池放电时[14]获取的电压曲线斜率变化不大且数据信息较少,导致放电电压 ΔV的取值较小,将发生 Δt误差较大的情况,因此,在Δ 压降区域内,需设置等间隔的放电时间,放电电压VH~VL依次对应放电时间t1~tn。
1.2 大型医疗监护设备电池容量的估计
1.2.1 建立NARX神经网络
NARX 神经网络利用其较好的保存性能将大型医疗监护设备电池的信息数据进行完整的储存,同时进行下一步计算,其模型如图1 所示。u(t)为在t时输入的时间序列;ny为输入的缓慢序列;y(t)为输出;nu为输出的缓慢序列。在t- 1时,u(t- 1)为输入的时间序列;y(t- 1)为输出的时间序列;y(t-ny)为历史的输入时间序列;u(t-nu)为历史的输出时间序列;w为权重;f为非线性函数;fh为隐含层;fo为输出层;b为偏置。
图1 NARX神经网络模型
将NARX 神经网络的输出反馈给输入,其计算方式如公式(2)所示。
将NARX 神经网络理想的输出反馈给输入层,可增强大型医疗监护设备电池容量的估计效果,其计算方式如公式(3)所示。
式中,为输出结果;∂ (1) 为大型医疗监护设备电池的初始估计容量;∂ (n) 为第n周期估计的电池容量。
1.2.2 基于NARX估计大型医疗监护设备电池容量
基于NARX 神经网络将大型医疗监护设备电池的3 个健康因子数据进行训练,进一步对大型医疗监护设备电池的容量进行估计(图2),具体步骤为:① 提取与电池状态有关的特征量和相应电池容量值的健康因子作为NARX 神经网络的输入样本数据;② 将电池健康因子的样本数据分为训练集和测试集,通过NARX 神经网络对训练集进行训练,并将训练后的电池容量估计值与真实值进行比较,当比较后的差值达到设定值时,则不再进行训练;③ 将电池健康因子样本数据中的测试集输入到NARX 神经网络模型中,进而估计大型医疗监护设备电池的容量。通过得到的电池容量估计值,为检测大型医疗监护设备电池的健康状态提供依据。
图2 基于NARX神经网络估计电池容量
1.3 基于PSO-BP检测大型医疗监护设备电池健康状态
大型医疗监护设备电池的健康状态一般由电池健康程度中的容量比作为衡量标准[15]。容量比表示电池当前的容量与出厂容量的百分比,通过电池的估计容量作为电池健康状态的检测依据,同时结合健康因子,利用PSO-BP 神经网络完成电池健康状态检测。第z周期时,容量比soh值的计算方式如公式(4)所示。
式中, ∂(1) 为大型医疗监护设备电池的初始估计容量;∂ (z) 为第z周期的估计电池容量。
由于大型医疗监护设备电池的性能状态与其健康程度有直接关系,而大型医疗监护设备电池的容量可以反映电池的性能状态,因此电池的健康程度与容量之间具有一定关系,可依据电池容量检测其健康状态。
1.3.1 BP神经网络
BP 神经网络的各层均存在大量神经元[16],其工作原理是将输入层的输入数据传到隐含层,再传给输出层。BP 神经网络模型结构如图3 所示。
图3 BP神经网络结构
BP 神经网络的正向传播是将样本数据输入到网络中,从而得出输出结果;反向传播是通过输出层求出权值和阈值,再对其进行调整进而得出理想的结果。BP神经网络最终输出值的计算过程如下:
(1)正向传播:输入数据通过输入层传递给隐含层,每个隐含层节点接收来自输入层节点的加权输入,经过激活函数处理后得到输出。
(2)误差计算:计算输出层的实际输出与理想输出之间的误差。
(3)反向传播:网络根据误差信号通过反向传播调整权重和阈值。对于输出层,权重的调整量与误差和前一层的输出有关;对于隐含层,权重的调整量还与误差的导数有关。
(4)迭代更新:重复正向传播、误差计算和反向传播的过程,直到网络的输出误差达到预设的容忍范围或达到预设的迭代次数。
BP 神经网络的最终计算方式如公式(5)所示。
式中,E为误差函数;P为样本数;dp为样本p的期望输出;yp为样本p的实际输出;η为学习率,且0<η<1;为误差函数对权重的偏导数。通过迭代更新权重和阈值,网络的性能逐渐提高,最终接近理想的结果。
将大型医疗监护设备电池的健康因子数据及估计的大型医疗监护设备电池容量作为BP 神经网络模型的输入,检测大型医疗监护设备电池的健康状态。
1.3.2 PSO-BP算法
由于BP 神经网络的收敛速度较慢,因此将BP 神经网络通过PSO 算法进行优化[17],该方法被称为PSOBP 算法。在PSO 算法中,将粒子的坐标向量表示为ei=(ei1,ei2,… ,ein);变化快慢向量为vi=(vi1,vi2,… ,vin);粒子的寻优解向量为li=(li1,li2,… ,lin);全部粒子的寻优向量为lq=(lq1,lq2, …,lqn),PSO-BP 算法中粒子的速度更新和位置更新的计算方式如公式(6)~(7)所示。
式中,w为权重;u为空间维度,且u=1,2,…,n;h为更新次数,且h=1,2,…,s,其中,s为PSO 算法中种群的样本数量;k1和k2为常数;p1和p2在[0,1]之间随机选择。一般情况下,viu∈[-vmax,vmax],eiu∈[-emax,emax]。
1.3.3 基于PSO-BP检测大型医疗监护设备电池健康状态
根据PSO-BP 神经网络模型对BP 神经网络模型进行优化后,将获取到的最优值输入到BP神经网络模型中[18-20],得出大型医疗监护设备电池的健康状态检测结果。
建立电池健康状态检测的训练集和测试集分别为{XSOH,CSOH}和,其中,前k周期的健康因子数据和估计的电池容量CSOH构成了大型医疗监护设备电池健康状态检测的训练集XSOH;在k周期之后的健康因子和估计出的电池容量测试集构成了大型医疗监护设备电池健康状态检测测试集。将电池健康状态检测的训练集输入到PSO-BP 神经网络中,再将输入到PSO-BP 神经网络中进行检测,得到的全部检测值形成检测集,从而完成大型医疗监护设备电池的健康状态检测。
2 实验分析
为验证本方法对大型医疗监护设备电池健康状态检测的有效性,以心电监护仪为实验对象,根据该医疗监护设备电池的历史数据集,选取电池的前65 周期和前79 周期作为训练数据进行训练。通过选取较长时间范围内的数据来覆盖不同工况、使用环境和电池状态的变化,以增加训练数据的多样性,并以第66 周期和第80 周期为起点作为测试数据检测电池的健康状态,检测结果如图4 所示。
图4 大型医疗监护设备电池的健康状态检测结果
由图4a 和图4b 可知,当大型医疗监护设备电池放电的循环周期不断增加时,电池的健康状态明显退化;在大型医疗监护设备电池放电循环周期起点分别为第66周期和第80 周期时,本方法检测出的大型医疗监护设备电池康健状态曲线与实际健康状态曲线均较接近,验证了本方法检测大型医疗监护设备电池健康状态的有效性。
同时,比较大型医疗监护设备电池放电循环周期起点为第66 周期和第80 周期时的电池健康状态曲线与实际健康曲线,可以看出,在电池放电循环周期起点为第80 周期时检测出的电池健康状态曲线比起点为第66 周期时检测出的电池健康状态曲线更接近实际曲线,说明通过本方法进行训练的数据越多,起点周期越晚,检测大型医疗监护设备电池健康状态的效果越好。
为了进一步验证大型医疗监护设备电池健康状态检测的应用性能,将平均绝对百分比误差(Mean Absolute Percentage Error,MAPE)、 平均绝对误差(Mean Absolute Error,MAE) 和均方根误差(Root Mean Square Error,RMSE)作为本研究方法的评价指标,并将基于IALO-SVR 的锂电池健康状态预测方法[7]和基于充电过程中电池健康状态的评估方法[8]作为本文的对比方法,以验证不同方法检测大型医疗监护设备电池健康状态的能力,验证结果如表1 所示。
表1 不同方法检测大型医疗监护设备电池健康状态结果
如表2 所示,当大型医疗监护设备电池放电循环周期起点为第66 周期和第80 周期时,3 种方法的评价指标都随着周期的增加而减小。但通过基于充电过程中电池健康状态的评估方法[8]方法对大型医疗监护设备电池的健康状态进行检测时,3 个指标的误差均最大,当大型医疗监护设备电池放电循环周期起点为第66 周期时,RMSE 指标已达到2.94%,说明基于充电过程中电池健康状态的评估方法[8]方法的检测效果并不理想;基于IALO-SVR 的锂电池健康状态预测方法[7]方法虽然比基于充电过程中电池健康状态的评估方法[8]方法对大型医疗监护设备电池健康状态的检测效果相对较好,但相较于本文方法,采用基于IALOSVR 的锂电池健康状态预测方法[7]方法检测电池健康状态的3 个指标仍偏高,检测效果较差;而本文方法在对大型医疗监护设备电池的健康状态进行检测时,MAPE、MAE 和RMSE 均是3 种方法中的最低值,当电池放电循环周期起点为第80 周期时,MAE 值为0.31%,误差最小,说明本文方法可对大型医疗监护设备电池的健康状态进行较为准确的检测。
表2 健康因子对检测电池健康状态的相关性
为验证3 种健康因子对于大型医疗监护设备电池的容量估计具有相关性,将相关系数作为评价标准,得出由健康因子估计出的设备电池容量,结果见表2 和图5。
图5 健康因子估计的电池容量与实际容量对比
由表2 可以看出,3 种健康因子与估计大型医疗监护设备电池的容量之间具有较高的相关性,相关系数均在0.95 以上。其中,等间隔放电时间序列的相关系数最高,为0.99,说明等间隔放电时间序列可直接影响大型医疗监护设备电池的健康状态。
由图5 可以看出,大型医疗监护设备电池的真实容量与通过3种健康因子数据估计出的电池容量几乎相似,说明依据大型医疗监护设备电池的3 种健康因子数据,可准确估计电池的容量,从而检测大型医疗监护设备电池的健康状态。
3 讨论
本研究通过等压降放电时间、电池内阻和等间隔放电时间序列3 种健康因子来评估大型医疗监护设备电池的健康状态,综合考虑设备电池在充放电过程中的电压变化情况,以更全面地反映电池容量和健康程度。研究应用NARX 神经网络进行非线性回归建模,通过训练该模型,估计大型医疗监护设备电池的容量。同时,引入PSO 算法作为改进的BP 算法,提高了神经网络模型的训练精度和收敛速度,使电池容量估计更加准确和可靠。通过对比基于IALO-SVR 的锂电池健康状态预测方法和基于充电过程中电池的健康状态评估方法,证明该方法的检测误差较小,可有效地用于电池容量的估计。
尽管该研究具有创新性和实验结果的有效性,但仍然存在一些不足之处。本研究使用IALO 算法改进了基于BP 神经网络的训练过程,以提高神经网络模型的性能。然而,BP 算法在处理深层网络时容易陷入局部最优解的问题中,从而影响模型的收敛速度和泛化能力。未来可进一步探索更先进的优化算法,以改进算法的性能。
4 结论
针对大型医疗监护设备电池的健康状态问题,本文提出一种大型医疗监护设备电池健康状态检测算法,将与电池容量退化相关的3 种健康因子输入到NARX神经网络中进行电池容量的估计,同时结合PSO-BP神经网络模型输出电池的健康状态检测结果,并通过实验证明了本文方法可用于对大型医疗监护设备电池健康状态的检测。本文利用3 种评价指标将本文方法对电池健康状态的检测结果与不同方法进行对比,得出本文方法的检测误差最小,从而验证了本文方法依据电池内阻、等压降放电时间和等间隔放电时间序列3种健康因子数据对于估计大型医疗监护设备电池容量的准确性和有效性。