Determination program, determination method, and information processing device
The decision program optimizes actions by using multiple causal data sets and a cost function to ensure target attribute changes are achieved with minimal impact on other attributes, addressing the uncertainty in causal relationship estimation.
Patent Information
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2025-06-26
- Publication Date
- 2026-03-19
AI Technical Summary
Information processing systems face challenges in providing high-quality actions that efficiently change the attribute values of specific attributes when dealing with numerous attributes, as different causal relationships can be estimated based on varying methods, leading to uncertainty and unintended changes in undesirable attributes.
A decision program and method that utilize multiple causal data sets to determine actions that achieve a target attribute value while minimizing changes in other attributes by using constraint data and a cost function to optimize the action data, incorporating linear programming to handle uncertainty in causal relationship estimation.
The approach improves the quality and efficiency of actions by ensuring the target attribute achieves its goal while minimizing unintended changes in other attributes, thus enhancing the reliability and effectiveness of attribute value modifications.
Smart Images

Figure JP2025023076_19032026_PF_FP_ABST
Abstract
Description
Decision program, decision method, and information processing device
[0001] The present invention relates to a decision program, a decision method, and an information processing device.
[0002] Objects typically have attribute values for multiple attributes. For example, company employees have attribute values such as monthly income, overtime hours, and frequency of business trips. A causal relationship may exist between these multiple attributes, where the attribute value of one attribute influences the attribute value of another. Information processing systems may estimate one or more causal relationships between multiple attributes, as well as the causal effects of each causal relationship, by analyzing sample data. The causal effect indicates the magnitude of the influence that the attribute value of one attribute has on the attribute value of another attribute.
[0003] By using estimated causal relationships, information processing systems can predict how much the attribute values of other attributes will change when the attribute value of one attribute is changed. Therefore, information processing systems may suggest actions to change the attribute value of the attribute corresponding to the cause in order to change the attribute value of the attribute corresponding to the result.
[0004] For example, there is a technology that uses a machine learning model to determine the class to which data belongs based on the attribute values of multiple attributes contained in the data, and then shows the user which of the multiple attributes needs to be improved and by how much to change the class.
[0005] International Publication No. 2022 / 003816
[0006] However, when an object has numerous attributes, it can be difficult for an information processing system to provide high-quality actions that efficiently change the attribute values of desired attributes. For example, causal relationships between multiple attributes are estimated from sample data. Therefore, there is uncertainty that different causal relationships may be derived depending on the estimation method. In addition, actions may not only change the attribute values of desired attributes but also change the attribute values of other undesirable attributes. Thus, in one aspect, the present invention aims to improve the quality of actions that change the attribute values of specific attributes.
[0007] In one aspect, a decision program is provided that causes a computer to execute a process that involves obtaining multiple causal data sets that show one or more causal relationships and the strength of one or more causal relationships between multiple attributes, where multiple attributes are common and at least one of the causal relationships and strengths is different; obtaining attribute value data that shows the attribute values of each of the multiple attributes possessed by the object, and constraint data that shows a target for the attribute value of the first attribute among the multiple attributes; and determining action data that shows changing the attribute value of the second attribute among the multiple attributes from the attribute value data, thereby changing the attribute value of the first attribute to achieve the target in all of the multiple causal data sets, and minimizing the value of a cost function that includes the amount of change in the attribute value of the third attribute among the multiple attributes.
[0008] One aspect of this is that the quality of actions that change the attribute values of specific attributes improves.
[0009] This is a diagram illustrating the information processing device of the first embodiment. This is a diagram showing an example of the hardware of the information processing device of the second embodiment. This is a diagram showing an example of a causal graph. This is a diagram showing an example of attribute value data and action data. This is a diagram showing a first example of the effect of action execution on other attributes. This is a diagram showing a first example of change in a target attribute in multiple causal graphs. This is a diagram showing a second example of the effect of action execution on other attributes. This is a diagram showing a second example of change in a target attribute in multiple causal graphs. This is a diagram showing an example of the difference in the effect on other attributes between causal graphs. This is a diagram showing an example of a causal graph generated using a certain parameter value. This is a diagram showing an example of a causal graph generated using a different parameter value. This is a diagram showing a comparison of the amount of change in attribute values. This is a diagram showing an example of input and output of the action recommendation unit. This is a diagram showing a first example of a causal graph and a causal effect matrix. This is a diagram showing a second example of a causal graph and a causal effect matrix. This is a diagram showing an example of constraint data and attribute weights. This is a diagram showing an example of the formulation of a linear programming problem. This is a block diagram showing an example of the function of the information processing device. This is a flowchart showing an example of the action recommendation procedure.
[0010] Hereinafter, this embodiment will be described with reference to the drawings. (a) First Embodiment Figure 1 is a diagram illustrating an information processing device of the first embodiment. The information processing device 10 determines an action to change the attribute values of other attributes so that the attribute value of a desired attribute can achieve a target, based on the causal relationship between a plurality of attributes. The information processing device 10 may be a client device or a server device. The information processing device 10 may also be called a computer, a decision device, a causal analysis device or a machine learning device.
[0011] The information processing device 10 includes a storage unit 11 and a processing unit 12. The storage unit 11 may be a volatile semiconductor memory such as RAM (Random Access Memory). Alternatively, the storage unit 11 may be a non-volatile storage such as an HDD (Hard Disk Drive) or flash memory.
[0012] The processing unit 12 is, for example, a processor such as a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), or a DSP (Digital Signal Processor). However, the processing unit 12 may also include electronic circuits such as an ASIC (Application Specific Integrated Circuit) or an FPGA (Field Programmable Gate Array). The processor executes a program stored in memory, such as RAM. A collection of processors may be called a multiprocessor or simply a "processor."
[0013] The memory unit 11 stores multiple causal data, including causal data 13 and 14, attribute value data 15, and constraint data 16. The causal data indicates one or more causal relationships between multiple attributes, and the strength of each of those one or more causal relationships. A causal relationship is a directional relationship that links two attributes. A causal relationship is a relationship in which the attribute value of one attribute influences the attribute value of the other attribute. One attribute corresponds to the cause, and the other attribute corresponds to the effect. The strength of a causal relationship indicates the magnitude of the influence that the attribute value of one attribute has on the attribute value of the other attribute. The strength may also be called the causal effect.
[0014] Causal data may be represented as a causal graph. A causal graph includes multiple nodes corresponding to multiple attributes and one or more edges corresponding to one or more causal relationships. Each of the one or more edges has a weight indicating its strength. The multiple attributes included in the causal data depend on the domain being analyzed. Each object belonging to that domain has attribute values for multiple attributes. The objects may be people, organizations, inanimate objects, events, etc.
[0015] The information processing device 10 or other information processing device may generate causal data from sample data using an estimation algorithm that estimates causal relationships. The sample data includes multiple records corresponding to multiple objects. Each record includes actual values for multiple attributes.
[0016] In this case, even if the set of attributes is the same, different causal relationships may be estimated, and different causal data may be generated. Causal data 13 and 14 are causal data that have common attributes but differ in at least one of their causal relationships and intensities. Different causal relationships may be estimated from different sample data. Also, different causal relationships may be estimated by different estimation algorithms. Furthermore, different causal relationships may be estimated by giving different parameter values to control the behavior of the estimation algorithm.
[0017] The attribute value data 15 shows the attribute values of each of the multiple attributes that a single object possesses. The attribute values shown in the attribute value data 15 are, for example, the current attribute values of that object. The constraint data 16 shows the target attribute value of the first attribute among the multiple attributes. The first attribute may also be called the target attribute. The target may be expressed by a single target value or by a range of target values. Typically, the attribute value of the first attribute included in the attribute value data 15 does not meet the target shown in the constraint data 16.
[0018] The processing unit 12 generates action data 17 using causal data 13, 14, attribute value data 15, and constraint data 16. The action data 17 indicates an action that can achieve the goal indicated by the constraint data 16. The action data 17 indicates changing the attribute value of a second attribute among multiple attributes from the attribute value data 15. The second attribute is a different attribute from the first attribute. The second attribute may also be called an action attribute. By changing the attribute value of the second attribute, the attribute value of the first attribute changes through one or more causal relationships. Therefore, the action data 17 presents an indirect method for guiding the attribute value of the first attribute to a desired target value.
[0019] At this time, the processing unit 12 determines the action data 17 so as to satisfy both of the following two conditions. The first condition is that in any of the causal data among the multiple causal data, the attribute value of the first attribute changes to achieve the target. When the attribute value of the second attribute is changed, the processing unit 12 can predict the change in the attribute value of the first attribute according to the estimated causal relationship and its strength. For example, the processing unit 12 multiplies the amount of change in the attribute value of the first attribute by the strength included in the causal relationship path from the first attribute to the second attribute.
[0020] However, the causal relationship or its strength differs between causal data 13 and causal data 14. Therefore, even when the same action is performed, the processing unit 12 may calculate different prediction results regarding the change in the attribute value of the first attribute depending on the causal data on which it is based. To compensate for the uncertainty of the prediction, the processing unit 12 determines the action data 17 such that the attribute value of the first attribute achieves the target in both causal data.
[0021] The second condition is that the value of the cost function, which includes the change in the attribute value of the third attribute among the multiple attributes, is minimized to the extent that the attribute value of the first attribute can achieve the target. The third attribute is different from the first and second attributes. Typically, the third attribute is an attribute that we do not want to change from the attribute value data 15. However, if there are multiple attributes that correspond to the third attribute, the second attribute may be included among those multiple third attributes.
[0022] The processing unit 12 may search for action data 17 with the aim of minimizing the value of the cost function described above. Minimizing the value of the cost function means selecting an action that reduces the amount of change in the attribute value of the third attribute. Therefore, unintended changes in the attribute values of attributes other than the target attribute and the action attribute are suppressed. The processing unit 12 may also predict the amount of change in the attribute value of the third attribute from each of the multiple causal data, and the cost function may include the sum of these multiple prediction results.
[0023] The processing unit 12 may use linear programming to search for action data 17 that satisfy the first and second conditions. For example, the processing unit 12 generates a constraint equation that represents the first condition and generates a linear programming problem that includes this constraint equation and a cost function. The processing unit 12 solves the linear programming problem using a linear programming solver to determine the amount of change in the attribute value of the second attribute.
[0024] As an example, attribute value data 15 contains the attribute values of attributes x1, x2, x3, x4, and y. The current attribute value of attribute y is 70. Constraint data 16 indicates a goal to reduce the attribute value of attribute y to 50 or less. Action data 17 indicates an action to reduce the attribute value of attribute x4 by 2 compared to attribute value data 15. This action will change the attribute value of attribute y to 50 or less in both causal data 13 and 14. Furthermore, this action suppresses the change in the attribute values of attributes x1 and x2 more than reducing the attribute value of attribute x3.
[0025] The processing unit 12 outputs action data 17. The processing unit 12 may store the action data 17 in a non-volatile storage, may display it on a display device connected to the information processing apparatus 10, or may transmit it to another information processing apparatus.
[0026] As described above, the information processing apparatus 10 of the first embodiment acquires causal data 13 and 14 indicating one or more causal relationships among a plurality of attributes and the strength of each of the one or more causal relationships. The causal data 13 and 14 have a plurality of common attributes, and at least one of the one or more causal relationships and the strength is different. Further, the information processing apparatus 10 acquires attribute value data 15 indicating the attribute value of each of the plurality of attributes possessed by the object, and constraint data 16 indicating the target of the attribute value of the first attribute among the plurality of attributes.
[0027] The information processing apparatus 10 determines action data 17 indicating to change the attribute value of the second attribute among the plurality of attributes from the attribute value data 15. This action data 17 changes the attribute value of the first attribute so as to achieve the target in any of the causal data 13 and 14. Further, the action data 17 minimizes the value of a cost function including the amount of change in the attribute value of the third attribute among the plurality of attributes.
[0028] Thereby, the information processing apparatus 10 can present an action for the attribute value of the first attribute to achieve the target to the user and can support the user's action. Further, since the information processing apparatus 10 uses a plurality of causal data, it can cover the uncertainty of causal relationship estimation and present a high-quality action with a high possibility of achieving the target. Further, since the information processing apparatus 10 uses a cost function including the amount of change in the attribute value of the third attribute, it can present an efficient action that suppresses an undesirable change in the attribute value.
[0029] (b) Second Embodiment FIG. 2 is a diagram showing a hardware example of the information processing apparatus according to the second embodiment. The information processing apparatus 100 estimates the causal relationship between a plurality of attributes from sample data. The information processing apparatus 100 presents an action for guiding the attribute value of the target attribute to the target value using the estimated causal relationship. However, different information processing apparatuses may perform the estimation of the causal relationship and the presentation of the action. The information processing apparatus 100 may be a client apparatus or a server apparatus. The information processing apparatus 100 corresponds to the information processing apparatus 10 of the first embodiment.
[0030] The information processing apparatus 100 includes a CPU 101, a RAM 102, an HDD 103, a GPU 104, an input interface 105, a media reader 106, and a communication interface 107 connected to a bus. The CPU 101 corresponds to the processing unit 12 of the first embodiment. The RAM 102 or the HDD 103 corresponds to the storage unit 11 of the first embodiment.
[0031] The CPU 101 is a processor that executes program instructions. The CPU 101 loads the program and data stored in the HDD 103 into the RAM 102 and executes the program. The information processing apparatus 100 may have a plurality of processors. The processor that executes a certain process among the plurality of processes performed by the information processing apparatus 100 and the processor that executes a process different from the said process among the plurality of processes may be different. The processor may be referred to as a processor circuitry.
[0032] The RAM 102 is a volatile semiconductor memory that temporarily stores programs and data. The program is executed by the CPU 101, and the data is used for calculations by the CPU 101. The information processing apparatus 100 may have a type of volatile memory other than the RAM.
[0033] The HDD 103 is a non-volatile storage device that stores software programs and data. The software includes an operating system (OS), middleware, and application software. The information processing device 100 may also have other types of non-volatile storage, such as an SSD (Solid State Drive).
[0034] The GPU 104 works in conjunction with the CPU 101 to perform image processing and displays the image on the display device 111 connected to the information processing device 100. The display device 111 is, for example, a CRT (Cathode Ray Tube) display, a liquid crystal display, an organic EL (Electro Luminescence) display, or a projector.
[0035] The GPU 104 may be used as a GPGPU (General Purpose Computing on Graphics Processing Unit). The GPU 104 may execute programs in response to instructions from the CPU 101. The information processing device 100 may have volatile semiconductor memory other than RAM 102 as GPU memory.
[0036] The input interface 105 receives input signals from an input device 112 connected to the information processing device 100. The input device 112 is, for example, a mouse, a touch panel, or a keyboard. Multiple input devices may be connected to the information processing device 100.
[0037] The media reader 106 is a reading device that reads programs and data from the recording medium 113. The recording medium 113 is, for example, a magnetic disk, an optical disk, or a semiconductor memory. Magnetic disks include flexible disks (FDs) and HDDs. Optical disks include CDs (Compact Discs) and DVDs (Digital Versatile Discs). The media reader 106 copies the programs and data read from the recording medium 113 to the RAM 102 or HDD 103.
[0038] The read program may be executed by the CPU 101. The recording medium 113 may be a portable recording medium. The recording medium 113 may be used for distributing programs and data. The recording medium 113 and HDD 103 may be called computer-readable recording media.
[0039] The communication interface 107 communicates with other information processing devices via the network 114. The communication interface 107 may be a wired communication interface connected to the network 114 by a wired cable. Alternatively, the communication interface 107 may be a wireless communication interface connected to the network 114 by a wireless link.
[0040] The action recommendation method of the second embodiment can be used in various domains. For example, the information processing device 100 suggests actions to reduce the risk of employee turnover in a company. In this case, the information processing device 100 analyzes the attribute values of multiple attributes that each employee possesses, such as monthly income, overtime hours, frequency of business trips, satisfaction with the work environment, risk of turnover, and work-life balance.
[0041] As an example, the information processing device 100 suggests actions to improve trust in the company's management. As another example, the information processing device 100 suggests actions to improve the yield of a factory's production line. As yet another example, the information processing device 100 suggests actions to increase hydrogen adsorption to a certain substance in materials development. The following describes the estimation of a causal graph from sample data and the exploration of actions on the causal graph.
[0042] Figure 3 shows an example of a causal graph. The information processing device 100 generates a causal graph 131 from a database containing multiple samples. This database stores historical data showing the actual attribute values for multiple objects. An object represents an entity with multiple attributes. When analyzing the employee turnover risk of a company, the object is the employee. One sample contains attribute values for multiple attributes possessed by one object.
[0043] The causal graph 131 shows the causal relationships between multiple attributes. The causal graph 131 includes multiple nodes corresponding to multiple attributes and multiple edges corresponding to multiple causal relationships. The causal graph 131 is a noncyclic directed graph in which edges have direction. An edge from one node to another represents a causal relationship in which an attribute corresponding to a cause directly influences an attribute corresponding to an effect. Causal relationships can be chained. The causal graph 131 may also be a single connected graph in which all nodes are connected by edges. Alternatively, the causal graph 131 may be a disconnected graph containing multiple disconnected subgraphs.
[0044] Each edge is assigned a numerical value indicating causal effect. The causal effect indicates the magnitude of the influence one attribute has on another attribute. The causal effect shows how much the attribute value of the other attribute changes when the attribute value of one attribute is increased by a unit amount. If the attribute value of the other attribute decreases as the attribute value of one attribute increases, the causal effect takes a negative value.
[0045] Causal graph 131 includes nodes 141-145. Nodes 141-145 represent multiple attributes of a company's employees. Node 141 represents environmental satisfaction. Node 142 represents promotion opportunities. Node 143 represents overtime hours. Node 144 represents business travel frequency. Node 145 represents turnover risk. According to causal graph 131, environmental satisfaction influences overtime hours. Promotion opportunities influence overtime hours and business travel frequency. Overtime hours and business travel frequency influence turnover risk.
[0046] The database used to generate causal graph 131 includes actual values such as environmental satisfaction, promotion opportunities, overtime hours, business trip frequency, and turnover rate. Among the multiple attributes, some have actual values collected through employee surveys, while others have actual values extracted from objective work data. Turnover risk is a value between 0% and 100%.
[0047] Regarding the employee turnover risk, the information processing device 100 may predict it from the attribute values of other attributes according to the causal relationships and causal effects shown in the causal graph 131. Alternatively, the information processing device 100 may train a separate machine learning model that predicts the turnover risk from the attribute values of other attributes using the same database. The information processing device 100 may then use this machine learning model to predict the employee turnover risk.
[0048] The information processing device 100 can generate a causal graph 131 from a database using an estimation algorithm as described in the following non-patent document: Xun Zheng, Bryon Aragami, Pradeep Ravikumar and Eric P. Xin, "DAGs with NO TEARS: Continuous Optimization for Structure Learning", Proc. of the 32nd International Conference on Neural Information Processing Systems (NIPS 2018), pp. 9492-9503, December 2018.
[0049] Shohei Shimizu, Takanori Inazumi, Yasuhiro Sogawa, Aapo Hyvarinen, Yoshinobu Kawahara, Takashi Washio, Patrik O. Hoyer and Kenneth Bollen, "DirectLiNGAM: A Direct Method for Learning a Linear Non-Gaussian Structural Equation Model", Journal of Machine Learning Research, Volume 12, pp. 1225-1248, July 2011.
[0050] For example, for each pair of attributes X and Y, the information processing device 100 adopts one of three assumptions: that there is a causal relationship from attribute X to attribute Y, that there is a causal relationship from attribute Y to attribute X, or that there is no causal relationship. The information processing device 100 adopts the assumption that is statistically most consistent with the set of samples included in the database. After determining the causal relationship for each pair of attributes, the information processing device 100 removes redundant causal relationships from the causal graph.
[0051] For example, a causal graph may include causal relationships from attribute X to attribute Y, from attribute Y to attribute Z, and from attribute X to attribute Z. In this case, the causal relationship from attribute X to attribute Z may be an apparent causal relationship resulting from a chain of the other two causal relationships. Therefore, if the causal effect from attribute X to attribute Z is relatively small, the information processing device 100 may delete the causal relationship from attribute X to attribute Z.
[0052] Furthermore, a causal graph may include, for example, causal relationships from attribute X to attribute Y, from attribute X to attribute Z, and from attribute Y to attribute Z. In this case, the causal relationship from attribute Y to attribute Z may be an apparent causal relationship that arises because both attribute Y and Z are influenced by attribute X. Therefore, if the causal effect from attribute Y to attribute Z is relatively small, the information processing device 100 may delete the causal relationship from attribute Y to attribute Z.
[0053] Figure 4 shows an example of attribute value data and action data. When the causal graph 131 is generated, the information processing device 100 searches for actions to guide the attribute value of a target attribute possessed by a certain object to the target value. Table 151 contains the names of multiple attributes, attribute value data, and action data.
[0054] Attribute value data represents the current attribute values of a single object of interest. For example, attribute value data represents the current attribute values of an employee of interest. As mentioned above, the current turnover risk of an employed employee is predicted from other attribute values using causal graph 131 or other machine learning models. Attribute value data may also be represented as an attribute value vector, which is a numerical vector. An attribute value vector has multiple dimensions corresponding to multiple attributes.
[0055] Action data indicates an action to guide the attribute value of a target attribute included in the attribute value data to a specified target value. The target attribute and its target value are specified by the user. For example, the current employee turnover risk included in the attribute value data might be 70%, and the target is to reduce that employee's turnover risk to 50% or less. The action data indicates changing the attribute value of one or more attributes other than the target attribute.
[0056] Action data may be represented as an action vector, which is a numerical vector. An action vector has the same multiple dimensions as an attribute value vector. Attributes whose values are changed in an action may be called action attributes. In an action vector, the dimensions corresponding to attributes other than action attributes are zero, and the dimensions corresponding to action attributes are non-zero. Non-zero elements indicate the amount of change in the attribute value.
[0057] One search method involves the information processing device 100 searching for the amount of change in the attribute values of other attributes in the causal graph 131 so that the attribute value of the target attribute reaches the target value. The information processing device 100 searches for action data that minimizes the amount of change in the action attribute as much as possible while keeping the target attribute within the limits of achieving the target. For example, the information processing device 100 predicts that reducing overtime hours will lower the risk of employee turnover through the causal relationship from node 143 to node 145 shown in the causal graph 131. The amount of reduction in overtime hours required to reduce the risk of employee turnover by 20% is calculated from the causal effect of this causal relationship.
[0058] However, changing the attribute value of an action attribute may have side effects, such as unintentionally altering the attribute values of other attributes, in addition to guiding the target attribute's value to the target value. These side effects can be undesirable changes. Furthermore, the causal relationships shown in causal graph 131 are estimations based on a sample set. Therefore, due to the uncertainty of the estimation, there is a risk that the target attribute may not achieve its goal even after the action is performed.
[0059] Figure 5 shows a first example of the impact of an action on other attributes. Here, we consider the case where causal graph 131 includes nodes 146 and 147 in addition to nodes 141 to 145. Node 146 represents monthly income. Node 147 represents work-life balance. Overtime hours affect monthly income. Monthly income affects work-life balance.
[0060] According to causal graph 131, reducing overtime by 8 hours lowers the risk of employee turnover by 22%. This achieves the goal of reducing the risk of employee turnover to below 50%. On the other hand, reducing overtime by 8 hours also lowers monthly income by 16,000 yen. A decrease of 16,000 yen in monthly income triggers a chain reaction, lowering work-life balance by 5 points. The decline in employees' work-life balance is an unintended and undesirable side effect. When the goal is to minimize the amount of change in action attributes, actions with significant side effects may be proposed.
[0061] Figure 6 shows a first example of changes in target attributes across multiple causal graphs. The information processing device 100 may generate causal graphs different from causal graph 131, such as causal graphs 132 and 133, from a common database 130.
[0062] For example, the information processing device 100 generates multiple subsets from the database 130 using bootstrap sampling. Bootstrap sampling randomly selects a certain number of samples from the database 130. Even with samples of the same type, different sets of samples may infer different causal relationships. The information processing device 100 generates causal graphs 131 to 133 using different subsets.
[0063] Furthermore, for example, the information processing device 100 implements multiple estimation algorithms. Even when using the same set of samples, different estimation algorithms may infer different causal relationships. The information processing device 100 generates causal graphs 131 to 133 from the database 130 using different estimation algorithms.
[0064] Furthermore, for example, an estimation algorithm may have parameters to control its behavior. These parameters are sometimes called hyperparameters. The information processing device 100 inputs different parameter values into the estimation algorithm. Even when using the same estimation algorithm, different parameter values may lead to the estimation of different causal relationships. The information processing device 100 generates causal graphs 131 to 133 using the different parameter values.
[0065] Causal graphs 131-133 have different causal relationships and different causal effects. According to causal graph 132, the frequency of business trips affects job satisfaction. Promotion opportunities and job satisfaction affect the risk of leaving the company. According to causal graph 133, promotion opportunities affect monthly salary and the frequency of business trips. The frequency of business trips affects monthly salary. Monthly salary and the frequency of business trips affect the risk of leaving the company.
[0066] According to causal graph 131, reducing overtime by 8 hours lowers the risk of employee turnover by 22%. Therefore, the goal of reducing the risk of employee turnover to below 50% is achieved. In contrast, according to causal graphs 132 and 133, reducing overtime by 8 hours does not change the risk of employee turnover. Therefore, the goal of reducing the risk of employee turnover to below 50% is not achieved. Thus, relying on only one causal graph carries the risk of not achieving the goal.
[0067] Therefore, in the second embodiment, the information processing device 100 adds the amount of change in other attributes to the amount of change in the action attribute in addition to the amount of change in the action attribute in the cost function used to evaluate the action. The information processing device 100 suppresses side effects that unintentionally change the attribute values of other attributes through action search that minimizes the value of the cost function. The information processing device 100 also generates multiple causal graphs from the database 130. In any of the multiple causal graphs, the information processing device 100 searches for an action in which the target attribute achieves the goal.
[0068] Figure 7 shows a second example of the impact of an action on other attributes. The information processing device 100 reduces the frequency of business trips by two in exchange for reducing overtime hours by eight hours. The frequency of business trips is, for example, the average number of business trips per month. According to the causal graph 131, the frequency of business trips affects the risk of employee turnover. Reducing the frequency of business trips by two reduces the risk of employee turnover by 24%. This achieves the goal of reducing the risk of employee turnover to below 50%.
[0069] On the other hand, according to causal graph 131, the frequency of business trips does not affect overtime hours, monthly income, or work-life balance. Reducing the frequency of business trips by two does not change work-life balance. This prevents an unintended decline in work-life balance. In terms of suppressing side effects, reducing the frequency of business trips is more advantageous than reducing overtime hours. This aspect is reflected in the cost function.
[0070] Figure 8 shows a second example of the change in target attributes in multiple causal graphs. The information processing device 100 generates causal graphs 131 to 133 from the database 130. As mentioned above, the information processing device 100 may generate different causal graphs from different sets of samples by bootstrap sampling. The information processing device 100 may also generate different causal graphs from different estimation algorithms. Furthermore, the information processing device 100 may generate different causal graphs from different parameter values.
[0071] The information processing device 100 searches for actions that will achieve the target attribute in any of the causal graphs 131 to 133. According to causal graph 132, the frequency of business trips affects environmental satisfaction. Environmental satisfaction affects the risk of employee turnover. Reducing the frequency of business trips by two increases environmental satisfaction by 6 points, which in turn reduces the risk of employee turnover by 27%. This achieves the goal of reducing the risk of employee turnover to below 50%.
[0072] Furthermore, according to causal graph 133, the frequency of business trips affects monthly income and the risk of employee turnover. Reducing the frequency of business trips by two trips reduces monthly income by 10,000 yen, but the overall risk of employee turnover decreases by 21%. This achieves the goal of reducing the risk of employee turnover to below 50%. Therefore, by reducing the frequency of business trips, the target attribute achieves its goal in all of the causal graphs 131 to 133.
[0073] Figure 9 shows an example of the differences in the impact on other attributes between causal graphs. Table 152 contains the names of multiple attributes, attribute value data, and action data. The attribute names and attribute value data are the same as in Table 151 in Figure 4. The action data differs from Table 151 in that it shows an action to reduce the frequency of business trips by two.
[0074] When the action indicated by the action data is performed, the attribute values of one or more attributes change from their attribute value data, according to the causal graph. The attributes whose values change may include attributes other than the target attribute. The attributes whose values change and the amount of change in attribute values may vary depending on the causal graph.
[0075] When attribute value data and action data are applied to causal graph 131, the attribute values of attributes other than turnover risk do not change. Table 153 shows that the attribute values of other attributes do not change. When attribute value data and action data are applied to causal graph 132, in addition to turnover risk, environmental satisfaction changes. Table 154 shows that environmental satisfaction increased by 6 points. When attribute value data and action data are applied to causal graph 133, in addition to turnover risk, monthly income changes. Table 155 shows that monthly income decreased by 10,000 yen.
[0076] The information processing device 100 may represent the effects shown in tables 153 to 155 as influence vectors, which are numerical vectors. Like attribute value vectors and action vectors, influence vectors have multiple dimensions corresponding to multiple attributes. In influence vectors, the dimensions corresponding to the target attribute and attributes whose attribute values do not change are zero. Also, in influence vectors, the dimensions corresponding to attributes whose attribute values other than the target attribute change are non-zero. Non-zero elements indicate the amount of change in attribute values.
[0077] The cost function calculates the sum of the action cost and the side effect cost. The action cost is calculated from the change in the action attribute. For example, the action cost is the L1 norm of the action vector. The side effect cost is calculated from the change in attributes other than the target attribute. For example, the side effect cost is the sum of the L1 norms of the influence vectors of each causal graph across multiple causal graphs.
[0078] However, if the scale differs depending on the attribute, the information processing device 100 may normalize the attribute values using weights corresponding to the attributes. In the example described later, the information processing device 100 determines the weight of each attribute using the standard deviation of the attribute values included in the sample set. The information processing device 100 searches for the action that minimizes the sum of the action cost and the side effect cost. Next, a comparative example of the search method in Figures 5 and 6 and the search method in Figures 7 and 8 will be described.
[0079] Figure 10 shows an example of a causal graph generated using certain parameter values. Causal graph 134 includes several attributes that may be related to "trust in management." The target attribute is trust in management, and the goal is an increase in the attribute value of the target attribute. Causal graph 134 is generated from a database containing multiple samples. One sample contains attribute values extracted from the results of a survey of one employee.
[0080] Causal graph 134 includes various attributes related to working for a company, such as communication with employees, supervisor recommendations, utilization of survey results, trust in management, customer experience, pride, willingness to contribute, resources, work-life balance, sense of fulfillment, job satisfaction, and recommendations. Causal graph 134 shows the causal relationships between these multiple attributes. Each of the multiple causal relationships included in causal graph 134 has a causal effect of -1 to 1.
[0081] Figure 11 shows an example of a causal graph generated using different parameter values. Causal graph 135 contains the same attributes as causal graph 134. However, the causal relationships and causal effects of causal graph 135 are different from those of causal graph 134. Causal graph 135 is generated using the same database and the same estimation algorithm as causal graph 134. However, the parameter values input to the estimation algorithm are different from those in the case of causal graph 134.
[0082] Figure 12 shows a comparison of the amount of change in attribute values. Graphs 161 and 162 show the amount of change in the attribute values of 12 attributes during action execution, respectively. Graph 161 corresponds to searching for an action that minimizes the action cost using only one causal graph. Graph 162 corresponds to searching for an action that minimizes the sum of the action cost and side effect cost using two causal graphs.
[0083] In Graph 161, the action attribute is solely employee communication. In Graph 162, the action attributes are employee communication, utilization of research findings, and resources. The target attribute is trust in management. Other attributes affected by the action, common to both Graphs 161 and 162, are job satisfaction, fulfillment, recommendations, pride, work-life balance, willingness to contribute, supervisor recommendations, and customer experience.
[0084] The actions presented in Graph 161 increase trust in management to the target level by significantly increasing communication with employees alone. However, a side effect is a decrease in recommendations, work-life balance, and willingness to contribute. On the other hand, the actions presented in Graph 162 increase trust in management to the target level by combining and increasing communication with employees, utilization of survey results, and resources. Unlike in Graph 161, recommendations, work-life balance, and willingness to contribute do not decrease in this case.
[0085] Figure 13 shows an example of input and output of the action recommendation unit. The information processing device 100 is equipped with an action recommendation unit 120. The action recommendation unit 120 generates causal graphs 131 to 133 from the database 130. Subsequently, the action recommendation unit 120 receives attribute value data 156 and constraint data 157 and outputs action data 158.
[0086] Attribute value data 156 contains the current attribute value of a single object. Constraint data 157 indicates the constraints that the attribute value of the target attribute must satisfy. Constraint data 157 may further include constraints on attributes other than the target attribute. For example, among multiple attributes, there may be some that are difficult to change, such as an employee's age. Constraint data 157 may specify that the attribute value of such an attribute cannot be changed.
[0087] Action data 158 indicates an action to change the attribute value of the target attribute included in attribute value data 156 to satisfy the constraints indicated by constraint data 157. Action data 158 includes the amount of change to the attribute value of one or more action attributes.
[0088] The action recommendation unit 120 generates a linear programming problem from the causal graphs 131-133, attribute value data 156, and constraint data 157, and searches for the optimal action data 158 using linear programming. Once the causal graphs 131-133 are generated, the action recommendation unit 120 may repeatedly accept attribute value data 156 for different objects and repeatedly generate action data 158 for different objects. The constraint data 157 may be common among different objects or may differ depending on the object.
[0089] A linear programming problem includes a formulated cost function and constraint equations. The action recommendation unit 120 defines variables that indicate the amount of change in the attribute value of each attribute other than the target attribute. The action recommendation unit 120 uses these variables to define a cost function that calculates the sum of the action cost and the side effect cost. The action recommendation unit 120 also uses these variables to define constraint equations that show that the constraints of the constraint data 157 are satisfied in any causal graph.
[0090] The action recommendation unit 120 inputs a formalized linear programming problem, including the cost function and constraints, into the linear programming solver. The linear programming solver searches for variable values that minimize the cost function within the range that satisfies the constraints. The action recommendation unit 120 generates action data 158 using the solution calculated by the linear programming solver. Next, the method for generating the formalized linear programming problem will be described.
[0091] Equation (1) defines the form of the linear programming problem generated in the second embodiment using vector variables. In equation (1), the first row represents the cost function, and the second and third rows represent the constraints. J is the number of causal graphs, B (j)It is an adjacency matrix showing the causal relationships included in the j-th causal graph. When there is a causal relationship from attribute X to attribute Y, the X-row and Y-column of the adjacency matrix B indicate the causal effect of that causal relationship. When there is no causal relationship from attribute X to attribute Y, the X-row and Y-column of the adjacency matrix B are zero.
[0092]
[0093] D is the number of attributes, δ is a variable indicating an action vector, x is an attribute value vector before action execution, and x ^ is an attribute value vector after action execution. c is an action cost, l is the distance between the attribute value vectors before and after action execution. λ is a constant given by the user, and λ = 1 may also be used. M is the number of target attributes, and y m ^ is the attribute value of the m-th target attribute after action execution, and y m * is the target value of the m-th target attribute. Here, y m * represents the lower limit of the attribute value of the target attribute.
[0094] Equation (1) is expanded as in Equation (2) using the elements of the vector. Equation (1) and Equation (2) are equivalent. c d is the weight of the d-th attribute. As will be described later, the weights of each of the plurality of attributes are calculated from a set of samples. δ d is the d-th element included in the action vector and is a variable indicating the change amount of the d-th attribute.
[0095]
[0096] ξ d is a non-negative real number that defines the upper and lower limits of δ [[ID=^33]] d In this linear programming problem, ξ d has the meaning as the absolute value of δ d ν j,d is a non-negative real number that defines the upper and lower limits of the change amount of the attribute value of the d-th attribute in the j-th causal graph. In this linear programming problem, ν j,d has the meaning as the absolute value of the change amount of the attribute value.
[0097] W is the causal effect matrix calculated from the adjacency matrix B. If attribute Y can be reached from attribute X via one or more causal relationships, the X row and Y column of the causal effect matrix W represent the causal effect from attribute X to attribute Y. In this case, the node representing attribute X and the node representing attribute Y do not need to be directly connected in the causal graph. If attribute Y cannot be reached from attribute X, the X row and Y column of the causal effect matrix W are zero.
[0098] The X row and Y column of the causal effect matrix W represent the magnitude of the influence that attribute X will ultimately have on attribute Y through various paths. The causal effect matrix W is calculated as the sum of powers of the adjacency matrix B, as shown in equation (3). Since the causal graph is an acyclic directed graph, the product of the adjacency matrices B usually converges in a finite number of iterations. The attribute value of the d-th attribute after the action is calculated from the action vector δ and the causal effect matrix W, as shown in equation (4).
[0099]
[0100]
[0101] The first term of the cost function, the action cost c(δ), is defined as the weighted L1 norm of the action vector δ, as shown in equation (5). The weighted L1 norm is obtained by multiplying the absolute value of the elements in each dimension of the vector by the weight of that dimension, and summing the resulting products over multiple dimensions. The second term of the cost function, the side effect cost l(x, x) ^ ) is as shown in formula (6), attribute value vector x, x ^ This is the weighted L1 norm of the difference between the two.
[0102]
[0103]
[0104] Weight c of the d-th attribute d c is the reciprocal of the standard deviation of the attribute values for that attribute. Attributes with larger standard deviations have a higher weight c. d The smaller the value and the smaller the standard deviation of an attribute, the greater the weight c. d The weight c is large. dThis has the role of adjusting the scale of the attribute values. The information processing device 100 calculates the standard deviation of each attribute from the set of samples used to generate the causal graph.
[0105] Figure 14 shows a first example of a causal graph and a causal effect matrix. Causal graph 136 shows the causal relationships between attributes x1, x2, x3, x4, and y. Attribute y is the target attribute, and attributes x1, x2, x3, and x4 are not the target attribute. According to causal graph 136, attribute x1 affects attributes x3, x4, and y. Attribute x2 affects attributes x3 and x4. Attribute x3 affects attributes x4 and y.
[0106] The adjacency matrix 171 is the adjacency matrix corresponding to the causal graph 136. The adjacency matrix 171 is a square matrix containing five rows corresponding to attributes x1, x2, x3, x4, and y, and five columns corresponding to attributes x1, x2, x3, x4, and y. The adjacency matrix 171 shows the seven edges included in the causal graph 136 and contains seven non-zero real numbers attached to those edges.
[0107] The information processing device 100 calculates a causal effect matrix 172 from the adjacency matrix 171. The causal effect matrix 172 is the causal effect matrix corresponding to the causal graph 136. The causal effect matrix 172 is a square matrix containing five rows corresponding to attributes x1, x2, x3, x4, and y, and five columns corresponding to attributes x1, x2, x3, x4, and y.
[0108] The causal effect matrix 172 contains eight non-zero elements. Attribute x1 not only directly affects attributes x4 and y, but also indirectly. Therefore, the causal effect from attribute x1 to attributes x4 and y shown in the causal effect matrix 172 differs from that shown in the adjacency matrix 171. Similarly, attribute x2 not only directly affects attribute x4, but also indirectly. Attribute x2 does not have a direct causal relationship with attribute y, but it indirectly affects attribute y.
[0109] Figure 15 shows a second example of a causal graph and a causal effect matrix. Causal graph 137, like causal graph 136, shows the causal relationships between attributes x1, x2, x3, x4, and y. Causal graph 137 is generated using the same database as causal graph 136, but with a different estimation method. According to causal graph 137, attribute x1 affects attributes x3, x4, and y. Attribute x2 affects attributes x3 and y. Attribute x3 affects attribute y. Attribute x4 affects attributes x3 and y.
[0110] The adjacency matrix 173 is the adjacency matrix corresponding to the causal graph 137. The adjacency matrix 173 shows the eight edges included in the causal graph 137 and contains eight non-zero real numbers attached to those edges. The information processing device 100 calculates the causal effect matrix 174 from the adjacency matrix 173. The causal effect matrix 174 is the causal effect matrix corresponding to the causal graph 137. The causal effect matrix 174 contains eight non-zero elements.
[0111] Figure 16 shows an example of constraint data and attribute weights. Table 175 contains constraint data applied to attributes x1, x2, x3, x4, and y. There are no constraints on attributes x1 and x2. Attribute x3 is an attribute that allows an increase in its attribute value but not a decrease. Therefore, the amount of change in the attribute value of attribute x3 is restricted to a non-negative real number. Attribute x4 is an attribute that does not allow a change in its attribute value. The attribute value of the target attribute y is the target value y. * The above is the limiting factor. Target value y * This is specified as a specific numerical value in the constraint data.
[0112] Table 175 also contains the weights for attributes x1, x2, x3, and x4. The information processing device 100 calculates the standard deviations for attributes x1, x2, x3, and x4 from the set of attribute values contained in the database used to generate causal graphs 136 and 137. The information processing device 100 calculates the reciprocal of the standard deviation as the weight.
[0113] Figure 17 shows an example of a linear programming problem formulation. Linear programming problem 176 includes a formulated cost function and constraints. The first three lines of linear programming problem 176 show the cost function. The fourth to fourteenth lines of linear programming problem 176 show the constraints.
[0114] The first row shows the action cost, which corresponds to the weighted L1 norm of the action vector. The second row shows the side effect cost for causal graph 136, which corresponds to the weighted L1 norm of the distance of the attribute value vectors that change according to causal graph 136. The third row shows the side effect cost for causal graph 137, which corresponds to the weighted L1 norm of the distance of the attribute value vectors that change according to causal graph 137.
[0115] The fourth line indicates the constraint that the attribute value of the target attribute calculated according to causal graph 136 is greater than or equal to the target value. The fifth line indicates the constraint that the attribute value of the target attribute calculated according to causal graph 137 is greater than or equal to the target value. In linear programming problem 176, y is a constant that represents the attribute value of the target attribute included in the attribute value data before the action is executed, and y * This is a constant that indicates the target value of the target attribute included in the constraint data.
[0116] Lines 7 and 8 show the attribute values of attributes x3 and x4 after the action is performed, calculated according to causal graph 136. Lines 9 and 10 show the attribute values of attributes x3 and x4 after the action is performed, calculated according to causal graph 137. Line 14 shows the constraints that the change in attribute x3 must be 0 or greater, and that the change in attribute x4 must be 0.
[0117] Linear programming problem 176 imposes a hard constraint that the attribute value of the target attribute satisfies the constraint in all causal graphs. However, the information processing device 100 may relax this hard constraint to a soft constraint that the attribute value of the target attribute satisfies the constraint in as many causal graphs as possible. Alternatively, the information processing device 100 may relax this hard constraint to a soft constraint that the attribute value of the target attribute should be as close as possible to the target value.
[0118] The information processing device 100 uses a linear programming solver to process the variable δ 1 , δ 2 , δ 3 , δ 4 Solve linear programming problem 176 for the variable δ. 1 , δ 2 , δ 3 , δ 4 Among these, the attribute corresponding to the variable whose solution is non-zero is the action attribute, and the non-zero numerical value is the amount of change in the action attribute. The information processing device 100 can quickly search for the optimal action by using a linear programming solver. The information processing device 100 outputs action data indicating the amount of change in the action attribute. Next, the functions and processing procedures of the information processing device 100 will be described.
[0119] Figure 18 is a block diagram showing an example of the functions of an information processing device. The information processing device 100 includes a sample storage unit 121, a graph storage unit 122, a causal estimation unit 123, a recommendation interface 124, a problem generation unit 125, and a linear programming solver 126.
[0120] The sample storage unit 121 and the graph storage unit 122 are implemented using, for example, RAM 102 or HDD 103. The causal estimation unit 123, recommendation interface 124, problem generation unit 125, and linear programming solver 126 are implemented using, for example, CPU 101 and a program. The aforementioned action recommendation unit 120 includes the causal estimation unit 123, recommendation interface 124, problem generation unit 125, and linear programming solver 126.
[0121] The sample storage unit 121 corresponds to the database 130 described above. The sample storage unit 121 stores past data containing multiple samples. Each sample contains attribute values of multiple attributes that a single object previously possessed. The graph storage unit 122 stores multiple causal graphs. Each causal graph shows the causal relationships and causal effects between multiple attributes. These multiple causal graphs contain multiple common attributes and contain different causal relationships and different causal effects. The multiple causal graphs show different estimation results from each other.
[0122] The causal estimation unit 123 analyzes past data stored in the sample storage unit 121 to generate multiple causal graphs and saves the generated causal graphs in the graph storage unit 122. The causal estimation unit 123 may extract a subset of samples from the past data and generate different causal graphs using different subsets. The causal estimation unit 123 may also generate different causal graphs using different estimation algorithms. Furthermore, the causal estimation unit 123 may generate different causal graphs by applying different parameter values to the estimation algorithm.
[0123] The recommendation interface 124 receives attribute value data indicating the current attribute values of an object, and constraint data indicating the constraints that the attribute values must satisfy after an action is performed. The recommendation interface 124 may receive the attribute value data and constraint data from the input device 112, read them from non-volatile storage, or receive them from other information processing devices. In response to the attribute value data and constraint data, the recommendation interface 124 generates action data indicating the recommended action.
[0124] In generating action data, the recommendation interface 124 requests the problem generation unit 125 to generate a linear programming problem and requests the linear programming solver 126 to solve the linear programming problem. The recommendation interface 124 outputs the generated action data. The recommendation interface 124 may display the action data on the display device 111, save it to non-volatile storage, or transmit it to another information processing device.
[0125] The problem generation unit 125 generates a linear programming problem including a cost function and constraint equations in response to a request from the recommendation interface 124. At this time, the problem generation unit 125 defines variables that represent the elements of the action vector and generates a cost function that includes the action cost and the side effect cost. The problem generation unit 125 also generates constraint equations that indicate that the attribute values after the action execution satisfy the constraints in any of the multiple causal graphs.
[0126] The linear programming solver 126 solves the linear programming problem generated by the problem generation unit 125 in response to a request from the recommendation interface 124. At this time, the linear programming solver 126 searches for the value of the variable that minimizes the value of the cost function within the range that satisfies the constraints. The value of this variable indicates which attribute's attribute value should be changed and by how much in the recommended action.
[0127] Figure 19 is a flowchart illustrating an example of the action recommendation procedure. In step S10, the causal estimation unit 123 extracts multiple subsets from the database by bootstrap sampling. Different subsets contain different samples. In step S11, the causal estimation unit 123 generates multiple causal graphs from the multiple subsets. At this time, the causal estimation unit 123 may use the same estimation algorithm or different estimation algorithms. Also, the causal estimation unit 123 may provide the same parameter values to the estimation algorithm or different parameter values to the estimation algorithm.
[0128] If there are multiple causal graphs that have already been generated, the causal estimation unit 123 may skip steps S10 and S11. In step S12, the recommendation interface 124 receives attribute value data and constraint data. In step S13, the problem generation unit 125 calculates a causal effect matrix for each causal graph by multiplying the adjacency matrix, which shows the causal relationship, multiple times. In step S14, the problem generation unit 125 calculates the standard deviation of the attribute values included in the database for each of the multiple attributes, and calculates the reciprocal of the standard deviation as a weight.
[0129] In step S15, the problem generation unit 125 defines variables that represent the amount of change for each of the multiple attributes, and formulates the action cost using the variables and the weights from step S14. The problem generation unit 125 adds the action cost to the cost function. In step S16, for each of the multiple causal graphs, the problem generation unit 125 formulates the side effect cost that represents the amount of change for other attributes using the variables, the weights from step S14, and the causal effect matrix from step S13. The problem generation unit 125 adds the side effect cost to the cost function.
[0130] In step S17, the problem generation unit 125 formulates constraints on the target attributes indicated by the constraint data for each of the multiple causal graphs, using the variables and the causal effect matrix from step S13. The problem generation unit 125 adds these constraints to the constraint equation. In step S18, the problem generation unit 125 formulates other constraints indicated by the constraint data. The problem generation unit 125 adds these constraints to the constraint equation.
[0131] In step S19, the linear programming solver 126 solves the linear programming problem, including the cost function from steps S15 and S16 and the constraints from steps S17 and S18. In step S20, the recommendation interface 124 generates action data that represents the solution to the linear programming problem. The solution to the linear programming problem is the value of the variable that minimizes the value of the cost function within the range that satisfies the constraints. The recommendation interface 124 outputs the action data.
[0132] As described above, the information processing device 100 of the second embodiment estimates causal relationships between multiple attributes from past data and recommends actions for the target attribute to achieve the goal. The action is an action that improves the attribute value of one or more attributes other than the target attribute. This supports the efficient achievement of the goal.
[0133] Furthermore, the information processing device 100 generates multiple causal graphs from the same historical data and recommends actions that enable the target attribute to achieve the goal in the causal relationships shown in any of the causal graphs. This ensures that actions robust to the uncertainty of causal relationship estimation are recommended, increasing the likelihood that the goal will actually be achieved by executing the action.
[0134] Furthermore, the information processing device 100 searches for an action that minimizes the value of a cost function that includes the action cost and the side effect costs of multiple causal graphs. This allows the information processing device 100 to suppress unintended changes in attribute values for attributes other than the target attribute. As a result, a high-quality action that allows the target attribute to efficiently achieve its goal is recommended.
[0135] 10 Information processing device 11 Storage unit 12 Processing unit 13, 14 Causal data 15 Attribute value data 16 Constraint data 17 Action data
Claims
1. A decision program that causes a computer to execute a process that involves obtaining a plurality of causal data sets in which the plurality of attributes are common and at least one of the causal relationships and the intensity of each of the plurality of causal relationships is common, and which have different causal data sets, and obtaining attribute value data in which the attribute values of each of the plurality of attributes possessed by the object are obtained, and constraint data in which the attribute value of the first attribute among the plurality of attributes is determined to change the attribute value of the second attribute among the plurality of attributes from the attribute value data, so as to change the attribute value of the first attribute in any of the causal data sets among the plurality of causal data sets so as to achieve the target, and to minimize the value of a cost function that includes the amount of change in the attribute value of the third attribute among the plurality of attributes.
2. The decision program according to claim 1, wherein the decision includes a process of generating a linear programming problem that includes constraints and a cost function that indicate that the attribute value of the first attribute achieves the objective, and solving the linear programming problem to determine the amount of change in the attribute value of the second attribute.
3. The decision program according to claim 1, wherein the cost function calculates the cost from the amount of change in the attribute value of the second attribute and the amount of change in the attribute value of the third attribute in each of the plurality of causal data.
4. The decision program according to claim 1, wherein the acquisition of the plurality of causal data includes a process of generating the plurality of causal data by changing at least one of the following: sample data showing samples of attribute values of the plurality of attributes; an estimation algorithm for estimating one or more causal relationships and their strengths from the sample data; and parameter values that control the behavior of the estimation algorithm.
5. The determination program according to claim 1, wherein each of the plurality of causal data is a causal graph including a plurality of nodes representing the plurality of attributes and one or more edges representing one or more causal relationships and to which the intensity is added, and the determination includes a process of using the causal graph to calculate the amount of change in the attribute value of the first attribute and the amount of change in the attribute value of the third attribute from the amount of change in the attribute value of the second attribute.
6. A decision method performed by a computer, comprising: obtaining a plurality of causal data that shows one or more causal relationships between a plurality of attributes and the strength of each of the one or more causal relationships, wherein the plurality of attributes are common and at least one of the one or more causal relationships and the strength is different; obtaining attribute value data that shows the attribute values of each of the plurality of attributes possessed by the object, and constraint data that shows a target for the attribute value of the first attribute among the plurality of attributes; and determining action data that shows to change the attribute value of the second attribute among the plurality of attributes from the attribute value data, such that the attribute value of the first attribute is changed in order to achieve the target in any of the causal data among the plurality of causal data, and the value of a cost function that includes the amount of change in the attribute value of the third attribute among the plurality of attributes is minimized.
7. Information processing apparatus comprising: a storage unit that stores causal data indicating one or more causal relationships between a plurality of attributes and the strength of each of the one or more causal relationships, wherein the plurality of attributes are common and at least one of the one or more causal relationships and the strength is different, attribute value data indicating the attribute values of each of the plurality of attributes possessed by an object, and constraint data indicating a target for the attribute value of a first attribute among the plurality of attributes; and a processing unit that determines action data indicating to change the attribute value of a second attribute among the plurality of attributes from the attribute value data, such that the attribute value of the first attribute is changed in order to achieve the target in any of the causal data among the plurality of causal data, and the value of a cost function including the amount of change in the attribute value of a third attribute among the plurality of attributes is minimized.
Citation Information
Patent Citations
Information processing program, proposition method, and information processing device
WO2022003816A1