CN110399968B - Multi-objective optimization method for system-level testability design based on utility function - Google Patents
Multi-objective optimization method for system-level testability design based on utility function Download PDFInfo
- Publication number
- CN110399968B CN110399968B CN201910555024.6A CN201910555024A CN110399968B CN 110399968 B CN110399968 B CN 110399968B CN 201910555024 A CN201910555024 A CN 201910555024A CN 110399968 B CN110399968 B CN 110399968B
- Authority
- CN
- China
- Prior art keywords
- individual
- population
- vector
- individuals
- objective
- 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.)
- Expired - Fee Related
Links
- 238000005457 optimization Methods 0.000 title claims abstract description 37
- 238000000034 method Methods 0.000 title claims abstract description 23
- 238000013461 design Methods 0.000 title claims abstract description 22
- 239000013598 vector Substances 0.000 claims abstract description 84
- 238000012360 testing method Methods 0.000 claims abstract description 26
- 230000035772 mutation Effects 0.000 claims abstract description 7
- 230000017105 transposition Effects 0.000 claims 1
- 230000000694 effects Effects 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 4
- 238000003745 diagnosis Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
Images
Classifications
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公开了一种基于效用函数的系统级测试性设计多目标优化方法,首先确定影响因素和优化目标函数,然后设置权重向量,使用权重向量对一个多目标优化问题分解为N个子问题,使用子问题的G个邻居,通过交叉、变异产生新的子代个体,利用适应度差值选择改善效果最好的种群中的个体进行更新,在终代种群中删除被支配解,即得到影响因素向量的帕累托最优解集。采用本发明,可以在保证得到影响因素向量的帕累托最优解集的同时,提高收敛效果和以及影响因素向量的帕累托最优解的均匀性。
The invention discloses a multi-objective optimization method for system-level test design based on utility function. First, the influencing factors and optimization objective function are determined, then a weight vector is set, and a multi-objective optimization problem is decomposed into N sub-problems by using the weight vector. The G neighbors of the sub-problem generate new offspring individuals through crossover and mutation, use the fitness difference to select the individuals in the population with the best improvement effect for updating, and delete the dominated solution in the final generation population, that is, the influencing factors are obtained. The set of Pareto optimal solutions for vectors. By adopting the invention, the convergence effect and the uniformity of the Pareto optimal solution of the influencing factor vector can be improved while ensuring that the Pareto optimal solution set of the influencing factor vector is obtained.
Description
技术领域technical field
本发明属于电子系统测试性设计优化技术领域,更为具体地讲,涉及一种基于效用函数的系统级测试性设计多目标优化方法。The invention belongs to the technical field of test design optimization of electronic systems, and more particularly relates to a system-level test design multi-objective optimization method based on a utility function.
背景技术Background technique
为了减轻设备日后的维护难度,系统在设计的初始阶段就应该考虑可测试性设计。可测试性指的是系统的状态能够被准确地检测的程度。在针对大型电子设备系统的故障诊断问题中,如何选择测试方案,使故障检测率(FDR,fault diagnose rate)、虚警率(FAR,fault alarm rate)以及测试各项开销(时间、经济等)指标同时满足约束条件甚至趋向更好,是学术和工程领域不断探索的问题。In order to reduce the difficulty of equipment maintenance in the future, the system should be designed for testability in the initial stage of design. Testability refers to the degree to which the state of a system can be accurately detected. In the problem of fault diagnosis for large-scale electronic equipment systems, how to choose a test plan, so that the fault detection rate (FDR, fault diagnosis rate), the false alarm rate (FAR, fault alarm rate) and the test costs (time, economy, etc.) Indicators that satisfy constraints at the same time or even tend to be better are constantly explored in academic and engineering fields.
在测试优选问题中,所关注的测试指标有故障检测率(FDR,fault diagnoserate)、隔离率、虚警率(FAR,fault alarm rate)、测试时间开销(TC,time cost)以及测试经济开销(PC,price cost)等等。增加系统测试性,意味着额外的测试硬件,因此影响着系统重量,体积,研发难度,功能影响以及系统可靠性。In the test optimization problem, the test indicators concerned are the fault detection rate (FDR, fault diagnose rate), isolation rate, false alarm rate (FAR, fault alarm rate), test time cost (TC, time cost) and test economic cost ( PC, price cost) and so on. Increasing system testability means additional test hardware, thus affecting system weight, size, development difficulty, functional impact, and system reliability.
假设影响因素共计D个,用xd表示,d=1,2,…,D。且将影响因素值归一化为0~1之间的变量,则影响因素向量X=[x1,…,xD]。假设需要优化的目标数量为M,每个优化目标的目标函数为fm(X),m=1,2,…,M。It is assumed that there are D total of influencing factors, which are represented by x d , d=1,2,...,D. And the influence factor value is normalized to a variable between 0 and 1, then the influence factor vector X=[x 1 ,...,x D ]. Assuming that the number of objectives to be optimized is M, the objective function of each optimization objective is f m (X), m=1,2,...,M.
测试优选目标是合理选择和设置X(即合理开展测试性设计,合理分配资源等),使得M个目标函数最小。现实中,M个目标函数一般不可能同时达到最优,因此这是一个典型的多目标优化问题。The test optimization goal is to choose and set X reasonably (ie, carry out the test design reasonably, allocate resources reasonably, etc.), so that the M objective functions are minimized. In reality, it is generally impossible for M objective functions to be optimal at the same time, so this is a typical multi-objective optimization problem.
当多目标优化为最小化优化问题,可以用下式表达,即需要找到合适的X使得所有M个目标函数f(X)最小:When multi-objective optimization is a minimization optimization problem, it can be expressed by the following formula, that is, it is necessary to find a suitable X to minimize all M objective functions f(X):
minimize F(X)=(f1(X),f2(X),…,fM(X))minimize F(X)=(f 1 (X),f 2 (X),…,f M (X))
与单目标优化问题的本质区别在于,多目标优化问题的解并非唯一,而是存在一组由众多Pareto(帕累托)最优解组成的最优解集合,集合中的各个元素称为Pareto最优解或非劣最优解。对于由上述公式确定的向量F(Xi)和F(Xj),如果两个向量不相等且F(Xi)里的所有元素都不大于F(Xj)里的对应位置元素,则称F(Xi)支配F(Xj),Xj称为支配解,Xi称为非支配解。由所有非支配解构成的集合称为帕累托最优集。The essential difference from the single-objective optimization problem is that the solution of the multi-objective optimization problem is not unique, but there is a set of optimal solutions composed of many Pareto (Pareto) optimal solutions, and each element in the set is called Pareto. optimal solution or non-inferior optimal solution. For the vectors F(X i ) and F(X j ) determined by the above formula, if the two vectors are not equal and all elements in F(X i ) are not larger than the corresponding position elements in F(X j ), then F(X i ) is said to dominate F(X j ), X j is called a dominant solution, and X i is called a non-dominated solution. The set consisting of all non-dominated solutions is called the Pareto optimal set.
而目前能解决该类问题的算法有NSGA-III型算法、粒子群算法等等。NSGA-III型算法较为典型,可以找到比较全面的非支配解集,然而由于支配关系计算的时间复杂度较高,收敛效果差等问题。At present, the algorithms that can solve this kind of problem include NSGA-III algorithm, particle swarm algorithm and so on. The NSGA-III algorithm is more typical and can find a more comprehensive set of non-dominated solutions. However, due to the high time complexity of the domination relationship calculation, the convergence effect is poor.
发明内容SUMMARY OF THE INVENTION
本发明的目的在于克服现有技术的不足,提供一种基于效用函数的的系统级测试性设计多目标优化方法,在保证得到影响因素向量的帕累托最优解集的同时,提高收敛效果和以及影响因素向量的帕累托最优解的均匀性。The purpose of the present invention is to overcome the deficiencies of the prior art and provide a system-level test design multi-objective optimization method based on a utility function, which can improve the convergence effect while ensuring that the Pareto optimal solution set of the influencing factor vectors is obtained. and the homogeneity of the Pareto optimal solution of the factor vector.
为实现上述发明目的,本发明基于效用函数的系统级测试性设计多目标优化方法包括以下步骤:In order to achieve the above-mentioned object of the invention, the multi-objective optimization method of the system-level test design based on the utility function of the present invention comprises the following steps:
S1:根据电子系统的实际情况确定影响因素,记影响因素向量X=[x1,x2,…,xD],其中xd表示第d个影响因素的归一化值,d=1,2,…,D,D表示影响因素的数量;记需要优化的目标数量为M,确定每个优化目标的目标函数fm(X),m=1,2,…,M,目标函数值越小,影响因素的组合越优;S1: Determine the influencing factors according to the actual situation of the electronic system, record the influencing factor vector X=[x 1 , x 2 ,..., x D ], where x d represents the normalized value of the d-th influencing factor, d=1, 2 , . Smaller, the better the combination of influencing factors;
S2:根据需要设置N个权重向量其中,表示权重向量Wi的第m个元素值,i=1,2,…,N;两两计算权重向量之间的欧式距离,对于第i个权重向量,获取与其欧式距离最小的前G个权重向量作为第i个权重向量的邻居权重向量,从而得到第i个权重向量的邻居集合B(i)={i1,i2,…,iG},ig表示第i个权重向量第g个邻居权重向量的序号,g=1,2,…,G;S2: Set N weight vectors as needed in, Indicates the mth element value of the weight vector Wi, i =1,2,...,N; calculates the Euclidean distance between the weight vectors pairwise, and for the ith weight vector, obtains the first G weights with the smallest Euclidean distance from it The vector is used as the neighbor weight vector of the ith weight vector, so as to obtain the neighbor set of the ith weight vector B(i)={i 1 ,i 2 ,...,i G }, i g represents the ith weight vector g The serial number of the neighbor weight vector, g=1,2,...,G;
S3:初始化每个权重向量Wi对应的效用函数πi=1;S3: Initialize the utility function π i = 1 corresponding to each weight vector Wi;
S4:将影响因素向量X=[x1,…,xD]作为种群个体,对种群进行初始化,记种群大小为N;令迭代次数S=1;S4: Take the influencing factor vector X=[x 1 ,...,x D ] as the population individual, initialize the population, and denote the population size as N; let the number of iterations S=1;
S5:计算初始种群中每个个体对应的M个目标函数fm(Xi)的值,Xi表示初始种群中第i个个体,i=1,2,…,N,确定各个目标函数的理想参考值zm=min{fm(X1),fm(X2),…,fm(XN)},得到初始理想参考点Z=(z1,z2,…,zM)T,T表示转置;S5: Calculate the values of M objective functions f m (X i ) corresponding to each individual in the initial population, where X i represents the ith individual in the initial population, i=1, 2,...,N, determine the value of each objective function Ideal reference value z m =min{f m (X 1 ),f m (X 2 ),...,f m (X N )}, obtain the initial ideal reference point Z=(z 1 ,z 2 ,...,z M ) T , T represents transpose;
S6:根据效用函数πi从小到大对当前种群中个体进行排序,选择前K个个体,记这K个个体的集合为φ,其中K的大小根据实际需要确定;S6: Sort the individuals in the current population from small to large according to the utility function π i , select the first K individuals, and denote the set of these K individuals as φ, where the size of K is determined according to actual needs;
S7:初始化个体序号i=1;S7: Initialize individual serial number i=1;
S8:判断是否Xi∈φ,如果是,进入步骤S9,否则进入步骤S11:S8: judge whether X i ∈ φ, if yes, go to step S9, otherwise go to step S11:
S9:在[0,1]范围内生成一个随机数rand,如果rand<δ,δ表示预设的选择池概率,则令个体选择池E=B(i),否则令E={1,2,…,N};S9: Generate a random number rand in the range of [0,1], if rand<δ, and δ represents the preset selection pool probability, then let the individual selection pool E=B(i), otherwise let E={1,2 ,…,N};
S10:采用以下方法基于个体Xi进行种群进化:S10: Use the following method to perform population evolution based on individual Xi :
S10.1:从个体选择池E随机选择一个序号r,将个体Xi和Xr作为父代个体进行交叉和变异操作,产生两个子代个体y1和y2,分别根据以下公式计算两个子代个体的适应度值g(yv|Wi,Z):S10.1: Randomly select a serial number r from the individual selection pool E, use individuals X i and X r as parent individuals to perform crossover and mutation operations, and generate two offspring individuals y 1 and y 2 , and calculate the two offspring individuals according to the following formulas respectively. The fitness value g(y v |W i ,Z) of the individual generation:
其中,v=1,2;Among them, v=1,2;
如果g(y1|Wi,Z)≤g(y2|Wi,Z),则令进化目标个体Y=y1,否则令进化目标个体Y=y2;If g(y 1 |W i ,Z)≤g(y 2 |W i ,Z), let the evolution target individual Y=y 1 , otherwise let the evolution target individual Y=y 2 ;
S10.2:计算进化目标个体Y对应的M个目标函数fm(Y)的值,构成目标函数向量F(Y)=(f1(Y),f2(Y),…,fM(Y));S10.2: Calculate the values of the M objective functions f m (Y) corresponding to the evolutionary target individual Y, and form the objective function vector F(Y)=(f 1 (Y), f 2 (Y),...,f M ( Y));
S10.3:对于当前的理想参考点Z=(z1,z2,…,zM)T中的每个理想参考值,如果zm>fm(Y),则令zm=fm(Y),否则不作任何操作;S10.3: For each ideal reference value in the current ideal reference point Z=(z 1 ,z 2 ,...,z M ) T , if z m >f m (Y), then let z m =f m (Y), otherwise do nothing;
S10.4:根据以下公式计算进化目标个体Y和当前种群中各个个体Xj的适应度差值Uj:S10.4: Calculate the fitness difference U j between the evolution target individual Y and each individual X j in the current population according to the following formula:
Uj=g(Xj|Wj,Z)-g(Y|Wj,Z)U j =g(X j |W j ,Z)-g(Y|W j ,Z)
选择适应度差值Uj最大的个体Xj,采用进化目标个体Y对其进行更新;Select the individual X j with the largest fitness difference U j , and use the evolution target individual Y to update it;
S11:判断是否i<N,如果是,进入步骤S12,否则进入步骤S13;S11: judge whether i<N, if yes, go to step S12, otherwise go to step S13;
S12:令个体序号i=i+1,返回步骤S8;S12: Set the individual serial number i=i+1, and return to step S8;
S13:判断是否迭代次数S<Smax,Smax表示预设最大迭代次数,如果是,则进入步骤S14,否则进入步骤S17;S13: Determine whether the number of iterations S<S max , S max represents the preset maximum number of iterations, if yes, go to step S14 , otherwise go to step S17 ;
S14:令迭代次数S=S+1;S14: Let the number of iterations S=S+1;
S15:判断是否迭代次数S%Sπ=0,%表示求余,Sπ表示预设的效用函数值的更新周期,如果是,进入步骤S16,否则不作任何操作,返回步骤S6;S15: determine whether the number of iterations is S% S π = 0, % represents the remainder, and S π represents the preset update period of the utility function value, if yes, go to step S16, otherwise do nothing and return to step S6;
S16:采用以下公式对每个效用函数πi进行更新:S16: Update each utility function π i using the following formula:
其中,Δi表示当前种群中第i个个体Xi适应度值的相对降低数,采用以下公式进行计算:Among them, Δ i represents the relative reduction of the fitness value of the ith individual Xi in the current population, which is calculated by the following formula:
其中,g(Xi|Wi,Z)表示当前种群中第i个个体Xi的适应度值,表示前Q代种群中第i个个体的适应度值;Among them, g(X i |W i ,Z) represents the fitness value of the ith individual Xi in the current population, Represents the i-th individual in the previous Q generation population The fitness value of ;
返回步骤S6;Return to step S6;
S17:从当前种群中删除被支配个体,剩余的个体集合即作为影响因素向量的帕累托最优解集,每个个体对应一个影响因素向量。S17: Delete the dominated individual from the current population, and the remaining individual set is the Pareto optimal solution set as the influencing factor vector, and each individual corresponds to an influencing factor vector.
本发明基于效用函数的系统级测试性设计多目标优化方法,首先确定影响因素和优化目标函数,然后设置权重向量,使用权重向量对一个多目标优化问题分解为N个子问题,使用子问题的G个邻居,通过交叉、变异产生新的子代个体,利用适应度差值选择改善效果最好的种群中的个体进行更新,在终代种群中删除被支配解,即得到影响因素向量的帕累托最优解集。采用本发明,可以在保证得到影响因素向量的帕累托最优解集的同时,提高收敛效果和以及影响因素向量的帕累托最优解的均匀性。The present invention designs a multi-objective optimization method based on the system-level testability of the utility function. First, the influencing factors and the optimization objective function are determined, and then the weight vector is set. The weight vector is used to decompose a multi-objective optimization problem into N sub-problems, and the G of the sub-problem is used. Neighbors, generate new offspring individuals through crossover and mutation, use the fitness difference to select the individuals in the population with the best improvement effect to update, delete the dominated solution in the final generation population, and get the Pare value of the influencing factor vector. the optimal solution set. By adopting the invention, the convergence effect and the uniformity of the Pareto optimal solution of the influencing factor vector can be improved while ensuring that the Pareto optimal solution set of the influencing factor vector is obtained.
附图说明Description of drawings
图1是本发明基于效用函数的系统级测试性设计多目标优化方法的具体实施方式流程图;Fig. 1 is the specific implementation flow chart of the multi-objective optimization method of system-level test design based on utility function of the present invention;
图2是本发明中种群进化的流程图;Fig. 2 is the flow chart of population evolution in the present invention;
图3是本实施例中采用本发明得到的Pareto最优解对应的目标函数向量示意图;3 is a schematic diagram of the objective function vector corresponding to the Pareto optimal solution obtained by adopting the present invention in the present embodiment;
图4是本实施例中采用NSGAIII算法得到的Pareto最优解对应的目标函数向量示意图;Fig. 4 is the objective function vector diagram corresponding to the Pareto optimal solution that adopts NSGAIII algorithm to obtain in the present embodiment;
图5是本实施例中本发明和NSGA-III的收敛效果对比图。FIG. 5 is a comparison diagram of the convergence effect of the present invention and NSGA-III in this embodiment.
具体实施方式Detailed ways
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。The specific embodiments of the present invention are described below with reference to the accompanying drawings, so that those skilled in the art can better understand the present invention. It should be noted that, in the following description, when the detailed description of known functions and designs may dilute the main content of the present invention, these descriptions will be omitted here.
图1是本发明基于效用函数的系统级测试性设计多目标优化方法的具体实施方式流程图。如图1所示,本发明基于效用函数的系统级测试性设计多目标优化方法的具体步骤包括:FIG. 1 is a flow chart of a specific implementation of the multi-objective optimization method for system-level test design based on the utility function of the present invention. As shown in FIG. 1 , the specific steps of the multi-objective optimization method for the system-level test design based on the utility function of the present invention include:
S101:确定影响因素和优化目标函数:S101: Determine the influencing factors and optimize the objective function:
根据电子系统的实际情况确定影响因素,记影响因素向量X=[x1,…,xD],其中xd表示第d个影响因素的归一化值,d=1,2,…,D,D表示影响因素的数量;记需要优化的目标数量为M,确定每个优化目标的目标函数fm(X),m=1,2,…,M,目标函数值越小,影响因素的组合越优。Determine the influencing factors according to the actual situation of the electronic system, denote the influencing factor vector X=[x 1 ,...,x D ], where x d represents the normalized value of the d-th influencing factor, d=1,2,...,D , D represents the number of influencing factors; denote the number of objectives to be optimized as M, determine the objective function f m (X) of each optimization objective, m=1,2,...,M, the smaller the objective function value, the greater the The better the combination.
S102:生成权重向量:S102: Generate weight vector:
根据需要设置N个权重向量其中,表示权重向量Wi的第m个元素值,i=1,2,…,N。两两计算权重向量之间的欧式距离,对于第i个权重向量,获取与其欧式距离最小的前G个权重向量作为第i个权重向量的邻居权重向量,从而得到第i个权重向量的邻居集合B(i)={i1,i2,…,iG},ig表示第i个权重向量第g个邻居权重向量的序号,g=1,2,…,G。Set N weight vectors as needed in, Represents the mth element value of the weight vector Wi, i =1,2,...,N. Calculate the Euclidean distance between the weight vectors in pairs. For the ith weight vector, obtain the first G weight vectors with the smallest Euclidean distance from it as the neighbor weight vector of the ith weight vector, so as to obtain the neighbor set of the ith weight vector. B (i)= { i 1 , i 2 , .
两个权重向量之间欧氏距离的计算公式如下:The formula for calculating the Euclidean distance between two weight vectors is as follows:
其中,j=1,2,…,N。Among them, j=1,2,...,N.
本实施例中,权重向量采用单纯形法产生,且N个权重向量Wi均匀分布。In this embodiment, the weight vector is generated by the simplex method, and the N weight vectors W i are evenly distributed.
权重向量的数量N可以采用以下公式计算:The number N of weight vectors can be calculated using the following formula:
其中,H表示预设的常数参数。Among them, H represents a preset constant parameter.
采用N个权重向量可以将一个多目标问题分解为N个子问题,一个权重向量对应于一个子问题,通过对每个子问题的优化(每个权重向量方向上的优化),进而完成多目标优化问题的优化。Using N weight vectors, a multi-objective problem can be decomposed into N sub-problems, one weight vector corresponds to one sub-problem, and the multi-objective optimization problem is completed by optimizing each sub-problem (optimization in the direction of each weight vector). Optimization.
S103:初始化效用函数:S103: Initialize the utility function:
初始化第i个权重向量Wi对应的效用函数πi=1。The utility function π i =1 corresponding to the ith weight vector Wi is initialized.
S104:初始化种群:S104: Initialize the population:
将影响因素向量X=[x1,…,xD]作为遗传算法种群个体,对种群进行初始化,记种群大小为N,第i个个体Xi与权重向量Wi和效用函数πi相对应,i=1,2,…,N。令迭代次数S=1。Take the influencing factor vector X=[x 1 ,...,x D ] as the genetic algorithm population individual, initialize the population, denote the population size as N, the i -th individual X i corresponds to the weight vector Wi and the utility function π i , i=1,2,...,N. Let the number of iterations S=1.
S105:初始化理想参考点:S105: Initialize ideal reference point:
计算初始种群中每个个体对应的M个目标函数fm(Xi)的值,Xi表示初始种群中第i个个体,i=1,2,…,N,确定各个目标函数的理想参考值zm=min{fm(X1),fm(X2),…,fm(XN)},得到初始理想参考点Z=(z1,z2,…,zM)T,T表示转置。Calculate the value of M objective functions f m (X i ) corresponding to each individual in the initial population, X i represents the ith individual in the initial population, i=1,2,...,N, determine the ideal reference for each objective function The value z m =min{f m (X 1 ),f m (X 2 ),...,f m (X N )}, resulting in the initial ideal reference point Z=(z 1 ,z 2 ,...,z M ) T , T stands for transpose.
S106:筛选个体:S106: Screening individuals:
根据效用函数πi从小到大对当前种群中个体进行排序,选择前K个个体,记这K个个体的集合为φ,其中K的大小根据实际需要确定。一般来说,为了兼顾效率和优化效果,K的取值范围为[N/4]≤K≤[N/3]。Sort the individuals in the current population according to the utility function π i from small to large, select the first K individuals, and denote the set of these K individuals as φ, where the size of K is determined according to actual needs. Generally speaking, in order to take into account the efficiency and optimization effect, the value range of K is [N/4]≤K≤[N/3].
S107:初始化个体序号i=1。S107: Initialize the individual serial number i=1.
S108:判断是否Xi∈φ,如果是,进入步骤S109,否则进入步骤S111。S108: Determine whether X i ∈ φ, if yes, go to step S109, otherwise go to step S111.
S109:确定个体选择池:S109: Determine the individual selection pool:
在[0,1]范围内生成一个随机数rand,如果rand<δ,δ表示预设的选择池概率,本实施例中δ=0.9,则令个体选择池E=B(i),否则令E={1,2,…,N},即为整个种群。A random number rand is generated in the range of [0,1]. If rand<δ, δ represents the preset selection pool probability. In this embodiment, δ=0.9, then let the individual selection pool E=B(i), otherwise let E={1,2,...,N}, which is the entire population.
S110:种群进化:S110: Population Evolution:
基于个体Xi进行种群进化。图2是本发明中种群进化的流程图。如图2所示,本发明中种群进化的具体步骤包括:Population evolution based on individual Xi . Figure 2 is a flow chart of population evolution in the present invention. As shown in Figure 2, the specific steps of population evolution in the present invention include:
S201:生成进化目标个体:S201: Generate evolutionary target individuals:
从个体选择池E随机选择一个序号r,将个体Xi和Xr作为父代个体进行交叉和变异操作,产生两个子代个体y1和y2,分别根据以下公式计算两个子代个体的适应度值g(yv|Wi,Z):A sequence number r is randomly selected from the individual selection pool E, and individuals X i and X r are used as parent individuals to perform crossover and mutation operations to generate two offspring individuals y 1 and y 2 , respectively, according to the following formulas to calculate the fitness of the two offspring individuals Degree value g(y v |W i ,Z):
其中,v=1,2。where v=1,2.
如果g(y1|Wi,Z)≤g(y2|Wi,Z),则选择子代个体y1,即令进化目标个体Y=y1,否则令进化目标个体Y=y2。If g(y 1 |W i ,Z)≤g(y 2 |W i ,Z), select the offspring individual y 1 , that is, let the evolution target individual Y=y 1 , otherwise let the evolution target individual Y=y 2 .
本实施例中交叉采用模拟二进制交叉,变异采用多项式变异。In this embodiment, analog binary crossover is used for crossover, and polynomial mutation is used for mutation.
S202:计算进化目标个体目标函数向量:S202: Calculate the individual objective function vector of the evolutionary target:
计算进化目标个体Y对应的M个目标函数fm(Y)的值,构成目标函数向量F(Y)=(f1(Y),f2(Y),…,fM(Y))。Calculate the values of M objective functions f m (Y) corresponding to the evolutionary target individual Y, and form an objective function vector F(Y)=(f 1 (Y), f 2 (Y),...,f M (Y)).
S203:更新理想参考点:S203: Update ideal reference point:
对于当前的理想参考点Z=(z1,z2,…,zM)T中的每个理想参考值,如果zm>fm(Y),则令zm=fm(Y),否则不作任何操作。For each ideal reference value in the current ideal reference point Z=(z 1 ,z 2 ,...,z M ) T , if z m >f m (Y), then let z m =f m (Y), Otherwise, do nothing.
S204:更新个体:S204: Update the individual:
根据以下公式计算进化目标个体Y和当前种群中各个个体Xj的适应度差值Uj:Calculate the fitness difference U j between the evolution target individual Y and each individual X j in the current population according to the following formula:
Uj=g(Xj|Wj,Z)-g(Y|Wj,Z)U j =g(X j |W j ,Z)-g(Y|W j ,Z)
其中,j=1,2,…,N,Among them, j=1,2,...,N,
选择适应度差值Uj最大的个体Xj,采用进化目标个体Y对其进行更新,即令Xj=Y。Select the individual X j with the largest fitness difference U j , and use the evolution target individual Y to update it, that is, let X j =Y.
S111:判断是否i<N,如果是,进入步骤S112,否则进入步骤S113。S111: Determine whether i<N, if yes, go to step S112, otherwise go to step S113.
S112:令个体序号i=i+1,返回步骤S108。S112: Set the individual serial number i=i+1, and return to step S108.
S113:判断是否迭代次数S<Smax,Smax表示预设最大迭代次数,如果是,则进入步骤S114,否则进入步骤S117。S113: Determine whether the number of iterations S<S max , where S max represents the preset maximum number of iterations, if yes, go to step S114 , otherwise go to step S117 .
S114:令迭代次数S=S+1。S114: Let the number of iterations S=S+1.
S115:判断是否迭代次数S%Sπ=0,%表示求余,Sπ表示预设的效用函数值的更新周期,如果是,进入步骤S116,否则不作任何操作,返回步骤S106。更新周期Sπ的值一般不宜太小,可以设置为50≤Sπ≤100。S115: Determine whether the number of iterations is S% S π = 0, % means remainder, S π means the preset update period of the utility function value, if yes, go to step S116, otherwise do nothing and return to step S106. Generally, the value of the update period S π should not be too small, and can be set to 50≤S π ≤100.
S116:更新效用函数:S116: Update utility function:
采用以下公式对每个效用函数πi进行更新:Each utility function π i is updated using the following formula:
其中,Δi表示当前种群中第i个个体Xi适应度值的相对降低数,采用以下公式进行计算:Among them, Δ i represents the relative reduction of the fitness value of the ith individual Xi in the current population, which is calculated by the following formula:
其中,g(Xi|Wi,Z)表示当前种群中第i个个体Xi的适应度值,表示前Q代种群中第i个个体的适应度值。Q的取值范围为20≤Q≤Sπ。Among them, g(X i |W i ,Z) represents the fitness value of the ith individual Xi in the current population, Represents the i-th individual in the previous Q generation population fitness value. The value range of Q is 20≤Q≤S π .
然后返回步骤S106。Then it returns to step S106.
S117:获取Pareto最优解集:S117: Obtain Pareto optimal solution set:
从当前种群中删除被支配个体,剩余的个体集合即作为影响因素向量的帕累托最优解集,每个个体对应一个影响因素向量,可以据此对影响因素进行配置。Delete the dominated individual from the current population, and the remaining individual set is the Pareto optimal solution set as the influencing factor vector. Each individual corresponds to an influencing factor vector, and the influencing factors can be configured accordingly.
实施例Example
为了更好地说明本发明的技术方案,下面以三目标优化为例,对本发明的具体实施过程进行说明。假定电子系统测试性设计的优化目标为最大化故障检测率FDR,表达式为f1=maxmize(FDR);最小化虚警率FAR,表达式为f2=minimize(FAR);以及测试成本C,表达式为f3=minimize(C)。令f1=1-maxmize(FDR),则都转化为最小化问题。影响这三个目标的因素众多,如设计难度、体积考虑、功能影响、可靠性影响等,本实施例中选择7个影响因素,即影响因素向量X=[x1,…,x7]。In order to better illustrate the technical solution of the present invention, the following takes three-objective optimization as an example to describe the specific implementation process of the present invention. It is assumed that the optimization goal of the testability design of the electronic system is to maximize the failure detection rate FDR, expressed as f 1 =maxmize(FDR); minimize the false alarm rate FAR, expressed as f 2 =minimize(FAR); and the test cost C , the expression is f 3 =minimize(C). Let f 1 =1-maxmize(FDR), then it all turns into a minimization problem. There are many factors affecting these three goals, such as design difficulty, volume consideration, functional impact, reliability impact, etc. In this embodiment, seven influencing factors are selected, ie, the influencing factor vector X=[x 1 , . . . , x 7 ].
本实施例中构造出的目标函数F=[f1,f2,f3]和优化问题如下所示:The objective function F=[f 1 , f 2 , f 3 ] and the optimization problem constructed in this embodiment are as follows:
Subject to 0≤xd≤1,for d=1,2,…,7Subject to 0≤x d ≤1,for d=1,2,…,7
其中, in,
按照前文所述流程实施获得帕累托最优解集,然后获得目标函数向量。图3是本实施例中采用本发明得到的Pareto最优解对应的目标函数向量示意图。如图3所示,按照本发明的方法,找到的解不但是帕累托最优解,而且对应的目标函数向量能够较为均匀的分布在最优平面上。According to the procedure described above, the Pareto optimal solution set is obtained, and then the objective function vector is obtained. FIG. 3 is a schematic diagram of the objective function vector corresponding to the Pareto optimal solution obtained by adopting the present invention in this embodiment. As shown in FIG. 3 , according to the method of the present invention, the found solution is not only a Pareto optimal solution, but also the corresponding objective function vector can be relatively uniformly distributed on the optimal plane.
这91个最优解对应的目标函数值向量分别为:The objective function value vectors corresponding to the 91 optimal solutions are:
得到这些最优目标函数向量的影响因素向量分别为:The influencing factor vectors for obtaining these optimal objective function vectors are:
测试性设计人员可以根据三个函数(检测率、虚警率、故障诊断成本)在不同场合下的需求重要度,根据以上运行结果,合理配置影响因素,达到测试性优化设计的目的。The test designer can reasonably configure the influencing factors according to the demand importance of the three functions (detection rate, false alarm rate, fault diagnosis cost) in different occasions and according to the above operation results, so as to achieve the purpose of test optimization design.
为了说明本发明的技术效果,采用NSGAIII算法运行此例(个体数目为92,代数为500),将其结果与本发明的结果进行对比。图4是本实施例中采用NSGAIII算法得到的Pareto最优解对应的目标函数向量示意图。对比图3和图4可知,虽然采用NSGAIII算法也可以得到最优解,但是并未完全靠近参考点,分布不太均匀。In order to illustrate the technical effect of the present invention, the NSGAIII algorithm is used to run this example (the number of individuals is 92 and the number of generations is 500), and the results are compared with the results of the present invention. FIG. 4 is a schematic diagram of the objective function vector corresponding to the Pareto optimal solution obtained by adopting the NSGAIII algorithm in this embodiment. Comparing Figure 3 and Figure 4, it can be seen that although the NSGAIII algorithm can also be used to obtain the optimal solution, it is not completely close to the reference point, and the distribution is not uniform.
图5是本实施例中本发明和NSGA-III的收敛效果对比图。从图5中可以看出本发明收敛性要好于传统的NSGA-III型算法。FIG. 5 is a comparison diagram of the convergence effect of the present invention and NSGA-III in this embodiment. It can be seen from Fig. 5 that the convergence of the present invention is better than that of the traditional NSGA-III algorithm.
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。Although the illustrative specific embodiments of the present invention have been described above to facilitate the understanding of the present invention by those skilled in the art, it should be clear that the present invention is not limited to the scope of the specific embodiments. For those skilled in the art, As long as various changes are within the spirit and scope of the present invention as defined and determined by the appended claims, these changes are obvious, and all inventions and creations utilizing the inventive concept are included in the protection list.
Claims (6)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910555024.6A CN110399968B (en) | 2019-06-25 | 2019-06-25 | Multi-objective optimization method for system-level testability design based on utility function |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910555024.6A CN110399968B (en) | 2019-06-25 | 2019-06-25 | Multi-objective optimization method for system-level testability design based on utility function |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110399968A CN110399968A (en) | 2019-11-01 |
CN110399968B true CN110399968B (en) | 2021-12-10 |
Family
ID=68323408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910555024.6A Expired - Fee Related CN110399968B (en) | 2019-06-25 | 2019-06-25 | Multi-objective optimization method for system-level testability design based on utility function |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110399968B (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113656284A (en) * | 2021-07-26 | 2021-11-16 | 深圳技术大学 | Software defect prediction method, device, electronic device and storage medium |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102588129A (en) * | 2012-02-07 | 2012-07-18 | 上海艾铭思汽车控制系统有限公司 | Optimization cooperative control method for discharge of nitrogen oxides and particles of high-pressure common-rail diesel |
CN107909194A (en) * | 2017-11-07 | 2018-04-13 | 电子科技大学 | System level testing designs Multipurpose Optimal Method |
CN109784573A (en) * | 2019-01-24 | 2019-05-21 | 南方电网科学研究院有限责任公司 | Energy internet multi-target optimization method and device |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2667367B1 (en) * | 2012-05-25 | 2017-10-04 | The Boeing Company | Conflict detection and resolution using predicted aircraft trajectories |
-
2019
- 2019-06-25 CN CN201910555024.6A patent/CN110399968B/en not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102588129A (en) * | 2012-02-07 | 2012-07-18 | 上海艾铭思汽车控制系统有限公司 | Optimization cooperative control method for discharge of nitrogen oxides and particles of high-pressure common-rail diesel |
CN107909194A (en) * | 2017-11-07 | 2018-04-13 | 电子科技大学 | System level testing designs Multipurpose Optimal Method |
CN109784573A (en) * | 2019-01-24 | 2019-05-21 | 南方电网科学研究院有限责任公司 | Energy internet multi-target optimization method and device |
Non-Patent Citations (2)
Title |
---|
《MOEA/D with Adaptive Weight Adjustment》;Qi YT et al;《IEEE》;20140520;第22卷(第2期);全文 * |
《MOEA/D算法及其在多序列比对中的应用研究》;祝华正;《中国博士学位论文全文数据库信息科技辑》;20160715(第2016年第07期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN110399968A (en) | 2019-11-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Bujok et al. | Eigen crossover in cooperative model of evolutionary algorithms applied to CEC 2022 single objective numerical optimisation | |
Wang et al. | A cluster-based competitive particle swarm optimizer with a sparse truncation operator for multi-objective optimization | |
CN107909194B (en) | Multi-objective optimization method for system-level testable design | |
CN111310722A (en) | Power equipment image fault identification method based on improved neural network | |
CN111208796A (en) | Workshop production operation scheduling method based on clustering niche genetic algorithm | |
Meneghini et al. | Competitive coevolutionary algorithm for robust multi-objective optimization: The worst case minimization | |
Hu et al. | A niching backtracking search algorithm with adaptive local search for multimodal multiobjective optimization | |
CN113051826A (en) | Harmonic source universal uncertainty modeling method based on Gaussian process regression | |
CN108647838A (en) | A kind of power grid Situation Awareness method based on Random Matrices Theory and online limit of sequence learning machine | |
CN116757406A (en) | Distributed power supply access distribution network site selection and volume determination method considering uncertainty | |
Nama et al. | A new parameter setting-based modified differential evolution for function optimization | |
CN115129607A (en) | Power grid security analysis machine learning model testing method, device, equipment and medium | |
CN110399968B (en) | Multi-objective optimization method for system-level testability design based on utility function | |
CN107657311B (en) | Test preferred method based on multi-objective particle swarm algorithm | |
CN110908897B (en) | Multi-objective optimization method for system-level test design based on adaptive search direction | |
CN106886467A (en) | Method for optimizing is tested in multitask based on the comprehensive multi-target evolution of packet | |
CN110221931B (en) | System-level testability design multi-objective optimization method based on Chebyshev | |
Matias et al. | Genetically optimized extreme learning machine | |
CN117170980B (en) | Early warning method, device, equipment and storage medium for server hardware abnormality | |
Tan et al. | Decomposition‐Based Multiobjective Optimization with Invasive Weed Colonies | |
Sun et al. | Adaptive Strategies Based on Differential Evolutionary Algorithm for Many‐Objective Optimization | |
CN109002877A (en) | Multiple dimensioned collaboration differential evolution optimization method | |
Masood et al. | Genetic programming hyper-heuristic with gaussian process-based reference point adaption for many-objective job shop scheduling | |
CN113807019A (en) | MCMC wind power simulation method based on improved scene classification and de-coarse-graining | |
Qiu et al. | A new framework for self-adapting control parameters in multi-objective optimization |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20211210 |
|
CF01 | Termination of patent right due to non-payment of annual fee |