Amplication parameter multi-objective optimization method
Through the LGBM proxy model and weight vector optimization method, the computational complexity and accuracy problems of multi-objective optimization in amplifier design are solved, efficient amplifier design parameter optimization is achieved, the design efficiency and accuracy are improved, and the Pareto front is quickly approached.
Patent Information
- Application Number
- CN202510947024.6
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-10
- Publication Date
- 2025-10-17
- Estimated Expiration
- 2045-07-10
AI Technical Summary
Existing amplifier design methods suffer from high computational complexity, insufficient accuracy of surrogate models, and insufficient guidance of population evolution direction in multi-objective optimization, resulting in low design efficiency.
The LGBM agent model is combined with the external population and size optimization database. The initial population is generated by the weight vector, the neighbor set is constructed and individual crossover mutation is performed, the population is updated using the aggregation function, and the weight vector is adjusted based on the diversity and convergence indicators in the iterative stage to optimize the amplifier design parameters.
It achieves efficient and low-cost optimization of multi-objective amplifier size, improves the accuracy of the proxy model, accelerates the convergence of the Pareto front, and reduces the computational and time costs of circuit simulation.
Smart Images

Figure CN120449797B_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application relates to the technical field of analog circuit optimization design, and in particular to an amplifier design parameter multi-objective optimization method. BACKGROUND
[0002] As the core module of electronic systems, the performance (such as gain, power consumption, stability) of an amplifier directly determines the signal processing capability of the system, and plays a key role in the fields of communication, medical equipment, etc. The core of amplifier design is to find the optimal balance in the conflict relationship of multi-objective performance (high gain, low power consumption, high stability, etc.) by adjusting parameters such as transistor width-length ratio and compensation capacitance.
[0003] Traditional amplifier design highly depends on high-precision circuit simulation (such as SPICE, Spectre) to verify performance, but such simulation has extremely high computational complexity, and a single simulation takes several minutes to several hours, resulting in high cost (computational cost and time cost) of repeatedly adjusting parameters during the design process, which seriously restricts the design efficiency.
[0004] To solve this problem, optimization methods based on proxy models have gradually become a research hotspot. Such methods replace high-cost simulation with low-cost proxy models (such as regression models) to achieve fast prediction of amplifier performance, thereby reducing the dependence on simulation. However, existing amplifier design methods based on proxy models still have significant limitations:
[0005] Firstly, the multi-objective optimization capability is insufficient: most methods are only applicable to single-objective optimization scenarios, or simplify the multi-objective problem into a single-objective problem by introducing a performance indicator (FoM). Although this simplification reduces computational complexity, it fails to effectively capture the inherent conflict relationship between gain, power consumption, stability, etc., resulting in an optimization solution set that cannot cover the full range of multi-objective trade-offs and cannot provide diverse optimal solutions for actual design. Secondly, the prediction accuracy of the proxy model is limited: the updating mechanism of traditional proxy models (such as basic regression models) is imperfect, relying only on initial simulation data for training without fully utilizing historical design schemes (such as population iteration data) generated during the optimization process and the accumulated size optimization database. Due to the strong nonlinear and non-stationary coupling relationship between amplifier parameters and performance (such as the nonlinear impact of transistor size changes on gain), the statically trained proxy model is prone to prediction bias and cannot accurately support automated design. Finally, the population evolution direction guidance is insufficient: in existing methods, the weight vector that guides the search direction of the population is mostly fixed or only adjusted simply in a few iteration stages, which cannot adapt to the needs of different stages of the optimization process (such as exploring multiple directions in the early stage and converging to a high-quality region in the later stage). This leads to ineffective search of the population in non-optimal sub-directions, resulting in a large number of iterations and difficulty in quickly approaching the Pareto frontier of multi-objective optimal solutions, further increasing the design cycle.
[0006] How to solve the above technical problems is the problem faced by the present application. SUMMARY
[0007] In order to solve the deficiencies of the prior art, the present application provides a multi-objective amplifier size optimization method which realizes efficient and low-cost optimization of multi-objective amplifier size, improves the accuracy of the proxy model, and accelerates the convergence of the Pareto front.
[0008] The technical scheme adopted by the present application to solve its technical problems is as follows: the present application provides an amplifier design parameter multi-objective optimization method, comprising the following steps:
[0009] S1, construct an external population and a size optimization database, define an objective function of the amplifier size optimization problem, generate N weight vectors according to the objective function, and generate an initial population based on the weight vectors; the objective function is a performance index of the amplifier circuit, and the performance index includes gain and phase margin, or gain, common mode rejection ratio and power supply rejection ratio;
[0010] The initial population includes N individuals, and each individual corresponds to a weight vector;
[0011] S2, calculate the target value of the individual of the initial population, and construct an LGBM proxy model according to the individual and the target value, and define a prediction error threshold of the LGBM proxy model ; the calculation of the target value of the individual of the initial population uses a circuit simulator Spectre;
[0012] The prediction error threshold of the LGBM proxy model It is set according to experience and takes a value of 0.945.
[0013] S3, construct a neighbor set for the weight vector, randomly select two weight vectors from the neighbor set, and generate a new individual by taking the individuals corresponding to the two weight vectors as parent individuals;
[0014] S4, predict the target value of the new individual through the LGBM proxy model, and calculate the prediction error , if the prediction error is less than the prediction error threshold , the target value of the new individual is predicted by the LGBM proxy model, otherwise the target value of the new individual is calculated by the circuit simulator Spectre;
[0015] The prediction error calculation formula is as follows:
[0016]
[0017] is the true value of the i-th sample (the target value calculated by the circuit simulation), is the predicted value of the i-th sample (the target value predicted by the LGBM surrogate model), is the average value of all true values, n is the number of samples.
[0018] It should be noted that when obtaining the target value of the new individual, it is necessary to judge whether to predict the target value by the LGBM surrogate model or to calculate the target value by the circuit simulator according to the prediction error of the LGBM surrogate model. When the prediction error is less than the prediction error threshold, it means that the target value predicted by the model is within a reasonable range, and at this time, the target value of the new individual is predicted by the surrogate model. When the prediction error is greater than the prediction error threshold, it means that the target value predicted by the model does not meet the requirements, and at this time, the target value of the new individual is calculated by the circuit simulator.
[0019] S5, based on the target value, combining the aggregation function, calculating the aggregation function value of the individual, updating the population and the external population under the current iteration round according to the aggregation function value, and storing the new individual and the target value of the new individual into the size optimization database;
[0020] S6, setting the maximum value of the iteration number, when the iteration number does not reach the maximum value, S3-S5 are executed cyclically, and the LGBM surrogate model and the weight vector are updated in the iteration; when the iteration number reaches the maximum value, the algorithm ends, and the external population is output.
[0021] The method is used for size optimization of a two-stage operational amplifier and a folded cascode operational amplifier analog circuit, and is used for reducing the number of circuit simulations and improving the design efficiency of the amplifier circuit.
[0022] The external population is an empty array at the beginning of the iteration, and the upper limit of the storage is set to non-dominated individuals are stored in the iteration; the size optimization database is an empty database at the beginning of the iteration, the new individual and the target value of the new individual are stored as a piece of data in the iteration, and a data label is added, the data label includes the iteration round when the data is stored, the number of times the data is accumulated for training the LGBM surrogate model, and whether the target value is predicted by the LGBM surrogate model; the generation of N weight vectors adopts Das and Dennis's method, and the generation of the initial population adopts the Latin hypercube sampling method.
[0023] The new individual and the target value of the new individual are stored in the size optimization database, which further includes selecting τ pieces of data whose target values are predicted by the LGBM surrogate model according to the data label from the size optimization database, using the maximum and minimum filling principle, calculating the target value of the individual by using the circuit simulator Spectre, and replacing the target value predicted by the LGBM surrogate model stored in the size optimization database with the calculated target value.
[0024] It should be noted that the core concept of LGBM is to gradually minimize the loss function by iteratively fitting the residual or negative gradient of the current model, ultimately forming a powerful additive model. A histogram algorithm is used to segment continuous data into k discrete values, constructing a k-width histogram, effectively reducing memory consumption. The Gradient Boosting Decision Tree (GBDT) is then trained using a leaf-split strategy, which prioritizes splitting leaf nodes with the highest gain, improving the model's predictive accuracy.
[0025] Preferably, the constructing of the neighbor set includes: calculating the Euclidean distance between all weight vectors, and selecting k weight vectors with the closest distance to each weight vector to construct the neighbor set;
[0026] The generating of new individuals includes performing uniform crossover and Gaussian mutation on the parent individuals.
[0027] Preferably, the step of calculating the aggregate function value of the individual based on the target value in combination with the aggregate function, and updating the population and the external population in the current iteration round according to the aggregate function value includes:
[0028] Based on the target value of the new individual and the target values of the individuals corresponding to the k weight vectors of the neighbor set, the aggregation function value of the new individual and the aggregation function value of the individuals corresponding to the k weight vectors of the neighbor set are calculated according to the pre-defined aggregation function;
[0029] The aggregation function formula is as follows:
[0030]
[0031] Where, For individuals, is the number of objective functions, For the j The objective function, For the j The reference point of the objective function, For the j The weight vector of the objective function, For the j The weight of the objective function.
[0032] Compare the aggregation function value of the new individual with the aggregation function values of the individuals corresponding to the k weight vectors of the neighbor set. If the aggregation function value of the new individual is smaller than the aggregation function value of the individuals corresponding to the k weight vectors of the neighbor set, then replace the individuals whose aggregation function value is larger than the aggregation function value of the new individual among the individuals corresponding to the k weight vectors of the neighbor set with the new individual to obtain the updated population.
[0033] If the external population does not reach the storage limit If yes, the new individual is directly added to the external population, otherwise, the target value of the new individual is compared with the target values of all individuals in the external population, if the target value of the new individual dominates the level, the new individual replaces the individual with the lowest level in the external population, and an updated external population is obtained.
[0034] Preferably, updating the LGBM agent model and the weight vector in the iteration comprises:
[0035] In each iteration, all individuals and target values of the population in the last iteration round are collected to form a temporary data set A 1. The temporary data set is processed to remove duplicates to obtain a reduced data set A 1. The temporary data set is processed to remove duplicates to obtain a reduced data set ;
[0036] Based on the data label in the size optimization database, combined with a pre-defined data selection formula, data is screened from the size optimization database as an additional sample set; the pre-defined data selection formula is specifically represented as follows:
[0037]
[0038] In the formula, is the probability of data selection, is the iteration round when the data is stored, is the number of times the data is accumulated for training the LGBM agent model;
[0039] It should be noted that the formula preferentially selects data with fewer training times to reduce the risk of overfitting; recent data is given a higher weight to enable the model to quickly adapt to changes in the design space, which not only optimizes data utilization efficiency, but also significantly improves the model's prediction ability for amplifier performance, providing a solid foundation for automated design.
[0040] The reduced data set is combined with the additional sample set to obtain a model update data set, and the model update data set is divided into a training set, a validation set and a test set;
[0041] The training set is used to incrementally train the LGBM agent model, the validation set is used to adjust the LGBM model hyperparameters, and the performance of the LGBM agent model is evaluated on the test set;
[0042] The maximum and minimum filling principle comprises: individuals in data predicted by the LGBM agent model from target values in the size optimization database are used as candidate individuals , individuals in data not predicted by the LGBM agent model from target values are used as sampled individuals , the distance between each candidate individual and the sampled individual is calculated and determine the minimum distance to all ; among all candidate individuals , the next sampling individual is selected according to , wherein is the next sampling individual, and C is the candidate individual set.
[0043] It should be noted that if there are multiple candidate individuals with the same maximum minimum distance, one of them is randomly selected as the next sampling individual.
[0044] The maximum-minimum filling criterion is a method for selecting data points that need to be evaluated in the proxy-assisted optimization algorithm. By calculating the distance between candidate individuals and sampled individuals, the individual that needs to be evaluated is selected, ensuring that the sampled individuals are uniformly distributed in the search space and preventing excessive aggregation of sample points in a specific area. By evaluating the individual and replacing the target value obtained by the LGBM proxy model with the target value obtained by the real evaluation, the problem of model drift caused by the fact that the data used to train the model is all predicted by the LGBM proxy model is avoided, thereby causing the diversity and convergence of the algorithm to decline.
[0045] When the number of iterations is less than 40% of the maximum number of iterations, the weight vector is not updated.
[0046] When 40% of the maximum number of iterations ≤ the number of iterations < 70% of the maximum number of iterations, after updating the population in each iteration round, the target value of the individual in the updated population is subjected to maximum-minimum normalization processing to obtain the target value of the individual after maximum-minimum normalization processing; based on the target value of the individual after maximum-minimum normalization processing, the diversity index is calculated, wherein , wherein 、 、 , respectively, the diversity index of the current iteration, the previous generation of the current iteration, and the previous two generations of the current iteration, = 0.15, is the best constant obtained by experiment, then the updated population individuals are clustered into T classes, the density of each class is calculated and sorted in descending order to obtain the density descending order of the T classes; the number of weight vectors that need to be adjusted num is calculated according to the pre-defined number calculation formula, and combined with the density descending order of the T classes, num weight vectors are deleted from the T classes, and num weight vectors are added.
[0047] The diversity index calculation formula is as follows:
[0048]
[0049] In the formula, S represents the external population output by the algorithm in the current iteration, |S| represents the number of solutions in the external population, The calculation is The mean
[0050]
[0051] and All middle and The target value in the kth dimension, For solution The minimum Manhattan distance to all other solutions in the solution set S.
[0052] When 70% of the maximum number of iterations < the number of iterations ≤ the maximum number of iterations, calculate the convergence index ,like ,in, 、 、 They represent the convergence indexes of the current iteration, the previous generation of the current iteration, and the two generations before the current iteration, respectively. =0.1, which is the optimal constant obtained through experiments. Then cluster the individuals of the updated population into T classes, calculate the density of each class and sort them in ascending order, and obtain the density ascending order of T classes. According to the predefined quantity calculation formula, calculate the number num of weight vectors that need to be adjusted. Combined with the density ascending order of T classes, delete num weight vectors in T classes and add num weight vectors.
[0053] The formula for calculating the convergence index is as follows:
[0054]
[0055] S is the external population output by the algorithm in the current iteration, is an individual in the population, Z is the reference point of the population, that is, the maximum value in each dimension, for arrive The hyperrectangular region between It is the Lebesgue measure, which is used to calculate the volume of a multidimensional space set.
[0056] The predefined quantity calculation formula is specifically expressed as follows:
[0057]
[0058] Where, is the current iteration number, is the number of individuals in the updated population.
[0059] The density calculation formula is specifically represented as follows:
[0060]
[0061] In the formula, is the jth cluster, is the centroid of the jth cluster, is a sample in is the number of samples in the jth cluster, is the Euclidean distance. The numerator of the formula is the size of a cluster (the number of samples), and the denominator is the sum of the distances of all samples to the centroid of the cluster (the smaller the value, the more compact the cluster), so the greater the density, the more compact the cluster.
[0062] It should be noted that at the beginning of the iteration (<40%), the population distribution is scattered, and the recognition of the target space is limited. If the weight vector is adjusted too early, the search direction may converge to a local optimum too early. By fixing the weight vector, the diversity of the initial sampling is maintained, ensuring that the algorithm covers the potential multi-objective trade-off direction comprehensively and provides rich basic data for the subsequent stage.
[0063] In the middle of the iteration (40%-70%), the algorithm has initially converged to some high-quality areas, but may ignore some "niche" but valuable trade-off directions (such as "medium gain-medium power consumption"). By deleting the weight vectors of high-density classes and adding the weight vectors of low-density classes, the population is guided to evolve in unexplored directions, avoiding falling into local optima and expanding the coverage of the Pareto front.
[0064] In the later stage of iteration (70%-100%), the algorithm has identified most of the high-quality areas, and the focus has shifted to fine convergence, focusing on the most promising sub-directions. By deleting the weight vectors of low-density classes and adding the weight vectors of high-density classes, resources are concentrated to accelerate convergence, reduce redundant search, and quickly approach the theoretical optimal solution.
[0065] Preferably, the clustering of the updated population individuals adopts an angle-based vector clustering method, which includes the following steps:
[0066] By initializing uniformly distributed 2-dimensional vectors dividing classes, the calculation method is as follows:
[0067]
[0068] wherein t =1,2,…, ; The value of depends on the specific experiment.
[0069] Create a loop that randomly selects two objective functions from the objective functions of the amplifier size optimization problem. For each two-dimensional vector ,in accordance with Select an individual from the updated population and assign it to t The cycle ends when all individuals in the updated population are clustered.
[0070] It should be noted that in the multi-objective optimization of automated amplifier design, the complex coupling of design parameters requires algorithms that can efficiently coordinate population distributions to rapidly approach the Pareto frontier. Traditional partition-based clustering methods directly divide the population by objective value, resulting in individuals with similar objectives being grouped into the same cluster. This leads to cluster polarization: solutions with excellent convergence are concentrated in a few clusters, while solutions with poor performance are dispersed elsewhere, severely limiting the algorithm's ability to explore the multi-dimensional amplifier design space. Therefore, an angle-based vector clustering method is employed. By using the angle similarity criterion, the solutions within each cluster are highly consistent in their multi-objective trade-off characteristics.
[0071] Preferably, the deleting num weight vectors in class T and adding num weight vectors includes:
[0072] When 40% of the maximum number of iterations ≤ the number of iterations < 70% of the maximum number of iterations, sort in descending order of T class and record it as , ,..., ,right Add a new weight vector, if Only one individual , then find the individual The nearest num individuals ,k=1,2,...,num; and The centroid of the corresponding weight vector is inserted as the new weight vector; if it contains multiple individuals, two individuals are randomly selected and the centroid of the weight vector corresponding to the two individuals is inserted as the new weight vector until num weight vectors are inserted; Delete the weight vector if The number of individuals e≥num, then from Randomly select num individuals and delete the weight vectors corresponding to num individuals; if If the number of individuals e < num, then delete the weight vectors corresponding to e individuals, update num = num-e, and continue to traverse the next category until num weight vectors are deleted;
[0073] When 70% of the maximum number of iterations < iteration number < maximum number of iterations, sort in ascending order of T class, denoted as , ,..., , to new weight vectors, randomly select two individuals from , and insert the centroid of the weight vectors corresponding to the two individuals as a new weight vector until num weight vectors are inserted; to delete weight vectors, if the number of individuals e of is greater than or equal to num, randomly select num individuals from , and delete the weight vectors corresponding to the num individuals; if the number of individuals e of is less than num, delete the weight vectors corresponding to e individuals, update num = num-e, and continue to traverse the next class until num weight vectors are deleted.
[0074] It should be noted that if there are z classes with the same density, and they are both maximum or minimum, and z is greater than or equal to 2, then a class is randomly selected from the z classes for weight vector deletion or addition.
[0075] The beneficial effects of the present application are: the efficient and low-cost optimization of the size of the multi-objective amplifier is realized, the accuracy of the proxy model is improved, and the convergence of the Pareto front is accelerated. The proxy model is used to predict the target value, reducing the calculation cost and time cost of circuit simulation, combining the multi-objective optimization algorithm and the weight vector to guide the evolution direction of the population, solving the problem that the existing technology based on the proxy is limited to single objective or simplified multi-objective through FoM. In the algorithm iteration, the historical design scheme and the size optimization database are used to update the LGBM proxy model, effectively improving the prediction accuracy of the LGBM proxy model. At the same time, according to different strategies, the weight vectors are updated for different iteration stages, ensuring that the population searches in the optimal sub-direction, accelerating the approximation of the optimal Pareto front, and reducing the number of population iterations. BRIEF DESCRIPTION OF DRAWINGS
[0076] Figure 1 is a step diagram for the method of the present application.
[0077] Figure 2 is a circuit schematic diagram of a two-stage operational amplifier of embodiment 2 of the present application.
[0078] Figure 3 is a circuit schematic diagram of a folded cascode operational amplifier of embodiment 2 of the present application. DETAILED DESCRIPTION
[0079] In order to clearly illustrate the technical features of the present scheme, the present scheme will be described below through specific embodiments.
[0080] Embodiment 1:
[0081] Referring to Figure 1 The embodiment shown is an amplifier design parameter multi-objective optimization method, comprising the following steps:
[0082] Step S1, construct an external population and a size optimization database, define the objective function of the amplifier size optimization problem, generate N weight vectors according to the objective function, and generate an initial population based on the weight vectors; the initial population includes N individuals, and each individual corresponds to a weight vector.
[0083] The external population is an empty array at the beginning of iteration, and the upper limit of storage is set to , and the non-dominated individuals are stored in the iteration; the size optimization database is an empty database at the beginning of iteration, and a new individual and the target value of the new individual are stored as a piece of data in the iteration, and a data label is added, the data label includes the iteration round when the data is stored, the number of data accumulations for training the LGBM proxy model, and whether the target value is obtained by the LGBM proxy model prediction; Das and Dennis's method is used to generate N weight vectors, and the Latin hypercube sampling method is used to generate the initial population.
[0084] Step S2, calculate the target value of the individual of the initial population, and construct an LGBM proxy model according to the individual and the target value, define the prediction error threshold of the LGBM proxy model .
[0085] The prediction error threshold of the LGBM proxy model is set according to experience, and the value is 0.945.
[0086] The target value of the individual of the initial population is calculated by using the circuit simulator Spectre.
[0087] Step S3, construct a neighbor set for the weight vector, randomly select two weight vectors from the neighbor set, and generate a new individual by taking the individuals corresponding to the two weight vectors as parent individuals.
[0088] Constructing a neighbor set includes: calculating the Euclidean distance between all weight vectors, and selecting the nearest k weight vectors for each weight vector to construct a neighbor set;
[0089] Generating a new individual includes uniform crossover and Gaussian mutation of the parent individual.
[0090] Step S4, predict the target value of the new individual by the LGBM proxy model, and calculate the prediction error , if the prediction error is greater than the prediction error threshold , the target value of the new individual is calculated, otherwise the target value of the new individual is predicted by the LGBM proxy model.
[0091] The prediction error calculation formula is as follows:
[0092]
[0093] is the true value of the i-th sample (the target value calculated by circuit simulation), is the predicted value of the i-th sample (the target value predicted by the LGBM surrogate model), is the average of all true values, , n is the number of samples.
[0094] The target value of the new individual is obtained by calculation using the circuit simulator Spectre.
[0095] It should be noted that when obtaining the target value of a new individual, it is necessary to determine whether to use the LGBM proxy model to predict the target value or to calculate the target value through a circuit simulator based on the prediction error of the LGBM proxy model. When the prediction error is less than the prediction error threshold, it means that the target value predicted by the model is within a reasonable range. At this time, the proxy model is used to predict the target value of the new individual; when the prediction error is greater than the prediction error threshold, it means that the target value predicted by the model does not meet the requirements. At this time, the target value of the new individual is calculated through a circuit simulator.
[0096] Step S5: Calculate the aggregate function value of the individual based on the target value combined with the aggregate function, update the population and external population in the current iteration round according to the aggregate function value, and store the new individual and the target value of the new individual in the size optimization database.
[0097] Based on the target value of the new individual and the target values of the individuals corresponding to the k weight vectors of the neighbor set, the aggregation function value of the new individual and the aggregation function value of the individuals corresponding to the k weight vectors of the neighbor set are calculated according to the pre-defined aggregation function;
[0098] The aggregate function formula is as follows:
[0099]
[0100] Where, For individuals, is the number of objective functions, For the j The objective function, For the j The reference point of the objective function, For the j The weight vector of the objective function, For the j The weight of the objective function.
[0101] The aggregation function value of the new individual is compared with the aggregation function values of the individuals corresponding to the k weight vectors of the neighbor set. If the aggregation function value of the new individual is smaller than the aggregation function values of the individuals corresponding to the k weight vectors of the neighbor set, the individual with the largest aggregation function value among the individuals corresponding to the k weight vectors of the neighbor set is replaced by the new individual, to obtain an updated population;
[0102] If the external population does not reach the upper limit of storage , the new individual is directly added to the external population, otherwise, the dominance relationship between the target value of the new individual and the target values of all individuals in the external population is compared. If the new individual target value has a high dominance level, the new individual is used to replace the individual with the lowest dominance level in the external population, to obtain an updated external population.
[0103] Step S6, set the maximum number of iterations, when the number of iterations does not reach the maximum value, loop S3-S5, update the LGBM agent model and the weight vector in the iteration; when the number of iterations reaches the maximum value, the algorithm ends and the external population is output.
[0104] Update the LGBM agent model in the iteration:
[0105] In each iteration, collect all individuals and target values of the population in the last iteration round to form a temporary data set A 1, the temporary data set A 1 is de-duplicated to obtain a reduced data set ;
[0106] Based on the data label in the size optimization database, combined with a pre-defined data selection formula, data is screened from the size optimization database as an additional sample set; the pre-defined data selection formula is specifically represented as follows:
[0107]
[0108] In the formula, is the probability of data selection, is the iteration round when the data is stored, is the number of times the data is accumulated for training the LGBM agent model;
[0109] It should be noted that the formula preferentially selects data with fewer training times to reduce the risk of overfitting; recent data is given a higher weight, so that the model can quickly adapt to changes in the design space, not only optimizing data utilization efficiency, but also significantly improving the model's prediction ability for amplifier performance, providing a solid foundation for automated design.
[0110] The reduced data set is combined with the additional sample set to obtain a model update data set, and the model update data set is divided into a training set, a validation set and a test set;
[0111] Incrementally train the LGBM surrogate model using the training set, adjust the LGBM model hyperparameters using the validation set, and evaluate the performance of the LGBM surrogate model on the test set;
[0112] From the size optimization database, according to the data label, adopt the maximum and minimum filling principle to select τ target values of the data predicted by the LGBM surrogate model, calculate the target values of the individuals using the circuit simulator Spectre, and replace the target values predicted by the LGBM surrogate model stored in the size optimization database with the calculated target values;
[0113] The maximum and minimum filling principle includes: taking the individuals in the data predicted by the LGBM surrogate model in the size optimization database as candidate individuals , taking the individuals in the data not predicted by the LGBM surrogate model as sampled individuals , calculating the distance between each candidate individual and the sampled individuals , and determining the minimum distance to all ; among all candidate individuals , the next sampling individual is selected according to , wherein is the next sampling individual, and C is the candidate individual set.
[0114] It should be noted that if there are multiple candidate individuals with the same maximum and minimum distance, one of them is randomly selected as the next sampling individual.
[0115] The maximum and minimum filling criterion is a method for selecting data points that need to be evaluated in the proxy-assisted optimization algorithm. This criterion selects individuals that need to be evaluated by calculating the distance between candidate individuals and sampled individuals, ensuring that sampled individuals are uniformly distributed in the search space and preventing excessive clustering of sample points in a specific area. By evaluating the individuals and replacing the target values predicted by the LGBM surrogate model in the size optimization database with the target values obtained by real evaluation, the problem of model drift caused by using data predicted by the LGBM surrogate model to train the model is avoided, which further causes the diversity and convergence of the algorithm to decline.
[0116] Update the weight vector in iterations:
[0117] When the number of iterations is less than 40% of the maximum number of iterations, the weight vector is not updated;
[0118] When 40% of the maximum number of iterations ≤ the number of iterations < 70% of the maximum number of iterations, after updating the population in each round of iteration, the target values of the individuals in the updated population are normalized to obtain the target values of the individuals after the maximum-minimum normalization. Based on the target values of the individuals after the maximum-minimum normalization, the diversity index is calculated. ,like ,in, 、 、 Represent the diversity indicators of the current iteration, the previous generation of the current iteration, and the two generations before the current iteration, respectively. =0.15, cluster the updated population individuals into T categories, calculate the density of each category and arrange the T categories in descending order, recorded as , ,..., ,right Add a new weight vector, if Only one individual , then find the individual The nearest num individuals ,k=1,2,...,num; and The centroid of the corresponding weight vector is inserted as the new weight vector; if it contains multiple individuals, two individuals are randomly selected and the centroid of the weight vector corresponding to the two individuals is inserted as the new weight vector until num weight vectors are inserted; Delete the weight vector if The number of individuals e≥num, then from Randomly select num individuals and delete the weight vectors corresponding to num individuals; if If the number of individuals e<num, delete the weight vectors corresponding to e individuals, update num=num-e, and continue to traverse the next category until num weight vectors are deleted.
[0119] The formula for calculating the diversity index is as follows:
[0120]
[0121] In the formula, S represents the external population output by the algorithm in the current iteration, |S| represents the number of solutions in the external population, The calculation is The mean
[0122]
[0123] and All middle and target value on the kth dimension of the solution, for the solution the minimum Manhattan distance to all other solutions in the solution set S.
[0124] When 70% of the maximum number of iterations < iteration number ≤ maximum number of iterations, calculate the convergence index , if wherein, 、 、 respectively represent the convergence index of the current iteration, the last generation of the current iteration, and the last two generations of the current iteration, = 0.1, the updated population individuals are clustered into T classes, the density of each class is calculated, and the T classes are arranged in ascending order, denoted as , ..., , for new weight vectors, randomly select two individuals from , and insert the centroid of the weight vectors corresponding to the two individuals as a new weight vector until num weight vectors are inserted; for delete weight vectors, if the number of individuals e ≥ num in , randomly select num individuals from , and delete the weight vectors corresponding to the num individuals; if the number of individuals e < num in , delete the weight vectors corresponding to e individuals, update num = num - e, and continue to traverse the next class until num weight vectors are deleted.
[0125] It should be noted that if there are z classes with the same density, and they are both the maximum or minimum, z ≥ 2, then randomly select one class from the z classes for weight vector deletion or addition.
[0126] The convergence index calculation formula is as follows:
[0127]
[0128] S represents the external population output by the algorithm at the current iteration, is an individual in the population, and Z is the reference point of the population, that is, the maximum value in each dimension, is the hyper-rectangular region between and , is the Lebesgue measure used to calculate the volume of a set in multi-dimensional space.
[0129] The calculation formula of the predefined number is specifically represented as follows:
[0130]
[0131] In the formula, is the current iteration number, is the number of individuals in the updated population.
[0132] The density calculation formula is specifically expressed as follows:
[0133]
[0134] In the formula, is the jth clustered class, is the centroid of the jth clustered class, is a sample in the formula, is the number of samples in the jth clustered class, is the Euclidean distance. The numerator of the formula is the size of a class (the number of samples), and the denominator is the sum of the distances of all samples to the centroid of the class (the smaller the value, the more compact the cluster), so the greater the density, the tighter the cluster.
[0135] It should be noted that at the beginning of iteration (<40%), the population distribution is scattered, and the recognition of the target space is limited. If the weight vector is adjusted too early, it may lead to premature convergence of the search direction to a local optimum. By fixing the weight vector, the diversity of initial sampling is maintained, ensuring that the algorithm covers the potential multi-objective trade-off direction comprehensively and provides rich basic data for the subsequent stage.
[0136] In the middle of iteration (40%-70%), the algorithm has initially converged to some high-quality areas, but may ignore some "niche" but valuable trade-off directions (such as "medium gain-medium power consumption"). By deleting the weight vectors of high-density classes and adding the weight vectors of low-density classes, the population is guided to evolve in unexplored directions, avoiding falling into local optima and expanding the coverage of the Pareto front.
[0137] In the later stage of iteration (70%-100%), the algorithm has identified most of the high-quality areas, and the focus has shifted to fine convergence, focusing on the most promising sub-directions. By deleting the weight vectors of low-density classes and adding the weight vectors of high-density classes, resources are concentrated to accelerate convergence, reduce redundant search, and quickly approach the theoretical optimal solution.
[0138] The updated population individuals are clustered using an angle-based vector clustering method, including:
[0139] By initializing uniformly distributed 2D vectors dividing classes, the calculation method is:
[0140]
[0141] wherein t =1,2, …, ; The value of the is determined according to a specific experiment.
[0142] A loop is created, and two objective functions are randomly selected from the objective function of the amplifier size optimization problem, and for each two-dimensional vector , a individual is selected from the updated population according to and assigned to the first t class, and the loop ends until all individuals in the updated population are clustered.
[0143] It should be noted that in the multi-objective optimization of the automatic design of the amplifier, the complex coupling relationship of the design parameters requires the algorithm to efficiently coordinate the population distribution to quickly approach the Pareto front. The traditional clustering method based on division directly divides the population according to the objective value, resulting in individuals with similar objectives being grouped into the same cluster, causing clustering polarization: solutions with excellent convergence are concentrated in a few clusters, while solutions with poor performance are scattered in other areas, which severely limits the algorithm's exploration ability of the multi-dimensional design space of the amplifier. Therefore, a vector clustering method based on angle is adopted, and by using the angle similarity criterion, the solutions in each class are highly consistent in multi-objective trade-off characteristics.
[0144] Embodiment 2:
[0145] To verify the effectiveness of the method proposed in the present application, two classical analog circuits, a two-stage operational amplifier (TSOA) and a folded cascode operational amplifier (FCOA), are used as experimental cases in this embodiment. Both analog circuits are implemented using ICSPROUT 55nm technology, and six advanced algorithms are selected as the comparison benchmarks: LDS-AF, SSDE, PC-SAEA, MO-L2SMEA, MCEA-D and ADSAPSO. These algorithms are all surrogate model optimization algorithms for analog circuit problems. By analyzing the best performance indicators, average HV metric values and running times obtained by each algorithm in circuit optimization, the optimization ability and efficiency of each algorithm are comprehensively evaluated. The "+", "=" and "-" symbols respectively represent that the proposed algorithm has significant advantages, equivalent performance and significant disadvantages compared with the original algorithm.
[0146] In this embodiment, the surrogate model accuracy threshold =0.945, the decay rate is 0.01, the update threshold =0.15 and =0.1. The comparison algorithms all use the best parameter configuration recommended in the original literature. The upper limit of the real evaluation times of all algorithms is set to 1000 times.
[0147] The circuit diagram of the secondary operational amplifier is as follows Figure 2 As shown in Figure 1, the circuit consists of three parts: a bias circuit, an input-stage amplifier circuit, and an output-stage amplifier circuit. The bias circuit, consisting of M8-M13 and resistor RB, is a cascode Widlar current source. M8 and M9 have the same width-to-length ratio. Compared to M13, M12 has resistor RB added to its source, forming a micro-current source that generates current. The symmetrical M11 and M12 form a cascode structure, minimizing current errors caused by channel length modulation. While providing bias current, they also provide a bias voltage for the gate of M14. The input-stage amplifier circuit consists of M1-M5. M1 and M2 form a PMOS differential input pair, with differential inputs VN and VP, respectively. VN is the inverting input, and VP is the non-inverting input. Compared to single-ended inputs, this effectively suppresses common-mode signal interference. M3 and M4 current mirrors act as active loads. M5 provides a constant bias current for the first stage, with its drain connected to the power supply voltage VDD. The output-stage amplifier circuit consists of M6 and M7. M6 is a common-source amplifier, while M7 provides a constant bias current and also serves as the second-stage output load. The circuit's output is connected to the drain of M6, and an external load capacitor, CL, is connected to simulate load characteristics. The phase compensation circuit consists of M14 and Cc. M14 operates in the linear region and is equivalent to a resistor. Together with capacitor Cc, it is connected between the second-stage input and output to form RC Miller compensation.
[0148] In the Two-Stage Operational Amplifier (TSOA) problem, the decision variable dimension is 18, and the target space dimension is 3. The three optimization objectives for this circuit design problem are maximizing gain, common-mode rejection ratio (CMRR), and power supply rejection ratio (PSRR). In industrial applications, a circuit design is considered qualified if all three objectives exceed 70dB.
[0149] In this embodiment, the weights corresponding to Gain, CMRR, and PSRR are W = {0.5, 0.3, 0.2}. The hypervolume (HV) metric is used to evaluate the performance of these surrogate model-based optimization algorithms on TSOA. The specific values are shown in Table 1 below:
[0150] Table 1 Average performance and HV of 7 surrogate model-based optimization algorithms on TSOA problem
[0151]
[0152] As shown in the TSOA data column in Table 1, the S-MOEA / D algorithm achieved the best maximum performance metric for this circuit optimization. Furthermore, analysis based on the average HV (hypervolume) metric showed that S-MOEA / D had the best convergence performance. In terms of algorithm runtime, none of the seven compared algorithms demonstrated a significant improvement in optimization speed, due to the time-consuming nature of actual circuit evaluation in analog circuit optimization.
[0153] The circuit diagram of the folded cascode operational amplifier is as follows: Figure 3 As shown, the circuit primarily consists of a differential input stage, an intermediate amplifier stage, and an output driver stage. The differential input stage comprises a pair of PMOS transistors M1 and M2, which receive the differential signal (VIN+, VIN-). Tail current source M0 provides a constant bias current, achieving high common-mode rejection ratio (CMRR) and low-noise amplification. The intermediate amplifier stage utilizes a cascode structure formed by M5, M6, and M7 to increase voltage gain. A current mirror formed by M3 and M4 stabilizes the operating point. VB4 provides the bias voltage for M3 and M4, ensuring the current mirror operates in the proper saturation region, thus stabilizing current and gain. The output stage utilizes a Class-AB complementary structure formed by M8 (PMOS) and M9 and M10 (NMOS), reducing output impedance and enhancing current drive capability to ensure signal swing. Bias voltages VB1 and VB2 and the power supplies (VDD, VSS) provide the quiescent operating point for each stage. Node VB3 may be connected to a Miller compensation capacitor to optimize frequency response. VOUT is used for output performance testing. The circuit is a typical high-performance operational amplifier architecture that takes into account high gain, low power consumption and stability through multi-stage collaborative design.
[0154] In the Folded-Cascode Operational Amplifier (FCOA) problem, the decision variable dimension is 14, and the target space dimension is 2. The two optimization objectives for this circuit design problem are maximizing gain and phase margin (PM). In industrial applications, a circuit design is considered feasible if its gain exceeds 55dB and its phase margin is greater than 45 degrees.
[0155] In this embodiment, the weights corresponding to Gain and PM are W = {0.75, 0.25}. The hypervolume (HV) metric is used to evaluate the performance of these surrogate model-based optimization algorithms on FCOA. The specific values are shown in Table 2 below:
[0156] Table 2 Average performance and HV of seven surrogate model-based optimization algorithms on the FCOA problem
[0157]
[0158] As shown in the FCOA data column in Table 2, the S-MOEA / D algorithm also achieves the best maximum performance indicator and the optimal convergence performance in the optimization of this circuit. In terms of algorithm running time, similar to the TSOA problem, all the comparative algorithms do not show significant advantages.
[0159] The application proposes an analog circuit amplifier automatic design method S-MOEA / D based on light gradient boosting decision tree, aiming at realizing parameter optimization of the amplifier. The method includes a low-cost SrM online updating strategy and an adaptive weight vector strategy based on population distribution. In the online updating strategy, by utilizing the historical information of the population and the information of the public database, the modeling ability of the model for the analog circuit information is significantly improved, thereby improving the prediction accuracy. The weight vector updating strategy ensures that the population searches in the optimal sub-direction, thereby accelerating the approximation of the population to the Pareto front. In the comparative experiment, compared with other six most advanced SAEAs, the S-MOEA / D shows strong competitiveness in low-dimensional problems. The results of the analog circuit case further verify that the S-MOEA / D has better optimization capability in the optimization of the analog circuit.
[0160] The technical features not described in the application can be realized by or with the prior art, which will not be repeated here. Of course, the above description is not a limitation of the application, and the application is not limited to the above examples. Changes, modifications, additions or substitutions made by ordinary skilled in the art within the essential scope of the application should also be within the protection scope of the application.
Claims
1. A multi-objective optimization method for amplifier design parameters, characterized in that: The following steps are involved: S1. Build an external population and size optimization database, define an objective function for the amplifier size optimization problem, generate N weight vectors according to the objective function, and generate an initial population based on the weight vectors; the objective function is a performance indicator of the amplifier circuit, and the performance indicator includes gain and phase margin, or gain, common mode rejection ratio, and power supply rejection ratio; S2. Calculate the target value of the individual in the initial population, build the LGBM proxy model based on the individual and target values, and define the prediction error threshold of the LGBM proxy model ; The target values of the individuals in the initial population are calculated using the circuit simulator Spectre; S3. Construct a neighbor set for the weight vector, randomly select two weight vectors from the neighbor set, and use the individuals corresponding to the two weight vectors as parent individuals to generate a new individual; S4. Predict the target value of the new individual through the LGBM agent model and calculate the prediction error , if the prediction error Less than the prediction error threshold , the LGBM proxy model is used to predict the target value of the new individual, otherwise the target value of the new individual is calculated by the circuit simulator Spectre; S5. Calculate the aggregate function value of the individual based on the target value combined with the aggregate function, update the population and external population in the current iteration round according to the aggregate function value, and store the new individual and the target value of the new individual in the size optimization database; S6. Set the maximum number of iterations. When the number of iterations does not reach the maximum, execute S3-S5 in a loop, updating the LGBM agent model and weight vector during the iteration. When the number of iterations reaches the maximum, the algorithm ends and outputs the external population that meets the circuit performance requirements. The method is used for size optimization of analog circuits of secondary operational amplifiers and folded cascode operational amplifiers, thereby reducing the number of circuit simulations and improving amplifier circuit design efficiency. The external population is an empty array at the beginning of the iteration, and the storage limit is set to , store non-dominated individuals in the iteration; The size optimization database is empty at the beginning of an iteration. During the iteration, a new individual and its target value are stored as a piece of data, and a data label is added. The data label includes the iteration round when the data is stored, the number of times the data is used to train the LGBM proxy model, and whether the target value is predicted by the LGBM proxy model. The Das and Dennis's method is used to generate the N weight vectors, and the Latin hypercube sampling method is used to generate the initial population. The initial population includes N individuals, each of which corresponds to a weight vector. The storing of the new individual and the target value of the new individual in the size optimization database also includes selecting τ target values from the size optimization database according to the data label and the maximum and minimum filling principle, and obtaining data predicted by the LGBM proxy model, calculating the target value of the individual using the circuit simulator Spectre, and replacing the target value predicted by the LGBM proxy model stored in the size optimization database with the calculated target value.
2. The multi-objective optimization method for amplifier design parameters according to claim 1, characterized in that: The constructing of the neighbor set includes: calculating the Euclidean distance between all weight vectors, and selecting the k weight vectors with the closest distance to each weight vector to construct the neighbor set; The generating of new individuals includes performing uniform crossover and Gaussian mutation on the parent individuals.
3. The multi-objective optimization method for amplifier design parameters according to claim 2, characterized in that: The step of calculating the aggregate function value of an individual based on the target value combined with the aggregate function, and updating the population and the external population in the current iteration round according to the aggregate function value includes: Based on the target value of the new individual and the target values of the individuals corresponding to the k weight vectors of the neighbor set, the aggregation function value of the new individual and the aggregation function value of the individuals corresponding to the k weight vectors of the neighbor set are calculated according to the pre-defined aggregation function; The aggregation function formula is as follows: Where, For individuals, is the number of objective functions, For the j The objective function, For the j The reference point of the objective function, For the j The weight vector of the objective function, For the j The weight of the objective function; Compare the aggregation function value of the new individual with the aggregation function values of the individuals corresponding to the k weight vectors of the neighbor set. If the aggregation function value of the new individual is smaller than the aggregation function value of the individuals corresponding to the k weight vectors of the neighbor set, then replace the individuals whose aggregation function value is larger than the aggregation function value of the new individual among the individuals corresponding to the k weight vectors of the neighbor set with the new individual to obtain the updated population. If the external population does not reach the storage limit , the new individual is directly added to the external population. Otherwise, the dominance relationship between the new individual target value and the target values of all individuals in the external population is compared. If the dominance level of the new individual target value is high, the new individual is used to replace the individual with the lowest dominance level in the external population to obtain the updated external population.
4. The multi-objective optimization method for amplifier design parameters according to claim 3, characterized in that: The updating of the LGBM agent model and weight vector in the iteration includes: In each iteration, all individuals and target values of the population in the previous iteration are collected to form a temporary data set A 1. For temporary data sets A 1 Perform deduplication processing to obtain a streamlined data set ; Based on the data labels in the size optimization database and in combination with a predefined data selection formula, data is filtered from the size optimization database as an additional sample set; the predefined data selection formula is specifically expressed as follows: Where, is the probability of data selection, is the iteration round when data is stored, The number of times the data is used to train the LGBM proxy model; The dataset will be streamlined and additional sample sets to obtain the model update dataset, and divide the model update dataset into training set, validation set and test set; Use the training set to incrementally train the LGBM proxy model, use the validation set to adjust the LGBM model hyperparameters, and evaluate the LGBM proxy model performance on the test set; The maximum and minimum filling principle includes: taking individuals in the data obtained by predicting the target value in the size optimization database through the LGBM agent model as candidate individuals , the individuals in the data whose target values are not predicted by the LGBM proxy model are regarded as sampled individuals , calculate each candidate individual With the sampled individuals The distance between , and determine With all The minimum distance ; Among all candidate individuals In, based on Select the next sampling individual, where is the next sampling individual, and C is the candidate individual set; When the number of iterations is less than 40% of the maximum number of iterations, the weight vector is not updated; When 40% of the maximum number of iterations ≤ the number of iterations < 70% of the maximum number of iterations, after updating the population in each round of iteration, the target values of the individuals in the updated population are normalized to obtain the target values of the individuals after the maximum-minimum normalization. Based on the target values of the individuals after the maximum-minimum normalization, the diversity index is calculated. ,like ,in, 、 、 Represent the diversity indicators of the current iteration, the previous generation of the current iteration, and the two generations before the current iteration, respectively. If is a constant, the updated population individuals are clustered into T classes, the density of each class is calculated and sorted in descending order, and the density of the T classes is sorted in descending order. According to the predefined quantity calculation formula, the number num of weight vectors that need to be adjusted is calculated. Combined with the density of the T classes in descending order, num weight vectors are deleted from the T class and num weight vectors are added. When 70% of the maximum number of iterations < the number of iterations ≤ the maximum number of iterations, calculate the convergence index ,like ,in, 、 、 They represent the convergence indexes of the current iteration, the previous generation of the current iteration, and the two generations before the current iteration, respectively. If is a constant, the individuals in the updated population are clustered into T classes, the density of each class is calculated and sorted in ascending order, and the density of the T classes is sorted in ascending order. According to the predefined quantity calculation formula, the number num of weight vectors that need to be adjusted is calculated. Combined with the density sorting of the T classes in ascending order, num weight vectors are deleted from the T class and num weight vectors are added. The predefined quantity calculation formula is specifically expressed as follows: Where, is the current iteration number, is the number of individuals in the updated population.
5. The multi-objective optimization method for amplifier design parameters according to claim 4, characterized in that: The updated population individuals are clustered using an angle-based vector clustering method, including: By initialization uniformly distributed 2D vectors Division Classes, the calculation method is: in t =1,2,…, ; Create a loop that randomly selects two objective functions from the objective functions of the amplifier size optimization problem. For each two-dimensional vector ,in accordance with Select an individual from the updated population and assign it to t The cycle ends when all individuals in the updated population are clustered.
6. The multi-objective optimization method for amplifier design parameters according to claim 5, characterized in that: The deleting num weight vectors and adding num weight vectors in class T includes: When 40% of the maximum number of iterations ≤ the number of iterations < 70% of the maximum number of iterations, sort in descending order of T class and record it as , ,..., ,right Add a new weight vector, if Only one individual , then find the individual The nearest num individuals ,k=1,2,...,num; and The centroid of the corresponding weight vector is inserted as the new weight vector; if it contains multiple individuals, two individuals are randomly selected and the centroid of the weight vector corresponding to the two individuals is inserted as the new weight vector until num weight vectors are inserted; Delete the weight vector if The number of individuals e≥num, then from Randomly select num individuals and delete the weight vectors corresponding to num individuals; if If the number of individuals e < num, then delete the weight vectors corresponding to e individuals, update num = num-e, and continue to traverse the next category until num weight vectors are deleted; When 70% of the maximum number of iterations < the number of iterations ≤ the maximum number of iterations, sort in ascending order of T class and record it as , ,..., ,right Add a new weight vector, from Randomly select two individuals from the , and insert the centroid of the weight vectors corresponding to the two individuals as the new weight vector until num weight vectors are inserted; Delete the weight vector if The number of individuals e≥num, then from Randomly select num individuals and delete the weight vectors corresponding to num individuals; if If the number of individuals e<num, delete the weight vectors corresponding to e individuals, update num=num-e, and continue to traverse the next category until num weight vectors are deleted.
Citation Information
Patent Citations
Power amplifier design method combining memory polynomial and improved whale algorithm
CN116776728A
Method and apparatus for designing electronic circuits
US20050257178A1