Visualization Device

The visualization device addresses the challenge of unclear subcost contributions in continuous optimization by calculating and displaying their contributions, improving user understanding and decision-making in optimization processes.

JP7613806B2Active Publication Date: 2025-01-15PREFERRED NETWORKS INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2021017093
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-02-05
Publication Date
2025-01-15
Estimated Expiration
2041-02-05

AI Technical Summary

Technical Problem

Existing continuous optimization algorithms struggle to clearly illustrate the contribution of each subcost to the optimal solution when dealing with multidimensional input and output variables, making it difficult for users to understand the relationship between subcosts and the overall solution.

Method used

A visualization device that calculates and visualizes the contribution of subcosts to the total cost by using a cost calculation unit and a contribution calculation unit, allowing for the display of these relationships through graphical representations.

Benefits of technology

Enhances user understanding of the relationship between subcosts and the optimal solution, facilitating better decision-making in optimization processes.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007613806000016
    Figure 0007613806000016
  • Figure 0007613806000017
    Figure 0007613806000017
  • Figure 0007613806000018
    Figure 0007613806000018
Patent Text Reader

Abstract

To provide a visualization device that makes it easy to grasp a relation between each sub-cost and a solution when a solution is calculated by an optimization algorithm for a model for inputting / outputting multi-dimensional variables.SOLUTION: A visualization device has a visualization unit that calculates and visualizes a contribution of a sub-cost of a cost to each difference between a solution of an input variable of a model for reducing the cost and a solution of an input variable of the model prior to reducing the cost.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to a visualization device. [Background technology]

[0002] A continuous optimization algorithm is known that adjusts input values ​​so as to minimize the output value (cost) of an objective function and calculates an optimal solution. According to the continuous optimization algorithm, for example, in a prediction model that inputs a control value to predict a process value, it is possible to calculate an optimal control value (optimal solution) that minimizes the error (cost) between the predicted process value and a target value.

[0003] Here, when the input and output variables of the prediction model are multidimensional, the cost is expressed as a linear sum of multiple sub-costs. However, when the cost is expressed as a linear sum of multiple sub-costs, there is a problem that it is difficult for the user to grasp how each sub-cost contributed to each optimal solution. [Prior art documents] [Patent documents]

[0004] [Patent Document 1] JP 2020-61065 A [Patent Document 2] JP 2005-43828 A [Patent Document 3] Patent No. 2005-285090 [Patent Document 4] JP 2013-151833 A Summary of the Invention [Problem to be solved by the invention]

[0005] The present disclosure provides a visualization device that makes it easy to grasp the relationship between each sub-cost and a solution when a solution is calculated by an optimization algorithm for a model that inputs and outputs multidimensional variables. [Means for solving the problem]

[0006] A visualization device according to an aspect of the present disclosure has, for example, the following configuration. a cost calculation unit that calculates a cost from a linear sum of each sub-cost calculated based on each output variable and each target value of a model that inputs and outputs multidimensional variables; For at least one of the input variables of the model, Reduce costs, The above A solution for the input variables of the model and a solution for the input variables of the model before the cost is reduced. difference a visualization unit for calculating and visualizing the contribution of sub-costs of the cost to the and has. [Brief description of the drawings]

[0007] [Figure 1] FIG. 1 is a diagram illustrating an example of a system configuration of an entire control system including a visualization device. [Diagram 2] FIG. 1 is a first diagram showing an example of each device constituting a control system. [Diagram 3] FIG. 2 is a second diagram showing an example of each device constituting the control system. [Figure 4] FIG. 2 is a diagram illustrating an example of a hardware configuration of a visualization device. [Diagram 5] FIG. 13 is a diagram illustrating a specific example of a process performed by a cost calculation unit. [Figure 6] FIG. 11 is a first diagram showing a specific example of the process of the contribution calculation unit. [Figure 7] FIG. 11 is a first diagram showing a specific example of processing by the graph generation unit. [Figure 8] 1 is a first flowchart showing the flow of a visualization process. [Figure 9] FIG. 13 is a second diagram showing a specific example of the process of the contribution calculation unit. [Figure 10] 13 is a second flowchart showing the flow of the visualization process. [Figure 11] FIG. 2 is a second diagram showing a specific example of the processing of the graph generation unit. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0008] Hereinafter, each embodiment will be described with reference to the accompanying drawings. In this specification and the drawings, components having substantially the same functions are denoted by the same reference numerals, and redundant description will be omitted.

[0009] [First embodiment] <Control system configuration> First, a description will be given of a system configuration of a control system including a visualization device according to the first embodiment. Fig. 1 is a diagram showing an example of a system configuration of a control system including a visualization device.

[0010] 1(a) shows a case where the control system has a control device 110 and a visualization device 120. In the control system shown in FIG. 1(a), the control device 110 may have a prediction model unit that models a predetermined process. The control device 110 may also function as a simulator that is capable of executing a continuous optimization algorithm and calculates an optimal solution that minimizes or reduces the error between a target value in a predetermined process and a process value predicted by the prediction model unit.

[0011] Specifically, the control device 110 may operate the prediction model unit by inputting a control value, and the prediction model unit may predict a process value (prediction value).

[0012] Furthermore, the control device 110 may transmit the process value (predicted value) predicted by the prediction model unit to the visualization device 120, and may obtain a cost calculated based on an error from a target value in a predetermined process from the visualization device 120. Furthermore, the control device 110 may adjust the control value so as to minimize or reduce the obtained cost by executing a continuous optimization algorithm. Furthermore, the control device 110 may calculate an optimal control value (optimum solution) by repeating these adjustment processes.

[0013] 1(a), the visualization device 120 may have an objective function unit, which may calculate the cost. The visualization device 120 may visualize the adjustment process until the control device 110 calculates the optimal solution.

[0014] Specifically, the visualization device 120 may calculate the cost based on the error between a process value (predicted value) transmitted from the control device 110 and a target value in a predetermined process. In this embodiment, the prediction model unit assumes that the input / output variables (control values, process values) are multidimensional, and the visualization device 120 may calculate the cost based on the error between the target values, the number of which is equal to the number of process values. Hereinafter, the cost calculated based on each process value (predicted value) is referred to as a "sub-cost," and the cost obtained by calculating the linear sum of each sub-cost is referred to as the "cost."

[0015] The visualization device 120 may calculate a sub-cost corresponding to each process value (predicted value), or may calculate a cost from a linear sum of each sub-cost. The visualization device 120 may also transmit the calculated cost to the control device 110.

[0016] Furthermore, the visualization device 120 may acquire each sub-cost in the adjustment process until the optimal solution is calculated, and may calculate and visualize the contribution of each acquired sub-cost to the optimal solution.

[0017] 1(b) shows a case where the control system includes a control device 110, a visualization device 120, and a process 130. In the control system shown in FIG. 1(b), the control device 110 may include a prediction model unit that models the process 130. The control device 110 may also be capable of executing a continuous optimization algorithm, and may function as a controller that performs model predictive control on the process 130 by calculating an optimal control value (optimum solution) for a target value in the process 130.

[0018] Specifically, the control device 110 may transmit a process value (predicted value) predicted by the prediction model unit by inputting a control value to the visualization device 120, and may obtain a cost calculated based on an error from a target value in a predetermined process from the visualization device 120. Furthermore, the control device 110 may adjust the control value so as to minimize or reduce the obtained cost by executing a continuous optimization algorithm. Furthermore, the control device 110 may repeat these adjustment processes to calculate an optimal control value (optimum solution) and control the process 130.

[0019] In the control system shown in FIG. 1(b), the visualization device 120 is the same as the visualization device 120 in the control system shown in FIG. 1(a), so a description thereof will be omitted here.

[0020] <Each device that composes the control system> Next, each device constituting each control system shown in FIGS. 1(a) and 1(b) will be described.

[0021] (1) Each device constituting the control system shown in Figure 1(a) First, the devices constituting the control system shown in Fig. 1(a) will be described. Fig. 2 is a first diagram showing an example of the devices constituting the control system.

[0022] 2, the control device 110 may include a prediction model unit 210 that models a predetermined process, and an optimization unit 220. The prediction model unit 210 receives control values ​​x1, x2, . . . x as multidimensional (r-dimensional in the example of FIG. 2) input variables. r may be input. Control values ​​x1, x2, ... x r indicates, for example, the opening degree of r valves in a given process.

[0023] The prediction model unit 210 calculates the control values ​​x1, x2, . . . x r The input may be a multi-dimensional (s-dimensional in the example of Fig. 2) output variable, and the process values ​​P1, P2, ..., P sThe process values ​​P1, P2, ... P s Let s refer to, for example, s sensor values ​​(measurements of a thermometer, a pressure gauge, a flow meter, etc.) of a given process.

[0024] The optimization unit 220 may implement a continuous optimization algorithm and optimizes the control values ​​x1, x2, ... x to minimize or reduce the cost transmitted from the objective function unit 230 of the visualization device 120. r In addition, the optimization unit 220 may adjust the adjusted control values ​​x1, x2, . . . x r may be input to the prediction model unit 210 and also transmitted to the visualization unit 240 of the visualization device 120.

[0025] In addition, the optimization unit 220 repeats the adjustment process until the cost transmitted from the objective function unit 230 of the visualization device 120 is minimized or reduced, thereby obtaining optimal control values ​​(optimal solutions) x1, x2, . . . x r may be calculated.

[0026] 2, the visualization device 120 may include an objective function unit 230 and a visualization unit 240. Note that the visualization device 120 may realize the objective function unit 230 and the visualization unit 240 by executing a visualization program.

[0027] The objective function unit 230 may calculate the sub-costs and the cost based on the output variables of the prediction model unit 210.

[0028] Specifically, the objective function unit 230 stores target values ​​t1, t2, . . . t in a predetermined process, the number of which corresponds to the number of process values ​​transmitted from the control device 110. s may be set in advance. In the objective function unit 230, the process values ​​P1, P2, . . . P transmitted from the control device 110 are s and target values ​​t1, t2, t s By calculating the error between each of the sub-costs C1, C2, ... C sThe objective function unit 230 may calculate the calculated sub-costs C1, C2, . . . C s The visualization unit 240 may be notified of this.

[0029] The objective function unit 230 may also include a cost calculation unit 231, which calculates the sub-costs C1, C2, . . . C s The linear sum of the cost C total The cost calculation unit 231 may transmit the calculated cost to the optimization unit 220 of the control device 110.

[0030] The visualization unit 240 may calculate and visualize the contribution of each sub-cost to the optimal control value (optimal solution) based on the control value and sub-cost obtained in the adjustment process until the optimization unit 220 executes the continuous optimization algorithm and calculates the optimal solution.

[0031] Specifically, the visualization unit 240 may include a contribution calculation unit 241 and a graph generation unit 242. The contribution calculation unit 241 calculates the contributions of the control values ​​x1, x2, . . . x by executing a continuous optimization algorithm by the optimization unit 220. r Each time the n-th adjustment process is performed, the control unit 220 may acquire each adjusted control value transmitted from the optimization unit 220 and each sub-cost notified from the objective function unit 230. Note that Fig. 2 shows an example in which the control values ​​transmitted from the optimization unit 220 and each sub-cost notified from the objective function unit 230 are acquired by performing the n-th adjustment process in the continuous optimization algorithm.

[0032] Then, the contribution calculation unit 241 may calculate the contribution to the optimal solution in sub-cost units based on each sub-cost acquired each time.

[0033] The graph generating unit 242 may extract each sub-cost that contributes in a direction from the initial solution toward the optimal solution and each sub-cost that contributes in a direction opposite to the direction from the initial solution toward the optimal solution from among the contributions to the optimal solution calculated in sub-cost units. Furthermore, the graph generating unit 242 may graph and display each of the extracted sub-costs based on the magnitude of the contribution.

[0034] (2) Each device that constitutes the control system shown in Figure 1(b) Next, each device constituting the control system shown in Fig. 1(b) will be described. Fig. 3 is a second diagram showing an example of each device constituting the control system. As described above, the functions of the visualization device 120 are the same in Fig. 1(a) and Fig. 1(b), so here, differences in the functions of the control device 110 and the functions of the process 130 will be described.

[0035] As shown in FIG. 3, in the control device 110, the prediction model unit 210 calculates the process values ​​(actual measured values) P′1, P′2, . . . P′ transmitted from the process 130. m The predicted process value (predicted value) may be corrected based on the above.

[0036] In the control device 110, the optimization unit 220 calculates optimal control values ​​(optimal solutions) x1, x2, . . . x by executing the continuous optimization algorithm. r may be sent to the control target 260 of the process 130.

[0037] 3, the process 130 may have a controlled object 260 and a measuring device 270. In this embodiment, the controlled object 260 may be r valves, and the measuring device 270 may be s sensors (a thermometer, a pressure gauge, a flow meter, etc.).

[0038] Control values ​​(optimal solutions) x1, x2, . . . x transmitted from the optimization unit 220 r When the controlled object 260 is controlled based on the above, the measuring device 270 may measure the change in the controlled object 260 as a sensor value. The sensor value measured by the measuring device 270 is represented by process values ​​(actual measured values) P'1, P'2, . . . P' m may be transmitted to the prediction model unit 210 as

[0039] <Hardware configuration of visualization device> Next, a hardware configuration of the visualization device 120 will be described. Fig. 4 is a diagram showing an example of a hardware configuration of the visualization device. As shown in Fig. 4, the visualization device 120 may have, as components, a processor 401, a main storage device (memory) 402, an auxiliary storage device 403, a network interface 404, and a device interface 405. The visualization device 120 is realized as a computer in which these components are connected via a bus 406.

[0040] In the example of FIG. 4, the visualization device 120 is shown as having one of each component, but the visualization device 120 may have a plurality of the same components. In the example of FIG. 2, one visualization device 120 is shown, but the visualization program may be installed in a plurality of visualization devices, and each of the plurality of visualization devices may execute the same or different parts of the processing of the visualization program. In this case, the visualization device may take the form of distributed computing in which the entire processing is executed by each of the visualization devices communicating via the network interface 404 or the like. In other words, the visualization device 120 may be configured as a system in which one or more computers execute commands stored in one or more storage devices to realize functions. In addition, the visualization device 120 may be configured to process various data transmitted from the control device 110 in one or more visualization devices provided on the cloud, and transmit the processing results to the customer.

[0041] Various calculations of the visualization device 120 may be executed in parallel using one or more processors, or using multiple visualization devices that communicate via the communication network 410. Furthermore, various calculations may be distributed to multiple computing cores in the processor 401 and executed in parallel. Furthermore, a part or all of the processes, means, etc. of the present disclosure may be executed by an external device 420 (at least one of a processor and a storage device) provided on a cloud that can communicate with the visualization device 120 via the communication network 410. In this way, the visualization device 120 may take the form of parallel computing using one or more computers.

[0042] The processor 401 may be an electronic circuit (processing circuit, processing circuitry, CPU, GPU, FPGA, ASIC, or the like). The processor 401 may also be a semiconductor device including a dedicated processing circuit. The processor 401 is not limited to an electronic circuit using electronic logic elements, and may be realized by an optical circuit using optical logic elements. The processor 401 may also include a calculation function based on quantum computing.

[0043] The processor 401 performs various calculations based on various data and commands input from each device, etc., in the internal configuration of the visualization device 120, and outputs the calculation results and control signals to each device, etc. The processor 401 controls each component of the visualization device 120 by executing an OS (Operating System), applications, etc.

[0044] Furthermore, processor 401 may refer to one or more electronic circuits arranged on one chip, or to one or more electronic circuits arranged on two or more chips or devices. When multiple electronic circuits are used, the electronic circuits may communicate with each other by wire or wirelessly.

[0045] The main memory device 402 is a memory device that stores instructions executed by the processor 401 and various data, and the various data stored in the main memory device 402 is read by the processor 401. The auxiliary memory device 403 is a memory device other than the main memory device 402. Note that these memory devices refer to any electronic components capable of storing various data, and may be semiconductor memories. The semiconductor memories may be either volatile memories or nonvolatile memories. The memory device for saving various data in the visualization device 120 may be realized by the main memory device 402 or the auxiliary memory device 403, or may be realized by an internal memory built into the processor 401.

[0046] Furthermore, a plurality of processors 401 may be connected (coupled) to one main storage device 402, or a single processor 401 may be connected. Alternatively, a plurality of main storage devices 402 may be connected (coupled) to one processor 401. When the visualization device 120 is configured with at least one main storage device 402 and a plurality of processors 401 connected (coupled) to the at least one main storage device 402, the visualization device 120 may include a configuration in which at least one of the plurality of processors 401 is connected (coupled) to at least one main storage device 402. This configuration may also be realized by the main storage devices 402 and the processors 401 included in the plurality of visualization devices 120. Furthermore, the visualization device 120 may include a configuration in which the main storage device 402 is integrated with the processor (for example, a cache memory including an L1 cache and an L2 cache).

[0047] The network interface 404 is an interface for connecting to the communication network 410 wirelessly or by wire. An appropriate interface, such as one conforming to an existing communication standard, is used for the network interface 404. The network interface 404 may exchange various data with the control device 110 and other external devices 420 connected via the communication network 410. The communication network 410 may be any one of a wide area network (WAN), a local area network (LAN), a personal area network (PAN), etc., or a combination thereof, and may be any network that exchanges information between a computer and the control device 110 or other external devices 420. An example of a WAN is the Internet, an example of a LAN is IEEE802.11 or Ethernet, and an example of a PAN is Bluetooth (registered trademark) or NFC (Near Field Communication).

[0048] The device interface 405 is an interface such as a USB that directly connects to an external device 430 .

[0049] The external device 430 is a device connected to a computer. The external device 430 may be, for example, an input device. The input device is, for example, a device such as a camera, a microphone, a motion capture device, various sensors, a keyboard, a mouse, or a touch panel, and provides acquired information to the computer. The external device 430 may also be a device having an input unit, a memory, and a processor, such as a personal computer, a tablet terminal, or a smartphone.

[0050] Moreover, the external device 430 may be, for example, an output device. The output device may be, for example, a display device such as an LCD (Liquid Crystal Display), a CRT (Cathode Ray Tube), a PDP (Plasma Display Panel), or an organic EL (Electro Luminescence) panel, or may be a speaker that outputs sound or the like. Alternatively, the output device may be a device including an output unit, a memory, and a processor, such as a personal computer, a tablet terminal, or a smartphone.

[0051] Furthermore, the external device 430 may be a storage device (memory). For example, the external device 430 may be a network storage or the like, or the external device 430 may be a storage such as a HDD.

[0052] Furthermore, the external device 430 may be a device having some of the functions of the constituent elements of the visualization device 120. In other words, the computer may transmit or receive some or all of the processing results of the external device 430.

[0053] <Specific example of processing by the cost calculation unit> Next, a specific example of the process of the cost calculation unit 231 of the objective function unit 230 of the visualization device 120 will be described. FIG. 5 is a diagram showing a specific example of the process of the cost calculation unit. As described above, the cost calculation unit 231 calculates the cost C total , and sub-cost C i It may also be calculated by a linear sum of the above (see the formula below).

[0054]

number

[0055] <Specific example of the process of the contribution calculation unit> Next, a specific example of the process of the contribution calculation unit 241 of the visualization unit 240 of the visualization device 120 will be described. Fig. 6 is a first diagram showing a specific example of the process of the contribution calculation unit.

[0056] As shown in FIG. 6, the contribution calculation unit 241 x1 optimization process calculation unit 601, x2 optimization process calculation unit 602, C1 contribution calculation unit 610_1, C2 contribution calculation unit 610_2, s A contribution calculation unit 610_s; C1 contribution sum calculation unit 630_1, C2 contribution sum calculation unit 630_2, s A contribution sum calculation unit 630_s; may have the following structure:

[0057] The x1 optimization process calculation unit 601 calculates the control values ​​x1, x2, . . . x1 by the optimization unit 220 using the "steepest descent method". r When calculating the optimal solution by repeating the adjustment process of j (Here, j=1)) the amount of change may be calculated.

[0058] In general, the steepest descent method is 1_0 Starting from x1_n, the optimal solution x is obtained by repeating the adjustment process until x1_n converges based on the following formula. 1_m (When the adjustment process is optimized by repeating it m times).

[0059]

number

[0060] Similarly, the x2 optimization process calculation unit 602 calculates the control values ​​x1, x2, . . . x2 by the optimization unit 220 using the "steepest descent method". r When calculating the optimal solution by repeating the above adjustment process, the amount of change in the control value x2 each time may be calculated.

[0061] In the contribution calculation unit 241, the optimization unit 220 calculates the control values ​​x1, x2, . . . x r For each of them, the control values ​​x1, x2, ... x when calculating the optimal solution by repeating the adjustment process are r However, for the sake of simplicity, in FIG. 6, the amount of change in the x3 optimization process calculation unit is calculated. r The optimization process calculation section is omitted.

[0062] The C1 contribution calculation unit 610_1 is a calculation unit for calculating a sub-cost C1 (the i-th sub-cost C i (here, i=1)) may be extracted and stored in the m-times storage unit 620_1. Note that the m-times storage unit 620_1 is realized in the auxiliary storage device 403, for example.

[0063] In addition, among the n-th change amount of the control value x1, the change amount based on the sub-cost C1 may be calculated based on the following formula (generalized as -α j ×C' i (x n-1 ) The following formula is for i=1, j=1.

[0064]

number

[0065] Of the n-th change amount of the control value x1, the change amount based on the sub-cost C2 may be calculated based on the following formula.

[0066]

number

[0067] In addition, among the n-th change in the control value x1, the sub-cost C s The amount of change based on may be calculated based on the following formula:

[0068]

number

[0069]

number

[0070] Similarly, the C2 contribution sum calculation unit 630_2 may repeat the adjustment process until x1_n converges, and the optimal solution x 1_m may be read out from the m-times storage unit 620_2 at the time when the change amount of the sub-cost C2 for m times is calculated. In addition, the C2 contribution sum calculation unit 630_2 calculates the sum φ of the change amount of the sub-cost C2 based on the read out change amount of the sub-cost C2 for m times. 1_2 may be calculated (see formula below).

[0071]

number

[0072] Similarly, C s The contribution sum calculation unit 630_s may repeat the adjustment process until x1_n converges, and the optimal solution x 1_m The sub-cost C stored in the m-times storage unit 620_s at the time when s The amount of change in m times of C s The contribution sum calculation unit 630_s calculates the read sub-cost C s The sum of the changes in the sub-cost C2 based on the changes in m times 1_s may be calculated (see formula below).

[0073]

number

[0074] <Example of graph generation process> Next, a description will be given of a specific example of the processing performed by the graph generating unit 242. FIG 7 is a first diagram showing a specific example of the processing performed by the graph generating unit 242.

[0075] As shown in FIG. 7, the graph generating unit 242 may include a solution acquiring unit 741, a contribution information acquiring unit 742, and a high-order extracting unit 743.

[0076] The solution acquisition unit 741 receives the initial solution (the zeroth control values ​​x1, x2, . . . x) from the control device 110. r ) and the optimal solution (mth control value x1, x2, . . . x r 7, the solution acquisition unit 741 may acquire the initial solution x 1_0 And the optimal solution x for control value x1 1_m and displayed on graph 700.

[0077] In the graph 700, the initial solution x 1_0 is "11.47" (see reference numeral 720), and the optimal solution x 1_m indicates that the time was "11.66" (code 730).

[0078] The contribution information acquisition unit 742 receives the control values ​​x1, x2, . . . x from the contribution calculation unit 241. r The contribution of each sub-cost in each of the control values ​​may be acquired. The example in Fig. 7 shows the state where the contribution of each sub-cost in the control value x1 is acquired.

[0079] The upper extraction unit 743 extracts the control value x1 from the initial solution x 1_0 From the optimal solution x 1_m From the amount of change when the value changes to , a predetermined number of sub-costs (here, as an example, the top four) that contribute most positively and a predetermined number of sub-costs (here, as an example, the top four) that contribute most negatively may be extracted.

[0080] The top extraction unit 743 may also arrange sub-costs with large positive contributions in descending order from the right in a band graph according to the magnitude of the contribution (see band graphs 701 to 704). In this case, the top extraction unit 743 determines whether the position of the right end of the band graph 701 of the sub-cost with the largest positive contribution is the same as the optimal solution x 1_m The positions may be arranged to coincide with those of the

[0081] In this way, the optimal solution x 1_m and the initial solution x 1_0 By graphing the positive contribution of each sub-cost to the difference between 1_m This makes it easier to understand the relationship.

[0082] The top extraction unit 743 may also arrange sub-costs with large negative contributions in descending order from the left in a band graph according to the magnitude of the contribution (see band graphs 711 to 714). In this case, the top extraction unit 743 determines whether the position of the left end of the band graph 711 of the sub-cost with the largest negative contribution is the same as the position of the optimal solution x 1_m The positions may be arranged to coincide with those of the

[0083] In this way, the optimal solution x 1_m and the initial solution x 1_0 By graphing the negative contribution of each sub-cost to the difference between 1_m This makes it easier to understand the relationship.

[0084] As shown in FIG. 7, bar graphs 701-704 of sub-costs having a large positive contribution and bar graphs 711-714 of sub-costs having a large negative contribution may be configured to have different display modes, such as display colors or display patterns.

[0085] <Visualization process flow> Next, a description will be given of the flow of visualization processing by the visualization device 120. Fig. 8 is a first flowchart showing the flow of the visualization processing.

[0086] In step S801, the visualization device 120 may input "0" to a counter n that counts the number of times the optimization unit 220 performs the adjustment process.

[0087] In step S802, the visualization device 120 may obtain a multidimensional output variable (process value) predicted by inputting the n-th multidimensional input variable (control value) to the prediction model unit 210.

[0088] In step S803, the visualization device 120 may calculate each sub-cost by calculating an error between each of the acquired multidimensional output variables (process values) and the corresponding target value. The visualization device 120 may also calculate a cost based on each sub-cost and transmit the cost to the control device 110.

[0089] In step S804, the visualization device 120 may increment a counter n.

[0090] In step S805, in response to the transmission of the cost, the visualization device 120 may acquire, in the control device 110, a predicted multidimensional output variable (process value) by inputting the multidimensional input variable (control value) after the nth adjustment process into the predictive model unit 210.

[0091] In step S806, the visualization device 120 may calculate each sub-cost by calculating an error between each of the acquired multidimensional output variables (process values) and the corresponding target value. The visualization device 120 may also calculate a cost based on each sub-cost and transmit the cost to the control device 110.

[0092] In step S807, the visualization device 120 may calculate the difference between the multidimensional input variables (control values) after the nth adjustment process based on the (n-1)th cost and the multidimensional input variables (control values) before the adjustment process, and may calculate the contribution of each sub-cost to each calculated difference.

[0093] In step S808, the visualization device 120 may determine whether or not an optimal solution has been calculated in the control device 110. If it is determined in step S808 that an optimal solution has not been calculated (NO in step S808), the process may return to step S804.

[0094] On the other hand, if it is determined in step S808 that the optimal solution has been calculated (YES in step S808), the process may proceed to step S809.

[0095] In step S809, the visualization device 120 may calculate the contribution of each sub-cost by calculating the sum of the amount of change in each sub-cost during m adjustment processes until the optimal solution is calculated.

[0096] In step S810, the visualization device 120 may visualize the contribution of each sub-cost by graphing the contribution of each sub-cost.

[0097] <Summary> As is clear from the above description, the visualization device according to the first embodiment has It may be connected to a control device having an optimization unit that executes a continuous optimization algorithm by the steepest descent method. Sub-costs corresponding to each output variable of a prediction model that inputs and outputs multi-dimensional variables owned by the control device may be calculated, and the cost may be calculated as a linear sum of each sub-cost. The contribution of each sub-cost to the difference between an optimal solution of the multidimensional input variables of the predictive model that minimizes or reduces the cost, calculated by the control device, and an initial solution, which is the multidimensional input variables of the predictive model before the cost is minimized or reduced, may be calculated and visualized.

[0098] As a result, according to the first embodiment, when an optimal solution is calculated by an optimization algorithm using the steepest descent method for a prediction model that inputs and outputs multidimensional variables, it becomes easier to grasp the relationship between each sub-cost and the optimal solution.

[0099] [Second embodiment] In the above first embodiment, the optimization unit uses the steepest descent method as the continuous optimization algorithm. In contrast, in the second embodiment, the optimization unit uses a continuous optimization algorithm other than the steepest descent method. The second embodiment will be described below, focusing on the differences from the above first embodiment.

[0100] <Specific example of the process of the contribution calculation unit> First, a specific example of the process of the contribution calculation unit of the visualization unit 240 of the visualization device 120 according to the second embodiment will be described. Fig. 9 is a second diagram showing a specific example of the process of the contribution calculation unit.

[0101] As shown in FIG. 9, the contribution calculation unit 900 x1 optimization process calculation unit 901, x2 optimization process calculation unit 902, C1 contribution calculation unit 910_1, C2 contribution calculation unit 910_2, s A contribution calculation unit 910_s; a correction unit 920_1, a correction unit 920_2, a correction unit 920_s, C1 contribution sum calculation unit 940_1, C2 contribution sum calculation unit 940_2, s A contribution sum calculation unit 940_s; may have the following structure:

[0102] The x1 optimization process calculation unit 901 calculates the control values ​​x1, x2, ... x r When calculating the optimal solution by repeating the above adjustment process, the amount of change in the control value x1 each time may be calculated.

[0103] In general, in the case of continuous optimization algorithms other than the steepest descent method, adjustment processing is repeated while considering not only the first-order differential but also the second-order differential. However, when the second-order differential is considered, it becomes difficult to calculate the contribution for each sub-cost. Therefore, in this embodiment, the amount of change in the control value during each adjustment processing is approximated as shown in the following formula, assuming that the influence of the first-order differential is large.

[0104]

number

[0105] Similarly, the x2 optimization process calculation unit 902 calculates the control values ​​x1, x2, . . . x2 by the optimization unit 220 using a "continuous optimization algorithm other than the steepest descent method." r When calculating the optimal solution by repeating the above adjustment process, the amount of change in the control value x2 each time may be calculated.

[0106] In the contribution calculation unit 900, the optimization unit 220 calculates the control values ​​x1, x2, . . . x r For each of them, the control values ​​x1, x2, ... x when calculating the optimal solution by repeating the adjustment process are r However, for the sake of simplicity, in FIG. 9, the amount of change in each time is calculated from the x3 optimization process calculation unit. r The optimization process calculation section is omitted.

[0107] The C1 contribution calculation unit 910_1 is a calculation unit for calculating a sub-cost C1 (the i-th sub-cost C i (here, i=1)) may be extracted.

[0108] In addition, among the n-th change amount of the control value x1, the change amount based on the sub-cost C1 may be calculated based on the following formula (generalized, −β j_n ×C' i (x n-1 ) The following formula is for i=1, j=1.

[0109]

number

[0110] Of the n-th change amount of the control value x1, the change amount based on the sub-cost C2 may be calculated based on the following formula.

[0111]

number

[0112] In addition, among the n-th change in the control value x1, the sub-cost C s The amount of change based on may be calculated based on the following formula:

[0113]

number

[0114] β 1_n If it is determined that the n-th sub-cost C1 is smaller than 0, the correction unit 920_1 may set the amount of change based on the n-th sub-cost C1 to zero and store it in the m-times storage unit 930_1. Furthermore, the correction unit 920_1 may correct the amounts of change based on the sub-costs C1 up to the (n-1)th time that have already been stored in the m-times storage unit 930_1.

[0115] Specifically, x 1_0 From x 1_n The change from -β 1_0 ×C'1(x0) to -β 1_n ×C'1(x n-1 ) so that the change in 1_0 ~-β 1_n Alternatively, the values ​​of may be corrected by multiplying them by a constant.

[0116] Similarly, the correction unit 920_2 may obtain the amount of change based on the sub-cost C2 extracted by the C2 contribution calculation unit 910_2 and store it in the m-times storage unit 930_2. 1_n It may be determined whether β is greater than or equal to 0. 1_n If it is determined that the n-th sub-cost C2 is smaller than 0, the correction unit 920_2 may set the amount of change based on the n-th sub-cost C2 to zero and store it in the m-times storage unit 930_2. Furthermore, the correction unit 920_2 may correct the amounts of change based on the sub-costs C2 up to the (n-1)th time that have already been stored in the m-times storage unit 930_2.

[0117] Similarly, the correction unit 920_s s Sub-cost C extracted by the contribution calculation unit 910_s sThe correction unit 920_s may obtain the amount of change based on the m-times change and store it in the storage unit 930_s. s β calculated by the contribution calculation unit 910_s 1_n It may be determined whether β is greater than or equal to 0. 1_n If it is determined that the n-th sub-cost C s The correction unit 920_s may store the m-th sub-cost C s The amount of change based on this may be corrected.

[0118] For example, the contribution calculation unit 900 calculates the control value x1 as follows: The amount of change in the control value x1 up to the nth iteration (=x 1_n -x 1_0 )of, Sub-costs C1 to C2 up to the nth time stored in the storage units 930_1 to 930_s for m times by the correction units 920_1 to 920_s s The sum of the changes in each of If the result of division by using is a negative value, the contribution of each sub-cost to the control value x1 does not need to be calculated.

[0119] The C1 contribution sum calculation unit 940_1 repeats the adjustment process until x1_n converges to obtain the optimal solution x 1_m may be read out from the m-times storage unit 930_1 at the time when the change amount of the sub-cost C1 for m times is calculated. In addition, the C1 contribution sum calculation unit 940_1 calculates the sum φ of the change amount of the sub-cost C1 based on the read out change amount of the sub-cost C1 for m times. 1_1 may be calculated (see formula below).

[0120]

number

[0121] Similarly, the C2 contribution sum calculation unit 940_2 repeats the adjustment process until x1_n converges, and obtains the optimal solution x 1_m may be stored in the m-times storage unit 930_2 at the time of calculation, or the amount of change in the sub-cost C2 for m times may be read out. In addition, the C2 contribution total calculation unit 940_2 calculates the total sum φ of the sub-cost C2 based on the amount of change in the sub-cost C2 for m times that has been read out. 1_2 may be calculated (see formula below).

[0122]

number

[0123] Similarly, C s The contribution sum calculation unit 940_s repeats the adjustment process until x1_n converges, and obtains the optimal solution x 1_m may be stored in the storage unit 930_s when it is calculated, and the sub-cost C s The amount of change in m times of C s The contribution sum calculation unit 940_s calculates the read sub-cost C s Sub-cost C based on the mth change in s The sum of φ 1_s Calculate (see formula below).

[0124]

number

[0125] <Visualization process flow> Next, a description will be given of the flow of visualization processing by visualization device 120. Fig. 10 is a second flowchart showing the flow of visualization processing. Note that the differences from the flowchart shown in Fig. 8 are steps S1001 to S1003 and S1004 to S1005.

[0126] In step S1001, the visualization device 120 may calculate the difference between the multidimensional input variables (control values) after the n-th adjustment process based on the (n-1)-th cost and the multidimensional input variables (control values) before the adjustment process. The visualization device 120 may also calculate the contribution of each sub-cost to each calculated difference.

[0127] In step S1002, the visualization device 120 calculates β n In step S1002, it may be determined whether β n If it is determined that the count is ≧0 (NO in step S1002), the process may proceed to step S808.

[0128] On the other hand, in step S1002, β nIf it is determined that the difference is <0, the process may proceed to step S1003.

[0129] In step S1003, the visualization device 120 may correct the contribution of each sub-cost up to the (n-1)th time.

[0130] In step S1004, the visualization device 120 may calculate the contribution of each sub-cost by calculating the sum of the amount of change in each sub-cost during m adjustment processes until the optimal solution is calculated.

[0131] In step S1005, the visualization device 120 may visualize the contribution of each sub-cost by graphing the contribution of each sub-cost.

[0132] <Summary> As is clear from the above description, the visualization device according to the second embodiment has The device may be connected to a control device having an optimization unit that executes a continuous optimization algorithm other than the steepest descent method. A sub-cost corresponding to each output variable of a prediction model that inputs and outputs multi-dimensional variables owned by the control device may be calculated, and the cost may be calculated as a linear sum of each sub-cost. If the change in sub-cost calculated based on the nth adjustment process does not satisfy a predetermined condition, the change in sub-cost calculated up to the (n-1)th adjustment process may be corrected. The contribution of each sub-cost to the difference between an optimal solution of the multidimensional input variables of the predictive model that minimizes or reduces the cost, calculated by the control device, and an initial solution, which is the multidimensional input variables of the predictive model before the cost is minimized or reduced, may be calculated and visualized.

[0133] As a result, according to the second embodiment, when an optimal solution is calculated by an optimization algorithm other than the steepest descent method for a prediction model that inputs and outputs multidimensional variables, it becomes easier to understand the relationship between each sub-cost and the optimal solution.

[0134] [Third embodiment] In the above first and second embodiments, a case has been described in which the contribution of each sub-cost to the difference between the initial solution and the optimal solution for one control value (e.g., x1) is displayed in one graph (e.g., graph 700). However, the method of visualizing the contribution of each sub-cost is not limited to this.

[0135] For example, visualization may be performed by arranging a graph showing the contribution of each sub-cost in a time series in each adjustment process from the initial solution to the calculation of the optimal solution.

[0136] Fig. 11 is a second diagram showing a specific example of the process of the graph generation unit. In Fig. 11, the horizontal axis represents time, and the vertical axis represents the control value x1. In Fig. 11, graphs 1110, 1120, and 1130 respectively show the contribution of each sub-cost (in three adjustment processes) at times T1, T2, and T3. Also, dotted lines 1140 between the graphs show the control values ​​at times T1, T2, and T3.

[0137] In this way, by arranging the graphs showing the contribution of each sub-cost in chronological order, it becomes possible to grasp the transition of the contribution of each sub-cost and the transition of the control value in the adjustment process until the optimal solution is calculated.

[0138] [Fourth embodiment] In the above first to third embodiments, the contribution calculation unit 241 calculates the contribution of each sub-cost for the control value x1, and the graph generation unit 242 generates the graph 700. However, the visualization unit 240 of the visualization device 120 calculates the contribution of each sub-cost for the control values ​​x2 to x r Similarly, it goes without saying that the contribution calculation unit 241 is configured to calculate the contribution of each sub-cost and the graph generation unit 242 is configured to generate a graph for each sub-cost.

[0139] In the above first to third embodiments, the objective function unit 230 has been described as calculating a number of sub-costs equal to the number of output variables (process values) of the prediction model unit 210. However, the number of output variables (process values) of the prediction model unit 210 and the number of sub-costs may be different, as long as the sub-costs are calculated based on the output variables (process values) of the prediction model unit 210. In other words, it is sufficient that the output variables and the sub-costs are associated with each other in the objective function unit 230.

[0140] In the above first to third embodiments, the objective function unit 230 has been described as being included in the visualization device 120, but the objective function unit 230 may be included in the control device 110. In this manner, some of the functions of the visualization device 120 may be included in the control device 110. Alternatively, some of the functions of the control device 110 may be included in the visualization device 120.

[0141] Furthermore, in the above first to third embodiments, the control device 110 and the visualization device 120 have been described as being configured separately, but the control device 110 and the visualization device 120 may be configured as an integrated device.

[0142] [Other embodiments] In this specification (including the claims), when the expression "at least one of a, b, and c" or "at least one of a, b, or c" (including similar expressions) is used, it includes any of a, b, c, ab, ac, bc, or abc. It may also include multiple instances of any element, such as aa, abb, aabbcc, etc. Furthermore, it also includes the addition of elements other than the enumerated elements (a, b, and c), such as having d, as in abcd.

[0143] In addition, in this specification (including claims), when expressions such as "data as input / based on / according to / in response to" (including similar expressions) are used, unless otherwise specified, it includes cases where various data itself is used as input, and cases where various data that have been processed in some way (e.g., noise-added, normalized, intermediate representation of various data, etc.) are used as input. In addition, when it is stated that a result is obtained "based on / according to / in response to data," it includes cases where the result is obtained based only on the data, and may also include cases where the result is obtained by being influenced by other data, factors, conditions, and / or states other than the data. In addition, when it is stated that "data is output," it includes cases where various data itself is used as output, and cases where various data that have been processed in some way (e.g., noise-added, normalized, intermediate representation of various data, etc.) are output, unless otherwise specified.

[0144] In addition, when the terms "connected" and "coupled" are used in this specification (including the claims), they are intended as open-ended terms including any of direct connection / coupling, indirect connection / coupling, electrically connection / coupling, communicatively connection / coupling, functionally connection / coupling, physically connection / coupling, etc. The terms should be interpreted appropriately depending on the context in which the terms are used, but any connection / coupling form that is not intentionally or naturally excluded should be interpreted as being included in the terms without any restriction.

[0145] In addition, in this specification (including claims), when the expression "A configured to B" is used, it may include that the physical structure of element A has a configuration capable of performing operation B, and the permanent or temporary setting / configuration of element A is configured / set to actually perform operation B. For example, when element A is a general-purpose processor, it is sufficient that the processor has a hardware configuration capable of performing operation B, and is configured to actually perform operation B by setting a permanent or temporary program (instruction). In addition, when element A is a dedicated processor or dedicated arithmetic circuit, it is sufficient that the circuit structure of the processor is implemented to actually perform operation B, regardless of whether control instructions and data are actually attached.

[0146] In addition, when terms implying inclusion or possession (such as "comprising / including" and "having") are used in this specification (including the claims), they are intended to be open-ended terms that include cases in which something other than the object indicated by the object of the term is contained or possessed. When the object of such terms implying inclusion or possession is an expression that does not specify a quantity or suggests a singular number (an expression using the article "a" or "an"), the expression should be construed as not being limited to a specific number.

[0147] In addition, even if expressions such as "one or more" or "at least one" are used in some places in this specification (including the claims) and expressions that do not specify a quantity or suggest a singular number (expressions using the articles "a" or "an") are used in other places, the latter expressions are not intended to mean "one." In general, expressions that do not specify a quantity or suggest a singular number (expressions using the articles "a" or "an") should be interpreted as not necessarily being limited to a specific number.

[0148] In addition, when a particular advantage / result is described in this specification for a particular configuration of an embodiment, it should be understood that the same advantage / result can also be obtained for one or more other embodiments having the same configuration, unless otherwise stated. However, it should be understood that the presence or absence of the effect generally depends on various factors, conditions, and / or states, and that the effect is not necessarily obtained by the configuration. The effect is merely obtained by the configuration described in the embodiment when various factors, conditions, and / or states are satisfied, and the effect is not necessarily obtained in the invention according to the claim that specifies the configuration or a similar configuration.

[0149] In addition, in this specification (including claims), when a plurality of pieces of hardware perform a predetermined process, each piece of hardware may cooperate to perform the predetermined process, or a portion of the hardware may perform all of the predetermined process. Also, a portion of the hardware may perform a portion of the predetermined process, and another piece of hardware may perform the remainder of the predetermined process. In this specification (including claims), when an expression such as "one or more pieces of hardware perform a first process, and the one or more pieces of hardware perform a second process" is used, the hardware performing the first process and the hardware performing the second process may be the same or different. In other words, it is sufficient that the hardware performing the first process and the hardware performing the second process are included in the one or more pieces of hardware. The hardware may include an electronic circuit, or a device including an electronic circuit.

[0150] Furthermore, in this specification (including the claims), when multiple storage devices (memories) store data, each of the multiple storage devices (memories) may store only a portion of the data, or may store the entire data.

[0151] Although the embodiments of the present disclosure have been described in detail above, the present disclosure is not limited to the above-mentioned individual embodiments. Various additions, modifications, replacements, partial deletions, etc. are possible within the scope of the conceptual idea and intent of the present invention derived from the contents defined in the claims and their equivalents. For example, the numerical values ​​used in the explanations in all the above-mentioned embodiments are shown as examples and are not limited to these. In addition, the order of each operation in the embodiments is shown as an example and is not limited to these. [Explanation of symbols]

[0152] 110: Control device 120: Visualization device 130: Process 210: Prediction Model Section 220: Optimization Department 230: Objective function part 231: Cost Calculation Department 240: Visualization section 241: Contribution calculation unit 242: Graph generation unit 601, 901: x1 optimization calculation section 610_1, 910_1: C1 contribution calculation section 630_1, 940_1: C1 contribution sum calculation section 700: Graph 741: Solution acquisition part 742: Contribution information acquisition unit 743: Upper extraction section 920_1: Correction section

Claims

1. A cost calculation unit that calculates a cost from a linear sum of each sub-cost calculated based on each output variable and each target value of a model that inputs and outputs multidimensional variables; a visualization unit that calculates and visualizes a contribution of a sub-cost of the cost to a difference between a solution of the input variables of the model that reduces the cost and a solution of the input variables of the model before the cost is reduced, for at least one of the input variables of the model; A visualization device having the following:

2. The visualization unit is The sum of the change in the i-th sub-cost during each adjustment process when the j-th input variable of the model is optimized is calculated to obtain the contribution φ of the i-th sub-cost to the difference between the solution for the j-th input variable and the solution before the solution for the j-th input variable. j_i The visualization device according to claim 1 , further comprising a contribution calculation unit that calculates:

3. The contribution calculation unit is The change in the i-th sub-cost during the n-th adjustment process when the j-th input variable of the model is optimized for the m-th time (where m≧n) is defined as −α j ×C' i (x n-1 ) (However, -α j is the coefficient, C' i (x n-1 ) is the first derivative of the i-th subcost, and the sum of the changes in the i-th subcost from the 1st to the mth time is calculated to obtain the contribution φ j_i The visualization device according to claim 2 , further comprising:

4. The contribution calculation unit is The change in the i-th sub-cost during the n-th adjustment process when the j-th input variable of the model is optimized for the m-th time (where m≧n) is defined as −β j_n ×C' i (x n-1 ) (However, β j_n = (x j_n -x j_n-1 ) / (-C'(x n-1 )), C'(x n-1 ) is the first derivative of each subcost, and the sum of the changes in the i-th subcost from the 1st to the mth time is calculated to obtain the contribution φ j_i The visualization device according to claim 2 , further comprising:

5. The contribution calculation unit is During the n-th adjustment process when the j-th input variable of the model is optimized for the m-th time, β n The visualization device according to claim 4 , wherein if ii, the change amount of the i-th sub-cost in the n-th adjustment process is set to zero.

6. The contribution calculation unit is During the n-th adjustment process when the j-th input variable of the model is optimized for the m-th time, β n 6. The visualization device according to claim 5, wherein, when the i-th sub-cost is smaller than 0, the i-th sub-cost changes calculated up to the (n-1)th time are multiplied by a constant to correct the change.

7. The visualization unit is Among the sub-costs, a predetermined number of sub-costs having a large positive contribution are arranged in descending order in the negative direction in a band-shaped graph according to the magnitude of the contribution; Among the sub-costs, a predetermined number of sub-costs having a large negative contribution are arranged in descending order in a positive direction in a band-shaped graph according to the magnitude of the contribution, and The visualization device according to claim 2 , wherein a band-shaped graph of the sub-cost having the greatest positive contribution and a band-shaped graph of the sub-cost having the greatest negative contribution are arranged and displayed so as to be in contact at the position of the optimal solution.

8. The visualization unit, The visualization device according to claim 2 , wherein, of the sub-costs, a sub-cost in a positive direction and a sub-cost in a negative direction are displayed in different display modes.

9. The visualization unit is 9. The visualization device according to claim 7 or 8, wherein the band-shaped graph of a predetermined number of sub-costs having a large positive contribution and the band-shaped graph of a predetermined number of sub-costs having a large negative contribution are displayed in different display modes, and an initial solution and an optimal solution are also displayed.

10. The visualization unit is 10. The visualization device according to claim 2, further comprising: extracting and displaying, from among the sub-costs, a predetermined number of sub-costs having a large positive contribution and sub-costs having a large negative contribution.

11. 11. The visualization device according to claim 2, wherein the contribution of each sub-cost at different times is arranged in chronological order and displayed.

12. The visualization unit is The visualization device according to claim 2 , wherein, of the sub-costs, sub-costs contributing in a positive direction and sub-costs contributing in a negative direction are arranged in a graph.

13. The model, wherein the model is a model of a predetermined process, the input variables are control values ​​of the given process; The visualization device according to claim 1 , wherein the output variable is a process value of the predetermined process.

14. A visualization device described in any one of claims 1 to 13, wherein the target value relates to temperature, pressure or flow rate.

15. A visualization device as described in any one of claims 1 to 14, wherein the input variable relates to a control value of a valve.

16. The visualization unit: The visualization device according to claim 1 , further comprising: a visualization device that simultaneously displays a solution for each input variable of the model for which the cost is reduced and a solution for each input variable of the model before the cost is reduced.

Citation Information

Patent Citations

  • Creation device of voice data set for perceptual examination, computer program, optimization device of sub-cost function for voice synthesis and voice synthesizer

    JP2005043828A

  • Multiobjective optimization apparatus, method, and program

    JP2005285090A

  • Water distribution operation control system

    JP2013151833A

  • Plant model creation device, plant model creation method, and plant model creation program

    JP2017091056A

  • Design parameter evaluation support method and program thereof

    JP2020061065A