WO2022059189A1 - データ算出装置、データ算出方法および記録媒体 - Google Patents
データ算出装置、データ算出方法および記録媒体 Download PDFInfo
- Publication number
- WO2022059189A1 WO2022059189A1 PCT/JP2020/035546 JP2020035546W WO2022059189A1 WO 2022059189 A1 WO2022059189 A1 WO 2022059189A1 JP 2020035546 W JP2020035546 W JP 2020035546W WO 2022059189 A1 WO2022059189 A1 WO 2022059189A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- model
- data
- value
- data calculation
- posterior distribution
- Prior art date
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 231
- 238000009826 distribution Methods 0.000 claims abstract description 219
- 238000004088 simulation Methods 0.000 claims description 64
- 239000013598 vector Substances 0.000 description 121
- 238000004519 manufacturing process Methods 0.000 description 52
- 238000000034 method Methods 0.000 description 45
- 238000012545 processing Methods 0.000 description 40
- 239000010410 layer Substances 0.000 description 38
- 238000003860 storage Methods 0.000 description 29
- 238000010586 diagram Methods 0.000 description 21
- 230000007704 transition Effects 0.000 description 16
- 238000013459 approach Methods 0.000 description 14
- 238000004891 communication Methods 0.000 description 13
- 230000006870 function Effects 0.000 description 12
- 239000011159 matrix material Substances 0.000 description 7
- 238000005259 measurement Methods 0.000 description 4
- 238000005070 sampling Methods 0.000 description 4
- 208000015181 infectious disease Diseases 0.000 description 2
- 238000009827 uniform distribution Methods 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 239000012141 concentrate Substances 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
Definitions
- the present invention relates to a data calculation device, a data calculation method, and a recording medium.
- Patent Document 1 describes that the posterior distribution of parameter values according to the target data is calculated by using Kernel ABC (Kernel ABC; Kernel Approximate Bayesian Computation) and Kernel Harding (Kernel Herding).
- Kernel ABC Kernel ABC; Kernel Approximate Bayesian Computation
- Kernel Harding Kernel Herding
- the number of parameters for which you want to estimate the value is large, such as when the scale of the simulation target is large, it may take time to estimate the parameter value.
- the time required for estimating the parameter value will increase exponentially as the number of parameters for which the value is to be estimated increases. Therefore, when the number of parameters for which the value is to be estimated is large, it is conceivable that the estimated value of the parameter cannot be obtained within a realistic time.
- One of the objects of the present invention is to provide a data calculation device, a data calculation method, and a recording medium capable of solving the above-mentioned problems.
- the data calculation device calculates the upper posterior distribution data that calculates the data showing the posterior distribution of the parameter values of the upper model based on the target data for the output of the upper model simulating the target.
- the posterior distribution of the parameter values of the lower model is shown based on the data showing the posterior distribution of the parameter values of the upper model for the means and the lower model that simulates the target portion and outputs the parameter values of the upper model. It is provided with a subordinate posterior distribution data calculation means for calculating data.
- the data calculation device applies data showing the distribution of the parameter values of the lower model to the lower model that outputs the parameter values of the upper model that simulates the target, and executes the simulation. Then, the simulation of the target is executed by applying the data showing the distribution of the parameter values to the upper model and the lower model simulation execution means for calculating the data showing the distribution of the parameter values of the upper model. It is equipped with a high-level model simulation execution means.
- a computer calculates data showing the posterior distribution of the parameter values of the upper model based on the target data for the output of the upper model simulating the target.
- the data showing the posterior distribution of the parameter value of the lower model is calculated based on the data showing the posterior distribution of the parameter value of the upper model. ..
- the recording medium calculates on a computer data indicating the posterior distribution of the parameter values of the upper model based on the target data for the output of the upper model simulating the target.
- the data showing the posterior distribution of the parameter value of the lower model is calculated based on the data showing the posterior distribution of the parameter value of the upper model. It is a recording medium that records what to do and the program to be executed.
- the value can be estimated in a relatively short time even when the number of parameters for which the value is to be estimated based on the output of the simulator is large.
- FIG. 1 is a schematic block diagram showing a functional configuration of a data calculation device according to an embodiment.
- the data calculation device 100 includes a communication unit 110, a display unit 120, an operation input unit 130, a storage unit 170, and a control unit 180.
- the control unit 180 includes an initial setting unit 181, a loop processing unit 182, an upper simulator unit 183, an upper posterior distribution data calculation unit 184, a lower simulator unit 185, and a lower posterior distribution data calculation unit 186.
- FIG. 1 shows a target 900 that is a target of simulation by a simulation model.
- the simulation model of the target 900 is also referred to as a model of the target 900, or simply a model.
- the data calculation device 100 uses the target data for the output of the model to estimate the parameter value of the model so that the output value of the model approaches the value of the target data.
- the data calculation device 100 may be configured by using a computer such as a workstation or a personal computer (PC).
- the data calculation device 100 may be configured as one device or may be configured by a combination of a plurality of devices.
- the upper simulator unit 183 and the lower simulator unit 185 may be configured as separate simulator devices for each model.
- the value of the target data is also referred to as the target value.
- the process of estimating the parameter value of the model so that the output value of the model approaches the target value is also called data assimilation. Estimating the parameter value in data assimilation is also called adjusting the parameter value.
- the target data may be actual measurement data in the target 900.
- the data calculation device 100 estimates the parameter values, so that the model can be adjusted so that the target 900 can be simulated with high accuracy. Further, the state of the target 900 can be estimated by referring to the parameter value of the estimation result. For example, when the target 900 is a factory and the parameter to be estimated by the data calculation device 100 is the production amount for each production line of the factory, the parameter value estimated by the data calculation device 100 is estimated from the actual measurement data. It can be used as the production volume for each production line in the factory.
- the target data may be data indicating the target value in the target 900.
- the parameters of the estimation result by the data calculation device 100 it is possible to create a measure for achieving the target. Further, according to the data calculation device 100, it is possible to control the target 900 by controlling each device in the factory based on the created policy.
- the parameter value estimated by the data calculation device 100 is the target value shown in the target data. It can be used as the production volume for each production line of the factory to achieve the above. According to the data calculation device 100, it is possible to perform control based on the estimation result, such as controlling the equipment for each production line based on the production amount estimated for each production line in the factory.
- the data calculation device 100 uses a hierarchical model as a model for simulating the target 900.
- the data calculation device 100 may use a model including an upper model that simulates the entire target 900 and one or more lower models that simulate a part of the target 900.
- the "hierarchy” here means that the hierarchical relationship can be defined. For example, as described above, based on the relationship between the whole and the part, the model that simulates the whole of the target 900 can be set as the upper rank, and the model that simulates the part of the target 900 can be set as the lower rank.
- This hierarchical relationship may be fixed or variable. For example, in a model that simulates a company, the model of the accounting department is ranked high for the flow of expenses, but the model of the purchasing department is ranked high for the flow of materials. May be different.
- the data calculation device 100 uses a hierarchical model in which the lower model outputs the parameter values of the upper model. As a result, the data calculation device 100 repeats the process of estimating the parameter value of the model based on the target data of the output of the model according to the hierarchical structure of the model.
- the data calculation device 100 estimates the parameter value of the upper model based on the target data of the output of the upper model. Then, the data calculation device 100 estimates the parameter value of the lower model by using the estimated parameter value of the upper model as the target data of the output of the lower model.
- the data calculation device 100 hierarchically estimates the parameter values of the model according to the hierarchical structure of the model, so that the parameters of the individual models can be compared with the case where the target 900 is simulated by only one model.
- the number can be reduced. For example, by using the production volume of each department including multiple production lines as a parameter for the parameters of the upper model, the number of parameters of the upper model is smaller than when the production volume of each production line is used as a parameter. I'm done.
- the number of parameters in the model is large, it may take time to estimate the parameter values. In particular, it is conceivable that the time required for estimating the parameter value increases exponentially as the number of parameters increases. Therefore, when the number of parameters is large, it is conceivable that the estimated values of the parameters cannot be obtained within a realistic time.
- the calculation time is larger than in the case of using one model having a large number of parameters. Is expected to be short.
- the target 900 is a simulated target by the data calculation device 100.
- the target 900 may be a factory.
- the data calculation device 100 may use a hierarchical model including a higher-level model that simulates the entire factory and one or more lower-level models that simulate a part of the factory.
- the target 900 may be a supply chain including a production base, a distribution facility, and a sales base.
- the data calculation device 100 may use a hierarchical model including a higher-level model that simulates the entire supply chain and a lower-level model that simulates each of the production base, the distribution facility, and the sales base.
- the target 900 may be an area.
- the data calculation device 100 includes a higher-level model that simulates the spread of infection for the entire area and a lower-level model that simulates the state of infection in a part of the area or transportation. May be used.
- the target 900 may be real or virtual.
- FIG. 2 is a diagram showing an example of a model of the target 900 used by the data calculation device 100.
- the model 200 includes one upper model 210 and S lower models 220-1 to 220-S.
- S is an integer of S ⁇ 1, and indicates the number of lower models 220.
- the lower models 220-1 to 220-S are collectively referred to as the lower model 220.
- the input to the upper model 210 is indicated by the vector X
- the parameters of the upper model 210 are indicated by the vector Z
- the output of the upper model 210 is indicated by the vector Y.
- the vectors X, Y, and Z are all real vector.
- the number of dimensions of each of the vectors X and Y may be one or more.
- the number of dimensions of the vector Z may be S or more.
- the vector X is also referred to as an input vector X.
- the vector Y is also referred to as an output vector Y.
- the vector Z is also referred to as a parameter vector Z.
- the element of the input vector X may include an element that takes a discrete value such as an integer value or a binary value.
- the element of the output vector Y may include an element that takes a discrete value such as an integer value or a binary value.
- the element of the parameter vector Z may include an element that takes a discrete value such as an integer value or a binary value.
- the input to the lower model 220-s is shown by the vector X s
- the parameters of the lower model 220-s are shown by the vector ⁇ s
- the output of the lower model 220-s is shown by the vector Z s .
- s is an integer of 1 ⁇ s ⁇ S.
- the vectors X s , Z s , and ⁇ s are all real vector.
- the number of dimensions of X s , the vector Z s , and ⁇ s may be one or more.
- the number of dimensions of the vector X s may be 0 or more.
- the element of the input vector X s may include an element that takes a discrete value such as an integer value or a binary value.
- the element of the output vector Z s may include an element that takes a discrete value such as an integer value or a binary value.
- the element of the parameter vector ⁇ s may include an element that takes a discrete value such as an integer value or a binary value.
- the data calculation device 100 acquires target data indicating a combination of the value of the input vector X and the value of the output vector Y, and adjusts the value of the parameter vector Z so that the output value of the upper model 210 approaches the target value.
- the probability distribution of the parameter vector Z before adjustment by the data calculation device 100 is referred to as a prior distribution ⁇ Z
- the value of the parameter vector Z based on the prior distribution ⁇ Z is referred to as a sample Z ⁇ PRI> .
- the probability distribution of a vector may be represented by a combination of probability distributions for each element of the vector.
- the prior distribution ⁇ Z may be set by the user based on the information of the target 900. Alternatively, a predetermined distribution such as a uniform distribution may be used as the prior distribution ⁇ Z.
- the probability distribution of the parameter vector Z adjusted by the data calculation device 100 is expressed as the posterior distribution p (Z
- the data calculation device 100 determines the input value (value of the input vector X s ) to the lower model 220-s based on the input value (value of the input vector X) to the upper model 210.
- the vector space of the input vector X s may be a subspace of the vector space of the input vector X. That is, the input vector X s may be configured by using some of the elements of the input vector X.
- the data calculation device 100 sets the value of the element of the input vector X to the value of the element of the input vector X s according to the relationship between the input vector X and the input vector X s .
- the value of the element of the input vector X s may include a calculated value based on the value of the input vector X.
- the data calculation device 100 determines the target value of the output of the lower model 220-s based on the sample Z ⁇ POST> .
- the vector space of the output vector Z s may be a subspace of the vector space of the parameter vector Z. That is, the output vector Z s may be configured by using some of the elements of the parameter vector Z.
- the data calculation device 100 sets the value of the element of the sample Z ⁇ POST> in the output target data of the lower model 220- s according to the relationship between the parameter vector Z and the output vector Z s . Set to the value of the element.
- the parameter vector Z there may be an element that is not associated with the output vector Z s . That is, as a parameter of the upper model 210, there may be a parameter that is used in the calculation in the upper model 210 and no value is output in the lower model 220.
- the target value of the output of the lower model 220-s determined by the data calculation device 100 based on the sample Z ⁇ POST> is referred to as the sample Z ⁇ POST> s .
- the data calculation device 100 can perform data assimilation hierarchically by setting the parameter value of the upper model 210 to the target data of the output value of the lower model 220. Specifically, the data calculation device 100 determines the target value (sample Z ⁇ POST> s ) of the output of the lower model 220 based on the sample Z ⁇ POST> after adjusting the parameter value in the upper model 210. Then, the adjustment result in the upper model 210 can be reflected in the adjustment of the parameter value in the lower model 220.
- the number of dimensions of the parameter vector Z is smaller than the total number of dimensions of the parameter vectors ⁇ 1 to ⁇ S , the number of parameters of each model is smaller than when the target 900 is simulated by only one model. can do.
- the data calculation device 100 can perform data assimilation in a relatively short time and can estimate the values from the parameter vectors ⁇ 1 to ⁇ S.
- the data calculation device 100 performs data assimilation for each of the lower models 220 by adjusting the value of the parameter vector ⁇ s so that the value of the output vector Z s approaches the sample Z ⁇ POST> s .
- the probability distribution of the parameter vector ⁇ s before adjustment by the data calculation device 100 is expressed as the prior distribution ⁇ ⁇ s
- the value of the parameter vector ⁇ s based on the prior distribution ⁇ ⁇ s is expressed as the sample ⁇ ⁇ PRI> s .
- the prior distribution ⁇ ⁇ s may be set by the user based on the information of the target 900. Alternatively, a predetermined distribution such as a uniform distribution may be used as the prior distribution ⁇ ⁇ s .
- the probability distribution of the parameter vector Z adjusted by the data calculation device 100 is expressed as the posterior distribution p ( ⁇ s
- the data calculation device 100 applies the sample ⁇ ⁇ POST> s to the parameters of the lower model 220-s to execute the simulation, and calculates the output vector Z s with respect to the input vector X s .
- Applying a sample parameter to a model parameter means setting the sample value as a parameter value. Applying a sample to a model parameter is also referred to as applying the sample to the model.
- the value of the output vector Z s calculated by the simulation to which the sample ⁇ ⁇ POST> s is applied is expressed as the sample Z ⁇ PRED> s .
- the data calculation device 100 generates a sample of the value of the parameter vector Z based on the values from the sample Z ⁇ PRED> 1 to the sample Z ⁇ PRED> S.
- This sample is used as a sample that reflects the result of data assimilation in the lower model 220 when the data calculation device 100 repeatedly performs data assimilation using the upper model 210.
- Sample Z ⁇ PRED> 1 to Sample Z ⁇ PRED> S may be used as the element value of the generated sample.
- the data calculation device 100 calculates the values of the elements of the sample to be generated by a predetermined method such as averaging the values of a plurality of elements from the sample Z ⁇ PRED> 1 to the sample Z ⁇ PRED> S. You may do it.
- the data calculation device 100 can repeat the hierarchical data assimilation by generating a sample of the parameter vector Z based on the values from the sample Z ⁇ PRED> 1 to the sample Z ⁇ PRED> S. can. Specifically, the data calculation device 100 applies the value of the generated sample to the parameter vector Z of the upper model 210 to execute the simulation. As a result, the data calculation device 100 acquires a sample of the output vector Y based on the sample of the generated parameter. Then, the data calculation device 100 estimates the value of the parameter vector Z so that the output value of the upper model 210 approaches the target value based on the relationship between the obtained sample of the output vector Y and the target value.
- the data calculation device 100 uses the estimated value of the parameter vector Z as the sample Z ⁇ POST> , performs data assimilation in the lower model 220 in the same manner as described above, and based on the result of the data assimilation, the parameter vector Z Generate a sample.
- the data calculation device 100 repeats hierarchical data assimilation until a predetermined end condition is satisfied.
- the parameter value can be estimated with high accuracy by repeating the hierarchical data assimilation of the data calculation device 100.
- the probability distribution of the parameter vector Z and the respective probability distributions of the parameter vectors ⁇ 1 to ⁇ S converge to a certain parameter value according to the target value. Convergence of the probability distribution here to a certain parameter value means that the probability at that value increases.
- the probability of the value of the parameter Z at which the value of the output vector Y is close to the target value becomes relatively large, so that when data assimilation is performed again, the target value is used as the sampling value of the output vector Y.
- the probability of the value of the parameter Z at which the value of the output vector Y is close to the target value will be further increased by the data assimilation again. It is expected that the probability of the parameter value according to the target value will increase by repeating the data assimilation for the parameter vectors ⁇ 1 to ⁇ S.
- the data calculation device 100 uses kernel ABC and kernel harding as a process of estimating a parameter value so as to bring the output value of the model closer to the target value
- the method in which the data calculation device 100 estimates the parameter value so that the output value of the model approaches the target value is not limited to a specific method.
- the data calculation device 100 may use Markov Chain Monte Carlo (MCMC) or ABC (Approximate Bayesian Computation) as a process of estimating a parameter value so that the output value of the model approaches the target value. You may do it.
- MCMC Markov Chain Monte Carlo
- ABC Approximate Bayesian Computation
- the communication unit 110 communicates with other devices. For example, when the data calculation device 100 acquires the actual measurement data by the sensor as the target data, the communication unit 110 may receive the actual measurement data by the sensor from the sensor installed in the target 900.
- the display unit 120 includes a display screen such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and displays various images. For example, the display unit 120 may display the estimation result of the parameter value by the data calculation device 100.
- the operation input unit 130 includes an input device such as a keyboard and a mouse, and accepts user operations. For example, the operation input unit 130 may accept a user operation for inputting a target value in the target 900 as target data.
- the storage unit 170 stores various data.
- the storage unit 170 stores the model layered as described above as the model of the target 900.
- the storage unit 170 is configured by using the storage device included in the data calculation device 100.
- the control unit 180 controls each unit of the data calculation device 100 to perform various processes.
- the function of the control unit 180 may be executed by the CPU (Central Processing Unit) included in the data calculation device 100 reading a program from the storage unit 170 and executing the program.
- CPU Central Processing Unit
- the loop processing unit 182 processes a loop that repeats hierarchical data assimilation. Specifically, the loop processing unit 182 counts up the value of the variable l according to the number of times the hierarchical data assimilation is repeated. Further, the loop processing unit 182 determines whether or not the loop end condition is satisfied.
- the loop end condition may be that the value of the variable l is equal to or greater than a predetermined threshold value.
- the loop end condition may be that the output value of the upper model 210 is evaluated to be closer to the target value than a predetermined condition.
- the upper simulator unit 183 executes a simulation using the upper model 210.
- the upper simulator unit 183 applies the value of the updated parameter vector Z based on the samples Z ⁇ PRED> 1 to Z ⁇ PRED> S obtained as a result of the simulation using the lower model 220 to the upper model 210. And run the simulation.
- the upper simulator unit 183 corresponds to an example of the upper simulator unit 183 upper model simulation execution means.
- Sample Z ⁇ PRED> (l) The value of the updated parameter vector Z based on 1 to Z ⁇ PRED> (l) S is referred to as sample Z ⁇ PRI> (l + 1) . As described above, the value in () is the value of the variable l.
- the upper simulator unit 183 is the l + 1st time of the hierarchical data assimilation based on the samples Z ⁇ PRED> (l) 1 to Z ⁇ PRED> (l) S obtained in the first execution of the hierarchical data assimilation. Sample Z ⁇ PRI> (l + 1) for.
- the upper simulator unit 183 may use the value of the element of the sample Z ⁇ PRED> (l) s as the value of the element of the sample Z ⁇ PRI> (l + 1) . .. Alternatively, as described above for the data calculation device 100, the upper simulator unit 183 takes the average of the values of a plurality of elements from the sample Z ⁇ PRED> 1 to the sample Z ⁇ PRED> S , or the sample Z by a predetermined method. ⁇ PRED> The value of the element of (l + 1) s may be calculated.
- the upper simulator unit 183 applies the sample Z ⁇ PRI> (l + 1) to the upper model 210 to execute the simulation, and calculates the sample Y ⁇ PRI> (l + 1) .
- the upper simulator unit 183 acquires M combinations of samples Z ⁇ PRED> (l) 1 to Z ⁇ PRED> (l) S , calculates M samples Z ⁇ PRI> (l + 1) , and samples Y. Calculate M ⁇ PRI> (l + 1) .
- the upper posterior distribution data calculation unit 184 calculates data indicating the posterior distribution of the value of the parameter vector Z of the upper model 210 based on the target data for the output vector Y of the upper model 210.
- the subscript "m" of "Z ⁇ POST> (l) m " indicates an identification number for identifying M samples "Z ⁇ POST> (l) ".
- the distance in the reproducing kernel Hilbert space corresponds to an example of an index showing the degree of similarity between the sample Y ⁇ PRI> (l) m and the target value.
- the lower simulator unit 185 executes a simulation using the lower model 220.
- the lower simulator unit 185 applies the sample ⁇ ⁇ POST> s obtained by data assimilation in the lower model 220-s to the lower model 220-s to execute the simulation as described above for the data calculation device 100.
- Sample Z ⁇ PRED> s is calculated.
- the data assimilation in the lower model 220-s is the value of the parameter vector ⁇ s of the lower model 220 so that the value of the output vector Z s of the lower model 220-s approaches the target value (sample Z ⁇ POST> s ). Is data assimilation to estimate.
- the lower simulator unit 185 acquires M samples ⁇ ⁇ POST> s calculated by the lower posterior distribution data calculation unit 186 by data assimilation, and calculates M samples Z ⁇ PRED> s .
- the lower simulator unit 185 corresponds to an example of a lower model simulation execution means.
- the subscript "m" of "Z ⁇ PRED> (l) s, m " indicates an identification number for identifying M samples Z ⁇ PRED> (l) s .
- the lower posterior distribution data calculation unit 186 calculates data indicating the posterior distribution of the parameter values of the lower model 220 based on the data indicating the posterior distribution p (Z
- the control unit 180 may control the target 900, such as transmitting a control signal to the target 900 via the communication unit 110.
- the control unit 180 corresponds to an example of control means.
- FIG. 3 is a flowchart showing an example of a processing procedure in which the data calculation device 100 performs hierarchical data assimilation.
- the initial setting unit 181 initially sets the value of the variable l used as the loop counter. Specifically, the initial setting unit 181 sets the value of the variable l to 1. The value of the variable l indicates the number of repetitions of the loop from steps S103 to S110. After step S101, the process transitions to step S102.
- Step S103 The loop processing unit 182 determines whether or not the loop end condition is satisfied.
- step S103: NO the processing transitions to step S104.
- step S103: YES the data calculation device 100 ends the process of FIG.
- Y ⁇ PRI> (l) m is expressed by the equation (1).
- step S104 the process transitions to step S105.
- Step S105 The upper posterior distribution data calculation unit 184 calculates the kernel average ⁇ ⁇ (l) Z
- Y is expressed by Eq. (2).
- k z indicates the kernel.
- the " ⁇ " in parentheses indicates that the variables of the function in the reproducing kernel Hilbert space are not limited to specific ones.
- the weight w m is expressed by the equation (3).
- I represents an identity matrix.
- ⁇ indicates the regularization constant.
- Gy represents a Gram Matrix and is expressed as in Eq. (4).
- ky (Y) indicates the kernel of y and is expressed by the equation (5).
- step S105 the process transitions to step S106.
- Y is associated one-to-one with the posterior distribution p (Z
- Kernel Herding processing a sample by posterior distribution can be obtained.
- the upper posterior distribution data calculation unit 184 calculates Z ⁇ POST> (l) m based on the equation (6).
- step S106 the process transitions to step S107.
- step S107 the process transitions to step S108.
- Step S108 The data calculation device 100 executes processing for each lower model 220. As described above, the data calculation device 100 calculates the sample Z ⁇ PRED> (l) s by the processing of the lower model 220-s. After step S108, the process transitions to step S109.
- the upper simulator unit 183 passes the processing result for each lower model 220 to the processing of the upper model 210. Specifically, as described above for the data calculation device 100, the upper simulator unit 183 is based on the values of the sample Z ⁇ PRED> (l) s obtained for each lower model 220, and the sample Z ⁇ PRI> ( Set the value of l + 1) . For example, the upper simulator unit 183 sets the value of the sample Z ⁇ PRI> (l + 1) as shown in the equation (10).
- step S109 the process transitions to step S110.
- Step S110 The loop processing unit 182 counts up the value of the variable l used as the loop counter. That is, the loop processing unit 182 increases the value of the variable l by 1. After step S110, the process transitions to step S102.
- FIG. 4 is a flowchart showing an example of a processing procedure performed by the data calculation device 100 for each lower model 220.
- the data calculation device 100 performs the process of FIG. 4 in step S108 of FIG. (Step S201)
- the upper posterior distribution data calculation unit 184 passes the value of the parameter vector Z of the upper model 210 to the lower model 220. Specifically, as described above for the data calculation device 100, the upper posterior distribution data calculation unit 184 acquires the sample Z' ⁇ POST> (l) s based on the sample Z ⁇ POST> (l). For example, the upper posterior distribution data calculation unit 184 acquires Z' ⁇ POST> (l) s based on the equation (11).
- Z ⁇ POST> (l) [s,:] indicates the row vector of the sth row of the matrix Z ⁇ POST> (l) .
- Z' ⁇ POST> (l) s is expressed by the equation (12).
- Z ⁇ POST> (l) [s, m] indicates the elements in the sth row and mth column of the matrix Z ⁇ POST> (l) .
- Z ⁇ POST> (l) is configured as a matrix having Z' ⁇ POST> (l) s and m as elements.
- the upper posterior distribution data calculation unit 184 reads the sth line of Z ⁇ POST> (l) , and has M pieces to be used as the target data of the lower model 220-s. Samples Z' ⁇ POST> (l) s, 1 , ..., Z' ⁇ POST> (l) s, M are acquired. After step S201, the process transitions to step 202.
- Step S203 The lower simulator unit 185 applies the samples ⁇ ⁇ PRI> (l) s and m to the lower model 220-s to execute the simulation, and calculates the samples Z ⁇ PRI> (l) s and m .
- Sample Z ⁇ PRI> (l) s, m is expressed by the formula (14).
- step S203 the process transitions to step S204.
- Step S204 The subordinate posterior distribution data calculation unit 186 calculates the kernel average ⁇ ⁇ (l) ⁇
- Z, s is expressed by Eq. (15).
- G z and s represent a Gram matrix and are expressed as in Eq. (17).
- K ⁇ and s (Z) indicate the kernel of Z and are expressed as in Eq. (18).
- step S204 the process transitions to step S205.
- the subordinate posterior distribution data calculation unit 186 calculates ⁇ ⁇ POST> (l) s, m based on the equation (19).
- step S205 the process transitions to step S206.
- Step S206 The lower simulator unit 185 sets the sample ⁇ ⁇ POST> (l) s, m to the parameters of the lower model 220-s, executes the simulation, and calculates the sample Z ⁇ PRED> (l) s, m .
- Z ⁇ PRED> (l) s, m is expressed by the equation (22).
- step S206 the process transitions to step S207.
- the data calculation device 100 ends the process of FIG.
- FIG. 5 is a diagram showing a configuration of a production system 910 corresponding to the example of the target 900.
- the production system 910 includes a first subsystem 911-1 and a second subsystem 911-2.
- the first subsystem 911-1 and the second subsystem 911-2 are collectively referred to as subsystem 911.
- the first subsystem 911-1 includes the first production line 912-1, the second production line 912-2, the third production line 912-3, the fourth production line 912-4, and the fifth production line 912-5.
- the second subsystem 911-2 includes a sixth production line 912-6, a seventh production line 912-7, an eighth production line 912-8, and a ninth production line 912-9.
- the first production line 912-1 to the ninth production line 912-9 are collectively referred to as a production line 912.
- FIG. 6 is a diagram showing an example of a model simulating the production system 910.
- a lower model 220 is provided for each subsystem 911, and the number of lower models 220 is two.
- the parameters z 1 and z 1 indicate the time required for production per production unit in the first subsystem 911-1 and the second subsystem 911-2, respectively.
- the parameters ⁇ 1 , 1 to ⁇ 1, 5 indicate the time required for production per production unit in the first production line 912-1 to the fifth production line 912-5 .
- the parameters ⁇ 2, 1 to ⁇ 2 , 4 indicate the time required for production per production unit in the sixth production line 912-6 to the ninth production line 912-9.
- this target time and the output from the upper model 210 to the lower model 220 are the takt time (Takt Time). ), which is considered to indicate a demand for time.
- the upper model 210 and the lower model 220 exchange data to search for a solution that can correspond to both the required time and the required time.
- FIG. 7 is a diagram showing an example of a sample of parameter values of the upper model 210 based on the prior distribution.
- the horizontal axis of FIG. 7 shows the value of the parameter z1.
- the vertical axis shows the value of the parameter z 2 .
- the prior distribution of the parameter z1 is shown in the region A11.
- the prior distribution of the parameter z 2 is shown in the region A12.
- Each of the points in region A13 shows an example of a sample of (z 1 , z 2 ).
- FIG. 7 shows an example of a sample of the parameter Z based on the prior distribution calculated by the initial setting unit 181 in step S102 of FIG.
- FIG. 8 is a diagram showing a first example of a sample of output values of the upper model 210.
- the horizontal axis of FIG. 8 shows the output value of the upper model 210.
- the vertical axis shows the frequency.
- FIG. 8 shows the output value of the upper model 210 obtained by executing the simulation using the upper model 210 for each value of the parameter vector Z shown in FIG. 7 in a frequency distribution.
- the upper simulator unit 183 performs this simulation.
- the upper posterior distribution data calculation unit 184 estimates the value of the parameter Z so that the model output shown in FIG. 8 approaches the actual value “5” in the processing of steps S105 and S106 of FIG.
- FIG. 9 is a diagram showing an example of a sample of parameter values of the upper model 210 based on the posterior distribution.
- the horizontal axis of FIG. 9 shows the value of the parameter z1.
- the vertical axis shows the value of the parameter z 2 .
- the posterior distribution of parameter z1 is shown in region A21.
- the posterior distribution of parameter z 2 is shown in region A22.
- Each of the points in region A23 shows an example of a sample of (z 1 , z 2 ).
- FIG. 9 shows an example of a parameter value estimated by the upper posterior distribution data calculation unit 184 using the model output and the actual value shown in FIG.
- the value of z 1 is plotted in a region of about 10 to 15 and the value of z 2 is plotted in a region of about 10 to 15. It is considered that the value of the parameter Z has converged due to the data assimilation by the upper posterior distribution data calculation unit 184.
- FIG. 10 is a diagram showing an example of a sample of parameter values of the lower model 220 based on the prior distribution.
- FIG. 10 shows a sample based on the prior distribution for the parameters ⁇ 1, 1 to ⁇ 1, 5 of the lower model 220-1, and the parameters ⁇ 2, 1 to ⁇ 2 , 4 of the lower model 220-2, respectively.
- the horizontal axis is the parameter value and the vertical axis is the frequency.
- the subordinate posterior distribution data calculation unit 186 samples the parameter values of the subordinate model 220 based on the prior distribution exemplified in FIG. 10 in step S202 of FIG.
- FIG. 11 is a diagram showing an example of a sample output value of the lower model 220.
- the horizontal axis of FIG. 11 shows the output value of the lower model 220.
- the vertical axis shows the probability.
- FIG. 11 shows the output value of the lower model 220 obtained by applying the parameter value shown in FIG. 10 to the lower model 220 and executing the simulation by the probability distribution.
- the lower simulator unit 185 performs this simulation.
- FIG. 12 is a diagram showing an example of a sample of parameter values of the lower model 220 based on the posterior distribution.
- FIG. 12 shows a sample based on the posterior distribution for the parameters ⁇ 1, 1 to ⁇ 1, 5 of the lower model 220-1, and the parameters ⁇ 2, 1 to ⁇ 2 , 4 of the lower model 220-2, respectively.
- the horizontal axis is the parameter value and the vertical axis is the frequency.
- the lower posterior distribution data calculation unit 186 performs data assimilation and calculates a sample of the parameter values of the lower model 220 based on the posterior distribution. Comparing FIGS. 10 and 12, the parameter values are unevenly distributed in FIG. 12 than in FIG. 10. It is considered that the values of the parameters ⁇ 1 and ⁇ 2 have converged due to the data assimilation by the subordinate posterior distribution data calculation unit 186.
- FIG. 13 is a diagram showing an example of a sample output value of the lower model 220.
- the horizontal axis of FIG. 13 indicates the value of the parameter z1.
- the vertical axis shows the value of the parameter z 2 .
- FIG. 13 shows the output value of the lower model 220 when the simulation is executed by applying the parameter value shown in FIG. 12 to the lower model 220.
- the lower simulator unit 185 performs this simulation.
- Each of the points in region A33 shows an example of a sample of (z 1 , z 2 ).
- Region A31 shows the distribution of parameter z1 based on the sample shown in region A33.
- Region A32 shows the distribution of parameter z2 based on the sample shown in region A33.
- the parameter values are more unevenly distributed than in the case of FIG. 9, and the value of z 1 is plotted in a region of about 6 to 10 and the value of z 2 is plotted in a region of about 7 to 15. It is considered that the value of the parameter Z is further converged by reflecting the result of the data assimilation by the lower posterior distribution data calculation unit 186.
- FIG. 14 is a diagram showing a second example of a sample of output values of the upper model 210.
- the horizontal axis of FIG. 14 shows the output value of the upper model 210.
- the vertical axis shows the frequency.
- FIG. 14 shows an example of the output of the upper model 210 in a frequency distribution when the parameter value shown in FIG. 13 is applied to the upper model 210 and the simulation is executed.
- the upper simulator unit 183 performs this simulation.
- the value of the parameter Z is more converged than in the case of FIG. 7, and the output of the upper model 210 is more converged in the case of FIG. 14 than in the case of FIG.
- FIG. 15 is a diagram showing a third example of a sample of parameter values of the upper model 210.
- the horizontal axis of FIG. 15 indicates the value of the parameter z1.
- the vertical axis shows the value of the parameter z 2.
- FIG. 15 shows the data assimilation that estimates the parameter value so that the output value of the upper model 210 actually approaches based on the output value of the upper model 210 shown in FIG.
- the value of the parameter of the upper model 210 when it is done is shown.
- the upper posterior distribution data calculation unit 184 performs this data assimilation.
- Each of the points in region A43 shows an example of a sample of (z 1 , z 2 ).
- Region A41 shows the distribution of parameter z1 based on the sample shown in region A43.
- Region A42 shows the distribution of parameter z2 based on the sample shown in region A33.
- the parameter values are more unevenly distributed than in the case of FIG. 13, and the points are concentrated in the region where the value of z 1 is about 9 and the value of z 2 is about 12. It is considered that the data calculation device 100 succeeded in estimating the value of the appropriate parameter Z.
- FIG. 16 is a diagram showing an example of the estimation result of the parameter value of the lower model 220 by the data calculation device 100.
- FIG. 16 shows data assimilation in which the parameter value of the upper model 210 shown in FIG. 15 is used as the target value of the output of the lower model 220, and the parameter value of the lower model 220 is estimated so that the output value of the lower model 220 approaches the target value.
- An example of the parameter value of the lower model 220 in the case of performing the above is shown by a frequency distribution in which the parameter value is taken on the horizontal axis and the frequency is taken on the vertical axis.
- the subordinate posterior distribution data calculation unit 186 performs this data assimilation.
- the parameter values are further unevenly distributed as compared with the case of FIG. It is considered that the data calculation device 100 succeeded in estimating the values of the appropriate parameters ⁇ 1 and ⁇ 2 .
- the model 200 may be configured as a model having three or more layers.
- the model of the uppermost layer is referred to as an upper model
- the model of the lowest layer is referred to as a lower model
- the model of the other layers is referred to as an intermediate model. Even when the number of layers of the model is three or more, the processing related to the upper model is the same as described with reference to FIG.
- the "lower model” is read as the intermediate model in the explanation of FIG.
- the processing of steps S107 to S109 of FIG. 3 is performed between steps S205 and S206.
- the input / output data in the intermediate layer is expressed as shown in FIG.
- FIG. 17 is a diagram showing an example of data input / output in the intermediate layer when the number of layers of the model is three or more.
- the intermediate model 232 inputs / outputs data to / from the upper layer model 231 and the lower layer model 233.
- the upper layer model 231 is a model of the layer immediately above the intermediate model 232.
- the upper layer model 231 may be an upper model or an intermediate model.
- the lower layer model 233 is a model of the layer immediately below the intermediate model 232.
- the lower layer model 233 may be a lower model or an intermediate model.
- the number of one upper layer model 231 and an intermediate model for inputting / outputting data may be one or more.
- the number of one intermediate model 232 and the number of lower layer models that input / output data may be one or more.
- the number of layers in the model does not have to be uniform. For example, there may be both an intermediate model and a lower model as models in the layer immediately below the upper model. There may be both an intermediate model and a lower model as models in the layer immediately below the intermediate model.
- the data calculation device 100 sets an input vector X (u) to be an input to the intermediate model 232 and an input vector X (d) to be an input to the lower layer model 233. This corresponds to the above-mentioned data calculation device 100 performing the process of setting the input vector Xs of the lower model 220- s hierarchically.
- the sample output from the upper layer model 231 to the intermediate model 232 is referred to as Z' ⁇ POST> (u) .
- the sample output from the intermediate model 232 to the lower layer model 233 is referred to as Z' ⁇ POST> (d) .
- Z' ⁇ POST> (u) and Z' ⁇ POST> (d) are Z' ⁇ POST> (l) s, 1 , ..., Z' ⁇ POST> (l) s, in the process of FIG. Corresponds to M.
- Z' ⁇ POST> (u) is used as target data in the data assimilation in the intermediate model 232.
- Z' ⁇ POST> (u) is used as target data in the data assimilation in the lower layer model 233.
- the sample output from the lower layer model 233 to the intermediate model 232 is referred to as Z ⁇ PRED> (d) .
- the sample output from the intermediate model 232 to the upper layer model 231 is referred to as Z ⁇ PRED> (u) .
- Z ⁇ PRED> (d) and Z ⁇ PRED> (u) correspond to Z ⁇ PRED> (l) s in the process of FIG. 3 and the process of FIG. Z ⁇ PRED> (d) is used to update sample Z ⁇ POST> (d) based on the posterior distribution in the intermediate model 232.
- the sample based on the posterior distribution referred to here is a sample obtained by data assimilation, and corresponds to a sample of parameters based on the posterior distribution when the target data of the output value of the model is given.
- Z ⁇ PRED> (u) is used to update the sample Z ⁇ POST> (d) based on the posterior distribution in the upper layer model 231.
- Z ⁇ PRED> (u) is used to generate a sample of the upper layer model 231 based on the prior distribution in the next loop execution.
- the data calculation device 100 uses the parameter Z (d) so that the value of the output Z u of the intermediate model 232 approaches the value of the target data Z ⁇ POST> (u) by the process corresponding to steps S201 to S205 in FIG. Perform data assimilation to estimate the value of. As a result, the data calculation device 100 calculates the sample Z ⁇ POST> (d) .
- the data calculation device 100 calculates the sample Z ⁇ PRED> (d) in which the result of the data assimilation in the lower layer model 233 is reflected by the processing corresponding to steps S107 to S109 in FIG.
- the data calculation device 100 calculates Z ⁇ PRI> (l + 1) using Z (PRED) (l) s .
- the data calculation device 100 updates the sample Z ⁇ POST> (d) based on the posterior distribution using Z ⁇ PRED> (d) .
- the data calculation device 100 applies the updated sample Z ⁇ POST> (d) to the intermediate model 232 by the process corresponding to steps S206 to S207 in FIG. 4, executes the simulation, and Z ⁇ PRED> ( u) is calculated.
- Z ⁇ PRED> ( u) is calculated in the processing related to the intermediate model 232.
- the processing related to the intermediate model is the same as the processing shown in FIG.
- the lower posterior distribution data calculation unit 186 can perform data assimilation hierarchically by calculating the data indicating the posterior distribution of the parameter values of the lower model 220 using the parameter values of the upper model 210. Specifically, the lower posterior distribution data calculation unit 186 determines the target value of the output of the lower model 220 (sample Z ⁇ POST>, which is determined based on the adjusted sample Z ⁇ POST> in the upper model 210. By using > s ), the adjustment result of the parameter value in the upper model 210 can be reflected in the adjustment of the parameter value in the lower model 220.
- the number of dimensions of the parameter vector Z is smaller than the total number of dimensions of the parameter vectors ⁇ 1 to ⁇ S , the number of parameters of each model is smaller than when the target 900 is simulated by only one model. can do.
- the data calculation device 100 can perform data assimilation in a relatively short time and can estimate the values from the parameter vectors ⁇ 1 to ⁇ S.
- the result of data assimilation in the lower model 220 can be reflected in the parameter value of the upper model 210, whereby the hierarchical data assimilation can be repeated. It is expected that the data calculation device 100 can estimate the parameter value with high accuracy by repeating the hierarchical data assimilation. In particular, it is expected that the probability distribution of the parameter vector Z and the respective probability distributions of the parameter vectors ⁇ 1 to ⁇ S converge to a certain parameter value according to the target value. As mentioned above, converging the probability distribution to a certain parameter value means that the probability at that value increases.
- the probability of the value of the parameter Z at which the value of the output vector Y is close to the target value becomes relatively large, so that when data assimilation is performed again, the target value is used as the sampling value of the output vector Y.
- the probability of the value of the parameter Z at which the value of the output vector Y is close to the target value will be further increased by the data assimilation again. It is expected that the probability of the parameter value according to the target value will increase by repeating the data assimilation for the parameter vectors ⁇ 1 to ⁇ S.
- the upper posterior distribution data calculation unit 184 calculates the data showing the posterior distribution of the parameter values of the upper model 210 based on the kernel average, so that the same number is obtained for the given M prior distribution samples. It is possible to calculate a sample of M posterior distributions. According to the data calculation device 100, the parameter value can be efficiently estimated at this point.
- control unit 180 controls the target 900 based on the data indicating the posterior distribution of the parameter values of the lower model 220 calculated by the lower posterior distribution data calculation unit 186.
- the data calculation device 100 uses a hierarchical model, the number of parameters of each model is relatively small.
- the subordinate posterior distribution data calculation unit 186 can estimate the parameter value of the subordinate model 220.
- the control unit 180 can grasp the state of the target 900 and control the target 900 with relatively high accuracy by referring to the estimation result of the parameter value by the lower posterior distribution data calculation unit.
- FIG. 18 is a diagram showing a configuration example of the data calculation device according to the embodiment.
- the data calculation device 610 includes an upper posterior distribution data calculation unit 611 and a lower posterior distribution data calculation unit 612.
- the upper posterior distribution data calculation unit 611 calculates data indicating the posterior distribution of the parameter values of the upper model based on the target data for the output of the upper model simulating the target.
- the subordinate posterior distribution data calculation unit 612 simulates the target part and outputs the parameter values of the upper model.
- the posterior distribution of the parameter values of the lower model is based on the data showing the posterior distribution of the parameter values of the upper model.
- the data indicating the above is calculated.
- the upper posterior distribution data calculation unit 611 corresponds to an example of the upper posterior distribution data calculation means.
- the subordinate posterior distribution data calculation unit 612 corresponds to an example of the subordinate posterior distribution data calculation means.
- the lower posterior distribution data calculation unit 612 can perform data assimilation hierarchically by calculating the data indicating the posterior distribution of the parameter values of the lower model using the parameter values of the upper model. Specifically, the lower posterior distribution data calculation unit 612 uses the target value of the output of the lower model, which is determined based on the sample of the parameter value after the data assimilation in the upper model, so that the data in the upper model can be used. The result of assimilation can be reflected in the data assimilation in the lower model.
- the number of parameters of the upper model is smaller than the total number of parameters of the lower model, the number of parameters of each model can be reduced as compared with the case where the target is simulated by only one model.
- the data calculation device 610 it is expected that the data assimilation can be performed in a relatively short time and the parameter values can be estimated.
- the data calculation device 610 it is expected that it is possible to avoid not being able to obtain an estimated value of the parameter within a realistic time due to the large number of parameters of the model.
- the upper posterior distribution data calculation unit 611 can be realized by using, for example, a function such as the upper posterior distribution data calculation unit 184 shown in FIG.
- the subordinate posterior distribution data calculation unit 612 can be realized by using, for example, a function such as the subordinate posterior distribution data calculation unit 186 shown in FIG.
- FIG. 19 is a diagram showing another example of the configuration of the data calculation device according to the embodiment.
- the data calculation device 620 includes a lower model simulation execution unit 621 and an upper model simulation execution unit 622.
- the lower model simulation execution unit 621 applies data showing the distribution of the parameter values of the lower model to the lower model that outputs the parameter values of the upper model that simulates the target, executes the simulation, and executes the simulation of the upper model.
- the upper model simulation execution unit 622 executes the target simulation by applying the data showing the distribution of the calculated parameter values to the upper model.
- the lower model simulation execution unit 621 corresponds to an example of the lower model simulation execution means.
- the upper model simulation execution unit 622 corresponds to an example of the upper model simulation execution means. According to the data calculation device 620, the estimation result of the parameter value using the lower model can be reflected in the upper model, and in this respect, the target simulation can be executed with high accuracy.
- the lower model simulation execution unit 621 can be realized by using a function such as the lower simulator unit 185 shown in FIG. 1, for example.
- the upper model simulation execution unit 622 can be realized by using a function such as the upper simulator unit 183 shown in FIG. 1, for example.
- FIG. 20 is a diagram showing an example of a processing procedure in the data calculation method according to the embodiment.
- the data calculation method shown in FIG. 20 includes a step of calculating data showing the posterior distribution of the upper model (step S611) and a step of calculating data showing the posterior distribution of the lower model (step S612).
- Step of calculating the posterior distribution of the upper model in step S611, the data showing the posterior distribution of the parameter values of the upper model is calculated based on the target data for the output of the upper model simulating the target.
- step S612 the lower model that simulates the target part and outputs the parameter values of the upper model is based on the data showing the posterior distribution of the parameter values of the upper model. , Calculate the data showing the posterior distribution of the parameter values of the lower model.
- data assimilation can be performed hierarchically by calculating the data showing the posterior distribution of the parameter values of the lower model using the parameter values of the upper model. Specifically, by using the target value of the output of the lower model, which is determined based on the sample of the parameter value after the data assimilation in the upper model, the result of the data assimilation in the upper model is the data in the lower model. It can be reflected in assimilation.
- the number of parameters of the upper model is smaller than the total number of parameters of the lower model, the number of parameters of each model can be reduced as compared with the case where the target is simulated by only one model.
- the data assimilation can be performed in a relatively short time and the parameter values can be estimated.
- the data calculation method shown in FIG. 20 it is expected that it can be avoided that the estimated value of the parameter cannot be obtained within a realistic time due to the large number of parameters of the model.
- FIG. 21 is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
- the computer 700 includes a CPU 710, a main storage device 720, an auxiliary storage device 730, an interface 740, and a non-volatile recording medium 750.
- any one or more of the above data calculation device 100 and data calculation device 610 or a part thereof may be mounted on the computer 700.
- the operation of each of the above-mentioned processing units is stored in the auxiliary storage device 730 in the form of a program.
- the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program. Further, the CPU 710 secures a storage area corresponding to each of the above-mentioned storage units in the main storage device 720 according to the program.
- Communication between each device and other devices is executed by the interface 740 having a communication function and performing communication according to the control of the CPU 710. Further, the interface 740 has a port for the non-volatile recording medium 750, and reads information from the non-volatile recording medium 750 and writes information to the non-volatile recording medium 750.
- the operations of the control unit 180 and each unit thereof are stored in the auxiliary storage device 730 in the form of a program.
- the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
- the CPU 710 secures a storage area corresponding to the storage unit 170 in the main storage device 720 according to the program.
- Communication with other devices by the communication unit 110 is executed when the interface 740 has a communication function and operates according to the control of the CPU 710.
- the display by the display unit 120 is executed by the interface 740 having a display device and displaying various images according to the control of the CPU 710.
- the reception of the user operation by the operation input unit 130 is executed by the interface 740 having an input device such as a keyboard and a mouse, accepting the user operation, and outputting information indicating the accepted user operation to the CPU 710.
- the operations of the upper posterior distribution data calculation unit 611 and the lower posterior distribution data calculation unit 612 are stored in the auxiliary storage device 730 in the form of a program.
- the CPU 710 reads the program from the auxiliary storage device 730, expands it to the main storage device 720, and executes the above processing according to the program.
- the CPU 710 secures a storage area for processing performed by the data calculation device 610 in the main storage device 720 according to the program.
- Communication between the data calculation device 610 and other devices is executed by the interface 740 having a communication function and operating according to the control of the CPU 710.
- the interaction between the data calculation device 610 and the user is executed by having the interface 740 have an input device and an output device, presenting information to the user on the output device according to the control of the CPU 710, and accepting the user operation on the input device.
- any one or more of the above-mentioned programs may be recorded on the non-volatile recording medium 750.
- the interface 740 may read the program from the non-volatile recording medium 750. Then, the CPU 710 may directly execute the program read by the interface 740, or may temporarily store and execute the program in the main storage device 720 or the auxiliary storage device 730.
- a program for executing all or part of the processing performed by the data calculation device 100 and the data calculation device 610 is recorded on a computer-readable recording medium, and the program recorded on the recording medium is recorded in the computer system. You may process each part by reading it into the computer and executing it.
- the term "computer system” as used herein includes hardware such as an OS and peripheral devices.
- the "computer-readable recording medium” includes a flexible disk, a magneto-optical disk, a portable medium such as a ROM (Read Only Memory) and a CD-ROM (Compact Disc Read Only Memory), and a hard disk built in a computer system. It refers to a storage device such as.
- the above-mentioned program may be for realizing a part of the above-mentioned functions, and may be further realized for realizing the above-mentioned functions in combination with a program already recorded in the computer system.
- the embodiment of the present invention may be applied to a data calculation device, a data calculation method, and a recording medium.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Geometry (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Artificial Intelligence (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
Description
図1は、実施形態に係るデータ算出装置の機能構成を示す概略ブロック図である。図1に示す構成で、データ算出装置100は、通信部110と、表示部120と、操作入力部130と、記憶部170と、制御部180とを備える。制御部180は、初期設定部181と、ループ処理部182と、上位シミュレータ部183と、上位事後分布データ算出部184と、下位シミュレータ部185と、下位事後分布データ算出部186とを備える。
また、図1には、シミュレーションモデルによる模擬(シミュレーション、Simulation)の対象である対象900が示されている。対象900のシミュレーションモデルを、対象900のモデル、あるいは単にモデルとも称する。
ターゲットデータの値をターゲット値とも称する。モデルの出力値がターゲット値に近付くように、モデルのパラメータ値を推定する処理をデータ同化とも称する。データ同化におけるパラメータ値の推定をパラメータ値の調整とも称する。
また、推定結果のパラメータ値を参照することで、対象900の状態を推定することができる。例えば、対象900が工場であり、データ算出装置100による推定対象のパラメータに、工場の生産ラインごとの生産量である場合、データ算出装置100が推定するパラメータ値を、実測データから推定される、工場の生産ラインごとの生産量として用いることができる。
データ算出装置100によれば、工場の生産ラインごとに推定した生産量に基づいて生産ラインごとに機器を制御するなど、推定結果に基づく制御を行うことができる。
これに対して、データ算出装置100では、上記のように個々のモデルのパラメータの個数が比較的少ない階層的なモデルを用いることで、パラメータの個数が多い1つのモデルを用いる場合よりも計算時間が短くて済むと期待される。
例えば、対象900は工場であってもよい。そして、データ算出装置100が、工場全体を模擬する上位のモデルと、工場の一部を模擬する1つ以上の下位のモデルとを含む階層的なモデルを用いるようにしてもよい。
あるいは、対象900が、生産拠点、物流設備、および、販売拠点を含むサプライチェーンであってもよい。そして、データ算出装置100が、サプライチェーン全体を模擬する上位のモデルと、生産拠点、物流設備、販売拠点のそれぞれを模擬する下位のモデルとを含む階層的なモデルを用いるようにしてもよい。
対象900は、実在していてもよいし、仮想的なものであってもよい。
ベクトルXを入力ベクトルXとも称する。ベクトルYを出力ベクトルYとも称する。ベクトルZをパラメータベクトルZとも称する。
上位モデル210をfで示し、f(X,Z)=Yと表記する。あるいは、入力ベクトルXの表記を省略してf(Z)=Yとも表記する。
ベクトルXs、Zs、θsは何れも実数ベクトルである。Xs、ベクトルZs、θsの何れも次元数は1次元以上であればよい。ベクトルXsの次元数は、0次元以上であればよい。
下位モデル220をgsで示し、gs(Xs,θs)=Zsと表記する。あるいは、入力ベクトルXsの表記を省略し、gs(θs)=Zsとも表記する。
データ算出装置100による調整前のパラメータベクトルZの確率分布を事前分布πZと表記し、事前分布πZによるパラメータベクトルZの値をサンプルZ<PRI>と表記する。ベクトルの確率分布は、ベクトルの要素ごとの確率分布の組み合わせで示されてもよい。
データ算出装置100による調整後のパラメータベクトルZの確率分布を事後分布p(Z|Y)と表記し、事後分布p(Z|Y)によるパラメータベクトルZの値をサンプルZ<POST>と表記する。ここでの事後分布p(Z|Y)は、出力ベクトルYのターゲット値が与えられたときの、パラメータベクトルZの値の事後分布を意味する。
あるいは、入力ベクトルXsの要素の値に、入力ベクトルXの値に基づく計算値が含まれていてもよい。
データ算出装置100がサンプルZ<POST>に基づいて決定する下位モデル220-sの出力のターゲット値をサンプルZ<POST> sと表記する。
データ算出装置100による調整前のパラメータベクトルθsの確率分布を事前分布πθsと表記し、事前分布πθsによるパラメータベクトルθsの値をサンプルθ<PRI> sと表記する。
データ算出装置100による調整後のパラメータベクトルZの確率分布を事後分布p(θs|Zs)と表記し、事後分布p(θs|Zs)によるパラメータベクトルZの値をサンプルθ<POST> sと表記する。
具体的には、データ算出装置100は、生成したサンプルの値を上位モデル210のパラメータベクトルZに適用してシミュレーションを実行する。これにより、データ算出装置100は、生成したパラメータのサンプルに基づく出力ベクトルYのサンプルを取得する。そして、データ算出装置100は、得られた出力ベクトルYのサンプルとターゲット値との関係に基づいて、上位モデル210の出力値がターゲット値に近付くように、パラメータベクトルZの値を推定する。データ算出装置100は、推定したパラメータベクトルZの値をサンプルZ<POST>として用いて、上述したのと同様に、下位モデル220におけるデータ同化を行い、データ同化の結果に基づいてパラメータベクトルZのサンプルを生成する。データ算出装置100は、所定の終了条件が成立するまで、階層的なデータ同化を繰り返す。
パラメータベクトルθ1からθSまでについても、データ同化を繰り返すことで、ターゲット値に応じたパラメータ値の確率が大きくなっていくと期待される。
ただし、データ算出装置100が、モデルの出力値をターゲット値に近付けるようにパラメータ値を推定する方法は、特定の方法に限定されない。例えば、データ算出装置100が、モデルの出力値をターゲット値に近付けるようにパラメータ値を推定する処理として、マルコフチェーンモンテカルロ(Markov Chain Monte Carlo;MCMC)、または、ABC(Approximate Bayesian Computation)を用いるようにしてもよい。
操作入力部130は、例えばキーボードおよびマウス等の入力デバイスを備え、ユーザ操作を受け付ける。例えば、操作入力部130が、ターゲットデータとして対象900における目標値を入力するユーザ操作を受け付けるようにしてもよい。
制御部180は、データ算出装置100の各部を制御して各種処理を行う。制御部180の機能は、データ算出装置100が備えるCPU(Central Processing Unit、中央処理装置)が記憶部170からプログラムを読み出して実行することで実行されてもよい。
具体的には、初期設定部181は、階層的なデータ同化を繰り返すためのループカウンタとして用いられる変数lに1を代入する。
また、初期設定部181は、パラメータベクトルZの事前分布πZに基づくサンプリングを行う。すなわち、事前分布πZに基づいてサンプルZ<PRI>を算出する。初期設定部181は、サンプルZ<PRI>をM個算出する。Mは、M≧1の整数であり、サンプルの個数を示す。初期設定部181のサンプリングによって得られるM個のサンプルZ<PRI>(l)を、{Z<PRI>(1) m}m=1 Mと表記する。()内の値は、変数lの値である。すなわち、()内の値は、階層的なデータ同化の何回目の実行であるかを示す。「Z<PRI>(1) m」の下付の「m」はM個のサンプルZ<PRI>(1)を識別する識別番号を示す。
ここでのループの終了条件として、いろいろな条件を用いることができる。例えば、ループの終了条件が、変数lの値が所定の閾値以上であることであってもよい。あるいは、ループの終了条件が、上位モデル210の出力値が所定の条件以上にターゲット値に近いと評価されることであってもよい。
特に、上位シミュレータ部183は、下位モデル220を用いたシミュレーションの結果として得られるサンプルZ<PRED> 1からZ<PRED> Sまでに基づく更新後のパラメータベクトルZの値を上位モデル210に適用してシミュレーションを実行する。
上位シミュレータ部183は、上位シミュレータ部183上位モデルシミュレーション実行手段の例に該当する。
上位シミュレータ部183は、階層的なデータ同化のl回目の実行にて得られるサンプルZ<PRED>(l) 1からZ<PRED>(l) Sに基づいて、階層的なデータ同化のl+1回目のためのサンプルZ<PRI>(l+1)を取得する。データ算出装置100について上述したように、上位シミュレータ部183が、サンプルZ<PRED>(l) sの要素の値を、サンプルZ<PRI>(l+1)の要素の値として用いるようにしてもよい。あるいは、データ算出装置100について上述したように、上位シミュレータ部183が、サンプルZ<PRED> 1からサンプルZ<PRED> Sまでの複数の要素の値の平均をとるなど、所定の方法でサンプルZ<PRED>(l+1) sの要素の値を算出するようにしてもよい。
上位シミュレータ部183は、サンプルZ<PRED>(l) 1からZ<PRED>(l) Sまでの組み合わせをM個取得して、サンプルZ<PRI>(l+1)をM個算出し、サンプルY<PRI>(l+1)をM個算出する。上位シミュレータ部183が算出するM個のサンプルZ<PRI>(l)を、{Z<PRI>(l) m}m=1 Mと表記する。上位シミュレータ部183が算出するM個のサンプルY<PRI>(l)を、{Y<PRI>(l) m}m=1 Mと表記する。「Z<PRI>(l) m」の下付の「m」、および、「Y<PRI>(l) m」の下付の「m」は、いずれも、M個のサンプルを識別する識別番号を示す。
具体的には、上位事後分布データ算出部184は、出力ベクトルYの値がターゲット値に近付くようにパラメータベクトルZの値を推定するデータ同化を、カーネルABCおよびカーネルハーディングを用いて行う。上位事後分布データ算出部184は、このデータ同化で、M個のサンプル{Z<PRI>(l) m}m=1 Mに応じて、サンプルZ<POST>(l)をM個算出する。上述したように、()内の値は、変数lの値である。
再生核ヒルベルト空間における距離は、サンプルY<PRI>(l) mとターゲット値との類似度を示す指標の例に該当する。サンプルY<PRI>(l) mとターゲット値との類似度が高いほど、再生核ヒルベルト空間における距離は小さくなる。
特に、下位シミュレータ部185は、データ算出装置100について上述したように、下位モデル220-sにおけるデータ同化で得られるサンプルθ<POST> sを下位モデル220-sに適用してシミュレーションを実行し、サンプルZ<PRED> sを算出する。下位モデル220-sにおけるデータ同化は、上述した、下位モデル220-sの出力ベクトルZsの値がターゲット値(サンプルZ<POST> s)に近付くように下位モデル220のパラメータベクトルθsの値を推定するデータ同化である。
下位事後分布データ算出部186が算出するM個のθ<POST> sを、{θ<POST>(l) m}m=1 Mと表記する。上述したように、()内の値は、変数lの値である。「θ<POST>(l) m」の下付の「m」は、M個のサンプルθ<POST>(l)を識別する識別番号を示す。
下位シミュレータ部185が算出するM個のZ<PRED> sを、{Z<PRED>(l) s,m}m=1 Mと表記する。上述したように、()内の値は、変数lの値である。「Z<PRED>(l) s,m」の下付の「m」は、M個のサンプルZ<PRED>(l) sを識別する識別番号を示す。
具体的には、下位事後分布データ算出部186は、下位モデル220-sの出力値が、ターゲット値であるサンプルZ<POST>(l)に近付くようにパラメータθsの値を推定するデータ同化を、カーネルABCおよびカーネルハーディングを用いて行う。
下位事後分布データ算出部186は、データ同化にて、上述したようにM個のサンプル{θ<POST>(l) m}m=1 Mを算出する。
制御部180は、制御手段の例に該当する。
(ステップS101)
初期設定部181は、ループカウンタとして用いられる変数lの値を初期設定する。具体的には、初期設定部181は、変数lの値を1に設定する。変数lの値は、ステップS103からS110までのループの繰り返し回数を示す。
ステップS101の後、処理がステップS102へ遷移する。
初期設定部181は、パラメータベクトルZの事前分布πZからのM個のサンプル{Z<PRI>(1) m}m=1 Mを算出する。
ステップS102の後、処理がステップS103へ遷移する。
ループ処理部182は、ループの終了条件が成立しているか否かを判定する。
終了条件が成立していないとループ処理部182が判定した場合(ステップS103:NO)、処理がステップS104へ遷移する。
一方、終了条件が成立しているとループ処理部182が判定した場合(ステップS103:YES)、データ算出装置100は、図3の処理を終了する。
上位シミュレータ部183は、サンプルZ<PRI>(l) m(m=1,・・・,M)を上位モデル210のパラメータに設定してシミュレーションを実行し、出力のサンプルY<PRI>(l) mを算出する。Y<PRI>(l) mは、式(1)のように示される。
上位事後分布データ算出部184は、カーネル平均μ^(l) Z|Yを算出する。カーネル平均μ^(l) Z|Yは、式(2)のように示される。
括弧内の「・」は、再生核ヒルベルト空間における関数の変数が特定のものに限定されないことを示す。
重みwmは、式(3)のように示される。
δは正則化定数(Regularization Constant)を示す。δ>0である。
Gyはグラム行列(Gram Matrix)を示し、式(4)のように表される。
ステップS105の後、処理がステップS106へ遷移する。
上位事後分布データ算出部184は、カーネル平均μ^(l) Z|YによるパラメータZのサンプル{Z<POST>(l) m}m=1 Mを算出する。
カーネル平均μ^(l) Z|Yは、出力ベクトルYとしてターゲットデータが与えられた場合の事後分布p(Z|Y)と一対一に紐付けられる。カーネルハーディング(Kernel Herding)の処理を行うことで、事後分布によるサンプルを得られる。
例えば、上位事後分布データ算出部184は、式(6)に基づいてZ<POST>(l) mを算出する。
hjは、式(7)のように再帰的に示される。
h0は、式(8)のように示される。
上位事後分布データ算出部184は、M個のサンプルZ<POST>(l) m(m=1,・・・,M)を、サンプルZ<POST>(l)に集約する。例えば、上位事後分布データ算出部184は、式(9)に示されるように、M個のサンプルZ<POST>(l) m(m=1,・・・,M)を、サンプルZ<POST>(l)に集約する。
データ算出装置100は、下位モデル220ごとの処理を実行する。上述したように、データ算出装置100は、下位モデル220-sの処理でサンプルZ<PRED>(l) sを算出する。
ステップS108の後、処理がステップS109に遷移する。
上位シミュレータ部183は、下位モデル220ごとの処理結果を上位モデル210の処理に受け渡す。具体的には、データ算出装置100について上述したように、上位シミュレータ部183は、下位モデル220ごとに得られたサンプルZ<PRED>(l) sの値に基づいて、サンプルZ<PRI>(l+1)の値を設定する。例えば、上位シミュレータ部183は、式(10)に示されるように、サンプルZ<PRI>(l+1)の値を設定する。
ループ処理部182は、ループカウンタとして用いられる変数lの値をカウントアップする。すなわち、ループ処理部182は、変数lの値を1増加させる。
ステップS110の後、処理がステップS102へ遷移する。
(ステップS201)
上位事後分布データ算出部184は、上位モデル210のパラメータベクトルZの値を下位モデル220に受け渡す。具体的には、データ算出装置100について上述したように、上位事後分布データ算出部184は、サンプルZ<POST>(l)に基づいてサンプルZ’<POST>(l) sを取得する。例えば、上位事後分布データ算出部184は、式(11)に基づいてZ’<POST>(l) sを取得する。
式(11)では、Z<POST>(l) mと区別するために、Zに’を付している。
Z’<POST>(l) sは、式(12)のように示される。
式(13)の例で、Z<POST>(l)は、Z’<POST>(l) s、mを要素とする行列として構成されている。上位事後分布データ算出部184は、式(11)に示されるように、Z<POST>(l)のs行目を読み出すことで、下位モデル220-sのターゲットデータとして用いるためのM個のサンプルZ’<POST>(l) s、1,・・・,Z’<POST>(l) s、Mを取得する。
ステップS201の後、処理がステップ202へ遷移する。
下位シミュレータ部185は、事前分布πθsからのM個のサンプル{θ<PRI>(l) s,m}m=1 Mを算出する。
ステップS202の後、処理がステップS203へ遷移する。
下位シミュレータ部185は、サンプルθ<PRI>(l) s,mを下位モデル220-sに適用してシミュレーションを実行し、サンプルZ<PRI>(l) s,mを算出する。サンプルZ<PRI>(l) s,mは、式(14)のように示される。
下位事後分布データ算出部186は、カーネル平均μ^(l) θ|Z,sを算出する。カーネル平均μ^(l) θ|Z,sは、式(15)のように示される。
重みws,mは、式(16)のように示される。
下位事後分布データ算出部186は、カーネル平均μ^(l) θ|Z,sによるパラメータθsのサンプル{θ<POST>(l) s,m}m=1 Mを算出する。
例えば、下位事後分布データ算出部186は、式(19)に基づいてθ<POST>(l) s,mを算出する。
下位シミュレータ部185は、サンプルθ<POST>(l) s,mを下位モデル220-sのパラメータに設定してシミュレーションを実行し、サンプルZ<PRED>(l) s,mを算出する。Z<PRED>(l) s,mは、式(22)のように示される。
下位事後分布データ算出部186は、M個のサンプルZ<PRED>(l) s,m(m=1,・・・,M)を、サンプルZ<PRED>(l) sに集約する。
ステップS207の後、データ算出装置100は、図4の処理を終了する。
図5は、対象900の例に該当する生産システム910の構成を示す図である。図5に示す構成で、生産システム910は、第一サブシステム911-1と、第二サブシステム911-2とを備える。第一サブシステム911-1と第二サブシステム911-2とを総称して、サブシステム911と表記する。
上位モデル210では、2つの下位モデルに応じて、2つのパラメータz1およびz2が設けられている。Z=(z1,z2)と表される。
パラメータz1、z1は、それぞれ第一サブシステム911-1、第二サブシステム911-2で、生産単位1つあたりの生産にかかる時間を示す。
パラメータθ1,1からθ1,5までは、第一生産ライン912-1から第五生産ライン912-5までで、生産単位1つあたりの生産にかかる時間を示す。パラメータθ2,1からθ2,4までは、第六生産ライン912-6から第九生産ライン912-9までで、生産単位1つあたりの生産にかかる時間を示す。
この場合、上位モデル210と下位モデル220とがデータをやり取りすることで、要求される時間と必要な時間との両方に対応できる解を探索すると見ることができる。
領域A11に、パラメータz1の事前分布が示されている。領域A12に、パラメータz2の事前分布が示されている。領域A13の点の各々は、(z1,z2)のサンプルの例を示している。領域A13に示されるサンプルは、{Z<PRI>(1) m}m=1 100と表される。
図7は、図3のステップS102で初期設定部181が算出する、事前分布に基づくパラメータZのサンプルの例を示している。
図8は、図7に示されるパラメータベクトルZの値ごとに上位モデル210を用いたシミュレーションを実行して得られる、上位モデル210の出力値を度数分布にて示している。図3のステップS104で、上位シミュレータ部183が、このシミュレーションを行う。
上位事後分布データ算出部184は、図5のステップS105およびS106の処理で、図8に示されるモデル出力が、実際値である「5」に近付くような、パラメータZの値を推定する。
領域A21に、パラメータz1の事後分布が示されている。領域A22に、パラメータz2の事後分布が示されている。領域A23の点の各々は、(z1,z2)のサンプルの例を示している。領域A23に示されるサンプルは、{Z<POST>(1) m}m=1 100と表される。
上位事後分布データ算出部184によるデータ同化によって、パラメータZの値が収束していると考えられる。
図10は、下位モデル220-1のパラメータθ1,1からθ1,5まで、および下位モデル220-2のパラメータθ2,1からθ2,4までのそれぞれについて、事前分布に基づくサンプルを、横軸にパラメータ値をとり縦軸に度数をとった度数分布にて示している。
下位事後分布データ算出部186は、図4のステップS202で、図10に例示される事前分布に基づいて下位モデル220のパラメータ値をサンプリングする。
図11は、図10に示されるパラメータ値を下位モデル220に適用してシミュレーションを実行して得られる下位モデル220の出力値を確率分布にて示している。図4のステップS203で、下位シミュレータ部185が、このシミュレーションを行う。
図12は、下位モデル220-1のパラメータθ1,1からθ1,5まで、および下位モデル220-2のパラメータθ2,1からθ2,4までのそれぞれについて、事後分布に基づくサンプルを、横軸にパラメータ値をとり縦軸に度数をとった度数分布にて示している。
図10と図12とを比較すると、図10よりも図12のほうが、パラメータ値が偏在している。下位事後分布データ算出部186によるデータ同化によって、パラメータθ1およびθ2の値が収束していると考えられる。
図13は、図12に示されるパラメータ値を下位モデル220に適用してシミュレーションを実行した場合の、下位モデル220の出力値を示している。図4のステップS206で、下位シミュレータ部185が、このシミュレーションを行う。
領域A31に、領域A33に示されるサンプルに基づくパラメータz1の分布が示されている。領域A32に、領域A33に示されるサンプルに基づくパラメータz2の分布が示されている。
下位事後分布データ算出部186によるデータ同化の結果が反映されることで、パラメータZの値がさらに収束していると考えられる。
図14は、図13に示されるパラメータ値を上位モデル210に適用してシミュレーションを実行した場合の、上位モデル210の出力の例を度数分布で示している。図3のステップS103からS110のループの2回目の実行におけるステップS104で、上位シミュレータ部183が、このシミュレーションを行う。
図7の場合よりも図13の場合のほうがパラメータZの値が収束していることに応じて、図8の場合よりも図14の場合のほうが、上位モデル210の出力が収束している。
図15は、図14に示される上位モデル210の出力値に基づいて、上位モデル210の出力値が実際に近付くようにパラメータ値を推定するデータ同化を行った場合の、上位モデル210のパラメータの値を示している。図3のステップS103からS110のループの2回目の実行における、ステップS104からS105で、上位事後分布データ算出部184が、このデータ同化を行う。
領域A41に、領域A43に示されるサンプルに基づくパラメータz1の分布が示されている。領域A42に、領域A33に示されるサンプルに基づくパラメータz2の分布が示されている。
データ算出装置100が適切なパラメータZの値の推定に成功したと考えられる。
図16は、図15に示される上位モデル210のパラメータ値を下位モデル220の出力のターゲット値として、下位モデル220の出力値がターゲット値に近付くように下位モデル220のパラメータ値を推定するデータ同化を行った場合の、下位モデル220のパラメータ値の例を、横軸にパラメータ値をとり縦軸に度数をとった度数分布にて示している。
図16では、図12の場合よりも、パラメータ値がさらに偏在している。データ算出装置100が、適切なパラメータθ1およびθ2の値の推定に成功したと考えられる。
モデルの層数が3層以上の場合も、上位モデルに関する処理は、図3を参照して説明したのと同様である。上位モデルと直接データの入出力を行うモデルが中間モデルである場合は、図3の説明で「下位モデル」を中間モデルと読み替える。
ここで、中間層における入出力データを図17のように表記する。
1つの上位層モデル231とデータの入出力を行う中間モデルの個数は、1つ以上であればよい。1つの中間モデル232とデータの入出力を行う下位層モデルの個数は、1つ以上であればよい。
モデルの層数は一律でなくてもよい。例えば、上位モデルのすぐ下の層のモデルとして、中間モデルと下位モデルとの両方があってもよい。中間モデルのすぐ下の層のモデルとして、中間モデルと下位モデルとの両方があってもよい。
Z’<POST> (u)およびZ’<POST> (d)は、図4の処理におけるZ’<POST>(l) s、1,・・・,Z’<POST>(l) s、Mに相当する。Z’<POST> (u)は、中間モデル232におけるデータ同化でターゲットデータとして用いられる。Z’<POST> (u)は、下位層モデル233におけるデータ同化でターゲットデータとして用いられる。
Z<PRED> (d)およびZ<PRED> (u)は、図3の処理および図4の処理におけるZ<PRED>(l) sに相当する。Z<PRED> (d)は、中間モデル232における、事後分布に基づくサンプルZ<POST> (d)を更新するために用いられる。ここでいう事後分布に基づくサンプルは、データ同化によって得られるサンプルであり、モデルの出力値のターゲットデータが与えられたときの、事後分布に基づくパラメータのサンプルに該当する。
図3のステップS109では、データ算出装置100は、Z(PRED)(l) sを用いてZ<PRI>(l+1)を算出する。これに対し、中間モデル232に対する処理では、データ算出装置100は、Z<PRED> (d)を用いて事後分布に基づくサンプルZ<POST> (d)を更新する。
このように、中間モデル232に関する処理では、中間モデル232におけるデータ同化の後、下位層モデル233におけるデータ同化の結果をサンプルZ<POST> (d)に反映させてから、Z<PRED> (u)を算出する点で、図4の処理と異なる。それ以外の点では、中間モデルに関する処理は、図4の処理と同様である。
パラメータベクトルθ1からθSまでについても、データ同化を繰り返すことで、ターゲット値に応じたパラメータ値の確率が大きくなっていくと期待される。
このように、下位事後分布データ算出部186がカーネル平均に基づいて、下位モデル220のパラメータ値の事後分布を示すデータを算出することで、与えられるM個の事前分布のサンプルに対して、同数であるM個の事後分布のサンプルを算出することができる。データ算出装置100によれば、この点で、パラメータ値の推定を効率的に行うことができる。
上記のように、データ算出装置100が階層的なモデルを用いることで、個々のモデルのパラメータの個数が比較的少ない。これにより、対象900が比較的複雑な場合でも、下位事後分布データ算出部186は、下位モデル220のパラメータ値を推定することができる。制御部180は、下位事後分布データ算出部によるパラメータ値の推定結果を参照することで、対象900の状態を把握して対象900を比較的高精度に制御することができる。
かかる構成で、上位事後分布データ算出部611は、対象を模擬する上位モデルの出力に対するターゲットデータに基づく、上位モデルのパラメータ値の事後分布を示すデータを算出する。下位事後分布データ算出部612は、対象の部分を模擬して上位モデルのパラメータ値を出力する下位モデルについて、上位モデルのパラメータ値の事後分布を示すデータに基づく、下位モデルのパラメータ値の事後分布を示すデータを算出する。
上位事後分布データ算出部611は、上位事後分布データ算出手段の例に該当する。下位事後分布データ算出部612は、下位事後分布データ算出手段の例に該当する。
かかる構成で、下位モデルシミュレーション実行部621は、対象を模擬する上位モデルのパラメータ値を出力する下位モデルに、下位モデルのパラメータ値の分布を示すデータを適用してシミュレーションを実行し、上位モデルのパラメータ値の分布を示すデータを算出する。上位モデルシミュレーション実行部622は、上位モデルに、算出したパラメータ値の分布を示すデータを適用して対象のシミュレーションを実行する。
データ算出装置620によれば、下位モデルを用いたパラメータ値の推定結果を上位モデルに反映させることができ、この点で、対象のシミュレーションを高精度に実行することができる。
下位モデルについて事後分布を示すデータを算出する工程(ステップS612)では、対象の部分を模擬して上位モデルのパラメータ値を出力する下位モデルについて、上位モデルのパラメータ値の事後分布を示すデータに基づく、下位モデルのパラメータ値の事後分布を示すデータを算出する。
図21に示す構成で、コンピュータ700は、CPU710と、主記憶装置720と、補助記憶装置730と、インタフェース740と、不揮発性記録媒体750とを備える。
通信部110による他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
表示部120による表示は、インタフェース740が表示装置を有し、CPU710の制御に従って各種画像を表示することで実行される。
操作入力部130によるユーザ操作の受け付けは、インタフェース740が例えばキーボードおよびマウスなどの入力デバイスを有してユーザ操作を受け付け、受け付けたユーザ操作を示す情報をCPU710へ出力することで実行される。
データ算出装置610と他の装置との通信は、インタフェース740が通信機能を有し、CPU710の制御に従って動作することで実行される。
データ算出装置610とユーザとのインタラクションは、インタフェース740が入力デバイスおよび出力デバイスを有し、CPU710の制御に従って出力デバイスにて情報をユーザに提示し、入力デバイスにてユーザ操作を受け付けることで実行される。
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ROM(Read Only Memory)、CD-ROM(Compact Disc Read Only Memory)等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。また上記プログラムは、前述した機能の一部を実現するためのものであってもよく、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであってもよい。
110 通信部
120 表示部
130 操作入力部
170 記憶部
180 制御部
181 初期設定部
182 ループ処理部
183 上位シミュレータ部
184、611 上位事後分布データ算出部
185 下位シミュレータ部
186、612 下位事後分布データ算出部
Claims (8)
- 対象を模擬する上位モデルの出力に対するターゲットデータに基づく、前記上位モデルのパラメータ値の事後分布を示すデータを算出する上位事後分布データ算出手段と、
前記対象の部分を模擬して前記上位モデルのパラメータ値を出力する下位モデルについて、前記上位モデルのパラメータ値の事後分布を示すデータに基づく、前記下位モデルのパラメータ値の事後分布を示すデータを算出する下位事後分布データ算出手段と、
を備えるデータ算出装置。 - 前記下位モデルのパラメータ値の事後分布を示すデータに基づくパラメータ値を前記下位モデルに適用してシミュレーションを実行する下位モデルシミュレーション実行手段と、
前記下位モデルを用いたシミュレーションの結果に基づく前記上位モデルのパラメータ値のサンプルデータを前記上位モデルに適用してシミュレーションを実行する上位モデルシミュレーション実行手段と、
をさらに備え、
前記上位事後分布データ算出手段は、前記上位モデルシミュレーション実行手段による前記シミュレーションの結果として得られる前記上位モデルの出力のサンプルデータと前記ターゲットデータとの類似度に基づいて、前記上位モデルの出力に対するターゲットデータに基づく、前記上位モデルのパラメータ値の事後分布を示すデータを算出する、
請求項1に記載のデータ算出装置。 - 前記上位事後分布データ算出手段は、前記上位モデルのパラメータ値のサンプルデータのカーネル平均に基づいてカーネルハーディングを実行し、前記上位モデルのパラメータ値の事後分布を示すデータを算出する、
請求項1または請求項2に記載のデータ算出装置。 - 前記下位事後分布データ算出手段は、前記下位モデルのパラメータ値のサンプルデータのカーネル平均に基づいてカーネルハーディングを実行し、前記下位モデルのパラメータ値の事後分布を示すデータを算出する、
請求項1から3の何れか一項に記載のデータ算出装置。 - 前記下位事後分布データ算出手段が算出する前記下位モデルのパラメータ値の事後分布を示すデータに基づいて、前記対象を制御する制御手段
をさらに備える、請求項1から4の何れか一項に記載のデータ算出装置。 - 対象を模擬する上位モデルのパラメータ値を出力する下位モデルに、前記下位モデルのパラメータ値の分布を示すデータを適用してシミュレーションを実行し、前記上位モデルの前記パラメータ値の分布を示すデータを算出する下位モデルシミュレーション実行手段と、
前記上位モデルに、算出した前記パラメータ値の分布を示すデータを適用して前記対象のシミュレーションを実行する上位モデルシミュレーション実行手段と、
を備えるデータ算出装置。 - コンピュータが、
対象を模擬する上位モデルの出力に対するターゲットデータに基づく、前記上位モデルのパラメータ値の事後分布を示すデータを算出し、
前記対象の部分を模擬して前記上位モデルのパラメータ値を出力する下位モデルについて、前記上位モデルのパラメータ値の事後分布を示すデータに基づく、前記下位モデルのパラメータ値の事後分布を示すデータを算出する、
データ算出方法。 - コンピュータに、
対象を模擬する上位モデルの出力に対するターゲットデータに基づく、前記上位モデルのパラメータ値の事後分布を示すデータを算出することと、
前記対象の部分を模擬して前記上位モデルのパラメータ値を出力する下位モデルについて、前記上位モデルのパラメータ値の事後分布を示すデータに基づく、前記下位モデルのパラメータ値の事後分布を示すデータを算出することと、
実行させるためのプログラムを記録する記録媒体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/035546 WO2022059189A1 (ja) | 2020-09-18 | 2020-09-18 | データ算出装置、データ算出方法および記録媒体 |
JP2022550307A JPWO2022059189A5 (ja) | 2020-09-18 | データ算出装置、データ算出方法およびプログラム | |
US18/025,609 US20240028789A1 (en) | 2020-09-18 | 2020-09-18 | Data calculation device, data calculation method, and recording medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2020/035546 WO2022059189A1 (ja) | 2020-09-18 | 2020-09-18 | データ算出装置、データ算出方法および記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2022059189A1 true WO2022059189A1 (ja) | 2022-03-24 |
Family
ID=80776078
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2020/035546 WO2022059189A1 (ja) | 2020-09-18 | 2020-09-18 | データ算出装置、データ算出方法および記録媒体 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20240028789A1 (ja) |
WO (1) | WO2022059189A1 (ja) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016031174A1 (ja) * | 2014-08-27 | 2016-03-03 | 日本電気株式会社 | シミュレーション装置、シミュレーション方法、および、記憶媒体 |
WO2020105468A1 (ja) * | 2018-11-22 | 2020-05-28 | 日本電気株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラムが格納された非一時的なコンピュータ可読媒体 |
-
2020
- 2020-09-18 WO PCT/JP2020/035546 patent/WO2022059189A1/ja active Application Filing
- 2020-09-18 US US18/025,609 patent/US20240028789A1/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016031174A1 (ja) * | 2014-08-27 | 2016-03-03 | 日本電気株式会社 | シミュレーション装置、シミュレーション方法、および、記憶媒体 |
WO2020105468A1 (ja) * | 2018-11-22 | 2020-05-28 | 日本電気株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラムが格納された非一時的なコンピュータ可読媒体 |
Non-Patent Citations (1)
Title |
---|
JUNICHIRO YOSHIMOTO, ISHII SHIN, SATO MASA-AKI: "Normalized Gaussian Network Based on Variational Bayes Inference and Hierarchical Model Selection", TRANSACTIONS OF THE SOCIETY OF INSTRUMENT AND CONTROL ENGINEERS, KEISOKU JIDO SEIGYO GAKKAI, TOKYO, JP, vol. 39, no. 5, 1 January 2003 (2003-01-01), JP , pages 503 - 512, XP055232563, ISSN: 0453-4654, DOI: 10.9746/sicetr1965.39.503 * |
Also Published As
Publication number | Publication date |
---|---|
US20240028789A1 (en) | 2024-01-25 |
JPWO2022059189A1 (ja) | 2022-03-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wegmann et al. | ABCtoolbox: a versatile toolkit for approximate Bayesian computations | |
US8818922B2 (en) | Method and apparatus for predicting application performance across machines with different hardware configurations | |
Umbach et al. | Fitting nonlinear structural equation models in R with package nlsem | |
Gao et al. | Price forecast in the competitive electricity market by support vector machine | |
CN111656375A (zh) | 使用量子经典计算硬件用于量子计算使能的分子从头算模拟的方法和系统 | |
US7599898B2 (en) | Method and apparatus for improved regression modeling | |
US20110167020A1 (en) | Hybrid Simulation Methodologies To Simulate Risk Factors | |
JP4847916B2 (ja) | 購買順序を考慮したリコメンド装置、リコメンド方法、リコメンドプログラムおよびそのプログラムを記録した記録媒体 | |
US20140139529A1 (en) | Information processing apparatus, control method, and recording medium | |
JP5071851B2 (ja) | 時間情報を用いた予測装置、予測方法、予測プログラムおよびそのプログラムを記録した記録媒体 | |
Dutta et al. | Bayesian calibration of force-fields from experimental data: TIP4P water | |
KR101089898B1 (ko) | 방향성 스케일-프리 객체 관계의 모델을 생성하는 방법, 컴퓨팅 장치 및 컴퓨터 판독가능 기록 매체 | |
WO2020004575A1 (ja) | 学習方法、混合率予測方法及び学習装置 | |
JPWO2018088277A1 (ja) | 予測モデル生成システム、方法およびプログラム | |
WO2022059189A1 (ja) | データ算出装置、データ算出方法および記録媒体 | |
JP6573272B2 (ja) | 生成装置、生成方法、及び、プログラム | |
WO2020235631A1 (ja) | モデル生成装置、システム、パラメータ算出装置、モデル生成方法、パラメータ算出方法および記録媒体 | |
Giribone et al. | Option pricing via radial basis functions: Performance comparison with traditional numerical integration scheme and parameters choice for a reliable pricing | |
CN111160733A (zh) | 一种基于有偏样本的风险控制方法、装置及电子设备 | |
Sinnott et al. | Omnibus risk assessment via accelerated failure time kernel machine modeling | |
US20130159373A1 (en) | Matrix storage for system identification | |
US20140207715A1 (en) | Data driven reduction of multi-scale models | |
Tan et al. | A hybrid model method for accurate surface deformation and incision based on fem and PBD | |
JP2020030702A (ja) | 学習装置、学習方法及び学習プログラム | |
Hooker et al. | Prediction-based regularization using data augmented regression |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20954174 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2022550307 Country of ref document: JP Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 18025609 Country of ref document: US |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 20954174 Country of ref document: EP Kind code of ref document: A1 |