Parameter optimization device and parameter optimization method

JP2025035361APending Publication Date: 2025-03-13KK TOSHIBA +1
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
JP2023142354
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-09-01
Publication Date
2025-03-13

Smart Images

  • Figure 2025035361000001_ABST
    Figure 2025035361000001_ABST
Patent Text Reader

Abstract

To provide a parameter optimization device and a parameter optimization method that can optimize a number of parameters in a short time.SOLUTION: A parameter optimization device has a processing unit that creates, from a search space of a first number of dimensions, a partial search space of a second number of dimensions smaller than that of the first number of dimensions, corrects an acquisition function with a local penalty function in the partial search space, selects a plurality of search points, and observes a plurality of objective functions in parallel, which correspond respectively to the plurality of search points.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] An embodiment of the present invention relates to a parameter optimization device and a parameter optimization method. [Background technology]

[0002] There is a demand for a method that can efficiently solve optimization problems that have a large number of parameters and require a long time for each evaluation. For example, in the design of power semiconductor devices, there are several to several tens of parameters, and each evaluation (simulator run) can take several hours. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent Publication No. 2022-74880 [Patent Document 2] Patent Publication No. 2021-149988 Summary of the Invention [Problem to be solved by the invention]

[0004] An object of the embodiments of the present invention is to provide a parameter optimization device and a parameter optimization method capable of optimizing a large number of parameters in a short period of time. [Means for solving the problem]

[0005] According to an embodiment of the present invention, a parameter optimization device has a processing device that generates a partial search space of a second dimensionality smaller than the first dimensionality from a search space of a first dimensionality, corrects an acquisition function in the partial search space with a local penalty function, selects a plurality of search points, and observes in parallel a plurality of objective functions corresponding to each of the plurality of search points. [Brief description of the drawings]

[0006] [Figure 1]1 is a schematic diagram showing a configuration of a parameter optimization device according to an embodiment. [Diagram 2] 1 is a flowchart of a parameter optimization method according to an embodiment. [Diagram 3] FIG. 13 is a schematic diagram illustrating an example of a partial search space. [Figure 4] 11 is a graph showing results of an example of the parameter optimization method according to the embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0007] Hereinafter, an embodiment will be described with reference to the drawings.

[0008] As shown in FIG. 1, a parameter optimization device 1 of the embodiment includes a processing device 2 and a storage device 3. Input data such as parameters input to the processing device 2 and output data such as values ​​calculated by the processing device 2 can be stored in the storage device 3. The processing device 2 can include, for example, a plurality of simulators such as TCAD (Technology Computer Aided Design) and a host computer electrically connected to the plurality of simulators. A program for causing the processing device 2 to execute the parameter optimization method is recorded in a desired recording medium in a form readable by the processing device 2. The recording medium may be, for example, a recording device 3. The program includes steps S1 to S10 described later.

[0009] The parameter optimization device 1 of the embodiment can optimize design variables (parameters) of a power semiconductor element by, for example, Bayesian optimization. The parameters of the power semiconductor element include, for example, electrical characteristics such as on-resistance and breakdown voltage. Optimization of the design variables (parameters) means searching for design variables (parameters) for which the value of an objective function is smaller than a target value, equal to or smaller than a target value, larger than a target value, or equal to or larger than a target value.

[0010] The parameter optimization device 1 of the embodiment can execute the following process with reference to FIG.

[0011] In step S1, a partial search space having a second dimension smaller than the first dimension is generated from a search space having a first dimension.

[0012] An objective function y(x1, ..., x D ) is defined in a D-dimensional space. For example, a two-dimensional partial search space is generated as the second dimension from the six-dimensional search space, which is the first dimension of a semiconductor element. Figure 3 shows an example of a partial search space of the objective function y(x1, x2) defined in a two-dimensional space. For example, multiple partial search spaces are generated so that each contains the current optimal search point. The current optimal search point is the design value in the search history data that minimizes the objective function.

[0013] In the next step S2, value functions for a plurality of sub-search spaces are calculated, and the number of search points for parallel observation of the objective function is determined for each of the plurality of sub-search spaces based on the value functions.

[0014] The value function represents the search value of the sub-search space. Based on the value function, the total number of parallel searches is allocated to the multiple sub-search spaces. The total number of parallel searches can be determined, for example, by the number of simulators that the user can use for parallel searches (simultaneous observation of the objective function).

[0015] For example, the value function can be calculated based on the maximum value of the acquisition function. The acquisition function is calculated by combining the expected value and variance (standard deviation) of the objective function estimated by Gaussian process regression. For example, the lower confidence boundary (LCB) or expected improvement (EI) can be used as the acquisition function.

[0016] For example, suppose that eleven partial search spaces, 1st to 11th partial search spaces, are generated. The number of search points in each of the 1st to 11th partial search spaces is determined based on the maximum value of the acquisition function of each of the 1st to 11th partial search spaces. For example, the 1st to 11th partial search spaces are assigned search priorities in descending order of the maximum value of the acquisition function, and more search points can be allocated to partial search spaces with higher search priorities than partial search spaces with lower search priorities. A certain partial search space has more search points than another partial search space. Another subspace with a larger maximum value of the acquisition function than a certain partial search space has more search points than the certain partial search space.

[0017] For example, the total number of parallel searches is set to 10. As a first embodiment, the number of search points in the first partial search space can be set to 10, and the number of search points in each of the second partial search space to the eleventh partial search space can be set to 0. The total number of parallel searches can be assigned to the partial search space with the highest search priority. The number of search points in the remaining partial search spaces can be set to 0. As a second embodiment, the search points of the first to tenth partial search spaces can be set to 1, and the search point of the eleventh partial search space can be set to 0. The number of parallel searches can be assigned one at a time, starting from the partial search space with the highest search priority. The number of parallel searches can be assigned the same number at a time, starting from the partial search space with the highest search priority. The search points of the remaining partial search spaces can be set to 0. As a third embodiment, the number of search points in the first partial search space can be set to 4, the number of search points in the second partial search space can be set to 3, the number of search points in the third partial search space can be set to 2, the number of search points in the fourth partial search space can be set to 1, and the number of search points in each of the fifth to eleventh partial search spaces can be set to 0. A partial search space with a higher search priority can be assigned a number of parallel searches that is greater than or equal to that of a partial search space with a lower search priority. The search points in the remaining partial search spaces can be set to 0. As a fourth embodiment, the number of search points in the first partial search space can be set to 5, the number of search points in each of the second to sixth partial search spaces can be set to 1, and the number of search points in each of the seventh to eleventh partial search spaces can be set to 0. The same number of parallel search numbers can be assigned in descending order of search priority. The partial search space with the highest search priority can be assigned a number of parallel searches that exceeds the number of parallel searches in the partial search spaces ranked second or lower. As a fifth embodiment, the number of search points in each of the first to third partial search spaces can be set to 3, the number of search points in the fourth partial search space can be set to 1, and the number of search points in each of the fifth to eleventh partial search spaces can be set to 0. An arbitrary number (for example, 3) of parallel search numbers can be assigned to partial search spaces with higher search priorities. Of the remaining partial search spaces, the remaining number of parallel search numbers can be assigned to the higher partial search spaces. Furthermore, the search points in the remaining partial search spaces can be set to 0. The method of allocating search points to the sub-search spaces can be changed each time the number of batch searches exceeds a predetermined number. The method of allocating search points to the sub-search spaces can be changed each time the batch search for the same objective function value is repeated a predetermined number of times. The number of search points in a sub-search space is different between one batch search and another batch search.

[0018] Alternatively, the value function may be calculated based on the absolute values ​​of the coefficients of the polynomial regression equation of the objective function. The first to eleventh partial search spaces can be assigned search priorities in descending order of the absolute values ​​of the coefficients of the polynomial regression equation of the objective function. More search points can be allocated to partial search spaces with higher search priorities than to partial search spaces with lower search priorities.

[0019] Alternatively, the value function may be calculated based on the maximum value of the variance of the objective function. Search priorities are assigned to the first to eleventh partial search spaces in descending order of the maximum value of the variance of the objective function, and more search points can be allocated to partial search spaces with higher search priorities than to partial search spaces with lower search priorities.

[0020] The number of search points may be determined based on multiple value functions, not just one. Search points can be assigned to each value function. A composite function of multiple value functions can also be created and the number of searches can be assigned.

[0021] In the next step S3, one sub-search space is selected from the plurality of sub-search spaces. For example, one sub-search space is selected randomly from the plurality of sub-search spaces.

[0022] In the next step S4, the number of parallel searches in the sub-search space selected in step S3 is compared with a first specified value. If the number of parallel searches in the selected sub-search space is smaller than the first specified value, the process proceeds to the next step S5.

[0023] If the number of parallel searches in the selected partial search space is equal to or greater than the first specified value, the partial search space is not searched any further, and the process returns to step S3 to regenerate a new partial search space. This makes it possible to prevent a specific partial search space from being continuously searched a number of times equal to or greater than the first specified value. The first specified value can be, for example, the number N of times that the partial search space is continuously searched, at which it is estimated that the objective function will not be improved even if the partial search space is searched further. For example, the first specified value can be the dimension D×5 of the partial search space, the dimension D×10 of the partial search space, or the like. When the dimension of the partial search space is high or the search range is wide, it is preferable that the first specified value is large.

[0024] In the next step S5, one search point at which the acquisition function has a maximum value in the selected partial search space is selected.

[0025] In the next step S6, the same process as in step S4 described above is executed. If the result in step S6 is Yes, the process proceeds to step S7.

[0026] In step S7, in the partial search space, the acquisition function is corrected by a local penalty function, and multiple search points are selected. A continuous acquisition function is multiplied by the local penalty functions φ1, φ2, ... in sequence to select multiple discrete search points. For example, a first search point where the acquisition function before local penalty is maximized is selected, the acquisition function that proposed the first search point is multiplied by the local penalty function φ1 to correct the acquisition function, a second search point where the corrected acquisition function is maximized is selected, the acquisition function that proposed the second search point is multiplied by the local penalty function φ2 to correct the acquisition function, and a third search point where the corrected acquisition function is maximized is selected. The number of search points is determined based on the value function described above.

[0027] In the next step S8, a plurality of objective functions corresponding to the plurality of search points are observed in parallel. For each objective function, the expected value and variance estimated based on the Gaussian process regression are updated, and the acquisition function is updated.

[0028] In the next step S9, the number of batch searches in the partial search space is compared with a second specified value. A series of processes from step S3 to step S8 is regarded as one batch search.

[0029] If the number of batch searches is equal to or less than the second specified value, the process returns to step S3, and a new partial search space is regenerated.

[0030] If the batch search count is greater than the second specified value, the process proceeds to step S10. In step S10, the value of the objective function obtained by the processes up to step S9 is compared with the target value. In this example, if the objective function is smaller than the target value, the parameter optimization device 1 proposes optimal design values ​​of the design variables (parameters) and ends the process.

[0031] If the objective function is equal to or greater than the target value, the process returns to step S1, and multiple sub-search spaces are regenerated.

[0032] According to this embodiment, multiple search points are selected in a low-dimensional partial search space, and multiple objective functions are observed in parallel, thereby optimizing a large number of parameters in a short time. In addition, multiple partial search spaces are ranked based on a value function, and the number of searches is allocated according to the ranking. This allows weighting of the partial search spaces that are likely to be highly valued for search, enabling optimization in a shorter time.

[0033] FIG. 4 is a graph showing the results of an example of the parameter optimization method according to the embodiment.

[0034] In the above step S1, a two-dimensional sub-search space as a second dimension was generated from a six-dimensional search space as a first dimension of a power MOSFET (Metal-Oxide-Semiconductor Field Effect Transistor) having a field plate structure. The directions of the two basis vectors constituting the two-dimensional sub-search space were random. Eleven sub-search spaces, from the first sub-search space to the eleventh sub-search space, were generated.

[0035] As the objective function, y=RonA / 30+10×ReLU(110-Vdss)……(1) The parameters are the on-resistance RonA and the withstand voltage Vdss. ReLU is a normalized linear function, and if the withstand voltage Vdss is 110V or higher, ReLU(110-Vdss) becomes 0. The objective function (1) represents an equation that minimizes the on-resistance under the constraint that the withstand voltage must be 110V or higher.

[0036] The initial search point for on-resistance RonA is 75mΩmm 2 The initial point for searching the breakdown voltage Vdss was set to 79V.

[0037] The total number of parallel searches was set to 10. The value function was calculated based on the maximum value of the acquisition function of each partial search space. In Fig. 4, E1, E2, E3, E4, and E5 represent the allocation of the number of searches according to the first embodiment, the second embodiment, the third embodiment, the fourth embodiment, and the fifth embodiment, respectively.

[0038] In the sixth embodiment E6, the first to fifth embodiments are selected at random each time the partial search space is regenerated.

[0039] In the seventh embodiment E7, the i-th partial search space is assigned the maximum value α max,i In other words, the number of search points in the i-th sub-search space is proportional to the total number of parallel searches, 10 × α max,i / (Σ i α max,i )

[0040] C1 represents a first comparative example in which the six-dimensional search space of the above MOSFET is searched without parallel search.

[0041] C2 represents a second comparative example in which the six-dimensional search space of the above MOSFET is searched in parallel. The number of parallel searches is 10.

[0042] C3 represents a third comparative example in which the two-dimensional partial search space of the above MOSFET is searched without parallel search.

[0043] 4 shows an example in which 100 batch searches are performed. In the first comparative example C1 and the third comparative example C3 without parallel search, the total number of searches is 100. In the second comparative example C2 and the first embodiment E1 to the seventh embodiment E7 in which the number of parallel searches is 10, the total number of searches is the number of parallel searches 10 × the number of batch searches 100 = 1000. The number of batch searches corresponds to time, and the smaller the number of batch searches, the shorter the time it takes to complete the design.

[0044] 4, at the end of 100 batch searches, the first to seventh examples E1 to E7 are able to search for parameters that reduce the objective function (1) more effectively than the first to third comparative examples C1 to C3. The target value of the objective function is set to 1, for example. The first to seventh examples E1 to E7 are able to search for parameters that reduce the objective function (1) with fewer batch searches than the first to third comparative examples C1 to C3. In particular, the sixth embodiment E6 in which the first to fifth embodiments were randomly selected each time the partial search space was regenerated was able to search for parameters that minimized the objective function.

[0045] The value function may be changed each time a sub-search space is regenerated.

[0046] The user inputs a search lower limit value and a search upper limit value for each parameter into the processing device 2. A search space of a first dimension is defined and generated by the input values. The user may input at least one design value as a search initial point so that the design value is included in the search space of the first dimension. If there is one search initial point, the search initial point is considered to be the optimal search point, and the process shown in FIG. 2 described above is executed. The user may input multiple search initial points. If there are multiple search initial points, the search point that minimizes the objective function among them is considered to be the optimal search point, and the process shown in FIG. 2 described above is executed. The multiple search initial points can be generated randomly, for example. Alternatively, the multiple search initial points can be searched by normal Bayesian optimization.

[0047] Although some embodiments of the present invention have been described, these embodiments are presented as examples and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and modifications can be made without departing from the spirit of the invention. These embodiments and their modifications are included in the scope and spirit of the invention, and are included in the scope of the invention and its equivalents described in the claims. [Explanation of symbols]

[0048] 1...parameter optimization device, 2...processing device, 3...storage device

Claims

1. generating a sub-search space having a second dimensionality smaller than the first dimensionality from the search space having a first dimensionality; In the sub-search space, a gain function is corrected with a local penalty function to select a plurality of search points; Observing a plurality of objective functions corresponding to the plurality of search points in parallel; A parameter optimization apparatus having a processing unit.

2. 2. The parameter optimization device according to claim 1, further comprising: calculating a value function for a plurality of the partial search spaces; and determining the number of the search points for parallel observation of the objective function for each of the plurality of partial search spaces based on the value function.

3. The parameter optimization device according to claim 2 , wherein the value function is calculated based on a maximum value of the acquisition function.

4. The parameter optimization device according to claim 2 , wherein the value function is calculated based on absolute values ​​of coefficients of a polynomial regression equation of the objective function.

5. The parameter optimization device according to claim 2 , wherein the value function is calculated based on a maximum value of variance of the objective function.

6. The parameter optimization device according to claim 2 , wherein the number of search points is determined based on a plurality of the value functions.

7. The parameter optimization device according to claim 6 , wherein the value function is changed every time the partial search space is regenerated.

8. 8. The parameter optimization device according to claim 1, wherein a plurality of search initial points are generated.

9. generating a sub-search space having a second dimensionality smaller than the first dimensionality from the search space having a first dimensionality; In the sub-search space, a gain function is corrected with a local penalty function to select a plurality of search points; A parameter optimization method comprising: observing, in parallel, a plurality of objective functions corresponding to the plurality of search points, respectively.

10. 10. The parameter optimization method according to claim 9, further comprising the steps of: calculating a value function for a plurality of the partial search spaces; and determining the number of the search points for parallel observation of the objective function for each of the plurality of the partial search spaces based on the value function.

11. The parameter optimization method according to claim 10 , further comprising: calculating the value function based on a maximum value of the acquisition function.

12. The parameter optimization method according to claim 10 , wherein the value function is calculated based on absolute values ​​of coefficients of a polynomial regression equation of the objective function.

13. The parameter optimization method according to claim 10 , further comprising the step of calculating the value function based on a maximum value of variance of the objective function.

14. The parameter optimization method according to claim 10 , further comprising determining the number of search points based on a plurality of the value functions.

15. The parameter optimization method according to claim 10 , wherein the value function is changed each time the partial search space is regenerated.

16. The parameter optimization method according to any one of claims 9 to 15, further comprising generating a plurality of initial search points.

17. The plurality of partial search spaces include at least a first partial search space and a second partial search space having a larger maximum value of the acquisition function than the first partial search space, The parameter optimization device according to claim 2 , wherein the number of search points in the second partial search space is greater than the number of search points in the first partial search space.

18. The parameter optimization device according to claim 2 , wherein a number of search points in the sub-search space differs from one batch search to another.

Citation Information

Patent Citations

  • Device, method and system for parameter optimization

    JP2022074880A

  • Parameter vector value proposing device, parameter vector value proposing method, parameter optimization method, and parameter vector value proposing program

    JP2023067596A

  • Medium manufacturing method, medium manufacturing parameter determination method, medium, and program

    WO2021049044A1

  • Information processor and information processing method

    JP2021149988A