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,然而在实际生产中,部分系统在对于不同测试指标上(例如测试时间、测试费用)的需求不一定一致,即在不同优化目标存在不一致并很有可能产生冲突,因此需要找出符合条件的一组最优解可以兼顾系统对于不同测试指标的需求,该问题实质上是一个多目标优化问题。在实际应用中,人们经常会遇到多目标设计和决策的问题。为了解决多目标优化问题,为其建立了一个 ...
【技术保护点】
一种基于多目标遗传规划算法的序贯测试优化方法,其特征在于,包括以下步骤: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中故障数量,在剩余的相同故障集中任意选择一个故障集,交换该故障集结点...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。