Parameter estimation device and parameter estimation method
The parameter estimation device and method address inefficiencies in multi-agent simulation parameter estimation by iteratively adjusting ensemble Kalman filter settings, achieving accurate and computationally efficient parameter estimation.
Patent Information
- Application Number
- JP2024059697
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-04-02
- Publication Date
- 2025-10-15
AI Technical Summary
Conventional techniques for estimating parameters in multi-agent simulations are inefficient due to the large number of parameters and their interdependence, leading to excessive computational time.
A parameter estimation device and method using an ensemble Kalman filter that adjusts the number of ensemble members and system noise across multiple iterations to improve estimation accuracy while minimizing computational cost and avoiding local solutions.
Effectively estimates parameters of multi-agent models with high accuracy and efficiency, reducing computational burden and avoiding local optima.
Smart Images

Figure 2025156926000001_ABST
Abstract
Description
[Technical Field]
[0001] The present disclosure relates to a technique for estimating parameters of a simulation model that performs a multi-agent simulation. [Background technology]
[0002] Simulation models that simulate various events generally have parameters that are tuned. In order for a simulation model to perform accurate simulations, it is necessary to estimate more appropriate parameters. Various techniques for estimating parameters have been proposed in the past. For example, Patent Document 1 discloses a technique relating to a Bayesian estimation method for a mixture model that estimates the posterior distribution of the parameters of the mixture model. Other documents that demonstrate the technical level in this technical field include Patent Documents 2 and 3 below. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2001-202358 [Patent Document 2] Japanese Patent Application Laid-Open No. 2015-052491 [Patent Document 3] International Publication No. 2017 / 170086 Summary of the Invention [Problem to be solved by the invention]
[0004] One type of simulation model is a simulation model that executes a multi-agent simulation (hereinafter referred to as a "multi-agent model"). A multi-agent simulation reproduces a target event by simulating the behavior of multiple agents that interact with each other. Therefore, in a multi-agent model, a model with parameters is provided for each of the multiple agents.
[0005] Conventionally, techniques for effectively estimating parameters in multi-agent models have not been fully explored. Because multi-agent models have parameters for each of the multiple agent models, the number of parameters to be estimated is extremely large. Furthermore, parameters may affect each other. For this reason, applying conventional techniques that estimate parameters by brute force may result in enormous computational time.
[0006] One object of the present disclosure is to provide a technique that enables effective estimation of parameters of a multi-agent model. [Means for solving the problem]
[0007] A first aspect relates to a parameter estimation device that estimates parameters of a simulation model that executes a multi-agent simulation.
[0008] The parameter estimation device includes a processing circuit configured to acquire actual measurement data related to a target event of a multi-agent simulation, and to repeatedly execute an estimation process that estimates parameters using an ensemble Kalman filter based on the actual measurement data through multiple execution steps of the multi-agent simulation. Furthermore, in the estimation process, the processing circuit at least one of increases the number of ensemble members of the ensemble Kalman filter from the number of members in the estimation process related to the previous iteration and decreases the magnitude of the system noise of the ensemble Kalman filter from the system noise in the estimation process related to the previous iteration, and sets initial values of the parameters using the parameter estimation results from the estimation process related to the previous iteration.
[0009] The second aspect relates to a parameter estimation method for estimating parameters of a simulation model that executes a multi-agent simulation.
[0010] The parameter estimation method includes a computer acquiring actual measurement data related to a target event of a multi-agent simulation, and repeatedly executing an estimation process that estimates parameters using an ensemble Kalman filter based on the actual measurement data through multiple execution steps of the multi-agent simulation. The parameter estimation method further includes, in the estimation process, the computer at least one of increasing the number of ensemble members of the ensemble Kalman filter from the number of members in the estimation process related to the previous iteration and decreasing the magnitude of the system noise of the ensemble Kalman filter from the system noise in the estimation process related to the previous iteration, and setting initial values of the parameters using the parameter estimation results from the estimation process related to the previous iteration. [Effects of the Invention]
[0011] According to the present disclosure, parameters of a multi-agent model can be effectively estimated. [Brief explanation of the drawings]
[0012] [Figure 1] FIG. 1 is a diagram illustrating an overview of a multi-agent model. [Figure 2] FIG. 1 is a diagram illustrating an example of a hardware configuration of a parameter estimation device according to an embodiment. [Figure 3] FIG. 1 is a diagram illustrating an outline of an estimation process performed by a parameter estimation device according to an embodiment. [Figure 4] 10A and 10B are diagrams illustrating changes in the estimation results of the estimation process due to differences in the magnitude of the system noise of the ensemble Kalman filter. [Figure 5] FIG. 1 is a diagram illustrating an outline of an estimation process repeatedly executed multiple times by a parameter estimation device according to an embodiment. [Figure 6] 3 is a flowchart showing a processing flow of processing executed by the parameter estimation device according to the embodiment. [Figure 7]3 is a flowchart showing a processing flow of processing executed by the parameter estimation device according to the embodiment. DETAILED DESCRIPTION OF THE INVENTION
[0013] Hereinafter, embodiments of the present disclosure will be described with reference to the accompanying drawings. In each drawing, the same or corresponding components are designated by the same reference numerals, and the description thereof will be simplified or omitted.
[0014] 1. Multi-agent model FIG. 1 is a diagram showing an overview of a simulation model 10 (multi-agent model 10) that executes a multi-agent simulation. A multi-agent simulation reproduces a target event by simulating the behavior of multiple agents 20 that interact with each other. Examples of the target event include real-world events such as people flow, purchasing behavior, and information diffusion. Each of the multiple agents 20 represents a component of the target event. For example, if the target event is people flow, each agent 20 represents one person that makes up the people flow. Each agent 20 may represent various things, such as a person, animal, vehicle, or robot, depending on the target event.
[0015] The multi-agent model 10 includes a model 21 (agent model 21) that provides rules for the behavior of each of the multiple agents 20. The multi-agent model 10 also generates a virtual space 30 in which each agent 20 operates. The virtual space 30 provides the environment for the target event. The multi-agent model 10 uses the agent model 21 to simulate the behavior of each agent 20 in the virtual space.
[0016] The agent model 21 of each agent 20 has parameters 22. The parameters 22 are characteristic values that characterize the behavior of the agent 20. For example, if the target event is people flow, the parameters 22 are movement speed, recognition range, action speed, etc.
[0017] Multi-agent simulation using the multi-agent model 10 can be applied to, for example, the development of products and services. In particular, if the multi-agent simulation can faithfully reproduce real-world phenomena, it can shorten the lead time required for prototyping and verification in development, thereby speeding up development.
[0018] In order to execute a multi-agent simulation that more faithfully reproduces real-world events, it is necessary to appropriately estimate the parameters 22 of the multi-agent model 10. As mentioned above, the multi-agent model 10 has parameters 22 for each of the agent models 21 of the multiple agents 20, so the number of parameters 22 to be estimated is extremely large. Furthermore, the parameters 22 may affect each other. For this reason, if the parameters are estimated by brute force, there is a risk that the calculation time will become enormous due to a combination explosion.
[0019] The parameter estimation device according to this embodiment makes it possible to effectively estimate the parameters 22 of the multi-agent model 10. The parameter estimation device according to this embodiment will be described below.
[0020] 2. Parameter Estimation Device 2.1 Configuration FIG. 2 is a diagram illustrating an example of a hardware configuration of a parameter estimation device 100 according to this embodiment. The parameter estimation device 100 is a computer including a processing circuit 110 and a storage device 120. The parameter estimation device 100 is connected to an input / output device 200 operated by a user. The input / output device 200 accepts various inputs from the user to the parameter estimation device 100 and presents various output information from the parameter estimation device 100 to the user by display or sound. The input / output device 200 includes, for example, a display, a speaker, a touch screen, a mouse, a keyboard, a touchpad, a switch, and the like. The parameter estimation device 100 may be a server accessible via a communication network (e.g., the Internet). In this case, the input / output device 200 may be a user terminal connected to the parameter estimation device 100 via the communication network.
[0021] The processing circuitry 110 performs various processes. The processing circuitry 110 may be, for example, a general-purpose processor, a special-purpose processor, a central processing unit (CPU), a graphics processing unit (GPU), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), an integrated circuit, a conventional circuit, or a combination of one or more of these. In general, a processor including transistors and other circuits is an example of the processing circuitry 110. The processing circuitry 110 may also be referred to as circuitry or processing circuitry. Circuitry is hardware that is programmed to realize or executes the functions described in this disclosure.
[0022] The storage device 120 stores various information necessary for the processing circuit 110 to execute processing. The storage device 120 is configured with a recording medium such as a random access memory (RAM), a read only memory (ROM), a solid state drive (SSD), or a hard disk drive (HDD). The storage device 120 stores a computer program 121 that can be executed by the processing circuit 110. The computer program 121 is configured with a plurality of instructions that describe the processing to be executed by the processing circuit 110. The computer program 121 may be recorded on a computer-readable recording medium. The functions of the parameter estimation device 100 are realized by cooperation between the processing circuit that executes the computer program 121 and the storage device 120.
[0023] The storage device 120 further stores a multi-agent model 10 and actual measurement data 11.
[0024] The actual measurement data 11 is data of actual measurements acquired at predetermined sampling intervals regarding an event that is the target of the multi-agent simulation using the multi-agent model 10. More specifically, the actual measurement data 11 is time-series data of the actual movements of the components of the event represented by each agent 20. In particular, the actual measurement data 11 can be expressed as a data sequence {yt} (t=1, 2, , N). N (an integer equal to or greater than 1) represents the number of data points in the actual measurement data 11. yt represents the actual measurement value at time t. For example, consider a case where the target event is people flow. In this case, the actual measurement data 11 is time-series data of the actual movements of the people represented by each agent 20, and yt represents the position of the people at time t.
[0025] The parameter estimation device 100 estimates parameters 22 for the multi-agent model 10 stored in a storage device 120. As will be described later, the parameter estimation device 100 uses actual measurement value data 11 stored in the storage device 120 when estimating the parameters 22. The parameter estimation device 100 may be configured to accept input of the multi-agent model 10 and the actual measurement value data 11 from a user via an input / output device 200. The parameter estimation device 100 may then be configured to store the multi-agent model 10 and the actual measurement value data 11 input by the user in the storage device 120.
[0026] 2.2 Estimation process The parameter estimation device 100 according to this embodiment executes a process (hereinafter referred to as "estimation process") of estimating the parameters 22 of the multi-agent model 10 using an ensemble Kalman filter. Below, an overview of the estimation process executed by the parameter estimation device 100 according to this embodiment will be described.
[0027] The ensemble Kalman filter is a sequential data assimilation method that targets a linear or nonlinear state space model and calculates the likelihood distribution of a state vector by filtering based on observation data. In particular, the ensemble Kalman filter calculates the likelihood distribution of a state vector from the distributions of multiple ensemble members. The ensemble Kalman filter is a well-known technique, and a detailed description thereof will be omitted in this disclosure.
[0028] The parameter estimation device 100 constructs a state space model using the multi-agent model 10 including system noise, and applies an ensemble Kalman filter. In particular, the parameter estimation device 100 handles the parameters 22 of each agent 20 included in the multi-agent model 10 as elements of a state vector. The state vector may further include states (e.g., coordinate positions, speeds, etc. in the virtual space 30) related to each agent 20 as elements. The parameter estimation device 100 also uses actual measurement data 11 as observation data.
[0029] Fig. 3 is a conceptual diagram showing an outline of the estimation process executed by the parameter estimation device 100. In Fig. 3, the parameters 22 (state vector) are expressed in two dimensions x=(x1, x2).
[0030] In the estimation process, the parameter estimation device 100 first generates multiple ensemble members for the initial values of the parameters 22. The parameter estimation device 100 generates the multiple ensemble members by adding system noise to the initial values of the parameters 22. The generation range 40 of the multiple ensemble members depends on the magnitude of the system noise. The magnitude of the system noise can be expressed by the standard deviation or variance of the system noise. FIG. 3 shows a case where the number k of the multiple ensemble members to be generated is 12.
[0031] Next, the parameter estimation device 100 obtains updated distributions of multiple ensemble members through multiple execution steps of a multi-agent simulation using the multi-agent model 10 in accordance with the ensemble Kalman filter algorithm. That is, in each execution step, a multi-agent simulation using the multi-agent model 10 is executed for each of the multiple ensemble members at a predetermined execution interval, and a predictive distribution of the multiple ensemble members is calculated. The calculated predictive distribution is then sequentially filtered (data assimilated) using actual measurement data 11, and the distributions of the multiple ensemble members are updated. When the actual measurement data 11 is a data sequence {yt} (t=1, ,N), the actual measurement data 11 used for filtering is the actual measurement value yt at time t of the calculated predictive distribution.
[0032] The parameter estimation device 100 then determines the likelihood distribution 50 of the parameters 22, represented by the updated distribution of the multiple ensemble members, as the estimation result of the estimation process. The likelihood distribution 50 of the parameters 22 indicates that the more ensemble members accumulate a value, the higher the likelihood of the parameter 22 at that value. In this way, the parameter estimation device 100 according to this embodiment executes the estimation process to estimate the parameters 22. In particular, because the ensemble Kalman filter executes matrix calculations on the state vector, it is possible to estimate the parameters 22 of each agent model 21 all at once. Therefore, even if the number of parameters 22 is large, the impact on calculation time is small. Therefore, the estimation process according to this embodiment is effective for estimating the parameters 22 of the multi-agent model 10.
[0033] Incidentally, when updating the distributions of multiple ensemble members, the execution interval of multiple execution steps of the multi-agent simulation can be set shorter than the sampling interval of the actual measurement data. For example, when the execution interval of multiple execution steps is set to half the sampling interval of the actual measurement data, filtering using the actual measurement data 11 can be performed on the predicted distribution after two execution steps. However, the parameter estimation device 100 according to this embodiment is configured to execute the estimation process by matching the execution interval of multiple execution steps with the sampling interval of the actual measurement data. This configuration can improve the accuracy of the estimation results of the estimation process (likelihood distribution 50 of parameters 22). This is because multiple ensemble members can be updated by filtering using the actual measurement data 11 at each execution step. As a result, the standard deviation of the likelihood distribution 50 of parameters 22 is reduced, improving the accuracy of the estimation results. Conversely, if the execution interval of multiple execution steps is shorter than the sampling interval of the actual measurement data 11, filtering will not be performed for execution steps for which corresponding actual measurement data 11 does not exist. As a result, the standard deviation of the likelihood distribution 50 of the parameters 22 becomes large.
[0034] In the estimation process, the ensemble Kalman filter has two setting values related to the estimation accuracy.
[0035] One of the setting values related to estimation accuracy is the number of ensemble members k. The larger the number of ensemble members k, the finer the distribution of the multiple ensemble members. Therefore, by increasing the number of ensemble members k, the accuracy of the estimation result (likelihood distribution 50 of parameter 22) can be improved. On the other hand, as described above, when updating the distribution of multiple ensemble members, a multi-agent simulation is executed for each of the multiple ensemble members. For this reason, the larger the number of ensemble members k, the greater the computational cost required to update the distribution of the multiple ensemble members. In this way, setting the number of ensemble members k is a trade-off between improving estimation accuracy and reducing computational cost.
[0036] Another setting value related to estimation accuracy is the magnitude of system noise. The smaller the magnitude of the system noise, the smaller the generation range 40 of the multiple ensemble members. This also reduces the variance in the distribution of the multiple ensemble members after updating. Therefore, by reducing the magnitude of the system noise, the accuracy of the estimation result (likelihood distribution 50 of parameter 22) can be improved. On the other hand, the generation range 40 of the multiple ensemble members can be considered as the search range of parameter 22. Therefore, when the magnitude of the system noise is small, the distribution of the multiple ensemble members is more likely to accumulate around a local solution that is not the best value. This viewpoint will be explained with reference to Figures 4A and 4B.
[0037] FIG. 4A shows a case where the magnitude of the system noise is small. In this case, as shown in FIG. 4A, the generation range 40 of the multiple ensemble members is small. Therefore, the generation range 40 does not include the best value, but only the local solution. As a result, the multiple ensemble members after the update are distributed so as to accumulate around the local solution. Meanwhile, the variance in the distribution of the multiple ensemble members is small. As a result, the likelihood distribution 50 of the parameter 22 has a small standard deviation, but is calculated so that the likelihood of the parameter 22 is high at the local solution.
[0038] Figure 4B shows a case where the magnitude of system noise is large. In this case, as shown in Figure 4B, the generation range 40 of the multiple ensemble members becomes large. Therefore, the generation range 40 includes both local optima and best values. As a result, the multiple ensemble members after the update are distributed around the best values without concentrating on the local optima. Meanwhile, the distribution variance of the multiple ensemble members becomes large. As a result, the likelihood distribution 50 of the parameter 22 has a large standard deviation, but is calculated to avoid the local optima and include the best values.
[0039] In this way, the setting of the magnitude of the system noise involves a trade-off between improving estimation accuracy and avoiding local solutions.
[0040] As described above, the number of ensemble members k and the magnitude of system noise each involve trade-offs between improved estimation accuracy and computational cost and avoidance of local solutions. Therefore, it is difficult to ensure sufficient estimation accuracy, computational cost, and avoidance of local solutions in a single estimation process. For example, if the magnitude of system noise is set large enough to avoid local solutions, the distribution of multiple ensemble members will become more variable. To ensure sufficient estimation accuracy given this variation, the number of ensemble members k must be set significantly larger. This will result in excessive computational cost. Conversely, if the number of ensemble members k is set small enough to reduce computational cost, the distribution of multiple ensemble members will become coarse. To ensure sufficient estimation accuracy given this coarse distribution, the magnitude of system noise must be set significantly smaller. This will make it difficult to avoid local solutions.
[0041] To address the above-described problem, the parameter estimation device 100 according to this embodiment is configured to repeatedly execute an estimation process. The initial values of the parameters 22 when the estimation process is repeated are set using the estimation results of the previous estimation process. Furthermore, the parameter estimation device 100 according to this embodiment is configured to adjust the setting values of the ensemble Kalman filter for each of the multiple iterations of the estimation process. Specifically, the parameter estimation device 100 intentionally sets the estimation accuracy low in the first iteration, i.e., sets the number of ensemble members to be small and the magnitude of the system noise to be large. Then, the parameter estimation device 100 adjusts the setting values for each of the multiple iterations of the estimation process so that the estimation accuracy gradually improves. That is, the parameter estimation device 100 at least one of increases the number of ensemble members from the number of members in the estimation process related to the previous iteration and decreases the magnitude of the system noise from the system noise in the estimation process related to the previous iteration. This allows the estimation process related to the first iteration to avoid a local solution with low computational cost. Furthermore, since the estimation accuracy is gradually improved with each iteration of the estimation process, it becomes possible to estimate the parameters 22 while achieving both high estimation accuracy, low calculation cost, and avoidance of local solutions.
[0042] FIG. 5 is a conceptual diagram illustrating an example in which the parameter estimation device 100 according to this embodiment estimates the parameters 22 by repeatedly executing the estimation process multiple times. FIG. 5 illustrates a case in which the estimation process is repeated three times (iteration #1, iteration #2, and iteration #3). In the example illustrated in FIG. 5, in the estimation process for the first iteration (iteration #1), the number k of ensemble members is set small, and the magnitude of the system noise is set large. As a result, the likelihood distribution 50 of the parameters 22 for iteration #1 is calculated to have a large standard deviation but include the best value. In the estimation process for the next iteration (iteration #2), the initial values of the parameters 22 are set using the estimation results of the estimation process for the previous iteration (iteration #1). For example, the value of the parameters 22 with the highest likelihood from the likelihood distribution 50 of the parameters 22 is set as the initial value. Alternatively, the initial values of the parameters 22 may be set probabilistically based on the likelihood distribution 50 of the parameters 22. Furthermore, in iteration #2, the number of ensemble members k increases and the magnitude of system noise decreases compared to iteration #1. As a result, the likelihood distribution 50 of parameters 22 for iteration #2 is calculated to be more accurate and include the best values than the likelihood distribution 50 for iteration #1. Similarly, the likelihood distribution 50 of parameters 22 for iteration #3 is calculated to be more accurate and include the best values than the likelihood distribution 50 for iteration #2.
[0043] In this way, the parameter estimation device 100 according to this embodiment can effectively estimate the parameters 22 of the multi-agent model 10.
[0044] 2.3 Processing flow 6 and 7 are flowcharts showing the processing flow of the processing executed by the parameter estimation device 100 according to this embodiment. Each step in the processing flow shown in FIGS.
[0045] First, in step S100 , the processing circuit 110 acquires the actual measurement data 11 from the storage device 120 .
[0046] Next, in step S110, the processing circuit 110 initializes the number of iterations of the estimation process.
[0047] Next, in step S120, the processing circuit 110 executes an estimation process. The process executed by the processing circuit 110 in step S120 will now be described with reference to FIG.
[0048] In step S121, the processing circuit 110 determines whether the estimation process is related to the first iteration. When the number of iterations is 0, the processing circuit 110 determines that the estimation process is related to the first iteration. When the number of iterations is 1 or more, the processing circuit 110 determines that the estimation process is not related to the first iteration. If it is determined that the estimation process is related to the first iteration (step S121; Yes), the processing proceeds to step S122. If it is determined that the estimation process is not related to the first iteration (step S121; No), the processing proceeds to step S126.
[0049] In step S122, the processing circuit 110 acquires an estimation range of the parameter 22. The estimation range of the parameter 22 is a range that is assumed in advance as a range of values that the best value of the parameter 22 can take. The estimation range of the parameter 22 may be stored in advance in the storage device 120. The parameter estimation device 100 may also be configured to receive input of the estimation range of the parameter 22 from a user via the input / output device 200.
[0050] After step S122, in step S123, the processing circuit 110 initializes the setting values of the ensemble Kalman filter. The initial setting of the system noise is performed based on the estimation range of the parameter 22. Specifically, the magnitude of the system noise is set according to the magnitude of the difference between the maximum and minimum values of the estimation range of the parameter 22. For example, the standard deviation of the system noise is set to (maximum value - minimum value) / 10. By providing the initial setting of the system noise in this manner, it is possible to ensure that the generation range 40 of at least a plurality of ensemble members includes the best value in the estimation process. The initial setting of the number k of ensemble members may be a predetermined value. The parameter estimation device 100 may be configured to accept an initial setting of the number k of members from a user via the input / output device 200. Alternatively, the initial setting of the number k of ensemble members may be appropriately set taking into account calculation costs. For example, if the maximum number of iterations of the estimation process is preset, the value of the number k of members is set to a value whose product by the maximum number of iterations is equal to or less than a predetermined value.
[0051] After step S123, next in step S124, the processing circuit 110 initializes the initial value of the parameter 22. The initial value of the parameter 22 is initialized based on the estimation range of the parameter 22. Specifically, the median value of the estimation range of the parameter 22 is set as the initial value of the parameter 22. By providing the initial value of the parameter 22 in this manner, it is possible to prevent the initial value of the parameter 22 from deviating excessively from the best value in the estimation process related to the first iteration. After step S124, the process proceeds to step S125.
[0052] In step S125, the processing circuit 110 estimates the parameters 22 using an ensemble Kalman filter based on the actual measurement data 11. The processing circuit 110 obtains a likelihood distribution 50 of the parameters 22 as an estimation result (see FIG. 3). After step S125, the current estimation process ends.
[0053] In step S126, the processing circuit 110 obtains the estimation result of the previous iteration of the estimation process.
[0054] After step S126, in step S127, the processing circuit 110 adjusts the setting values of the ensemble Kalman filter. Specifically, the processing circuit 110 at least one of increases the number of ensemble members k from the number of members k in the estimation process related to the previous iteration and decreases the magnitude of the system noise from the system noise in the estimation process related to the previous iteration. For example, the number of ensemble members k is increased by a predetermined value (e.g., 1). Similarly, the standard deviation of the system noise is decreased by a predetermined value. Alternatively, if the maximum number of iterations of the estimation process and the maximum value of the number of ensemble members k are predetermined, the increase in the number of members k may be given so that the number of members k reaches its maximum value in the estimation process related to the final iteration. Similarly, the minimum value of the magnitude of the system noise may be predetermined.
[0055] After step S127, next in step S128, the processing circuit sets an initial value of the parameter 22. The initial value of the parameter 22 is set using the estimation result of the estimation process related to the previous iteration. For example, the value of the parameter 22 with the highest likelihood from the likelihood distribution 50 of the parameter 22 acquired as the estimation result of the previous iteration is set as the initial value. Alternatively, the initial value of the parameter 22 may be set probabilistically based on the likelihood distribution 50 of the parameter 22. After step S128, the process proceeds to step S125. The process related to step S125 is as described above.
[0056] Thus, in step S120, the processing circuit 110 performs the estimation process.
[0057] Referring again to FIG. 6, after step S120, next in step S130, the processing circuit 110 determines whether or not the termination condition is satisfied. The processing circuit 110 is configured to repeatedly execute the estimation process until the termination condition is satisfied. That is, if the termination condition is not satisfied (step S130; No), the processing circuit 110 increments the number of repetitions (step S140) and executes the estimation process again (step S120). The termination condition may be set appropriately. Examples of the termination condition include the number of repetitions being equal to or greater than a predetermined number, the variance of the likelihood distribution of the parameter 22 being equal to or less than a predetermined value, the number of members k and the set value of the system noise being maximum and minimum, respectively.
[0058] If the termination condition is met (step S130; Yes), the processing circuit 110 outputs the estimation result of the parameters 22 obtained by the estimation process to the input / output device 200 (step S150), and terminates the process.
[0059] 3. Effects As described above, according to this embodiment, the estimation process for estimating the parameters 22 using an ensemble Kalman filter based on the actual measurement data 11 is repeated multiple times. The ensemble Kalman filter performs matrix calculations on a state vector whose elements are the parameters 22, allowing the parameters 22 of each agent model 21 to be estimated simultaneously. Therefore, this embodiment can effectively estimate the parameters 22 of the multi-agent model 10. Furthermore, according to this embodiment, the setting values of the ensemble Kalman filter are adjusted with each iteration of the estimation process so that the estimation accuracy gradually improves. That is, at least one of increasing the number of ensemble members k from the number of members k in the estimation process related to the previous iteration and decreasing the magnitude of the system noise from the system noise in the estimation process related to the previous iteration is performed. This enables the estimation of the parameters 22 while achieving both high estimation accuracy, low computational cost, and avoidance of local solutions. As a result, this embodiment enables the parameters 22 of the multi-agent model 10 to be effectively estimated. [Explanation of symbols]
[0060] 10 multi-agent models, 11 measured data, 20 agents, 22 parameters, 100 parameter estimation device, 110 processing circuit, 120 storage device, 121 computer program, 200 input / output device
Claims
1. A parameter estimation device that estimates parameters of a simulation model that executes a multi-agent simulation, comprising: a processing circuit; The processing circuitry acquiring actual measurement data relating to a target event of the multi-agent simulation; An estimation process is repeatedly performed a plurality of times to estimate the parameters using an ensemble Kalman filter based on the actual measurement data through a plurality of execution steps of the multi-agent simulation. It is configured as follows: In the estimation process, the processing circuitry At least one of increasing the number of ensemble members of the ensemble Kalman filter from the number of members in the estimation process related to a previous iteration and decreasing the magnitude of system noise of the ensemble Kalman filter from the system noise in the estimation process related to a previous iteration is performed; The initial value of the parameter is set using the estimation result of the parameter obtained by the estimation process in the previous iteration. It is configured as follows: Parameter estimator.
2. 2. The parameter estimation device according to claim 1, In the estimation process for a first iteration, the processing circuitry obtaining an estimated range for the parameter; The median value of the estimation range is set as the initial value of the parameter. It is configured as follows: Parameter estimator.
3. 3. The parameter estimation device according to claim 2, In the estimation process for the first iteration, the processing circuitry further The magnitude of the system noise of the ensemble Kalman filter is set according to the magnitude of the difference between the maximum value and the minimum value of the estimation range. It is configured as follows: Parameter estimator.
4. 2. The parameter estimation device according to claim 1, The processing circuitry further comprises: The estimation process is performed by matching the execution intervals of the plurality of execution steps of the multi-agent simulation with the sampling intervals of the actual measurement values of the actual measurement value data. It is configured as follows: Parameter estimator.
5. 5. A parameter estimation device according to claim 1, the parameters include characteristic values that characterize the behavior of each agent included in the simulation model; The actual measurement data includes time series data of actual operations of components of the event corresponding to each of the agents. Parameter estimator.
6. A parameter estimation method for estimating parameters of a simulation model that executes a multi-agent simulation, comprising: The computer acquiring actual measurement data relating to a target event of the multi-agent simulation; An estimation process is repeatedly performed a plurality of times to estimate the parameters using an ensemble Kalman filter based on the actual measurement data through a plurality of execution steps of the multi-agent simulation. This includes: In the estimation process, the computer At least one of increasing the number of ensemble members of the ensemble Kalman filter from the number of members in the estimation process related to a previous iteration and decreasing the magnitude of system noise of the ensemble Kalman filter from the system noise in the estimation process related to a previous iteration is performed; The initial value of the parameter is set using the estimation result of the parameter obtained by the estimation process in the previous iteration. Including Parameter estimation methods.
Citation Information
Patent Citations
Bayesian inference method for mixed model and recording medium with recorded bayesian inference program for mixed model
JP2001202358A
Signal processing apparatus, signal processing method and computer program
JP2015052491A
Information processing system, information processing device, simulation method, and recording medium containing simulation program
WO2017170086A1