A method of optimizing design

The multi-agent design optimizer with RL algorithms and differential evolution addresses inefficiencies in traditional design optimization by enhancing search ability and avoiding premature convergence, achieving efficient and accurate optimization of design parameters.

WO2025254508A1PCT designated stage Publication Date: 2025-12-11FILPAL (M) SDN BHD

Patent Information

Application Number
PCT/MY2025/050031
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-06-06
Filing Date
2025-06-06
Publication Date
2025-12-11

AI Technical Summary

Technical Problem

Traditional engineering design optimization is time-consuming, prone to human error, and inefficient due to the vast number of parameters, and lacks the ability to explore the full potential possibilities of solutions quickly, especially in manual methods, and existing multi-agent reinforcement learning methods do not incorporate differential evolution.

Method used

A method utilizing a multi-agent design optimizer with reinforcement learning (RL) algorithms, employing differential evolution to optimize design parameters, enabling self-adaptive, AI-assisted optimization for both local and global search of optimal solutions.

Benefits of technology

Enhances solution search ability, avoids premature convergence, and efficiently achieves optimal design parameters through cooperative optimization of multiple RL agents, improving the efficiency and accuracy of design optimization processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure MY2025050031_11122025_PF_FP_ABST
    Figure MY2025050031_11122025_PF_FP_ABST
Patent Text Reader

Abstract

The present invention relates to a method of optimizing design (201) comprising the steps of obtaining at least one design (201) from at least one electronic design automation (EDA) tool (113); defining said design's at least one goal (205) and optimizing said design's at least one parameter (203) with at least one multi-agent design optimizer (107).
Need to check novelty before this filing date? Find Prior Art

Description

[0001] A METHOD OF OPTIMIZING DESIGN

[0002] 1. TECHNICAL FIELD OF THE INVENTION

[0003] The present invention relates to a method of optimizing design comprising the steps of obtaining at least one design from at least one electronic design automation (EDA) tool; defining said design's at least one goal and optimizing said design's at least one parameter with at least one multi-agent design optimizer.

[0004] 2. BACKGROUND OF THE INVENTION Engineering design optimization is part of the engineering design methodology, whereby said engineering design optimization is generally referred to as a process of performing at least one iteration of mathematical formulations or algorithms in finding the best design parameters or variables in the design in a given constraint, that can meet the requirements, objectives or goals of a project. Traditionally, engineering design optimization was generally being done manually, which is time consuming and requires hands-on experience, prone to human error and inefficient. This is due to the vast number of parameters or variables involved, which makes the optimization possibilities to be too many to be tried one- by-one. Another problem of manual engineering design optimization is the inability to explore the full potential possibilities of solution fast enough to come up with the optimum design that meets the objectives or goals of the design.

[0005] YIN CHANGSHENG et al, CN116090549A, disclosed a multi-agent reinforcement learning decision-making method based on knowledge driving. However, said prior art does not include usage of differential evolution, which is critical in the method of the present invention.

[0006] Hence, it would be advantageous to alleviate the shortcomings by having a method of optimizing design which comprises of a multi-agent optimizer.

[0007] 3. SUMMARY OF THE INVENTION

[0008] Accordingly, it is the primary aim of the present invention to provide a method of optimizing design which is capable of achieving self-adaptive, Al-assisted optimization based on different design's structure by using a plurality of Al models (multi-agent).

[0009] It is yet another objective of the present invention to provide a method of optimizing design which is able to enhance solution search ability to avoid prematurely converged solutions.

[0010] It is yet another objective of the present invention to provide a method of optimizing design which is able to achieve generic design's structure optimization to both local and global search for optimal solutions. Additional objects of the invention will become apparent with an understanding of the following detailed description of the invention or upon employment of the invention in actual practice.

[0011] According to the preferred embodiment of the present invention the following is provided:

[0012] A method of optimizing design, comprising the following steps: i. obtaining (103) at least one design from at least one electronic design automation (EDA) tool; ii. defining said design's at least one goal; iii. optimizing said design's at least one parameter with at least one multi-agent design optimizer.

[0013] 4. BRIEF DESCRIPTION OF THE DRAWINGS

[0014] Other aspect of the present invention and their advantages will be discerned after studying the Detailed Description in conjunction with the accompanying drawings in which:

[0015] Fig. 1 is a flowchart showing the method of optimizing design of the present invention. Fig. 2A is a 3D design structure while Fig. 2B is a 2D design in schematic diagram.

[0016] Fig. 2C is a graph showing the design goal versus the original design output's simulation results and optimised design's simulation results.

[0017] Fig. 2D shows a graphical illustration of the direction and step size of the design parameters in the reinforcement learning (RL) agents.

[0018] Fig. 3 is a flowchart showing step (iii) of the method of the present invention whereby design parameters are optimized using at least one multi-agent design optimizer.

[0019] Fig. 4 shows an example of the samples of the multiple sets of design parameters.

[0020] Fig. 5 shows an example of how the multiple sets of design parameters are simulated to product design's simulation results.

[0021] Fig. 6 is a flowchart showing sub-step (iii)(g) of the method of the present invention whereby design parameters are archived.

[0022] Fig. 7 is a flowchart showing sub-step (iii)(c) of the method of the present invention whereby each RL agent is iterated through while searching for the direction and step size of each design parameter in each RL agent.

[0023] Fig. 8 A shows a current RL agent's pool.

[0024] Fig. 8B shows a data storage buffer. Fig. 9 is a block diagram showing how RL agent's new design parameters are being updated.

[0025] Fig. 10 shows an example of the main interface of the graphics user interface (GUI) of the implementation of the method of optimizing design of the present invention.

[0026] Fig. 11 shows an example of the GUI of the implementation of the method of optimizing design of the present invention, during optimization process.

[0027] 5. DETAILED DESCRIPTION OF THE DRAWINGS

[0028] In the following detailed description, numerous specific details are set forth in order to provide a thorough understanding of the invention. However, it will be understood by the person having ordinary skill in the art that the invention may be practised without these specific details. In other instances, well known methods, procedures and / or components have not been described in detail so as not to obscure the invention.

[0029] The invention will be more clearly understood from the following description of the embodiments thereof, given by way of example only with reference to the accompanying drawings, which are not drawn to scale.

[0030] The invention presents a method of optimizing design 201, as shown in Fig. 1.

[0031] Step (i) of the method of present invention is obtaining 103 at least one design 201 from at least one electronic design automation (EDA) tool 113 whereby the design 201 can be circuitry (as shown in Fig. 2B), 2-dimentional (2D) structures or 3-dimentional (3D) structures (as shown in Fig. 2A) in at least one computer-aided design (CAD) software that comprises of subcategories not limited to computer-aided engineering (CAE), 2D CAD, 3D CAD, or printed circuit board (PCB) design. The design's 201 properties should preferably be predefined to cover the whole design structure and the design's simulation results (low fitness to the design goals) can be successfully simulated without simulation errors. If the design's simulation results cannot be generated, the method of the present invention cannot be continued because it is not a valid design. The design's parameters, for example, can be width and length (dimensions) of the 3D design's structure parts, or schematic variables of a 2D circuit design, or the arrangement of the PCB components, or path routing of a car, or the memory sticks placements in the floorplan. The design's simulation results, for example, can be S-parameters response in 2D / 3D Microwave filter structures, or blade's temperature of a 3D turbine blade structure, or cost of a structure, or electrical performance of a PCB design, in the form of numerical data. In order to examine whether the fitness of the design's structure to the design's goal(s) or requirement(s), the design's simulation result is evaluated and a fitness value is calculated using the method of the present invention. The design's simulation result generally changes with the change of the design's parameters 203. The design's parameters 203, for example, can be width dimension and length dimension of a 3-dimensional (3D) design's structural parts, schematic variables of a 2-dimensional (2D) circuit design, an arrangement of components on a printed circuit board (PCB), path routing of a vehicle, or memory sticks placements in a floorplan. Thus, the objective of the method of the present invention is to find the exact value of the design's parameters 203 such that the output design's simulation results can satisfy the design's goal(s), by continuously adjusting the value of the design parameters 203, said process is referred to as optimisation. Users can decide the goals to be met by performing said method of the present invention, the final output of the method of the present invention is an optimal set of design's parameter values that have a high fitness to the defined goals.

[0032] Step (ii) of the present invention is defining 105 at least one design goal 205 or at least one set of design goals. The design goal(s) 205 (one goal or multiple goals) must be defined by the user. The design goal(s) 205, for example, can be the y-axis value of a certain range in the x-axis in the x-y graph with the conditions (bigger than, smaller than, or equal to), or the dimensions of a 3D structures, or the cost of the design structure after being manufactured, or the locations of the PCB components placed on the PCB board. The design 201 prepared may or may not have already satisfied or achieved the design's goal(s) 205. The achievements of the design's goal(s) 205 are the requirements that determines whether the design 201 is good or bad. Nevertheless, the design 201 can still be running through the design optimisation process. By evaluating the design's simulation results 207 using a mathematical analysis in the automatic design optimization method of the present invention, said method can identify if the design's simulation results 207 satisfies, not satisfies, very close to, or very far away from the design's goal(s) 205 in numerical form called fitness. These design goal(s) or set of design goal(s) 205 are used to evaluate the design 201 in said method of the present invention. An example of an illustration of the comparison between the design's output response 207 and the design goal 205 can be shown in Fig. 2C, whereby the dotted lines are the goals 205, whereby in this example, from 3.416GHz to 3.786GHz, the value of design's output response must be smaller than - 17dB. The dashed curves are the original design responses before optimization 207A while the solid curves are the optimised design output responses 207B. These curves are called S-parameters.

[0033] Step (iii) is optimizing 107 said design's at least one parameter 203 with at least one multi-agent design optimizer 107. Step (iii) comprises of the following sub-steps. In sub-step (iii)(a), a plurality of reinforcement learning agents 109 are initialized 301, preferably using sampling technique, each said reinforcement learning agent 109 with a set of unique value of design parameter 203. The values of the design parameters are unique such that the values of design parameters are different from one reinforcement learning agent 109 to another reinforcement learning agent 109. Examples of said set of value of design parameters are as shown in Fig. 5, such as pl, p2, ... pN wherein said value can be integer or float numbers. Other forms of initialization method are also acceptable. Each set of design parameter 203 is treated as a single agent and will utilise the reinforcement learning (RL) model.

[0034] The process in sub-step (iii) (a) involves sampling multiple sets of the design parameters using sampling techniques which are not limited to Latin Hypercube, Quasi-Monte Carlo with Sobol / Halton sequence, or random. "Sample" is used here to stress that the design parameters 203 are obtained with a certain sequence using said sampling techniques or mathematical approaches addressed above. Each set of the design parameters is known as an agent. In view that each agent is utilising the trained RL model, said agent has "intelligence". More than one number of agents will be defined automatically and initialized with the trained RL model. They will then be deployed to solve the optimisation cooperatively. An example of said sampling process can be illustrated in Fig. 4. The dots are the samples 401, wherein each dot represents a set of design parameters 203. All dots are classified as a population in this evolutionary algorithm. The set of design parameters (one dot) can be pictured as: [ pl, p2, ... pN ] where N is the number of total design parameters 203 in a sample (one dot). The "N" can be 6, 10, 15 or any other suitable amount of design parameters 203. "pl" can be width with "p2" being the length. These dots (multiple sets of the design parameters 203 are being sampled in a latent space 403, as shown in Fig. 4, whereby it can be illustrated as a sphere in Fig. 4. Latent space refers to an abstract space to visualise high-dimensional population in the 2D image of Fig. 4.

[0035] In sub-step (iii) (b), the current state of each reinforcement learning agent 109 in statistical representation 111 is calculated 303. For each agent 109 in the multiple sets (pool), the current agent's state vector is calculated. State vector is the input to the agent's RL model. The state vector is represented in a mathematical matrix. The mathematical matrix or statistical representation 111 comprises of elements such as Lehmer mean, standard deviation, probability of improvement, interquartile mean, optimality gap, fitness, variance, principal component analysis (PCA) reduced design parameter values, angle to the expected optimally or combination thereof.

[0036] The method of the present invention is developed with reinforcement learning

[0037] (RL) algorithm, which is further scaled into multi-agent support, which results in more than one RL model being utilised to solve an optimisation problem. Thus, each RL agent is acting as an optimising agent, with the ability to cooperate with other optimising RL agents together to achieve the design goal. In another words, each RL agent is an Al model that has the ability to decide how to update the set of design parameters. To visualise this, imagine specifying five number of agents to solve an optimisation problem. Each RL agent will decide the direction and step size of its set of design parameters values.

[0038] As shown in Fig. 2D, each RL agent 109 is initialized with a unique set of design parameters values, the logic to adjusting its parameters values are governed by its RL model. The flag 209 depicts the location of the expected highest fitness area. The objective of each agent 109 is to reach the location of the flag 209. However, the location of the flag is unknown. Therefore, the searching of the location of the flag 209 by adjusting the self-location of each agent 109 is called optimization. Two elements (direction and step size) are controlled by each RL agent, to adjust its set of design parameters. The dotted arrow line in Fig. 2D illustrates an example of the direction (shown in the direction of the arrow head) and the step size (shown in the length of the dotted arrow line). Fig. 2D shows a good example of visualising each set of design parameters in an RL agent 109 in a 2D representation, whereby the number of design parameters in each RL agent 109 is two. So, it is possible to display it by treating the two values as x-y coordinates.

[0039] In sub-step (iii)(c) of the method of optimizing design of the present invention, reinforcement learning agent 109 is iterated through 305 and the direction and step size of each design parameter 203 in each reinforcement learning agent 109 is searched based on their respective state and policy before generating a new set of design parameters 203. The process of generating a new set of design parameters 203 in each agent 109 is through a modified mutation process, whereby the mutation process is modified based on the Differential Evolution algorithm's mutation strategies, namely "bestlbin" algorithm. This multi-agent search policy workflow as in sub-step (iii)(c) is an iterative process, whereby it iterates through the RL agents 109 and generates a new set of design parameters 2O3.Sub-step (iii)(c) comprises of the following substeps. In sub-step (iii)(c)(a), as shown in Fig. 8A and Fig. 8B, two reinforcement learning agents 109 are randomly chosen 701 from at least one pool of reinforcement learning agents 109 and one reinforcement learning agent 109 being randomly chosen from at least one data storage buffer before choosing the top 0.01% reinforcement learning agent's 109 set of design parameters 203. Said pool of reinforcement learning agents 109 originates from the "sampling technique" as shown in Fig. 4. 1.

[0040] The action of choosing the top 0.01% reinforcement learning agent's 109 set of design parameters is done using the following sub-steps: Firstly, all reinforcement learning agents are organized in ascending order according to their fitness (beginning with the best fitness until the worst fitness). Then, the first 0.01% agents from the organised agents are chosen. For example, if there are ten organised agents, the first 0.01% of the ten organised agents would be (10 * 0.01 = 0.1 ~= 1), thus selecting the first agent. If there are 150 organised agents, (150 * 0.01 = 1.5 ~= 2), thus selecting the first agent and second agent from the organised agents. Thereafter, if the agents being chosen from the organised agents are more than one, one agent will be randomly selected from the chosen 0.01% of the agents.

[0041] In sub-step (iii)(c)(b), scaling factor value, crossover rate value and archive solutions rate value are generated 703 by feeding state vector computed in step (iii)(b) into the current iteration agent's reinforcement learning model; wherein said scaling factor value, crossover rate value and archive solutions rate value are float numbers between 0 and 1. In sub-step (iii)(c)(c), a new temporary set of design parameters 203A are generated 705 using current-to-pbest method if said archive solutions rate value is equal or bigger than 0.5; or a new temporary set of design parameters 203A are generated 707 using bestlbin method if said archive solutions rate value is less than 0.5.

[0042] Current-to-pbest method refers to the formula:

[0043] Xbest + f. (Xrl ~ Xr2) wherein Xfe / is the current best agent, xriis random agent from the current sets, xr2 is random agents from the current sets, and f is the scaling factor.

[0044] Bestlbin method refers to the formula: wherein Xcwent is the current agent, xriis random agent from the current sets, xr2 is random agents from the archive buffer, XbeSf is the top 0.01% from the current sets, and is the scaling factor.

[0045] In sub-step (iii)(c)(d), preservation probabilities for each design parameter 203 in each set of design parameter is computed 709 using linear regression sensitivity analysis; whereby design parameter 203 is replaced 711 with said new temporary design parameter 203A if said computing preservation probabilities of said design parameter 203 is less than the crossover rate value calculated in sub-step (iii)(c)(b). As shown in Fig. 9, which shows an example of a situation in sub-step (iii)(c)(d), whereby the preservation probabilities of each design parameter in the current agent are calculated using linear regression sensitivity analysis (namely 0.632, 0.587, 0.985 and 0.205 while the crossover rate is 0.77. In this scenario, since the preservation probabilities of the first, second and fourth parameters are lower than the crossover rate, the newly generated agent comprises of first parameter, second parameter, and fourth parameter from the current agent and a third parameter from the temporary generated agent, before said newly generated agent is being updated to the agent's pool.

[0046] In step (iii)(d), said new set of design parameters 203 in said reinforcement learning agents 109 in said design 201 in said EDA tool 113 is updated 307 through at least one application programming interface (API). The new set of design parameters 203 from all the updated agents are overwritten to the design 201 in the EDA 113 simulation software through API integration. This would create many variations of the design 201, and the variation means it is a single design, but with a different set of design parameters (from different agents), so there are many combinations made up of different sets of design parameters. This is done by utilising the available API commands from the EDA.

[0047] Step (iii)(e), said updated reinforcement learning agents 109 in said updated design 201 in said EDA tool 113 are simulated 309 through said API to obtain simulation results of all reinforcement agents 109. An example of the simulation results are graphs with an x-y axis as shown in Fig. 5. As shown in Fig. 5, for each set of design parameters 203 in the multiple sampled sets being updated to said simulation model, the respected design's simulation results 207 is collected from said simulation model. This process is automated without needing the user to key -in the said design parameters 203 and run the simulation to obtain the design's simulation results 207.

[0048] In step (iii)(f), fitness value of said updated design 201 is computed 311 by comparing said simulation results to the design goal 205 set in step (ii). The fitness value of each agent is computed in objective function using the Euclidean distance (L2 norm) algorithm as for now. The higher the fitness, the lower the error, and vice versa. The "objective function" is a common terminology used in the scope of optimisation problems. There are several methods to calculate the fitness, such as the Euclidean distance (L2 norm), pole-residue discrepancies (Pade approximation), mean squared error (MSE), mean absolute error (MAE) or Kullback-Leibler Divergence. In sub-step (iii)(g), said set of design parameters 203 is archived 315 if termination criteria not met (within a margin of acceptance or tolerance) before repeating sub-steps (iii)(a) to (iii)(f) using said set of design parameters 203. Sub-step (iii)(g) comprises of the following sub-steps. In sub-step (iii)(g)(a), the current reinforcement learning agent's 109 current fitness value is compared 601 to its previous fitness value. In sub-step (iii) (g) (b), the previous set of design parameters 203 is archived 603 into a first-in-first-out storage buffer if said current fitness value is higher than the previous fitness value or if the termination criteria is not met. The storage / archive buffer is storing design parameters set into the machine's memory. The more it stores, the higher the memory usage, this will affect the optimisation performance. A limit of le6 amounts of design parameters set could be stored. If the archive buffer size exceeds le6 (say 1000001), then the first set of design parameters (old set) in the buffer will be removed 605, similar to the working mechanism of a first- in-first-out storage system.

[0049] Here, the Archives Solution technique is used to reduce the risk of a failure phenomenon of optimisation, called premature convergence. Premature convergence is the biggest challenge faced by non-artificial intelligence (Al) conventional optimisation algorithms. Archive Solution is used to store sets of design parameters that have low fitness, whereby these design parameters with low fitness will be used in generating new sets of design parameters with better fitness thru mutation strategies, which is part of the method of optimizing design of the present invention. This is to enhance the search ability of the method of the present invention, targeting to smoothly optimise more complex designs to generate a more accurate set of design parameters.

[0050] The optimization process of the present invention is terminated 313 if at least one termination criterion has been satisfied, whereby said termination criterion is not limited to a satisfactory of the design's goal 205, maximum iteration reached, a convergence of multiple sets of design's parameters achieved or the process is forcefully aborted by the user. The agents' high convergence means all sets of design's parameters are very much similar to each other, while low convergence means all sets of design's parameters are very much different to each other. The convergence is represented in numerical form using a mathematical approach not limited to computing agents's standard deviation or variance.

[0051] In Figure 10, the main graphical interface of the implementation of the method of the present invention is depicted, covering the workflows of the present invention. The design response plot section 1003 plots the design goals, design's simulation results and design's optimised responses. (Dashed lines are the design's goals, solid lines are the design responses). The design parameter section 1005 shows the component attributes to let the users see the design's parameters available to be optimised, select which design's parameters to be optimised, or change design's parameters and plot design's simulation results. It lets the users to set up the selected design's parameters to be optimised, such as the range of the design's parameters. The goals settings section 1007 allows users to set up the design's goals. The Al optimization settings section 1009 allows users to configure the method of the present invention, such as using a surrogate model, using parallel simulations or setting up how many evaluations (iterations) to be run. Figure 11 depicts a graphical interface when the optimisation process is running. The Al optimization analysis section 1101 comprises of at least one optimisation cost chart to plot cost value per evaluation (iteration), in addition to a table to store the sets of design parameters. There are other analysis (Design of Experiments DOE) features such as sensitivity analysis, response surface and goal achievement chart available in the analysis.

[0052] While the present invention has been shown and described herein in what are considered to be the preferred embodiments thereof, illustrating the results and advantages over the prior art obtained through the present invention, the invention is not limited to those specific embodiments. Thus, the forms of the invention shown and described herein are to be taken as illustrative only and other embodiments may be selected without departing from the scope of the present invention, as set forth in the claims appended hereto.

Claims

WHAT IS CLAIMED IS:

1. A method (101) of optimizing design (201), comprising the following steps: i. obtaining (103) at least one design (201) from at least one electronic design automation (EDA) tool (113); ii. defining (105) said design's (201) at least one goal (205); iii. optimizing (107) said design's at least one parameter (203) with at least one multi-agent design optimizer (107).

2. The method of optimizing design (201) as claimed in Claim 1, wherein said step (iii) of optimizing (107) said design's parameter (203) with at least one multi-agent design optimizer comprises of the following substeps: a. initializing (301) a plurality of reinforcement learning agents (109), each said reinforcement learning agent (109) with a set of unique value of design parameter (203); b. calculating (303) the current state of each reinforcement learning agent (109) in statistical representation (111); c. iterating through (305) each reinforcement learning agent (109) and searching direction and step size of each design parameter (203) ineach reinforcement learning agent (109) based on their respective state and policy before generating a new set of design parameters (203); d. updating (307) said new set of design parameters (203) in said reinforcement learning agents (109) in said design (201) in said EDA tool (113) through at least one application programming interface (API); e. simulating (309) said updated reinforcement learning agents (109) in said updated design (201) in said EDA tool (113) through said API to obtain simulation results of all reinforcement agents (109); f. computing (311) fitness value of said updated design (201) by comparing said simulation results to the design goal (205) set in step (ii); g. archiving (315) said set of design parameters (203) if termination criteria not met before repeating sub-steps (iii)(a) to (iii)(f) using said set of design parameters (203); or terminating (313) optimization process if said termination criteria is met.

3. The method of optimizing design (201) as claimed in Claim 2, wherein said sub-step (iii)(c) comprises of the following sub-steps:a. choosing (701) two reinforcement learning agents (109) randomly from at least one pool of reinforcement learning agents (109) and choosing one reinforcement learning agent (109) randomly from at least one data storage buffer before choosing the top 0.01% reinforcement learning agent's (109) set of design parameters (203); b. generating (703) scaling factor value, crossover rate value and archive solutions rate value by feeding state vector computed in step (iii)(b) into the current iteration agent's reinforcement learning model; wherein said scaling factor value, crossover rate value and archive solutions rate value are float numbers between 0 and 1; c. generating (705) a new temporary set of design parameters (203A) using current-to-pbest method if said archive solutions rate value is bigger than 0.5; or generating (707) a new temporary set of design parameters (203A) using bestlbin method if said archive solutions rate value is less than 0.5; d. computing (709) preservation probabilities for each design parameter (203) in each set of design parameter using linear regression sensitivity analysis; whereby design parameter (203) is replaced (711) with said new temporary design parameter (203A) if said computing preservation probabilities of said design parameter (203) is less than the crossover rate value calculated in sub-step(iii)(c)(b).

4. The method of optimizing design (201) as claimed in Claim 2, wherein said sub-step (iii)(g) comprises of the following sub-steps: a. comparing (601) the current reinforcement learning agent's (109) current fitness value to its previous fitness value; b. archiving (603) into a first-in-first-out storage buffer, the previous set of design parameters (203) if said current fitness value is higher than the previous fitness value or if the termination criteria is not met.

5. The method of optimizing design (201) as claimed in Claim 2, wherein said statistical representation (111) is Lehmer mean, standard deviation, probability of improvement, interquartile mean, optimality gap, fitness, variance or combination thereof.

6. The method of optimizing design (201) as claimed in Claim 2, wherein step (iii)(a) is using sampling technique.

7. The method of optimizing design (201) as claimed in Claim 1, wherein said design goal (205) is the y-axis value of a particular range in the x- axis in an x-y graph with certain conditions such as bigger than, smaller than, or equal to.

8. The method of optimizing design (201) as claimed in Claim 1, wherein said parameters (203) are width dimension and length dimension of a 3- dimensional (3D) design's structural parts, schematic variables of a 2-dimensional (2D) circuit design, an arrangement of components on a printed circuit board (PCB), path routing of a vehicle, or memory sticks placements in a floorplan.

Citation Information

Patent Citations

  • Multi-agent system based design for manufacturabilityover the internet

    KR1020010039237A

  • System and method for autonomous printed circuit board design using machine learning techniques

    US11599699B1

  • Methods of designing semiconductor devices, design systems performing the same and methods of manufacturing semiconductor devices using the same

    US20210264081A1

  • System and method for optimizing integrated circuit layout based on neural network

    US20230186007A1

  • Apparatus and method for segmenting edges for optical proximity correction

    US8122389B2

Cited By

  • System and method for optimizing semiconductor process parameters using multi-agents

    KR102993616B1