Calculation program, calculation method, and information processing device
The integration of continuous relaxation annealing with a penalty term and perturbation operators in the CTRA-PI-GNN solver addresses the challenges of finding discrete solutions in combinatorial optimization, enabling efficient handling of unknown problems through machine learning.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- FUJITSU LTD
- Filing Date
- 2024-10-07
- Publication Date
- 2026-04-17
AI Technical Summary
Existing methods for solving combinatorial optimization problems, particularly those involving continuous relaxation, face challenges in finding optimal discrete solutions and struggle with unknown problem examples due to complex loss landscapes and difficulties in generalizing from training data.
A method combining continuous relaxation annealing with a penalty term in the cost function, using a CTRA-PI-GNN solver, and applying perturbation operators to generate multiple solutions by training a machine learning model, allowing for efficient inference on unknown problems.
This approach effectively solves unknown combinatorial optimization problems by generating multiple discrete solutions efficiently, overcoming the limitations of traditional methods in handling complex landscapes and data generalization.
Smart Images

Figure 2026066642000001_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] Schuetz, MJ, Brubaker, JK, and Katzgraber, HG (2022a). Combinatorial optimization with physics-inspired graph neural networks. Nature Machine Intelligence, 4(4):367-377. [Non-Patent Document 2] Schuetz, MJ, Brubaker, JK, Zhu, Z., and Katzgraber, HG (2022b). Graph coloring with physics-inspired graph neural networks. Physical Review Research, 4(4):043131. [Overview of the project] [Problems that the invention aims to solve]
[0004] In combinatorial optimization, the search for the optimal solution using a continuous relaxation method with a machine learning model is considered. However, solving multiple problems is difficult. Therefore, it is considered to relax discrete variables into a continuous matrix to solve multiple problem examples. However, solving unknown problem examples is difficult.
[0005] On one side, the present invention aims to provide an arithmetic program, an arithmetic method, and an information processing apparatus that can solve unknown problem examples.
Means for Solving the Problems
[0006] In one aspect, the arithmetic program causes a computer to execute a process of outputting a solution to a discrete optimization problem, in a cost function in a search process of incorporating a continuous relaxation into the discrete optimization problem and performing a search, where each element of a matrix obtained by relaxing a discrete variable to be optimized into a continuous matrix becomes a solution to a plurality of discrete optimization problems, and using the solutions to the plurality of discrete optimization problems obtained by perturbing the plurality of discrete optimization problems and training a machine learning model.
Effects of the Invention
[0007] It can solve unknown problem examples.
Brief Description of the Drawings
[0008] [Figure 1] It is a diagram illustrating perturbation. [Figure 2] It is a diagram illustrating verification results regarding the solution principle. [Figure 3] (a) is a functional block diagram showing the overall configuration of the information processing apparatus according to Example 1, and (b) is a hardware configuration diagram of the information processing apparatus. [Figure 4] It is a flowchart showing an example of the operation of the information processing apparatus during machine learning. [Figure 5] It is a flowchart showing an example of the operation of the information processing apparatus when optimizing using the results of machine learning.
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 applied in a wide range of fields, including transportation, logistics, telecommunications, and finance.
[0010] Combinatorial optimization is an optimization problem formulated as shown in equation (1) below. In equation (1), "C" is a parameter that characterizes the problem. In equation (1), x is a vector represented by 0s and 1s, with N elements. In general, 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 (1), the variable vector x is the variable to be optimized, and the parameter C is a constant.
number
[0011] In recent years, continuous relaxation methods have been developed as an alternative to discrete optimization problems. Continuous relaxation methods are techniques that, instead of solving discrete optimization problems directly, relax the discrete optimization problem and then solve the corresponding continuous optimization problem. A continuous optimization problem can be expressed as shown in equation (2) below. Note that in equation (2) below, [0,1] N This represents an N-dimensional hypercube lattice that takes values of 0 or 1. In equation (2) below, the variable vector p is the variable to be optimized.
number
[0012] However, even with continuous relaxation methods, the Loss Landscape can still be complex. Furthermore, the relaxed optimal solution may differ significantly from the original optimal solution.
[0013] Next, we will explain the combination of unsupervised learning and combinatorial optimization in continuous relaxation solving. In this case, the above variable vector p is characterized by a deep model (DNN: Deep Neural Network), and optimization is performed using the loss function of equation (3) below. In this case, the optimization problem of the continuously relaxed variable p is reduced to the optimization of the DNN parameter θ.
number
[0014] This optimization method may output continuous solutions. Here, a continuous solution is a value greater than 0 and less than 1. When continuous solutions are output, it becomes necessary to round them to either "1" or "0", for example, by using thresholding to set values greater than 1 / 2 to "1" and values less than 1 / 2 to "0". Also, even with the Greedy Algorithm, it suddenly becomes difficult to find a solution once the region where good solutions are obtained is exceeded. Furthermore, transfer learning is difficult.
[0015] Therefore, it is conceivable to use the CRA-PI-ML Solver. In the CRA-PI-ML Solver, a penalty term is introduced into the cost function as shown in equation (4) below. The penalty term is the part shown in equation (5) below, and is a loss term that controls the degree of continuity and discreteness.
number
number
[0016] λ is a parameter used to control the penalty term in equation (5) above, and is a hyperparameter used to control the degree of continuity and discreteness. For example, if λ < 0, continuous solutions will be preferred to be searched, and if λ > 0, discrete solutions will be preferred to be searched.
[0017] As machine learning progresses, the hyperparameter λ is gradually changed from a negative value λ (0) <0 to a positive value λ (T) >0. As a result, the penalty term changes from one in which the loss decreases as the discrete vector p becomes more continuous as machine learning progresses, to one in which the loss increases as the discrete vector p becomes more continuous. For example, if λ is -∞, the output solution is 1 / 2. If λ is +∞, the output solution is a discrete variable of 0 or 1. Such a method is sometimes referred to as a continuous relaxation annealing method (continuous relaxation annealing method). By controlling in this way, machine learning will end when the discrete vector is almost a discrete value.
[0018] However, in the CRA-PI-ML Solver, only one solution is output. Therefore, it is conceivable to use the CTRA-PI-GNN solver. In the CTRA-PI-GNN solver, the discrete variable is relaxed into a hypercube matrix P θ ∈[0,1] N×M The loss function of the following formula (6) is optimized so that each column P θ of the continuous matrix P θ becomes the solution of the optimization problem. Note that P θ :,m means the m-th column vector of the continuous matrix P θ By this optimization, it becomes possible to obtain solutions to a plurality of problems simultaneously with almost the same calculation time as the CRA-PI-ML Solver.
Number
[0019] However, it is difficult to solve unknown problem examples with the above CTRA-PI-GNN solver.
[0020] Therefore, in the following examples, examples that can solve unknown problem examples will be described.
Example
[0021] First, let's explain the principle of this embodiment. In this embodiment, we use a CTRA-PI-GNN solver that has solved a set of S problem examples represented by equation (7) below to solve an unknown optimization problem C new It performs inference without training.
number
[0022] Specifically, with each gradient update using the gradient method during machine learning to update the model parameters, the perturbation operator Ψ is applied to the problem example set in equation (7) above. s The loss function in equation (8) below is optimized by applying the perturbation operator Ψ. s The parameter C that characterizes the problem is s This generalizes the random, small changes that are added to the graph. The generalization is necessary because, using graph optimization as an example, it encompasses not only noise-induced perturbations but also node and edge perturbations. It is preferable to construct the perturbation operator so that a different perturbation is applied with each gradient update.
number
[0023] Next, the output result P obtained as the optimized solution of equation (8) above. θ For each of the S columns, a new instance m * The cost function of equation (9) below is calculated, and the best solution from the multiple solutions obtained is taken as the approximate solution. In this embodiment, the solution in which the cost function is minimized is taken as shown in equation (10) below, and the unknown C new This is an approximate solution to .
number
number
[0024] Here, we will explain a concrete example of the perturbation operator. For simplicity, we will use the parameter C of the problem instance, such as the price of the knapsack problem. s If is a constant, one example is a noising operator defined as shown in equation (11) below. For example, in equation (11) below, N(0,I) represents a Gaussian distribution. Intuitively, each column of the output of CTRA-PI-GNN generalizes to the range shown in Figure 1. For each C, a good solution is obtained in the range of ε. For example, C new If the solution is close to any of the values of C, the solution of that C will be adopted.
number
[0025] Furthermore, the wider the range of noise introduced by the perturbation operator, the worse the quality of the solution. For example, if S=1 (Single shot) and the noise is sufficiently large, there is a risk that a solution specific to any problem cannot be obtained. For instance, a random solution (a solution in which 0 and 1 are mixed with a probability of 1 / 2) may be selected. To address this issue, an approach that handles multiple instances using Multi-shot, as shown in the graph of Figure 1, and generalizes only its neighborhood is preferable.
[0026] Here, we will explain why perturbation-based generalization, as in this embodiment, is difficult to apply to combinations of supervised learning and combinatorial optimization. First, we will explain the details of the combination of supervised learning and combinatorial optimization.
[0027] In the combination of supervised learning and combinatorial optimization, various instances and their approximate solutions D={C} are obtained. μ ,x μ Prepare}. Next, for each instance, C μ →x μ The machine learning model is trained to achieve this result. Next, an unknown instance C new For this, using a pre-trained machine learning model, we can find an approximate solution x new Obtain it.
[0028] Here, we will summarize the challenges of supervised learning. Supervised learning does not generalize well, and good solutions are mostly output only in the vicinity of the training data. Also, obtaining training data is difficult. For example, it is necessary to obtain approximate solutions for multiple instances in advance.
[0029] Next, we will explain why perturbation-based generalization is not applicable to supervised learning. In supervised learning, perturbation is added to an instance Φ s C s A new approximate solution x is needed for each step. This computational cost is one reason why perturbation-based generalization has not been introduced.
[0030] From the above, it is difficult to apply perturbation-based generalization, as in this embodiment, to combinations of supervised learning and combinatorial optimization.
[0031] Next, we will examine the above solution principle. Specifically, we will examine the weighted MaxCut problem on a Random Regular Graph with degree d=20 and 100 nodes. A degree d=20 and 100 nodes means that there are 100 nodes, and one node is randomly connected to 20 other nodes. In equation (12) below, C ij This represents a weighted adjacency matrix.
number
[0032] For the 1000 example problems in equation (13) below, the weights were generated uniformly randomly from [-1, 1, 2, 3]. Instance C new For this, the weights were generated uniformly and randomly from [-1, 1, 2].
number
[0033] ApR is the solution obtained by the continuous relaxation simulated annealing method, which is optimized using equation (4) above as the loss function x 1shot The ratio to the following equation (14) was used. Figure 2 is a histogram of the following equation (15).
number
number
[0034] The ApR result was 0.960, confirming that it is possible to solve unknown problem examples.
[0035] Next, the device configuration for realizing the above solution principle will be described. Figure 3(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 3(a), the information processing device 100 functions as an optimization problem storage unit 10, a perturbation addition unit 20, a perturbation problem example storage unit 30, a model parameter storage unit 40, a node embedding unit 50, a search unit 60, a gradient storage unit 70, an approximate solution output unit 80, etc. The information processing device 100 functions as a machine learning device during machine learning and as a judgment device during judgment.
[0036] Figure 3(b) is a hardware configuration diagram of the information processing device 100. As illustrated in Figure 3(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 machine learning programs and judgment programs. 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 80 on the screen. The various parts of the information processing device 100 are realized when the CPU 101 executes an arithmetic program or a machine learning program. Note that dedicated hardware such as circuits may be used as the various parts of the information processing device 100.
[0038] Figure 4 is a flowchart illustrating an example of the operation of the information processing device 100 during machine learning. As illustrated in Figure 4, the search unit 60 initializes the model (step S1). Specifically, the search unit 60 sets the model parameters stored in the model parameter storage unit 40 to predetermined initial values.
[0039] Next, the node embedding unit 50 stores multiple problem example sets C stored in the optimization problem storage unit 10. s Embedding is performed for each example C. Specifically, first the perturbation addition part 20 is performed for each example C. s In contrast, the perturbation Φ represented by the above formula (11) s Add perturbation Φ. s Examples of perturbation problems with the addition Φ s C s The perturbation problem example is stored in the perturbation problem example storage unit 30. Next, the node embedding unit 50 embeds the problem example stored in the perturbation problem example storage unit 30. This yields the loss function represented by equation (8) above.
[0040] Next, the search unit 60 updates the model parameters using the gradient method. At the same time, the perturbation addition unit 20 also updates the perturbation Φ (step S3). When step S3 is executed for the first time, the model parameters are not updated. Therefore, when step S3 is executed for the first time, the perturbation Φ is also not updated.
[0041] Next, the search unit 60 adjusts the degree of discrete-continuity (step S4). Specifically, each time step S4 is repeated, the search unit 60 adjusts the hyperparameter λ in equation (8) to a negative value λ. (0) < 0 to positive values λ (T) Gradually change the value down to >0 and calculate the loss function.
[0042] Next, the search unit 60 determines whether the convergence condition is met (step S5). For example, it determines whether the loss function in equation (8) above no longer becomes smaller than a specified value even if step S4 is executed repeatedly. If "No" is determined in step S5, the process is executed again from step S3.
[0043] If "Yes" is determined in step S5, the execution of the flowchart ends. In this case, the model parameter storage unit 40 stores the model parameters that result in the smallest loss function.
[0044] The machine learning method shown in Figure 4 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 40.
[0045] Figure 5 is a flowchart illustrating an example of the operation of the information processing device 100 when it outputs an approximate solution to an optimization problem using the results of the machine learning model obtained by machine learning in Figure 4. As illustrated in Figure 5, the node embedding unit 50 embeds the optimization problem (step S11).
[0046] Next, the approximate solution output unit 80 obtains the output of the machine learning model (step S12).
[0047] Next, the approximate solution output unit 80 outputs the result P obtained as the optimized solution of equation (8) above. θ For each column, create a new instance m * Calculate the cost function in equation (9) above, and apply equation (10) above to the unknown C new Output as an approximate solution for (Step S13).
[0048] The above embodiments can be applied to optimization problems that use graphs, for example. Optimization problems that use graphs are not particularly limited, but examples include energy transport problems. Furthermore, the above embodiments can also be applied to optimization problems that do not use graphs. Optimization problems that do not use graphs are also not particularly limited, but examples include corporate scheduling problems.
[0049] In the above embodiment, the approximate solution output unit 80 is an example of an output unit that outputs a solution to a discrete optimization problem using the solutions to multiple discrete optimization problems obtained by training a machine learning model by perturbing multiple discrete optimization problems. The cost function is a cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, where each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix becomes a solution to multiple discrete optimization problems.
[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, A computation program characterized by executing a cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, wherein each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix is a solution to a plurality of discrete optimization problems, and the program outputs a solution to a discrete optimization problem using the solutions to the plurality of discrete optimization problems obtained by training a machine learning model by perturbing the plurality of discrete optimization problems. (Note 2) The calculation program described in Appendix 1 is characterized in that the machine learning model is trained by using a loss term corresponding to the degree of continuity and discreteness of the variable to be optimized, and by changing the loss term as the search process progresses. (Note 3) The calculation program described in Appendix 2 is characterized in that the machine learning model is trained by changing the loss term from one in which the loss decreases as the variable is continuous to one in which the loss increases as the variable is continuous, as the search process progresses. (Note 4) Computers A cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, wherein each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix is a solution to a plurality of discrete optimization problems, and the method is characterized by performing a process to output a solution to a discrete optimization problem using the solutions to the plurality of discrete optimization problems obtained by training a machine learning model by perturbing the plurality of discrete optimization problems. (Note 5) The calculation method according to Appendix 4, characterized in that the machine learning model is trained by using a loss term corresponding to the degree of continuity and discreteness of the variables to be optimized, and by changing the loss term as the search process progresses. (Note 6) The calculation method according to Appendix 5, characterized in that the machine learning model is trained by changing the loss term from one in which the loss decreases as the variable is continuous to one in which the loss increases as the variable is continuous, as the search process progresses. (Note 7) An information processing device characterized by comprising a cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, wherein each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix is a solution to a plurality of discrete optimization problems, and an output unit that outputs a solution to a discrete optimization problem using the solutions to the plurality of discrete optimization problems obtained by training a machine learning model by perturbing the plurality of discrete optimization problems. (Note 8) The information processing device according to Appendix 7, characterized in that the machine learning model is trained by using a loss term corresponding to the degree of continuity and discreteness of the variable to be optimized, and by changing the loss term as the search process progresses. (Note 9) The information processing apparatus according to Appendix 8, characterized in that the machine learning model is trained by changing the loss term from one in which the loss decreases as the variable is continuous to one in which the loss increases as the variable is continuous, as the search process progresses. [Explanation of Symbols]
[0051] 10 Optimization Problem Storage Unit 20 Perturbation Addition Section 30 Perturbation Problem Example Storage Section 40 Model parameter storage section 50 node embedded section 60 Search Department 70 Gradient storage section 80 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, A computation program characterized by executing a cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, wherein each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix is a solution to a plurality of discrete optimization problems, and the program outputs a solution to a discrete optimization problem using the solutions to the plurality of discrete optimization problems obtained by training a machine learning model by perturbing the plurality of discrete optimization problems.
2. The computation program according to claim 1, characterized in that the machine learning model is trained by using a loss term corresponding to the degree of continuity and discreteness of the variable to be optimized, and by changing the loss term as the search process progresses.
3. The computation program according to claim 2, characterized in that the machine learning model is trained by changing the loss term from one in which the loss decreases as the variable is continuous to one in which the loss increases as the variable is continuous, as the search process progresses.
4. Computers A cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, wherein each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix is a solution to a plurality of discrete optimization problems, and the method is characterized by performing a process to output a solution to a discrete optimization problem using the solutions to the plurality of discrete optimization problems obtained by training a machine learning model by perturbing the plurality of discrete optimization problems.
5. An information processing device characterized by comprising a cost function in a search process that incorporates continuous relaxation into a discrete optimization problem, wherein each element of the matrix obtained by relaxing the discrete variables to be optimized into a continuous matrix is a solution to a plurality of discrete optimization problems, and an output unit that outputs a solution to a discrete optimization problem using the solutions to the plurality of discrete optimization problems obtained by training a machine learning model by perturbing the plurality of discrete optimization problems.