Calculation program, calculation method, and information processing device

By dynamically adjusting the penalty coefficient using gradients in the continuous relaxation method, the method addresses the challenge of penalty coefficient adjustment in combinatorial optimization, achieving optimal solutions without constraint violations.

JP2026055265APending Publication Date: 2026-03-31FUJITSU LTD
View PDF 0 Cites 0 Cited by

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

Technical Problem

The continuous relaxation method for combinatorial optimization faces challenges in appropriately adjusting the penalty coefficient, leading to difficulties in obtaining optimal solutions due to local minima or constraint violations.

Method used

A method that adjusts the penalty coefficient using gradients of the cost function and penalty term during the solution process, employing continuous relaxation to optimize combinatorial problems, particularly through the use of Graph Neural Networks (GNNs) to update the penalty coefficient dynamically.

Benefits of technology

Enables appropriate adjustment of the penalty coefficient, allowing for effective solution finding without constraint violations and achieving performance comparable to fine-tuned methods.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026055265000001_ABST
    Figure 2026055265000001_ABST
Patent Text Reader

Abstract

The present invention provides a calculation program, calculation method, and information processing device that can appropriately adjust the penalty coefficient. [Solution] The computer is instructed to search for a solution using a cost function and penalty term obtained by incorporating continuous relaxation into a discrete optimization problem, and in the process of doing so, it performs a process of changing the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] This matter relates to arithmetic programs, arithmetic methods, and information processing devices. [Background technology]

[0002] A technique for searching for solutions to combinatorial optimization problems using a continuous relaxation method has been disclosed (see, for example, Non-Patent Document 1). [Prior art documents] [Non-patent literature]

[0003] [Non-Patent Document 1] Ichikawa, Y. (2023). Controlling continuous relaxation for combinatorial optimization. arXiv preprint arXiv:2309.16965. [Overview of the project] [Problems that the invention aims to solve]

[0004] The continuous relaxation method described above is being considered for use in constrained combinatorial optimization. However, it is difficult to appropriately adjust the penalty coefficient of the penalty term.

[0005] In one aspect, the present invention aims to provide a calculation program, calculation method, and information processing device that can appropriately adjust the penalty coefficient. [Means for solving the problem]

[0006] In one embodiment, the computation program causes the computer to perform a process in which it changes the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term, in the process of searching for a solution using the cost function and penalty term obtained by introducing continuous relaxation into a discrete optimization problem. [Effects of the Invention]

[0007] The penalty coefficient can be adjusted appropriately. [Brief explanation of the drawing]

[0008] [Figure 1] This is a diagram illustrating the verification results. [Figure 2] (a) is a functional block diagram representing the overall configuration of the information processing device, 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 it uses the results of a machine learning model obtained through machine learning 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 applied in a wide range of fields, including transportation, logistics, telecommunications, and finance.

[0010] Constrained combinatorial optimization problems are among the most important problems in combinatorial optimization and have many practical applications. For example, general-purpose solvers, such as Ising machines, use penalty methods to search for constraint-satisfying solutions. However, with general-purpose solvers, solving can be difficult depending on the penalty coefficient. Also, local transition algorithms like Ising machines can only search for local solutions, making it difficult to obtain multiple solutions at once.

[0011] Here, an overview of the constrained combinatorial optimization problem will be described. First, the penalty method will be explained. The constrained optimization problem is represented by the following equation (1). Note that in general, in f(x;A), x represents the variable to be optimized, and A represents a constant that is not the optimization target. Therefore, in the following equation (1), C represents a constant and is a parameter characterizing the problem example. C is, for example, a graph G(V,E), etc. x represents a variable and is a vector represented by 0 and 1, and has N elements. Also, "s.t." means "subject to". f is represented by the following equation (2) and represents a cost function. The feasible region is represented by the following equation (3). The following equation (4) represents the equality constraint in the feasible region. The following equation (5) represents the inequality constraint in the feasible region.

Number

Number

Number

Number

Number

[0012] In the penalty method, the constrained combinatorial optimization is considered as the optimization problem of the following equation (6). That is, in the penalty method, a penalty term is introduced.

Number

[0013] The following equation (7) is the penalty term and is typically defined as the following equation (8) and the following equation (9).

Number

Number

number

[0014] In equation (10) below, λ is the penalty coefficient, a parameter used to control the balance between the cost function and the penalty term. In the penalty method, it is necessary to appropriately adjust the penalty coefficient.

number

[0015] In the penalty methods described above, it is difficult to adjust the parameter λ. For example, if λ is too large, the searched solution is likely to be a local minimum, and if λ is too small, the searched solution is likely to violate the constraints.

[0016] Next, we will explain combinatorial optimization using machine learning. With the advancement of information science, techniques aimed at rapidly solving combinatorial optimization problems using machine learning have been developed. One such technique is the optimization method using continuous relaxation.

[0017] The continuous relaxation method is a method for approximately solving combinatorial optimization problems as continuous optimization problems. Instead of solving discrete optimization problems, it relaxes the discrete optimization problem and solves the corresponding continuous optimization problem. The continuous optimization problem can be expressed as shown in equation (11) below. Note that in equation (11) below, [0,1] N This represents an N-dimensional hypercube lattice that takes values ​​of 0 or 1. In equation (11) below, the variable vector p is the variable to be optimized.

number

[0018] In equation (11) above, equation (12) below is true for any x ∈ {0,1} NIt is common practice to transform it so that it becomes the following equation (13).

number

number

[0019] However, even with the continuous relaxation method, adjusting the penalty coefficient λ remains difficult.

[0020] Therefore, the following embodiment describes an example in which the penalty coefficient λ can be appropriately adjusted. [Examples]

[0021] First, let's explain the principle of this embodiment. In this embodiment, in optimization using the continuous relaxation method, the penalty coefficient of the optimization process is sequentially updated using the gradients of the cost function and penalty term in the continuous relaxation. For example, the penalty coefficient λ in equation (11) above is changed in the solution process using the gradients of the cost function and penalty term in the continuously relaxed equation (15) below, as shown in equation (14).

number

number

[0022] In equation (14) above, t∈[T] represents the time that characterizes each solution process, which is 1 step, and satisfies equation (16) below.

number

[0023] If the variables are discrete values ​​of 0 and 1, the gradients of the cost function and penalty term cannot be obtained. However, the method in this embodiment uses continuous variables because it employs a continuous relaxation method. Therefore, the gradients of the cost function and penalty term can be obtained. In equation (14) above, the part of equation (17) below holds information indicating which direction to move in the search space to reduce the cost function and penalty term. Therefore, for example, by using equation (14) above, the penalty coefficient can be appropriately adjusted so that the cost function and penalty term are reduced.

number

[0024] Let's consider the case of an annealing GNN as an example. GNN stands for Graph Neural Network. For example, when optimizing a relaxation variable vector p using a GNN with parametrized representation, the graph G of the optimization problem is represented by an embedding vector h (0) Transform into (G). G is the feature vector of the graph in the GNN. For a combinatorial optimization problem on graph G, the relaxation variable p is transformed into p θ (h (0) (G);G) is characterized as follows. Thus, in GNNs, since the relaxation variable p is characterized by θ, the penalty coefficient is changed during learning, for example, as shown in equation (18) below.

number

[0025] Next, we will examine the above solution principle. Specifically, we will examine the Maximum Independent Set problem defined by the cost function of equation (19) below, where the degree d=20 and the number of variables (nodes) on the Regular Random Graph G(V,E) is 1000. A degree d=20 and 1000 nodes means that there are 1000 nodes, and one node is randomly connected to 20 other nodes. The penalty coefficient is changed as shown in equation (20) below during the solution process. Note that each t is characterized by the update using gradient descent and the initial value of λ is λ 0 Regarding λ 0 Set to =0.

number

number

[0026] Figure 1 illustrates the verification results. The penalty coefficient λ is set to the initial value λ. 0 Starting from there, λ changed adaptively as shown in Figure 1, and we were able to achieve f(x;G)=-162 without violating the constraints. Furthermore, since the result of appropriately fine-tuning λ using various methods is f(x;G)=-167, it can be seen that a performance of a similar level can be achieved.

[0027] Next, we will explain the device configuration for realizing the above solution principle. 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, a node embedding unit 30, a relaxation variable unit 40, a search unit 50, a gradient storage unit 60, an approximate solution output unit 70, etc.

[0028] For example, the search unit 50 searches for a solution using the cost function and penalty term obtained by introducing continuous relaxation into the discrete optimization problem, and in the process of searching for a solution, it changes the penalty coefficient of the penalty term using the gradients of the cost function and penalty term.

[0029] Furthermore, for example, the search unit 50 uses gradients to change the penalty coefficient so that the cost function and the penalty term decrease.

[0030] Furthermore, for example, the search unit 50 uses a loss term in its cost function that corresponds to the degree of continuity and discreteness of the variables to be optimized, and changes the loss term as the search process progresses.

[0031] Furthermore, for example, as the search process progresses, the search unit 50 changes 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.

[0032] Furthermore, for example, the search unit 50 learns the model by repeatedly changing the penalty coefficient of the penalty term, changing the model parameters of the model in which the discrete optimization problem is embedded, and calculating the cost function and the penalty term.

[0033] 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.

[0034] 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, and the like. The storage device 103 is a non-volatile storage device. As the storage device 103, for example, a solid-state drive (SSD) such as a ROM (Read Only Memory), a flash memory, a hard disk driven by a hard disk drive, or the like can be used. The storage device 103 stores a machine learning program and a determination program. The input device 104 is a device for a user to input necessary information, such as a keyboard, a mouse, and the like. The display device 105 is a display device that displays the approximate solution output by the approximate solution output unit 70 on the screen. By the CPU 101 executing an arithmetic program, each part of the information processing device 100 is realized. Note that, as each part of the information processing device 100, hardware such as a dedicated circuit may be used.

[0035] FIG. 3 is a flowchart showing an example of the operation of the information processing device 100 during machine learning (training of a model by machine learning). As illustrated in FIG. 3, the search unit 50 initializes the model and the penalty coefficient (step S1). Specifically, the search unit 50 sets the model parameters stored in the model parameter storage unit 20 to predetermined initial values and sets the penalty coefficient to a predetermined initial value. For example, the model parameters are θ in the above formula (18) and the like. The penalty coefficient is λ in the above formula (11) and the above formula (14).

[0036] Next, the node embedding unit 30 embeds the optimization problem (step S2). For example, in a problem using a graph, the node embedding unit 30 embeds the graph feature vector of the given optimization problem into the embedding vector h φ,GThis is converted to the following. The relaxation variable section 40 sets the relaxed dynamical variables that are parameterized by the neural network. The node embedding section 30 uses the penalty coefficient set as the initial value in step S1. As a result, the loss function represented by equation (15) above is obtained.

[0037] Next, the search unit 50 updates the model parameters using the gradient descent method (step S3). The search unit 50 updates the model parameters using the gradients stored in the gradient storage unit 60. When step S3 is executed for the first time, the model parameters are not updated.

[0038] Next, the search unit 50 updates the penalty coefficient according to the above formula (14) (step S4).

[0039] Next, the search unit 50 determines whether the convergence condition is met (step S5). For example, it determines whether the loss function in equation (15) 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.

[0040] If "Yes" is determined in step S5, 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.

[0041] The machine learning method shown in Figure 3 yields a machine learning model that minimizes the loss function in equation (15) above. The machine learning model (model parameters) is stored in the model parameter storage unit 20.

[0042] Figure 4 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 3. As illustrated in Figure 4, the node embedding unit 30 embeds the optimization problem (step S11).

[0043] Next, the approximate solution output unit 70 obtains the output of the machine learning model (step S12).

[0044] 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.

[0045] (modified version) The continuous relaxation annealing method may also be applied to the continuous relaxation solution method described above. In the continuous relaxation annealing method, the variable p is parameterized using a statistical model, and the loss function in equation (21) below is optimized.

number

[0046] λ is a parameter for controlling the loss term in equation (21) above, and is a hyperparameter for controlling the degree of continuity and discreteness. For example, in equation (22) below, when γ is negative, the relaxation variable p θ When γ is positive, the relaxation variable pθ prefers a binary value of {0,1}.

number

[0047] As machine learning progresses, the hyperparameter λ is changed to a negative value λ. (0) < 0 to positive values ​​λ (T)The loss term is gradually changed down to >0. As a result, the loss term changes as machine learning progresses, from one where the loss decreases as the discrete vector p becomes more continuous, to one where the loss increases as the discrete vector p becomes more continuous. For example, if λ is -∞, the output solution will be 1 / 2. If λ is +∞, the output solution will be a discrete variable of 0 or 1. This method is sometimes called continuous relaxation simulated annealing. By controlling it in this way, machine learning will terminate when the discrete vector becomes almost discrete.

[0048] 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 computational program characterized by performing a process to change the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term in the process of searching for a solution using a cost function and penalty term obtained by introducing continuous relaxation to a discrete optimization problem. (Note 2) The calculation program according to Appendix 1, characterized in that it uses the gradient to change the penalty coefficient so that the cost function and the penalty term decrease. (Note 3) The calculation program according to Appendix 1, characterized in that the computer is instructed to use a loss term in the cost function that corresponds to the degree of continuity and discreteness of the variable to be optimized, and to perform a process that changes the loss term as the search process progresses. (Note 4) The arithmetic program according to claim 3, characterized in that the computer is instructed to perform a process that changes 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 5) The calculation program according to Appendix 1, characterized in that it causes the computer to perform a machine learning process by repeatedly changing the penalty coefficient of the penalty term, changing the model parameters of the model in which the discrete optimization problem is embedded, and calculating the cost function and the penalty term. (Note 6) Computers A computation method characterized by performing a process to change the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term in the process of searching for a solution using a cost function and penalty term obtained by introducing continuous relaxation to a discrete optimization problem. (Note 7) The calculation method according to Appendix 6, characterized in that the penalty coefficient is changed using the gradient such that the cost function and the penalty term decrease. (Note 8) The calculation method according to Appendix 6, characterized in that the computer uses a loss term in the cost function that corresponds to the degree of continuity and discreteness of the variable to be optimized, and performs a process of changing the loss term as the search process progresses. (Note 9) The calculation method according to claim 8, characterized in that the computer performs a process to change 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 10) The calculation method according to Appendix 6, characterized in that the computer performs a machine learning process by repeatedly changing the penalty coefficient of the penalty term, changing the model parameters of the model in which the discrete optimization problem is embedded, and calculating the cost function and the penalty term. (Note 11) An information processing device characterized by comprising a search unit that, in the process of searching for a solution using a cost function and a penalty term obtained by introducing continuous relaxation into a discrete optimization problem, performs a process of changing the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term. (Note 12) The information processing apparatus according to Appendix 11, characterized in that the search unit uses the gradient to change the penalty coefficient so that the cost function and the penalty term decrease. (Note 13) The information processing apparatus according to Appendix 11, characterized in that the search unit uses a loss term in the cost function that corresponds to the degree of continuity and discreteness of the variable to be optimized, and changes the loss term as the search process progresses. (Note 14) The information processing apparatus according to claim 13, characterized in that the search unit changes 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 15) The information processing apparatus according to Appendix 11, characterized in that the search unit repeatedly changes the penalty coefficient of the penalty term, changes the model parameters of the model in which the discrete optimization problem is embedded, and calculates the cost function and the penalty term to perform machine learning on the model. [Explanation of Symbols]

[0049] 10 Optimization Problem Storage Unit 20 Model parameter storage section 30 node embedded section 40 Relaxation Variable Section 50 Exploration Department 60 Gradient storage section 70 Approximate Solution Output Unit 100 Information Processing Devices

Claims

1. On the computer, A computational program characterized by performing a process to change the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term in the process of searching for a solution using a cost function and penalty term obtained by introducing continuous relaxation to a discrete optimization problem.

2. The calculation program according to claim 1, characterized in that it uses the gradient to change the penalty coefficient so that the cost function and the penalty term decrease.

3. The calculation program according to claim 1, characterized in that the computer is instructed to use a loss term in the cost function that corresponds to the degree of continuity and discreteness of the variable to be optimized, and to perform a process that changes the loss term as the search process progresses.

4. The arithmetic program according to claim 3, characterized in that the computer is instructed to perform a process that changes 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.

5. The calculation program according to claim 1, characterized in that it causes the computer to perform a machine learning process by repeatedly changing the penalty coefficient of the penalty term, changing the model parameters of the model in which the discrete optimization problem is embedded, and calculating the cost function and the penalty term.

6. Computers A computation method characterized by performing a process to change the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term in the process of searching for a solution using a cost function and penalty term obtained by introducing continuous relaxation to a discrete optimization problem.

7. An information processing device characterized by comprising a search unit that, in the process of searching for a solution using a cost function and a penalty term obtained by introducing continuous relaxation into a discrete optimization problem, performs a process of changing the penalty coefficient of the penalty term using the gradients of the cost function and the penalty term.