WO2022003943A1 - 解精度保証アニーリング計算装置、方法及びプログラム - Google Patents
解精度保証アニーリング計算装置、方法及びプログラム Download PDFInfo
- Publication number
- WO2022003943A1 WO2022003943A1 PCT/JP2020/026164 JP2020026164W WO2022003943A1 WO 2022003943 A1 WO2022003943 A1 WO 2022003943A1 JP 2020026164 W JP2020026164 W JP 2020026164W WO 2022003943 A1 WO2022003943 A1 WO 2022003943A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- solution
- combinatorial optimization
- optimization problem
- annealing
- solving
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/11—Complex mathematical operations for solving equations, e.g. nonlinear equations, general mathematical optimization problems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
Definitions
- the present invention relates to a solution accuracy guarantee annealing calculation device, a solution accuracy guarantee annealing calculation method, and a solution accuracy guarantee annealing calculation program.
- the combinatorial optimization problem is a problem of finding the optimum combination.
- Combinatorial optimization problems include the traveling salesman problem, the knapsack problem, and the graph partitioning problem.
- Examples of the solver that is a means for solving the combinatorial optimization problem include an annealing machine and an integer programming solver.
- the annealing machine is a solver that solves a problem by setting an appropriate solution candidate as an initial state, changing the state by some rule, and finally reaching the vicinity of the optimum solution.
- Simulated annealing machines include, for example, simulated annealing machines, quantum annealing machines, and non-quantum annealing machines based on heuristic algorithms.
- Patent Document 1 describes an optimization problem calculation system including a singing machine that calculates a combination of variable values that minimizes the value of an objective function by performing simulated annealing using a digital circuit. ..
- the integer programming solver is a solver that solves combinatorial optimization problems by formulating combinatorial optimization problems into integer programming problems.
- Patent Document 2 describes a schedule table creating device including an integer programming solver that creates a schedule table by integer programming using a target function and predetermined constraints.
- the annealing machine is suitable for solving combinatorial optimization problems with complicated constraints. However, the accuracy of the solution of the combinatorial optimization problem output by the annealing machine is generally not guaranteed.
- Annealing is a kind of approximate solution to a complicated problem, so it tries to find the most appropriate solution without guaranteeing the accuracy.
- Patent Documents 1 and 2 do not describe a method for guaranteeing the accuracy of a solution to a combinatorial optimization problem.
- an object of the present invention is to provide a solution accuracy guarantee annealing calculation device, a solution accuracy guarantee annealing calculation method, and a solution accuracy guarantee annealing calculation program that can guarantee the accuracy of the solution of a combinatorial optimization problem.
- the solution accuracy guarantee annealing calculation device is a problem generated by the first solving means for solving a combination optimization problem by an annealing method and the relaxation of the constraints imposed on the combination optimization problem.
- a second solving means for solving a relaxation problem is provided, and the second solving means solves a relaxation problem generated from a combination optimization problem when the combination optimization problem is a minimization problem. Calculate the lower bound of the minimization target in, and if the combination optimization problem is the maximization problem, calculate the upper bound of the maximization target in the maximization problem by solving the mitigation problem generated from the combination optimization problem. It is characterized by doing.
- the solution accuracy guarantee annealing calculation method solves a combination optimization problem by an annealing method, and solves a relaxation problem that is a problem generated by relaxing the constraints imposed on the combination optimization problem. If the combination optimization problem is a minimization problem, the lower bound of the minimization target in the minimization problem is calculated by solving the mitigation problem generated from the combination optimization problem, and the combination optimization problem is the maximization problem. In the case of, it is characterized in that the upper bound of the maximization target in the maximization problem is calculated by solving the mitigation problem generated from the combination optimization problem.
- the solution accuracy guarantee annealing calculation program is generated by the first solution processing for solving a combination optimization problem by an annealing method and the relaxation of the constraints imposed on the combination optimization problem on the computer. It is a solution accuracy guarantee annealing calculation program for executing the second solution process for solving the mitigation problem, and if the combination optimization problem is the minimization problem in the second solution process, the combination optimization problem.
- the mitigation problem generated from the lower bound of the minimization target in the minimization problem is calculated, and if the combination optimization problem is the maximization problem, the mitigation problem generated from the combination optimization problem is solved. By doing so, it is characterized in that the upper bound of the maximization target in the maximization problem is calculated.
- the accuracy of the solution of the combinatorial optimization problem can be guaranteed.
- FIG. 1 is a block diagram showing a configuration example of a solution accuracy assurance annealing calculation device according to an embodiment of the present invention.
- the solution accuracy assurance annealing calculation device 100 includes an interface 110, a processing control means 120, a first processing means 130, and a second processing means 140.
- the unidirectional arrow shown in the block diagram indicates the direction in which the data (information) flows. However, the possibility that data flows in both directions at the points where each arrow is described is not excluded.
- the solution accuracy assurance annealing calculation device 100 of the present embodiment only obtains a solution of a combinatorial optimization problem with complicated constraints by solving a combinatorial optimization problem by combining an annealing machine and an integer programming solver. It is a device whose purpose is to guarantee the accuracy of the solution.
- the above-mentioned integer programming solver is suitable only for solving combinatorial optimization problems with simple (linear) constraints that satisfy additivity.
- the integer programming solver can output solutions to combinatorial optimization problems with guaranteed accuracy.
- the reason why the accuracy of the solution is guaranteed is that there is an integer programming solver algorithm that can guarantee the accuracy of the solution under the simple constraint of being linear.
- the user who requested the solution of the combinatorial optimization problem can judge the validity of the obtained solution.
- the user is, for example, an in-house person who wants to solve the traveling salesman problem with an annealing machine.
- a combinatorial optimization problem is input to the interface 110.
- Combinatorial optimization problems are classified as either minimization problems or maximization problems.
- the minimization problem is a problem of finding a combination that minimizes an arbitrary objective function (minimization target) under a given constraint condition. Further, the maximization problem is a problem of finding a combination that maximizes an arbitrary objective function (maximization target) under a given constraint condition.
- the combinatorial optimization problem of this embodiment is described in the Ising model format, for example.
- the Ising model is a statistical mechanics model that represents the behavior of a magnetic material by individual spins.
- the state of each spin is represented by "1" or "-1".
- the formula expressing the energy in the combinatorial optimization problem is first created. Then, the equation representing the energy in the combinatorial optimization problem is transformed into the energy function in the Ising model. The method of converting to an energy function in the Ising model is known. The energy function in the Ising model is expressed by the following equation (1).
- i and j in the equation (1) are both variables representing spin.
- s i in the equation (1) is a variable representing the state of spin i
- s j is a variable representing the state of spin j.
- h i in the equation (1) is a constant corresponding to the spin i.
- h i is defined as a constant.
- J ij in the equation (1) is a constant corresponding to the combination of spin i and spin j.
- J ij is defined as a constant.
- the energy function in the Ising model may be the energy function of QUBO (Quadratic Unconstrained Binary Optimization).
- QUBO is a model in which the state of each spin is represented by "1" or "0".
- the formula expressing the energy in the combinatorial optimization problem can be converted into the energy function in QUBO.
- This conversion method is known.
- the formula expressing the energy in the combinatorial optimization problem is expressed by the energy function in QUBO, the combinatorial optimization problem is described in the QUBO format.
- the energy function in the Ising model and the energy function in QUBO can be converted to each other.
- the energy function in QUBO is expressed by the following equation (2).
- i and j in the equation (2) are both variables representing spin.
- x i in the equation (2) is a variable representing the state of spin i
- x j is a variable representing the state of spin j.
- Q ij in the equation (2) is a constant corresponding to the combination of spin i and spin j. For each combination of possible values of i and possible values of j, Q ij is defined as a constant.
- the combinatorial optimization problem input to the interface 110 may be a problem described in a format other than the Ising model format or the QUBO format (for example, the transverse magnetic field Ising model format).
- the first processing means 130 has a function of solving a combinatorial optimization problem in a state where complicated constraints are imposed by an annealing method. For example, when solving a combinatorial optimization problem by a simulated annealing method, the first processing means 130 is realized by the simulated annealing machine described above. The first processing means 130 realized by the simulated annealing machine can solve the combinatorial optimization problem described in the Ising model format or the QUBO format.
- the first processing means 130 Given the energy function shown in equation (1), the first processing means 130 obtains the optimum individual spin states (1 or -1) for solving the combinatorial optimization problem. Further, when the energy function shown in the equation (2) is given, the first processing means 130 obtains the optimum individual spin states (1 or 0) for solving the combinatorial optimization problem. The optimum individual spin states obtained by the first processing means 130 represent the solution of the combinatorial optimization problem.
- the first processing means 130 is realized by the above-mentioned quantum annealing machine.
- the first processing means 130 realized by the quantum annealing machine can solve the combinatorial optimization problem described in the transverse magnetic field Ising model format.
- the optimum individual spin states are the individual spin states in which the energy indicated by the energy function is as small as possible. Further, when the combinatorial optimization problem is the maximization problem, the optimum individual spin states are the individual spin states in which the energy indicated by the energy function is as large as possible.
- the first processing means 130 inputs a combinatorial optimization problem and outputs a solution of the combinatorial optimization problem and a minimum value or a maximum value.
- the combinatorial optimization problem is a minimization problem
- the first processing means 130 outputs the minimum value.
- the combinatorial optimization problem is the maximization problem
- the first processing means 130 outputs the maximum value.
- the solution of the combinatorial optimization problem is a combination of the values of variables for which the minimum value or the maximum value can be obtained.
- the second processing means 140 has a function of calculating the lower bound of the minimization target in the minimization problem when the combinatorial optimization problem is a minimization problem for the combinatorial optimization problem in which complicated constraints are relaxed. Have. Further, the second processing means 140 has a function of calculating the upper bound of the maximization target in the maximization problem when the combinatorial optimization problem is the maximization problem.
- the lower bound calculated by the second processing means 140 is also simply referred to as the "lower bound of the problem”.
- the upper bound calculated by the second processing means 140 is also simply referred to as "the upper bound of the problem”.
- the second processing means 140 is realized by, for example, the above-mentioned integer programming solver.
- the processing control means 120 has a function of alleviating the combinatorial optimization problem input from the interface 110.
- the processing control means 120 generates a mitigation problem from the combinatorial optimization problem by relaxing the constraints imposed on the combinatorial optimization problem.
- the processing control means 120 "changes all discrete variables to continuous variables” and “some discrete variables”, leaving linear constraints, in order to alleviate the combinatorial optimization problem to an easy-to-solve problem. To a continuous variable ",” delete some constraints ", etc.
- the lower bound of the relaxed combinatorial optimization problem is expected to be less than or equal to the value obtained when the true solution is substituted into the original combinatorial optimization problem.
- the upper bound of the relaxed combinatorial optimization problem is expected to be greater than or equal to the value obtained when the true solution is substituted into the original combinatorial optimization problem.
- the processing control means 120 inputs the relaxed combinatorial optimization problem to the second processing means 140.
- FIG. 2 is an explanatory diagram showing the minimum value, the optimum value, and the magnitude relationship of the lower bound of the combinatorial optimization problem, which is a minimization problem.
- the optimal value represented by the star shape shown in FIG. 2 is a value obtained when the true solution in the minimization problem is substituted into the minimization problem. If it is difficult to solve the minimization problem analytically, the optimal value is unknown.
- the minimum value represented by the circle shown in FIG. 2 is a value obtained when the solution obtained from the minimization problem by the first processing means 130 is substituted into the minimization problem. Further, the lower bound represented by the rectangle shown in FIG. 2 is the lower bound of the minimization problem obtained by the second processing means 140.
- the minimum value, the optimum value, and the magnitude relationship of the lower bound in the combinatorial optimization problem, which is a minimization problem, are as shown in FIG. Therefore, when the lower bound is obtained together with the minimum value of the combinatorial optimization problem, the user roughly differs between the solution obtained by the first processing means 130 and the true solution than when the lower bound is not obtained. I can grasp it.
- FIG. 3 is an explanatory diagram showing the maximum value, the optimum value, and the magnitude relationship of the upper bound of the combinatorial optimization problem, which is the maximization problem.
- the optimum value represented by the star shape shown in FIG. 3 is a value obtained when the true solution in the maximization problem is substituted into the maximization problem. If it is difficult to solve the maximization problem analytically, the optimum value is unknown.
- the maximum value represented by the circle shown in FIG. 3 is a value obtained when the solution obtained from the maximization problem by the first processing means 130 is substituted into the maximization problem. Further, the upper bound represented by the rectangle shown in FIG. 3 is the upper bound of the maximization problem obtained by the second processing means 140.
- the maximum value, the optimum value, and the magnitude relationship of the upper bound in the combinatorial optimization problem, which is the maximization problem, are as shown in FIG. Therefore, when the upper bound is obtained together with the maximum value of the combinatorial optimization problem, the user finds the difference between the solution obtained by the first processing means 130 and the true solution more than when the upper bound is not obtained. You can get a rough idea.
- the processing control means 120 divides the combinatorial optimization problem input from the interface 110 into a plurality of partial problems that are scale problems that the first processing means 130 and the second processing means 140 can efficiently solve. good.
- the processing control means 120 may define a subproblem by assigning specific values to some variables.
- the interface 110 outputs the solution of the combinatorial optimization problem calculated by the first processing means 130 solving the combinatorial optimization problem. Further, the interface 110 is a value to be minimized to which the solution of the combinatorial optimization problem, which is the minimization problem calculated by the first processing means 130, is substituted, or a combination, which is the maximization problem calculated by the first processing means 130. Output the value of the maximization target to which the solution of the optimization problem is substituted.
- the interface 110 outputs a lower bound or an upper bound calculated by the second processing means 140.
- the interface 110 also outputs the lower bound of the minimization problem when the combinatorial optimization problem is the minimization problem, and the upper bound of the maximization problem when the combinatorial optimization problem is the maximization problem.
- FIG. 4 is an explanatory diagram showing an example in which the processing control means 120 divides the combinatorial optimization problem.
- the minimization problem shown in FIG. 4 is the combinatorial optimization problem of the solution target in this example.
- the equation to be minimized in the minimization problem shown in FIG. 4 is "x 2 + 8y 2 + 3z 2 ".
- the values that x, y, and z can take are "0" or "1", respectively. That is, the combinatorial optimization problem in this example is described in the QUBO format.
- the processing control means 120 defines the second subproblem by substituting "1" for x.
- the equation to be minimized in the second subproblem is "1 + 8y 2 + 3z 2 ".
- FIG. 5 is an explanatory diagram showing an example in which the first processing means 130 and the second processing means 140 solve the first subproblem.
- the processing control means 120 converts the discrete variables y and z into continuous variables in order to alleviate the first partial problem to an easy-to-solve problem.
- the second processing means 140 seeks the lower bound of the relaxed first subproblem (Step.1 shown in FIG. 5).
- the second processing means 140 can obtain the lower bound by using, for example, differentiation.
- Step.1 shown in FIG. 5 it is assumed that the second processing means 140 obtains "1.5" as the lower bound. Since the first subproblem is the first problem solved, the obtained lower bound becomes the provisional lower bound as it is.
- the first processing means 130 obtains the solution and the minimum value of the first subproblem (Step.2 shown in FIG. 5).
- FIG. 6 is an explanatory diagram showing an example in which the first processing means 130 and the second processing means 140 solve the second subproblem.
- the processing control means 120 converts the discrete variables y and z into continuous variables in order to alleviate the second subproblem to an easy-to-solve problem.
- the second processing means 140 seeks the lower bound of the relaxed second subproblem (Step.3 shown in FIG. 6). In Step 3 shown in FIG. 6, it is assumed that the second processing means 140 obtains "20" as the lower bound.
- the lower bound "20" obtained in Step 3 shown in FIG. 6 is larger than the provisional value "3". That is, even if the first processing means 130 finds the minimum value of the second subproblem, it is expected that a value larger than the provisional value "3" is found. Therefore, since the process of finding the solution of the second partial problem and the minimum value is useless, the first processing means 130 cancels the process of finding the solution of the second partial problem and the minimum value.
- FIG. 7 is an explanatory diagram showing another example in which the first processing means 130 and the second processing means 140 solve the second subproblem.
- the processing control means 120 converts the discrete variables y and z into continuous variables in order to alleviate the second subproblem to an easy-to-solve problem.
- the second processing means 140 seeks the lower bound of the relaxed second subproblem (Step.3 shown in FIG. 7). In Step 3 shown in FIG. 7, it is assumed that the second processing means 140 obtains "2" as the lower bound.
- the lower bound "2" obtained in Step 3 shown in FIG. 7 is smaller than the provisional value "3". That is, when the first processing means 130 finds the minimum value of the second subproblem, it is expected that a value smaller than the provisional value "3" may be found.
- the first processing means 130 obtains the solution and the minimum value of the second subproblem (Step.4 shown in FIG. 7).
- the minimum value "9" obtained in Step.4 shown in FIG. 7 is larger than the provisional value "3". That is, since the solution obtained in Step 4 shown in FIG. 7 is not the optimum solution, the first processing means 130 does not adopt the solution obtained in Step 4 shown in FIG. 7.
- the provisional lower bound is "1.5"
- the provisional solution is "(0,0,1)”
- the provisional value is "3”. Therefore, the interface 110 outputs the solution "(0,0,1)", the minimum value "3", and the lower bound "1.5” for the combinatorial optimization problem which is the input minimization problem, respectively.
- the first processing means 130 for solving the combinatorial optimization problem by the annealing method and the constraint conditions imposed on the combinatorial optimization problem are relaxed.
- a second processing means 140 for solving a mitigation problem, which is a problem generated by the above, is provided.
- the second processing means 140 calculates the lower bound of the minimization target in the minimization problem by solving the mitigation problem generated from the combinatorial optimization problem. Further, when the combinatorial optimization problem is a maximization problem, the second processing means 140 calculates the upper bound of the maximization target in the maximization problem by solving the mitigation problem generated from the combinatorial optimization problem. ..
- FIG. 8 is a flowchart showing the operation of the minimization problem solving process by the solution accuracy assurance annealing calculation device 100 of the present embodiment. No value is set for the provisional value, the provisional solution, and the provisional lower bound at the time when the processing is started.
- a minimization problem is input as a combinatorial optimization problem to the interface 110 of the solution accuracy assurance annealing calculation device 100 (step S101).
- step S102 the processing control means 120 divides the minimization problem input to the interface 110 into a plurality of partial problems.
- the process of step S102 may be omitted.
- step S103 the processing control means 120 confirms whether or not there is a partial problem that has not yet been solved. If the process of step S102 is omitted, the "partial problem” becomes a "one minimization problem” (the same applies to the following steps).
- the processing control means 120 selects one unsolved subproblem (step S104).
- the processing control means 120 alleviates the selected partial problem (step S105), and inputs the alleviated partial problem to the second processing means 140.
- the second processing means 140 solves the relaxed subproblem and outputs the lower bound (step S106).
- the processing control means 120 confirms whether or not the output lower bound is smaller than the provisional value (step S107). When the lower bound is equal to or greater than the provisional value (No in step S107), the processing control means 120 ends the solution of the selected subproblem and returns to step S103.
- the processing control means 120 inputs the selected partial problem to the first processing means 130.
- the first processing means 130 solves the selected subproblem and outputs the solution and the minimum value of the subproblem (step S108).
- the processing control means 120 confirms whether or not the output minimum value is smaller than the provisional value (step S109). When the minimum value is equal to or greater than the provisional value (No in step S109), the processing control means 120 returns to step S103.
- the processing control means 120 sets the lower bound output in step S106 to the provisional lower bound, the solution output in step S108 to the provisional solution, and the minimum value to the provisional value. Update to each value (step S110). After updating, the processing control means 120 returns to step S103.
- the interface 110 When there is no unsolved partial problem (No in step S103), the interface 110 outputs the provisional lower bound, the provisional solution, and the provisional value as the lower bound, the solution, and the minimum value of the minimized problem, respectively (step S111). After the output, the solution accuracy assurance annealing calculation device 100 ends the minimization problem solving process.
- FIG. 9 is a flowchart showing the operation of the maximization problem solving process by the solution accuracy assurance annealing calculation device 100 of the present embodiment. No values are set for the provisional value, the provisional solution, and the provisional upper bound at the time when the processing is started.
- the maximization problem is input as a combinatorial optimization problem to the interface 110 of the solution accuracy assurance annealing calculation device 100 (step S201).
- step S202 the processing control means 120 divides the maximization problem input to the interface 110 into a plurality of partial problems.
- the process of step S202 may be omitted.
- step S203 the processing control means 120 confirms whether or not there is a partial problem that has not yet been solved. If the process of step S202 is omitted, the "partial problem” becomes a "one maximization problem” (the same applies to the following steps).
- the processing control means 120 selects one unsolved partial problem (step S204).
- the processing control means 120 alleviates the selected partial problem (step S205), and inputs the alleviated partial problem to the second processing means 140.
- the second processing means 140 solves the relaxed subproblem and outputs an upper bound (step S206).
- the processing control means 120 confirms whether or not the output upper bound is larger than the provisional value (step S207). When the upper bound is equal to or less than the provisional value (No in step S207), the processing control means 120 ends the solution of the selected subproblem and returns to step S203.
- the processing control means 120 inputs the selected partial problem to the first processing means 130.
- the first processing means 130 solves the selected subproblem and outputs the solution and the maximum value of the subproblem (step S208).
- the processing control means 120 confirms whether or not the output maximum value is larger than the provisional value (step S209). When the maximum value is equal to or less than the provisional value (No in step S209), the processing control means 120 returns to step S203.
- the processing control means 120 sets the upper bound output in step S206 as the provisional upper bound, the solution output in step S208 as the provisional solution, and the maximum value. Is updated to the provisional value (step S210). After updating, the processing control means 120 returns to step S203.
- the interface 110 When there is no unsolved subproblem (No in step S203), the interface 110 outputs the provisional upper bound, the provisional solution, and the provisional value as the upper bound, the solution, and the maximum value of the maximization problem, respectively (step S211). .. After the output, the solution accuracy assurance annealing calculation device 100 ends the maximization problem solving process.
- the solution accuracy assurance annealing calculation device 100 of the present embodiment includes a first processing means 130 for finding a solution of a combinatorial optimization problem in a state where complicated constraints are imposed, and a state in which the imposed complicated constraints are relaxed. Includes a second processing means 140 for finding the lower or upper bound of the combinatorial optimization problem.
- the solution accuracy assurance annealing calculation device 100 can output the lower bound and the solution of the minimization problem together when the combinatorial optimization problem is the minimization problem. Further, the solution accuracy guarantee annealing calculation device 100 can output the upper bound and the solution of the maximization problem together when the combinatorial optimization problem is the maximization problem.
- the user who requested the solution of the combinatorial optimization problem can roughly grasp the difference between the obtained solution and the true solution as compared with the case where the lower bound or the upper bound cannot be obtained. That is, the solution accuracy assurance annealing calculation device 100 can guarantee the accuracy of the solution of the combinatorial optimization problem to be output.
- FIG. 10 is an explanatory diagram showing a hardware configuration example of the solution accuracy assurance annealing calculation device 100 according to the present invention.
- the solution accuracy assurance annealing calculation device 100 shown in FIG. 10 includes a CPU (Central Processing Unit) 11, a main storage unit 12, a communication unit 13, and an auxiliary storage unit 14. Further, the input unit 15 for the user to operate and the output unit 16 for presenting the processing result or the progress of the processing content to the user are provided.
- a CPU Central Processing Unit
- main storage unit 12 main storage unit 12
- communication unit 13 main storage unit 13
- auxiliary storage unit 14 for presenting the processing result or the progress of the processing content to the user are provided.
- the solution accuracy assurance annealing calculation device 100 is realized by software by executing a program in which the CPU 11 shown in FIG. 10 provides the functions of each component.
- each function is realized by software by the CPU 11 loading the program stored in the auxiliary storage unit 14 into the main storage unit 12 and executing the program to control the operation of the solution accuracy assurance annealing calculation device 100. ..
- the solution accuracy assurance annealing calculation device 100 shown in FIG. 10 may include a DSP (Digital Signal Processor) instead of the CPU 11.
- the solution accuracy assurance annealing calculation device 100 shown in FIG. 10 may include the CPU 11 and the DSP together.
- the main storage unit 12 is used as a data work area or a data temporary save area.
- the main storage unit 12 is, for example, a RAM (RandomAccessMemory).
- the communication unit 13 has a function of inputting and outputting data to and from peripheral devices via a wired network or a wireless network (information communication network).
- the auxiliary storage unit 14 is a tangible storage medium that is not temporary.
- Examples of non-temporary tangible storage media include magnetic disks, opto-magnetic disks, CD-ROMs (CompactDiskReadOnlyMemory), DVD-ROMs (DigitalVersatileDiskReadOnlyMemory), and semiconductor memories.
- the input unit 15 has a function of inputting data and processing instructions. Further, the output unit 16 has a function of outputting data.
- the interface 110 of the present embodiment is realized by the input unit 15 and the output unit 16.
- each component is connected to the system bus 17.
- the auxiliary storage unit 14 stores a program for realizing the processing control means 120, the first processing means 130, and the second processing means 140 in the solution accuracy assurance annealing calculation device 100 of the present embodiment.
- the solution accuracy assurance annealing calculation device 100 may be equipped with a circuit including hardware components such as an LSI (Large Scale Integration) that realizes the functions shown in FIG. 1 inside.
- LSI Large Scale Integration
- the solution accuracy assurance annealing calculation device 100 may be realized by hardware that does not include a computer function that uses an element such as a CPU.
- a part or all of each component may be realized by a general-purpose circuit (circuitry), a dedicated circuit, a processor, or a combination thereof. These may be composed of a single chip (for example, the above LSI) or may be composed of a plurality of chips connected via a bus. A part or all of each component may be realized by the combination of the circuit or the like and the program described above.
- the first processing means 130 of the solution accuracy assurance annealing calculation device 100 may be realized by an optical device or a quantum device that solves a combinatorial optimization problem by an annealing method.
- the plurality of information processing devices and circuits may be centrally arranged or distributed.
- the information processing device, the circuit, and the like may be realized as a form in which each is connected via a communication network, such as a client-and-server system and a cloud computing system.
- FIG. 11 is a block diagram showing an outline of the solution accuracy assurance annealing calculation device according to the present invention.
- the solution accuracy guarantee annealing calculation device 20 according to the present invention has a first solution means 21 (for example, a first processing means 130) that solves a combination optimization problem by an annealing method, and a constraint condition imposed on the combination optimization problem.
- a second solving means 22 (for example, a second processing means 140) for solving a relaxation problem, which is a problem generated by the relaxation, is provided, and the second solving means 22 has a combination optimization problem as a minimization problem.
- the lower bound of the minimization target in the minimization problem is calculated by solving the mitigation problem generated from the combination optimization problem, and in the case where the combination optimization problem is the maximization problem, the combination optimization problem is used. By solving the generated mitigation problem, the upper bound of the maximization target in the maximization problem is calculated.
- the solution accuracy assurance annealing unit can guarantee the accuracy of the solution of the combinatorial optimization problem.
- the solution accuracy assurance annealing calculation device 20 may include a generation means (for example, a processing control means 120) for generating a mitigation problem from a combinatorial optimization problem.
- a generation means for example, a processing control means 120 for generating a mitigation problem from a combinatorial optimization problem.
- the solution accuracy assurance annealing unit can generate a mitigation problem.
- the generation means may output the solution of the combinatorial optimization problem calculated by the first solving means 21 solving the combinatorial optimization problem, and the lower bound or the upper bound calculated by the second solving means 22.
- the generation means is the value of the minimization target to which the solution of the combinatorial optimization problem, which is the minimization problem calculated by the first solution means 21, is substituted, or the combination, which is the maximization problem calculated by the first solution means 21.
- the value of the maximization target to which the solution of the optimization problem is substituted may be output.
- the solution accuracy assurance annealing unit can output the solution of the combinatorial optimization problem, the minimum value or the maximum value, and the lower or upper bound.
- combinatorial optimization problem may be a problem described in the Ising model format.
- the solution accuracy assurance annealing calculator can solve a combinatorial optimization problem in which the solution is a combination of "1" and "-1".
- the combinatorial optimization problem may be a problem described in the QUBO format.
- the solution accuracy assurance annealing calculator can solve a combinatorial optimization problem in which the solution is a combination of "1" and "0".
- the annealing method may be a simulated annealing method.
- the solution accuracy assurance annealing calculator can solve the combinatorial optimization problem using a simulated annealing machine.
- the combinatorial optimization problem may be a problem described in the transverse magnetic field Ising model format.
- the annealing method may be a quantum annealing method.
- the solution accuracy guarantee annealing calculator can solve the combinatorial optimization problem using the quantum annealing machine.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Mathematical Optimization (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Operations Research (AREA)
- Databases & Information Systems (AREA)
- Algebra (AREA)
- Bioinformatics & Computational Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computing Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US18/013,416 US20230289401A1 (en) | 2020-07-03 | 2020-07-03 | Solution accuracy guaranteeing annealing calculation device, method, and program |
| JP2022532988A JPWO2022003943A1 (https=) | 2020-07-03 | 2020-07-03 | |
| PCT/JP2020/026164 WO2022003943A1 (ja) | 2020-07-03 | 2020-07-03 | 解精度保証アニーリング計算装置、方法及びプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/JP2020/026164 WO2022003943A1 (ja) | 2020-07-03 | 2020-07-03 | 解精度保証アニーリング計算装置、方法及びプログラム |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2022003943A1 true WO2022003943A1 (ja) | 2022-01-06 |
Family
ID=79315871
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2020/026164 Ceased WO2022003943A1 (ja) | 2020-07-03 | 2020-07-03 | 解精度保証アニーリング計算装置、方法及びプログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US20230289401A1 (https=) |
| JP (1) | JPWO2022003943A1 (https=) |
| WO (1) | WO2022003943A1 (https=) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023167107A1 (ja) * | 2022-03-01 | 2023-09-07 | 株式会社レゾナック | 情報処理装置、情報処理システム、プログラム、及び材料組成探索方法 |
| EP4361899A1 (en) | 2022-10-31 | 2024-05-01 | Fujitsu Limited | Evaluation support program, evaluation support method, and information processing apparatus |
| JPWO2024142173A1 (https=) * | 2022-12-26 | 2024-07-04 | ||
| WO2025115289A1 (ja) * | 2023-11-29 | 2025-06-05 | 株式会社日立製作所 | 情報処理装置、情報処理システム及び情報処理プログラム |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20230401282A1 (en) * | 2022-06-10 | 2023-12-14 | Microsoft Technology Licensing, Llc | Computing inverse temperature upper and lower bounds |
| CN121169487B (zh) * | 2025-09-22 | 2026-04-17 | 北京鸿途信达科技股份有限公司 | 一种基于机器学习的广告预算分配方法及系统 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017073106A (ja) * | 2015-10-07 | 2017-04-13 | 株式会社東芝 | 量子計算装置、及び、方法 |
| JP2020004387A (ja) * | 2018-06-20 | 2020-01-09 | 富士通株式会社 | 最適化問題計算プログラム及び最適化問題計算システム |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10096036B2 (en) * | 2012-12-17 | 2018-10-09 | Nec Corporation | Optimal design assistance device, method, and recording medium |
-
2020
- 2020-07-03 JP JP2022532988A patent/JPWO2022003943A1/ja active Pending
- 2020-07-03 US US18/013,416 patent/US20230289401A1/en active Pending
- 2020-07-03 WO PCT/JP2020/026164 patent/WO2022003943A1/ja not_active Ceased
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2017073106A (ja) * | 2015-10-07 | 2017-04-13 | 株式会社東芝 | 量子計算装置、及び、方法 |
| JP2020004387A (ja) * | 2018-06-20 | 2020-01-09 | 富士通株式会社 | 最適化問題計算プログラム及び最適化問題計算システム |
Non-Patent Citations (3)
| Title |
|---|
| "IT Text. Mathematical Optimization", 25 August 2012, Tokyo, ISBN: 978-4-274-21244-4, article KUNO, TAKAHITO ET AL.: "Passage", pages: 193 - 207, XP009534205 * |
| CHEN MING ZHE, NAOTO KATAYAMA, HIROAKI MOHRI: "A Lagrange Relaxation Method for the Netwotk Design Problem Considering Facility Location", JOURNAL OF JAPAN INDUSTRIAL MANAGEMENT ASSOCIATION, NIHON KEIKEI KOGAKKAI, JAPAN INDUSTRIAL MANAGEMENT ASSOCIATION, JP, vol. 56, no. 5, 31 December 2005 (2005-12-31), JP , pages 330 - 338, XP055897682, ISSN: 1342-2618, DOI: 10.11221/jima.56.330 * |
| NAKATA, ATSUHIKO: "NASA and Google's Secret Weapon: The Amazing Quantum Compute r", NIKKEI COMPUTER, vol. 858, 17 April 2014 (2014-04-17), pages 24 - 37, XP009534003, ISSN: 0285-4619 * |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2023167107A1 (ja) * | 2022-03-01 | 2023-09-07 | 株式会社レゾナック | 情報処理装置、情報処理システム、プログラム、及び材料組成探索方法 |
| EP4361899A1 (en) | 2022-10-31 | 2024-05-01 | Fujitsu Limited | Evaluation support program, evaluation support method, and information processing apparatus |
| JPWO2024142173A1 (https=) * | 2022-12-26 | 2024-07-04 | ||
| WO2024142173A1 (ja) * | 2022-12-26 | 2024-07-04 | 日本電気株式会社 | 最適化装置、最適化方法、及びプログラム |
| JP7831644B2 (ja) | 2022-12-26 | 2026-03-17 | 日本電気株式会社 | 最適化装置、最適化方法、及びプログラム |
| WO2025115289A1 (ja) * | 2023-11-29 | 2025-06-05 | 株式会社日立製作所 | 情報処理装置、情報処理システム及び情報処理プログラム |
Also Published As
| Publication number | Publication date |
|---|---|
| US20230289401A1 (en) | 2023-09-14 |
| JPWO2022003943A1 (https=) | 2022-01-06 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2022003943A1 (ja) | 解精度保証アニーリング計算装置、方法及びプログラム | |
| Fujii et al. | Deep variational quantum eigensolver: A divide-and-conquer method for solving a larger problem with smaller size quantum computers | |
| CN113544711A (zh) | 用于使用聚类收缩的混合算法系统和方法 | |
| Leetmaa et al. | KMCLib: A general framework for lattice kinetic Monte Carlo (KMC) simulations | |
| JP7297540B2 (ja) | 情報処理装置、puboソルバ、情報処理方法およびプログラム | |
| JP7468663B2 (ja) | 最適化装置、最適化方法および最適化プログラム | |
| CN111816257A (zh) | 结合结构搜索装置、结合结构搜索方法以及介质 | |
| JP6925546B1 (ja) | 演算システム、情報処理装置、および最適解探索処理方法 | |
| JPWO2020202312A1 (ja) | 情報処理装置、演算装置、及び情報処理方法 | |
| US12417329B2 (en) | Architecting an integrated circuit or system using machine learning | |
| US20210285778A1 (en) | Information processing apparatus, route generation method, and non-transitory computer-readable storage medium | |
| CN118673394A (zh) | 大语言模型稀疏化方法、装置、电子设备和存储介质 | |
| WO2022264414A1 (ja) | シミュレーテッドアニーリング装置およびシミュレーテッドアニーリング方法 | |
| Wu et al. | X-architecture Steiner minimal tree construction based on discrete differential evolution | |
| Binder et al. | A study on global and local optimization techniques for TCAD analysis tasks | |
| Huang et al. | An empirical study of optimizers for quantum machine learning | |
| JP2021039751A (ja) | 大規模組み合わせ最適化のための大域ビューを用いた局所探索 | |
| JP7687425B2 (ja) | 量子コンピュータ検証装置及び方法 | |
| JP2021060714A (ja) | 次数変換装置、次数変換方法、および次数変換プログラム | |
| WO2021229648A1 (ja) | 数式モデル生成システム、数式モデル生成方法および数式モデル生成プログラム | |
| US12608605B2 (en) | Grouped convolution processing definition changing device, grouped convolution processing definition changing method, and grouped convolution processing definition changing program | |
| Balaskas et al. | Variability-aware approximate circuit synthesis via genetic optimization | |
| WO2022269712A1 (ja) | 複数量子ビットオブザーバブルのパーティショニング方法、複数量子ビットオブザーバブルのパーティショニングプログラム、および情報処理装置 | |
| JP2021135784A (ja) | 学習装置及び推論装置 | |
| WO2020245877A1 (ja) | 量子アニーリング計算装置、量子アニーリング計算方法および量子アニーリング計算プログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 20942690 Country of ref document: EP Kind code of ref document: A1 |
|
| ENP | Entry into the national phase |
Ref document number: 2022532988 Country of ref document: JP Kind code of ref document: A |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 20942690 Country of ref document: EP Kind code of ref document: A1 |