Simulation Equipment
Patent Information
- Application Number
- JP2024507437
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2022-03-18
- Publication Date
- 2025-03-14
- Estimated Expiration
- 2042-03-18
AI Technical Summary
【0018】 本開示に係るシミュレーション装置によれば、複数のミクロモデルのそれぞれの時間単位で連成シミュレーションした結果をマクロモデルの時間単位での結果として学習することで、マクロモデルによる全体シミュレーションでは、複数のミクロモデルのそれぞれの時間単位でのシミュレーションを省略することが可能となり、計算量を低減することができる。
Smart Images

Figure 0007646069000001 
Figure 0007646069000002 
Figure 0007646069000003
Abstract
Description
[Technical field]
[0001] The present disclosure relates to a simulation device, and more particularly to a simulation device with a reduced amount of calculation. [Background technology]
[0002] In recent years, in product development, efforts have been made to front-load the verification and testing of product behavior at the design stage using simulation models that mimic the behavior of the product. Since it is possible to verify new technologies in advance and detect defects early at the design stage, it is possible to reduce the costs required for verification and shorten the development period by eliminating the time required for prototype development.
[0003] In order to mimic the behavior of a product, it is necessary to simulate the interactions of various elements of the product, such as the operation of various actuators and the behavior of embedded software, fluctuations in the structure, and changes in the environment around the product. It is also necessary to verify whether the results of the simulation match the behavior of the actual product within a reasonable range.
[0004] For these reasons, developing a simulation model that mimics the behavior of the entire product often requires significant costs, and in order to verify the validity of the model, simulations must be performed that combine various elements related to the product.
[0005] For this reason, when using simulation models in product development, there are cases where a simulation model is developed that is limited to one element of the product, for example, the behavior of the software on the board and the load of the actuator, and is used in product development. Because such simulation models are limited in the elements they simulate, it is possible to verify the validity of the model by simulating it under fewer conditions.
[0006] However, limited simulation models cannot verify the operation and control of multiple elements, such as adjusting the output of an actuator in response to load and changing the airflow generated by a fan.
[0007] Therefore, instead of developing a simulation model that simulates the behavior of the entire product or the operation and control across multiple elements, it is possible to realize this by combining existing partial simulation models. The following patent documents are listed as documents related to simulation models.
[0008] Patent Document 1 discloses a method for reducing the amount of calculation required for a simulation by selecting a representative point that represents the behavior of the object to be simulated and using a model that learns only the behavior of the representative point, with the aim of improving the efficiency of the amount of calculation required for a simulation model.
[0009] Patent Document 2 discloses a method for expanding the range in which a simulation model can be applied by learning the results of a simulation using an existing simulation model, generating a learning model that estimates a similar output, determining the accuracy of the estimated value of the learning model, and performing re-learning if the estimation accuracy is insufficient, thereby enabling simulation under conditions that cannot be covered by existing simulations.
[0010] Patent Document 3 discloses a method for solving the decrease in prediction accuracy caused by optimization of a simulation model using actual measurement values, in which, from the viewpoint of improving the prediction accuracy of a simulation model, parameters of the simulation model are optimized using data in which time-varying components have been excluded from the actual measurement data used for optimization, and the output values of the optimized model are corrected with the excluded time-varying components. [Prior art documents] [Patent documents]
[0011] [Patent Document 1] JP 2020-060996 A [Patent Document 2] International Publication No. 2018 / 143019 [Patent Document 3] Japanese Patent Application Publication No. 07-056608 Summary of the Invention [Problem to be solved by the invention]
[0012] When performing a simulation by combining existing simulation models for limited elements (hereinafter referred to as micro models) instead of developing a simulation model for the entire product or multiple elements (hereinafter referred to as a macro model), each micro model requires a more detailed simulation than a macro model. For example, when simulating the behavior of a control board in an air conditioner, it is important to simulate the calculation process by the control software, and a simulation in clock units is required. On the other hand, when simulating the behavior of an entire air conditioner, it is important not to focus on minute changes inside the control board, but on changes due to complex elements such as changes in airflow caused by the operation of various actuators and fans, and a simulation in seconds or minutes is required. For this reason, a coupled simulation that combines micro models requires a simulation in more detailed time units than a single macro model, which increases the amount of calculations.
[0013] The method disclosed in Patent Document 1 requires the selection of a representative point that represents the model, but in the case of a model in which each signal output has meaning, such as a control board, it is not possible to select a representative point, and therefore the method cannot be applied to such models.
[0014] Patent Document 2 discloses a method for constructing a model for inferring the convergence result of a simulation, but it is not possible to infer the process of a coupled simulation using multiple models.
[0015] The method of Patent Document 3 requires actual measurement data, and therefore cannot perform simulations for new mechanisms and controls for which there is no actual measurement data.
[0016] The present disclosure has been made to solve the above problems, and has an object to provide a simulation device that can reduce the amount of calculations even when performing a coupled simulation. [Means for solving the problem]
[0017] The simulation device according to the present disclosure includes a coupled simulation unit that executes a coupled simulation combining a plurality of micro models, each of which is a simulation model for a limited element, a macro model learning unit that learns the correspondence between input and output in an overall simulation that simulates the entire simulation target from the execution results of the coupled simulation in the coupled simulation unit and generates a macro model that infers an output after a certain period of time in response to an input, and an overall simulation execution unit that executes the overall simulation using the macro model generated by the macro model learning unit. Effect of the Invention
[0018] According to the simulation device of the present disclosure, by learning the results of coupled simulation of each of the multiple micro models in each time unit as the result of the macro model in each time unit, it becomes possible to omit the simulation of each of the multiple micro models in each time unit in the overall simulation using the macro model, thereby reducing the amount of calculation. [Brief description of the drawings]
[0019] [Figure 1] 1 is a functional block diagram showing a configuration of a simulation device according to a first embodiment. [Diagram 2] 4 is a flowchart showing a process of generating a simulation model by the simulation device of the first embodiment. [Diagram 3] 4A to 4C are diagrams illustrating a shaping process of learning data in the simulation device of the first embodiment. [Figure 4] 4A to 4C are diagrams illustrating a shaping process of learning data in the simulation device of the first embodiment. [Diagram 5] FIG. 2 is a diagram showing a neural network used for learning a macro model in the simulation device of the first embodiment. [Figure 6] 4 is a flowchart showing a process of executing an overall simulation in the simulation device of the embodiment 1. [Figure 7] FIG. 1 is a diagram illustrating a hardware configuration for implementing a simulation device according to a first embodiment. [Figure 8] FIG. 1 is a diagram illustrating a hardware configuration for implementing a simulation device according to a first embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0020] <Embodiment 1> 1 is a functional block diagram showing a configuration of a simulation device 100 according to a first embodiment of the present disclosure. The simulation device 100 shown in FIG. 1 includes a model generation processing unit 20, a micro model addition processing unit 30, a simulation execution processing unit 40, and a model re-learning processing unit 50.
[0021] The model generation processing unit 20 has a coupled simulation unit 21 that receives the micro model group 10 as input and executes a coupled simulation, a simulation result database (DB) 22 that stores the simulation results in the coupled simulation unit 21, and a macro model learning unit 23 that generates a macro model using the simulation results stored in the simulation result DB 22, and has the function of generating a macro model 11.
[0022] First, the coupled simulation unit 21 is an execution device for an overall simulation using the micro model group 10. The overall simulation using the micro model group 10 is realized by linking the inputs and outputs of each micro model in the micro model group 10 and applying the inputs and outputs of each model for each simulation period to other models.
[0023] Here, the process of "connecting inputs and outputs of each micro model" will be described below. In this disclosure, when utilizing simulation in product development, it is assumed that a partial simulation is performed first. For example, in the case of an air conditioner, simulations are developed for each element such as how the room temperature and airflow change due to heating and cooling, how the behavior of the refrigerant in the refrigerant circuit and the efficiency of heat release and absorption change, and the behavior of the control board that controls these.
[0024] In this disclosure, such a simulation model for limited elements related to a product is defined as a "micro model." Also, a simulation for the entire product that is the subject of the simulation is defined as a "whole simulation."
[0025] Micro models are generated for each of a plurality of elements, constituting a micro model group 10. An overall simulation using the micro model group 10 is a model in which an input value is given at a certain time, and an output value after a certain time has elapsed that is suited to each element to be simulated is simulated.
[0026] Specifically, in the case of a simulation model of the behavior of a control board, when a signal value is input to the control board at a certain time t1, the model will simulate the calculation processing performed by the control board over a period of time in milliseconds, for example 100 msec, and output the signal value from the control board after the aforementioned certain period of time has elapsed.
[0027] Furthermore, although each model is an independent simulation model, the inputs and outputs of each model may be interrelated. For example, a simulation model of indoor airflow temperature requires the volume, direction, and temperature of the air output by the air conditioner as inputs. The volume and direction of the air are affected by the fans that operate in response to the output signal of the control board, and the temperature of the air is affected by the release and absorption of heat by the refrigerant circuit. Similarly, the measured values of various sensors that serve as inputs to the control board may be affected by the indoor airflow temperature.
[0028] Based on the above, a method for realizing a coupled simulation in which the simulation results of each model are correlated is to use two models, A and B, which are related to each other in some of their outputs and some of their inputs, and to calculate the input values of model B from the output values of model A and input them into model B. This mechanism, which is carried out between all related models, is expressed as "linking the input and output of each micro model."
[0029] Here, if model A is a model that starts a simulation, for example, 1 minute after an input at time t1, and model B is a model that starts a simulation, for example, 1 second after an input at time t1, the simulation in model B is performed 60 times to match the timing at which the simulation results are output in model A, thereby aligning the output timing of the simulation results.
[0030] Next, the process of "applying input / output for each simulation period of each model to other models" will be described.
[0031] Even with the same input, the simulation results of the models may differ depending on the input series. For this reason, as a method of realizing coupled simulation, for two models A and B that are related to each other in some of their outputs and some of their inputs, the output of model A at a certain time t1 is used as the input to model B at the same time t1, and the output of model A at another time t2 is used as the input to model B at the same time t2. This is expressed as "applying the input and output of each model for each simulation cycle to the other model."
[0032] In the block diagram shown in Fig. 1, various micro models are input all at once as the micro model group 10 to generate the macro model 11, but it is also possible to regenerate the macro model by regarding a combination of a newly developed micro model and the macro model 11 after the generation of the macro model 11 as the micro model group 10. By combining successively developed micro models with the macro model to regenerate the macro model and expanding the macro model in stages, it is possible to accelerate the application of the overall simulation while developing the macro model.
[0033] The macro model learning unit 23 is a model generation device that learns the correspondence and tendency of input and output in the overall simulation from the coupled simulation results of the micro model group 10, and generates a macro model 11 that estimates an output after a certain time period in response to a certain input.
[0034] 2 is a flowchart for explaining the learning process of the macro model. The learning process of the macro model will be explained below with reference to FIG.
[0035] When learning of the macro model is started, first, the macro model learning unit 23 acquires the coupled simulation result from the simulation result DB 22 (step S10).
[0036] Next, the macro model learning unit 23 formats the acquired coupled simulation result into a set of output data obtained after a certain time has elapsed for input / output data at a certain time (step S11), and outputs the set as learning data.
[0037] The process of shaping the coupled simulation results into the learning data in step S11 will be described with reference to Fig. 3 and Fig. 4. Fig. 3 is a table showing the data before the coupled simulation results are shaped into the learning data, and Fig. 4 is a table showing the data after the coupled simulation results are shaped into the learning data.
[0038] FIG. 3 shows the results of a coupled simulation using a group of micro models 10 that simulates changes in 100 msec increments, and the results of the coupled simulation for inputs A, B, . . . are outputs a, b, . . .
[0039] As input A, A0 is input at time 0, and A1, A2, etc. are input every 100 msec thereafter. Similarly, as input B, B0 is input at time 0, and B1, B2, etc. are input every 100 msec thereafter.
[0040] As output a, a0 is output at time 0, and then a1, a2... are output every 100 msec. Similarly, as output b, b0 is output at time 0, and then b1, b2... are output every 100 msec.
[0041] When deriving a computational model that simulates changes in 1-second increments using such coupled simulation results as input, the macro model learning unit 23 formats the input / output data for each time shown in Figure 3 and the output data one second later into a set of data as shown in Figure 4 and outputs it.
[0042] That is, Fig. 4 shows the input / output before the simulation is executed and the output after the simulation is executed 1 second later, where the input / output before the simulation is executed is the same as Fig. 3. The output after the simulation is executed shows that a10, a11, a12, ... are output as output a, and b10, b11, b12, ... are output as output b.
[0043] Returning to the explanation of the flowchart in FIG. 2, the macro model learning unit 23 performs macro model learning to derive a computational model that estimates output data similar to that of the coupled simulation for any input data from the learning data shaped in step S11 (step S12).
[0044] In the learning process, the coupled simulation results obtained from the simulation result DB 22 can be different data with similar characteristics. For example, since the micro model group 10 is a collection of existing micro models, it is considered that simulation results under various conditions are accumulated for each micro model. In such a case, it is also possible to derive input / output data in a time series in the case of the coupled simulation from the simulation results of the known micro models without performing the coupled simulation using the micro model group 10, and to format the derived time series data and output it as learning data.
[0045] The method of deriving the computation model in the macro model learning unit 23 can be performed using any algorithm as long as it is a model that can estimate output data after a certain time has elapsed from specific input / output data, and different data configurations can be used for the configuration of the learning data depending on the method of deriving the computation model. For example, known algorithms such as supervised learning, unsupervised learning, and reinforcement learning can be used as the method of deriving the computation model.
[0046] As an example, we will explain the application of supervised learning using a neural network as a method for generating a macro model that infers the output obtained after a certain time has elapsed for any input in an overall simulation. Here, supervised learning refers to a method in which a set of input data and result data is given to a learning device, the device learns the features of the learning data, and the result for any input is inferred.
[0047] First, a neural network is a network having an input layer and an output layer each including a plurality of neurons, and including one or more intermediate layers. Figure 5 is a diagram showing an example of a neural network. The neural network shown in Figure 5 is a three-layer neural network having an X layer as an input layer, a Z layer as an output layer, and a Y layer as an intermediate layer.
[0048] In the case of the three-layered neural network shown in Figure 5, first, in the learning stage, the coefficients w11, w12, ... of the weight W1 between each neuron and the coefficients w21, w22, ... of the weight W2 are randomly set and initialized. Next, input data from the learning data is input to each neuron X1, X2, ... in the input layer, and the values input to the input layer are multiplied by the coefficient of the weight W1, and these values are input to each neuron Y1, Y2 in the hidden layer. The learning results of neurons Y1 and Y2 are further multiplied by the coefficient of the weight W2 and input to each neuron Z1, Z2, ... in the output layer, and finally the output value is determined. The output value for this input value changes depending on the coefficients of the weights W1 and W2.
[0049] Next, we will explain the procedure for training a neural network using supervised learning. In supervised learning, training data is divided into model generation data and test data for evaluating the validity of the trained neural network.
[0050] This process divides a set of pairs of input data and result data, and sets the subset used for training the model as model generation data, and the subset used for verifying the trained model as test data.
[0051] For example, let us consider the case where the input data and result data pairs are Set1, Set2, Set3, ..., Set1000. If the input data and result data of Set1, Set2, Set3, ..., Set700 are given to a learning device for model training, and the remaining input data of Set701, ..., Set1000 are given to the trained model, and the obtained inference values and result data are to be verified, Set1, ..., Set700 will be the model generation data, and Set701, ..., Set1000 will be the test data.
[0052] Then, in the processing of steps (A1) to (A5) described below, the weight parameters of the neural network are adjusted from the model generation data, and in steps (B1) to (B3), it is verified whether the adjusted parameters can provide sufficiently reasonable simulation results. The learning process of the neural network according to steps (A1) to (A5) will be described below. Step (A1): Input data for the model generation data is input to each neuron in the input layer of the neural network, and the values of each neuron in the output layer of the neural network obtained thereby are obtained as output data of the neural network.
[0053] As explained above, model generation data is a set of input data and result data. For example, in the example shown in Figure 4, the input data for model generation data would be (A0,B0,...,a0,b0,...) and (A1,B1,...,a1,b1,...), while the result data for model generation data would be (a10,b10,...), (a11,b11,...), etc.
[0054] The output data of a neural network is the set of data obtained from each neuron in the output layer after inputting the model generation data to each neuron in the input layer and propagating it from the intermediate layer to the output layer. The value of each neuron in the output layer corresponds to each item of the result data.
[0055] Step (A2): The obtained output data of the neural network is compared with the result data of the model generation data, i.e., the correct output data, and the error is calculated.
[0056] Step (A3): The weight coefficients between the output layer and the hidden layer are corrected using the backpropagation method so as to reduce the error calculated in step (A2).
[0057] Here, the backpropagation method is one of the weighting coefficient correction algorithms, and is a known method that minimizes the error by adjusting the weighting coefficient in the direction that reduces the gradient of the error function. By using this method, the weighting coefficients between the output layer and the hidden layer can be calculated directly from the result data and the output data.
[0058] Step (A4): Similarly, to correct the weighting coefficients between each hidden layer, the backpropagation method is used to calculate the error in each hidden layer sequentially from the error in the output layer and the weighting coefficients between the layers up to the output layer, starting from the layer closest to the output layer.
[0059] Step (A5): The weighting coefficients between each hidden layer are corrected so as to reduce the error calculated in step (A4).
[0060] Next, the neural network verification process according to steps (B1) to (B3) will be described.
[0061] Step (B1): Input the test data to the neural network, and obtain the resulting output data of the neural network.
[0062] As explained above, the output data of the neural network is the value of each neuron in the output layer of the neural network, and corresponds to each item of the result data of the model generation data and the result data of the test data.
[0063] Step (B2): The obtained output data is compared with the result data of the test data, i.e., the correct output data, and the error is calculated.
[0064] Step (B3): Confirm that the error calculated in step (B2) is sufficiently small.
[0065] Here, the error being sufficiently small means that the error in the output inferred by the trained model is small enough to be ignored in a simulation using the model. The specific numerical value is determined according to the value inferred by the model and the configuration of the simulation. If the error is not small enough, the various parameters used in the learning are adjusted and the learning algorithm is changed, etc., to improve the accuracy.
[0066] In the present disclosure, when supervised learning using a neural network is applied, input / output values in a simulation at a certain time from the learning data obtained by the input data shaping process in step S11 of the flowchart in Figure 2 are used as input data for learning, and an output value after a certain time has passed from the time of the input data is used as output data that is the correct answer for learning.
[0067] By carrying out the above-described learning process, the macro model learning unit 23 (FIG. 1) generates and outputs a macro model.
[0068] By using supervised learning with neural networks to generate macro models, it is also possible to handle overall simulations with a large amount of input data.
[0069] Returning now to the explanation of the block diagram in Fig. 1, the micro model addition processing unit 30 is composed of an extended coupled simulation unit 31 and an extended model learning unit 32, and has the function of receiving as an input a new micro model 12 developed separately from the micro model group 10, and updating the macro model 11 generated by the model generation processing unit 20 to a model incorporating the new micro model 12.
[0070] It is conceivable that early application of the overall simulation can be achieved by first developing micro models that are easy to realize and then generating macro models from these micro models. However, by incorporating the micro models that are gradually developed using the micro model addition processing unit 30 into the macro model 11, it becomes possible to expand and update the scope of application of the overall simulation.
[0071] The extended coupled simulation unit 31 is a simulation device that executes an overall simulation using the existing micro model group 10 and the added new micro model 12, and by linking the inputs and outputs of the micro model group 10 and the new micro model 12, the overall simulation is realized by taking into account the interactions between the models due to the inputs and outputs between each model for each simulation period.
[0072] Here, the process of connecting each input / output between the micro model group 10 and the new micro model 12 is the same as the process of "connecting the input / output of each micro model" in the coupled simulation unit 21 of the model generation processing unit 20 described above, but not only each micro model in the micro model group 10 but also the new micro model 12 is subject to connection.
[0073] In addition, the process of considering the interaction between models due to input and output for each simulation cycle between each model is the same process as the process of "applying the input and output for each simulation cycle of each model to other models" in the coupled simulation unit 21 of the model generation processing unit 20 described above, but it is applied not only to each micro model in the micro model group 10 but also to the new micro model 12.
[0074] The simulation results in the micro model addition processing unit 30 are stored in the simulation result DB 22 in the same manner as in the model generation processing unit 20 .
[0075] In the block diagram shown in FIG. 1, the micro model addition processing unit 30 receives the existing micro model group 10 and the new micro model 12 as input, but as long as it is possible to simulate the behavior of the coupled simulation using the micro model group 10, it is also possible to use a macro model 11 generated from the micro model group 10 instead of the micro model group 10.
[0076] This makes it possible to learn the macro model using the results of past simulations using existing micro models, without performing extended coupled simulation by the extended coupled simulation unit 31.
[0077] The extended model learning unit 32 is a model generation device that acquires the results of the coupled simulation by the extended coupled simulation unit 31 from the simulation result DB 22, generates an extended macro model that infers the output in the overall simulation incorporating the new micro model 12 from the acquired simulation results, and replaces the existing macro model 11. Note that, in the same manner as the macro model learning unit 23 of the model generation processing unit 20, it formats the simulation results as learning data and generates a model from the formatted learning data. This model is also generated through the steps (A1) to (A5) and steps (B1) to (B3) described above.
[0078] Here, the extended macro model that infers the output in the overall simulation is a model for simulating an overall simulation using the micro model group 10 and the new micro model 12, and in the case where the micro model group 10 also includes the new micro model 12, it is a model equivalent to the macro model generated by the macro model learning unit 23.
[0079] By performing the micro model addition processing described above, the micro model addition processing unit 30 can expand the area that can be simulated by performing an overall simulation using an extended macro model in which a new micro model 12 is incorporated into the macro model 11 generated by the model generation processing unit 20.
[0080] Returning now to the explanation of the block diagram in Fig. 1, the simulation execution processing section 40 is composed of an overall simulation execution section 41, and has the function of receiving the macro model 11 as an input from the model generation processing section 20, and when simulation initial conditions 13 are input, outputting a simulation result 14 as the result of executing an overall simulation based on these. It is also possible to input an additional correction model 42 to the overall simulation execution section 41 in order to correct changes and influences not taken into account in the existing micro model.
[0081] In the block diagram shown in FIG. 1, the model generation processing unit 20 and the simulation execution processing unit 40 are illustrated as parts of the simulation device 100, but as long as the macro model 11 can be transferred, they can also be realized as separate independent devices.
[0082] The overall simulation execution unit 41 is a simulation device that receives the macro model 11 and the simulation initial conditions 13 output from the model generation processing unit 20 as inputs, and outputs a simulation result 14 as the execution result of the overall simulation. Note that the simulation initial conditions 13 are values designated by the person who executes the overall simulation, and are data corresponding to the initial values to be input to the macro model 11.
[0083] 6 is a flowchart for explaining the process of executing the overall simulation in the overall simulation executing unit 41. The process of executing the overall simulation will be explained below with reference to FIG.
[0084] When starting execution of the overall simulation, first, the overall simulation execution unit 41 acquires the simulation initial conditions 13 and determines input data that will be the initial input to the macro model 11 (step S20). At this time, if the generation method of the macro model 11 is supervised learning shown as an example, it is necessary to determine not only the input values in the coupled simulation but also the initial output values.
[0085] That is, when the macro model 11 is trained with a set of data of input / output before the simulation is executed and output after the simulation is executed as shown in Fig. 4, the input / output data must be input to the macro model 11, and the initial output value is basically set to an output value corresponding to the initial state assumed by the simulation. For example, in the case of a simulation of an air conditioner, the air conditioner is stopped at the start of the simulation, so the output of the fan and compressor are stopped, and the air inside the building has an initial output value that is the same as the room temperature.
[0086] Similarly, depending on the generation method of the macro model 11, the input data to be the initial input may require parameters other than the input values that can be obtained by the coupled simulation. The reason for this is that all input values may not be determined from the output estimated by the macro model, and in that case, parameters are required to determine the remaining input values.
[0087] For example, when simulating the airflow and temperature inside a room, the airflow and temperature inside the room will be output from the simulation results, but the propagation of heat from the walls and windows of the room must be input somehow. If a fixed value is to be used, that value must be provided, and if it is to be determined over time, a parameter string must be provided. In addition, coefficients used to calculate input values from the output values of the macro model differ depending on the simulation conditions, so they may be provided as initial inputs.
[0088] Returning to the explanation of the flowchart in FIG. 6, the input data determined in step S20 is input to the acquired macro model 11 (step S21).
[0089] Next, the inference result of the macro model 11 for the input is obtained and recorded as an output value in the overall simulation (step S22).
[0090] That is, since the macro model 11 learns the results of the overall simulation by coupling of the micro model in the macro model learning section 23, the output of the macro model 11 directly becomes the inference result of the output value of the overall simulation.
[0091] Next, in step S23, it is determined whether sufficient simulation results have been obtained for the overall simulation, and if the necessary simulation results have been obtained (Yes), the records of inputs and outputs of the overall simulation recorded up to that point are output as simulation results 14 (step S24). On the other hand, if the simulation results are insufficient (No), the next input data for the macro model 11 is determined from the output value obtained in step S22, and the processes from step S21 onwards are repeated.
[0092] Here, the simulation results are judged based on whether or not the simulation end conditions are met. For example, in a simulation of airflow and temperature, when checking the changes in airflow and temperature over one hour under certain conditions, the end condition is that one hour has passed in the simulation, and if one hour has not passed, the simulation results are judged to be insufficient.
[0093] Through the processes of steps S20 to S24 described above, the overall simulation executing unit 41 executes the overall simulation using the macro model 11.
[0094] The additional correction model 42 is a model that performs corrections to simulate the influence of changes in elements and parameters that were not taken into account in the existing micro models included in the micro model group 10 during the execution process of the overall simulation in the overall simulation execution unit 41, and is a model that corrects, for example, aging deterioration and changes in the external environment. In the case of aging deterioration, this is a model that corrects delays in actuator response and reductions in output. In the case of changes in the external environment, this is a model that corrects changes in temperature, air pressure, humidity, etc. due to the seasons and weather.
[0095] By performing an overall simulation using the additional correction model 42 in this manner, it is possible to simulate the effects of changes in elements and parameters that were not taken into account in the existing micro model.
[0096] When a model for performing correction is extrapolated as the additional correction model 42, step S22 (FIG. 6) in the process of performing the entire simulation is modified. After the output value is inferred from the macro model 11 in step S22, the additional correction model 42 is used to perform correction on the inferred output value.
[0097] One example of correction is correction for deterioration over time. For example, when simulating the operation of a product with a moving part driven by a motor, a correction model for deterioration over time is used to reduce the torque and rotation speed of the motor's rotation speed and torque output inferred by the macro model.
[0098] If it is determined in step S23 that the simulation has not ended, that is, if the simulation end condition is not satisfied, the corrected output value is determined as the next input data, and the processes from step S21 onwards are repeated.
[0099] Returning now to the description of the block diagram in Fig. 1, the model re-learning processing unit 50 includes a re-simulation unit 52 and a model re-learning unit 53, and has a function of re-executing a coupled simulation under a condition outside the learning range of the macro model when the condition outside the learning range of the macro model appears during the execution process of the overall simulation in the simulation execution processing unit 40, and updating the macro model 11 with the re-learned macro model re-learned using the simulation result.
[0100] Here, the conditions outside the learning range of the macro model refer to a case where data input in the simulation of the macro model is not within the range of simulation conditions when generating learning data.
[0101] As an example, when using a macro model that has learned the results of a simulation in which the input room temperature value was within the range of 10°C to 30°C, if the input room temperature value is calculated from the output value inferred by the macro model while a simulation is being performed using this macro model and the result is below 10°C, then a condition outside the learning range of the macro model has emerged. The condition that gives a calculated result below 10°C is referred to as simulation condition 51 outside the learning range.
[0102] The re-simulation unit 52 is a simulation device that receives as input the simulation conditions outside the learning range 51 and the micro model group 10, and re-executes the coupled simulation. The results of the re-executed simulation are stored in the simulation result DB 22, and the re-simulation unit 52 has a function of updating the learning data of the macro model.
[0103] The model re-learning unit 53 also has a function of acquiring the simulation results for macro model learning from the simulation result DB 22 updated by the re-simulation unit 52, and re-learning the macro model 11. Note that the process of shaping the simulation results into learning data and the method of learning the macro model are the same as those of the macro model learning unit 23 of the model generation processing unit 20.
[0104] By providing the model re-learning processing unit 50, even if a condition outside the learning range of the macro model appears, the simulation can be re-run including that condition, and the macro model can be re-learned using the results of the re-run simulation.
[0105] <Hardware configuration of the simulation device> Each component of the simulation device 100 can be configured using a computer, and is realized by the computer executing a program. That is, the simulation device 100 is realized, for example, by a processing circuit 1000 shown in Fig. 7. A processor such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor) is applied to the processing circuit 1000, and the function of each part is realized by executing a program stored in a storage device.
[0106] Dedicated hardware may be applied to the processing circuit 1000. When the processing circuit 1000 is dedicated hardware, the processing circuit 1000 corresponds to, for example, a single circuit, a composite circuit, a programmed processor, a parallel programmed processor, an ASIC (Application Specific Integrated Circuit), an FPGA (Field-Programmable Gate Array), or a combination of these.
[0107] In the simulation device 100, the functions of the components may be realized by individual processing circuits, or the functions may be realized collectively by a single processing circuit.
[0108] 8 shows a hardware configuration in the case where the processing circuit 1000 is configured using a processor. In this case, the functions of each part of the simulation device 100 are realized by a combination of software, etc. (software, firmware, or software and firmware). The software, etc. are written as a program and stored in the memory 1200. The processor 1100 functioning as the processing circuit 1000 realizes the functions of each part by reading and executing the program stored in the memory 1200 (storage device). In other words, it can be said that this program causes a computer to execute the procedure and method of operation of the components of the simulation device 100.
[0109] Here, memory 1200 may be, for example, a non-volatile or volatile semiconductor memory such as RAM, ROM, flash memory, EPROM (Erasable Programmable Read Only Memory), EEPROM (Electrically Erasable Programmable Read Only Memory), HDD (Hard Disk Drive), magnetic disk, flexible disk, optical disk, compact disk, mini disk, DVD (Digital Versatile Disc) and its drive device, or any storage medium to be used in the future.
[0110] The above describes a configuration in which the functions of the components of the simulation device 100 are realized by either hardware or software, etc. However, the present invention is not limited to this, and the configuration may be such that some components of the simulation device 100 are realized by dedicated hardware and other components are realized by software, etc. For example, it is possible to realize the functions of some components by the processing circuit 1000 as dedicated hardware, and realize the functions of other components by the processing circuit 1000 as the processor 1100 reading and executing a program stored in the memory 1200.
[0111] Although the present disclosure has been described in detail, the above description is illustrative in all respects and does not limit the present disclosure. It is understood that countless variations not illustrated can be assumed without departing from the scope of the present disclosure.
[0112] In addition, within the scope of the present disclosure, it is possible to freely combine the respective embodiments, and to appropriately modify or omit the respective embodiments.
Claims
1. a coupled simulation unit that executes a coupled simulation by combining a plurality of micro models, each of which is a simulation model for a limited element; a macro model learning unit that learns a correspondence between input and output in an overall simulation that simulates an entire simulation target from a result of execution of the coupled simulation by the coupled simulation unit, and generates a macro model that infers an output after a certain time has elapsed in response to an input; an overall simulation execution unit that executes the overall simulation using the macro model generated by the macro model learning unit.
2. The overall simulation execution unit includes:
2. The simulation apparatus according to claim 1, wherein the overall simulation is performed by correcting the output inferred by the macro model using a correction model that simulates an element not considered in the plurality of micro models.
3. a model re-learning unit that, when data input in the overall simulation using the macro model is not within a range of simulation conditions in the macro model learning unit, re-executes the coupled simulation under conditions including the data, and updates the macro model with a re-learned macro model re-learned using a result of the re-execution; The overall simulation execution unit includes:
2. The simulation apparatus according to claim 1, wherein the entire simulation is executed using the re-learning macro model.
4. an extended coupled simulation unit that executes the coupled simulation using the plurality of micro models and the plurality of added new micro models; 2. The simulation device according to claim 1, further comprising: an extended model learning unit that generates an extended macro model that infers an output in the overall simulation incorporating the plurality of new micro models from a result of execution of the coupled simulation in the extended coupled simulation unit, and replaces the macro model.
5. The extended coupled simulation unit 5. The simulation device according to claim 4, wherein the coupled simulation is performed using, instead of the plurality of micro models, the macro model generated based on the plurality of micro models and the plurality of new micro models.
6. The macro model learning unit includes:
2. The simulation device according to claim 1, wherein the macro model is generated by supervised learning using a neural network.
Citation Information
Patent Citations
Signal processing method
JP1995056608A
Method and device for executing simulation program
JP2000267890A
System and simulator for controlling position of floating body
JP2003022134A
Creating method for fluid-structure multidisciplinary numerical model, and manufacturing method of flap flying robot using the same
JP2004102962A
Body interior part information estimation method, computer program, storage medium storing the same, body interior part information estimation device
JP2019150332A