This application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2021-044890, filed on Mar. 18, 2021, the entire contents of which are incorporated herein by reference.
An embodiment of the present invention relates to an information processing apparatus and an information processing method.
Simulators are utilized for various purposes. It is necessary to adjust the value of the input parameter of the simulator in order to simulatively execute the operation of the complicated event in the simulator or obtain an ideal result in the simulation by the simulator.
In a case where an operation of a complicated event is simulatively executed by a simulator, a process of providing a constraint condition, intensively searching a range satisfying the constraint condition, and searching for an optimal solution is performed. However, in a case where the output data rapidly changes only when the input parameter has a certain value, it is not easy to accurately grasp the change, and there is a possibility that the deviation between the prediction result by the simulator and the actual event increases.
According to one embodiment, an information processing apparatus has a constraint threshold value setting change unit configured to change a setting of a first constraint threshold value serving as a criterion when determining whether a constraint variable satisfies a constraint condition, and a search unit configured to search for the new constraint variable that satisfies the constraint condition based on the first constraint threshold value, wherein the constraint threshold value setting change unit is configure to update the first constraint threshold value based on the new constraint variable.
Hereinafter, embodiments of an information processing apparatus and an information processing method will be described with reference to the drawings. Although main components of the information processing apparatus and the information processing method will be mainly described below, the information processing apparatus and the information processing method may include components and functions that are not illustrated or described. The following description does not exclude components and functions that are not illustrated or described.
The simulation system 2 in
Note that the information processing apparatus 1 in
The information processing apparatus 1 in
The output data acquisition unit 4 acquires output data indicating the result of experiments or simulations based on input parameters of a predetermined number of dimensions. In the present specification, it is assumed that there is a plurality of input parameters used in an experiment or input to the simulator 3, and the number of input parameters (the number of items) is referred to as the number of dimension.
The output data acquisition unit 4 may acquire not only output data indicating a result of a simulation performed by the simulator 3 but also output data indicating an experimental result. Hereinafter, the process of acquiring output data from the simulator 3 and determining a next input parameter to the simulator 3 will be mainly described, but it is also possible to acquire output data from an experimental device instead of the simulator 3 and determine a next input parameter to the experimental device.
The output data acquired by the output data acquisition unit 4 includes a target variable and a constraint variable. The target variable is measurement result data by the simulator 3. The constraint variable is constrained data associated with the target variable. By comparing the constraint variable with the constraint threshold value, it is determined whether the constraint variable satisfies the constraint condition.
The input/output data storage unit 5 stores the input parameter and the corresponding output data as a set. The input parameter is, for example, a parameter representing a physical quantity such as temperature or pressure. The parameter representing a physical quantity is a concept including parameters related to experiments or simulations such as processing time and processing conditions. The number of items of the input parameters and the contents of the items are arbitrary. As described above, the output data includes the target variable and the constraint variable, and the input/output data storage unit 5 stores the input parameter, the target variable, and the constraint variable in association with each other.
The constraint threshold value setting unit 6 sets a provisional constraint threshold value serving as a criterion when determining a constraint condition of a constraint variable. The constraint threshold value setting unit 6 includes a constraint threshold value setting change unit 6a and a search unit 6b. The constraint threshold value setting change unit 6a changes the setting of the provisional constraint threshold value serving as a criterion when determining whether the constraint variable satisfies the constraint condition. In the present specification, the provisional constraint threshold value may be referred to as a first constraint threshold value. In addition, the first constraint threshold value set based on the measurement data may be referred to as a relative constraint threshold value.
The search unit 6b searches for a new constraint variable that satisfies the constraint condition based on the provisional constraint threshold value. The constraint threshold value setting change unit 6a updates the provisional constraint threshold value in consideration of the searched new constraint variable. In a more specific example, the search unit 6b searches for a new constraint variable that is located near the provisional constraint threshold value set by the constraint threshold value setting change unit 6a and that satisfies the constraint condition.
When the constraint variable includes a plurality of pieces of data, the constraint threshold value setting change unit 6a may set the relative constraint threshold value from among a plurality of pieces of data disposed in ascending or descending order. The relative constraint threshold value may be a predetermined percentile value selected from among a plurality of pieces of data disposed in ascending or descending order.
The relative constraint threshold value may be selected based on a plurality of statistical values (for example, the deviation value) corresponding to a plurality of pieces of data. The provisional constraint threshold value or the relative constraint threshold value is a value that defines a constraint condition that is looser than a preset absolute constraint threshold value.
In the case of solving the minimization problem, the provisional constraint threshold value or the relative constraint threshold value gradually approaches the absolute constraint threshold value while the process of the constraint threshold value setting change unit 6a and the search unit 6b is repeated. While the provisional constraint threshold value or the relative constraint threshold value dynamically changes while the process of the constraint threshold value setting change unit 6a and the search unit 6b is repeated, the absolute constraint threshold value is a fixed value set in advance, and the value is unchanged even when the process of the constraint threshold value setting change unit 6a and the search unit 6b is repeated.
In the present specification, the absolute constraint threshold value may be referred to as a second constraint threshold value.
The constraint threshold value setting change unit 6a may change the provisional constraint threshold value or the relative constraint threshold value based on whether the best value of at least one of the target variable and the constraint variable is updated while updating the provisional constraint threshold value or the relative constraint threshold value a predetermined number of times. For example, when a constraint variable closer to the absolute constraint threshold value is found, a p value of a p percentile value for determining the relative constraint threshold value may be made smaller to make the constraint condition of the constraint variable stricter. Conversely, in a case where a constraint variable closer to the absolute constraint threshold value is not found while the provisional constraint threshold value or the relative constraint threshold value is updated a predetermined number of times, the constraint condition of the constraint variable may be loosened by increasing the p value.
The acquisition function calculation unit 7 calculates an acquisition function based on the input parameters and the provisional constraint threshold value (relative constraint threshold value). In the case of solving the minimization problem, the target variable is minimized when the acquisition function is maximized. In addition, the acquisition function may be an index representing an expected improvement amount.
The next input parameter determination unit 8 determines the next input parameter so that the acquisition function is maximized. The next input parameter determined by the next input parameter determination unit 8 is input to, for example, the simulator 3, and a new simulation is executed.
The simulator 3 executes the simulation again using the next input parameter determined by the next input parameter determination unit 8. Alternatively, the next input parameter may be input to the experimental device to perform the experiment again.
Before describing the optimization process performed by the information processing apparatus 1 and the simulation system 2 in
In the case of
In the example of
As described above, in
The information processing apparatus 1 according to the present embodiment is capable of faithfully and accurately generating a prediction model of a target variable and a prediction model of a constraint variable even with the constraint variable rapidly changing locally as illustrated in
In the present embodiment, as illustrated in
Next, a constraint variable equal to or less than the relative constraint threshold value is searched for. In the case of
As described above, in the present embodiment, the provisional constraint threshold value or the relative constraint threshold value is gradually changed to make the constraint condition gradually strict. When the provisional constraint threshold value or the relative constraint threshold value is updated, a new constraint variable is searched for from the vicinity of the updated provisional constraint threshold value or the updated relative constraint threshold value. In the case of
In this way, by repeatedly updating the provisional constraint threshold value or the relative constraint threshold value and searching for a new constraint variable, the provisional constraint threshold value or the relative constraint threshold value can be brought close to the absolute constraint threshold value. Note that the absolute constraint threshold value is a preset fixed value, and the provisional constraint threshold value or the relative constraint threshold value does not fall below the absolute constraint threshold value.
Next, the output data acquisition unit 4 acquires measurement data indicating a simulation result of the simulator 3 to store the acquired measurement data in the input/output data storage unit 5 (step S2).
Next, it is determined whether the update of the above-described relative constraint threshold value and search for a new constraint variable have been repeated a predetermined number of times (step S3). In the present specification, the determination process in step S3 may be referred to as an iteration determination unit. When the predetermined number of times has not been reached yet, the relative constraint threshold value is set or updated (step S4). Here, for example, as described with reference to
Next, the acquisition function calculation unit 7 calculates an acquisition function based on the input parameters and the relative constraint threshold value (step S5).
Equation (1) indicates an example of the acquisition function. In Equation (1), the p percentile value is regarded as a relative constraint threshold value, and the constraint variable equal to or less than the relative constraint threshold value is assumed to satisfy the constraint condition to calculate the acquisition function. This acquisition function is a value obtained by multiplying the expected improvement amount EI by the satisfiability of the constraint variable.
t
j(x|D)=Percentile (D|p)D: measurement data, p:percentile value
Next, the next input parameter determination unit 8 determines the next input parameter so that the value of the acquisition function is maximum (step S6), and repeats the process of step S1 and subsequent steps. When it is determined in step S3 that the predetermined number of times has been reached, an input parameter in a case where the target variable is minimized is output as an optimal input parameter (step S7).
In this way, in the first embodiment, by repeating the process in which a relative constraint threshold value is set by a p percentile value of a constraint variable or the like, a new constraint variable is searched for from its neighborhood based on the set relative constraint threshold value, and the relative constraint threshold value is updated based on the searched new constraint variable, the relative constraint threshold value can be brought close to the absolute constraint threshold value to search for a constraint variable near the absolute constraint threshold value. Therefore, the input parameters input to the simulator 3 and the experimental device can be optimized based on the searched constraint variable.
According to the first embodiment, as illustrated in
The information processing apparatus 1 and the simulation system 2 according to the second embodiment optimize input parameters so as to minimize the amount of data (FBC: Fail Bit Count) by which data cannot be correctly written in the semiconductor storage device.
The information processing apparatus 1 and the simulation system 2 according to the second embodiment have a block configuration similar to that in
A target variable l(x) and a constraint variable c(x) in the second embodiment are expressed by Equations (2) and (3), respectively.
l(x)=y1(x) (2)
c(x)=y2(x) (3)
y1(x) is the amount of data that has not been correctly written in the semiconductor storage device. y2(x) is the worst value of many other measured amounts.
First, a relative constraint threshold value is calculated based on past measurement data (step S11). The measurement data is y={y1(x), y2(x)}. Here, for example, the p percentile value of the past measurement data is regarded as the relative constraint threshold value. That is, a value at or below which p % of the past measurement data starting from the minimum value falls is regarded as the relative constraint threshold value.
Next, the calculation formula of the acquisition function is determined using the Gaussian process for each of the target variable l(x) and the constraint variable c(x) from the past measurement data (step S12). The calculation formula of the acquisition function is expressed by, for example, the above-described Equation (1), and is a value obtained by multiplying the expected improvement amount EI by the satisfiability of the constraint condition of the constraint variable c(x).
Next, the next input parameter x′ at which the acquisition function is maximized is determined based on the calculation formula determined in step S12 (step S13). Here, the input parameter is a control parameter related to the write operation to the semiconductor storage device, for example, a write pulse width, a write voltage, a standby time, a voltage rise (fall) pace, or the like.
Next, when data is written in the semiconductor device based on the next input parameter determined in step S13, it is checked whether the data is correctly written (step S14). Here, an amount of data y′ by which data cannot be correctly written is measured. Next, x′ and y′ are added in the history information X and Y of the past measurement data (step S15).
Next, it is determined whether the process of steps S11 to S15 has been repeated a predetermined number of times (step S16). When the predetermined number of times has not been reached yet, the process of step S11 and subsequent steps is repeated. When the predetermined number of times is reached, the optimum input parameter x is output (step S17). Here, the optimum input parameter is an input parameter x at which FBC, which is the target variable l(x), is minimized, and is expressed by the following Equation (4).
As described above, according to the second embodiment, it is possible to determine the input parameter x that minimizes the amount of data by which data cannot be correctly written in the semiconductor storage device.
In the first and second embodiments, the example in which the relative constraint threshold value is set based on the p percentile value of the constraint variable is described, but the value of p may be made variable. For example, the value of p may be initially made large and gradually decreased.
Alternatively, when the best (optimal) value of the constraint variable has not been updated for a predetermined period, the value of p may be made large, and when the best value is updated within the predetermined period, the value of p may be made small.
Alternatively, when the best value of the target variable has not been updated for a predetermined period, the value of p may be made larger, and when the best value is updated within the predetermined period, the value of p may be made small.
In this way, by varying the p percentile value, it is possible to search for the best value of each of the constraint variable and the target variable in a shorter time.
Both the target variable and the constraint variable are measurement result data and are associated with each other.
In the first to fourth embodiments described above, the example of optimizing the input parameters so as to obtain the minimum value of the target variable by solving the minimization problem is described. However, the input parameters may be optimized so as to obtain the maximum value of the target variable by solving the maximization problem.
At least part of the information processing apparatus 1 and the simulation system 2 described in each of the above-described embodiments may be configured by hardware or software. In a case where the information processing apparatus 1 and the simulation system 2 are configured by software, a program for realizing at least some functions of the information processing apparatus 1 and the simulation system 2 may be stored in a recording medium such as a flexible disk or a CD-ROM, and may be read and executed by a computer. The recording medium is not limited to a removable recording medium such as a magnetic disk or an optical disk, and may be a fixed recording medium such as a hard disk device or a memory.
In addition, a program for realizing at least some functions of the information processing apparatus 1 and the simulation system 2 may be distributed via a communication line (including radio communication) such as the Internet. Further, the program may be distributed via a wired line or a radio line such as the Internet or stored in a recording medium in an encrypted, modulated, or compressed state.
While certain embodiments have been described, these embodiments have been presented by way of example only, and are not intended to limit the scope of the disclosures. Indeed, the novel methods and systems described herein may be embodied in a variety of other forms; furthermore, various omissions, substitutions and changes in the form of the methods and systems described herein may be made without departing from the spirit of the disclosures. The accompanying claims and their equivalents are intended to cover such forms or modifications as would fall within the scope and spirit of the disclosures.
Number | Date | Country | Kind |
---|---|---|---|
2021-044890 | Mar 2021 | JP | national |