Calculation program, calculation method, and information processing device
The method employs a prediction model and regularization term to estimate instance parameters, addressing the robustness challenges in combinatorial optimization, enabling effective solutions through a unified solver.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-09-18
- Publication Date
- 2026-03-31
AI Technical Summary
Existing combinatorial optimization methods, such as stochastic programming and robust optimization, struggle to find solutions that achieve desired robustness due to challenges like unknown distributions, difficult expected value calculations, overly conservative solutions, and the lack of unified solvers.
A computational method and device that uses a prediction model to estimate instance parameters and incorporates a regularization term in the loss function to search for solutions that balance robustness, allowing for efficient integration of expected value and min-max robust optimization.
This approach enables the finding of solutions that achieve desired robustness in combinatorial optimization problems, overcoming the limitations of existing methods by providing a unified solver for stochastic and robust optimization.
Smart Images

Figure 2026055301000001_ABST
Abstract
Description
[Technical Field]
[0001] This matter relates to arithmetic programs, arithmetic methods, and information processing devices. [Background technology]
[0002] Techniques for optimizing complex combinations have been disclosed (see, for example, Non-Patent Documents 1 and 2). [Prior art documents] [Non-patent literature]
[0003] [Non-Patent Document 1] Ben-Tal, A., El Ghaoui, L., and Nemirovski, A. (2009). Robust optimization, volume 28. Princeton university press. [Non-Patent Document 2] Korte, BH, Vygen, J., Korte, B., and Vygen, J. (2011). Combinatorial optimization, volume 1. Springer. [Overview of the project] [Problems that the invention aims to solve]
[0004] Combinatorial optimization can employ stochastic programming or robust optimization. However, finding a solution that achieves the desired robustness is difficult using either stochastic programming or robust optimization.
[0005] In one aspect, the present invention aims to provide a computational program, a computational method, and an information processing device that can find a solution that achieves desired robustness in a combinatorial optimization problem. [Means for solving the problem]
[0006] In one embodiment, the computation program causes the computer to perform the following processes: generate estimates of instance parameters corresponding to feature data using a prediction model learned with training data that associates feature data to be input with instance parameters to be solved; and search for a solution for the variable using an objective function that includes the variable and the estimated instance parameters for a combinatorial optimization problem, and a loss function that includes a regularization term that changes according to the robustness of the variable. [Effects of the Invention]
[0007] In combinatorial optimization problems, it is possible to find solutions that achieve the desired robustness. [Brief explanation of the drawing]
[0008] [Figure 1] This is a diagram illustrating the verification results. [Figure 2] (a) is a functional block diagram showing the overall configuration of the information processing device according to Example 1, and (b) is a hardware configuration diagram of the information processing device. [Figure 3] This flowchart illustrates an example of how an information processing device operates during machine learning. [Figure 4] This flowchart illustrates an example of how an information processing device operates when using the results of a machine learning model to output an approximate solution to an optimization problem. [Modes for carrying out the invention]
[0009] Optimization problems exist in various industries, including manufacturing and distribution. In particular, combinatorial optimization problems, which involve optimizing combinations, are one of the most important areas in the field of optimization. Combinatorial optimization problems are actively researched in the fields of Operations Research (OR) and mathematical optimization, and are applied in various fields such as transportation, logistics, telecommunications, and finance.
[0010] In these applications, the problem to be solved is formulated as an optimization problem, and decision-making is carried out through the solution obtained by optimization. When making this decision, the instance parameters necessary for the formulation are often unknown. Therefore, a two-step process is common, in which the unknown instance parameters are predicted by a machine learning model or a statistical model learned from past historical data, and decision-making is carried out by the optimization problem formulated using the obtained information.
[0011] First, as an example of optimization, stochastic programming will be described. Assume that the objective function instance parameter c of the optimization problem to be solved is a random variable that varies probabilistically. To consider a linear objective function as an example, assume that the instance parameter c is a coefficient vector. If the probability distribution followed by this vector c is distribution P, the optimization problem to be solved may be formulated as an expected value minimization problem of the following formula (1). In the following formula (1), "s.t." means "subject to". c T is the transposed matrix of c.
Equation
[0012] To solve the above optimization problem, it is necessary to evaluate the expected value, which is difficult to evaluate for a general distribution P. Therefore, it is conceivable to sample N samples {c1, c2,..., c N} from the distribution P, approximate the expected value by the sample mean, and solve the problem of the following formula (2). In this case, as the number of samples N increases to the limit, the obtained solution approaches the optimal solution of the expected value minimization problem.
Equation
[0013] Next, as another example of optimization, robust optimization will be described. In robust optimization, although the distribution P followed by the coefficient vector c of the objective function is unknown, under the situation where it is known that it is included within a certain region u (sometimes also referred to as the uncertainty set), a decision is made such that the solution does not deteriorate even if the coefficient vector c takes any value within the uncertainty set u. As one formulation for realizing this robust optimization, the optimization of the following formula (3) can be considered. The min-max in the following formula means minimizing with respect to c when x is maximized within the range of c ∈ u. T It represents minimizing c as the meaning of x when x is maximized within the range of c ∈ u.
Number
[0014] In the robust optimization problem, data uncertainty can be positively considered, but solving the min-max type of optimization problem in the above formula (3) that includes minimization and maximization is generally difficult even when using a commercial solver. Also, since there is arbitrariness in the setting of the uncertainty set u, there is a possibility that only an overly conservative solution can be obtained depending on the setting method, and it may not be useful for decision-making.
[0015] Here, the problems of stochastic programming and the problems of robust optimization will be sorted out. First, the problems of stochastic programming are as follows. · The distribution followed by the coefficient vector c is generally unknown, and it is difficult to calculate the expected value. · Unless the number of samples N is sampled sufficiently large, it is difficult to obtain an approximate solution to the problem that one originally wants to solve. · It is difficult to apply when sampling the coefficient vector c is difficult.
[0016] Next, the problems of robust optimization are as follows. · There is arbitrariness in the setting of the uncertainty set u, and in some cases, an overly conservative solution may be obtained, which may not be useful for decision-making. · Generally, min-max type optimization problems are difficult to solve.
[0017] The following are common challenges for both stochastic programming and robust optimization. There is no single solver that handles stochastic programming and robust optimization in a unified manner. There is no solver that can achieve the robustness desired by the user beyond min-max type or expected value optimization. • Expected value evaluation and min-max robustness are expected to be in a trade-off relationship, and obtaining a Pareto solution that encompasses both is difficult with existing solvers.
[0018] As described above, it is difficult to find a solution that achieves the desired robustness using stochastic programming or robust optimization. Therefore, the following examples describe cases in which a solution that achieves the desired robustness can be found. [Examples]
[0019] The principle of this embodiment will now be explained.
[0020] In this example, optimization using the continuous relaxation method will be described. The continuous relaxation method is a method of solving an optimization problem in which discrete variables are continuously relaxed into continuous variables, rather than directly dealing with the combinatorial optimization problem to be solved. Here, combinatorial linear integer programming will be described as an example.
[0021] A typical linear integer programming problem can be expressed as an equation for optimizing the inner product of a coefficient vector c and a variable vector x, as shown in equation (4) below. In equation (4) below, x ∈ {0, 1} N x is a discrete variable (binary variable). Various real-world problems such as the traveling salesman problem, the knapsack problem, the graph coloring problem, and the box packing problem can be expressed as linear integer programming problems. Generally, in f(x;A), x represents the variable to be optimized, and A represents a constant that is not to be optimized. Therefore, in equation (4) below, the x vector is the variable to be optimized, and the coefficient vector c is a constant.
number
[0022] In the continuous relaxation method, the discrete variable x ∈ {0,1} N The problem is relaxed to a continuous matrix whose values are between 0 and 1 (inclusive). The continuous matrix p is the desired solution. The loss function (cost function) in equation (5) below is optimized so that each column of the continuous matrix p becomes the optimal solution of the optimization problem. In equation (5) below, the solution is searched for so that the loss function is minimized. If the coefficient vector were known, this relaxation problem would be a linear programming problem and could be solved with a general-purpose solver. However, in the optimization problem dealt with in this embodiment, the coefficient vector c is unknown.
number
[0023] Therefore, in this embodiment, a predictive model p(c|D,v) for instance parameter c is learned from the training data (a pair of input feature data and the instance parameter to be solved) represented by the following equation (6). The training data is assumed to be obtained in advance. As an example, the input feature data is a feature vector. Next, estimates of the instance parameter for a new, unknown feature vector v are generated from the obtained predictive model. The M estimates of instance parameter c are expressed as shown in the following equation (7).
number
number
[0024] Variable P ∈ [0,1] for the optimization problem to be solved. N×M We introduce the following and solve the optimization problem using the loss function in equation (8) below. In this embodiment, the left-hand term is the objective function which includes the variable P and the estimated value of the instance parameter c. In equation (8) below, the variable P is the variable to be optimized, and the estimated value of the instance parameter c is a constant.
number
[0025] The following formula (9), which is the term on the right side of the above formula (8), is a regularization term introduced as an indicator of the robustness of the solution. λ is a hyperparameter. λ is a value that satisfies λ > 0 and is specified in advance by the user.
Number
[0026] After searching for a tentative solution that minimizes the loss function of the above formula (8), adjust the model parameters such as the hyperparameter to other values and search for the solution that minimizes the loss function of the above formula (8) again. For example, update the model parameters using the gradient method or the like. In this way, repeat the solution of the optimization problem of the above formula (8), and when the convergence condition is satisfied, end the search for the optimal solution. Thereby, the obtained variable P can be output as a solution that achieves the desired robustness.
[0027] Note that in the process of searching for the optimal solution, monitor the robustness index Ω(P), and when the robustness index Ω(P) also becomes less than or equal to the threshold value set in advance by the user, the search for the optimal solution may be terminated.
[0028] Also, by optimizing the loss function of the following formula (10) so that each column of the continuous matrix P becomes the solution of the optimization problem, a plurality of optimization problems can be solved in parallel. For example, the lower limit λ LB and the upper limit λ UB are set, and by setting the parallel number L, each regularization parameter λl ∈ {λ LB , λ LB + (λ UB - λ LB ) / L,..., λ UB} can be used to simultaneously solve a plurality of robust solutions corresponding thereto.
Number
[0029] The following describes a specific example of the index Ω(P) representing the robustness of a solution. If the variation in the objective function's value is large when the solution for variable P obtained during the optimization process deviates slightly, the solution is considered to have low robustness. On the other hand, if the variation in the objective function's value is small even when the solution for variable P obtained during the optimization process deviates slightly, the solution is considered to have high robustness. The index Ω(P) is a regularization term that changes according to this robustness.
[0030] Therefore, for example, in min-max robust optimization, a provisional variable P for the estimated value of the m-th instance parameter c is considered. :,m ∈[0,1] N Alternatively, the regularization term in equation (11) below may be introduced. The regularization term in equation (11) below represents the maximum value of each objective function Cost in the provisional solution. By introducing equation (11) below as a regularization term, the solution is searched in a way that suppresses the deterioration of the objective function Cost that we want to optimize (minimize) in the optimal solution. Note that each Cost represents "f" in equation (8) above.
number
[0031] Alternatively, the regularization term in equation (12) below may be introduced. The regularization term in equation (12) below represents the sample variance of each objective function Cost in the provisional solution. By introducing equation (12) below as a regularization term, a solution is searched in such a way that the variability of the cost function for each problem is reduced. Note that in equation (12) below, the part in equation (13) below represents the mean. In equation (12) below, Var represents the variance.
number
number
[0032] Figure 1 shows the objective function values and robustness for each case where λ is varied from 0.1 to 1.0 in increments of 0.1. In Figure 1, the vertical axis represents the objective function value. In Figure 1, the vertical axis is set to be larger as the loss function in equation (8) above decreases. Therefore, in Figure 1, a larger value on the vertical axis indicates a better objective function. In Figure 1, the horizontal axis represents robustness. Since a larger value on the horizontal axis corresponds to a larger λ, a larger value on the horizontal axis indicates higher robustness.
[0033] Figure 1 shows that as the regularization term increases, robustness improves, while the instance objective function value decreases. Conversely, as the regularization term decreases, the instance objective function value increases, while robustness decreases. From this, users can set the hyperparameters to achieve their desired level of robustness.
[0034] As described above, by defining a robustness index Ω(P), expected value optimization, min-max robust optimization, and user-specified robust optimization can be easily integrated. Note that multiple different Ω(P) values may be used as robustness indexes. For example, both equations (11) and (12) above may be added as regularization terms.
[0035] Next, the device configuration for realizing the above solution principle will be described. Figure 2(a) is a functional block diagram showing the overall configuration of the information processing device 100 according to Embodiment 1. The information processing device 100 is a server for optimization processing, etc. As illustrated in Figure 2(a), the information processing device 100 functions as an optimization problem storage unit 10, a model parameter storage unit 20, an estimation unit 30, an embedding unit 40, a search unit 50, a parameter adjustment unit 60, an approximate solution output unit 70, etc. The information processing device 100 functions as a machine learning device during machine learning and as a judgment device during judgment.
[0036] Figure 2(b) is a hardware configuration diagram of the information processing device 100. As illustrated in Figure 2(b), the information processing device 100 includes a CPU 101, RAM 102, storage device 103, input device 104, display device 105, etc.
[0037] The CPU (Central Processing Unit) 101 is a central processing unit. The CPU 101 includes one or more cores. The RAM (Random Access Memory) 102 is a volatile memory that temporarily stores programs executed by the CPU 101, data processed by the CPU 101, etc. The storage device 103 is a non-volatile storage device. As the storage device 103, for example, a ROM (Read Only Memory), a solid-state drive (SSD) such as flash memory, or a hard disk driven by a hard disk drive can be used. The storage device 103 stores the calculation program. The input device 104 is a device for the user to input necessary information, such as a keyboard or mouse. The display device 105 is a display device that displays the approximate solution output by the approximate solution output unit 70 on the screen. The CPU 101 executes the calculation program, thereby realizing each part of the information processing device 100. Note that dedicated hardware such as circuits may be used as each part of the information processing device 100.
[0038] Figure 3 is a flowchart illustrating an example of the operation of the information processing device 100 during machine learning. As illustrated in Figure 3, the search unit 50 initializes the model (step S1). Specifically, the search unit 50 sets the model parameters stored in the model parameter storage unit 20 to predetermined initial values.
[0039] Next, the estimation unit 30 learns a prediction model p(c|D,v) for the instance parameter c using the training data, and generates estimates of the instance parameter for a new, unknown feature vector v from the obtained prediction model (step S2).
[0040] Next, the embedding unit 40 embeds the optimization problem stored in the optimization problem storage unit 10 (step S3). This yields the loss function represented by equation (8) above.
[0041] Next, the search unit 50 starts machine learning. The parameter tuning unit 60 adjusts the model parameters for optimization (step S4). By executing step S4, a solution is searched for that minimizes the loss function in equation (8) above using the adjusted model parameters. The parameters here include, for example, the hyperparameter λ mentioned above. When step S3 is executed for the first time, no adjustment of the model parameters is performed.
[0042] Next, the search unit 50 determines whether the robustness condition is met (step S5). For example, it determines whether the value of Ω(P) when a solution was found in step S4 is below a pre-set threshold. If "No" is determined in step S5, the process is repeated from step S4.
[0043] Next, the search unit 50 determines whether the convergence condition is met (step S6). For example, it determines whether the loss function in equation (8) above no longer becomes smaller than a specified value even after step S6 is executed repeatedly. If "No" is determined in step S6, the process is executed again from step S4.
[0044] If "Yes" is determined in step S6, the execution of the flowchart ends. In this case, the model parameter storage unit 20 stores the model parameters that result in the smallest loss function in equation (8) above.
[0045] The machine learning method shown in Figure 3 yields a machine learning model that minimizes the loss function in equation (8) above. The machine learning model (model parameters) is stored in the model parameter storage unit 20.
[0046] Figure 4 is a flowchart illustrating an example of the operation of the information processing device 100 when outputting an approximate solution to an optimization problem using the results of the machine learning model obtained by machine learning in Figure 3. As illustrated in Figure 4, the embedding unit 40 performs embedding of the optimization problem (step S11).
[0047] Next, the approximate solution output unit 70 obtains the output of the machine learning model (step S12).
[0048] Next, the approximate solution output unit 70 performs thresholding on the optimal solution output by the machine learning model (step S13). For example, a threshold is set for each value output by the machine learning model to convert it into two values, 0 and 1. For example, if each value is converted into two values, such as 0.5, the threshold is set to 1 for values greater than 0.5 and 0 for values less than 0.5.
[0049] In the above example, the estimation unit 30 is an example of an estimation unit that generates estimated values of instance parameters corresponding to feature data using a prediction model learned using training data that associates the input feature data with the instance parameters to be solved. The search unit 50 is an example of a search unit that searches for solutions for variables using an objective function that includes the estimated values of the variables and instance parameters for a combinatorial optimization problem, and a loss function that includes a term representing an index of the robustness of the variables.
[0050] Although embodiments of the present invention have been described in detail above, the present invention is not limited to these specific embodiments, and various modifications and changes are possible within the scope of the gist of the present invention as described in the claims. (Note 1) On the computer, This process generates estimated values of instance parameters corresponding to the feature data using a prediction model trained with training data that associates the input feature data with the instance parameters to be solved. A computational program characterized by performing a process of searching for a solution for a combinatorial optimization problem using an objective function that includes the variables and estimated values of the instance parameters, and a loss function that includes a regularization term that changes according to the robustness of the variables. (Note 2) The aforementioned feature data is a feature vector, The calculation program according to Appendix 1, characterized in that the instance parameter is a vector coefficient of the feature vector. (Note 3) The calculation program described in Appendix 2, characterized in that the regularization term uses the maximum value of each objective function in the provisional solution obtained during the search for a solution for the aforementioned variable. (Note 4) The calculation program described in Appendix 2, characterized in that the regularization term uses the sample variance of each objective function in the provisional solution obtained during the search for a solution for the variable. (Note 5) The calculation program described in Appendix 1 is characterized in that, as the loss function, it uses a loss function in which each element of the matrix obtained by relaxing the discrete variable to be optimized into a continuous matrix becomes a discrete optimization problem. (Note 6) Computers This process generates estimated values of instance parameters corresponding to the feature data using a prediction model trained with training data that associates the input feature data with the instance parameters to be solved. A computation method characterized by performing a process of searching for a solution for a combinatorial optimization problem using an objective function that includes a variable and an estimated value of the instance parameter, and a loss function that includes a regularization term that changes according to the robustness of the variable. (Note 7) The aforementioned feature data is a feature vector, The calculation method according to Appendix 6, characterized in that the instance parameter is a vector coefficient of the feature vector. (Note 8) The calculation program described in Appendix 7, characterized in that the regularization term uses the maximum value of each objective function in the provisional solution obtained during the search for a solution for the aforementioned variable. (Note 9) The calculation program described in Appendix 7, characterized in that the regularization term uses the sample variance of each objective function in the provisional solution obtained during the search for a solution for the variable. (Note 10) The calculation method described in Appendix 6, characterized in that the loss function used is a loss function in which each element of the matrix obtained by relaxing the discrete variable to be optimized into a continuous matrix becomes a discrete optimization problem. (Note 11) An estimation unit generates estimated values of instance parameters corresponding to feature data using a prediction model trained with training data that associates the input feature data with the instance parameters to be solved. An information processing device comprising: a search unit that searches for a solution for a combinatorial optimization problem using an objective function that includes a variable and an estimated value of the instance parameter, and a loss function that includes a regularization term that changes according to the robustness of the variable. (Note 12) The aforementioned feature data is a feature vector, The information processing apparatus according to Appendix 11, characterized in that the instance parameter is a vector coefficient of the feature vector. (Note 13) The information processing device according to Appendix 12, characterized in that the maximum value of each objective function in the provisional solution obtained during the search for a solution for the variable is used as the regularization term. (Note 14) The information processing device according to Appendix 12, characterized in that the regularization term uses the sample variance of each objective function in the provisional solution obtained during the search for a solution for the variable. (Note 15) The information processing device according to Appendix 11, characterized in that the loss function used is a loss function in which each element of the matrix obtained by relaxing the discrete variable to be optimized into a continuous matrix becomes a discrete optimization problem. [Explanation of Symbols]
[0051] 10 Optimization Problem Storage Unit 20 Model parameter storage section 30 Estimation part 40 Embedded part 50 Exploration Department 60 Parameter adjustment section 70 Approximate Solution Output Unit 100 Information Processing Devices 101 CPU 102 RAM 103 Storage device 104 Input device 105 Display device
Claims
1. On the computer, This process generates estimated values of instance parameters corresponding to the feature data using a prediction model trained with training data that associates the input feature data with the instance parameters to be solved. A computational program characterized by performing a process of searching for a solution for a combinatorial optimization problem using an objective function that includes the variables and estimated values of the instance parameters, and a loss function that includes a regularization term that changes according to the robustness of the variables.
2. The aforementioned feature data is a feature vector, The calculation program according to claim 1, characterized in that the instance parameter is a vector coefficient of the feature vector.
3. The calculation program according to claim 2, characterized in that the maximum value of each objective function in the provisional solution obtained during the search for a solution of the variables is used as the regularization term.
4. The calculation program according to claim 2, characterized in that the regularization term uses the sample variance of each objective function in the provisional solution obtained during the search for a solution of the variable.
5. The calculation program according to claim 1, characterized in that the loss function used is a loss function in which each element of the matrix obtained by relaxing the discrete variable to be optimized into a continuous matrix becomes a discrete optimization problem.
6. Computers This process generates estimated values of instance parameters corresponding to the feature data using a prediction model trained with training data that associates the input feature data with the instance parameters to be solved. A computation method characterized by performing a process of searching for a solution for a combinatorial optimization problem using an objective function that includes a variable and an estimated value of the instance parameter, and a loss function that includes a regularization term that changes according to the robustness of the variable.
7. An estimation unit generates estimated values of instance parameters corresponding to feature data using a prediction model trained with training data that associates the input feature data with the instance parameters to be solved. An information processing device comprising: a search unit that searches for a solution for a combinatorial optimization problem using an objective function that includes a variable and an estimated value of the instance parameter, and a loss function that includes a regularization term that changes according to the robustness of the variable.