Assistance device, assistance method, and assistance program
The support device and method address the challenge of determining constraint conditions for optimization calculations by using a decision tree generated from learning data to provide reference information, thereby simplifying the process for operators.
Patent Information
- Application Number
- JP2024553931
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Filing Date
- 2025-04-14
- Publication Date
- 2025-06-27
AI Technical Summary
Operators face difficulties in determining appropriate constraint conditions for optimization calculations using an objective function, as they require knowledge of the objective function itself.
A support device and method that extracts variables corresponding to feature amounts of the objective function from learning data, generates a decision tree to predict these variables or their values after substitution into a mathematical formula, and presents branching conditions and predicted values as reference information for determining constraint conditions.
Facilitates easy determination of constraint conditions in optimization calculations, reducing the complexity for operators by providing clear reference information based on the decision tree predictions.
Smart Images

Figure 2024095305000001
Abstract
Description
Technical Field
[0001] The present invention relates to a support device and the like that support determination of constraint conditions in optimization calculation using an objective function.
Background Art
[0002] Optimization calculation using an objective function is used in various technical fields. For example, Patent Document 1 below discloses a technique related to optimal control for operating in an optimal state by optimization using an objective function in industrial processes such as petroleum refining processes and petrochemical processes.
Prior Art Documents
Patent Documents
[0003]
Patent Document 1
Summary of the Invention
Problems to be Solved by the Invention
[0004] Optimization calculation using an objective function, including the technique disclosed in Patent Document 1, is performed under given constraint conditions. Therefore, an operator who performs optimization using an objective function needs to set constraint conditions. However, since knowledge about the objective function to be used is required to set appropriate constraint conditions, there have been many operators who feel difficulty in determining constraint conditions.
[0005] One aspect of the present invention has been made in view of the above problems, and an example of the object is to provide a technique for facilitating determination of constraint conditions in optimization using an objective function.
Means for Solving the Problems
[0006] The support device according to one aspect of the present invention includes: a variable extraction unit that extracts a variable corresponding to a feature amount of the objective function from learning data used for generating the objective function; and the variable extracted by the variable extraction unit or a value obtained by substituting the variable into a predetermined mathematical formula, and auxiliary information related to the variable, a decision tree generation unit that generates a decision tree for predicting the variable or a value obtained by substituting the variable into a predetermined mathematical formula; and an information presentation unit that presents the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in the optimization calculation using the objective function.
[0007] According to one aspect of the present invention, a support method includes: at least one processor extracting a variable corresponding to a feature amount of an objective function from learning data used for generating the objective function; and generating a decision tree for predicting the variable or a value obtained by substituting the variable into a predetermined mathematical formula using the extracted variable or the value obtained by substituting the variable into a predetermined mathematical formula, and auxiliary information related to the variable. thing and presenting the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in the optimization calculation using the objective function.
[0008] A support program according to one aspect of the present invention causes a computer to eye function as a variable extraction unit that extracts a variable corresponding to a feature amount of an objective function from learning data used for generating the objective function, a decision tree generation unit that generates a decision tree for predicting the variable or a value obtained by substituting the variable into a predetermined mathematical formula using the variable extracted by the variable extraction unit or the value obtained by substituting the variable into a predetermined mathematical formula, and auxiliary information related to the variable, and an information presentation unit that presents the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in the optimization calculation using the objective function.
Effects of the Invention
[0009] According to one aspect of the present invention, it is possible to easily determine constraint conditions in optimization using an objective function.
Brief Description of the Drawings
[0010]
Figure 1
Figure 2
Figure 3
Figure 4
Figure 5
Figure 6
Figure 7
Figure 8
MODE FOR CARRYING OUT THE INVENTION
[0011] 〔Exemplary Embodiment 1〕 The first exemplary embodiment of the present invention will be described in detail with reference to the drawings. This exemplary embodiment is a basic form for the exemplary embodiments described later.
[0012] (Configuration of the support device) The configuration of the support device 1 according to this exemplary embodiment will be described with reference to FIG. 1. FIG. 1 is a block diagram showing the configuration of the support device 1 according to this exemplary embodiment. As shown in the figure, the support device 1 includes a variable extraction unit 11, a decision tree generation unit 12, and an information presentation unit 13.
[0013] The variable extraction unit 11 , eye extracts variables corresponding to the feature amounts of the objective function from the learning data used for the generation of the objective function.
[0014] The decision tree generation unit 12 generates a decision tree that predicts the variable or the value obtained by substituting the variable into a predetermined mathematical formula, using the variable extracted by the variable extraction unit 11 or the value obtained by substituting the variable into a predetermined mathematical formula, and the auxiliary information related to the variable.
[0015] The information presentation unit 13 presents the branch conditions and predicted values of the decision tree as reference information for determining the constraint conditions in the optimization calculation using the objective function.
[0016] As described above, in the support device 1 according to this exemplary embodiment, a variable extraction unit 11 that extracts a variable corresponding to a feature amount of the objective function from learning data used for generating the objective function, the variable extracted by the variable extraction unit 11 or the value obtained by substituting the variable into a predetermined mathematical formula, and the auxiliary information related to the variable are used to generate a decision tree that predicts the variable or the value obtained by substituting the variable into a predetermined mathematical formula, and a decision tree generation unit 12, and the information presentation unit 13 that presents the branch conditions and predicted values of the decision tree as reference information for determining the constraint conditions in the optimization calculation using the objective function are provided. Therefore, according to the support device 1 according to this exemplary embodiment, an effect that the determination of the constraint conditions in the optimization using the objective function can be facilitated is obtained.
[0017] (Support Program) The functions of the above-described support device 1 can also be realized by a program. The support program according to this exemplary embodiment causes a computer to function as a variable extraction unit 11 that extracts a variable corresponding to a feature amount of the objective function from learning data used for generation of the objective function, a decision tree generation unit 12 that generates a decision tree for predicting the variable or a value obtained by substituting the variable into a predetermined mathematical formula using the variable extracted by the variable extraction unit 11 or the value obtained by substituting the variable into a predetermined mathematical formula and auxiliary information related to the variable, and an information presentation unit 13 that presents the branch condition and prediction value of the decision tree as reference information for determining a constraint condition in the optimization calculation using the objective function. According to this support program, an effect that the determination of the constraint condition in the optimization using the objective function can be facilitated can be obtained.
[0018] (Flow of the support method) The flow of the support method according to this exemplary embodiment will be described with reference to FIG. 2. FIG. 2 is a flowchart showing the flow of the support method according to this exemplary embodiment. Note that support the execution subject of each step in this method may be a processor included in the support device 1, may be a processor included in another device, or may be processors provided in different devices for each step.
[0019] In S11, at least one processor extracts a variable corresponding to a feature amount of the objective function from learning data used for generation of the objective function. Next, in S12, at least one processor generates a decision tree for predicting the variable or a value obtained by substituting the variable into a predetermined mathematical formula using the variable extracted in S11 or the value obtained by substituting the variable into a predetermined mathematical formula and auxiliary information related to the variable. Then, in S13, at least one processor presents reference information that presents the branch condition and prediction value of the decision tree generated in S12 as reference information for determining a constraint condition in the optimization calculation using the objective function.
[0020] As described above, in the support method according to the present exemplary embodiment, at least one processor extracts a variable corresponding to a feature amount of the objective function from learning data used for generating the objective function, and uses the extracted variable or a value obtained by substituting the variable into a predetermined mathematical formula and auxiliary information related to the variable to generate a decision tree for predicting the variable or the value obtained by substituting the variable into a predetermined mathematical formula, and presents the branching conditions and predicted values of the generated decision tree as reference information for determining constraint conditions in the optimization calculation using the objective function. Therefore, according to the support method according to the present exemplary embodiment, an effect that the determination of the constraint conditions in the optimization using the objective function can be facilitated can be obtained.
[0021] 〔Exemplary Embodiment 2〕 (Overview) Based on FIG. 3, the overview of the support device 2 according to Exemplary Embodiment 2 will be described. FIG. 3 is a diagram for explaining the overview of the support device 2 according to Exemplary Embodiment 2 of the present invention. The support device 2 is a device that supports optimization calculation using an objective function, and more specifically, is a device that facilitates the determination of constraint conditions used in the optimization calculation.
[0022] Note that FIG. 3 shows an example in which the support device 2 is a desktop personal computer, but this is merely an example. The support device 2 can also be realized by a general-purpose computer such as a personal computer or a smartphone, or can be realized as a device mainly having a function of supporting the determination of constraint conditions, and can be a stationary device or a portable device.
[0023] The support device 2 extracts a variable corresponding to a feature amount of the objective function from learning data used for generating the objective function. Note that when the support device 2 uses the variables included in the learning data as the feature amounts of the objective function as they are, the support device 2 extracts the variables, and when calculating the feature amounts of the objective function from one or more variables included in the learning data, the support device 2 extracts one or more variables used for calculating the feature amounts.
[0024] The training data shown in FIG. 3 is data that associates state data and action data, and the action data indicates the action to be taken in the state indicated by the state data. The training data may be generated based on actions (which can be said to be appropriate actions) taken in the past and the states at the times when those actions were taken. In this case, it can also be said that the training data is history data indicating the history of decision-making regarding the actions.
[0025] Here, it is assumed that an objective function is generated by inverse reinforcement learning. Therefore, only the number of training data required for inverse reinforcement learning needs to be prepared. In inverse reinforcement learning, usually multiple training data are used, so the support device 2 extracts variables from each training data. Note that the objective function is not limited to being generated by inverse reinforcement learning, and any function generated using the training data is acceptable. For example, the objective function may be generated by a known machine learning method such as density ratio estimation.
[0026] Various types of data can be applied as the action data. For example, when creating a schedule using the above objective function, data indicating a schedule suitable for the state indicated by the state data may be used as the action data. For example, when creating an employee's work schedule, data indicating the employees for each time period as shown in FIG. 3 may be used as the action data.
[0027] Also, for example, when performing resource allocation or matching using the above objective function, data indicating the resource allocation or combination suitable for the state indicated by the state data may be used as the action data. Similarly, when performing sequencing, optimal path search, or automatic control using the above objective function, data indicating the sequence, path, or control content suitable for the state indicated by the state data may be used as the action data.
[0028] Also, the state data only needs to indicate the state when the action indicated by the action data is performed, and the state may be represented by a plurality of variables (St1, St2, …) as shown in the figure. For example, when creating an employee's work schedule, variables indicating the cumulative overtime hours of each employee or variables indicating the maximum working hours per day may be used as state data. The support device 2 extracts such variables from the learning data. Note that the state data may directly become a feature amount of the objective function, or the feature amount of the objective function may be calculated using the variables.
[0029] Next, the support device 2 generates a decision tree for predicting the variable using the auxiliary information related to the extracted variable. The auxiliary information is information related to the extracted variable, and any information that can be used to generate a decision tree may be used. FIG. 3 shows an example in which a variable indicating working hours is extracted, and therefore, in the example of FIG. 3, auxiliary information related to working hours is used. Specifically, the auxiliary information shown in FIG. 3 includes the implementation schedule of the event and weather information. That is, here, it is assumed that the working hours become longer when the event is implemented, and the working hours change according to the weather conditions (such as sunny, rainy, high temperature, low temperature, etc.).
[0030] Note that the auxiliary information only needs to be information related to the extracted variable and is not limited to the above example. For example, various attribute information related to the worker, such as the worker's position, working form, age, gender, and years of service, can also be used as auxiliary information. Also, for example, the work location, etc. may be used as auxiliary information. Further, when the working hours and the number of vacations obtained are not included in the state data, these may be used as auxiliary information.
[0031] In this way, when creating a schedule by optimization calculation, various information related to the assignment target of the schedule can be used as auxiliary information. Also, various information related to each time period to be scheduled (for example, the presence or absence of an event and the weather, etc. in each time period) can be used as auxiliary information.
[0032] Next, the support device 2 generates information indicating the branch conditions and predicted values of the generated decision tree. This information is reference information for the operator to determine the constraint conditions in the optimization calculation using the objective function generated from the learning data. Then, the support device 2 presents the generated reference information to the operator (for example, the operator of the support device 2).
[0033] The mode of presenting the reference information is not particularly limited. In the example of FIG. 3, the support device 2 generates an image of the generated decision tree, that is, an image representing the branch conditions and predicted values as nodes and connecting the nodes with line segments as the reference information, and displays it on the display device 5.
[0034] If it is known under what conditions and what values the variables extracted from the learning data are likely to take, it becomes easier to judge appropriate constraint conditions. Therefore, according to the support device 2, the determination of the constraint conditions can be facilitated. In the example of FIG. 3, the operator determines the constraint conditions with reference to the displayed decision tree and the presence or absence of events during the period when the schedule is created.
[0035] By performing the optimization calculation using the constraint conditions determined in this way and the objective function generated using the learning data, it is possible to estimate the actions to be taken in any state. For example, when the action data included in the learning data indicates the work schedule of an employee, the optimization calculation may be performed using the state data indicating each state that affects the work schedule as the input data. Thereby, the schedule to be adopted in the said state can be estimated.
[0036] The form of the objective function is not particularly limited. For example, when generating the objective function by inverse reinforcement learning, a mathematical formula that multiplies each feature amount by a weight value and adds them may be used as the objective function. In the example of FIG. 3, the weight values of variables 1 to 3 as feature amounts are α to γ. Each feature amount can be said to indicate a factor that affects the action or a perspective that is emphasized in the determination of the action. Also, the weight value multiplied by each feature amount indicates how much that factor or perspective is emphasized, and is learned using the learning data.
[0037] The optimization calculation may be performed by an optimization solver. As the optimization solver, for example, general application programs such as IBM ILOG CPLEX, Gurobi Optimizer, and S CIP can be used. Note that the support device 2 may perform either or both of the generation of the objective function and the optimization calculation.
[0038] (Configuration of the support device) Based on FIG. 4, the configuration of the support device 2 according to this exemplary embodiment will be described. FIG. 4 is a block diagram showing the configuration of the support device 2. As shown in the figure, the support device 2 includes a control unit 20 that comprehensively controls each part of the support device 2, and a storage unit 21 that stores various data used by the support device 2. Further, the support device 2 includes a communication unit 22 for the support device 2 to communicate with other devices, an input unit 23 that receives various data inputs to the support device 2, and an output unit 24 for the support device 2 to output various data. Further, the control unit 20 includes a data acquisition unit 201, a reception unit 202, a variable extraction unit 203, a decision tree generation unit 204, a statistic calculation unit 205, a distribution information generation unit 206, and an information presentation unit 207.
[0039] The data acquisition unit 201 acquires the learning data used for the generation of the objective function. Further, the data acquisition unit 201 also acquires the above-described auxiliary information. The method for acquiring the learning data and the auxiliary information is not particularly limited. For example, the data acquisition unit 201 may acquire the learning data and the auxiliary information input via the input unit 23, or may acquire the learning data and the auxiliary information from other devices via the communication unit 22. Further, a data acquisition unit for acquiring the learning data and a data acquisition unit for acquiring the auxiliary information may be provided separately.
[0040] In addition, the data acquisition unit 201 may obtain auxiliary information by performing a search within a predetermined database using variables extracted from the learning data as keywords. When using weather information or event information as auxiliary information, the data acquisition unit 201 may, for example, access a website on which the weather information or event information is posted, and obtain the weather information or event information for a predetermined period (for example, the target period when creating a schedule) as auxiliary information.
[0041] The reception unit 202 receives a designation of variables to be used for generating reference information. For example, the reception unit 202 may cause the information presentation unit 207 to present each variable extracted by the variable extraction unit 203 to the operator, and cause the operator to select the variables to be used from among the presented variables.
[0042] The variable extraction unit 203 extracts variables corresponding to the feature amounts of the objective function from the learning data acquired by the data acquisition unit 201. For example, when learning data in which state data and action data are associated is acquired as in the example of FIG. 3, the variable extraction unit 203 may extract each variable included in the state data. Note that when the variables included in the learning data are directly used as the feature amounts of the objective function, the variable extraction unit 203 may extract such variables. Also, when the feature amounts of the objective function are calculated from one or more variables included in the learning data, the variable extraction unit 203 may extract one or more variables used for calculating the feature amounts.
[0043] The decision tree generation unit 204 generates a decision tree for predicting the variable using the variable extracted by the variable extraction unit 203 and the auxiliary information related to the variable. For example, when the variable extraction unit 203 extracts a variable indicating the working hours of an employee, the decision tree generation unit 204 generates a decision tree for predicting the working hours using auxiliary information related to the working hours (for example, the implementation schedule of an event, weather information, etc.).
[0044] In addition, when the reception unit 202 receives a specification of a variable used for generating reference information, the decision tree generation unit 204 generates a decision tree using the specified variable. As a result, in addition to the effect exhibited by the support device 1 according to the exemplary embodiment 1, an effect can be obtained that reference information generated based on the variable can be presented to an operator who has specified a variable of interest.
[0045] The method for generating the decision tree by the decision tree generation unit 204 is not particularly limited. For example, the decision tree generation unit 204 may generate a decision tree by an algorithm such as CART (Classification and Regression Tree) or C4.5, or may generate a decision tree by random forest or gradient boosting.
[0046] The statistic calculation unit 205 calculates the statistic of the variable extracted by the variable extraction unit 203. Note that the statistic calculation unit 205 may calculate the statistic of the variable used for generating the reference information, or may calculate the statistic of the variable not used for generating the reference information. For example, when a decision tree for predicting working hours is generated as reference information, the statistic calculation unit 205 may calculate the statistic of the working hours, or may calculate the statistic of other variables such as the number of vacations taken.
[0047] The above statistic may be at least any one of an average value, a median value, a maximum value, a minimum value, a mode value, a variance, a deviation, and a standard deviation. For example, when calculating the average value of "St1" included in the state data in the example of FIG. 3, the statistic calculation unit 205 performs an operation of dividing the sum of the values of "St1" extracted by the variable extraction unit 203 from each learning data by the total number of "St1" extracted.
[0048] The distribution information generation unit 206 generates distribution information indicating the distribution of the variable extracted by the variable extraction unit 203. The distribution information may be any information indicating the distribution of the variable, and may be, for example, a frequency distribution diagram or a scatter diagram of the variable, or may be numerical information such as a combination of the average and variance of the variable.
[0049] The information presentation unit 207 presents to the operator the branch conditions and predicted values of the decision tree generated by the decision tree generation unit 204 as reference information for determining the constraint conditions in the optimization calculation using the objective function generated from the learning data acquired by the data acquisition unit 201. For example, the information presentation unit 207 may present the reference information in a form listing the branch conditions and predicted values, or may present the reference information in a form of displaying an image of the decision tree as shown in FIG. 3. Further, the information presentation unit 207 also presents to the operator the statistical quantities calculated by the statistical quantity calculation unit 205 and the distribution information generated by the distribution information generation unit 206.
[0050] Note that the information presentation unit 207 may cause the reference information to be displayed on a display device, may cause it to be output as audio by an audio output device, or may cause it to be printed by a printing device. Further, the device for outputting the reference information may be included in the support device 2, or may be a device external to the support device 2. For example, the information presentation unit 207 may cause the output unit 24 to output the reference information, or may output it to a display device 5 external to the support device 2 as in the example of FIG. 3. The same applies to the statistical quantities and the distribution information.
[0051] (Use of Mathematical Formulas) Instead of the statistical quantity of the variable extracted by the variable extraction unit 203, the decision tree generation unit 204 may generate a decision tree that predicts the value obtained by substituting the variable into a predetermined mathematical formula using the value obtained by substituting the variable into the predetermined mathematical formula. For example, in a general optimization calculation, the following may be used as the constraint conditions for the variable x. Note that a to c are constants. ax + b > c …(1) ax + b < c …(2) ax + b = c …(3) Therefore, the decision tree generation unit 204 may generate a decision tree that predicts the value calculated by substituting the variable x extracted by the variable extraction unit 203 into a mathematical formula such as “ax + b”. Thereby, it is possible to present to the operator the reference information that is useful when creating the constraint condition formula as described above.
[0052] Also, when calculating the features of the objective function from one or more variables included in the learning data, a decision tree for predicting the values of the features may be generated. In this case, the variable extraction unit 203 extracts one or more variables used for calculating the features, and the decision tree generation unit 204 generates a decision tree for predicting the values of the features calculated using the variables.
[0053] Also, for example, when formulating production plans for a plurality of items using the objective function, the variable extraction unit 203 may extract variables indicating the production quantities of the respective items. In this case, the decision tree generation unit 204 may generate a decision tree for predicting the value obtained by summing the production quantities of all items, that is, the total production quantity of all items. In this case, if the number of items is n (n is an integer of 3 or more), the predetermined mathematical formula is "production quantity of item 1 + production quantity of item 2 +... + production quantity of item n". Thereby, reference information that is useful when setting the total production quantity of all items as a constraint condition can be presented to the operator.
[0054] Similarly, the statistic calculation unit 205 may calculate the statistic of the value obtained by substituting the variable extracted by the variable extraction unit 203 into a predetermined mathematical formula. Also, the distribution information generation unit 206 may generate distribution information indicating the distribution of the value obtained by substituting the variable extracted by the variable extraction unit 203 into a predetermined mathematical formula.
[0055] As described above, the support device 2 includes a statistic calculation unit 205 that calculates the statistic of the variable extracted by the variable extraction unit 203 or the value obtained by substituting the variable into a predetermined mathematical formula, and the information presentation unit 207 also presents the statistic calculated by the statistic calculation unit 205. If the variables extracted from the learning data and the statistics of the values obtained by substituting the variables into a predetermined mathematical formula are known, it becomes easier to determine appropriate constraint conditions. Therefore, according to the support device 2, in addition to the effects achieved by the support device 1 according to the exemplary embodiment 1, an effect of further facilitating the determination of the constraint conditions can be obtained.
[0056] In addition, as described above, the support device 2 includes a distribution information generation unit 206 that generates distribution information indicating the distribution of variables extracted by the variable extraction unit 203 or the values obtained by substituting the variables into a predetermined mathematical formula. The information presentation unit 207 is configured to also present the distribution information generated by the distribution information generation unit 206. If the distribution of variables extracted from the learning data and the distribution of the values obtained by substituting the variables into a predetermined mathematical formula are known, it becomes easier to determine appropriate constraint conditions. Therefore, according to the support device 2, in addition to the effects achieved by the support device 1 according to the exemplary embodiment 1, an effect can be obtained that the determination of the constraint conditions can be made even easier.
[0057] (Switching of learning data to be extracted) The variable extraction unit 203 may classify the learning data acquired by the data acquisition unit 201 into a plurality of categories and extract variables from the learning data of each category. In this case, the decision tree generation unit 204 generates a decision tree corresponding to each category using the variables extracted from the learning data of each category. Note that the generated decision tree may predict the extracted variables or may predict the values obtained by substituting the extracted variables into a predetermined mathematical formula. Also, the auxiliary information used for generating each decision tree may be the same or different.
[0058] In this case, the information presentation unit 207 presents, for each category, reference information indicating the branch conditions and predicted values of each decision tree. As a result, in addition to the effects achieved by the support device 1 according to the exemplary embodiment 1, an effect can be obtained that useful information for determining appropriate constraint conditions for each category can be provided.
[0059] For example, when the learning data is data related to the work schedules of employees over the past year, the variable extraction unit 203 may classify the learning data by period. For example, assume that the variable extraction unit 203 classifies the learning data on a monthly basis. In this case, the decision tree generation unit 204 generates a decision tree for predicting the value of the variable (e.g., working hours) for each month using the variables (e.g., working hours) extracted from the learning data for each month, and the information presentation unit 207 presents the decision tree. Note that the information presentation unit 207 may present the monthly decision trees to the operator by displaying them on one screen, etc., or may display only the decision trees for some months on one screen and allow the operator to switch the target months to be displayed.
[0060] (Application Example 1) In addition to the schedule creation described above, the support device 2 can support the determination of constraint conditions in various optimizations. For example, the support device 2 can also support the determination of optimal resource allocation, the determination of optimal order content, the creation of an optimal production plan, the search for an optimal route, automatic control, and the determination of constraint conditions in matching, etc.
[0061] In this section, an example of supporting the determination of constraint conditions when performing shelf allocation of products by optimization calculation will be described with reference to FIG. 5. FIG. 5 is a diagram showing an example of presenting reference information when performing shelf allocation of products by optimization calculation. Shelf allocation of products is an example of the determination of the optimal resource allocation described above.
[0062] The learning data when performing shelf allocation of products by optimization calculation may include, for example, variables (St1, St2, …) indicating the price, sales volume, etc. of each product as state data as shown in the figure, and information indicating the arrangement of each product as action data. For example, as shown in FIG. 5, when arranging products on shelves arranged in a grid pattern, the arrangement of each product may be represented by a combination of the horizontal position (A, B, C, …) and the vertical position (1, 2, 3, …). In this case, the arrangement of product 1 can be represented as B1, the arrangement of product 2 can be represented as C3, and the arrangements of other products can also be represented by a combination of the alphabet indicating the horizontal position and the number indicating the vertical position in the same way.
[0063] Although not shown, the feature amount of the objective function generated using the learning data shown in FIG. 5 includes the sales amount of the entire shelf. Therefore, in the example of FIG. 5, a decision tree for predicting the sales amount is generated using the above learning data and auxiliary information. As the auxiliary information, location information of the store and weather information are used, so the branching conditions in this decision tree are related to the location of the store and the weather.
[0064] Note that the location information and weather information indicate the location information and weather information of the store where the learning data was obtained for each piece of learning data. Examples of the weather information include the temperature, humidity, weather, etc. of the location where the store is located.
[0065] Of course, the auxiliary information may be information related to the variables extracted by the variable extraction unit 203 and is not limited to these examples. For example, the category of the product, the sales volume of the product, the inventory quantity, the location of the shelf in the store, the sales volume of each shelf, and the presence or absence of events that affect the purchase of products and the number of customers visiting the store may be used as auxiliary information. Also, when the price and sales quantity of the product are not included in the state data, these may be used as auxiliary information.
[0066] When generating the decision tree shown in FIG. 5, the variable extraction unit 203 extracts each variable necessary for calculating the sales amount, which is a feature amount of the objective function for performing the shelf allocation of the product, specifically, the sales quantity and sales price of each product from the learning data. Then, the decision tree generation unit 204 uses the above variables extracted from each learning data to calculate the sales amount corresponding to each learning data, and generates a decision tree using the calculated sales amount and auxiliary information.
[0067] Also, in the example of FIG. 5, together with the decision tree, the statistic calculated by the statistic calculation unit 205, specifically, the past maximum sales amount and minimum sales amount are presented. In this way, the information presentation unit 207 may present the statistic calculated by the statistic calculation unit 205 together with the decision tree. Thereby, the operator can determine the constraint conditions with reference to both the statistic and the decision tree.
[0068] In addition, the reception unit 202 may receive the selection of an operator for the presented decision tree node. In this case, the information presentation unit 207 presents information related to the selected node to the operator. For example, when a node indicating a branching condition is selected, the information presentation unit 207 may present the auxiliary information on which the branching condition is based. Also, for example, when a node indicating a predicted value is selected, the information presentation unit 207 may extract and present variables having values close to the predicted value (for example, values whose difference or ratio from the predicted value is equal to or less than a predetermined threshold) from the learning data, and information related to the variables.
[0069] For example, in the example of FIG. 5, when a node with an expected sales amount of "yyy" is selected, the information presentation unit 207 may extract and present information indicating the arrangement of products when the sales amount was close to "yyy" from the learning data. Also, the information presentation unit 207 may present the statistic calculated by the statistic calculation unit 205 when, for example, a node indicating a predicted value is selected.
[0070] (Application Example 2) In this section, an example of assisting in determining the constraint conditions when determining how to purchase a horse racing ticket by optimization calculation will be described with reference to FIG. 6. FIG. 6 is a diagram showing an example of presenting reference information when determining how to purchase a horse racing ticket by optimization calculation. The way of buying a horse racing ticket is an example of determining the optimal order content described above.
[0071] The learning data when determining how to purchase a winning horse racing ticket (hereinafter referred to as "horse racing ticket") by optimization calculation may include, for example, variables (St1, St2,...) indicating the state of each racehorse as state data as shown in the figure, and information indicating the way of buying a horse racing ticket and the refund amount as action data. The way of buying a horse racing ticket can be represented, for example, using the type of horse racing ticket such as single win or multiple win, the purchase amount of the type of horse racing ticket, and the racehorse to bet on. Also, as the state data, in addition to variables indicating the state of the racehorse, variables indicating the state of the jockey, the state of the racecourse, or the state of the venue can also be used.
[0072] Although not shown, the features of the objective function generated using the learning data shown in FIG. 6 include a variable indicating the profit and loss of purchasing a lottery ticket. Therefore, in the example of FIG. 6, a decision tree for predicting profit and loss is generated using the above learning data and auxiliary information. Specifically, since information indicating the condition of the racecourse and information indicating the purchase budget are used as auxiliary information, the branching conditions in the decision tree are related to these pieces of information.
[0073] The auxiliary information may be information related to the variables extracted by the variable extraction unit 203 and is not limited to these examples. For example, the frame number, which is the number assigned when grouping the horses running in the race, the horse number, which is the number assigned to the horse running in the race, the racecourse, the age of the racehorse, the burden weight indicating the total weight of the jockey and the saddle, etc., the jockey's name, the horse weight, the change amount of the horse weight from the previous race, the type of track of the racecourse (turf, dirt, etc.), and the distance of the race, etc. may be used as auxiliary information. Also, when the win odds and popularity (for example, the ranking of the popularity vote) are not included in the state data, these may be used as auxiliary information.
[0074] When generating the decision tree shown in FIG. 6, the variable extraction unit 203 extracts each variable necessary for calculating the profit and loss, which is a feature of the objective function for determining how to buy lottery tickets, specifically, the variable indicating how to buy lottery tickets and the variable indicating the refund amount, from the learning data. Then, the decision tree generation unit 204 calculates the profit and loss by subtracting the purchase amount of the lottery ticket from the refund amount for each learning data, and generates a decision tree using the calculated profit and loss and the auxiliary information.
[0075] Also, in the example of FIG. 6, together with the decision tree, distribution information generated by the distribution information generation unit 206, specifically, a frequency distribution diagram (histogram) showing the distribution of past profit and loss is presented. In this way, the information presentation unit 207 may present the distribution information generated by the distribution information generation unit 206 together with the decision tree. Thereby, the operator can determine the constraint conditions with reference to both the distribution information and the decision tree.
[0076] Note that the method for determining the constraint conditions in this item is not limited to the case of determining how to buy lottery tickets. The method for determining the constraint conditions in this item can also be applied to the case of determining how to buy voting tickets in other public competitions (such as motorcycle racing, boat racing, auto racing, etc.).
[0077] (Other application examples) For example, when creating a production plan through optimization calculation, the operating rate of each production device, the production quantity for each item, etc. can be used as learning data. Then, the variable extraction unit 203 extracts variables indicating the production quantity for each item, for example, from the learning data, and the decision tree generation unit 204 uses the extracted variables and auxiliary information affecting the production quantity, such as the presence or absence of events and weather information, to generate a decision tree for predicting the total production quantity of all items. In this case, the operator can determine the constraint conditions (for example, the lower limit value of the total production quantity) with reference to the predicted value of the total production quantity according to the presence or absence of events and the weather, etc.
[0078] Also, for example, when performing automatic control through optimization calculation, various measured values (such as temperature and pressure) measured for the device to be controlled and the control parameters of the device, etc. can be used as learning data. Then, the variable extraction unit 203 extracts control parameters, for example, from the learning data, and the decision tree generation unit 204 uses the extracted control parameters and auxiliary information affecting the control parameters, such as the room temperature and humidity of the room where the device is installed, to generate a decision tree for predicting the control parameters. In this case, the operator can determine the constraint conditions (for example, the upper limit value and lower limit value of the control parameters) with reference to the predicted value of the control parameters according to the room temperature and humidity.
[0079] Also, for example, when performing matching of people and objects through optimization calculation, the attribute information of the matching targets (such as age, gender, income, etc.) may be used as learning data. Then, the variable extraction unit 203 extracts a variable indicating, for example, the income of the target person from the learning data, and the decision tree generation unit 204 may generate a decision tree for predicting the income using the extracted variable and auxiliary information related to the income such as the place of residence. In this case, the operator can determine constraint conditions (such as the upper and lower limit values of income for each place of residence) with reference to the predicted value of income according to the place of residence.
[0080] (Flow of processing) The flow of the process (support method) executed by the support device 2 will be described based on FIG. 7. FIG. 7 is a flowchart of the support method according to the exemplary embodiment 2.
[0081] In S21, the data acquisition unit 201 acquires the learning data and auxiliary information used for generating the objective function. Note that the timings for acquiring the learning data and the auxiliary information may be different. The learning data may be acquired before S22, and the auxiliary information may be acquired before S24.
[0082] In S22, the variable extraction unit 203 extracts variables from the learning data acquired in S21. The variables extracted in S22 are variables corresponding to the features of the objective function generated using the learning data acquired in S21 (at least one of the variables used as features as they are and the variables used for calculating the features).
[0083] In S23, the reception unit 202 receives the specification of the variables used for specifying the reference information. For example, the reception unit 202 may present each variable extracted in S22 to the operator and receive the specification of the variables by the operator. Thereby, the variables used for generating the reference information are narrowed down to those specified by the operator.
[0084] Note that the narrowing down of variables used for generating reference information may be performed by the variable extraction unit 203. For example, the variable extraction unit 203 may obtain the weight value of the objective function corresponding to each extracted variable, and use, as variables for generating reference information, those variables whose weight values are equal to or greater than a predetermined threshold. Thereby, it is possible to generate reference information by narrowing down to variables that have a great influence on the optimization calculation. Also, for example, the variable extraction unit 203 may use, as variables for generating reference information, variables included in the constraint conditions set in the past, variables that have been frequently used in the constraint conditions set in the past, or variables of the same type as those variables. For example, if information indicating the variables used in the determined constraint conditions and their types is accumulated, the variable extraction unit 203 can narrow down the variables using this information. Also, the reception unit 202 may have the operator specify, from among the variables narrowed down in this way, the variables to be used for generating reference information.
[0085] In S24, the decision tree generation unit 204 generates a decision tree for predicting the variables specified in S23 using the auxiliary information acquired in S21. Note that, as described above, the decision tree generation unit 204 may generate a decision tree for predicting the value obtained by substituting the variables specified in S23 into a predetermined mathematical formula.
[0086] In S25, the statistic calculation unit 205 calculates the statistics of the variables extracted in S22. Also, in S26, the distribution information generation unit 206 generates the distribution information of the variables extracted in S22. Note that the variables for which the statistics are calculated may be the variables specified in S23, or other variables. Also, the reception unit 202 may also accept the specification of the variables for which the statistics are calculated. Furthermore, the statistic calculation unit 205 may calculate the statistics of the value obtained by substituting the variables extracted in S22 (or the variables specified by the operator among those variables) into a predetermined mathematical formula. The same applies to the distribution information generation unit 206.
[0087] In S27, the information presentation unit 207 presents the branching conditions and predicted values of the decision tree generated in S24 to the operator as reference information. Further, the information presentation unit 207 may also present the statistic calculated in S25 and the distribution information generated in S26 together with the reference information. Thereby, the process of FIG. 7 is completed. Note that it is not necessary to present the reference information, the statistic, and the distribution information simultaneously. For example, the information presentation unit 207 may present any one of the reference information, the statistic, and the distribution information according to the operation of the operator or the like.
[0088] [Modification Example] The execution entity of each process described in the above exemplary embodiment is arbitrary and is not limited to the above example. For example, a support system having the same functions as the support devices 1 and 2 can be constructed by a plurality of devices capable of communicating with each other. For example, by dispersing and providing each block shown in FIGS. 1 and 4 to a plurality of devices, a support system having the same functions as the support devices 1 and 2 can be constructed. Further, for example, each process in the flowcharts shown in FIGS. 2 or 5 can be executed by being shared by a plurality of information processing devices (or processors).
[0089] [Example of Realization by Software] Some or all of the functions of the support devices 1 and 2 may be realized by hardware such as an integrated circuit (IC chip) or may be realized by software.
[0090] In the latter case, the support devices 1 and 2 are realized by a computer that executes instructions of a program, which is software for realizing each function, for example. An example of such a computer (hereinafter referred to as computer C) is shown in FIG. 8. The computer C includes at least one processor C1 and at least one memory C2. A program (support program) P for operating the computer C as either the support device 1 or 2 is recorded in the memory C2. In the computer C, the processor C1 reads and executes the program P from the memory C2, whereby each function of either the support device 1 or 2 is realized.
[0091] As the processor C1, for example, a CPU (Central Processing Unit), GPU (Graphic Processing Unit), DSP (Digital Signal Processor), MPU (Micro Processing Unit), FPU (Floating point number Processing Unit), PPU (Physics Processing Unit), TPU (Tensor Processing Unit), quantum processor, microcontroller, or a combination thereof can be used. As the memory C2, for example, a flash memory, HDD (Hard Disk Drive), SSD (Solid State Drive), or a combination thereof can be used.
[0092] Note that the computer C may further include a RAM (Random Access Memory) for expanding the program P during execution and temporarily storing various data. Further, the computer C may further include a communication interface for transmitting and receiving data to and from other devices. Further, the computer C may further include an input / output interface for connecting input / output devices such as a keyboard, mouse, display, and printer.
[0093] Also, the program P can be recorded on a non-transitory tangible recording medium M readable by the computer C. As such a recording medium M, for example, a tape, disk, card, semiconductor memory, or programmable logic circuit can be used. The computer C can obtain the program P via such a recording medium M. Also, the program P can be transmitted via a transmission medium. As such a transmission medium, for example, a communication network or broadcast wave can be used. The computer C can also obtain the program P via such a transmission medium.
[0094] 〔Supplementary Note 1〕 The present invention is not limited to the above-described embodiments, and various modifications are possible within the scope indicated in the claims. For example, embodiments obtained by appropriately combining the technical means disclosed in the above-described embodiments are also included in the technical scope of the present invention.
[0095] [Supplementary Note 2] Some or all of the above-described embodiments may also be described as follows. However, the present invention is not limited to the aspects described below.
[0096] (Supplementary Note 1) A support device comprising: variable extraction means for extracting a variable corresponding to a feature amount of the objective function from learning data used for generating the objective function; decision tree generation means for generating a decision tree that predicts the variable or a value obtained by substituting the variable into a predetermined mathematical formula using the variable extracted by the variable extraction means, the value obtained by substituting the variable into a predetermined mathematical formula, and auxiliary information related to the variable; and information presentation means for presenting the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in an optimization calculation using the objective function.
[0097] (Supplementary Note 2) The support device according to Supplementary Note 1, further comprising statistic calculation means for calculating a statistic of the variable or a value obtained by substituting the variable into a predetermined mathematical formula extracted by the variable extraction means, wherein the information presentation means also presents the statistic.
[0098] (Supplementary Note 3) The support device according to Supplementary Note 1 or 2, further comprising distribution information generation means for generating distribution information indicating a distribution of the variable or a value obtained by substituting the variable into a predetermined mathematical formula extracted by the variable extraction means, wherein the information presentation means also presents the distribution information.
[0099] (Supplementary Note 4) The support device according to any one of Supplementary Notes 1 to 3, further comprising reception means for receiving a designation of the variable, wherein the decision tree generation means generates the decision tree using the designated variable.
[0100] (Appendix 5) The decision tree generation means generates the decision trees corresponding to the respective sections using the variables extracted from the learning data classified into a plurality of sections, and the information presentation means presents the branching conditions and prediction values of the decision trees for each section. The support device according to any one of Appendices 1 to 4.
[0101] (Appendix 6) At least one processor extracts variables corresponding to the feature amounts of the objective function from the learning data used for generating the objective function, extracted generates a decision tree for predicting the variable or the value obtained by substituting the variable into a predetermined mathematical formula using the variable or the value obtained by substituting the variable into a predetermined mathematical formula and auxiliary information related to the variable, and presents the branching conditions and prediction values of the decision tree as reference information for determining constraint conditions in the optimization calculation using the objective function. A support method including:
[0102] (Appendix 7) A support program that causes a computer to function as a variable extraction means for extracting variables corresponding to the feature amounts of the objective function from the learning data used for generating the objective function, a decision tree generation means for generating a decision tree for predicting the variable or the value obtained by substituting the variable into a predetermined mathematical formula using the variable or the value obtained by substituting the variable into a predetermined mathematical formula and auxiliary information related to the variable, and an information presentation means for presenting the branching conditions and prediction values of the decision tree as reference information for determining constraint conditions in the optimization calculation using the objective function.
[0103] [Appendix Item 3] Some or all of the above-described embodiments can also be expressed as follows. An assistance device including at least one processor, the processor performs a process of extracting a variable corresponding to a feature amount of an objective function from learning data used for generating the objective function, a process of generating a decision tree that predicts the variable or a value obtained by substituting the variable into a predetermined mathematical formula using the extracted variable or the value obtained by substituting the variable into a predetermined mathematical formula and auxiliary information related to the variable, and a process of presenting the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in an optimization calculation using the objective function.
[0104] Note that this assistance device may further include a memory, and the memory may store an assistance program for causing the processor to execute the process of extracting the variable, the process of generating the decision tree, and the process of presenting the reference information. Also, this assistance program may be recorded on a non-transitory tangible computer-readable recording medium.
Explanation of Signs
[0105] 1 Assistance device 11 Variable extraction unit 12 Decision tree generation unit 13 Information presentation unit 2 Assistance device 202 Reception unit 203 Variable extraction unit 204 Decision tree generation unit 205 Statistic calculation unit 206 Distribution information generation unit 207 Information presentation unit
Claims
1. A variable extraction means for extracting variables corresponding to feature quantities of an objective function from learning data used for generating the objective function; a decision tree generating means for generating a decision tree for predicting a variable extracted by the variable extracting means or a value obtained by substituting the variable into a predetermined formula, using auxiliary information related to the variable; and an information presentation means for presenting the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in an optimization calculation using the objective function.
2. a statistics calculation means for calculating statistics of the variables extracted by the variable extraction means or values obtained by substituting the variables into a predetermined formula, The support device according to claim 1 , wherein the information presentation means also presents the statistics.
3. a distribution information generating means for generating distribution information indicating a distribution of the variables extracted by the variable extracting means or a distribution of a value obtained by substituting the variables into a predetermined formula, The support device according to claim 1 , wherein the information presentation means also presents the distribution information.
4. A reception means for receiving the designation of the variable, The support device according to claim 1 , wherein the decision tree generating means generates the decision tree by using the designated variables.
5. the decision tree generation means generates the decision trees corresponding to the respective classifications by using the variables extracted from the training data classified into a plurality of classifications; The support device according to claim 1 , wherein the information presenting means presents a branching condition and a predicted value of the decision tree for each of the segments.
6. At least one processor Extracting variables corresponding to feature quantities of the objective function from learning data used to generate the objective function; generating a decision tree that predicts the extracted variable or a value obtained by substituting the variable into a predetermined formula using the extracted variable or a value obtained by substituting the variable into a predetermined formula and auxiliary information related to the variable; presenting the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in an optimization calculation using the objective function.
7. Computer, a variable extraction means for extracting variables corresponding to features of the objective function from the learning data used for generating the objective function; a decision tree generating means for generating a decision tree for predicting a variable extracted by the variable extracting means or a value obtained by substituting the variable into a predetermined formula, using auxiliary information related to the variable; An assistance program that functions as an information presentation means for presenting the branching conditions and predicted values of the decision tree as reference information for determining constraint conditions in an optimization calculation using the objective function.
Citation Information
Patent Citations
Display device
JP2015228151A