模糊Petri 网的自适应粒子群优化方法研究*

2019-02-14 06:15原菊梅潘宏侠
火力与指挥控制 2019年12期
关键词:系统可靠性步数全局

原菊梅,潘宏侠

(1.太原工业学院自动化系,太原 030008;2.中北大学机械工程与自动化学院,太原 030051)

0 引言

模糊Petri 网对于专家知识库模糊产生式规则具有较强的表达能力,但是不具有学习能力,模型中的参数大多数是基于专家知识的经验数据,不易获得精确数据。为此,研究者们提出了各种具有学习能力的模糊Petri 网,鲍培明提出基于BP 网络的模糊Petri 网的学习能力[1]。文献[2]结合可靠性计算的特点,提出一种适合于复杂系统可靠性估计的模糊神经Petri 网及其引发规则,并给出了一种分层次分部件的学习算法[2],此算法的收敛速度会和专家知识的精确程度相关,且随着系统的复杂程度增大而变慢。文献[3]利用BP 误差反传计算一阶梯度的特性对FPN 推理过程中的变迁置信度和初始库所可信度进行调节,避免了输入参数的主观性,然后输入相关参数,经过模糊推理,得到评价结果。文献[4]提出采用布谷鸟搜索算法优化BP 模糊Petri网进行故障诊断,首先利用布谷鸟搜索算法的全局搜索功能对网络参数寻优,将得出的全局最优解作为BP 模糊Petri 网的最优初始参数,再用选取的故障样本数据对模糊Petri 网进行学习训练。

粒子群优化(Particle Swarm Optimization,PSO)算法是一种模拟鸟类寻觅食物行为的全局优化算法,收敛速度快是其最大的优点,已被广泛应用于各领域的问题优化中。本文在研究模糊Petri 网对复杂系统可靠性建模和粒子群优化算法基础上,提出一种适合于可靠性估计模糊Petri 网模型参数估计的自适应粒子群优化方法,并以无向网络为例进行系统可靠性的训练学习,证明了所提方法的正确性和合理性。

1 模糊神经Petri 网及其对复杂系统可靠性建模

结合模糊Petri 网的逻辑表达能力、系统可靠性计算方法以及神经网络的学习能力,文献[2]提出适合于系统可靠性估计的模糊神经Petri 网,包括定义、使能条件和引发规则。

1.1 模糊神经Petri 网(Fuzzy neural Petri net ,FNPN)的定义

1.2 复杂系统的可靠性模糊神经Petri 网建模

图1 无向网络图

以无向网络为例进行系统可靠性估计,无向网络的结构如图1 所示,其中,节点1 和节点2 分别为输入节点和输出节点,不考虑节点的失效,仅考虑边的失效。该网络系统具有8 个部件,因此,其专家知识R 可以表示为:

其中:w11+w12=1;w21+w22=1;w31+w32=1;w41+w42=1;w51+w52=1;w61+w62=1;w71+w72=1;w81+w82=1;w91+w92=1;wa1+wa2=1。

该专家系统的模糊神经Petri 网模型表示如下页图2 所示。其中,x1~x8依次表示各部件a,b,c,d,e,f,g,h 的可靠度。各个权值和信任度都是由专家的经验给出。在具有实验数据的情况下可以对其进行学习训练。从而对于不是样本中的数据也可以得到较精确的可靠性估计值。

图2 专家系统R 的FNPN 模型

2 自适应粒子群优化算法

2.1 粒子群优化算法及其各种改进算法

粒子群优化(Particle Swarm Optimization,PSO)算法最大的特点就是其具有较快的收敛速度,从而被广泛应用于各个领域[5]。该算法的基本思想是:首先初始化一组随机的粒子群(即随机解),并确定一个目标函数,然后通过迭代的方法来根据两个当前最优值(一个是每个粒子迄今为止寻找到的最优值,另一个是整个粒子群迄今为止寻找到的最优值)来更新粒子自己,直到找到最优解为止。

基本粒子群优化算法的更新公式如式(1):

在具体问题的求解过程中,研究者们结合各自的实际应用问题,提出了各种改进型的PSO 算法[6-8]。大多是围绕算法中参数的选择而进行改进的,主要是根据迭代步数来改变粒子移动的速度权值和两个加速度系数,且改变的方式是按照事先设定好的规律进行改变的,不具有自适应调整的能力。文献[9]为防止粒子速度太快,增加了最大速度限制值。文献[10]定义了一种新的个体最优和群体最优方法。文献[11-12]结合粒子群优化方法和遗传算法进行泊车系统路径规划。文献[13]在粒子群优化算法中引入收缩因子,以实现算法的快速收敛并避免算法进入局部最优。文献[14]提出一种改进量子粒子算法并将其应用于云计算资源调度策略,采用了自适应机制,通过改变粒子位置更新的惯性权值,提高了算法的全局搜索能力,加快了收敛速度。文献[15]对传统PSO 算法的个体最优和全局最优值上引入一个衰减因子,将其应用于智能家居管理系统负荷优化中,但这种算法中所有粒子的衰减量是一个常量。文献[16]提出一种自适应多种群的PSO算法,通过多个子种群独立进化和自适应重组操作既保持了种群多样性又实现了子种群间的信息共享与交互;同时,通过对粒子历史最优解进行周期性采样与统计来指导算法进行探测操作,其算法偏于繁琐。

2.2 自适应粒子群优化算法

借鉴文献[15-16]的思想,提出一种自适应粒子群优化算法,其基本思想是当粒子离个体最优和全局最优较远时,就以较大的速度向个体最优和全局最优移动,而当其离个体最优和全局最优较近时,就以较小的速度向个体最优和全局最优移动。具体实现就是以粒子中最大的粒子距离为基准,用每个粒子与个体最优和全局最优的距离与基准距离作比较,以此作为每个粒子更新的加速度系数,用公式表示如式(2)。

假设粒子群种群数选为n,训练样本数选为m,则FNPN 的自适应PSO 算法如下:

步骤1:选择自适应PSO 的种群规模n、训练样本集和搜索时间;

步骤2:初始化种子群、个体最优值和全局最优值,并选取合适的适应度函数;

步骤3:根据适应度函数计算各粒子的适应度,确定当前的个体最优值和全局最优值,并计算当前粒子间的最大距离;

步骤4:根据式(2)分别更新各粒子的速度和位置;

步骤5:判断全局最优值的适应度是否满足收敛条件,若条件满足则结束搜索,若条件不满足则返回步骤3。

3 应用举例

对于1.2 中无向网络专家系统R 的FNPN 模型,假设系统中各条边的可靠度分别为,由分解法分解后,再由全概率公式可得系统的可靠度为:

其中,R桥为

随机产生100 组0.8~1 之间的随机数作为各部件的可靠度,利用式(3)和式(4)计算出系统可靠度作为训练样本值,用图2 所示的FNPN 模型作为无向网络的系统可靠度估计模型,用2.2 给出的自适应粒子群优化算法进行FNPN 模型的参数确定,初始种群选择为80 个,迭代步数与平均绝对误差关系如图3 所示,其迭代步数是8 步。随机产生20 组可靠性数据进行模型测试,测试结果如图4 所示,平均绝对误差是0.003 07。

用同样的数据采用PSO 算法进行FNPN 参数的训练学习,迭代步数与平均绝对误差关系如图5所示,其迭代步数是25 步。随机产生20 组可靠性数据进行模型测试,测试结果如图6 所示,平均绝对误差是0.012 61。

图3 自适应PSO 迭代步数与绝对误差关系

图4 自适应PSO 20 组数据测试结果

图5 PSO 迭代步数与绝对误差关系

图6 PSO 20 组数据测试结果

由图3 和图5 比较,图4 和图6 比较可知,本文提出的自适应PSO 算法比基本PSO 算法具有更快的收敛速度,更小的估计误差。而文献[4]中给出的分层次分部件的学习方法所需的训练步数是系统中所有待确定参数的整数倍数,与专家知识和系统的复杂程度相关,对于无向网络对应的图2 模糊专家系统有24 个待定参数,其收敛速度为24 的整数倍数[17]。

4 结论

模糊Petri 网可用于表示专家知识库模糊产生式规则,但不具有学习能力,模型中的参数大多数是基于专家知识的经验数据,不易获得精确数据。模糊神经Petri 网可用于基于结构模糊推理的复杂系统可靠性估计,既具有自动模糊推理能力,又具有学习能力,然而,其学习速度相关于专家知识和系统结构,专家知识越模糊,系统结构越复杂,其学习速度越慢。粒子群优化算法是一种收敛速度较快的全局优化算法,其收敛速度与系统结构无关。本文在基本粒子群优化算法基础上,提出一种适用于模糊Petri 网参数确定的自适应粒子群优化算法,通过无向网络系统的可靠性估计分析,并与基本粒子群优化算法和模糊神经Petri 网方法进行了比较,结 果表明:该自适应粒子群优化算法比基于粒子群优化算法和模糊神经Petri 网方法,具有更快的收敛速度和更小的估计误差。

猜你喜欢
系统可靠性步数全局
基于改进空间通道信息的全局烟雾注意网络
领导者的全局观
大口径舰炮弹药储供系统可靠性研究
楚国的探索之旅
公路山岭隧道施工期衬砌及结构系统可靠性研究
二分搜索算法在全局频繁项目集求解中的应用
微信运动步数识人指南
落子山东,意在全局
国人运动偏爱健走
智能变电站继电保护系统可靠性分析