CN110909802A - 一种基于改进的pso优化pnn平滑因子的故障分类方法 - Google Patents
一种基于改进的pso优化pnn平滑因子的故障分类方法 Download PDFInfo
- Publication number
- CN110909802A CN110909802A CN201911173990.8A CN201911173990A CN110909802A CN 110909802 A CN110909802 A CN 110909802A CN 201911173990 A CN201911173990 A CN 201911173990A CN 110909802 A CN110909802 A CN 110909802A
- Authority
- CN
- China
- Prior art keywords
- fault
- particle
- value
- algorithm
- pnn
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
- G06F18/2415—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on parametric or probabilistic models, e.g. based on likelihood ratio or false acceptance rate versus a false rejection rate
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/047—Probabilistic or stochastic networks
Abstract
本发明涉及故障检测方法技术领域,具体涉及一种基于改进的PSO优化PNN平滑因子的故障分类方法,利用故障样本建立神经网络模型包括:获取已分类正确的样本;将故障样本输入到KPSO‑PNN模型中;训练神经网络模型,直到样本全部正确分类。本专利主要对出现机械故障类型进行判断,概率神经网络主要是解决分类的问题,其中平滑因子σ是在有限的模式样本中提炼出能反映整个样本空间的参数。由于目前σ的取值都是基于经验或有限样本聚类的方法,并不能将空间的概率特性完整地表达出来。基于此,本专利采用卡尔曼粒子群算法对σ进行最优选取,并采用云模型对部分粒子重新生成,加速因子随着迭代步数进行更新,使得粒子具有良好的局部和全局搜索能力,提高了速度的收敛性。
Description
技术领域
本发明涉及故障检测方法技术领域,具体涉及一种基于改进的PSO优化PNN平滑因子的故障分类方法。
背景技术
随着生产制造技术的快速发展,人们对于主动掌握机械,交通,电力,军事,航空等行业设备在工程结构所存在的精确性,安全性和可靠性等各种内在要求逐渐增加。但是许多机械设备的结构变得越来越复杂,这些机械设备由于复杂性和各种运行因素的影响,如:自身磨损,高温高压,超大负荷,化学腐蚀和外部冲击等,其设备的性能和健康状态会随着时间的推移而发生退化,最终导致设备完全失效。所以,对机械设备及系统进行检测和维护也是十分重要的。为了让设备能够更长久的运行,降低设备在工作中出现损坏的几率,从而降低未知损坏以提高企业的利益。生产过程中,企业的关键设备一旦发生故障,不仅会导致生产中断,造成经济上的损失,还可能造成人员伤亡等安全事故。为了保证技术人员的安全和器件合格,要对这些机械设备按时检查。如果定期进行停工检查将会浪费财力物力以及人力。在此,这种故障诊断方法可以节约一定的成本,在不停止生产的前提下进行设备故障诊断,在诊断之后对需要更换或者维修的设备进行停产,确保人员安全和较高的产品质量。
发明内容
为了解决现有技术中人为停工检测机械故障会浪费大量时间和人力的技术问题,本申请提供一种基于改进的PSO优化PNN平滑因子的故障分类方法。
一种基于改进的PSO优化PNN平滑因子的故障分类方法,包括:
获取待分类的故障样本;
将所述故障样本输入到预先建立的故障分类模型函数中,得到所述故障样本的故障类型。
其中,所述故障分类模型函数通过以下方法获取:
采用kalmanPSO算法优化概率神经网络得到初始模型函数;
采用预先分类好的故障样本对所述初始模型函数进行训练,得到所述故障分类模型函数。
其中,Ni总体的样本数;Xik第i类第k个样本;σ平滑因子,其取值为[0,1],X为每个模式单元的输入模式向量;
所述将所述故障样本输入到预先建立的故障分类模型函数中,得到所述故障样本的故障类型包括:
将获取的故障样本输入到所述模型函数中,获取其在各类故障情况下的概率密度函数值,当所述概率密度函数值最大时,输出的故障类别即为当前样本的故障类别;
其中,所述概率密度函数值为:gi(x)=max(gi(x)),则x∈i,i=1,2,3…K,K表示故障的总类别数,即竞争层神经元的个数。
其中,所述改进后的PSO算法通过以下方法获取:
其中,采用kalmanPSO算法优化概率神经网络得到初始模型函数包括:
步骤101:设定粒子群算法的参数,将PNN网络的平滑因子作为粒子,迭代次数为P,种群规模为Q,σ∈[0,1];
步骤102:初始化PNN网络:确定输入层,模式层,求和层和输出层的神经元个数分别为n,m,j,K,确定M个样本作为训练样本,N个样本作为测试样本;
步骤103:将故障数据集输入到概率神经网络中,训练所述初始化PNN网络;
步骤104:判断所述初始化PNN网络是否对所述的故障数据集是否进行正确分类,若是则返回步骤103继续对所述初始化PNN网络继续训练,若否则筛选出未正确分类的样本;
步骤105:将未正确分类的样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子;
步骤106:判断PNN样本输出的损失函数是否小于γ,若是,则根据KPSO算法确定最优的平滑因子,根据该最优的平滑因子确定PNN网络;若否,则通过KPSO算法继续训练网络。
其中yi是实际输出,ti样本输出。
其中,所述通过KPSO算法继续训练网络包括:
步骤201:对粒子速度和位置进行更新,计算粒子群中每个粒子的适应度,选出适应度值最大的粒子和适应度值最小的粒子;
步骤202:判断适应度最小粒子的适应度值是否小于0.25,若是,则采用云模型生成器对粒子群算法中的不满足条件的粒子群重新生成并返回所述步骤201,若是则进行下一步:
步骤203:计算重新生成的粒子群中全部粒子平均适应度值以及种群的适应度方差;
步骤204:确定迭代权重值,通过迭代公式更新粒子群算法中的权重因子和加速因子;
步骤205:根据速度更新公式和位移更新公式更新位置和速度;
步骤206:将更新后的位置和速度输入到所述KPSO-PNN中,并返回到所述步骤105。
其中,所述加速度因子为C1和C2,所述通过迭代公式更新粒子群算法中的加速因子包括:
采用下述线性变化公式对加速度因子为C1和C2进行更新:
其中,Cstart代表加速因子取值的最小值-0.25;Cend代表加速因子取值的最大值0.25,Iter表示总迭代步数,k表示当前迭代步数。
其中,所述将未正确分类的样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子包括:
301;计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成;
302:自适应动态调整惯性权重以提高粒子群算法的局部和全局收敛能力;
303:采用卡尔曼滤波算法优化粒子群算法寻找最优位置和最优速度。
其中,所述计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成包括:
401:计算每个粒子的适应度值fitness,将适应度值最大的粒子定为全局最优值gbest;将适应度最小的粒子定为全局最差值gworst;
402:判断是否满足f[gworst]≥β,则是则返回步骤401继续搜索;若否则进行下一步:
403:计算Ex=gbest,En=gbest,He=γEn
则生成的新粒子满足正态分布:X~N(Ex,σ2)st.σ~N(En,He2)。
其中,所述根据速度更新公式和位移更新公式更新位置和速度包括:
采用下述速度更新公式和位移更新公式对PSO算法的速度和位置进行线性调节,;
其中,表示下一时刻的速度;w表示惯性权重;C1和C2表示加速因子,r1,r2表示随机数,其取值在[0,1];Pbest表示个体极值,Pgbest表示群体极值;xi k表示当前时刻的位置;表示下一时刻的位置。
依据上述实施例的故障分类方法,采用改进后的PSO算法优化概论神经网络得到故障分类模型函数,获取机器运行时的故障样本输入该故障分类模型函数,即可获取当前设备的故障类型。该方法和现有的人为检测的方法相比,检测效率更高,节省了人力成本。
附图说明
图1为本申请实施例的故障分类方法流程图;
图2为本申请实施例的故障分类模型函数获取方法流程图;
图3为本申请的初始模型函数建立方法流程图;
图4为本申请实施例的采用卡尔曼粒子群算法改进概率神经网络方法流程图;
图5为本申请实施例的适应度计算方法流程图;
图6为本申请实施例粒子群惯性权重的动态调整方法流程图;
图7为采用卡尔曼滤波算法优化粒子群算法寻找最优位置和最优速度方法流程图。
具体实施方式
下面通过具体实施方式结合附图对本发明作进一步详细说明。其中不同实施方式中类似元件采用了相关联的类似的元件标号。在以下的实施方式中,很多细节描述是为了使得本申请能被更好的理解。然而,本领域技术人员可以毫不费力的认识到,其中部分特征在不同情况下是可以省略的,或者可以由其他元件、材料、方法所替代。在某些情况下,本申请相关的一些操作并没有在说明书中显示或者描述,这是为了避免本申请的核心部分被过多的描述所淹没,而对于本领域技术人员而言,详细描述这些相关操作并不是必要的,他们根据说明书中的描述以及本领域的一般技术知识即可完整了解相关操作。
另外,说明书中所描述的特点、操作或者特征可以以任意适当的方式结合形成各种实施方式。同时,方法描述中的各步骤或者动作也可以按照本领域技术人员所能显而易见的方式进行顺序调换或调整。因此,说明书和附图中的各种顺序只是为了清楚描述某一个实施例,并不意味着是必须的顺序,除非另有说明其中某个顺序是必须遵循的。
本发明公开一种基于卡尔曼粒子群算法(KPSO)优化概率神经网络(PNN)平滑因子(σ)的故障分类方法。利用故障样本建立神经网络模型包括:获取已分类正确的样本;将故障样本输入到KPSO-PNN模型中;训练神经网络模型,直到样本全部正确分类。
本专利主要对出现机械故障类别进行判断,概率神经网络主要是解决分类的问题,其中平滑因子σ是在有限的模式样本中提炼出能反映整个样本空间的参数。由于目前σ的取值都是基于经验或有限样本聚类的方法,并不能将空间的概率特性完整地表达出来。基于此,本专利采用卡尔曼粒子群算法对σ进行最优选取。更新粒子群中适应度小于0.25的粒子:计算每个粒子的适应度值,将粒子群中适应度值小于0.25的粒子采用云模型进行重新生成。通过云模型完成粒子的进化和变异操作,按照一定的概率分布云滴群,丰富了粒子的多样性。在传统的粒子群算法基础上,加速因子随着迭代步数进行更新。卡尔曼粒子群算法的惯性权重随着迭代步数的增加而动态调整基于随机的惯性权重。这使得粒子具有良好的局部和全局搜索能力,提高了速度的收敛性。通过卡尔曼滤波算法准确计算每个粒子下一次的位置和速度,这样减少了达到最优解所需要的迭代次数。
引入粒子群算法是为了寻找全局最优的平滑因子σ,而不再人为设定,但是在搜寻过程中PSO算法寻找精度低,容易早熟收敛,后期的迭代效率不高。此时对PSO算法进行改进,对PSO的惯性权重调进行调整和加速因子进行线性变化。
本申请的发明点主要包括:
1.采用KPSO对PNN网络中平滑因子的参数进行最优选择。
2.在传统的粒子群算法中引入卡尔曼滤波算法,在经过粒子群算法之后,通过卡尔曼滤波算法可以对最优粒子进行预测,进一步快速找到最优粒子。卡尔曼滤波算法加速了算法的速度。
3.通过计算每次迭代过程中粒子的适应度值来判断是否重新生成粒子。本专利采用云模型对适应度小于0.25的粒子进行重新生成,生成的新粒子满足正态分布,这也反过来为卡尔曼滤波算法提供了计算基础。
4.对传统粒子群算法中的加速因子进行改进。传统的粒子群算法中加速因子都是人为设定的。在本专利中加速因子随着迭代步数的增加而不断更新,这样在预寻优阶段就可以达到良好的效果。
5.对传统粒子群算法的权重进行改进。传统的粒子群算法中惯性权重都是人为设定的。在本专利中,通过计算个体的适应度和群体的适应度对惯性权重进行更新。
本申请对于算法中粒子群的改进主要为以下方面:
(1)通过计算每次迭代过程中粒子的适应度值来判断是否重新生成粒子。采用云模型对适应度小于0.25的粒子进行重新生成,生成的新粒子满足正态分布,这也反过来为卡尔曼滤波算法提供了计算基础。
(2)粒子群惯性权重的动态调整:惯性权重ω体现的是当前粒子继承先前粒子速度的程度。为了解决粒子群算法过早的收敛问题,可以自适应动态调整惯性权重来提高粒子群算法的局部和全局收敛能力。本算法通过求出种群适应度方差,对惯性权重进行更新。
(3)粒子群加速因子的线性变化:随着迭代次数,C1线性减少,C2线性增加能够使得粒子群在开始的时候有较强的全局收敛能力。
以下结合具体的实施例对本发明的故障分类方法进行详细说明。
实施例一:
本实施例提供一种基于改进的PSO优化PNN平滑因子的故障分类方法,如图1,该故障分类方法包括:
步骤1:获取待分类的故障样本;
步骤2:将故障样本输入到预先建立的故障分类模型函数中,得到故障样本的故障类型。
其中,概率神经网络(PNN)的组成包括:
概率神经网络由输入层、模式层、求和层和竞争层组成。
输入层:输入神经元个数是n,这取决于输入向量的维数;
模式层:神经元的个数为m,计算输入向量和训练样本之间的匹配关系,每个模式单元的输出为:
其中,X为每个模式单元的输入模式向量,Wi为输入层与模式层间的权值,σ为分类平滑因子,通常为一常数,其取值在[0,1]
求和层:神经元个数为p,求和层是将属于某类的概率累计,按式(1)计算,从而得到估计概率密度函数。
竞争层:神经元的个数为K个,K取决于分类的类别数。输出层神经元是一种竞争神经元,它接收从求和层输出的各类概率密度函数。
步骤2中,故障分类模型函数为:
其中,Ni总体的样本数;Xik第i类第k个样本;σ平滑因子,其取值为[0,1],X为每个模式单元的输入模式向量;
其中,将所述故障样本输入到预先建立的故障分类模型函数中,得到所述故障样本的故障类型包括:
将获取的故障样本输入到所述模型函数中,获取其在各类故障情况下的概率密度函数值,当所述概率密度函数值最大时,输出的故障类别即为当前样本的故障类别;
其中,概率密度函数值为:gi(x)=max(gi(x)),则x∈i,i=1,2,3…K,K表示故障的总类别数,即竞争层神经元的个数。
其中,如图2,故障分类模型函数通过以下方法获取:
步骤10:采用kalmanPSO算法优化概率神经网络得到初始模型函数;
本实施例中为了寻找全局最优的平滑因子σ,引入粒子群算法,采用该粒子群算法,平滑因子σ不再人为设定。但是由于在搜寻过程中PSO算法寻找精度低,容易早熟收敛,后期的迭代效率不高。因此此时对PSO算法进行改进,对PSO的惯性权重调进行调整和加速因子进行线性变化。
其中,本实施中引入粒子群算法是为了寻找全局最优的平滑因子,而不再人为设定。但是在搜寻过程中PSO算法寻找精度低,容易早熟收敛,后期的迭代效率不高。此时对PSO算法进行改进,通过引入卡尔曼滤波算法对粒子群算法的惯性权重和搜索最优位置和速度进行改进,粒子群算法速度和位置更新公式为:
其中,表示下一时刻的速度;w表示惯性权重;C1和C2表示加速因子,r1,r2表示随机数,其取值在[0,1];Pbest表示个体极值,Pgbest表示群体极值;xi k表示当前时刻的位置;表示下一时刻的位置。
步骤11:采用预先分类好的故障样本对初始模型函数进行训练,得到故障分类模型函数。
其中,如图3,采用kalmanPSO算法优化概率神经网络得到初始模型函数具体包括:
步骤101:设定粒子群算法的参数,将PNN网络的平滑因子作为粒子,迭代次数为P,种群规模为Q,σ∈[0,1];
步骤102:初始化PNN网络:确定输入层,模式层,求和层和输出层的神经元个数分别为n,m,j,K,确定M个样本作为训练样本,N个样本作为测试样本;
步骤103:将故障数据集输入到概率神经网络中,训练所述初始化PNN网络;
步骤104:判断所述初始化PNN网络是否对所述故障数据集是否进行正确分类,若是则返回步骤103继续对所述初始化PNN网络继续训练,若否则筛选出未正确分类的样本;
步骤105:将未正确分类的样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子;
其中yi是实际输出,ti样本输出。
步骤106:判断PNN样本输出的损失函数是否小于γ,若是,则根据KPSO算法确定最优的平滑因子,根据该最优的平滑因子确定PNN网络;若否,则通过KPSO算法继续训练网络。
其中,加速度因子为C1和C2,通过迭代公式更新粒子群算法中的加速因子包括:
采用下述线性变化公式对加速度因子为C1和C2进行更新:
其中,Cstart代表加速因子取值的最小值-0.25;Cend代表加速因子取值的最大值0.25,Iter表示总迭代步数,k表示当前迭代步数。
其中yi是实际输出,ti样本输出。
其中,所述通过KPSO算法继续训练网络包括:
步骤201:对粒子速度和位置进行更新,计算粒子群中每个粒子的适应度,选出适应度值最大的粒子和适应度值最小的粒子;
步骤202:判断适应度最小粒子的适应度值是否小于0.25,若是,则采用云模型生成器对粒子群算法中的不满足条件的粒子群重新生成并返回所述步骤201,若是则进行下一步:
步骤203:计算重新生成的粒子群中全部粒子平均适应度值以及种群的适应度方差;
步骤204:确定迭代权重值,通过迭代公式更新粒子群算法中的权重因子和加速因子;
步骤205:根据速度更新公式和位移更新公式更新位置和速度;
步骤206:将更新后的位置和速度输入到所述KPSO-PNN中,并返回到所述步骤105。
其中,所述将未正确分类的样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子包括:
301;计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成;这样可以极大地提高粒子群算法的搜索能力。在粒子群算法中,由于坏粒子不满足最优解的要求,但在算法的驱动下,一开始就会驱动坏粒子去寻找最优位置。这样的迭代过程会浪费很多时间,增加计算效率。为此,通过将适应度值小于β的粒子重置,增加搜索的范围和减少搜索量。
302:自适应动态调整惯性权重以提高粒子群算法的局部和全局收敛能力;惯性权重ω体现的是当前粒子继承先前粒子速度的程度。为了解决粒子群算法过早的收敛问题,可以自适应动态调整惯性权重来提高粒子群算法的局部和全局收敛能力。
本算法通过求出种群适应度方差,对惯性权重进行更新。
其中,种群适应度方差:其中:F={max(|fi-favg|)}fi是第i个粒子的适应度值,favg整个种群适应度值的平均值,F是在第i个粒子的适应度值和整个种群适应度值的平均值中取较大者,从而进行数据归一化。
更新权重的迭代公式:ω(k)=λω(k-1)+(1-λ)σ2
其中,λ是遗忘因子,它的取值设为0.9。
303:采用卡尔曼滤波算法优化粒子群算法寻找最优位置和最优速度。使用卡尔曼滤波计算每个粒子下一个时刻的位置和速度。邻域中最好位置被用来观测每个时刻的步长,然后通过预测产生新的位置和速度。
其中,所述计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成包括:
401:计算每个粒子的适应度值fitness,将适应度值最大的粒子定为全局最优值gbest;将适应度最小的粒子定为全局最差值gworst;
402:判断是否满足f[gworst]≥β,则是则返回步骤401继续搜索;若否则进行下一步:
403:计算Ex=gbest,En=gbest,He=γEn
则生成的新粒子满足正态分布:X~N(Ex,σ2)st.σ~N(En,He2)。
判断更新粒子中是否存在适应度小于β的粒子
确定适应度函数为Ackley函数:
在-5≤xi≤5,i=1,2使得minf(x1,x2)。
本申请采用改进的PSO对PNN网络中平滑因子的参数进行最优选。对PSO网络的惯性权重,加速因子进行动态调整获取最优,加入自适应变异粒子扩大搜索范围。现有技术中只是简单运用PSO算法,而未进行改进。有部分将改进的PSO与PNN结合,为了搜寻更优的网络结构和初值,而不是优化PNN的平滑因子。因此本申请基于改进的PSO优化PNN平滑因子的故障分类方法,对于故障分类的结果更加准确。
实施例2:
以下结合本实施例对本申请的上述创造点进行详细的说明:
(1)引入粒子群算法是为了寻找全局最优的平滑因子,而不再人为设定。但是在搜寻过程中PSO算法寻找精度低,容易早熟收敛,后期的迭代效率不高。此时对PSO算法进行改进,通过引入卡尔曼滤波算法对粒子群算法的惯性权重和搜索最优位置和速度进行改进。具体如图4,包括:
第一步:设定PNN网络各层神经元个数,确定输入层,模式层,求和层和输出层的神经元个数分别为n,m,j,K,确定M个样本作为训练样本,N个样本作为测试样本;
第二步:采用KPSO优化PNN网络中的平滑因子。
第三步:输出最优平滑因子的值;
第四步:根据该最优平滑因子的值确定最终PNN参数。
其中,表示下一时刻的速度;w表示惯性权重;C1和C2表示加速因子,r1,r2表示随机数,其取值在[0,1];Pbest表示个体极值,Pgbest表示群体极值;xi k表示当前时刻的位置;表示下一时刻的位置。
(2)粒子群加速因子的线性变化:随着迭代次数,C1线性减少,C2线性增加能够使得粒子群在开始的时候有较强的全局收敛能力。
Cstart代表加速因子取值的最小值-0.25;Cend代表加速因子取值的最大值0.25,Iter表示总迭代步数,k表示当前迭代步数。
(3)计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成,这样可以极大地提高粒子群算法的搜索能力。在粒子群算法中,由于坏粒子不满足最优解的要求,但在算法的驱动下,一开始就会驱动坏粒子去寻找最优位置。这样的迭代过程会浪费很多时间,增加计算效率。为此,通过将适应度值小于β的粒子重置,增加搜索的范围和减少搜索量。如图5,具体包括以下步骤:
①计算每个粒子的适应度值fitness,将适应度值最大的粒子定为全局最优值gbest;将适应度最小的粒子定为全局最差值gworst;
②判断如果f[gworst]≥β,则继续搜索
③判断如果f[gworst]<β,则:计算Ex=gbest,En=gbest,He=γEn
生成的新粒子满足正态分布:X~N(Ex,σ2)st.σ~N(En,He2)
④判断更新粒子中是否存在适应度小于β的粒子
确定适应度函数为Ackley函数:
在-5≤xi≤5,i=1,2使得minf(x1,x2)
(4)粒子群惯性权重的动态调整:惯性权重ω体现的是当前粒子继承先前粒子速度的程度。为了解决粒子群算法过早的收敛问题,可以自适应动态调整惯性权重来提高粒子群算法的局部和全局收敛能力。
本算法通过求出种群适应度方差,对惯性权重进行更新,如图6,具体包括:
fi是第i个粒子的适应度值,favg整个种群适应度值的平均值,F是在第i个粒子的适应度值和整个种群适应度值的平均值中取较大者,从而进行数据归一化。
更新权重的迭代公式:ω(k)=λω(k-1)+(1-λ)σ2
λ是遗忘因子,它的取值设为0.9。
(5)采用卡尔曼滤波算法优化粒子群算法寻找最优位置和最优速度:使用卡尔曼滤波计算每个粒子下一个时刻的位置和速度。邻域中最好位置被用来观测每个时刻的步长,然后通过预测产生新的位置和速度。具体流程如图7所示。
采用下述速度更新公式和位移更新公式对PSO算法的速度和位置进行线性调节,避免PSO算法过早收敛;
其中,表示下一时刻的速度;w表示惯性权重;C1和C2表示加速因子,r1,r2表示随机数,其取值在[0,1];Pbest表示个体极值,Pgbest表示群体极值;xi k表示当前时刻的位置;表示下一时刻的位置。
本实施例中,概率神经网络由输入层,模式层,求和层和竞争层组成。
其中,输入层:输入神经元个数是n,这取决于输入向量的维数。输入层的向量与加权系数相乘,将结果送入模式层。
模式层:神经元的个数为m。计算输入向量和训练样本之间的匹配关系,每个模式单元的输出为:
其中,X为每个模式单元的输入模式向量,Wi为输入层与模式层间的权值,σ为分类平滑因子,通常为一常数,取值在[0,1];
求和层:神经元个数为p,求和层是将属于某类的概率累计,按式(1)计算,从而得到估计概率密度函数。
Ni总体的样本数;Xik第i类第k个样本;σ平滑因子。
竞争层:神经元的个数为K个。K取决于分类的类别数。输出层神经元是一种竞争神经元,它接收从求和层输出的各类概率密度函数。
输出层:取求和层中最大的一个作为输出类别:
判别依据:y(x)=max(gi(x)),则x∈i,i=1,2,3…K
本实施例中粒子群算法为:
引入粒子群算法是为了寻找全局最优的平滑因子σ,而不再人为设定。但是在搜寻过程中PSO算法寻找精度低,容易早熟收敛,后期的迭代效率不高。此时对PSO算法进行改进,通过引入卡尔曼滤波算法对粒子群算法的惯性权重和搜索最优位置和速度进行改进。
本实施例中,如图3,Kalman-PSO-PNN算法具体包括以下步骤:
(1)设定粒子群算法的参数:将概率神经网络的平滑因子作为粒子,迭代次数为P,种群规模为Q,适应度函数为Griewank函数,σ∈[0,1]
(2)初始化PNN网络:确定输入层,模式层,求和层和输出层的神经元个数分别为n,m,j,K,确定M个样本作为训练样本,N个样本作为测试样本
(3)将初始化的粒子(平滑因子)输入到概率神经网络中,作为参数训练参数。
(4)计算粒子群中每个粒子的适应度,选出适应度值最大的粒子和适应度值最小的粒子
(5)判断:适应度最小粒子的适应度值是否小于0.25。若满足条件,则采用云模型生成器对粒子群算法中的不满足条件的粒子重新生成
(6)计算粒子群算法中全体粒子平均适应度值,再计算种群适应度方差。
(7)通过迭代公式更新粒子群算法中权重。
(8)更新加速因子C1,C2
(9)采用粒子群算法迭代,确定最优粒子的位置和速度。
(10)将最优粒子的速度和位置输入到卡尔曼滤波算法中确定更新最优粒子的位置和速度。
(11)将最优粒子(最优平滑因子)输入到概率神经网络中
(12)训练PNN,挑选出未正确分类的样本
(13)将未正确分类的T个样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子。
(14)判断PNN样本输出的损失函数是否小于γ,若不满足,则通过KPSO算法继续训练网络
(15)若满足条件,则算法停止。根据KPSO算法确定最优的平滑因子。
(16)确定满足要求的概率神经网络。
以上应用了具体个例对本发明进行阐述,只是用于帮助理解本发明,并不用以限制本发明。对于本发明所属技术领域的技术人员,依据本发明的思想,还可以做出若干简单推演、变形或替换。
Claims (10)
1.一种基于改进的PSO优化PNN平滑因子的故障分类方法,其特征在于,包括:
获取待分类的故障样本;
将所述故障样本输入到预先建立的故障分类模型函数中,得到所述故障样本的故障类型。
2.如权利要求1所述的故障分类方法,其特征在于,所述故障分类模型函数通过以下方法获取:
采用kalmanPSO算法优化概率神经网络得到初始模型函数;
采用预先分类好的故障样本对所述初始模型函数进行训练,得到所述故障分类模型函数。
4.如权利要求3所述的故障分类方法,其特征在于,所述采用kalmanPSO算法优化概率神经网络得到初始模型函数包括:
步骤101:设定粒子群算法的参数,将PNN网络的平滑因子作为粒子,迭代次数为P,种群规模为Q,σ∈[0,1];
步骤102:初始化PNN网络:确定输入层,模式层,求和层和输出层的神经元个数分别为n,m,j,K,确定M个样本作为训练样本,N个样本作为测试样本;
步骤103:将故障数据集作为样本输入到概率神经网络中,训练所述初始化PNN网络;
步骤104:判断所述初始化PNN网络是否对所述训练参数进行正确分类,若是则返回步骤103继续对所述初始化PNN网络继续训练,若否则筛选出未正确分类的样本;
步骤105:将未正确分类的样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子;
步骤106:判断PNN样本输出的损失函数是否小于γ,若是,则根据KPSO算法确定最优的平滑因子,根据该最优的平滑因子确定PNN网络;若否,则通过KPSO算法继续训练网络。
6.如权利要求5所述的故障分类方法,其特征在于,所述通过KPSO算法继续训练网络包括:
步骤201:对粒子速度和位置进行更新,计算粒子群中每个粒子的适应度,选出适应度值最大的粒子和适应度值最小的粒子;
步骤202:判断适应度最小粒子的适应度值是否小于0.25,若是,则采用云模型生成器对粒子群算法中的不满足条件的粒子群重新生成并返回所述步骤201,若是则进行下一步:
步骤203:计算重新生成的粒子群中全部粒子平均适应度值以及种群的适应度方差;
步骤204:确定迭代权重值,通过迭代公式更新粒子群算法中的权重因子和加速因子;
步骤205:根据速度更新公式和位移更新公式更新位置和速度;
步骤206:将更新后的位置和速度输入到所述KPSO-PNN中,并返回到所述步骤105。
8.如权利要求7所述的故障分类方法,其特征在于,所述将未正确分类的样本输入到KPSO-PNN中,计算损失函数值,更新最优平滑因子包括:
301;计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成;
302:自适应动态调整惯性权重以提高粒子群算法的局部和全局收敛能力;
303:采用卡尔曼滤波算法优化粒子群算法寻找最优位置和最优速度。
9.如权利要求8所述的故障分类方法,其特征在于,所述计算迭代过程中每个粒子的适应度,选择出适应度值小于0.25的粒子作为较差的粒子采用云模型重新生成包括:
401:计算每个粒子的适应度值fitness,将适应度值最大的粒子定为全局最优值gbest;将适应度最小的粒子定为全局最差值gworst;
402:判断是否满足f[gworst]≥β,则是则返回步骤401继续搜索;若否则进行下一步:
403:计算Ex=gbest,En=2gbest,He=γEn;
则生成的新粒子满足正态分布:X~N(Ex,σ2)st.σ~N(En,He2)。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911173990.8A CN110909802A (zh) | 2019-11-26 | 2019-11-26 | 一种基于改进的pso优化pnn平滑因子的故障分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911173990.8A CN110909802A (zh) | 2019-11-26 | 2019-11-26 | 一种基于改进的pso优化pnn平滑因子的故障分类方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110909802A true CN110909802A (zh) | 2020-03-24 |
Family
ID=69819548
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911173990.8A Pending CN110909802A (zh) | 2019-11-26 | 2019-11-26 | 一种基于改进的pso优化pnn平滑因子的故障分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110909802A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797937A (zh) * | 2020-07-15 | 2020-10-20 | 东北大学 | 一种基于pnn网络的温室环境评估方法 |
CN112308229A (zh) * | 2020-11-26 | 2021-02-02 | 西安邮电大学 | 基于自组织映射的动态多目标演化优化方法 |
CN112529683A (zh) * | 2020-11-27 | 2021-03-19 | 百维金科(上海)信息科技有限公司 | 一种基于cs-pnn的客户信贷风险的评估方法及系统 |
CN113516066A (zh) * | 2021-07-05 | 2021-10-19 | 内蒙古工业大学 | 电能质量扰动信号分类方法、装置、存储介质和电子设备 |
CN113990017A (zh) * | 2021-11-21 | 2022-01-28 | 特斯联科技集团有限公司 | 基于pnn神经网络的森林草原火灾预警系统及方法 |
CN116203365A (zh) * | 2023-05-05 | 2023-06-02 | 南昌工程学院 | 基于野马算法优化pnn的gis设备局部放电检测方法 |
CN116626548A (zh) * | 2023-05-31 | 2023-08-22 | 国网甘肃省电力公司经济技术研究院 | 一种基于issa-pnn的变压器绕组变形诊断方法 |
CN117574213A (zh) * | 2024-01-15 | 2024-02-20 | 南京邮电大学 | 一种基于apso-cnn的网络流量分类方法 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106327357A (zh) * | 2016-08-17 | 2017-01-11 | 深圳先进技术研究院 | 一种基于改进概率神经网络的负载识别方法 |
CN106548230A (zh) * | 2016-10-14 | 2017-03-29 | 云南电网有限责任公司昆明供电局 | 基于改进粒子群优化神经网络的变压器故障诊断方法 |
US20170153294A1 (en) * | 2015-12-01 | 2017-06-01 | Dell Products, L.P. | Safety-compliant psu fault diagnosis mechanism to reduce psu field returns |
CN110363277A (zh) * | 2019-07-15 | 2019-10-22 | 南京工业大学 | 基于改进的萤火虫算法优化概率神经网络的电力变压器故障诊断方法及系统 |
-
2019
- 2019-11-26 CN CN201911173990.8A patent/CN110909802A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170153294A1 (en) * | 2015-12-01 | 2017-06-01 | Dell Products, L.P. | Safety-compliant psu fault diagnosis mechanism to reduce psu field returns |
CN106327357A (zh) * | 2016-08-17 | 2017-01-11 | 深圳先进技术研究院 | 一种基于改进概率神经网络的负载识别方法 |
CN106548230A (zh) * | 2016-10-14 | 2017-03-29 | 云南电网有限责任公司昆明供电局 | 基于改进粒子群优化神经网络的变压器故障诊断方法 |
CN110363277A (zh) * | 2019-07-15 | 2019-10-22 | 南京工业大学 | 基于改进的萤火虫算法优化概率神经网络的电力变压器故障诊断方法及系统 |
Non-Patent Citations (2)
Title |
---|
范俊辉等: "基于改进PSO优化PNN网络的变压器故障诊断方法", 《测控技术》 * |
黄天戍等: "基于Kalman滤波器原理的PSO算法", 《计算机工程与应用》 * |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111797937A (zh) * | 2020-07-15 | 2020-10-20 | 东北大学 | 一种基于pnn网络的温室环境评估方法 |
CN111797937B (zh) * | 2020-07-15 | 2023-06-13 | 东北大学 | 一种基于pnn网络的温室环境评估方法 |
CN112308229B (zh) * | 2020-11-26 | 2023-11-24 | 西安邮电大学 | 基于自组织映射的动态多目标演化优化方法 |
CN112308229A (zh) * | 2020-11-26 | 2021-02-02 | 西安邮电大学 | 基于自组织映射的动态多目标演化优化方法 |
CN112529683A (zh) * | 2020-11-27 | 2021-03-19 | 百维金科(上海)信息科技有限公司 | 一种基于cs-pnn的客户信贷风险的评估方法及系统 |
CN113516066A (zh) * | 2021-07-05 | 2021-10-19 | 内蒙古工业大学 | 电能质量扰动信号分类方法、装置、存储介质和电子设备 |
CN113516066B (zh) * | 2021-07-05 | 2023-08-08 | 内蒙古工业大学 | 电能质量扰动信号分类方法、装置、存储介质和电子设备 |
CN113990017A (zh) * | 2021-11-21 | 2022-01-28 | 特斯联科技集团有限公司 | 基于pnn神经网络的森林草原火灾预警系统及方法 |
CN113990017B (zh) * | 2021-11-21 | 2022-04-29 | 特斯联科技集团有限公司 | 基于pnn神经网络的森林草原火灾预警系统及方法 |
CN116203365A (zh) * | 2023-05-05 | 2023-06-02 | 南昌工程学院 | 基于野马算法优化pnn的gis设备局部放电检测方法 |
CN116626548A (zh) * | 2023-05-31 | 2023-08-22 | 国网甘肃省电力公司经济技术研究院 | 一种基于issa-pnn的变压器绕组变形诊断方法 |
CN116626548B (zh) * | 2023-05-31 | 2024-02-23 | 国网甘肃省电力公司经济技术研究院 | 一种基于issa-pnn的变压器绕组变形诊断方法 |
CN117574213A (zh) * | 2024-01-15 | 2024-02-20 | 南京邮电大学 | 一种基于apso-cnn的网络流量分类方法 |
CN117574213B (zh) * | 2024-01-15 | 2024-03-29 | 南京邮电大学 | 一种基于apso-cnn的网络流量分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110909802A (zh) | 一种基于改进的pso优化pnn平滑因子的故障分类方法 | |
CN110929918B (zh) | 一种基于CNN和LightGBM的10kV馈线故障预测方法 | |
CN110361176B (zh) | 一种基于多任务特征共享神经网络的智能故障诊断方法 | |
CN113256066B (zh) | 基于PCA-XGBoost-IRF的作业车间实时调度方法 | |
CN111539515B (zh) | 一种基于故障预测的复杂装备维修决策方法 | |
CN109141847B (zh) | 一种基于mscnn深度学习的飞机系统故障诊断方法 | |
Yin et al. | Wasserstein generative adversarial network and convolutional neural network (WG-CNN) for bearing fault diagnosis | |
CN112580263B (zh) | 基于时空特征融合的涡扇发动机剩余使用寿命预测方法 | |
CN110609524B (zh) | 一种工业设备剩余寿命预测模型及其构建方法和应用 | |
CN111652461A (zh) | 基于sae-hmm的航空发动机连续健康状态评估方法 | |
CN112782591A (zh) | 基于多电池数据融合的锂电池soh长期预测方法 | |
CN109740859A (zh) | 基于主成分分析法和支持向量机的变压器状态评估方法及系统 | |
CN111199252A (zh) | 一种电力通信网络智能运维系统的故障诊断方法 | |
CN110794308B (zh) | 列车电池容量预测方法及装置 | |
CN112132102B (zh) | 一种深度神经网络结合人工蜂群优化的智能故障诊断方法 | |
CN110363230A (zh) | 基于加权基分类器的stacking集成污水处理故障诊断方法 | |
CN111079926A (zh) | 基于深度学习的具有自适应学习率的设备故障诊断方法 | |
CN114169254A (zh) | 基于短期建筑能耗预测模型的异常能耗诊断方法及系统 | |
CN114841076A (zh) | 基于时空图模型的动力电池生产工艺波动异常检测方法 | |
CN105741184B (zh) | 一种变压器状态评估方法及装置 | |
CN110782083A (zh) | 基于深度Croston方法的航空发动机备用需求预测方法 | |
CN111400964B (zh) | 一种故障发生时间预测方法及装置 | |
CN113177357A (zh) | 一种电力系统暂态稳定评估方法 | |
CN117370766A (zh) | 一种基于深度学习的卫星任务规划方案评估方法 | |
CN111091141B (zh) | 一种基于分层Softmax的光伏背板故障诊断方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200324 |