Priority is claimed on Chinese Patent Application No. 202310348837.4, filed Mar. 31, 2023, the content of which is incorporated herein by reference.
The present invention relates to an information processing device, an information processing method, and a storage medium.
Product design can be regarded as a multi-objective optimization problem that pursues a plurality of objectives. For example, in the design of batteries, the increase of a capacity, the increase of an output, the reduction of production costs, and the like are pursued. In multi-objective optimization problems, evolutionary algorithms may be used. Among the evolutionary algorithms, for example, a non-dominated sorting genetic algorithm (NSGA)-II may be used.
For example, in the following Patent Document 1, a multi-objective optimization device and a multi-objective optimization method for optimizing a parameter (decision variable) of an optimization target having a constraint condition are disclosed.
When multi-objective optimization is performed using an evolutionary algorithm, a Pareto solution for a product with a higher fitness degree (overall performance) is desired to be produced. In the process, the recipe for explanatory variables including the material, design, and technical information of content may become a product that cannot be reproduced in reality. Therefore, when the next-generation child individual is produced, a constraint condition is imposed on each explanatory variable (chromosome) or explanatory variable group to ensure realism.
For a constraint condition across a plurality of explanatory variables for each individual such as a constraint condition that results of four arithmetic operations on a plurality of explanatory variables fall within a certain range, because it is not possible to generate a child individual within the constraint condition in advance, the presence or absence of deviation from the constraint condition is determined later and if there is a deviation, the individual is eliminated and the generation of the child individual is redone. In this case, the final calculation may take a significant amount of time. Alternatively, there may be a case where the knowledge of the algorithm obtained as the optimal direction cannot be utilized, resulting in another local solution, or a case where the calculation does not converge.
An aspect according to the present invention has been made in view of the above problems and an objective of the present invention is to provide an information processing device, an information processing method, and a storage medium for suppressing an increase in a calculation amount while ensuring the accuracy of a solution.
To solve the above-described problems and achieve the objective, the present invention adopts the following aspects.
(1): According to an aspect of the present invention, there is provided an information processing method in which an information processing device executes a crossover step of generating a new individual by changing a value of an explanatory variable of a part of an individual selected with a first probability from current-generation data, which has n (n is an integer of 3 or more) individuals each being an explanatory variable group having a plurality of explanatory variables, to a target value based on a value of a corresponding explanatory variable of another individual, a mutation step of generating a new individual by changing a value of an explanatory variable of a part of an individual selected with a second probability from the current-generation data to another value, and a sorting step of sorting n individuals of next-generation data from stored individuals and generated individuals on the basis of a fitness degree calculated from an explanatory variable group for each individual, wherein the information processing device executes: a pullback constraint determination step of determining presence or absence of an explanatory condition deviating from the pullback constraint, which is a constraint condition based on four arithmetic operations across a plurality of explanatory variables for each individual that has been generated; and a pullback step of resetting a reset value based on a plurality of explanatory variables with respect to the plurality of explanatory variables deviating from the pullback constraint.
(2): In the above-described aspect (1), the pullback constraint may indicate that a sum of values of a plurality of explanatory variables is within a predetermined first value range, and the pullback step may include determining the reset value so that the sum of values of the plurality of explanatory variables is included within the predetermined first value range while maintaining a ratio of values between two or more explanatory variables deviating from the pullback constraint.
(3): In the above-described aspect (2), the pullback step may include determining the reset value by multiplying each of values of a plurality of explanatory variables by a coefficient based on the plurality of explanatory variables and a lower limit value when a sum of values of a plurality of explanatory variables deviating from the pullback constraint deviates from the lower limit value of the predetermined first value range.
(4): In the above-described aspect (2), the pullback step may include determining the reset value by multiplying each of values of a plurality of explanatory variables by a coefficient based on the plurality of explanatory variables and an upper limit value when a sum of values of a plurality of explanatory variables deviating from the pullback constraint deviates from the upper limit value of the predetermined first value range.
(5): In the above-described aspect (1), the information processing device may execute an analysis processing step of analyzing statistical characteristics between individuals of the explanatory variable group for each generation.
(6): In the above-described aspect (1), the sorting step includes a step of calculating the fitness degree on the basis of a predicted value of an objective variable calculated on the basis of an explanatory variable group of the individual using a mathematical model for calculating the objective variable from the explanatory variable group.
(7): In the above-described aspect (6), the explanatory variable group may indicate a production condition of each product, and the fitness degree may be an index value indicating performance of the product.
(8): In the above-described aspect (7), the product may be a battery, the explanatory variable group may include a characteristic value indicating a magnitude of a part of the battery or a blending ratio of materials of the battery, and the objective variable may include a capacity, output, or cost of the battery.
(9): According to an aspect of the present invention, there is provided a computer-readable non-transitory storage medium storing a computer program for causing a computer of an information processing device to execute the information processing method according to the above-described aspect (1).
(10): According to an aspect of the present invention, there is provided an information processing device including a storage unit configured to store current-generation data, which has n (n is an integer of 3 or more) individuals each being an explanatory variable group having a plurality of explanatory variables; and an individual processing unit configured to generate a new individual by changing a value of an explanatory variable of a part of an individual selected with a first probability from the current-generation data to a target value based on a value of a corresponding explanatory variable of another individual, generate a new individual by changing a value of an explanatory variable of a part of an individual selected with a second probability from the current-generation data to another value, and sort n individuals of next-generation data from stored individuals and generated individuals on the basis of a fitness degree calculated from an explanatory variable group for each individual, wherein the individual processing unit determines presence or absence of an explanatory condition deviating from the pullback constraint, which is a constraint condition based on four arithmetic operations across a plurality of explanatory variables for each individual that has been generated, and resets a reset value based on a plurality of explanatory variables with respect to the plurality of explanatory variables deviating from the pullback constraint.
According to the above-described aspects (1) to (10), it is possible to suppress an increase in a calculation amount while ensuring the accuracy of a solution.
Next, an information processing device, an information processing method, and a storage medium of the present embodiment will be described with reference to the drawings. Embodiments to be described below are only examples and embodiments to which the present invention applies are not limited to the following embodiments. In all drawings for describing the embodiments, components having the same function are denoted by the same reference signs and redundant description thereof will be omitted.
Each individual constitutes an explanatory variable group having a plurality of explanatory variables indicating individual-product production conditions. The product production conditions include the material or design of the product. The explanatory variable group is used to predict the performance of the product produced in accordance with its production condition.
The information processing device 10 calculates a fitness degree indicating the overall performance of the product on the basis of the objective variable. The objective variable is an index of an individual element of performance. The information processing device 10 calculates an objective variable using a learning model for an explanatory variable group.
The information processing device 10 executes a process for solving a multi-objective optimization problem using an evolutionary algorithm on product data. The information processing device 10 executes a crossover step of generating a new individual by changing a value of an explanatory variable of a part of an individual selected with a predetermined crossover probability from current-generation product data, which has n individuals, to a value determined on the basis of a value of a corresponding explanatory variable of another individual, a mutation step of generating a new individual by changing a value of an explanatory variable of a part of an individual selected with a second probability from current-generation data to another value, and a sorting step of sorting n individuals of next-generation data from stored individuals and generated individuals on the basis of a fitness degree calculated from an explanatory variable group for each individual. Therefore, some individuals are rejected on the basis of the fitness degree for each generation and replaced with new individuals.
In the present embodiment, the current-generation product data is referred to as “current-generation data” and next-generation product data following the current generation may be referred to as “next-generation data.” First-generation product data is sometimes referred to as “first-generation data” and last-generation product data is referred to as “last-generation data.”
In this regard, the information processing device 10 includes a pullback constraint determination step of determining presence or absence of an explanatory condition deviating from the pullback constraint, which is a constraint condition across a plurality of explanatory variables for each individual that has been generated, a pullback step of resetting a reset value based on a plurality of explanatory variables with respect to the plurality of explanatory variables deviating from the pullback constraint, and an individual constraint determination step of determining whether or not each of reset values of the plurality of explanatory variables satisfies an individual constraint condition, which is a constraint condition related to each explanatory variable.
When there is a constraint deviation individual that is an individual having a reset value of an explanatory variable deviating from the individual constraint condition, the information processing device 10 executes the crossover step for the constraint deviation individual. Because it is not necessary to reject an individual that does not satisfy both the pullback constraint and the individual constraint condition, the decrease in prediction accuracy is suppressed and the increase in a calculation amount is suppressed. Furthermore, because there is no re-calculation and the balancing effect of a high fitness degree is also maintained, there is little time loss and the evolutionary direction can be continuously maintained.
Next, an example of a functional configuration of the information processing device 10 will be described. The information processing device 10 includes an arithmetic processing unit 120, a storage unit 140, and an input/output unit 150.
The arithmetic processing unit 120 includes a constraint condition setting unit 124, an individual processing unit 126, and an analysis processing unit 128.
The constraint condition setting unit 124 sets a constraint condition imposed on the explanatory variable group constituting each individual and stores constraint condition information indicating the set constraint condition in the storage unit 140.
Constraint conditions are classified into an individual constraint condition applied to each explanatory variable and a pullback condition applied to a plurality of explanatory variables. The individual constraint condition mainly defines a value range of explanatory variables. More specifically, the individual constraint condition may indicate whether a type of explanatory variable is a continuous value or a discrete value and one or both of maximum and minimum values of a possible value.
For the discrete value, an interval may be further indicated for the maximum value or the minimum value or a plurality of candidate values may be indicated instead of the maximum value or the minimum value.
The pullback condition defines, for example, a value range for a sum of a plurality of explanatory variables to be targeted, a function indicating a relationship between two or more explanatory variables, and the like.
The individual constraint condition and the pullback condition are not necessarily applied exclusively, but may be applied in duplicate. That is, both the individual constraint condition and the pullback condition may be applied to a single type of explanatory variable. In the example of
The constraint condition setting unit 124, for example, adds, changes, or deletes various types of constraint conditions in accordance with operation information input from the manipulation input unit 158 (
The individual processing unit 126 includes a generation unit 126a, an individual manipulation unit 126b, a constraint condition verification unit 126c, and a sorting unit 126d.
The generation unit 126a reads the constraint condition information stored in the storage unit 140, refers to the read constraint condition information, and identifies a constraint condition applied to each explanatory variable.
The generation unit 126a generates n individuals as initial individuals so that they satisfy the identified constraint condition and configures first-generation product data including the generated initial individuals. The generation unit 126a stores the configured product data as first-generation data in the storage unit 140.
When an initial individual is generated, the generation unit 126a sets a value of the explanatory variable to satisfy an individual constraint condition imposed on each explanatory variable for each explanatory variable constituting each individual. For example, for an explanatory variable having a continuous value in which the maximum value and the minimum value are defined, the generation unit 126a randomly selects one real value within the range of the minimum value and the maximum value as the value of the explanatory variable (see
When a pullback constraint across a plurality of explanatory variables is imposed, the constraint condition verification unit 126c executes a pullback constraint determination step for each individual. The pullback constraint determination step is a process of determining whether or not the values of a plurality of explanatory variables to be targeted satisfy the pullback constraint condition.
For a plurality of explanatory variables deviating from the pullback constraint, the constraint condition verification unit 126c executes a pullback step for the plurality of explanatory variables. The pullback process is a process of resetting values (reset values) based on a plurality of explanatory variables between two or more explanatory variables.
The constraint condition verification unit 126c executes an individual constraint determination step for the reset values of a plurality of explanatory variables that have been reset. The individual constraint determination step is a process for determining whether or not the individual constraint condition applied to each explanatory variable is satisfied. When there is an individual in which there is an explanatory variable whose reset value does not satisfy the individual constraint condition, a crossover step is executed.
The constraint condition verification unit 126c may execute the pullback determination step for a new individual and may interrupt the process when there are a plurality of explanatory variables deviating from the pullback constraint.
The individual manipulation unit 126b designates n individuals included in the current-generation data stored in the storage unit 140 as parent individuals, performs genetic manipulations on the parent individuals, and generates new individuals as child individuals. The individual manipulation unit 126b includes and stores the generated child individuals in the current-generation data. The genetic manipulation includes crossover and mutation steps.
The crossover step includes the following processing of S62 to S68.
An explanatory variable of interest that is an explanatory variable which is a part of an individual of interest to be processed is randomly selected from n parent individuals.
One parent individual among the remaining n−1 parent individuals is randomly selected as a reference individual serving as a reference destination.
On the basis of the value of the explanatory variable of interest in the reference individual, a first target value is determined for the individual of interest. On the basis of the value of the explanatory variable of interest in the individual of interest, a second target value is determined for the reference individual.
The value of the explanatory variable of interest in the individual of interest is replaced with the first target value, the values of the other explanatory variables are maintained, and a new individual is generated as a child individual. A new individual in which the value of the explanatory variable of interest in the reference individual is replaced with the second target value and values of the other explanatory variables are maintained is generated as a child individual.
The individual manipulation unit 126b iterates the processing of S62 to S68 until the number of child individuals reaches p (p is a predetermined integer greater than 1 and less than n). p/2n corresponds to a crossover ratio. In the individual manipulation unit 126b, the number p is set in advance on the basis of the crossover ratio.
In the processing of S66, a method of determining the target value to be set for the explanatory variable of interest differs according to whether the explanatory variable of interest is a continuous value or a discrete value. For example, when the explanatory variable of interest is a discrete value, the individual manipulation unit 126b defines the value of the explanatory variable of interest in the reference individual and the value of the explanatory variable of interest in the individual of interest as the first target value and the second target value, respectively (uniform crossover).
When the explanatory variable of interest has a continuous value, the individual manipulation unit 126b can determine the first target value and the second target value using a simulated binary crossover (SBX) method. The SBX method has a center of gravity on the value of the explanatory variable of interest in the reference individual and the value of the explanatory variable of interest in the individual of interest and has a step of setting a predetermined first probability distribution and a second probability distribution symmetrical to each other in a parameter space of the explanatory variable of interest and a step of determining a first target value randomly according to the first probability distribution and determining a second target value randomly according to the second probability distribution.
The mutation step includes the following processing of S82 and S84.
An explanatory variable of interest, which is an explanatory variable of a part of the individual of interest to be processed from n parent individuals, is randomly selected at a predetermined mutation ratio.
A new individual in which a target value of an explanatory variable of interest is randomly determined, an original value of the explanatory variable of interest is replaced with a target value, and values of other explanatory variables are maintained is generated as a child individual.
In this regard, when the explanatory variable of interest is a continuous value and the maximum value and the minimum value are set as individual constraint conditions, a real value of one of the continuous values within the range between the minimum value and the maximum value is determined to be a target value. When the explanatory variable of interest is a discrete value, one candidate value randomly selected from a plurality of candidate values set as individual constraint conditions is determined to be a target value.
When a pullback constraint is imposed across a plurality of explanatory variables, the constraint condition verification unit 126c executes the above-described pullback constraint determination step for each of the generated child individuals.
For a plurality of explanatory variables deviating without satisfying the pullback constraints, the constraint condition verification unit 126c executes a pullback step for the plurality of explanatory variables.
The constraint condition verification unit 126c executes an individual constraint determination step for reset values of a plurality of explanatory variables that have been reset. The individual manipulation unit 126b designates a child individual in which there are explanatory variables whose reset values do not satisfy the individual constraint condition as a parent individual and performs a genetic manipulation thereon to generate a new individual as the child individual.
The sorting unit 126d calculates a fitness degree using a predetermined mathematical model for each individual constituting the current-generation data. As the fitness degree, an index of performance of a product is applied. The sorting unit 126d selects n individuals in descending order of fitness degrees from n parent individuals and newly generated child individuals. Here, an individual to which a fitness degree indicating good performance is assigned is preferentially selected. The sorting unit 126d stores next-generation data including the n selected individuals in the storage unit 140.
The performance of a product is generally evaluated using a plurality of elements. For example, when the product is a battery, an index quantitatively indicating the capacity, output, cost, or the like thereof can be an element. The capacity corresponds to an amount of charge obtained in a discharging process until a termination voltage is reached from the start of the discharging process when an output voltage between two electrodes is a rated voltage. The output corresponds to an electric current or power obtained in the discharging process when the output voltage is equal to the rated voltage. The cost is the cost of manufacturing the product. The cost may include various expenses required for processing, distribution, and the like as well as the unit price of each member.
An individual element may be applied as a fitness degree or an index obtained by integrating a plurality of elements may be applied. It is only necessary for a function of calculating a fitness degree by integrating element indices related to a plurality of elements to be a function that monotonically changes to a numerical value indicating better performance when a change to a numerical value indicating good performance is made for each element.
For example, the sorting unit 126d can calculate an element index αk using a learning model learned for each element type k from an explanatory variable group of each individual and can calculate a weighted sum between element types k of the calculated element index αk as a fitness degree. In the model learning, a parameter set of the learning model is predetermined so that a predicted value of the objective variable calculated using the learning model from a known explanatory variable group for each element type k and a target value of the objective variable corresponding to the explanatory variable group are approximated as the entire training data.
As the learning model, for example, one of a linear model learned using a multiple regression analysis, ridge regression, least absolute shrinkage and selection operator (LASSO) regression, elastic net, or the like and a nonlinear model such as a support vector machine, a neural network, AdaBoost, or random forest may be used. A different learning model may be used for each element type k. In the sorting unit 126d, a weight coefficient wk used for calculating a fitness degree is set in advance.
The analysis processing unit 128 selects one or more individuals on the basis of a fitness degree calculated from the explanatory variable group among individuals constituting the product data stored in the storage unit 140. For example, the analysis processing unit 128 configures a display screen by associating the fitness degree with the explanatory variable group of the selected individual and outputs display data indicating the configured display screen to the display unit 160 (
The analysis processing unit 128 may evaluate the growth potential of n parent individuals as a whole for each generation. Statistics that are indices of growth potential (hereinafter sometimes referred to as “growth potential index values”) can include an optimal value of a fitness degree between individuals (hereinafter sometimes referred to as an “optimal fitness degree”) and a discreteness degree.
The discreteness degree is a degree to which the explanatory variables are randomly distributed across the entire vector space without being concentrated around a particular value. As an index indicating a discrete value, for example, any of the variance between individuals, an average distance between individuals, and the like may be used. In general, as a set of individuals grows normally, the growth potential index value tends to increase, and a growth rate, i.e., an amount of change thereof, tends to decrease. The analysis processing unit 128 may output display data indicating a display screen including a growth potential index value to the display unit 160.
The storage unit 140 stores various types of data temporarily or permanently.
The input/output unit 150 can input or output various types of input data with other equipment.
Instead of outputting various types of display data to the display unit 160, the analysis processing unit 128 may output various types of display data to other equipment via the input/output unit 150.
Instead of inputting various types of manipulation information from the manipulation input unit 158, the constraint condition setting unit 124 and the individual processing unit 126 may input various types of manipulation information from other equipment via the input/output unit 150. The other equipment may be connected via a communication network.
Next, an example of a hardware configuration of the information processing device 10 according to the present embodiment will be described.
The processor 152 executes arithmetic processes indicated in the instructions described in various types of programs. The processor 152 controls an operation of the entire information processing device 10. The processor 152 is, for example, a central processing unit (CPU). In the present application, executing the arithmetic process indicated in the instruction described in the program may be referred to as “executing the program”, “execution of the program”, or the like.
The manipulation input unit 158 can receive a manipulation and generates a manipulation signal in accordance with the received manipulation. Various types of manipulation information are indicated in manipulation signals. The manipulation input unit 158 may include general-purpose members such as a mouse, a touch sensor, and a keyboard, or may have dedicated members such as buttons and dials.
The display unit 160 displays a display screen in accordance with the display data input to its own unit. The display unit 160 may be one of a liquid crystal display, an organic electroluminescent display, and the like.
The main memory 162 is a writable memory used as a reading area for an executable program of the processor 152 or as a work area for writing processing data of the executable program. The main memory 162 is configured to include, for example, a random-access memory (RAM).
The program storage unit 164 stores system firmware such as a basic input output system (BIOS), firmware of various types of devices, other programs, and setting information required for executing the programs. The program storage unit 164 includes, for example, a read only memory (ROM).
The auxiliary storage unit 166 permanently stores various types of data and programs that are rewritable. The auxiliary storage unit 166 may be, for example, a hard disk drive (HDD), a solid-state storage device (solid-state drive (SSD)), or the like.
The interface unit 168 connects to other equipment by wire or wirelessly so that various types of data can be input/output. The interface unit 168 includes one or both of an input/output interface and a communication interface.
The processor 152 and the main memory 162 correspond to the minimum hardware used to implement the computer system of the information processing device 10. The processor 152 mainly implements a function of the arithmetic processing unit 120 by executing a predetermined program in cooperation with the main memory 162 and other hardware. The main memory 162, the program storage unit 164, and the auxiliary storage unit 166 implement the main functions of the storage unit 140. The interface unit 168 implements the main function of the input/output unit 150.
Next, an example of information processing according to the present embodiment will be described.
The constraint condition setting unit 124 sets an individual constraint condition to be applied to an individual explanatory variable as a constraint condition imposed on an explanatory variable group and a pullback constraint as a constraint condition to be applied across a plurality of explanatory variables.
The generation unit 126a generates n initial individuals each including a plurality of explanatory variables indicating a product production condition. The constraint condition verification unit 126c verifies that all generated initial individuals satisfy the set constraint condition. The generation unit 126a configures first-generation data including the n initial individuals satisfying the constraint condition as parent individuals and stores the first-generation data in the storage unit 140.
The individual processing unit 126 iterates the processing of steps S06 to S18 G times. G is an integer of 2 or more indicating the predetermined number of generations.
The individual manipulation unit 126b iteratively executes a crossover step in accordance with a predetermined crossover ratio. In the crossover step, the individual manipulation unit 126b randomly selects an explanatory variable of interest in an individual of interest from a parent individual. The individual manipulation unit 126b generates a new individual by changing a value of the explanatory variable of interest in the individual of interest to a target value based on the value of the explanatory variable of interest in the randomly selected reference individual. The individual manipulation unit 126b includes the new individual as a child individual in the current-generation data.
The individual manipulation unit 126b iteratively executes a mutation step according to a predetermined mutation ratio. In the mutation process, the individual manipulation unit 126b randomly selects the explanatory variable of interest in the individual of interest according to the mutation ratio from the parent individual. The individual manipulation unit 126b generates a new individual as a child individual by changing the value of the explanatory variable of interest in the individual of interest to a target value randomly selected within a value range constituting the individual constraint condition in the explanatory variable of interest. The individual manipulation unit 126b includes the new individual as a child individual in the current-generation data.
When a pullback constraint is imposed across a plurality of explanatory variables, the constraint condition verification unit 126c executes a pullback constraint determination step for each of the newly generated child individuals and determines whether or not the pullback constraint is satisfied for the plurality of explanatory variables.
The constraint condition verification unit 126c executes a pullback step for a plurality of explanatory variables that deviate from the pullback constraint and resets values based on the plurality of explanatory variables.
The constraint condition verification unit 126c executes an individual constraint determination step with respect to the reset values of the plurality of explanatory variables that have been reset and determines whether or not the reset values satisfy the individual constraint condition. For an individual having an explanatory variable whose reset value deviates without satisfying the individual constraint condition, the process returns to step S06 and is executed from the crossover step.
The sorting unit 126d calculates a fitness degree indicating the performance of the product for each individual included in the current-generation data.
The sorting unit 126d selects n individuals in descending order of performance indicated by the fitness degree, configures next-generation data including the n selected individuals and stores the next-generation data in the storage unit 140. Thereafter, the process returns to step S06.
The analysis processing unit 128 evaluates a growth potential of a group on the basis of the fitness degree of each individual or the like for each generation. For example, the analysis processing unit 128 calculates an optimal fitness degree as a growth index value on the basis of fitness degrees of n individuals for each generation.
After the processing of steps S06 to S18 is iterated G times, the analysis processing unit 128 selects one or more predetermined individuals in descending order of fitness degrees and outputs optimal design information indicating the production condition shown in the explanatory variable group constituting the selected individual to the display unit 160 or other equipment.
Regardless of whether or not the number of generations G has been set, the analysis processing unit 128 may determine whether or not the growth of the product data has converged on the basis of a growth potential index value. For example, the analysis processing unit 128 can determine whether or not a change amount between generations has monotonically decreased in accordance with the accumulation of growth potential index values of the generations and the growth of the product data has converged according to whether the change amount is smaller than a predetermined change amount threshold value. When it is determined that the growth has converged, the analysis processing unit 128 may stop the processing of steps S06 to S18.
Next, an example of a pullback constraint according to the present embodiment will be described.
In the example of
When a sum E exceeds the maximum value MAX, the constraint condition verification unit 126c resets each of the values of the first explanatory variable ev4-1, the third explanatory variable ev4-3, and the sixth explanatory variable ev4-6 so that the sum E becomes the maximum value MAX while maintaining their ratio. In the example of
When a sum F is less than the minimum value MIN, the constraint condition verification unit 126c resets each of the values of the first explanatory variable ev4-1, the third explanatory variable ev4-3, and the sixth explanatory variable ev4-6 so that the sum F becomes the minimum value MIN while maintaining their ratio. In the example of
The constraint condition verification unit 126c resets each of the values of the first explanatory variable ev4-1 and the third explanatory variable ev4-3 so that the subtraction value H becomes the certain value G while maintaining their ratio. In the example of
When the subtraction value I exceeds the maximum value MAX, the constraint condition verification unit 126c resets each of the values of the first explanatory variable ev4-1 and the third explanatory variable ev4-3 so that the subtraction value I becomes the maximum value MAX while maintaining their ratio. In the example of
When a subtraction value J is less than the minimum value MIN, the constraint condition verification unit 126c resets values of the first explanatory variable ev4-1 and the third explanatory variable ev4-3 so that the subtraction value J becomes the minimum value MIN while maintaining their ratio. In the example of
Thereby, a change in the value of the explanatory variable due to pullback is suppressed. For example, when a characteristic length of each member (for example, a thickness of an electrode, a separator, or the like) is used as an explanatory variable, a requirement imposed on a set thereof is applied to the pullback constraint indicating the minimum and maximum values of the sum of the plurality of explanatory variables. In this case, the sum of the characteristic lengths is constrained to a real value between the minimum value MIN and the maximum value MAX.
Next, another example of information processing according to the present embodiment will be described.
The constraint condition setting unit 124 sets an individual constraint condition for each explanatory variable as a constraint condition and sets a pullback constraint for a set of a plurality of explanatory variables. The constraint condition setting unit 124 stores constraint condition information indicating the set constraint condition in the storage unit 140.
The generation unit 126a reads constraint condition information indicating an individual constraint condition and a pullback constraint from the storage unit 140. The generation unit 126a identifies an explanatory variable to which the individual constraint condition and the pullback constraint are applied and classifies an individual explanatory variable on the basis of a type of constraint condition.
The generation unit 126a generates n initial individuals by iterating a process of setting a value of the explanatory variable so that it falls within a value range indicated by an individual constraint condition for each explanatory variable. The generation unit 126a configures first-generation data including the n initial individuals that have been generated and stores the first-generation data in the storage unit 140.
The constraint condition verification unit 126c executes a pullback constraint determination step for each of the n initial individuals and determines whether or not a plurality of explanatory variables to which the pullback constraint is applied satisfy the pullback constraint. When all explanatory variables satisfy the pullback constraint (step S108; YES), the process proceeds to a loop L12. When there is an individual having an explanatory variable deviating from the pullback constraint (step S108; NO), the process proceeds to step S110.
The constraint condition verification unit 126c executes a pullback step for a set of explanatory variables that deviate from the pullback constraint and resets a value of a corresponding explanatory variable.
The constraint condition verification unit 126c executes an individual constraint determination step for the reset value reset in a pullback process and determines whether or not it is within a value range constituting the individual constraint condition set for the corresponding explanatory variable. When it is determined that all values are within the set value range (step S112; YES), the process proceeds to the loop L12. When there is a constraint deviation individual that is an individual having a reset value deviating from the set value range (step S112; NO), the process of
A process of the loop L12 includes the processing of steps S114 to S126, and these processing steps are iterated G times. An initial value of the number of iterations i is set to 1 and the individual processing unit 126 counts the number of iterations i by adding 1 to the number of iterations i (incrementing the number of iterations i by 1) after the end of the processing of step S126. When the number of iterations i exceeds G, the loop L12 is released and the process proceeds to step S128.
By executing a crossover step, the individual manipulation unit 126b iterates a process of randomly selecting an individual of interest to be processed from n parent individuals, crossing with other reference individuals, and generating a new individual as a child individual until the number of new individuals reaches p.
The individual manipulation unit 126b generates a new individual as a child individual by randomly selecting an explanatory variable of interest in the individual of interest to be processed at a certain mutation ratio and changing a value of the explanatory variable of interest to a target value within a value range that forms the individual constraint condition.
The constraint condition verification unit 126c executes a pullback constraint determination step for each of the newly generated child individuals and determines whether or not a plurality of explanatory variables on which the pullback constraint is imposed satisfy the pullback constraint. When it is determined that all explanatory variables are within the set value range (step S118; YES), the process proceeds to step S124. When there is an individual having a reset value deviating from the set value range (step S118; NO), the process proceeds to step S120.
The constraint condition verification unit 126c executes a pullback step for a set of explanatory variables that deviate from the pullback constraint and resets the value of the corresponding explanatory variable.
The constraint condition verification unit 126c executes an individual constraint determination step for the reset value reset in a pullback process and determines whether or not it is within the value range that forms the individual constraint condition set for the corresponding explanatory variable. When it is determined that all explanatory variables are within the set value range (step S122; YES), the process proceeds to step S124. When there is a constraint deviation individual that is an individual having a reset value deviating from the set value range (step S122; NO), the process proceeds to step S114.
The sorting unit 126d refers to the current-generation data and calculates a fitness degree using a predetermined mathematical model from an explanatory variable group for each child individual that is a newly generated individual. The sorting unit 126d selects n individuals in descending order of fitness degrees from a set of n parent individuals and new child individuals and stores next-generation data including the n selected individuals in the storage unit 140.
The analysis processing unit 128 reads last-generation data stored in the storage unit 140 and selects one or more predetermined individuals from the read last-generation data in descending order of fitness degrees. The analysis processing unit 128 can determine a production condition indicated in the explanatory variable group of the selected individual as an optimal design condition. Thereafter, the process of
Although an example in which the information processing device 10 is connected to the manipulation input unit 158 and the display unit 160 by wire or wirelessly, manipulation information is input from the manipulation input unit 158, and display data is output to the display unit 160 has been described above, the present invention is not limited thereto. An input source of the manipulation information and an output destination of the display data may be external equipment connected using a network. In this case, in the information processing device 10, one or both of the manipulation input unit 158 and the display unit 160 may be omitted.
As described above, according to the present embodiment, the information processing device 10 includes the individual processing unit 126 configured to execute a crossover step of generating a new individual by changing a value of an explanatory variable of a part of an individual selected with a first probability (for example, a crossover ratio) from current-generation data, which has n individuals each being an explanatory variable group having a plurality of explanatory variables, to a target value based on a value of a corresponding explanatory variable of another individual, a mutation step of generating a new individual by changing a value of an explanatory variable of a part of an individual selected with a second probability (for example, a mutation ratio) from the current-generation data to another value, and a sorting step of sorting n individuals of next-generation data from original n individuals and generated individuals on the basis of a fitness degree calculated from an explanatory variable group for each individual.
The individual processing unit 126 executes a pullback constraint determination step of determining the presence or absence of an explanatory condition deviating from the pullback constraint, which is a constraint condition based on four arithmetic operations across a plurality of explanatory variables for each individual that has been generated and a pullback step of resetting a reset value based on a plurality of explanatory variables with respect to the plurality of explanatory variables deviating from the pullback constraint.
The explanatory variable group may indicate a production condition of each product, and the fitness degree may be an index value indicating the performance of the product.
The product may be a battery and the explanatory variable group may include a characteristic value indicating a magnitude of a part of the battery or a blending ratio of materials of the battery, and the objective variable may be a capacity, output, or cost of the battery.
The present embodiment may be implemented as a computer-readable storage medium storing a computer program for causing a computer of an information processing device to execute an information processing method having a crossover step, a mutation step, a sorting step, a pullback constraint determination step, a pullback step, an individual constraint determination step, and a replacement step.
According to this configuration, a constraint deviation individual in which a reset value set in the pullback step deviates from the individual constraint condition has occurred with respect to individuals newly generated in the crossover step and the mutation step, values based on a plurality of explanatory variables are assigned to the constraint deviation individual. Therefore, it is possible to prevent a case where resetting of a value based on a plurality of explanatory variables, the pullback constraint determination step, and the pullback step are iterated for the explanatory variable group constituting the constraint deviation individual and a process is prolonged without determining the explanatory variable group. Because the child individual becomes a candidate for the next-generation data and the explanatory variable group constituting the parent individual that satisfies the constraint condition is handed over to the next generation, the data is stabilized without degrading the accuracy of the solution.
The pullback constraint indicates that the sum of the values of the plurality of explanatory variables is within a predetermined first value range. In the pullback step, a reset value may be determined so that the sum of the values of the plurality of explanatory variables is within a predetermined first value range while a ratio between two or more explanatory variables deviating from the pullback constraint is maintained. The individual constraint condition may indicate that a value of an individual explanatory variable is within a predetermined second value range.
According to this configuration, the value of the individual explanatory variable is set so that the sum is included in the first value range among the plurality of explanatory variables on which the pullback constraint is imposed. Therefore, it is possible to diversify individuals that satisfy the pullback constraint.
In the pullback step, when the sum of the values of the plurality of explanatory variables deviating from the pullback constraint deviates from a predetermined lower limit value of the first value range, the reset values may be determined by multiplying the values of the plurality of explanatory variables by a coefficient based on the plurality of explanatory variables and the lower limit value.
According to this configuration, when the sum deviates from the lower limit value of the first value range among the plurality of explanatory variables on which the pullback constraint is imposed, the value of each explanatory variable is set so that the sum is included in the first value range. Therefore, it is possible to diversify individuals that satisfy the pullback constraint.
In the pullback step, when the sum of the values of the plurality of explanatory variables deviating from the pullback constraint deviates from a predetermined upper limit value of the first value range, the reset values may be determined by multiplying the values of the plurality of explanatory variables by a coefficient based on the plurality of explanatory variables and the upper limit value.
According to this configuration, when the sum deviates from the upper limit value of the first value range among the plurality of explanatory variables on which the pullback constraint is imposed, the value of each explanatory variable is set so that the sum is included in the first value range. Therefore, it is possible to diversify individuals that satisfy the pullback constraint.
The information processing device 10 may include the analysis processing unit 128 configured to execute an analysis processing step of analyzing statistical characteristics between individuals of the explanatory variable group for each generation.
According to this configuration, statistics indicating the statistical characteristics between individuals are calculated for each generation. Therefore, it is possible to ascertain a growth potential of an individual group corresponding to the progress of generations on the basis of the transition of statistics.
Although embodiments of the present invention have been described in detail with reference to the drawings, specific configurations are not limited to the above-described embodiments and various design changes and the like can be made without departing from the scope and spirit of the present invention.
Number | Date | Country | Kind |
---|---|---|---|
202310348837.4 | Mar 2023 | CN | national |