中自网

热门搜索:PID  plc  传感器  电机  变频器  工业以太网  无线通讯  低压 

当前位置:首页>>应用案例首页>>专业论文>>正文

改进人工蜂群算法优化支持向量机的柴油机故障诊断

发布日期:2017-08-01   来源:烟台黄金职业学院   作者:沈绍辉   浏览次数:28350
分享到:
【摘   要】:支持向量机是柴油机进行故障诊断的重要工具,然而其核函数参数和惩罚因子的不同取值会影响到分类结果正确率。针对这一问题,提出利用改进人工蜂群算法对支持向量机相关参数进行选择优化,在该方法中,将参数作为食物源,而分类正确率作为适应度函数。接着,通过对1个UCI数据集进行分类测试测试,证明了该改进方法的优越性:既继承了传统方法的优点又减少了收敛时间。最后将其用于柴油机故障诊断实验,进一步证明了该方法不仅能够获得较高的故障分类正确率,而且与传统人工蜂群算法相比,能够有效降低运行时间。

  要:支持向量机是柴油机进行故障诊断的重要工具,然而其核函数参数和惩罚因子的不同取值会影响到分类结果正确率。针对这一问题,提出利用改进人工蜂群算法对支持向量机相关参数进行选择优化,在该方法中,将参数作为食物源,而分类正确率作为适应度函数。接着,通过对1UCI数据集进行分类测试测试,证明了该改进方法的优越性:既继承了传统方法的优点又减少了收敛时间。最后将其用于柴油机故障诊断实验,进一步证明了该方法不仅能够获得较高的故障分类正确率,而且与传统人工蜂群算法相比,能够有效降低运行时间。

关键词:改进人工蜂群算法   支持向量机   参数选择   柴油机故障诊断

Abstract: Support vector machine is an important tool for diesel engine fault diagnosis, but the different values of its kernel function parameters and penalty factor will affect the classification accuracy. Thinking of the problem, this paper uses improved artificial bee colony to optimize parameters of support vector machine, and in the method, parameters will be as food sources, the classification accuracy as the fitness function. Through one UCI datasets testit demonstrates the superiority of the improved method: inheriting the advantages of the traditional method and reducing the convergence time . Finally, the method is for diesel engine fault diagnosis, and the results prove that this method not only obtains higher fault classification accuracy, but also compared with the traditional artificial bee colony algorithm, it effectively reduces the running time.

Key words: Improved artificial bee colony   Support vector machine   Parameter optimization   Diesel engine fault diagnosis


【中图分类号】TP206 【文献标识码】A 文章编号1606-5123201706-0000-00

1 引言

    柴油机作为动力设备已广泛应用于矿山开采、工程机械等许多领域,在社会生产和生活中发挥着重要作用[1-3]。然而由于柴油机自身结构的复杂性和工作环境的特殊性,其故障发生率较高。当故障发生时不仅整个工作系统无法正常运行,严重时会造成人员伤亡和经济损失,因此,对柴油机进行故障诊断以减少不利影响成为一种必要。

    支持向量机(Support Vector MachinesSVM)是以统计学习理论为基础,针对有限样本的一种通用学习方法,能有效解决小样本、高维数、非线性等问题[4-7],是进行机械故障识别的重要工具。然而Vapnik等通过研究证明:在解决实际问题时,支持向量机核函数选择的不同对其分类性能影响较小,以RBF核函数应用较多,但核函数参数和惩罚因子的选择却会直接影响到其分类性能的好坏。基于此,提出一种基于改进人工蜂群算法优化RBF核函数的支持向量机来进行柴油机故障识别的方法,以期在获得更高故障识别率的基础上及时采取合理措施,减小损失,保证机器的正常运作。

2 人工蜂群算法优化支持向量机

2.1 支持向量机(SVM)原理

 



2.3 基于改进人工蜂群算法优化支持向量机的参数选择

该算法对支持向量机惩罚因子C和核函数参数σ进行选择时,应对其中一些相关参数和适应度函数进行如下设置:

1)初始化算法中的控制参数。如:初始种群数量NP,最大循环次数N,终止循环次数Nmc

2)设置适应度函数。利用算法对支持向量机进行最佳参数的选择是为了最终获得更高的分类正确率,因此,将适应度函数设置为


3)对支持向量机参数初始化搜索范围。由于支持向量机惩罚因子和核函数参数的不同取值会影响到最后分类结果的好坏,因此,应当确定参数的取值范围。

改进人工蜂群算法优化支持向量机参数具体过程如图1所示。

为能更好地说明该改进算法的优越性,利用UCI1个数据集进行分类正确率验证,如表1所示。设置食物源数量NP=20,最大循环次数N=50,终止次数Nmc=50,参数初始搜索范围[0.1 50],则未优化的支持向量机、传统ABC算法和改进ABC算法优化的支持向量机最终的测试结果如表2所示,从中可以看出,该改进算法能够获得较高分类正确率并能够有效降低运行时间。


1 改进人工蜂群算法优化支持向量机流程图

 

 

 

 

1  UCI数据集说明

数据集类型

维数

训练样本数

测试样本数

Lenses

5

12

12

 

测试结果

指标

未优化SVM

传统ABC-SVM

改进ABC-SVM

分类正确率

83.33%

100%

100%

时间/s

13.906997

3.964584

参数C

6

36.0993

33.9362

参数σ

5

1.1681

1.6641

 

3 柴油机故障诊断算法应用

3.1 实验方案设计

实验对象是某12缸柴油机,故障设置为G1—6缸断油、G2—1缸断油、G3—1缸和右6缸双缸断油、故障G4—1缸喷油泵渗漏、故障G5—空气滤清器堵塞;信号采集装置有压电式加速度传感器、电荷放大器、DASP数据采集仪及笔记本电脑等;实验中采集正常状态、故障G1、故障G2、故障G3、故障G4和故障G5六种情况下柴油机转速1500r/min、采样频率40kHz3缸缸体处的振动信号数据,提取每种工况下样本各6组。

3.2 信号分析与特征值提取

柴油机振动信号去噪后,为进一步减小信息的冗余性,使柴油机工况信息更加直观,同时改善支持向量机故障识别时的运行速度,应对信号进行特征值提取。鉴于小波包分析法对振动信号的低频与高频部分都能取得良好的分解效果,并且其处理过程对比小波分析更加精准、细致,所以,本文利用小波包分解法对去噪信号进行能量特征值提取,以使信号信息简便化。其步骤如下:

1)进行信号小波包分解。把降噪后的信号利用“db1”小波基函数进行3层小波包分解,并提取第3层从低到高共8个频率段的信号X3j,其中jj=0,1,2,3…7)为节点数。

2)重构小波包分解系数。对第3层的所有节点进行小波包重构,并用S3j表示重构后的信号,则重构后总信号可表示为

S=S30+S31+S32+…+S37

3)求解各频带信号能量。设S3j的能量为E3jj=0,1,2,3…7

4)构造特征向量。将第3节点各频段的能量值取为特征向量T0,则有

T0=[E30E31E32…E37]

5)进行归一化处理。为避免由于E3j较大而带来后续数据处理不便的影响,应对T0进行归一化处理得T1,

T1=[E30/E,E31/E,E32/E…E37/E]

信号经3层小波包分解可以得到8个频带,同时得到8个特征值,如表3所示。图2显示的是其中三种工况下各一组振动信号数据经过特征值提取后所对应的能量谱图。

频段与故障特征值

频段

特征值

1

T1(E30/E)

2

T2(E31/E)

3

T3(E32/E)

4

T4(E33/E)

5

T5(E34/E)

6

T6(E35/E)

7

T7(E36/E)

8

T8(E37/E)




2 其中三种工况下小波包分解后的能量谱图

3.3 柴油机故障诊断

1)获取诊断样本数据。实验时每种工况下的柴油机振动信号采集6次,因此,经小波包能量谱特征值提取后可以得到36个样本数据。在故障诊断中,训练样本由每种工况的前3个样本特征值组成,测试样本由每种工况的后3个样本特征值组成,即最终得到六种工况下的训练样本与测试样本数各18个。表4和表5列出了正常状况、故障G3和故障G5的训练样本和测试样本。

 

4 训练样本

工况

序号

T1

T2

T3

T4

T5

T6

T7

T8

正常状况

1

0.3106

0.5739

0.3757

0.6149

0.0347

0.0900

0.1087

0.1838

2

0.3236

0.5499

0.3647

0.6763

0.0336

0.0956

0.0958

0.2801

3

0.3404

0.5788

0.3716

0.5913

0.0239

0.0833

0.0908

0.2053

故障G3

1

0.2648

0.5266

0.4496

0.6026

0.0374

0.0779

0.1798

0.2179

2

0.2404

0.5695

0.4348

0.6206

0.0229

0.0851

0.1398

0.1889

3

0.2314

0.5735

0.4386

0.5959

0.0355

0.0872

0.1057

0.2428

故障G5

1

0.2639

0.5587

0.2745

0.7026

0.0285

0.1002

0.0965

0.1702

2

0.2702

0.5457

0.2898

0.6586

0.0313

0.093

0.1034

0.2137

3

0.2627

0.598

0.3033

0.64

0.0316

0.0931

0.1285

0.1629

测试样本

工况

序号

T1

T2

T3

T4

T5

T6

T7

T8

正常状况

1

0.3120

0.5505

0.3436

0.6600

0.0257

0.0959

0.1131

0.1866

2

0.3625

0.6291

0.3262

0.6581

0.0244

0.0926

0.1228

0.1634

3

0.3594

0.6455

0.3554

0.6382

0.0269

0.0982

0.0792

0.1802

故障G3

1

0.2525

0.5529

0.4122

0.6248

0.0338

0.0808

0.1493

0.2425

2

0.2824

0.5997

0.4278

0.5927

0.0327

0.0786

0.1524

0.2042

3

0.2356

0.6098

0.4164

0.6115

0.0272

0.0931

0.1455

0.1985

故障G5

1

0.2188

0.5896

0.2739

0.6782

0.027

0.0847

0.1496

0.1982

2

0.2104

0.5986

0.2946

0.7384

0.0306

0.0882

0.1191

0.2284

3

0.2151

0.5183

0.2674

0.7493

0.0274

0.1105

0.0807

0.1806

 

2)未优化的支持向量机故障识别。将训练样本与测试样本输入到参数为优化的支持向量机中进行故障诊断,其结果如图3所示,不同参数取值对应的各类工况的分类正确率如表6所示。

 

6 故障分类正确率

参数值

正常

故障G1

故障G2

故障G3

故障G4

故障G5

总识别率

c=5σ=6

66.67%

100%

100%

100%

66.67%

0

72.22%

c=21σ=14

66.67%

100%

100%

100%

33.33%

0

66.67%

 

3)人工蜂群算法优化的支持向量机故障识别。在进行支持向量机优化并用于故障识别时,将算法中的食物源数量取为NP=20,最大循环次数N=50,终止循环次数Nmc=50,支持向量机两个关键参数的初始搜索范围规定为[0.1 50]。分别将传统人工蜂群算法和改进人工蜂群算法优化后的支持向量机进行柴油机故障诊断,各独立运行5次所得最优分类结果如图4所示,各次故障分类正确率及运行时间如表7所示。

 

7 各次故障分类正确率及运行时间

算法类别

序号

Cσ

故障分类正确率

运行时间/s

传统ABC-SVM

1

C=11.2069,σ=1.2548

88.89%

14.768670

2

C=11.0443,σ=1.1432

88.89%

14.835456

3

C=29.6905,σ=2.0167

88.89%

15.242392

4

C=21.5531,σ=1.2337

88.89%

15.457928

5

C=43.6115,σ=1.5867

88.89%

15.008887

改进ABC-SVM

1

C=8.9736,σ=0.8981

88.89%

5.314123

2

C=23.3782,σ=1.9299

88.89%

5.522724

3

C=42.0172,σ=0.6394

88.89%

5.846548

4

C=39.8706,σ=1.2689

88.89%

5.620188

5

C=23.0627,σ=1.9101

88.89%

5.694991



4 结束语

支持向量机是进行柴油故障识别的一种重要工具,然而其核函数参数和惩罚因子选择的好坏关系到其能否获得较高的分类正确率。本文利用改进人工蜂群算法优化支持向量机相关参数,克服了在使用时其惩罚因子和核函数参数选值的盲目性,并通过柴油机故障诊断实验证明,该方法不仅能够获得较高的故障分类正确率,而且与传统人工蜂群算法相比,大大提高了收敛速度,降低了寻优时间,因此,该方法对于柴油机故障诊断具有重要的应用价值。

参考文献

[1]董安.基于形态滤波和灰色理论的柴油机故障诊断研究[D].中北大学,2014.

[2]马善伟,乐正伟,吕健等.柴油机故障诊断技术综述[J].上海第二工业大学学报,

2008,25(2):122-128.

[3]周序生,耿伟亚.组合算法在柴油机故障诊断的应用仿真[J].计算机仿真,2012,29(9):212-215.

[4] Keerthi SS, L in C J. Asymptotic behaviors of support vector machines with gaussian kernel[J]. Neural computation,2003,15(7) :1667-1689

[5]曲志刚,封皓,靳世久.基于支持向量机的油气管道安全监测信号识别方法[J].天津大学学报,2009,42(5):465-470.

[6] GAO Ciwei, BOMPARD E, NAPOLI R, et al. Price forecast in the competitive electricity

market by support vector machine [J]. Physica A:Statistical Mechanics and Its Applications,

2007,382(1):98-113.

[7]杨志民,刘广利.不确定性支持向量机原理及应用[M].北京:科学出版社,2007.

[8]于明,艾月乔.基于人工蜂群算法的支持向量机参数优化及应用[J].光电子激光,

2012,23(2):374-378.

[9]李秋玲,贾敏智.基于改进ABC算法优化SVM的汽车发动机故障诊断[J].制造业自动

,2014,36(3):57-60.

[10]秦全德,程适,李丽等.人工蜂群算法研究综述[J].智能系统学报,2014,,9(2):127-135.

[11]汪继文,杨丹,邱剑锋等.改进人工蜂群算法求解非线性方程组[J].安徽大学学报(自然科学

),2014,38(3):16-23.

[12] Karaboga D, Basturk B. On the performance of artificial bee colony (ABC) algorithm [J].

Applied Soft Computing, 2008,8(1):687-697.

[13] Gao W, Liu S. Improved artificial bee colony algorithm for global optimization[ J].

Information Processing Letters,

2011,111(17):871-882.

[14] 刘倩雯,刘湘黔.人工蜂群算法研究综述[J].科技创新,2013(13):112-113.

 
 
 
[ 应用案例搜索 ]  [ ]  [ 告诉好友 ]  [ 打印本文 ]  [ 关闭窗口 ]  [ 返回顶部 ]

0条 [查看全部]  网友评论