基于多目标遗传规划算法的序贯测试优化方法技术

技术编号:15391953 阅读:90 留言:0更新日期:2017-05-19 05:02
本发明专利技术公开了一种基于多目标遗传规划算法的序贯测试优化方法,首先初始化得到故障诊断树种群,采用多目标遗传规划的方法对故障诊断树进行选择、交叉和变异,在每代迭代时,对故障诊断树个体进行分组,每个个体的适应度由分组适应度和拥挤距离计算得到,经过多次迭代后从最终代种群中选择非支配的个体作为本系统序贯测试的非支配故障诊断树。本发明专利技术可以得到存在多个测试指标作为优化目标的序贯测试的故障诊断树的Pareto最优解,供系统测试人员选择,从而为系统测试人员提供指导。

Sequential test optimization method based on multi-objective genetic programming algorithm

The invention discloses a sequential test of multi-objective optimization method based on genetic programming algorithm, first initialize fault diagnosis on the fault diagnosis tree species, selection, crossover and mutation by using the method of multi-objective genetic programming, in each generation iteration, grouping of fault diagnosis tree individuals, each individual fitness by group fitness and crowding distance is calculated, after several iterations from the final generation population of non dominated individuals selected as non dominated fault diagnosis tree of the system of sequential test. The invention can obtain the Pareto optimal solution of the fault diagnosis tree with multiple test indexes as the sequential test of the optimization target, which can be selected by the system test personnel, so as to provide guidance for the system testers.

【技术实现步骤摘要】
基于多目标遗传规划算法的序贯测试优化方法
本专利技术属于电子系统故障诊断
,更为具体地讲,涉及一种基于多目标遗传规划算法的序贯测试优化方法。
技术介绍
在电子系统故障诊断技术中,序贯测试问题被定义为一个五元组问题(S,P,T,C,D)。其中,S={s0,s1,s2,…,sM}表示系统故障状态的有限集,其中s0表示系统没有故障发生的状态,s1到sM表示系统发生不同故障的状态。P={p0,p1,p2,…,pM}是各个系统状态发生的先验故障概率向量。假设系统只能处于某个故障状态或无故障状态,需要对先验故障概率向量P进行归一化。T={t1,t2,…,tN}是系统N个可用的测试集合。C={c1,c2,…,cN}表示对应的测试代价向量,其中测试代价采用测试时间、测试费用及其他相关因素进行衡量。D是一个N×(M+1)阶的0-1矩阵,其每个元素代表测试与系统故障的关系,被定义为故障-测试依赖矩阵。对于测试tj,如果tj能诊断出故障状态si,那么dij=1,否则dij=0,其中i=0,1,…,M,j=1,2,…,N。显然对于无故障状态s0,对任意j,均有d0j=0。在单目标序贯测试问题中,测试时间、测试费用等测试相关的参数都被归一化为测试代价C,然而在实际生产中,部分系统在对于不同测试指标上(例如测试时间、测试费用)的需求不一定一致,即在不同优化目标存在不一致并很有可能产生冲突,因此需要找出符合条件的一组最优解可以兼顾系统对于不同测试指标的需求,该问题实质上是一个多目标优化问题。在实际应用中,人们经常会遇到多目标设计和决策的问题。为了解决多目标优化问题,为其建立了一个通用的数学模型。首先要确定它的决策变量,一般情况下,可把决策变量X看作n维欧氏空间En的一个点,也即:X=(x1,x2,...,xn)∈En该决策变量满足以下约束条件:gi(x)≤0,i=1,2,…,Phj(x)=0,j=1,2,…,Q其中,gi(x)≤0表示第i个不等式约束,P表示不等式约束的数量,hj(x)=0表示第j个等式约束,Q表示等式约束的数量。假设有R个优化目标,且各个优化目标fr(X)之间相互冲突,r=1,2,…,R,整体优化目标可表示为:寻求使在满足约束gi(x)≤0和hj(x)=0的同时达到最优。在大多数情况下,由于多目标优化问题的各个目标是相互冲突的,一个子目标的改善有可能会引起其它子目标性能的降低,要想使得多个目标同时达到最优是不可能的,因而在求解多目标优化问题时只能对各个子目标进行协调和折中处理,使各个子目标函数都尽可能地达到最优。多目标优化问题与单目标优化问题有着本质的区别,多目标优化中的最优解,通常称之为Pareto(帕累托)最优解。设Xp和Xq是任意两个同时满足约束gi(x)≤0和hj(x)=0的不同解,称Xp支配Xq,则必须满足下列二个条件:(1)对所有的子目标,Xp不比Xq差,即fr(Xp)≤fr(Xq);(2)至少存在一个子目标,使Xp比Xq好,即使得fr′(Xp)<fr(Xq)。在多目标优化问题的所有可行解中,若存在某个解,该解未被其他解支配,这个解称为Pareto最优解(非支配解)。理论上,多目标优化算法在找到一个Pareto最优解后就可以停止,但一个问题通常会有多个Pareto最优解,决策者需要根据实际情况选出最合适的Pareto最优解,因此多目标优化问题的目标就是找出所有的Pareto最优解。遗传算法是一类模拟生物自然选择和自然进化的随机搜索算法,具有隐含的并行性和在全局解空间进行搜索的能力,它一次运行便能得到一组最优解,遗传规划是遗传算法的扩展,是一种搜索寻优技术,主要通过效仿生物的进化和遗传,根据优胜劣汰的原则,使所要解决的问题从初始解一步步地逼近最优解,主要进化过程为种群初始化、挑选、交叉和变异。遗传规划中的个体一般表现为树状结构,有着灵活处理结构和大小不预先确定问题的优点,一般常用于解决符号回归问题。序贯测试问题中的故障诊断树和遗传规划个体表达都是采用二叉树形结构来表示的,因此可以遗传规划来解决序贯测试问题的方法。在公开号为“CN105629156A”的专利中,就公开了一种“基于遗传规划的模拟电路故障测试最优序贯搜索方法”,在该方法中将模拟电路的故障诊断树看成遗传规划的一个个体,然后采用遗传规划的算法来进化求出最优个体解。然而该方法中只考虑了测试代价一个优化目标,无法适用于存在多个测试指标作为优化目标的系统,需要进一步的改进。
技术实现思路
本专利技术的目的在于克服现有技术的不足,提供一种基于多目标遗传规划算法的序贯测试优化方法,针对存在多个测试指标作为优化目标的系统,求取序贯测试的故障诊断树的Pareto最优解,为系统测试人员提供指导。为实现上述专利技术目的,本专利技术基于多目标遗传规划算法的序贯测试优化方法包括以下步骤:S1:根据系统的测试依赖矩阵随机生成H个故障诊断树,H的大小根据需要确定;S2:令迭代次数w=1;S3:分别计算种群中每个个体的测试指标值Fhr,h=1,2,…,H,r=1,2,…,R,R表示测试指标的数量;根据测试指标值Fhr对种群中的个体进行分组,分组的具体步骤包括:S3.1:初始化集合A等于当前种群,令分组序号v=1;S3.2:从集合A中搜索每个测试指标值Fhr极值对应的个体,如果测试指标的优化目标是尽可能大,则选择最大值对应的个体,如果测试指标的优化目标是尽可能小,则选择最小值对应的个体;S3.3:从集合A中筛选出未被测试指标值Fhr极值支配的个体;S3.4:将本轮筛选中步骤S3.2和步骤S3.3得到的个体构成第v个分组,并将该分组中的个体从集合A中删除;S3.5:判断是否集合A为空,如果是,分组结束,否则进入步骤S3.6;S3.6:令v=v+1,返回步骤S3.2;S4:计算当前种群中每个个体的适应度值λh=αh-0.5βh,其中αh=0.5(V-vh+1),vh表示个体h所属的分组序号,Gh表示个体h所属分组中除该个体以外其他个体构成的集合,γhh′表示拥挤距离,其计算公式如下:其中,δshare表示预设距离阈值,h′∈Gh;S5:根据步骤S4计算的各个个体的适应度,选择得到父个体集合;S6:将父个体集合中的个体随机分为H/2组,然后以组为单位,比较每组中的两个个体是否存在故障集相同的结点,如果某组中的两个个体不存在故障集相同的结点,则该组不进行交叉操作,如果某组中的两个个体存在故障集相同的结点,首先删除大小等于M-1或等于1的相同故障集,M表示故障集S中故障数量,在剩余的相同故障集中任意选择一个故障集,交换该故障集结点及其子树;S7:对交叉后得到的个体进行变异操作,其变异方法为:对于种群中的每个个体,随机选择一个节点,若该节点只包含一个故障,则重新选择,若该节点包含若干个故障且有能分割对应故障集的可用测点,则从该节点的可用测点中随机选择一个与之前使用过的测点都不相同的测点,将以该节点为根节点的子树从故障诊断树中删除,用新选出的测点重新生成相应的子树;S8:判断是否w<W,W表示最大迭代次数,如果是,进入步骤S9,否则进入步骤S10;S9:令w=w+1,返回步骤S3;S10:从最终代种群中搜索每个测试指标值Fhr极值对应的个体,再筛选出未被测试指标值Fhr极值支配的个体,作为本文档来自技高网
...
基于多目标遗传规划算法的序贯测试优化方法

【技术保护点】
一种基于多目标遗传规划算法的序贯测试优化方法,其特征在于,包括以下步骤:S1:根据系统的测试依赖矩阵随机生成H个故障诊断树,H的大小根据需要确定;S2:令迭代次数w=1;S3:分别计算种群中每个个体的测试指标值F

【技术特征摘要】
1.一种基于多目标遗传规划算法的序贯测试优化方法,其特征在于,包括以下步骤:S1:根据系统的测试依赖矩阵随机生成H个故障诊断树,H的大小根据需要确定;S2:令迭代次数w=1;S3:分别计算种群中每个个体的测试指标值Fhr,h=1,2,…,H,r=1,2,…,R,R表示测试指标的数量;根据测试指标值Fhr对种群中的个体进行分组,分组的具体步骤包括:S3.1:初始化集合A等于当前种群,令分组序号v=1;S3.2:从集合A中搜索每个测试指标值Fhr极值对应的个体,如果测试指标的优化目标是尽可能大,则选择最大值对应的个体,如果测试指标的优化目标是尽可能小,则选择最小值对应的个体;S3.3:从集合A中筛选出未被测试指标值Fhr极值支配的个体;S3.4:将本轮筛选中步骤S3.2和步骤S3.3得到的个体构成第v个分组,并将该分组中的个体从集合A中删除;S3.5:判断是否集合A为空,如果是,分组结束,否则进入步骤S3.6;S3.6:令v=v+1,返回步骤S3.2;S4:计算当前种群中每个个体的适应度值λh=αh-0.5βh,其中αh=0.5(V-vh+1),vh表示个体h所属的分组序号,Gh表示个体h所属分组中除该个体以外其他个体构成的集合,γhh′表示拥挤距离,其计算公式如下:其中,δshare表示预设距离阈值,h′∈Gh;S5:根据步骤S4计算的各个个体的适应度,选择得到父个体集合;S6:将父个体集合中的个体随机分为H/2组,然后以组为单位,比较每组中的两个个体是否存在故障集相同的结点,如果某组中的两个个体不存在故障集相同的结点,则该组不进行交叉操作,如果某组中的两个个体存在故障集相同的结点,首先删除大小等于M-1或等于1的相同故障集,M表示系统故障集S中故障数量,在剩余的相同故障集中任意选择一个故障集,交换该故障集结点...

【专利技术属性】
技术研发人员:杨成林苏若姗
申请(专利权)人:电子科技大学
类型:发明
国别省市:四川,51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1