Prediction method of railway faults duration based on convolutional neural network
-
摘要: 随着铁路网络复杂程度的不断提高,铁路运营部门调度难度日益增加,亟须研究精准预测铁路故障持续时间的方法,从而提高铁路调度系统应对各类风险和事故的能力。文章基于“安监报1”的文本数据,结合Jieba分词、Word2vec词向量模型等自然语言处理技术,构建了一种基于卷积神经网络(CNN,Convolutional Neural Network)的铁路故障持续时间预测模型,并基于中国铁路沈阳局集团有限公司的实际生成数据进行试验。试验结果表明,本预测模型能够较为快速、准确地获取铁路故障持续时间及其概率分布,为列车的运行调整提供参考。
-
关键词:
- 铁路故障持续时间 /
- 自然语言处理 /
- 卷积神经网络(CNN) /
- Word2vec /
- 安监报1
Abstract: With the continuous increase in the complexity of railway networks, the scheduling difficulty of railway operation departments is increasing. It is urgent to study methods for accurately predicting the duration of railway failures, in order to improve the ability of railway dispatch systems to cope with various risks and accidents. This paper was based on the text data of "Safety Supervision Report 1", combined with natural language processing techniques such as Jieba word segmentation and Word2vec word vector model, to construct a railway fault duration prediction model based on Convolutional Neural Network (CNN). The model was tested based on actual generated data from China Railway Shenyang Group Co. Ltd. The experimental results show that this prediction model can quickly and accurately obtain the duration and probability distribution of railway faults, and provide reference for train operation adjustment. -
逆变器是列车牵引传动系统中的重要组成部分,经常处于高压高频状态,且在列车运行过程中存在不确定性因素,使得逆变器易产生各种故障,其最常见的故障为绝缘栅双极型晶体管(IGBT,Insulated Gate Bipolar Transistor )开路故障。IGBT开路故障又分为单管开路、双管开路、三管及以上开路故障。其中,单管开路故障特征明显,且诊断较为简单;双管开路故障危害更大且故障特征更加复杂;三管及以上的开路出现故障的几率很小,通常不作考虑。因此,本文仅对双管开路故障的情况进行分析,及时定位故障的位置,可提高检修效率,降低维修成本,对列车的维修具有重要意义。
目前,基于信号处理和机器学习相结合的故障诊断方法是研究的热点。Kou L等人[1]采用知识驱动和随机森林技术,对中性点箝位型逆变器IGBT开路进行故障诊断,取得了较好的诊断效果;钱存元等人[2]利用经验模态分解(EMD, Empirical Mode Decomposition)方法处理信号,再利用反向传播(BP, Back Propagation)神经网络进行故障诊断,实现了较高精度的故障诊断;赵智强等人[3]针对电容的老化进行故障诊断,采用自适应白噪声完整集合EMD与小波能量熵结合的特征提取方法,并利用改进的最小二乘支持向量机实现了Z源逆变器的故障诊断,准确率达到99.6%;孟建军等人[4]针对列车的辅助逆变器中IGBT开路故障进行研究,对故障信号进行小波重构建立了BP与广义回归神经网络,在保有较高精度的同时提高了迭代速度;陶洪峰等人[5]结合EMD及决策树相关向量机,实现了对二极管箝位型三电平逆变器的故障诊断,该方法可减少人为设置参数的数量,避免参数设置不合理对诊断结果产生的影响;Yang等人[6]将三相电流平均值作为故障特征,采用GA-ACO-BP算法实现故障在线检测。
上述研究均取得了一定成果,但在列车的逆变器模块中,不同列车电路结构不同,且控制算法也不同。因此,本文针对CRH3C型动车组逆变器的IGBT双管故障进行研究。建立双电平电压源型逆变器模型,控制器采用空间矢量脉宽调制 (SVPWM ,Space Vector Pulse Width Modulation)算法,并对IGBT双管故障进行仿真,得到故障信号。再通过EMD-非洲秃鹫优化算法(AVOA ,African Vultures Optimization Algorithm)-BP方法,构建故障诊断模型,对故障信号进行识别,从而实现逆变器故障诊断。
1 逆变器建模及故障分析
1.1 CRH3C型动车组逆变器建模
CRH3C型动车组逆变器包含直流输入、逆变桥、牵引电机、速度传感器、电流传感器及控制器。其中,控制器采用SVPWM算法,由速度传感器和电流传感器得到当前牵引电机的转速和三相电流,并输出开关信号控制IGBT的通断,从而控制牵引电机。 SVPWM控制器控制方式为转子磁链定向的矢量控制,该方法采用坐标变换的方法将牵引电机的动态模型进行简化,令坐标变换后的d轴与转子磁链方向重合,将交流牵引电机的物理模型转换为类似直流电机的物理模型,控制方式也采取类似直流电机的闭环调速。
在控制牵引电机时,分别记三相逆变桥为a、b、c,每一相都有两种工作状态,用1表示上桥臂导通,用0表示下桥臂导通,因此,三相组合一共有8种开关状态,SVPWM控制器对应构造了8个基本电压矢量,8种基本电压矢量V0~V7的分布及逆变桥的结构如图1所示。
图1(b)中,T1~T6为逆变器的6个IGBT,直流输入电压为Ud。对于牵引电机所需要的任何电压均可由所在扇区相邻的2个基本电压向量合成,每个基本电压向量的作用时间由SVPWM控制器计算求得[7]。与传统的脉冲宽度调制(PWM,Pulse Width Modulation)方法相比,SVPWM控制器有着更高的直流电压利用率,更小的谐波成分,以及更低的转矩波动。逆变器控制框图如图2所示。
图2中
$ \omega _m^ * $ 与$ {\omega _m} $ 分别为牵引电机期望转速与实际转速;$ {i_a} $ 、$ {i_b} $ 、$ {i_c} $ 为三相定子电流的检测值;$ {i_{ds}} $ 与$ {i_{qs}} $ 为d-q坐标系下定子电流的检测值;$ \theta $ 为转子磁链的角度;$ i_{ds}^ * $ 与$ i_{qs}^ * $ 为d-q坐标系下定子电流的期望值;$ v_d^ * $ 与$ v_q^ * $ 为d-q坐标系下的期望电压。本文根据图2在Simulink中搭建如图3所示的逆变器仿真模型,该模型中的牵引电机参数如表1所示[8]。表 1 牵引电机参数参数名称 数值 参数名称 数值 极对数 2 转子电阻$ {R_r} $ 0.16 Ω 转子漏感$ {L_{lr}} $ 0.6 mH 转动惯量$ J $ 5 kg·m2 定子漏感$ {L_{ls}} $ 1.42 mH 互感$ {L_m} $ 25.4 mH 定子电阻$ {R_s} $ 0.15 $ \Omega $ 额定功率 562 kW 1.2 故障分析
一个逆变器中包含6个IGBT,其开关信号由SVPWM控制器发出。相对于单管开路故障,双管开路故障发生时电流畸变更加严重,对牵引电机转速影响也更为明显。双管开路故障又分为同桥臂故障与不同桥臂故障,共包含15种故障情况和1种无故障情况,用1代表IGBT发生故障、0表示IGBT正常,并以T1~T6的6位编码作为故障标签,例如,T1T2双管故障标签为110000。
当无故障发生时,三相电流呈现相位互差120°的正弦波形,如图4所示,其电流最大幅值为100 A左右。
设定半载匀速运行为列车的运行状态,发生故障时,将逆变器仿真模型中对应的故障管同时断开连接,由于故障种类较多,仅以T1T2、T1T4、T1T5及T4T5为例,其双管开路故障三相电流波形如图5所示。图5中,电流波形与正常运行时对比发生不同程度的畸变,电流最大幅值明显增加,导致其他元件处于过载状态,不仅对于整个电路的寿命产生严重影响,对列车的安全运行也有严重的影响。
2 EMD-AVOA-BP方法
2.1 故障特征提取
2.1.1 EMD去噪处理
由三相电流信号的波形可知,信号中存在着许多毛刺,可能会对最终故障诊断的效果产生影响,因此,先对三相电流信号进行EMD去噪处理。EMD去噪需要对信号进行分解,将原始信号分解成一系列内涵模态分量及残余分量,去除高频分量后再将其余分量重构,形成新的信号。EMD分解的步骤如下[9]:
(1)求原始信号x(t)上下极值点,并求得上、下包络线及其均值m(t) ,画出均值包络线;
(2)用原始信号减均值包络线,得到中间信号s(t)=x(t)−m(t);
(3)判断该s(t)是否满足本征模态函数(IMF,Intrinsic Mode Functions)的2个约束条件,若满足,该信号就是一个IMF分量,记为c(t);否则,重复(1)~(3);
(4)求得第一个IMF分量后,将原始信号减去该IMF分量,作为新的原始信号继续分解,重复以上步骤直到IMF分量小于预设值或残余分量为单调函数,此时EMD分解结束,并剩余一个残余分量r(t)。本征模态函数的约束条件为,在数据中信号极值点个数与过零点个数相差小于 2,并且,信号的上下包络线要关于时间轴对称。
通常,信号中包含的噪声为高频量,因此,将IMF分量中频率最高的分量去除,将其余分量重构得到新的无噪声平滑信号。去噪后的三相电流波形比较如图6所示,去噪后的信号高频毛刺明显减少,波形更加光滑。
2.1.2 EMD故障特征提取
在去除信号中代表噪声的最高频的IMF1分量后,剩余IMF2~IMF10(本文中电流信号最多分解到第10层)及残余分量r(t),将其能量占比作为EMD故障特征,计算步骤如下。
(1)第
$ i $ 个IMF分量的能量Ei为$$ {E_{\text{i}}} = \sum\limits_{j = 1}^n {p_{ij}^2} $$ (1) 式(1)中,i=2, 3, ···, 10,
$ {p_{ij}} $ 为第$ i $ 个IMF分量中第j个样本点的幅值,$ n $ 为样本点个数。(2)残余分量的能量Er为
$$ {E_{\text{r}}} = \sum\limits_{j = 1}^n {q_j^2} $$ (2) 式(2)中,
$ {q_j} $ 表示残余分量r(t)中第j个样本点的幅值。(3)总能量Et为
$$ {E_t} = {E_r} + \sum\limits_{i = 2}^{10} {{E_i}} $$ (3) (4)以各分量的能量占比作为故障特征向量H,其公式为
$$ H = \left[\frac{{{E_2}}}{{{E_t}}},\frac{{{E_3}}}{{{E_t}}}, \ldots ,\frac{{{E_{10}}}}{{{E_t}}},\frac{{{E_r}}}{{{E_t}}}\right] $$ (4) 分别求取三相定子电流的故障特征
$ {H_a} $ 、$ {H_b} $ 、$ {H_c} $ ,令$ T = \left[ {{H_a},{H_b},{H_c}} \right] $ 。2.2 AVOA- BP故障诊断模型
BP神经网络是一种多层的、向前反馈的神经网络。在分类时,当预测类别与实际类别不符时,则反向传播误差,并不断调整神经网络的权重阈值,最终达到分类目的。但BP神经网络也存在许多缺陷,例如,对初始权重阈值较敏感,易陷入局部最优,导致训练误差较大,且多次重复训练得到的结果都有较大差别。针对上述问题,本文采用AVOA对BP神经网络初始的权重和阈值进行优化,优化后的BP神经网络即为AVOA - BP 故障诊断模型。
AVOA通过模拟非洲秃鹫的觅食和航行行为进行问题寻优,具有寻优能力强、收敛速度快等特点。AVOA优化BP神经网络的流程如图7所示[10],将BP神经网络误差作为饱食度,指导秃鹫种群中每个秃鹫进行位置更新,每个秃鹫所在的位置都代表了BP神经网络中初始权重和阈值的一组取值。其算法主要步骤如下。
(1)初始化参数及种群。设置算法超参数P1、P2、P3分别为0.6、0.4、0.6,该参数用于控制更新策略。随机生成0~1之间的随机数:randp1、randp2、randp3。
(2)计算适应度并选取最优秃鹫B1与次优秃鹫B2,其他秃鹫按式(5)向最优解或次优解移动
$$ R(i) = \left\{ \begin{gathered} {B_1}{\text{ if }}{p_i} = {L_1} \\ {B_2}{\text{ if }}{p_i} = {L_2} \\ \end{gathered} \right. $$ (5) 式(5)中,
$ i $ 为当前迭代次数;L1、L2为选择最优秃鹫与次优秃鹫的概率参数,二者均在0~1之间,且二者和为1;R(i)表示被选中的最优秃鹫或次优秃鹫,$ {p_i} $ 为选择概率,其公式为$$ {p_i} = \frac{{{F_i}}}{{\displaystyle\sum\limits_{i = 1}^n {{F_i}} }} $$ (6) 式(6)中,Fi表示第i次迭代中秃鹫的饱食度;n为总迭代次数。
(3)更新参数
$ t $ 、$ z $ ,并计算秃鹫饱食度$ F $ ,计算公式为$$ t=h\cdot\left(\left(sin\left(\frac{\pi}{2}\cdot k\right)\right)^w+\cos\left(\frac{\pi}{2}\cdot k\right)-1\right) $$ (7) $$ F = (2 \cdot ran{d_1} + 1) \cdot z \cdot (1 - k) + t $$ (8) 式(7)、式(8)中,参数t的引入有助于防止算法陷入局部最优解,使算法增加进入探索阶段的概率;w设置为2.5,该值越大进入探索阶段的概率越大;
$ h $ 是介于−2~2之间的随机数;$ z $ 是介于−1~1之间的随机数,且每次迭代都会改变,当$ z $ <0 ,表示秃鹫处于饥饿状态;$ k $ 为当前迭代次数与最大迭代次数的比值。(4)根据饱食度F选取当前进行的阶段,当
$ \left| F \right| \geqslant 1 $ 进行探索阶段,该阶段秃鹫会进行大范围搜索;否则进入开发阶段,秃鹫在小范围进行精细搜索。(5)进行探索阶段时,根据参数
$ {P_{\text{1}}} $ 确定该阶段的搜寻策略,当$ {P_{\text{1}}} \geqslant ran{d_{p1}} $ 时,个体位置更新方式采用式(9),否则采用式(10)。$$ P(i + 1) = R(i) - \left| {X \cdot R(i) - P(i)} \right| \cdot F $$ (9) $$ P(i + 1) = R(i) - F + ran{d_2} \cdot ((ub - lb) \cdot ran{d_3} + lb) $$ (10) 式(9)、式(10)中,
$ P(i) $ 为当前迭代中秃鹫的位置矢量;$ X $ 为每次迭代变化的随机运动参数,是0到2 之间的随机数;$ ub $ 与$ lb $ 分别代表待优化参数的上下界。(6)
$ \left| F \right| $ 在0.5~1之间时,秃鹫位置更新策略取决于$ {P_2} $ 与随机参数$ ran{d_{p2}} $ 的关系,当$ {P_2} \geqslant ran{d_{p2}} $ 时采用式(11),否则采用式(12)。$$ P(i + 1) = \left| {X \cdot R(i) - P(i)} \right| \cdot (F + ran{d_4}) - {R_i} + {P_i} $$ (11) $$ P(i + 1) = R(i) - ({S_1} + {S_2}) $$ (12) $$ {S_1} = R(i) \cdot \frac{{ran{d_5} \cdot P(i)}}{{2\pi }} \cdot \cos (P(i)) $$ (13) $$ {S_2} = R(i) \cdot \frac{{ran{d_6} \cdot P(i)}}{{2\pi }} \cdot \sin (P(i)) $$ (14) 式(11)~式(14)中,
$ ran{d_4} $ 、$ ran{d_5} $ 、$ ran{d_6} $ 均为0~1间的随机数。(7)当
$ \left| F \right| $ < 0.5时,秃鹫位置更新策略取决于$ {P_3} $ 与随机参数$ ran{d_{p3}} $ 的大小关系,当$ {P_3} \geqslant ran{d_{p3}} $ 时采用式(15),否则采用式(16)。$$ P(i + 1) = \frac{{{A_1} + {A_2}}}{2} $$ (15) $$ P(i + 1) = R(i) - \left| {d(t)} \right| \cdot F \cdot Levy(d) $$ (16) 式(15)~式(16)中,
$ d $ 表示每个秃鹫的维度;d(t)表示秃鹫到最优秃鹫或次优秃鹫的距离;相关参数及函数计算方法为$$ {A_1} = {B_1}(i) - \frac{{{B_1}(i) \cdot P(i)}}{{{B_1}(i) - P{{(i)}^2}}} \cdot F $$ (17) $$ {A_2} = {B_2}(i) - \frac{{{B_2}(i) \cdot P(i)}}{{{B_2}(i) - P{{(i)}^2}}} \cdot F $$ (18) $$ Levy(x) = 0.01 \cdot \dfrac{{u \cdot \sigma }}{{{{\left| v \right|}^{\frac{1}{\beta }}}}} $$ (19) $$ \sigma = {\Biggr(\frac{{\Gamma \left(1 + \beta \right) \cdot \sin \left(\dfrac{{\pi \beta }}{2}\right)}}{{\Gamma \left(\dfrac{{1 + \beta }}{2}\right) \cdot \beta \cdot {2^{\frac{{\beta - 1}}{2}}}}}\Biggr)^{\frac{1}{\beta }}} $$ (20) 式(17)~式(20)中,
$ \beta = 1.5 $ ;B1(i)、B2(i)分别表示第i次的迭代最优秃鹰和次优秃鹰;$ u $ 与$ v $ 服从正态分布,$ u \sim N(0,{\sigma ^2}) $ ,$ v \sim N(0,1) $ 。重复步骤(2)~(7)直到达到最大迭代次数或误差满足要求。3 仿真实验与结果分析
3.1 故障诊断模型设置及训练
AVOA-BP故障诊断模型的输入为三相电流信号的EMD故障特征,输出为故障标签预测值。为了提高精度并降低网络复杂程度,对应6个IGBT,每次选取一个IGBT的标签作为网络输出,分别构建6个AVOA-BP神经网络,因此BP网络输出层仅有一个神经元。神经网络输入层神经元个数为33,由T中故障特征的个数决定。隐含层神经元数量经测试设置为70左右最佳。根据Matlab中默认的BP网络神经元连接方式,计算可知共有2 380个权值及71个阈值。设定种群大小为100,最大迭代次数为500,参数上下界分别为1和−1。
故障诊断模型设置好后,采用EMD对三相电流信号进行处理,提取特征数据。将这些数据划分为训练集和测试集,共包含16种故障标签,每种故障类型有10组数据,共160组数据,将其中130组作为训练集,其余30组作为测试集,在Matlab中编写模型训练程序,实现数据预处理及模型训练功能。
3.2 实验结果分析
由于实际值只有0或1两种取值,因此将预测结果以0.5作为阈值,低于阈值视为0,否则视为1。采用准确率(Accuracy)、均方误差(MSE,Mean-Square Error)、决定系数(R2,R-Squar)评价模型的性能。其中,准确率越高表示诊断效果越好,MSE越低表示模型预测值与实际值误差越小,R2越接近1表示模型的拟合效果越好。
为验证模型的性能,本文与采用梯度下降法的传统BP模型、采用粒子群算法(PSO,Particle Swarm Optimization)优化的BP模型及采用Levenberg-Marquardt(L-M)算法的BP模型的诊断结果进行对比。传统的BP模型通常采用梯度下降法,使网络的权值和阈值沿梯度的反方向,按一定步长大小进行更新;L-M-BP模型在梯度下降法的基础上进行了改进,通常比标准的梯度下降法收敛更快;PSO-BP模型与AVOA-BP模型类似。为保证实验的公平性,模型的网络结构均一致,优化算法的最大迭代次数和种群大小均分别设为500和100。传统BP模型和L-M-BP模型的学习率设为0.1。4类方法的实验结果如图8所示。4种模型总体性能的对比如表2所示。
表 2 模型诊断效果对比模型名称 样本数量 正确数量 MSE 准确率 R2 AVOA-BP 30 30 0.005 100% 0.939 L-M-BP 30 29 0.027 96.7% 0.878 传统BP 30 23 0.026 76.7% 0.666 PSO-BP 30 17 0.05 56.7% -0.705 由表2可知,本文设计的AVOA-BP故障诊断模型在测试集中达到了100%的故障诊断准确率,MSE值最小且R2值最大,其各项指标均优于对照组。L-M-BP模型也取得了很好的诊断效果,但分析其预测结果可知,该模型虽只诊断错了第13号样本,但该样本对应的故障标签中,存在6个标签诊断错误,同时,该很多预测值与阈值非常接近,反映出该模型的泛化性较差,易出现误诊。而传统BP模型与PSO-BP模型诊断效果均不理想,准确率较低,无法有效对逆变器故障进行诊断。
4 结束语
本文以CRH3C型动车组中的逆变器为研究对象,搭建了逆变器的仿真模型并得到故障信号,构建EMD-AVOA-BP故障诊断模型对逆变器IGBT的双管故障进行诊断,并将诊断结果与其他常用方法进行对比。经过对比可知,本文设计的EMD-AVOA-BP故障诊断模型的各项指标均优于其他模型,验证了其有效性,实现了对高速列车逆变器IGBT双管故障的精准诊断,对提高逆变器检修效率具有一定参考意义。
-
表 1 “安监报1”实验数据样例
“安监报1”数据 XXX次于17时30分时运行至辽阳高速场至沈阳南站间接触网挂风筝,经随车机械师检查确认风筝挂在7车受电弓上,更换2车受电弓后
于17时47分开车。XXX次列车运行至阜新站至黑山北站间XXX处撞野鸡,17时02分黑山北站
停车检查,经随车机械师下车检查无异常后17时08分开车,影响本列
超站停4 min。表 2 故障持续时间类别
标签编号 时间范围/min 0 (0, 5) 1 [5, 30) 2 [30, 60) 3 [60, 180) 4 [180, +∞) 表 3 卷积神经网络参数配置表
参数名 参数值 卷积核个数 256 卷积核大小 3 嵌入层维度 100 单词训练数据个数 256 轮次 24 验证集比例 0.2 丢弃率 0.3 激活函数 Softmax 池化方式 MaxPool 表 4 预测结果样例
安监报数据 类别0 类别1 类别2 类别3 类别4 XXX次于17时30分时运行至辽阳高速场至沈阳南站间接触网挂风筝,经随车机械师
检查确认风筝挂在7车受电弓上,更换2车受电弓后于17时47分开车。0.075 0.820 0.078 0.025 0.001 XXX次列车运行至阜新站至黑山北站间XXX处撞野鸡,17时02分黑山北站停车
检查,经随车机械师下车检查无异常后17时08分开车,影响本列超站停4 min。0.153 0.003 0.025 0.780 0.038 -
[1] Mikolov T, Sutskever I, Chen K, et al. Distributed representations of words and phrases and their compositionality[C]//Proceedings of the 26th International Conference on Neural Information Processing Systems, 5-10 December, 2013, Lake Tahoe Nevada. Red Hook, USA: Curran Associates Inc. , 2013.
[2] Mikolov T, Chen K, Corrado G, et al. Efficient estimation of word representations in vector space[J]. arXiv preprint arXiv: 1301, 3781: 2013.
[3] Kalchbrenner N, Grefenstette E, Blunsom P. A convolutional neural network for modelling sentences[C]//Proceedings of the 52nd Annual Meeting of the Association for Computational Linguistics, 22-27 June, 2014, Baltimore, MD, USA. Baltimore: ACL, 2014.
[4] 吴龙峰. 基于Word2vec和LDA的卷积神经网络文本分类模型[J]. 电脑知识与技术,2019,15(22):203-204,206. DOI: 10.14004/j.cnki.ckt.2019.2755 [5] 牛雪莹. 结合主题模型词向量的CNN文本分类[J]. 计算机与现代化,2019(10):7-10. DOI: 10.3969/j.issn.1006-2475.2019.10.002 [6] 张浩然,谢云熙,张艳荣. 基于TextCNN的文本情感分类系统[J]. 哈尔滨商业大学学报(自然科学版),2022,38(3):285-292. [7] Rosadini B, Ferrari A, Gori G, et al. Using NLP to detect requirements defects: an industrial experience in the railway domain[C]//Proceedings of the 23rd International Working Conference on Requirements Engineering: Foundation for Software Quality, 27 February –2 March, 2017, Essen, Germany. Cham: Springer, 2017: 344-360.
[8] 樊梦琳. 铁路事故持续时间预测方法研究[D]. 北京:北京交通大学,2020. [9] 张世同. 基于BERT与BiLSTM的铁路安监文本分类方法[J]. 现代计算机,2021(22):38-42.