US 12,443,673 B2
Information processing apparatus of adjusting temperature range in solving optimization problem, computer-implemented method of adjusting temperature range in solving optimization problem, and non-transitory computer-readable storage medium for storing program of adjusting temperature range in solving optimization problem
Jumpei Koyama, Setagaya (JP)
Assigned to FUJITSU LIMITED, Kawasaki (JP)
Filed by FUJITSU LIMITED, Kawasaki (JP)
Filed on Feb. 3, 2021, as Appl. No. 17/165,989.
Claims priority of application No. 2020-078506 (JP), filed on Apr. 27, 2020.
Prior Publication US 2021/0334332 A1, Oct. 28, 2021
Int. Cl. G06F 17/10 (2006.01); G06F 17/11 (2006.01); G06N 7/01 (2023.01)
CPC G06F 17/11 (2013.01) [G06N 7/01 (2023.01)] 8 Claims
OG exemplary drawing
 
1. An information processing apparatus of solving a combinatorial optimization problem, the information processing apparatus comprising:
search circuitry configured to use a Markov Chain Monte Carlo method to perform, within a temperature range including a plurality of temperature values, a search for a ground state represented by a plurality of state variables included in an Ising-type energy function and held obtained by formulating the combinatorial optimization problem, the search circuitry holding a value of the Ising-type energy function for the plurality of state variables; and
temperature adjustment circuitry configured to:
acquire, for each temperature value of the plurality of temperature values in descending order, a value of the Ising-type energy function obtained by the search circuitry for the plurality of state variables at the each temperature value among the plurality of temperature values;
determine, for the each temperature value of the plurality of temperature value in descending order, whether the value acquired for the each temperature value is smaller than a smallest value among one or more values of the Ising-type energy function acquired before reaching the each temperature value in descending order;
record, for the each temperature value of the plurality of temperature values, update information based on a result of the determining for the temperature value, the update information indicates, for the each temperature value of the plurality of temperature values, whether the smallest value has been updated at the each temperature value, and is updated to indicate that the smallest value has been updated at the each temperature value in a case where the result of the determining for the each temperature value indicates that the value acquired for the each temperature value is smaller than the smallest value; and
in a case where the acquiring and the determining with respect to all of the plurality of temperature values in descending order have been completed, adjust the temperature range based on one or more of temperature values among the plurality of temperature values, each of the one or more of temperature values being a temperature value at which the update information indicates that the smallest value has been updated, and set the adjusted temperature range to the search circuitry in order to cause the search circuitry to perform within the adjusted temperature range a search for the ground state;
wherein the search circuitry is configured to perform the search within the each temperature range by using each of a first set and a second set of the plurality of state variables, and
wherein the temperature adjustment circuitry is configured to:
determine, for each of the plurality of temperature values in descending order, whether a first value of the Ising-type energy function at the first temperature value is smaller than a first smallest value of the Ising-type energy function acquired by using the first set before reaching the each temperature value;
in response to determining that the first value acquired for the each temperature values is smaller than the first smallest value, record the update information for the each temperature value;
determine, for each of the plurality of temperature values in descending order, whether a second smallest value of the Ising-type energy function acquired by using the second set before reaching the each temperature value; and
in response to determining that the second value acquired for the each temperature value is smaller than the second smallest value, record the update information for the each temperature value;
wherein the search circuitry is configured to execute the search by the first set and the search by the second set in parallel;
wherein the search circuitry is configured to exchange, based on a predetermined exchange probability, a temperature value used in the search by the first set among the plurality of temperature values with another temperature value used in the search by the second set among the plurality of temperature values.