智能制造中机器故障诊断框架研究
1 引言
随着智能制造的进一步发展,机械设备的故障诊断具有重要意义。过去,机械故障诊断主要基于专家经验。随着传感器的应用,越来越多的传感器被用于机械设备中,以实时获取状态参数。同时,许多智能学习算法也取代了依赖专家经验进行故障诊断的传统方法[1]。快速、准确、及时地发现故障源,是实现稳定有序的智能制造过程的关键。
由于机器故障诊断的复杂性以及各子系统之间的相互作用,基于线性假设的传统故障诊断模型难以达到理想效果[1]。因此,应用机器学习算法进行故障分类成为一种重要手段。在过去的几十年中,已开发出多种分类算法,如决策树[2],随机森林[3],神经网络[4, 5],贝叶斯理论[6]等。然而,机器上部署了大量的传感器以获取实时运行状态参数,海量多维数据将增加故障诊断算法的计算时空开销[1],从而影响实时诊断。因此,本文旨在研究上述两类问题。
支持向量机(SVM)是一种针对小样本的高性能机器学习理论,能够解决小样本和非线性分类问题。它不仅保证了较强的学习能力,还兼顾了泛化能力,并根据有限样本信息在模型的可靠性与复杂性之间取得平衡[7]。DEMATEL方法是一种有效的因素分析与识别方法,在处理复杂社会问题方面具有显著优势,尤其适用于存在不确定因素的系统,已被广泛应用于多个领域[8, 9]。本文采用DEMATEL模型对机器运行状态参数进行降维,选取重要状态参数输入至支持向量机的故障诊断模型中。
2 基于DEMATEL的故障数据降维
DEMATEL模型于1972年提出,通过图论和矩阵理论进行系统因素分析,以研究和解决复杂难题[10]。该模型能够解决特定的相互关联的问题组,并通过分类识别可行解。借助矩阵计算,它可以直观地展示并简化问题之间的逻辑关系。
该方法充分利用专家经验与知识来处理复杂问题,克服了传统方法在分析具有多个子系统或组件的系统时难以进行分析的缺点[10]。在众多参数中,它能够识别原因参数和结果参数,并根据表示各参数重要程度的中心度对参数进行排序。
具体算法如下。
邀请专家根据经验评估状态参数之间的关系。状态参数间的相互影响程度可通过李克特量表进行量化,其中0表示无影响关系,N表示某一状态参数相对于另一状态参数的重要程度。可构建直接影响矩阵A:
$$
A = a_{ij}^{n \times n} =
\begin{bmatrix}
a_{11} & \cdots & a_{1n} \
\vdots & \ddots & \vdots \
a_{n1} & \cdots & a_{nn}
\end{bmatrix}
\quad (1)
$$
$a_{ij}$表示状态参数i相对于状态参数j的重要程度。对直接影响矩阵A进行归一化处理,将矩阵A的元素值赋在0–1之间:
$$
X = x_{ij}^{n \times n} = \frac{A}{\max\left[\max_{1 \leq i \leq n} \sum_{j=1}^{n} a_{ij}, \max_{1 \leq j \leq n} \sum_{i=1}^{n} a_{ij}\right]}
\quad (2)
$$
构建综合影响矩阵T:
$$
T = X(E - X)^{-1}
\quad (3)
$$
计算每个参数的影响度D和被影响度R:
$$
D = (t_i)^{n \times 1} = \sum_{j=1}^{n} t_{ij}^{n \times 1}
\quad
R = (t_j)^{1 \times n} = \sum_{i=1}^{n} t_{ij}^{1 \times n}
\quad (4)
$$
计算每个状态参数的原因度、结果度和中心度。如果 $D_i - R_i > 0$,则参数i为原因参数。如果 $D_i - R_i < 0$,则参数i为受原因参数影响的结果参数。中心度 $D_i + R_i$ 可按降序排列,以表示参数的重要程度。
3 支持向量机分类算法
1995年,Cortes和Vapnik首次提出了支持向量机理论,这是一种针对小样本且高性能的新兴机器学习理论。本质上,它是一组前馈神经网络[11],在多个方面表现出许多独特优势。该理论基于统计学习理论,突破了传统机器学习理论的局限,解决了传统机器学习无法解决的难题。
神经网络算法的优化目标是经验风险最小化,容易出现过拟合现象,学习能力强但泛化能力差。支持向量机基于结构风险最小化和VC维理论,不仅保持了较高的学习能力,同时兼顾了泛化能力[12]。
支持向量机分类器的基本概念是:非线性函数 $ \varphi(\cdot) $ 可以将训练集数据从低维非线性可分空间映射到高维线性可分空间,然后在高维线性空间中构造最优分类超平面,最终得到分类器的判别函数。
$$
\mathbf{w} \cdot \varphi(\mathbf{x}) + b = 0
\quad (5)
$$
判别函数为:
$$
y(\mathbf{x}) = \text{sign}\left[\mathbf{w} \cdot \varphi(\mathbf{x}) + b\right]
\quad (6)
$$
最优分类超平面问题可以描述为:
$$
\min \frac{1}{2} |\mathbf{w}|^2 + C \sum_{i=1}^{l} \xi_i
\
\text{s.t.} \quad y_i \left[\mathbf{w} \cdot \varphi(\mathbf{x}_i) + b\right] \geq 1 - \xi_i, \quad \xi_i \geq 0, \quad i = 1, 2, \dots, l
\quad (7)
$$
该二次规划问题的对偶优化问题是:
$$
\max L = \sum_{i=1}^{l} \alpha_i - \frac{1}{2} \sum_{i=1}^{l} \sum_{j=1}^{l} \alpha_i \alpha_j y_i y_j \varphi(\mathbf{x}
i) \cdot \varphi(\mathbf{x}_j)
= \sum
{i=1}^{l} \alpha_i - \frac{1}{2} \sum_{i=1}^{l} \sum_{j=1}^{l} \alpha_i \alpha_j y_i y_j K(\mathbf{x}
i, \mathbf{x}_j)
\
\text{s.t.} \quad \sum
{i=1}^{l} y_i \alpha_i = 0
\
0 \leq \alpha_i \leq C, \quad i = 1, 2, \dots, l
\quad (8)
$$
其中 $ K(\mathbf{x}_i, \mathbf{x}_j) = \varphi(\mathbf{x}_i) \cdot \varphi(\mathbf{x}_j) $ 是核函数,$\alpha_i$ 和 $\alpha_j$ 是拉格朗日乘子。
最优分类超平面是:
$$
g(\mathbf{x}) = \sum_{i=1}^{l} \hat{\alpha}
i y_i \varphi(\mathbf{x}_i) \cdot \varphi(\mathbf{x}) + \hat{b} = \sum
{i=1}^{l} \hat{\alpha}_i y_i K(\mathbf{x}_i, \mathbf{x}) + \hat{b}
\quad (9)
$$
$\hat{b}$ 可根据以下公式计算:
$$
\hat{b} = y_j - \hat{\mathbf{w}} \cdot \varphi(\mathbf{x}
j) = y_j - \sum
{i=1}^{l} \hat{\alpha}
i y_i \varphi(\mathbf{x}_i) \cdot \varphi(\mathbf{x}_j) = y_j - \sum
{i=1}^{l} \hat{\alpha}_i y_i K(\mathbf{x}_i, \mathbf{x}_j)
\quad (10)
$$
其中 $\hat{\alpha}_i$ 是 $\alpha_i$ 的估计值。
4 故障诊断框架
基于DEMATEL和支持向量机的故障诊断框架可分为四个阶段(
)。
第一阶段是预处理阶段,包括故障诊断对象确定和历史数据收集。根据不同机械设备,部署不同传感器以采集设备运行参数。历史数据可用于后续模型生成。
第二阶段是故障诊断的降维。在获取设备运行参数后,可以构建DEMATEL模型来分析参数之间的关系,计算原因参数和结果参数,并根据中心度对参数进行排序。根据中心度,可选择重要参数作为支持向量机故障诊断模型的输入。
第三阶段是数据训练阶段。每种故障状态的参数值被分为两组:训练样本和故障诊断分类样本。训练样本作为支持向量机模型的输入。选择合适的核函数,并采用基于网格搜索的交叉验证方法来优化模型参数。由此得到训练好的支持向量机故障诊断模型。
第四阶段是诊断和评估阶段。我们可以使用在第三阶段生成的支持向量机模型进行故障诊断,并评估该模型的准确性。
5 结论
在本文中,我们提出了一种基于DEMATEL和支持向量机的故障诊断框架。DEMATEL能够分析机器运行参数之间的关系,并根据参数的重要程度对其进行排序。支持向量机分类器则用于对DEMATEL筛选出的参数进行故障诊断。该框架不仅能够降低多维参数的维度,而且还可以通过使用机器学习算法来提高诊断性能。未来,该提出的框架可用于实际生产中以验证框架的性能。
1072

被折叠的 条评论
为什么被折叠?



