Plan analysis method and plan analysis system

The plan analysis method and system address the high processing load in analyzing optimal plans by executing optimization processing and managing skip conditions within the plan analysis system, thereby reducing computational requirements and enhancing decision-making efficiency.

JP2025090365APending Publication Date: 2025-06-17HITACHI LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2023205562
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2023-12-05
Publication Date
2025-06-17

AI Technical Summary

Technical Problem

Existing methods for analyzing the explanation of optimal plans require significant computational resources due to the large amount of calculation and processing load, especially when sensitivity analysis is performed without defined relaxation problems.

Method used

A plan analysis method and system that input feature amounts of entities into an optimization problem, execute optimization processing, and analyze optimal plans by determining attention states and managing skip conditions to reduce unnecessary calculations.

Benefits of technology

The method effectively suppresses the processing load during optimal plan analysis, shortening the time to generate explanations and enabling smoother decision-making by skipping unnecessary optimization steps based on predefined conditions.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025090365000001_ABST
    Figure 2025090365000001_ABST
Patent Text Reader

Abstract

To suppress a processing load in analyzing an optimum plan.SOLUTION: In a plan analysis method, a plan explanation unit 3 inputs second input information that perturbs a perturbation object of first input information with a plurality of perturbation patterns to a prescribed function based on an objective function and a constraint condition to acquire an evaluation value in generating explanation of an optimum plan being a result of optimization of an optimization problem including the objective function and the constraint condition. Then, it determines whether the evaluation value corresponds to a skip condition of optimization processing. When the evaluation value corresponds to the skip condition, a determination result associated with the skip condition is acquired instead of executing the optimization processing. Then, the degree of contribution to an attention state is calculated from a determination result of each perturbation pattern.SELECTED DRAWING: Figure 5
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a plan analysis method and a plan analysis system. [Background technology]

[0002] Presenting the rationale for a plan obtained through mathematical optimization can be an effective means of promoting consensus building on the plan.

[0003] For this reason, for example, Non-Patent Document 1 discloses a method of calculating and presenting the basis of a plan based on the results of a sensitivity analysis in which an optimization calculation is performed multiple times while perturbing input factors that are variables of the plan. However, the optimization calculation requires a large amount of calculation and a large processing load.

[0004] For example, Patent Document 1 discloses a branch-and-bound method for reducing the amount of calculations in optimization calculations by defining a relaxation problem for constraint conditions, and when the evaluation value of the relaxation problem is inferior to a feasible solution obtained in the past, cutting the branch of the corresponding constraint condition and canceling the calculation. [Prior art documents] [Patent documents]

[0005] [Patent Document 1] JP 2008-199825 A [Non-patent literature]

[0006] [Non-Patent Document 1] Yuta Tsuchiya, Masaki Hamamoto, “Explanation Framework for Optimization-Based Scheduling:Evaluating Contributions of Constraints and Parameters by Shapley Value,” ICAPS'23 Workshop,2023. Summary of the Invention

Problems to be Solved by the Invention

[0007] However, in the prior art disclosed in Non-Patent Document 1 described above, in the sensitivity analysis that perturbs the input factors, a relaxation problem cannot be defined, so the prior art disclosed in Patent Document 1 cannot be applied to reduce the amount of calculation. For this reason, the prior art disclosed in Non-Patent Document 1 still has a problem of a large amount of calculation and a large processing load when calculating the basis of the plan.

[0008] The present invention has been made in consideration of the above circumstances, and an object thereof is to suppress the processing load when analyzing the explanation of the optimal plan.

Means for Solving the Problems

[0009] In one aspect of the present invention, input information including feature amounts of a plurality of entities is input into an optimization problem including an objective function and constraints, and optimization processing is executed. A plan analysis method executed by a plan analysis system that analyzes an optimal plan including a state determination result as to which state among a plurality of states in which the entity is labeled with a discrete value based on the feature amount of the entity is classified, wherein the plan analysis system has a processor and a storage unit, and the storage unit stores attention state information indicating an attention state that is the state in which the entity of interest is classified based on the feature amount of the entity, a condition for satisfying an evaluation value when a perturbation value based on the feature amount and the attention state of the entity is input into an evaluation function based on the objective function and the constraints, and the state in which the entity is classified based on the perturbation value, and manages skip conditions including a correspondence relationship therebetween. The processor receives an input of the attention state information, first input information including the feature amounts of the respective plurality of entities, and perturbation target information designating a perturbation target to be perturbed in the first input information, calculates the perturbation value based on the feature amount included in the first input information, generates second input information by perturbing the perturbation target indicated by the perturbation target information in the first input information with the perturbation value in a plurality of perturbation patterns based on the attention state information and the perturbation target information, determines, for each perturbation pattern, whether or not the perturbation value related to the second input information satisfies the condition in the skip conditions in the attention state indicated by the attention state information, when the perturbation value satisfies the condition, skips the optimization processing, determines, based on the skip conditions, the state in which the entity is classified based on the perturbation value as the state determination result, when the perturbation value does not satisfy the condition, executes the optimization processing with the perturbation value as an input, and determines the state in which the entity is classified based on the perturbation value as the state determination result, and includes each process of calculating a contribution degree of the perturbation target to the attention state based on the optimal plan including the state determination results related to the plurality of perturbation patterns.

Advantages of the Invention

[0010] According to the present invention, it is possible to suppress the processing load when analyzing the explanation of the optimal plan.

Brief Description of the Drawings

[0011]

Figure 1

Figure 2

Figure 3

Figure 4

Figure 5

Figure 6

Figure 7

Figure 8A

Figure 8B

Figure 9

Figure 10

Figure 11

Figure 12

Figure 13

Figure 14

Figure 15

Figure 16

Figure 17

Figure 18

Figure 19

Figure 20

Figure 21

Figure 22

Figure 23

Mode for Carrying Out the Invention

[0012] In the following description, the "CPU (Central Processing Unit)" is an example of one or more processor devices. At least one processor device is typically not limited to a CPU, but may be other types of processor devices such as a GPU (Graphics Processing Unit). At least one processor device may be single-core or multi-core. At least one processor device may be a processor core.

[0013] At least one processor device may be a circuit that is an aggregate of gate arrays described in a hardware description language for performing part or all of the processing. The circuit is a processor device in a broad sense such as, for example, an FPGA (Field-Programmable Gate Array), a CPLD (Complex Programmable Logic Device), or an ASIC (Application Specific Integrated Circuit).

[0014] Also, in the following description, the processing may be described mainly with respect to the "yyy program". In this case, the program is executed by the CPU to realize the processing function called the "yyy functional unit" and becomes the execution entity of the processing. The processing function may be realized by one or more computer programs being executed by a processor, or may be realized by one or more hardware circuits (for example, an FPGA or an ASIC), or may be realized by a combination thereof.

[0015] When the function is realized by the program being executed by the processor, since the defined processing is performed while appropriately using a storage device and / or an interface device, etc., the function may be regarded as at least part of the processor. The processing described with the functional unit as the subject may also be the processing performed by the processor or a device having the processor.

[0016] The program may be installed from a program source. The program source may be, for example, a program distribution computer or a computer-readable recording medium (for example, a non-transitory recording medium). The description of each function is an example, and a plurality of functions may be combined into one function, or one function may be divided into a plurality of functions. The "yyy functional unit" may also be called the "yyy unit".

[0017] In the following description, various types of information may be described in a table format. However, the data format of the information may be in a format other than the table format (for example, CSV (Comma Separated Values) format or the like). Also, the various types of information may be stored in the storage unit as a table, or may be embedded as logic in the program.

[0018] In the following description, when describing without distinguishing between elements of the same type, common reference numerals among the reference numerals are used. When distinguishing and describing elements of the same type, reference numerals may be used.

[0019] [Embodiment 1] (Configuration of the Plan Analysis System 1 According to Embodiment 1) FIG. 1 is a diagram showing the configuration of the plan analysis system 1 according to Embodiment 1. The plan analysis system 1 includes an optimal plan calculation unit 2 and a plan explanation unit 3.

[0020] The optimal plan calculation unit 2 takes input variable information and objective function information as inputs, processes an optimization problem, and outputs optimal plan information. The plan explanation unit 3 takes input variable information T1, objective function information, attention state information, perturbation mode information, perturbation target information, and optimal plan information T2 as inputs, and outputs plan explanation information as a result of executing the calculation of the basis of the plan. The plan explanation unit 3 is an example of a plan analysis system that analyzes an optimal plan. The objective function information is information including the objective function and constraint conditions of the optimization problem.

[0021] Here, the "attention state" is the negation of the state specified as the explanation target among the entities (records) of the optimal plan information T2. For example, when the "state specified as the explanation target" is "device 3 is not selected as the repair target", its negation is "device 3 is selected as the repair target". The "attention state information" is information obtained by classifying the "attention state" as "type 1", "type 2",... as shown in FIG. 7.

[0022] The "perturbation mode" is the "attribute value perturbation mode" that determines the entity of the optimal plan information T2 and perturbs it in units of attribute values, among the "attribute value perturbation mode" and the "entity perturbation mode" that perturbs in units of entities. Therefore, the "perturbation mode information" = "attribute value perturbation mode".

[0023] (Configuration of the plan explanation unit 3 according to Embodiment 1) FIG. 2 is a diagram showing the configuration of the plan explanation unit 3 according to Embodiment 1. The plan explanation unit 3 includes a baseline setting unit 31, an input generation unit 32, an evaluation value calculation unit 33, a skip condition setting unit 34, a skip determination unit 35, an optimal plan calculation unit 36, a state determination unit 37, a data management unit 38, and a contribution degree analysis unit 39.

[0024] The baseline setting unit 31 calculates a baseline using the optimal plan information as an input and sets it to the input generation unit 32. The input generation unit 32 generates input information using the input variable information and the perturbation target information as inputs and outputs it to the evaluation value calculation unit 33.

[0025] The skip condition setting unit 34 calculates a skip condition using the attention state information, the perturbation mode information, and the objective function information as inputs and outputs it to the skip determination unit 35. The skip determination unit 35 determines whether the value of the unit value Vi corresponds to a region where the search for the optimal plan is skipped, using the skip condition, the attention state information, the calculation result of the evaluation value calculation unit 33, and the optimal plan information as inputs. Then, the skip condition setting unit 34 outputs this skip determination result to the optimal plan calculation unit 36 and the data management unit 38.

[0026] The optimal plan calculation unit 36 calculates an optimal plan using the skip determination result by the skip determination unit 35 as an input. The state determination unit 37 determines the state of the optimal plan using the optimal plan calculated by the optimal plan calculation unit 36 as an input and outputs it to the data management unit 38. The data management unit 38 manages the determination result of the state of the optimal plan by the state determination unit 37 and the skip determination result by the skip determination unit 35 (data management table T51 (FIG. 11) described later) and outputs the managed data to the contribution degree analysis unit 39. The contribution degree analysis unit 39 calculates and outputs the contribution degree.

[0027] (Configuration of Input Variable Information T1 According to Embodiment 1) FIG. 3 is a diagram showing the configuration of input variable information T1 according to Embodiment 1. The input variable information T1 is information that enumerates parameter values regarding the object for which the optimal plan calculation unit 2 calculates a plan. The input variable information T1 has columns of "device ID", "x1: importance", "x2: cost", and "x3: number of elapsed days". In this embodiment, the "object for which the optimal plan calculation unit 2 calculates a plan" is a "device", and the "attribute value" is an "evaluation element of the device to be considered when repairing the device". "x1: importance", "x2: cost", and "x3: number of elapsed days" are parameters used when calculating a plan for a knapsack problem of determining a device to be repaired so as to maximize a predetermined value while keeping the repair cost within the budget. The input variable information T1 is an example of input information that includes feature amounts of each record for each device ID as entities.

[0028] (Configuration of Optimal Plan Information T2 According to Embodiment 1) FIG. 4 is a diagram showing the configuration of optimal plan information T2 according to Embodiment 1. The optimal plan information T2 is a plan calculated by the optimal plan calculation unit 2 based on the input variable information T1 and the objective function information input. The optimal plan information T2 has columns of "device ID" and "Y: repair". In this embodiment, "Y: repair" is a flag (selection flag) indicating whether to select to execute the repair of each device. The optimal plan information T2 is an example of an optimal plan that includes a state determination result (in this embodiment, Y: repair) of which state among a plurality of states in which an entity is labeled with discrete values (0 and 1 in this embodiment) based on the feature amounts of the entity.

[0029] (Optimal Calculation Process According to Embodiment 1) FIG. 5 is a flowchart showing the optimal calculation process according to Embodiment 1.

[0030] First, in step S11, the optimal plan calculation unit 2 applies an optimization engine with the original input values (input variable information T1 and objective function information) as input, and outputs an optimal plan (optimal plan information T2). In the present embodiment, the "objective function information" is represented by Expression (1). maxV = max Σ(si × wc1 × x1i + si × w3 × x3i) s.t. Σsi × x2i ≤ B ···(1) However, V = V(X) = Σ(si × wc1 × x1i + si × w3 × x3i) represents the value based on the input values (entity X). Also, C = C(X) = Σsi × x2i represents the cost based on the input values (entity X).

[0031] Also, maxV is the maximum value of the value V, Σ is the sum over all i, i is the device ID, wc1 is the weight constant for the variable x1 which is a categorical variable, w3 is the weight constant for the variable x3 which is a quantitative variable. Also, si ∈ {0, 1} is a selection variable ("0": not selected, "1": selected), and C is a constant.

[0032] Also, the unit value Vi of device i based on the objective function represented by Expression (1) is defined as in Expression (2), and the unit cost Ci is defined as in Expression (3). The unit value Vi and the unit cost Ci will be described later with reference to FIG. 7. The unit value Vi and the unit cost Ci are an example of an evaluation function. Vi = V(Xi) = wc1 × x1i + w3 × x3i ···(2) Ci = C(Xi) = x2i ···(3)

[0033] Next, in step S12, the baseline setting unit 31 takes the optimal plan information T2 as input, and sets a baseline value as a perturbation value for applying perturbation to the input variables. In the present embodiment, the average value for each attribute value of the device group selected as the repair target in the optimal plan (optimal plan information T2) is set as the baseline value.

[0034] Next, in step S13, the skip condition setting unit 34 refers to the skip condition table T31 (FIG. 7) and the target state information described later, and extracts the skip condition ID to be applied. In the present embodiment, "the device 3 is selected as a repair target" is set as the target state, and type 1 is obtained as the target state information. Therefore, ID1 and ID2 are extracted as the corresponding skip condition IDs.

[0035] Next, in step S14, the skip determination unit 35, the optimal plan calculation unit 36, and the state determination unit 37 perform perturbation data acquisition processing for obtaining the state determination results in all perturbation cases (case IDs) for the perturbation targets in the perturbation target information. The details of the perturbation data acquisition processing will be described later with reference to FIG. 10.

[0036] Next, in step S15, the contribution analysis unit 39 calculates the contribution of each factor to the target state based on the state determination result obtained in step S14.

[0037] (Contribution calculation method in the attribute value perturbation mode according to Embodiment 1) FIG. 6 is an explanatory diagram of the contribution calculation method in the attribute value perturbation mode according to Embodiment 1.

[0038] In the present embodiment, "the state specified as the explanation target among the entities of the optimal plan information T2" is "the device 3 is not selected as a repair target", and the "target state" is "the device 3 is selected as a repair target". Also, the "perturbation mode" is the "attribute value perturbation mode", and the "perturbation target information" is "x1", "x2", and "x3". The "perturbation target information" is the variable to be perturbed in the input variable information T1. Also, the "objective function information" is represented by the formula (1) as described above.

[0039] As shown in FIG. 6, first, the baseline value Xb is calculated from the original input value X0 (input variable information T1) (step S12 (FIG. 5)). Let the baseline value Xb = [x1b, x2b, x3b] = [A, 80, 4]. However, for attribute values other than numerical values, the baseline is calculated after numerical conversion, and for example, the attribute value closest to the numerical conversion is used as the baseline.

[0040] Next, each attribute value of entity X3 is perturbed to match the baseline value Xb (step S14 (FIG. 5)). Since the entity to be perturbed is such that the "attention state" is "device 3 is selected as the repair target", the original input value X0 is X0 = [X1, X2, X3, X4] T In this case, it is entity X3 of device 3. As a result, the original input value X0 (the first input information) becomes the perturbed input value X' = [X1, X2, X'3, X4] (the second input information).

[0041] For each of the three variables "x1", "x2", and "x3" indicated by the "perturbation target information", the perturbation case has two options: "perturb (flag = 1)" and "do not perturb (flag = 0)". Therefore, there are 2 3 = 8 cases. However, the case where all variables indicated by the "perturbation target information" are "not perturbed (flag = 0)" becomes the optimal plan (optimal plan information T2) based on the original input value X0 (input variable information T1).

[0042] Next, the optimal plan P' = F(X') based on the perturbed input value X' is calculated.

[0043] Here, for the number of perturbed variables N1 (3 in this embodiment), 2 N1 optimization calculations are performed, and 2 N1 optimal plans are required. However, performing all 2 N1 optimization calculations would result in an enormous computational amount. Therefore, in this embodiment, among the 2 N1 optimization calculations, "unnecessary calculations are skipped" using the information indicated by the above-mentioned unit value Vi and unit cost Ci based on the objective function of the above formula (1) and the skip condition table T31 (FIG. 7) to reduce the computational amount. The skip condition table T31 will be described later with reference to FIG. 7.

[0044] In this way, the 2 N1For each of the individual optimal plans, the Shapley value is calculated, and based on the calculation result, the contribution degree Z of each device with respect to the "target state" "device 3 is selected as the repair target" is calculated (step S15 (Figure 5)). The contribution degree Z calculated here is Z = [z1, z2, z3] = [-0.3, +0.2, +0.1].

[0045] In the contribution degree Z, since z1 is the smallest negative value, that is, the contribution of device 1 is the largest in the negative direction, it is estimated that for the "target state" "device 3 is selected as the repair target", the fact that "x1: the importance inhibited the selection of device 3 as the repair target" holds. Therefore, as the reason for "device 3 is not selected as the repair target", the answer "x1: because the importance is low" can be generated.

[0046] Existing methods are used to calculate the contribution degree Z. For example, there are methods for calculating the contribution degree based on the Shapley value commonly used in game theory, methods for calculating the contribution degree based on the Cohort Shapley value that can consider the dependency relationship between factors, etc. However, any method can be used as long as it can calculate the contribution degree of the feature quantity xi of the entity X, not limited to these methods.

[0047] (Skip condition table T31 in the attribute value perturbation mode according to Embodiment 1) Figure 7 is a diagram showing the configuration of the skip condition table T31 in the attribute value perturbation mode according to Embodiment 1. The skip condition table T31 may be stored in the storage unit of the plan explanation unit 3, or may be embedded as logic in the program.

[0048] The skip condition table T31 is information for determining whether the calculation of the optimal plan based on the perturbed input value X' can be skipped (cancelled), based on the "attention state information" and the information on the unit value Vi and unit cost Ci based on the perturbed input value X'. The skip condition table T31 has columns of "condition ID", "attention state information", "skip condition", and "explanation of skip condition". The skip condition table T31 includes the correspondence between the condition for satisfying the evaluation value and the state in which the entity is classified based on the perturbation value.

[0049] The "condition ID" is the identification information of the skip condition. The "attention state information" is the classification of the attention state information input to the plan explanation unit 3. For example, the "attention state information" includes "type 1", "type 2", "type 3", ···.

[0050] "Type 1" means that the attention state information is "if si = 1 (device i is selected), then Y = 1". Here, "si" is the selection variable in formula (1), and "Y" is the selection flag shown in the optimal plan information T2 (Figure 4).

[0051] "Type 2" means that the attention state information is "if si = 0 (device i is not selected), then Y = 1".

[0052] "Type 3" means that the attention state information is "if si = 1 ∧ sj = 1 (devices i and j are selected simultaneously), then Y = 1". Here, j is a positive integer different from i.

[0053] The "skip condition" indicates the condition that the unit value Vi and unit cost Ci based on the original input value X0 (input variable information T1) and the perturbed input value X' should satisfy, and the value of the selection flag Y(X') based on the perturbed input value X' in the case of condition satisfaction.

[0054] For example, "Condition ID" "1" indicates that when the state information of interest is of type 1, Ci≧Ci´ and Vmini≦V(Xi´), the calculation of the optimal plan by the optimal plan calculation unit 36 can be skipped, and the selection flag Y(X´)=1 can be set. Here, Ci is the unit cost based on the original input value X0. Also, Ci´ is the unit cost based on the perturbed input value X´. Further, V(Xi´) is the unit value Vi based on the perturbed input value X´. Also, Vmini is the "boundary value Vmini" which will be described later with reference to FIGS. X5 and 9.

[0055] Also, for example, "Condition ID" "1" indicates that when the state information of interest is of type 1, Ci≦Ci´ and Vmax≧V(Xi´), the calculation of the optimal plan by the optimal plan calculation unit 36 can be skipped, and the selection flag Y(X´)=0 can be set. Here, Vmaxi is the "boundary value Vmaxi" which will be described later with reference to FIGS. X5 and 9.

[0056] (Search method for boundary values in the attribute value perturbation mode according to Embodiment 1) FIGS. 8A and 8B are explanatory diagrams of the search region and the skippable region of the optimal plan in the attribute value perturbation mode according to Embodiment 1.

[0057] The boundary value Vmini shown in FIG. 8A is the minimum value of the value of device i selected in the past optimal plan. Also, the boundary value Vmaxi shown in FIG. 8A is the maximum value of the value of device i not selected in the past optimal plan. Also, the value Vo,i represented by Equation (4) is the value of device i based on the original input value X0 (optimal plan information T2). Vo,i=V(Xo,i)=wc1×x1i+w3×x3i···(4)

[0058] As shown in FIG. 8A, when the unit value Vi of device i is equal to or greater than the boundary value Vmini, device i is always selected, so the selection flag Y=1 is set, and it becomes a skippable region 901 where the search for the optimal plan by the optimal plan calculation unit 36 can be skipped. In the skip condition table T31 (FIG. 7), "Condition ID = 1" applies.

[0059] Also, as shown in FIG. 8A, when the unit value Vi of device i is less than or equal to the boundary value Vmaxi, device i is not selected, so the selection flag Y = 0, and it becomes a skippable region 901 where the search for the optimal plan by the optimal plan calculation unit 36 can be skipped. In the skip condition table T31 (FIG. 7), "condition ID = 2" applies.

[0060] On the other hand, as shown in FIG. 8A, when the unit value Vi of device i is less than the boundary value Vmini and greater than Vmaxi, it is not clear whether device i is selected, so it becomes a search region 903 where it is necessary to execute the search for the optimal plan by the optimal plan calculation unit 36.

[0061] Also, the boundary value Vmini shown in FIG. 8B is the minimum value of the value of device i that was not selected in the past optimal plan. Also, the boundary value Vmaxi shown in FIG. 8B is the maximum value of the value of device i that was selected in the past optimal plan.

[0062] As shown in FIG. 8B, when the unit value Vi of device i is greater than or equal to the boundary value Vmini, device i is not selected, so the selection flag Y = 0, and it becomes a skippable region 904 where the search for the optimal plan by the optimal plan calculation unit 36 can be skipped. In the skip condition table T31 (FIG. 7), "condition ID = 3" applies.

[0063] Also, as shown in FIG. 8B, when the unit value Vi of device i is less than or equal to the boundary value Vmaxi, device i is selected, so the selection flag Y = 1, and it becomes a skippable region 905 where the search for the optimal plan by the optimal plan calculation unit 36 can be skipped. In the skip condition table T31 (FIG. 7), "condition ID = 4" applies.

[0064] On the other hand, as shown in FIG. 8B, when the unit value Vi of device i is less than the boundary value Vmini and greater than Vmaxi, it is not clear whether device i is selected, so it is necessary to execute the search for the optimal plan by the optimal plan calculation unit 36.

[0065] (Configuration of the boundary value management table T4 according to Embodiment 1) FIG. 9 is a diagram showing the configuration of the boundary value management table T4 according to Embodiment 1. The boundary value management table T4 is managed by the data management unit 38. The boundary value management table T4 has columns of "unit cost Ci", "boundary value Vmini", and "boundary value Vmaxi". The boundary value management table T4 is information that defines the boundaries of the unit value Vi (where i is a positive integer representing the index of the device) for which the optimal plan calculation unit 2 can skip the search for the plan. The boundary value management table T4 stores the boundary values Vmini and Vmaxi of the device i in association with the unit cost Ci of the device i when the boundary value Vmini or the boundary value Vmaxi corresponds to the appropriate value.

[0066] The "boundary value Vmini" is the minimum value that defines the upper bound of the unit value Vi for which the search for the optimal solution for the "unit cost Ci" can be skipped, and the minimum value of the unit value Vi when the device i calculated in the past is selected is stored. The "boundary value Vmini" is updated as the minimum value of the unit value Vi when the device i calculated in the past is selected is updated.

[0067] The "boundary value Vmaxi" is the maximum value that defines the lower bound of the unit value Vi for which the search for the optimal solution for the "unit cost Ci" can be skipped, and the maximum value of the unit value Vi when the device i calculated in the past is not selected is stored. The "boundary value Vmini" is updated as the maximum value of the unit value Vi when the device i calculated in the past is not selected is updated.

[0068] That is, the region of the unit value Vi for which the optimal solution is searched is Vmaxi ≦ Vi ≦ Vmini.

[0069] The row of "Ci: 50", "Vmini: inf", and "Vmaxi: 170" shown in FIG. 9 indicates that when the "unit cost Ci before perturbation is 50", the region of the unit value Vi for which the optimal solution is searched is 170 ≦ Vi ≦ (inf (none)).

[0070] (Perturbation data acquisition process according to Embodiment 1) FIG. 10 is a flowchart showing the perturbation data acquisition process according to Embodiment 1. The perturbation data acquisition process according to Embodiment 1 is a process executed in step S14 of the optimal planning process (FIG. 5).

[0071] First, in step S14a, the plan explanation unit 3 executes an initialization process. In the initialization process, the plan explanation unit 3 creates a data management table T51 (FIG. 11) and sets the original input value X0 (input variable information T1) and the value V0 = V(X0) of the optimal plan based on the objective function to Vmaxi.

[0072] Next, in step S14b, the plan explanation unit 3 executes an evaluation value calculation process. In the evaluation value calculation process, the baseline setting unit 31 calculates a baseline value Xb from the original input value X0 (input variable information T1). Then, the input generation unit 32 calculates evaluation values (that is, value V and cost C) based on the input values in all patterns after perturbation (all of a plurality of perturbation patterns) based on the original input value X0 (input variable information T1) and the perturbation target information.

[0073] Next, in step S14c, the skip determination unit 35 executes a cost input value setting process. In the cost input value setting process, the skip condition setting unit 34 determines the input values of the variables related to the cost. In this embodiment, among the variables x1, x2, xx3, the variable x2 is the input value related to the cost, and the variables x1, x3 are the input values related to the value.

[0074] As the initial value of the input value of the variable related to the cost, it is preferable to set the input value that is most likely to be in a state opposite to the optimal plan based on the original input value X0 (input variable information T1). The "state opposite to the optimal plan" means, for example, that the opposite state of "device 3 is selected as the repair target" is "device 3 is not selected as the repair target".

[0075] And since the current situation is that "Device 3 is not selected for repair", a lower cost is more likely to result in the opposite situation ("Device 3 is selected for repair"). Therefore, the costs are set as input values in ascending order. Here, only the variable x2 is related to the cost, and there are only two values, x2 (the original input value) and x2b (the baseline value). The smaller value of x2 and x2b (C´ = min(x2, x2b)) is set as the input value of the variable related to the cost.

[0076] Next, in step S14d, the skip determination unit 35 executes a skip determination process. In the skip determination process, the skip determination unit 35 refers to the boundary value Vmini and the boundary value Vmaxi, the data management table T51 (FIG. 11), and the skip condition table T31 (FIG. 7) to perform pruning of the branches to be optimized.

[0077] For example, when the target state information is "Type 1", the corresponding case is extracted from the skip condition table T31. That is, based on the skip condition IDs ID1 and ID2, cases where the unit cost C´i of the target device i after perturbation is less than or equal to the unit cost Ci before perturbation, and the unit value Vi after perturbation is less than or equal to the boundary value Vmaxi or greater than or equal to the boundary value Vmini are extracted. Then, the value of the selection flag Y(X´) after perturbation of the extracted case is written as "1" in the "Skip" column of the "State determination result: Y" column of the data management table T51 (FIG. 11).

[0078] Next, in step S14e, the skip determination unit 35 executes a value input value setting process. In setting the input value related to the value V, the input value corresponding to the median of the boundary value Vmini and the boundary value Vmaxi is set as the input value after perturbation.

[0079] When the boundary value Vmini does not exist ( "inf" is stored in the boundary value management table T4 (FIG. 9)), the combination after perturbation where the value V = V(X´) is maximized is set as the input value.

[0080] Also, when there is no boundary value Vmaxi (i.e., "inf" is stored in the boundary value management table T4 (Fig. 9)), the combination after perturbation where the value V = V(X´) is minimized is set as the input value.

[0081] Also, when neither the boundary value Vmini nor the boundary value Vmaxi exists (i.e., "inf" is stored in the boundary value management table T4 (Fig. 9)), the input value corresponding to the median value in the entire boundary value management table T4 is set as the input value after perturbation.

[0082] Next, in step S14f, the state determination unit 37 executes a state determination result acquisition process. Specifically, the state determination unit 37 applies the optimization engine by the optimal plan calculation unit 36 and calculates an optimal plan based on the attribute values x1i, x2i, x3i after perturbation of the entity (device i) in the data management table T51 (Fig. 11) where "skip" is "0". However, since the optimal plan calculation unit 36 has already calculated the optimal plan for the input variable information T1, it does not execute the calculation of the optimal plan again. Also, the state determination unit 37 acquires the "state determination result: Y" after optimization from the optimal plan calculation unit 36 and writes it into the data management table T51 (Fig. 11).

[0083] Next, in step S14g, the state determination unit 37 executes a boundary value update process. Specifically, the state determination unit 37 updates the boundary value Vmini and the boundary value Vmaxi in the boundary value management table T4 (Fig. 9). If the state determination result of device i obtained in step S14f is "device i is selected as a repair target", the value of the boundary value Vmini is updated, and if it is "device i is not selected as a repair target", the boundary value Vmaxi is updated.

[0084] Next, in step S14h, the skip determination unit 35 refers to the data management table T51 (FIG. 11) and determines whether the state determination results of all cases in which the input value of the value V is perturbed for the input value of the set cost C have been obtained. When the state determination results of all cases have been obtained (step S14h Yes), the skip determination unit 35 transfers the process to step S14i. When the state determination results of all cases have not been obtained (step S14h No), the skip determination unit 35 returns the process to step S14d.

[0085] In step S14i, the skip determination unit 35 refers to the data management table T51 (FIG. 11) and determines whether the state determination results of all cases in which the input value related to the cost is perturbed have been obtained. When the state determination results of all cases in which the input value related to the cost is perturbed have been obtained (step S14i Yes), the perturbation data acquisition process ends. On the other hand, when the state determination results of all cases in which the input value related to the cost is perturbed have not been obtained (step S14i No), the skip determination unit 35 transfers the process to step S14j.

[0086] In step S14j, the skip determination unit 35 updates the boundary value management table T4 (FIG. 9) so as to maintain the boundary value Vmaxi for the input value of the lower cost. When step S14j ends, the skip determination unit 35 returns the process to step S14c. Here, the reason why the boundary value Vmaxi can be maintained is that when the cost of the apparatus i increases, it is not selected unless it has at least a value larger than the boundary value Vmaxi. This corresponds to, for example, the skip condition of the skip condition ID2.

[0087] (Configuration of the data management table T51 in the attribute value perturbation mode according to Embodiment 1) FIG. 11 is a diagram showing the configuration of the data management table T51 in the attribute value perturbation mode according to Embodiment 1. The data management table T51 has columns of "case ID", "x1", "x2", "x3", "Vi", "Ci", "state determination result: Y", "optimal plan", "actual evaluation", and "skip".

[0088] The "case ID" is identification information of a perturbation case that perturbs at least one of the attribute values "x1", "x2", and "x3" in the attribute value perturbation mode. "x1", "x2", and "x3" are attribute values of the i-th entity to be explained (in this embodiment, the device 3, that is, i = 3). "Vi" is the unit value of the i-th entity to be explained (Equation (2)). "Ci" is the unit cost of the i-th entity to be explained (Equation (3)).

[0089] "State determination result: Y" is information indicating whether the attention state is satisfied even when the attribute value is perturbed, and is a determination result of whether the device i is selected based on the values of the corresponding attribute values "x1", "x2", and "x3" after perturbation.

[0090] The "optimal plan" is information indicating whether the "state determination result: Y" is the original optimal plan obtained by the optimal plan calculation unit 2. It indicates that it is the original optimal plan with "1", and indicates that it is not the original optimal plan with "0".

[0091] "Actual evaluation" is information indicating whether the determination result obtained by actually applying the optimization engine by the "state determination result: Y" optimal plan calculation unit 2 or the optimal plan calculation unit 36. It indicates that it is the determination result obtained by actually applying the optimization engine with "1", and indicates that it is not the determination result obtained by applying the optimization engine with "0".

[0092] "Skip" is information indicating whether the "state determination result: Y" is a determination result obtained by skipping based on the skip conditions of the skip condition table T31 (Figure 7). It indicates that it is the determination result obtained by actually applying the optimization engine with "1", and indicates that it is not the determination result obtained by actually applying the optimization engine with "0".

[0093] (Effect of Embodiment 1) In Embodiment 1, when the skip condition is satisfied, the optimization process is skipped, and based on the skip condition, a state in which entities are classified based on the relationship between the values before and after the perturbation of the evaluation value is determined as the state determination result. Therefore, during the analysis such as the generation of the explanation of the optimal plan, the processing load can be reduced. As a result, the time until the explanation becomes viewable is shortened, and smooth decision-making without stress for the user becomes possible.

[0094] Also in Embodiment 1, entities corresponding to the target state are fixed and perturbed with a plurality of perturbation patterns in units of feature amounts. Therefore, an explanation of which feature amount is a factor of the target state can be obtained.

[0095] Also in Embodiment 1, the threshold value of the evaluation value included in the conditions of the skip condition is updated according to the determination result of the state. Therefore, by expanding the range of conditions under which the optimization process can be skipped based on the past processing results, the processing load can be efficiently reduced.

[0096] [Embodiment 2] In Embodiment 1, perturbation was performed in units of attribute values of entities. In contrast, in Embodiment 2, perturbation is performed in units of entities.

[0097] The description of Embodiment 2 is centered on the differences from Embodiment 1, and the description of the same or similar configurations or processes as Embodiment 1 is appropriately omitted.

[0098] (Contribution degree calculation method according to the entity perturbation mode according to Embodiment 2) FIG. 12 is an explanatory diagram of the contribution degree calculation method according to the entity perturbation mode according to Embodiment 2.

[0099] In this embodiment, the "state specified as the object of explanation among the entities of the optimal plan information T2" is "the device 3 is not selected as the object to be repaired", and the "target state" is "the device 3 is selected as the object to be repaired". Also, the "perturbation mode" is the "entity perturbation mode", and the "perturbation target information" is "all devices i". The "perturbation target information" is the entity to be perturbed among the input variable information T1. Also, the "objective function information" is expressed by Equation (1) as in Embodiment 1.

[0100] As shown in FIG. 12, first, a baseline value Xb is calculated from the original input value X0 (input variable information T1) in the same manner as in Embodiment 1 (step S12 (FIG. 5)).

[0101] Next, since the "target state" is "the device 3 is selected as the object to be repaired", for each entity Xi included in a plurality of combinations obtained by combining one or more entities Xi so as to include at least the entity X3 among all the entities Xi, the attribute value is perturbed. Then, each perturbed attribute value is made to match the baseline value Xb (step S14 (FIG. 5)). As a result, the original input value X0 is set to X0 = [X1, X2, X3, X4] T Then, the input value X' after perturbation is X' = [X'1, X'2, X'3, X'4] T and so on.

[0102] In this case, for each entity Xi of the original input value X0 = [X1, X2, X3, X4] T there are two cases of "perturb (flag = 1)" and "do not perturb (flag = 0)", so there are 2 4 = 16 cases. However, the case where all the entities Xi indicated by the original input value X0 are "not perturbed (flag = 0)" is the optimal plan (optimal plan information T2) based on the original input value X0 (input variable information T1).

[0103] Next, an optimal plan P' = F(X') based on the input value X' after perturbation is calculated.

[0104] Here, in this embodiment, for the number M2 of entities (M = 4 in this embodiment), 2M In the loop optimization calculation, "skip unnecessary calculations". At this time, the information indicated by the above-mentioned unit value Vi and unit cost Ci based on the objective function of the above formula (1) and the skip condition table T31 (Fig. 7) are used. Thereby, the amount of calculation is reduced. The skip condition table T31 will be described later with reference to Fig. 7.

[0105] For each of the two optimal plans calculated in this way M2 the Shapley value is calculated. Then, based on the Shapley value, the contribution degree Z of each device i (i = 1, 2, 3, 4) to the "target state" "device 3 is selected as the repair target" is calculated (step S15 (Fig. 5)). However, the contribution degree Z = [z1, z2, z3, z4] = [-0.5, +0.25, +0.05, +0.2].

[0106] Since z1 is the smallest negative value in the contribution degree Z, that is, the contribution of device 1 is the largest in the negative direction, it is estimated that the fact that "device 1 has inhibited device 3 from being selected as the repair target" for the "target state" "device 3 is selected as the repair target". Therefore, as the reason for "device 3 not being selected as the repair target", an answer of "because of device 1" can be generated.

[0107] (Skip condition table T32 in the entity perturbation mode according to Embodiment 2) Fig. 13 is a diagram showing the configuration of the skip condition table T32 in the attribute value perturbation mode according to Embodiment 1. The skip condition table T32 may be stored in the storage unit of the plan explanation unit 3, or may be embedded as logic in the program.

[0108] Prior to the description of Fig. 13, the following is defined. X´p,k = flip(Xp,k ∈ Xp): The attribute value of flip(Xp,k) obtained by taking out one entity Xp,k from the entity Xp indicating that device i is selected as the repair target and perturbing it by inverting the input value. However, "inverting the input value" means the mutual value exchange between the baseline value and the original input value.

[0109] V´p,k = V(flip(Xp,k ∈ Xp)): The value of flip(Xp,k) obtained by taking one entity Xp,k from the entity Xp indicating that device i has been selected for repair and inverting the input value. V´n,k = V(flip(Xn,k ∈ Xn)): The value of flip(Xn,k) obtained by taking one entity Xn,k from the entity Xn indicating that device i has not been selected for repair and inverting the input value.

[0110] X´ = [Xp,1, Xp,2, …, X´p,k, …, Xp,m] T C´p,k = C(flip(Xp,k ∈ Xp)): The cost of flip(Xp,k) obtained by taking one entity Xp,k from the entity Xp indicating that device i has been selected for repair and inverting the input value. C´n,k = C(flip(Xn,k ∈ Xn)): The cost of flip(Xn,k) obtained by taking one entity Xn,k from the entity Xn indicating that device i has not been selected for repair and inverting the input value.

[0111] The skip condition table T32 is information for determining whether the calculation of the optimal plan based on the perturbed input value X´ can be skipped (cancelled). Whether the calculation of the optimal plan can be skipped is based on the "attention state information" and the information on the unit value Vp,k = V(Xp,k) and the unit cost Cp,k = C(Xp,k) based on the perturbed input value X´. The skip condition table T32 has columns of "condition ID", "attention state information", "skip condition", and "explanation of skip condition".

[0112] The "condition ID" and the "attention state information" are the same as those in Embodiment 1.

[0113] The "skip condition" indicates the condition that the unit value Vp,k and the unit cost Cp,k based on the original input value X0 (input variable information T1) and the perturbed input value X' respectively should satisfy, and the value of the selection flag Y(X') based on the perturbed input value X' when the condition is satisfied.

[0114] For example, let the "condition ID" be "1", assuming that the state information of interest is type 1, C(Xp,k∈Xp)≦C(flip(X p,k ∈X p )) and V(Xp,k∈Xp)≧V(flip(Xp,k∈Xp)). In this case, it indicates that the calculation of the optimal plan by the optimal plan calculation unit 36 can be skipped, and the selection flag Y(X') = 1.

[0115] Also, for example, let the "condition ID" be "1", assuming that the state information of interest is type 1, C(Xn,k∈Xp)≧C(flip(Xn,k∈Xn)) and V(Xn,k∈Xn)≦V(flip(Xn,k∈Xn)). In this case, it indicates that the calculation of the optimal plan by the optimal plan calculation unit 36 can be skipped, and the selection flag Y(X') = 0.

[0116] (Skippable Region for Searching Optimal Plan According to Embodiment 1) FIG. 14 is an explanatory diagram of the search region and the skippable region of the optimal plan in the entity perturbation mode according to Embodiment 2.

[0117] The points 1101 to 1103 shown in FIG. 14 are the points where the unit value V * ,k and the unit cost C * ,k (* is p or n) for which the "state determination result: Y" has been evaluated and determined are plotted.

[0118] The points 1101 and 1102 correspond to the case where the attention state information is "device i is not selected as a repair target" (si = 0). From this attention state, if the attribute values of one entity Xn,k other than the entity to be explained change, and both the overall value V and the cost C are improved (the value V increases and the cost C decreases), the entity Xn,k to be explained will not be selected. That is, the regions R1 and R2 shown in FIG. 9 are skipable regions where the search for the optimal plan by the optimal plan calculation unit 36 can be skipped.

[0119] Also, the point 1103 shown in FIG. 14 corresponds to the case where the attention state information is "device i is selected as a repair target" (si = 1). From this attention state, if the attribute values of one entity Xp,k other than the entity to be explained change, and both the overall value V and the cost C deteriorate (the value V decreases and the cost C increases), the entity to be explained will be selected.

[0120] That is, it is possible to determine whether it is skipable from the evaluated points (actual result points) and the information on the changes in the value V and the cost C when changing one entity included therein.

[0121] (Configuration of the unit value list table T42 according to Embodiment 2) FIG. 15 is a diagram showing the configuration of the unit value list table T42 according to Embodiment 2. The unit value list table T42 has columns of "entity name", "unit value Vi", and "unit cost Ci". The unit value list table T42 manages by associating the "unit value Vi" and the "unit cost Ci" for each "entity name".

[0122] (Perturbation data acquisition process according to Embodiment 2) FIG. 16 is a flowchart showing the perturbation data acquisition process according to Embodiment 2. The perturbation data acquisition process according to Embodiment 2 is a process executed in step S14 of the appropriate plan process (FIG. 5) instead of the perturbation data acquisition process according to Embodiment 1.

[0123] First, in step S14a2, the plan explanation unit 3 executes an initialization process. In the initialization process, the plan explanation unit 3 creates a data management table T52 (Fig. 18) and writes the information of the optimal plan into the data management table T52.

[0124] Next, in step S14b2, the skip determination unit 35 executes a skip determination process. In the skip determination process, the skip determination unit 35 detects a perturbable case that can be skipped. The details of the skip determination process will be described later with reference to Fig. 17.

[0125] Next, in step S14c2, the skip determination unit 35 executes a perturbation setting process. In the perturbation setting process, the skip determination unit 35 refers to the data management table T52 (Fig. 18), extracts one case where "state determination result: Y" has not been obtained and the case has not been determined to be skippable in step S14b2. Then, a perturbed input value X' which is the input value after perturbation is generated from the extracted case.

[0126] Next, in step S14d2, the state determination unit 37 calculates an optimal plan by applying the optimization engine by the optimal plan calculation unit 36 to the perturbed input value X' generated in step S14c2. Next, in step S14e2, the state determination unit 37 updates the "state determination result: Y" in the data management table T52 (Fig. 18) based on this optimized plan.

[0127] Next, in step S14f2, the skip determination unit 35 executes a skip determination process. The skip determination unit 35 performs a skip determination process on the newly obtained state determination result acquired (evaluated case) in step S14d2. The details of the skip determination process will be described later with reference to Fig. 17.

[0128] Next, in step S14g2, the skip determination unit 35 refers to the data management table T52 (FIG. 18) and determines whether "status determination result: Y" has been obtained for all perturbation cases. If the skip determination unit 35 obtains "status determination result: Y" for all perturbation cases (step S14g2 Yes), it ends the perturbation data acquisition process and transfers the process to step S15 (FIG. 5). On the other hand, if the skip determination unit 35 has not obtained "status determination result: Y" for all perturbation cases (step S14g2 No), it returns the process to step S14c2.

[0129] (Skip determination process according to Embodiment 2) FIG. 17 is a flowchart showing the skip determination process according to Embodiment 2.

[0130] First, in step S14b21, the skip determination unit 35 executes an evaluated case extraction process. In the evaluated case extraction process, the skip determination unit 35 extracts one case from the data management table T52 (FIG. 18) where "status determination result: Y" is "1" (evaluated) and "skip search completed" is "0". That "skip search completed" is "0" indicates that there are unevaluated cases that can be skipped centered around the corresponding case.

[0131] Next, in step S14b22, the skip determination unit 35 executes a skippable entity search process. In the skippable entity search process, the skip determination unit 35 determines whether the entity to be explained (device 3 in this embodiment) is selected in the evaluated case extracted in step S14b21. When device 3 is selected, since the attention state is "device i (i = 3) is selected as the repair target (si = 1)", according to the skip condition of skip condition ID1, the single value list table T42 (FIG. 15) is referred to. Then, the skip determination unit 35 extracts a group of perturbation cases in which both the single value Vi and the single cost Ci deteriorate when the attribute value of one entity Xp,k other than device i (i = 3) is replaced with the baseline value Xb.

[0132] When the other party and device 3 are not selected, the focus state is "device i (i = 3) is not selected as the repair target (si = 0)". Therefore, according to the skip condition of skip condition ID2, when the attribute value of one entity other than device 3 is swapped with the baseline value Xb, a group of perturbation cases in which both the unit value Vi and the unit cost Ci are improved is extracted.

[0133] Next, in step S14b23, the skip determination unit 35 updates the data management table T52 (FIG. 18) for the group of perturbation cases extracted in step S14b22. That is, values corresponding to "si" and "status determination result: Y" are assigned respectively, "0" is assigned to "actual evaluation", "1" is assigned to "skip", and "1" is assigned to "skip search completed", and the data management table T52 (FIG. 18) is updated.

[0134] Next, in step S14b23, the skip determination unit 35 refers to the data management table T52 (FIG. 18) and determines whether "skip search completed" is "1" for all cases where "status determination result: Y" is obtained. If "skip search completed" is "1" for all cases where "status determination result: Y" is obtained (step S14b24 Yes), the skip determination process ends and the process returns to the calling source step S14b2 or S24f2 (FIG. 16). On the other hand, if it is step S14b24 No, the skip determination unit 35 returns the process to step S14b21.

[0135] (Data management table T52 in the entity perturbation mode according to Embodiment 2) FIG. 18 is a diagram showing the configuration of the data management table T52 in the entity perturbation mode according to Embodiment 2. The data management table T52 has columns of "case ID", "x1", "x2", ···, "xm", "si", "status determination result: Y", "optimal plan", "actual evaluation", "skip", and "skip search completed".

[0136] "Case ID" is identification information of a perturbation case for perturbing entity Xp,k or entity Xn,k in the entity perturbation mode. Entity Xp,k is an entity that is perturbed in units of entities other than entity Xi (in this embodiment, device 3, i.e., i = 3) from the entity Xp of the entity to be explained selected as the repair target. Entity Xn,k is an entity that is perturbed in units of entities other than entity Xi from the entity Xn of the entity to be explained not selected as the repair target. Among the entities Xα (α = 1, 2, ···, m) in FIG. 18, the entities with flag "1" are the entities Xp,k or Xn,k to be perturbed.

[0137] "si" is "1" when entity Xi is selected as the repair target and "0" when not selected. "State determination result: Y" is information indicating whether the attention state is satisfied even after perturbing the entity, and is the determination result of whether device i is selected based on the value after perturbation of the corresponding entity Xp,k or Xn,p.

[0138] "Optimal plan", "Actual evaluation", and "Skip" are the same as in Embodiment 1. "Skip searched" is flag information indicating that it has been evaluated whether there is a case that can be skipped centering on the corresponding case.

[0139] (Effect of the embodiment) In Embodiment 2, perturbation is performed with a plurality of perturbation patterns in units of combinations of entities including the entity corresponding to the attention state. Therefore, it is possible to obtain an explanation of which entity is the factor of the attention state.

[0140] [Embodiment 3] In the above-described Embodiments 1 and 2, since the skip conditions are artificially devised, it is not always possible to cover all skip conditions. Therefore, in Embodiment 3, skip conditions that cannot be explicitly set are experimentally generated based on the simulation results.

[0141] In Embodiment 3, the differences will be described based on Embodiment 1, but Embodiment 2 may also be used as a basis.

[0142] (Configuration of the plan explanation unit 3C according to Embodiment 3) FIG. 19 is a diagram showing the configuration of the plan explanation unit 3C according to Embodiment 3. The plan explanation unit 3C further includes a prediction unit 40 as compared with the plan explanation unit 3 according to Embodiment 1.

[0143] (Perturbation data acquisition process according to Embodiment 3) FIG. 20 is a flowchart showing the perturbation data acquisition process according to Embodiment 3. The perturbation data acquisition process according to Embodiment 3 is different from the perturbation data acquisition process according to Embodiment 1 in that step S14f3 is executed instead of step S14f. The details of the state determination result acquisition process in step S14f3 will be described later with reference to FIG. 21.

[0144] (State determination result acquisition process according to Embodiment 3) FIG. 21 is a flowchart showing the state determination result acquisition process according to Embodiment 3.

[0145] First, in step S14fa, the state determination unit 37 determines whether the prediction flag is "1". When the prediction flag is "1" (step S14faYes), the state determination unit 37 transfers the process to step S14fh. On the other hand, when the prediction flag is "0" (step S14faNo), the state determination unit 37 transfers the process to step S14fb. The initial value of the prediction flag is "0".

[0146] In step S14fb, the state determination unit 37 performs a data volume evaluation. In the data volume evaluation, the state determination unit 37 refers to the data management table T51 (FIG. 11) and acquires the number of data in each case where "state determination result: Y" is "1" and "0".

[0147] Next, in step S14fc, when the number of cases where "State determination result: Y" is "1" is equal to or greater than the threshold Th0 and the number of data cases where it is "0" is equal to or greater than the threshold Th1 (step S14fcYes), the state determination unit 37 transfers the process to step S14fd. On the other hand, when it is step S14fcNo, the state determination unit 37 transfers the process to step S14fi.

[0148] In step S14fd, the state determination unit 37 learns the learning data set T6 (FIG. 22) extracted from the data management table T51 (FIG. 11) to generate a prediction model M. The prediction model M takes the attribute values "x1", "x2", "x3", the "unit value Vi", and the "unit cost Ci" as inputs and outputs "State determination result: Y".

[0149] Next, in step S14fe, the state determination unit 37 evaluates the accuracy of the prediction model M generated in step S14fd. The accuracy of the prediction model M is evaluated based on indexes such as precision rate, correct answer rate, recall rate, and F-measure calculated using an evaluation data set (not shown) having the same items as the learning data set T6 (FIG. 22).

[0150] Next, in step S14ff, the state determination unit 37 determines whether the accuracy of the prediction model M calculated in step S14fe is equal to or greater than the threshold Th2. When the accuracy of the prediction model M is equal to or greater than the threshold Th2 (step S14ffYes), the state determination unit 37 transfers the process to step S14fg. When the accuracy of the prediction model M is less than the threshold Th2 (step S14ffNo), the state determination unit 37 transfers the process to step S14fi.

[0151] In step S14fg, the state determination unit 37 sets "1" in the prediction flag. Next, in step S14fh, for cases where "State determination result: Y" has not been obtained in the data management table T51 (Fig. 11), the state determination unit 37 inputs the attribute values "x1", "x2", "x3" of the perturbation case to be evaluated, the "unit value Vi", and the "unit cost Ci" into the prediction model M, and obtains the output of "State determination result: Y". When step S14fh ends, the state determination unit 37 ends the state determination result acquisition process and transfers the process to step S14g of the perturbation data acquisition process (Fig. 20).

[0152] On the other hand, in step S14fi, the state determination unit 37 executes the state determination result acquisition process in the same manner as step S14f of the perturbation data acquisition process (Fig. 10) in Embodiment 1.

[0153] (Configuration of the learning data set T6 according to Embodiment 3) Fig. 22 is a diagram showing the configuration of the learning data set T6 according to Embodiment 3. The learning data set T6 has columns of "Case ID", "x1", "x2", "x3", "Vi", "Ci", and "State determination result: Y". "Case ID", "x1", "x2", "x3", "Vi", "Ci", and "State determination result: Y" are the same as those in the data management table T51 (Fig. 11).

[0154] (Effect of Embodiment 3) In Embodiment 3, by experimentally generating skip conditions based on the simulation results, skip conditions can be set with higher comprehensiveness than setting skip conditions artificially. Therefore, the skipable range of the optimization process can be appropriately set, and the processing load can be more appropriately reduced during analysis such as generating an explanation of the optimal plan.

[0155] In Embodiment 3, when the prediction accuracy and the number of samples exceed their respective thresholds, the state determination result of the prediction unit 40 is adopted, thereby accurately and quickly accelerating the analysis process of the optimal plan. For the input patterns tried for state determination, it is predicted, for example, for each time-series window (window function), and by evaluating the prediction accuracy, it is effective in cases where the objective function is complex, such as when the objective function includes interactions.

[0156] When the prediction accuracy and the number of samples are below their respective thresholds, the optimization process is skipped by the method of Embodiment 1 or 2, and when it cannot be skipped, state determination is performed by the optimization process. Thereby, the prediction model M and the skip condition are used complementarily to appropriately skip the optimization process, and the processing load can be reduced more efficiently.

[0157] (Hardware Configuration of Computer 1000) FIG. 23 is a diagram showing an example of the hardware configuration of computer 1000. Computer 1000 realizes the optimal plan calculation unit 2 and the plan explanation unit 3 (FIG. 1) by executing a predetermined program.

[0158] Computer 1000 includes a processor 1001 including a CPU, a main memory device 1002, an auxiliary storage device 1003, a network interface 1004, an input device 1005, and an output device 1006, which are interconnected via an internal communication line 1007 such as a bus.

[0159] Processor 1001 controls the overall operation of computer 1000. The main memory device 1002 is composed of, for example, a volatile semiconductor memory and is used as a work memory for processor 1001. The auxiliary storage device 1003 is composed of a large-capacity non-volatile storage device such as a hard disk device, an SSD (Solid State Drive), or a flash memory, and is used to hold various programs and data for a long time.

[0160] The executable program 1003a stored in the auxiliary storage device 1003 is loaded into the main storage device 1002 when the computer 1000 is started up or when necessary, and is executed by the processor 1001. As a result, the optimal plan calculation unit 2, the plan explanation unit 3, the input device, the output device, various terminals, etc. are realized.

[0161] Note that the executable program 1003a may be recorded on a non-transitory recording medium, read from the non-transitory recording medium by a medium reading device, and loaded into the main storage device 1002. Alternatively, the executable program 1003a may be acquired from an external computer via a network and loaded into the main storage device 1002.

[0162] The auxiliary storage device 1003 stores the executable program 1003a that realizes the optimal plan calculation unit 2 and the plan explanation unit 3.

[0163] The network interface 1004 is an interface device for connecting the computer 1000 to each network in the system or for communicating with other computers. The network interface 1004 is composed of, for example, a NIC (Network Interface Card) such as a wired LAN (Local Area Network) or a wireless LAN.

[0164] The input device 1005 is composed of a keyboard, a pointing device such as a mouse, etc., and is used for the user to input various instructions and information to the computer 1000. The output device 1006 is composed of, for example, a display device such as a liquid crystal display or an organic EL (Electro Luminescence) display, and an audio output device such as a speaker, and is used to present necessary information to the user when necessary.

[0165] As described above in detail, the embodiments according to the present disclosure are not limited to the above-described embodiments, and various modifications can be made without departing from the gist thereof. For example, the above-described embodiments have been described in detail for easy understanding of the present invention, and are not necessarily limited to those having all the configurations described. Also, for a part of the configuration of the above-described embodiments, addition, deletion, or replacement with other configurations is possible.

[0166] In addition, each of the above-described configurations, functional units, processing units, etc. may be realized in hardware, for example, by designing a part or all of them with an integrated circuit. Also, each of the above-described configurations, functions, etc. may be realized in software by a processor interpreting and executing a program for realizing each function. Information such as a program, table, file, etc. for realizing each function can be placed in a storage device such as a memory, HDD, SSD, or a recording medium such as an IC card, SD card, DVD.

[0167] Also, in each of the above-described figures, control lines and information lines show those considered necessary for explanation, and do not necessarily show all control lines and information lines in implementation. For example, it may be considered that almost all configurations are actually interconnected.

[0168] Also, each of the above-described processing functions and data arrangement forms is merely an example. Each processing function and data arrangement form can be changed to an optimal arrangement form from viewpoints such as hardware and software performance, processing efficiency, and communication efficiency.

Explanation of Reference Numerals

[0169] 1: Planning analysis system, 2: Optimal plan calculation unit, 3, 3C: Plan explanation unit, 31: Baseline setting unit, 32: Input generation unit, 33: Evaluation value calculation unit, 34: Skip condition setting unit, 35: Skip determination unit, 36: Optimal plan calculation unit, 37: State determination unit, 38: Data management unit, 39: Contribution degree analysis unit, 40: Prediction unit, 1000: Computer, 1001: Processor, 1002: Main memory device, 1003: Auxiliary storage device.

Claims

1. A planning analysis method executed by a planning analysis system that inputs input information including feature amounts of a plurality of entities into an optimization problem including an objective function and constraint conditions, executes optimization processing, and analyzes an optimal plan including a state determination result as to which state among a plurality of states in which the entity is labeled with a discrete value based on the feature amount of the entity is classified, The planning analysis system includes a processor and a storage unit, The storage unit, manages skip conditions including correspondence relationships between target state information indicating a target state that is the state in which the entity of interest is classified based on the feature amount of the entity, a condition for satisfying an evaluation value when a perturbation value based on the feature amount and the target state of the entity is input to an evaluation function based on the objective function and the constraint conditions, and the state in which the entity is classified based on the perturbation value, The processor, receives an input of the target state information, first input information including the feature amounts of the plurality of entities, and perturbation target information specifying a perturbation target to be perturbed in the first input information, calculates the perturbation value based on the feature amount included in the first input information, generates second input information by perturbing the perturbation target indicated by the perturbation target information in the first input information with a plurality of perturbation patterns to the perturbation value based on the target state information and the perturbation target information, for each perturbation pattern, determines whether or not the perturbation value satisfies the condition in the skip condition in the target state indicated by the target state information with respect to the second input information, when the perturbation value satisfies the condition, skips the optimization processing and determines, as the state determination result, the state in which the entity is classified based on the perturbation value based on the skip condition, when the perturbation value does not satisfy the condition, executes the optimization processing with the perturbation value as an input and determines, as the state determination result, the state in which the entity is classified based on the perturbation value, Calculate the contribution degree of the perturbation target to the target state based on the optimal plan including the state determination results related to the plurality of perturbation patterns. A planning analysis method characterized by having each process. **Claim 2** The planning analysis method according to claim 1, wherein the perturbation target is the feature amount of the entity corresponding to the target state indicated by the target state information, and the processor generates the second input information by perturbing the feature amount of the entity in the first input information to the perturbation value in a plurality of perturbation patterns based on the target state information and the perturbation target information. A planning analysis method characterized by this. **Claim 3** The planning analysis method according to claim 2, wherein the skip condition includes a threshold value of the evaluation value in the condition, and the processor updates the threshold value based on the state in which the entity related to the second input information is classified based on the perturbation value. A planning analysis method characterized by this. **Claim 4** The planning analysis method according to claim 1, wherein the perturbation targets are the entity corresponding to the target state indicated by the target state information and other entities other than the entity in the first input information, and the processor generates the second input information by perturbing the feature amount of the target entity and the other entities in the first input information to the perturbation value in a plurality of combinations of the entity and the other entities as the plurality of perturbation patterns in entity units based on the target state information and the perturbation target information. A planning analysis method characterized by this. **Claim 5** An input information including feature amounts of each of a plurality of entities is input to an optimization problem including an objective function and constraint conditions, and an optimization process is executed. A plan analysis method executed by a plan analysis system that analyzes an optimal plan including a state determination result as to which state among a plurality of states in which the entity is labeled with a discrete value based on the feature amount of the entity is as follows: The plan analysis system has a processor and a storage unit, The processor, receives an input of attention state information indicating an attention state that is the state in which the entity of interest is classified based on the feature amount of the entity, first input information including the feature amounts of each of the plurality of entities, and perturbation target information specifying a perturbation target that perturbs in the first input information, calculates a perturbation value based on the feature amounts included in the first input information, generates second input information by perturbing the perturbation target indicated by the perturbation target information in the first input information with a plurality of perturbation patterns to the perturbation value based on the attention state information and the perturbation target information, for each of the perturbation patterns, executes the optimization process with the perturbation value as an input, determines the state in which the entity is classified based on the perturbation value as the state determination result, accumulates data of the perturbation value and the state determination result, learns the accumulated perturbation value and the state determination result, and generates a prediction model that predicts and outputs the state determination result with the perturbation value as an input, The plan analysis method is characterized by having each process.

6. The plan analysis method according to claim 5, The processor, determines the data amount of the accumulated perturbation value and the state determination result, when the data amount is equal to or more than a threshold value, learns the accumulated perturbation value and the state determination result, and generates the prediction model, The plan analysis method is characterized by this.

7. The planning analysis method according to claim 6, wherein the processor evaluates the prediction accuracy of the prediction model, when the prediction accuracy is equal to or higher than a threshold value, for each perturbation pattern, the perturbation value is used as an input to the prediction model, and the state determination result is obtained as an output, calculates the contribution degree of the perturbation target to the target state based on the optimal plan including the state determination results related to the plurality of perturbation patterns A planning analysis method characterized by having each process.

8. The planning analysis method according to claim 7, wherein the storage unit manages skip conditions including the correspondence relationship between the target state information indicating the target state in which the entity of interest is classified in the state based on the feature amount of the entity, the condition for satisfying the evaluation value when the perturbation value based on the feature amount and the target state of the entity is input to the evaluation function based on the objective function and the constraint condition, and the state in which the entity is classified based on the perturbation value, the processor receives inputs of the target state information, the first input information, and the perturbation target information, calculates the perturbation value based on the feature amount included in the first input information, generates the second input information from the first input information based on the target state information, the perturbation target information, and the perturbation value, when the accumulated data amount of the perturbation value and the state determination result is less than a threshold value, or when the prediction accuracy is less than the threshold value, for each perturbation pattern, determines whether or not the perturbation value related to the second input information in the target state satisfies the condition in the skip condition, when the perturbation value satisfies the condition, skips the optimization process, and determines the state in which the entity is classified based on the perturbation value as the state determination result based on the skip condition When the perturbation value does not satisfy the condition, the optimization process is executed with the perturbation value as an input, and the state in which the entity is classified based on the perturbation value is determined as the state determination result. Calculate the contribution degree of the perturbation target to the target state based on the optimal plan including the state determination results related to the plurality of perturbation patterns. A planning analysis method characterized by having each process.

9. An input information including feature amounts of each of a plurality of entities is input into an optimization problem including an objective function and constraint conditions to execute an optimization process, and an optimal plan including a state determination result of which state among a plurality of states in which the entity is labeled with discrete values based on the feature amount of the entity is analyzed. A planning analysis system, The planning analysis system includes a processor and a storage unit. The storage unit Manages skip conditions including a target state information indicating a target state which is a state in which the target entity is classified based on the feature amount of the entity, a condition for satisfying an evaluation value when a perturbation value based on the feature amount of the entity and the target state is input into an evaluation function based on the objective function and the constraint conditions, and the state in which the entity is classified based on the perturbation value. The processor Receives inputs of the target state information, first input information including the feature amounts of each of the plurality of entities, and perturbation target information designating a perturbation target to be perturbed in the first input information. Calculates the perturbation value based on the feature amount included in the first input information. Based on the target state information and the perturbation target information, the perturbation target indicated by the perturbation target information in the first input information is perturbed with a plurality of perturbation patterns to the perturbation value to generate second input information. For each of the perturbation patterns, determine whether the perturbation value related to the second input information in the state of interest indicated by the state-of-interest information satisfies the condition in the skip condition. When the perturbation value satisfies the condition, skip the optimization process and determine, based on the skip condition, the state in which the entity is classified based on the perturbation value as the state determination result. When the perturbation value does not satisfy the condition, execute the optimization process with the perturbation value as the input and determine, as the state determination result, the state in which the entity is classified based on the perturbation value. Calculate the contribution degree of the perturbation target to the state of interest based on an optimal plan including the state determination results related to the plurality of perturbation patterns. A planning analysis system characterized by the above.

10. A planning analysis system that inputs input information including the feature amounts of a plurality of entities into an optimization problem including an objective function and constraint conditions, executes an optimization process, and analyzes an optimal plan including a state determination result of which state among a plurality of states in which the entity is labeled with discrete values based on the feature amounts of the entity. The planning analysis system has a processor and a storage unit. The processor receives an input of state-of-interest information indicating a state of interest, which is the state in which the entity of interest is classified based on the feature amounts of the entity, first input information including the feature amounts of each of the plurality of entities, and perturbation target information designating a perturbation target to be perturbed in the first input information. calculates a perturbation value based on the feature amounts included in the first input information. Based on the state-of-interest information and the perturbation target information, perturbs the perturbation target indicated by the perturbation target information in the first input information with a plurality of perturbation patterns to the perturbation value to generate second input information. For each of the perturbation patterns, execute the optimization process using the perturbation value as an input, and determine, as the state determination result, the state in which the entity is classified based on the perturbation value. Accumulate data on the perturbation value and the state determination result. Generate a prediction model that learns the accumulated perturbation values and state determination results, predicts the state determination result using the perturbation value as an input, and outputs the prediction. A planning analysis system characterized by the above.

Citation Information

Patent Citations

  • Operation optimization method and device of power generation plant

    JP2008199825A