CN110119558B - Circuit parameter optimization method based on differential optimization algorithm - Google Patents
Circuit parameter optimization method based on differential optimization algorithm Download PDFInfo
- Publication number
- CN110119558B CN110119558B CN201910362465.4A CN201910362465A CN110119558B CN 110119558 B CN110119558 B CN 110119558B CN 201910362465 A CN201910362465 A CN 201910362465A CN 110119558 B CN110119558 B CN 110119558B
- Authority
- CN
- China
- Prior art keywords
- vector
- parameter
- algorithm
- optimization
- vectors
- 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.)
- Active
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 106
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000005457 optimization Methods 0.000 title claims abstract description 66
- 239000013598 vector Substances 0.000 claims abstract description 115
- 230000035772 mutation Effects 0.000 claims abstract description 28
- 238000013461 design Methods 0.000 claims abstract description 23
- 238000012545 processing Methods 0.000 claims abstract description 6
- 230000008569 process Effects 0.000 claims description 32
- 238000005070 sampling Methods 0.000 claims description 4
- 238000005295 random walk Methods 0.000 claims description 3
- 230000003044 adaptive effect Effects 0.000 claims description 2
- 238000012938 design process Methods 0.000 claims description 2
- 238000012216 screening Methods 0.000 claims description 2
- 238000009827 uniform distribution Methods 0.000 claims description 2
- 230000002068 genetic effect Effects 0.000 description 16
- 210000000349 chromosome Anatomy 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000010187 selection method Methods 0.000 description 4
- 230000001186 cumulative effect Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 239000011159 matrix material Substances 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 108090000623 proteins and genes Proteins 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 241000364483 Lipeurus epsilon Species 0.000 description 1
- NINIDFKCEFEMDL-UHFFFAOYSA-N Sulfur Chemical compound [S] NINIDFKCEFEMDL-UHFFFAOYSA-N 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000005284 excitation Effects 0.000 description 1
- 238000009396 hybridization Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000010606 normalization Methods 0.000 description 1
- 230000010076 replication Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/30—Circuit design
- G06F30/39—Circuit design at the physical level
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Evolutionary Computation (AREA)
- Geometry (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
The application relates to the field of design automation, in particular to a circuit parameter optimization method based on a differential optimization algorithm, which is applied to reference voltage source design and comprises the following steps: s1, describing device parameters in a circuit structure by using a parameter vector, and selecting a plurality of device parameters as the parameter vector; s2, judging whether the parameter vector meets an optimization termination condition, and if so, ending optimization; if not, executing the step S3; s3, using a mutation algorithm, and obtaining mutation vectors corresponding to the parameter vectors one by one according to the parameter vectors; s4, performing cross processing on the parameter vector and the corresponding variation vector by using a cross algorithm to obtain a cross vector; and S5, respectively calculating performance indexes corresponding to the parameter vector, the variation vector and the cross vector, selecting a vector which optimizes the performance indexes as a new parameter vector by using a selection algorithm, and executing the step S2. The optimization method can quickly execute parameter optimization on the reference voltage source circuit.
Description
Technical Field
The application relates to the field of electronic design automation, in particular to a circuit parameter optimization method based on a differential optimization algorithm.
Background
In the design of integrated circuits, and in particular analog integrated circuits, optimization of circuit parameters (e.g., determination of device parameters) is mostly done manually after the circuit structure and process have been determined according to design requirements and constraints of the foundry-provided process file. While designing a new circuit structure, optimizing circuit parameters takes a lot of time, which tends to lengthen the circuit design cycle, requiring a lot of cumbersome work.
However, circuit design is a multi-objective optimization problem, and especially analog circuit design requires trade-offs in terms of noise, linearity, gain, supply voltage, output swing, speed, input/output impedance, power consumption, etc. With conventional machine learning algorithms, a suitable set of parameters needs to be selected in up to 8 dimensions, which is computationally expensive and time consuming to estimate. The use of manual calculation of electrical parameters requires a significant amount of time and calculation process.
Disclosure of Invention
In order to solve the problems, the application aims to provide a circuit parameter optimization method based on machine learning, which is capable of quickly searching out circuit parameters conforming to a circuit structure and optimization indexes by optimizing selected circuit parameters by using a differential evolution algorithm after determining the circuit structure.
Based on the above, the application provides a circuit parameter optimization method based on a differential optimization algorithm, which is characterized in that the method is applied to the design of a reference voltage source, and comprises the following steps:
s1, describing device parameters in a circuit structure by using a parameter vector, and selecting a plurality of device parameters as the parameter vector;
s2, judging whether the parameter vector meets an optimization termination condition, and if so, ending optimization; if not, executing the step S3;
s3, using a mutation algorithm, and obtaining mutation vectors corresponding to the parameter vectors one by one according to the parameter vectors;
s4, performing cross processing on the parameter vector and the corresponding variation vector by using a cross algorithm to obtain a cross vector;
and S5, respectively calculating performance indexes corresponding to the parameter vector, the variation vector and the cross vector, selecting a vector which optimizes the performance indexes as a new parameter vector by using a selection algorithm, and executing the step S2.
As a preferred technical solution, between steps S4 and S5, the method further comprises the following steps: and calculating constraint violation values of the parameter vector, the variation vector and the cross vector, and eliminating the infeasible vector according to the constraint violation values.
As a preferred technical solution, in step S1, the physical value of the device parameter satisfies a parameter constraint in a device design process file.
As a preferred technical solution, the mutation algorithm includes: a uniform cross-variation algorithm, a gaussian variation algorithm, a dynamic variation algorithm, or a direction-based variation algorithm.
As a preferable technical scheme, the number of vectors is 3, and the obtained variation vectors are:
H i (g)=X p1 (g)+F·(X p2 (g)-X p3 (g))
wherein X is p1 (g)、X p2 (g)、X p3 (g) The parameter vectors of the 3 independent devices are respectively, and F is the scaling factor of the mutation algorithm.
As a preferred technical solution, the crossover algorithm includes: any one of a single point crossover algorithm, a two point crossover algorithm, an arithmetic crossover algorithm, a linear crossover algorithm, or a direction-based crossover algorithm.
As a preferred technical solution, the selection algorithm includes: any one of roulette selection, random walk sampling, and tournament selection.
As a preferred technical solution, the performance parameters include: temperature coefficient and linearity.
According to the circuit parameter optimization method provided by the application, the selected circuit parameters are optimized by using the differential evolution algorithm, so that the circuit parameters which accord with the circuit structure and the optimization index can be quickly found out.
Drawings
FIG. 1 is a schematic diagram of a mutation vector in differential evolution with motion according to an embodiment of the present application;
FIG. 2 is a schematic diagram of a circuit structure used in an embodiment of the present application;
FIG. 3 is a flow chart of a circuit parameter optimization algorithm used in embodiment 1 of the present application;
FIG. 4 is a circuit parameter optimization algorithm after 2-introduced constraint violation elimination in an embodiment of the application
FIG. 5 is a flowchart of a circuit parameter optimization algorithm after 3 Pa-Tong dominance and congestion degree ordering are introduced in the embodiment of the present application;
FIG. 6 is a temperature coefficient evolution curve obtained by the parameter optimization algorithm of example 3 of the present application;
FIG. 7 is a linear evolution curve of the present application using the parameter optimization algorithm of example 3;
FIG. 8 is an evolution curve of the operating current obtained by the present application using the parameter optimization algorithm of example 3.
Detailed Description
The following describes in further detail the embodiments of the present application with reference to the drawings and examples. The following examples are illustrative of the application and are not intended to limit the scope of the application.
The evolution strategy (Evolutionary Strategies, ES) was proposed by i.rechenberg and hp.schwefel in 1963 in germany. The evolution strategy is used as a method for solving the parameter optimization problem and mimics the biological evolution principle, and the generated result (character) always follows a Gaussian distribution with zero mean and a certain variance no matter what change the gene is.
Multi-objective optimization is a common problem in various fields of reality, where each objective cannot reach the optimum at the same time, and each objective must have a weight. However, how to assign such weights has become a hotspot problem for research. Meanwhile, genetic algorithms developed according to the biological evolutionary theory have also received attention. By combining the two methods, the global searching capability of an evolution strategy can be utilized, the phenomenon that the traditional multi-objective optimization method falls into a local optimal solution in the optimizing process is avoided, and the generated individuals can keep diversity. Therefore, multi-objective optimization strategies based on evolutionary strategies have been applied in various fields.
The differential evolution algorithm (Differential Evolution) in the evolution strategy is selected as the algorithm for optimizing the circuit parameters. The differential evolution algorithm is proposed by Rainer Storn and Kenneth Price in 1997 on the basis of the genetic algorithm evolution idea, and is essentially a multi-objective (continuous variable) optimization algorithm for solving the overall optimal solution in a multidimensional space. The basic idea is derived from genetic algorithm, and operators are designed by simulating hybridization, mutation and replication in the genetic algorithm.
The differential evolution algorithm is the same as the genetic algorithm in the following points: the method comprises the following steps of randomly generating an initial population, taking the fitness value of each individual in the population as a selection standard, and performing mutation, intersection and selection in the main process; the difference is that: the genetic algorithm controls the crossover of the father according to the fitness value, so that the probability value of the offspring selected after mutation is larger than the probability value of the individual with large fitness value in the maximization problem.
The variation vector of the differential evolution algorithm is generated by a parent differential vector, and is intersected with a parent individual vector to generate a new individual vector, and the new individual vector is directly selected with the parent individual. Obviously, in the process of optimizing circuit parameters, the approximation effect of the differential evolution algorithm is more obvious compared with that of the genetic algorithm.
A reference voltage source (reference voltagesource), which is an extremely important component of contemporary analog integrated circuits, provides a reference voltage for the series-connected voltage stabilizing circuits, a/D and D/a converters, and is also the regulated power supply or excitation source for most sensors. In addition, the reference voltage source can also be used as a standard battery, a scale standard of an instrument gauge head and a precision current source.
Reference voltage sources are found in almost all advanced electronic products, which may be stand alone or integrated in devices with more functionality. For example: in the data converter, the reference source provides an absolute voltage that is compared to the input voltage to determine the appropriate digital output. In a voltage regulator, a reference source provides a known voltage value that is compared to the output to derive a feedback for regulating the output voltage. In the voltage detector, the reference source is used as a threshold to set the trigger point.
The optimization of the reference source circuit parameters is mostly completed manually, and when a new reference source structure is designed, the parameter optimization needs to take a lot of time, which often lengthens the circuit design period and requires a lot of complicated work.
Example 1
Referring to fig. 1, fig. 1 is a circuit configuration diagram used in the present embodiment. The circuit structure generally means that the selection of the device types in the circuit design is completed, the connection relationship among the devices, the connection relationship between the power supply and the ground is completed, and the circuit diagram defined by the input and output ports is completed, namely, the circuit diagram of the device parameter design of the device is only not completed. In the present application, the meaning of the circuit structure is the same as in the art.
Since circuit design is a multi-objective optimization problem, especially analog circuit design requires trade-offs in terms of noise, linearity, gain, supply voltage, output swing, speed, input/output impedance, power consumption, etc.
Device parameters (e.g., device size information, PVT (Process, voltage and Temperature) characteristics of the device, etc.) affect the performance of the circuit in which they are located, and are a manifestation of circuit design tradeoffs.
The process of parameter optimization is described in detail below:
s1, initializing device parameters, namely describing the device parameters in a circuit structure by using a parameter vector, and selecting a plurality of device parameters as the parameter vector;
s2, judging termination conditions, namely judging whether the parameter vector meets the optimization termination conditions, and if so, ending optimization; if not, executing the step S3;
s3, device parameter variation, namely using a variation algorithm, and obtaining variation vectors corresponding to the parameter vectors one by one according to the parameter vectors;
s4, device parameter crossing, namely using a crossing algorithm to cross the parameter vector and the corresponding variation vector to obtain a crossing vector;
s5, selecting device parameters, namely respectively calculating performance indexes corresponding to the parameter vector, the variation vector and the cross vector, selecting a vector which enables the performance indexes to be optimal as a new parameter vector by using a selection algorithm, and executing step S2.
Hereinafter, the processing procedure of the optimization method is sequentially explained in detail.
Parameter initialization:
in the initialization process of differential evolution, M individuals, each consisting of n-dimensional vectors, need to be randomly and uniformly generated in a solution space.
Each individual may be represented as:
X i (0)=(x i,1 (0),x i,2 (0),x i,3 (0),...,x i,n (0))
i=1,2,3,...,M
the j-th dimension value of the i-th individual is taken as follows:
X i,j (0)=L j_min +(0,1)(L j_max -L j_min )
i=1,2,3,...,M
j=1,2,3,...,n
corresponding to an embodiment of the application, the number of individuals is the number of devices in the circuit structure, since the circuit structure thereof has been determined. On the other hand, the device is described using a matrix of 3 device parameters for each device, for example, a channel length, a channel width, and a finger (finger) number (i.e., a single MOS may be formed by connecting several equally sized finger-structured MOS transistors in parallel, the finger number being the number of finger-structured MOS transistors) m of the MOS transistor.
For a typical reference voltage source circuit, the population size parameter M is typically between 5×n and 40×n, but not less than 4×n.
Whereas the initialized device parameters need to meet the design constraints in the process file with respect to the reference voltage source circuit of the present application. In the course of integrated circuit design, process files define the type of device and the BSIM model is used in most process files to simulate the device used in circuit design.
However, due to the actual manufacturing process, certain design rules, such as DRC (Design Rule Check) and LVS (Layout VS Schematic), need to be met. In this embodiment, the width of the MOS transistor should be less than 100 microns (physical value of the parameter), greater than 0.22 microns, the length of the MOS transistor should be less than 10 microns, greater than 0.18 microns, etc.
Variation of device parameters:
in the genetic algorithm, the mutation operation is to adjust part of parameters of the chromosome. In the embodiment of the application, the change of the physical value of the device parameter can be correspondingly, for example, the length of the MOS tube is adjusted from 0.3 micron to 0.5 micron.
Among the difference algorithms, the mutation algorithm is: uniform cross-variation algorithm, gaussian variation algorithm, dynamic variation algorithm, direction-based variation algorithm, etc.
In iteration g, 3 individuals are randomly selected from the population (i.e., 3 devices are selected in the selected circuit configuration), each using X p1 (g)、X p2 (g)、X p3 (g) And (3) representing. And p1+notep2+notep3+notei, the resulting variance vector can be expressed as:
H i (g)=X p1 (g)+F·(X p2 (g)-X p3 (g))
wherein delta is p2,p3 =X p2 (g)-X p3 (g) As a differential vector, F is a scaling factor.
In the differential evolution algorithm, design parameters in the multidimensional search space, and in particular, in the embodiment of the application, the optimization targets are as follows: the temperature coefficient TC, the linearity LS and the working Current are optimized, the optimizing device is an MOS tube, and specific MOS tube parameters are the channel length, the channel width and the number m of the inserting fingers of the MOS tube.
However, unlike genetic algorithms, differential evolution algorithms perform a mutation operation on each parameter vector. Almost all processes use vectors. For example, in genetic algorithms, mutations are made at one or more loci on the chromosome. The chromosome can correspond to the device parameters of all devices of a certain circuit in the optimization process of the application, and the mutation of the chromosome is to perform trial adjustment on the device parameters of all devices in the certain circuit.
Whereas in a variant, the existing vector is adjusted using the differential vector of two randomly selected group vectors. Wherein the population vector corresponds to an instantiation of the circuit in this embodiment. From an implementation point of view, such vectorized mutation can be seen as a more efficient approach. This perturbation is performed on each population vector and therefore greater efficiency can be expected. Similarly, crossover is also a branch exchange of vector-based chromosomes or vector segments, as shown in FIG. 1.
For a scaling factor F, where F ε [0,2] is a parameter, commonly referred to as a differential weight (differential weight). This requires a minimum of n.gtoreq.4 for the population size. In principle, F.epsilon.0, 2, but in practical applications F.epsilon.0, 1 is chosen to be more efficient and stable. In the process of calculating the differential evolution algorithm, the value of F is usually 0.5.
Compared with the original differential evolution algorithm, in order to realize that the designed reference voltage source has better performance, the parameter F can be set as a self-adaptive adjustment parameter, and the setting process is as follows:
and (3) sequencing three individuals randomly selected from the mutation operator from good to bad to obtain corresponding Xb, xm and Xw and corresponding fitness fb, fm and fw. Fitness in genetic algorithms refers to the adaptation of a chromosome to the environment.
In the differential evolution algorithm, the fitness refers to the condition of the chromosome adapting to the environment, and the individual is ranked by adding the fitness corresponding to the temperature coefficient and the linearity from small to large, and the smaller the addition is, the higher the fitness value ranking is, and the better the result of the device parameter is.
In the application, the adaptability corresponds to the performance index of a certain circuit under the condition of specific parameters, and can be obtained by analyzing the simulation result of the circuit. The performance index may be: temperature coefficient, linearity, operating current, etc.
Mutation operators can be expressed as:
V i =X b +F i ·(X m -X w )
meanwhile, the value of F is adaptively changed according to two individuals generating differential vectors:
wherein, in particular to the present embodiment, F is selected l =0.1,F u =0.9。
Device parameter crossover
The crossover operation of the differential evolution algorithm means that part of the genes of two paired chromosomes are exchanged with each other in some way, thereby forming two new individuals. Common crossover algorithms include: single point crossing, two point crossing, arithmetic crossing, linear crossing, direction-based crossing, and the like.
In the optimization process of the present application, the process of crossing the period parameters can be regarded as exchanging different device parameters of two certain devices having the same circuit structure.
The interleaving operation is applicable to interleaving operators of binary coded individuals or floating point number coded individuals (i.e., data coding types in the process of circuit parameter optimization). In the present embodiment, an algorithm using arithmetic interleaving (Arithmetic Crossover) as interleaving operation is selected. Wherein the meaning of arithmetic crossover is: two individual threadsSexual combination to produce two new individual processes. Results after arithmetic interleaving V i,j Can be expressed as:
wherein Cr epsilon [0,1] is the crossover probability.
The crossing parameter Cr controls the rate or probability of crossing, typically Cr ε [0,1].
The crossover operation can be performed in two ways: binomial (binominal) and exponential (exoneumatic). Wherein the binomial scheme intersects each of the d components. By generating random numbers r subject to uniform distribution i ∈[0,1]. Thus V i The j-th component of (c) can be expressed as:
thus, the crossover operation can randomly determine whether to exchange a component with the variant.
In the exponential scheme, a piece of data of the variant is selected, the value range of the data is a value range of the device parameter in the embodiment of the application, and the piece starts with a random integer k with a random length of L, where the random integer k may include a plurality of components. This is a random choice of k.epsilon.0, d-1 and L.epsilon.1, d, which can be obtained
For the Cr parameter, the Cr parameter may also be set to be adaptive, with the set procedure:
wherein f i Is the fitness of the individual Xi, f min And f max The fitness of the worst and best individuals in the current population,is the average value of the current population fitness, cr l And Cr (V) u The lower limit and the upper limit of Cr are respectively, and Cr is general l =0.1,Cr u =0.6。
Parameter selection:
in genetic algorithms, a population (population) contains all chromosomes; the population number and the chromosome of each generation (generation) may be different, the differential evolution algorithm is also continuously searching for a better solution in an iterative mode, and the parameter selection process is the process of searching for the optimal solution.
In the technical scheme of the application, the population refers to different chromosomes as long as the reference voltage source circuits with different device parameters exist in the reference voltage source circuits with the same circuit structure. The collection of the reference voltage source circuits with different device parameters is a population.
The selection operation in the genetic algorithm refers to a process of selecting chromosomes according to the dominant order or fitness of the population. In an application of the application, the selecting operation is to select a device parameter of the reference voltage source circuit having the optimal performance from a set of reference voltage source circuits.
The reference voltage source circuit has a plurality of performance indexes, a selection algorithm is also needed to be used, the influence of the performance indexes on the reference voltage source is comprehensively considered, and a proper vector is selected from parameter vectors, variation vectors and crossover vectors to be used as a new parameter vector.
In this embodiment, the selection algorithm may use any one of the following methods:
(1) roulette selection;
(2) randomly traversing a sampling method;
(3) tournament selection.
The selection algorithm is described in detail below:
roulette selection method
The roulette selection method is to calculate the probability of each individual in the offspring according to the fitness value of the individual, and randomly select the individual to form the offspring population according to the probability.
The starting point for the roulette selection strategy is that the better the fitness value the greater the probability that an individual is selected. Therefore, when solving the maximization problem, we can directly use the fitness value to select. But when solving the minimization problem we must first transform the fitness function of the problem to transform the problem into a maximized one. The general steps of the genetic algorithm roulette selection strategy in maximizing problem solving are given below:
superposing fitness values of individuals in the population to obtain a total fitness value=1;
dividing the fitness value of each individual by the total fitness value to obtain the probability of the individual being selected;
calculating the cumulative probability of the individual to construct a wheel;
wheel disc selection: generating a random number in the [0,1] interval, and selecting an individual to enter the offspring population if the random number is smaller than or equal to the cumulative probability of the individual and greater than the cumulative probability of the individual 1.
Repeating the steps to obtain individuals which form a new generation population.
Random traversal sampling method
The selection probability is calculated like roulette, except for the medium range selection individuals in the random walk selection method. The concrete engineering is as follows: let npoint be the number of individuals to be selected, select individuals equidistantly, the distance of the selection pointer is 1/npoint, the position of the first pointer is determined by a uniform random number of [0,1/npoint ].
Tournament selection method
The tournament method selection strategy removes a number of individuals from the population at a time, and then selects the best one of them to enter the offspring population. This operation is repeated until the new population size reaches the original population size. The specific operation steps are as follows:
a) The number of individuals per selection (expressed herein as a percentage of the number of individuals in the population) is determined.
b) And randomly selecting a plurality of individuals (with the same probability of each individual to be selected) from the population to form a group, and selecting the individual with the best fitness value to enter the offspring population according to the fitness value of each individual.
c) Repeating the steps to obtain individuals which form a new generation population.
d) It should be noted that the tournament selection strategy is to select the best individual from all randomly selected individuals into the offspring population each time, and thus can be used universally to maximize and minimize problems, unlike the roulette selection strategy, which also requires the conversion of fitness values when solving the minimization problem.
For a new generation of individuals, i.e. a matrix of parameters of the component of the device parameters of all the circuits generated, it is better or even the same as for the previous generation of individuals. All device parameters are optimized through mutation, crossover and selection operations.
Populations in differential evolution are driven by mutation and selection processes. The abrupt process, including abrupt and crossover operations, is designed to utilize or explore the search space, while the selection process is used to ensure that device parameters that meet optimal solution potential can be further used for optimization of circuit parameters.
Example 2
For a solution x, if it satisfies the constraint, the solution is called a feasible solution, and if it does not, the solution is called an infeasible solution. For infeasible solutions, how to describe how much it violates a constraint, a constraint violation value (constraint violation value) is typically used to quantitatively describe how much a solution violates a constraint. For a solution x, its constraint violation value can be expressed as:
obviously, for a solution, the smaller its CV value, the better the solution is explained. Meanwhile, for a feasible solution, its CV value is 0, and for an infeasible solution, its CV value is greater than 0.
Therefore, on the basis of embodiment 1, the circuit parameter optimization method further includes, between steps S4 and S5, the steps of: s41, calculating constraint violation values of the parameter vector, the variation vector and the cross vector, and eliminating infeasible vectors according to the constraint violation values to obtain a feasible vector set.
Example 3
Based on example 2, the present application also proposes the following method for screening the solution after mutation and crossover.
In the multi-objective optimization problem, the targets are mutually restricted, so that the improvement of the performance of one target is usually at the cost of losing the performance of other targets, and a solution for optimizing all the target performances cannot exist, so that the solution is usually a set of non-inferior solutions, namely a Pareto solution set, for the multi-objective optimization problem.
In the search of multi-objective optimization algorithms, the concept of dominant (date) is commonly used. Optimizing through pareto dominance and finding out the optimal solution of pareto.
Let us consider two decision vectors a, b e X. If a Pareto is dominant (Pareto date) b, then it is noted as a > b, if and only if a and b satisfy:
if no decision vector pareto dominates a certain decision vector exists in the whole parameter space, the decision vector is called as the pareto optimal solution. All pareto optimal solutions constitute a set of pareto optimal solutions (Pareto Optimal Set).
Aiming at the optimization problem with constraint conditions, due to the randomness characteristic in the multi-objective evolutionary algorithm, a large number of unreasonable device parameters (namely infeasible solutions) appear in the process of optimizing the circuit parameters, so that the optimization process becomes complex and time-consuming. In order to improve the efficiency of the optimization method proposed by the application, constraint-based dominant relations (constraint-domination) are used for processing on the basis of Pareto dominant relations, and for decomposition-based algorithms, new replacement strategies are used for updating solutions.
The crowding degree is introduced below, and if the crowding degree is high, the solutions are sparse, namely the population diversity is better, and the solutions with higher crowding degree can be selected by the selection operation. In this embodiment, when the pareto ranks are the same, a crowding degree calculation is introduced to indicate the sparsity of its solution.
Wherein, the crowding degree w is defined as follows:
wherein the function f is the fitness of the individual (i.e., the fitness of the device), there are a plurality of individuals in a population, and the fitness value is ordered from large to small for the population, f max And f min Respectively the maximum value and the minimum value of fitness values in all individuals in the population, i is the label of the selected individual in the current population, f (i+1) is the fitness value of the last individual of the currently selected individual, and f (i+1) is the fitness value of the next individual of the currently selected individual. When i is the first individual and the last individual in the population, w is infinity.
The multi-objective genetic algorithm is an evolutionary algorithm for analyzing and solving the multi-objective optimization problem, and the core of the evolutionary algorithm is to coordinate the relations among objective functions and find out the optimal solution set for enabling the objective functions to reach a larger (or smaller) function value as much as possible. Therefore, the addition of the pareto dominant sorting and crowding degree comparison operator in the differential evolution algorithm can effectively improve the calculation efficiency of differential evolution.
The constraint governance relationship is described below, and for any two solutions x, y, the condition that x governs y may be satisfied by any one of the following conditions:
x is a feasible solution and y is an infeasible solution;
x, none are viable solutions, but CV (x) < CV (y);
x, y are both feasible solutions, and x Pareto dominates y.
When the pareto ordering levels are the same, introducing a crowding degree calculation to represent the sparsity of the solution. The high degree of crowding indicates that the solution is sparse, i.e. the population diversity is better.
In the case of two objective functions, the crowding degree of a certain individual corresponds to the sum of the side lengths of a maximum square which contains only the individual and is subjected to normalization processing.
The multi-objective genetic algorithm is an evolutionary algorithm for analyzing and solving the multi-objective optimization problem, and the core of the evolutionary algorithm is to coordinate the relations among objective functions and find out the optimal solution set for enabling the objective functions to reach a larger (or smaller) function value as much as possible. Therefore, the addition of the pareto dominant sorting and crowding degree comparison operator in the differential evolution algorithm can effectively improve the calculation efficiency of differential evolution.
Therefore, on the basis of embodiment 2, the circuit parameter optimization method further includes, between steps S41 and S5, the steps of: s42, performing pareto dominant ranking and crowding degree comparison on vectors in the affiliated feasible vector set.
The three independent optimizations yield the device parameters table 1 as follows:
referring to table 1, table 1 shows device parameters obtained by performing parameter automatic optimization on a full MOS reference source circuit 3 times using the modified differential evolution algorithm in embodiment 4 of the present application.
The evolution process of the relevant parameter values of each generation of optimal individuals in the three optimizing processes can be obtained from the accompanying figures 6-8 on the basis of not referring to the original artificial design parameter values.
In summary, the circuit parameter optimization method provided by the application optimizes the selected circuit parameters by using the differential evolution algorithm, and can rapidly find out the circuit parameters conforming to the circuit structure and the optimization index.
The foregoing is merely a preferred embodiment of the present application, and it should be noted that modifications and substitutions can be made by those skilled in the art without departing from the technical principles of the present application, and these modifications and substitutions should also be considered as being within the scope of the present application.
Claims (5)
1. A method for optimizing circuit parameters based on a differential optimization algorithm, wherein the method is applied to design of a reference voltage source, and the method comprises the following steps:
s1, describing device parameters in a circuit structure by using a parameter vector, and selecting a plurality of device parameters as the parameter vector; the method comprises the steps of randomly and uniformly generating M individuals in a solution space, wherein the number of the individuals is the number of devices in a circuit structure, each individual consists of n-dimensional vectors, and each device parameter comprises the channel length, the channel width and the number of fingers of a MOS tube;
s2, judging whether the parameter vector meets an optimization termination condition, and if so, ending optimization; if not, executing the step S3;
s3, using a mutation algorithm, and obtaining mutation vectors corresponding to the parameter vectors one by one according to the parameter vectors; the number of the parameter vectors is 3, and the obtained variation vectors are as follows:
H i (g)=X P1 (g)+F i ·(X p2 (g)-X p3 (g))
wherein p1+.p2+.p3+.i, Δ p2,p3 =X p2 (g)-X p3 (g) Is a differential vector, X p1 (g)、X p2 (g)、X p3 (g) Parameter vectors of 3 independent devices, F i Scaling factors for the variant algorithm;
scaling factor F of the mutation algorithm i The method is set as a parameter of self-adaptive adjustment, and the setting process is as follows:
mutation operatorThe three individuals selected randomly are ranked from good to bad to obtain the corresponding X b 、X m 、X w And corresponding fitness f b 、f m 、f w ;
F i Is based on two individual adaptive changes that generate a differential vector
Mutation operator
V i =X b +F i ·(X m -X w )
S4, performing cross processing on the parameter vector and the corresponding variation vector by using a cross algorithm to obtain a cross vector;
results after arithmetic interleaving V i,j Expressed as:
wherein Cri E [0,1] is the crossover probability;
by generating random numbers ri E [0,1] subject to uniform distribution],u i,j (g+1) is expressed as:
the crossover operation can randomly decide whether to exchange a certain component with the variant;
setting Cri parameters as self-adaption, wherein the setting process is as follows:
f i is the fitness of the individual Xi, f min And f max Respectively the worst sum of the current populationThe fitness of the individual is optimized and,is the average value of the current population fitness, cr l And Cr (V) u The lower limit and the upper limit of Cri are respectively, cr l =0.1,Cr u =0.6;
S41, calculating constraint violation values of the parameter vector, the variation vector and the cross vector, and eliminating infeasible vectors according to the constraint violation values to obtain a feasible vector set;
s42, performing pareto dominant ranking and crowding degree comparison on vectors in the affiliated feasible vector set; wherein the degree of congestion w i The definition is as follows:
wherein the function f is the fitness of the individual, the fitness of the individual is expressed as the fitness of the device, a plurality of individuals are in a population, the population is ordered from big to small in fitness value, f min And f max The fitness of the worst individuals and the optimal individuals in the current population are respectively, i is the label of the selected individuals in the current population, f (i-1) is the fitness value of the last individual of the currently selected individuals, and f (i+1) is the fitness value of the next individual of the currently selected individuals; when i is the first individual and the last individual in the population, w i Is infinite;
s5, respectively calculating performance indexes corresponding to the parameter vector, the variation vector and the cross vector, selecting a vector which enables the performance index to be optimal as a new parameter vector by using a selection algorithm, and executing the step S2; wherein the performance index comprises a temperature coefficient, linearity and working current;
wherein the constraint violation value is expressed as:
the smaller the CV value, the better the solution, the CV value is 0 for one feasible solution, and the CV value is greater than 0 for an infeasible solution;
the method for screening the solution after mutation and crossover comprises the following steps:
optimizing through pareto dominance and finding out the pareto optimal solution, examining two decision vectors a, b, if and only if a and b satisfy a pareto dominance b:
then it is noted as a > b;
if no decision vector pareto dominates a certain decision vector exists in the whole parameter space, the decision vector is called the pareto optimal solution.
2. The circuit parameter optimization method of claim 1, wherein in step S1, the physical values of the device parameters satisfy parameter constraints in a device design process file.
3. The circuit parameter optimization method of claim 1, wherein the mutation algorithm comprises: a uniform cross-variation algorithm, a gaussian variation algorithm, a dynamic variation algorithm, or a direction-based variation algorithm.
4. The circuit parameter optimization method of claim 1, wherein the interleaving algorithm comprises: any one of a single point crossover algorithm, a two point crossover algorithm, an arithmetic crossover algorithm, a linear crossover algorithm, or a direction-based crossover algorithm.
5. The circuit parameter optimization method of claim 1, wherein the selection algorithm comprises: any one of roulette selection, random walk sampling, and tournament selection.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910362465.4A CN110119558B (en) | 2019-04-30 | 2019-04-30 | Circuit parameter optimization method based on differential optimization algorithm |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910362465.4A CN110119558B (en) | 2019-04-30 | 2019-04-30 | Circuit parameter optimization method based on differential optimization algorithm |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110119558A CN110119558A (en) | 2019-08-13 |
CN110119558B true CN110119558B (en) | 2023-11-14 |
Family
ID=67520362
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910362465.4A Active CN110119558B (en) | 2019-04-30 | 2019-04-30 | Circuit parameter optimization method based on differential optimization algorithm |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110119558B (en) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110632973B (en) * | 2019-09-24 | 2021-07-09 | 中国航空工业集团公司沈阳飞机设计研究所 | Electromagnetic radiation control method and device thereof |
CN111159915A (en) * | 2020-01-03 | 2020-05-15 | 山东天岳电子科技有限公司 | Parameter optimization method and device for device design |
CN111476497B (en) * | 2020-04-15 | 2023-06-16 | 浙江天泓波控电子科技有限公司 | Distribution feed network method for miniaturized platform |
CN117422003B (en) * | 2023-12-19 | 2024-05-17 | 深圳市德兰明海新能源股份有限公司 | Method and device for optimally designing radiating fin and storage medium |
CN117688887B (en) * | 2024-02-04 | 2024-04-26 | 电子科技大学(深圳)高等研究院 | Circuit design method based on knowledge and data dual-drive artificial intelligence |
CN117784852B (en) * | 2024-02-28 | 2024-05-14 | 山东工商学院 | Multi-mode sensor temperature control method based on fish scale bionic optimization algorithm |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7660773B1 (en) * | 2005-12-12 | 2010-02-09 | The Mathworks, Inc. | System and method for the use of an adaptive mutation operator in genetic algorithms |
CN104318008A (en) * | 2014-10-20 | 2015-01-28 | 哈尔滨工程大学 | Loose constraint genetic simplex algorithm based optimal design method for condenser |
CN104318020A (en) * | 2014-10-24 | 2015-01-28 | 合肥工业大学 | Multi-objective sensor distributed point optimizing method on basis of self-adaptive differential evolution |
CN106028525A (en) * | 2016-06-21 | 2016-10-12 | 泰华智慧产业集团股份有限公司 | Differential evolution algorithm based adaptive indoor dimming method and system |
CN106647262A (en) * | 2016-11-28 | 2017-05-10 | 中国人民解放军国防科学技术大学 | Differential evolution method facing agile satellite multi-object task planning |
CN106845642A (en) * | 2017-01-22 | 2017-06-13 | 北京科技大学 | A kind of self adaptation multi-target evolution method of belt restraining cloud workflow schedule |
CN108512707A (en) * | 2018-04-18 | 2018-09-07 | 南京邮电大学 | The parameter adaptive microhabitat differential evolution method of Web service combination |
CN109255163A (en) * | 2018-08-23 | 2019-01-22 | 佛山市顺德区中山大学研究院 | Circuit structure optimization method based on tracking coding and genetic algorithm |
CN109543247A (en) * | 2018-11-01 | 2019-03-29 | 广州大学 | Parameters of Analog Integrated Circuit optimum design method and device based on NSGA- II |
CN109614224A (en) * | 2018-11-12 | 2019-04-12 | 华南理工大学 | A kind of method of optimization for power electronic circuit |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9785734B2 (en) * | 2015-07-29 | 2017-10-10 | Globalfoundries Inc. | Method and system for adjusting a circuit symbol |
-
2019
- 2019-04-30 CN CN201910362465.4A patent/CN110119558B/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7660773B1 (en) * | 2005-12-12 | 2010-02-09 | The Mathworks, Inc. | System and method for the use of an adaptive mutation operator in genetic algorithms |
CN104318008A (en) * | 2014-10-20 | 2015-01-28 | 哈尔滨工程大学 | Loose constraint genetic simplex algorithm based optimal design method for condenser |
CN104318020A (en) * | 2014-10-24 | 2015-01-28 | 合肥工业大学 | Multi-objective sensor distributed point optimizing method on basis of self-adaptive differential evolution |
CN106028525A (en) * | 2016-06-21 | 2016-10-12 | 泰华智慧产业集团股份有限公司 | Differential evolution algorithm based adaptive indoor dimming method and system |
CN106647262A (en) * | 2016-11-28 | 2017-05-10 | 中国人民解放军国防科学技术大学 | Differential evolution method facing agile satellite multi-object task planning |
CN106845642A (en) * | 2017-01-22 | 2017-06-13 | 北京科技大学 | A kind of self adaptation multi-target evolution method of belt restraining cloud workflow schedule |
CN108512707A (en) * | 2018-04-18 | 2018-09-07 | 南京邮电大学 | The parameter adaptive microhabitat differential evolution method of Web service combination |
CN109255163A (en) * | 2018-08-23 | 2019-01-22 | 佛山市顺德区中山大学研究院 | Circuit structure optimization method based on tracking coding and genetic algorithm |
CN109543247A (en) * | 2018-11-01 | 2019-03-29 | 广州大学 | Parameters of Analog Integrated Circuit optimum design method and device based on NSGA- II |
CN109614224A (en) * | 2018-11-12 | 2019-04-12 | 华南理工大学 | A kind of method of optimization for power electronic circuit |
Non-Patent Citations (4)
Title |
---|
基于ACDE-SVM 的引水隧洞施工仿真参数动态更新;肖 尧 等;《水力发电学报》;20190425;第234-145页 * |
基于差分进化算法的优化问题研究;常伶俐;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150715;第I140-105页 * |
李新杰 等.自适应混沌差分进化算法及应用.《水库调控实用技术及应用研究》.黄河水利出版社,2016,第83-86页. * |
王秋滢 等.自适应差分能进化神经网络基本原理.《船用调制型惯性导航及其组合导航技术》.国防工业出版社,2017,第147-149页. * |
Also Published As
Publication number | Publication date |
---|---|
CN110119558A (en) | 2019-08-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110119558B (en) | Circuit parameter optimization method based on differential optimization algorithm | |
Wang et al. | cPSO-CNN: An efficient PSO-based algorithm for fine-tuning hyper-parameters of convolutional neural networks | |
Gu et al. | Improving NSGA-III algorithms with information feedback models for large-scale many-objective optimization | |
Zhou et al. | Multiobjective evolutionary algorithms: A survey of the state of the art | |
Ryberg et al. | Metamodel-based multidisciplinary design optimization for automotive applications | |
CN114186749B (en) | Flexible workshop scheduling method and model based on reinforcement learning and genetic algorithm | |
Yi et al. | An on-line variable-fidelity surrogate-assisted harmony search algorithm with multi-level screening strategy for expensive engineering design optimization | |
Łapa | Meta-optimization of multi-objective population-based algorithms using multi-objective performance metrics | |
Pour et al. | The discrete time-cost-quality trade-off problem using a novel hybrid genetic algorithm | |
Zhang et al. | Embedding multi-attribute decision making into evolutionary optimization to solve the many-objective combinatorial optimization problems | |
CN117688887B (en) | Circuit design method based on knowledge and data dual-drive artificial intelligence | |
Mousa | Using genetic algorithm and TOPSIS technique for multiobjective transportation problem: a hybrid approach | |
CN110276478B (en) | Short-term wind power prediction method based on segmented ant colony algorithm optimization SVM | |
CN114327859B (en) | Source model clustering selection method for large-scale problem agent optimization of cloud computing environment | |
CN111144569A (en) | Yield improvement applicable model optimization method based on genetic algorithm | |
Reehuis et al. | Mixed-integer evolution strategy using multiobjective selection applied to warehouse design optimization | |
CN114818369A (en) | Method, system, device and medium for designing continuous transonic wind tunnel section | |
CN113205185A (en) | Network model optimization method and device, computer equipment and storage medium | |
CN114237166A (en) | Method for solving multi-rotating-speed energy-saving scheduling problem based on improved SPEA2 algorithm | |
CN111639797A (en) | Gumbel-softmax technology-based combined optimization method | |
CN112633500A (en) | Multi-objective optimization evolutionary computation method of convolutional neural network proxy model based on decomposition idea | |
CN111553071B (en) | High-dimensional multi-target evolution optimization method based on random embedded auxiliary model | |
Li et al. | Single-objective and multi-objective mixed-variable grey wolf optimizer for joint feature selection and classifier parameter tuning | |
Yang et al. | Evolutionary discrete multi-material topology optimization using CNN-based simulation without labeled training data | |
Pan et al. | A Web-Based Platform for Intelligent Instrument Design Using Improved Genetic Algorithm. |
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 |