Patentable/Patents/US-20250335534-A1
US-20250335534-A1

Computer-Readable Recording Medium Storing Program and Data Processing Apparatus

PublishedOctober 30, 2025
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

A medium storing a program for causing a computer to execute: searching for a solution to a combinatorial optimization problem through a local search (LS), in a first search range (SR) that is based on state variables (SVs); determining whether a current state (CS) represented by a combination of values of the SVs has fallen into a local solution in a search in the first SR; in a case where it is determined that the CS has fallen into the local solution, determining a first solution candidate (SC), based on SCs; and performing, in a state in which a value of a first SV that has a mutually equal value between the CS and the first SC among the SVs is fixed, the LS in a second SR that is based on a second SV that has mutually different values between the CS and the first SC among the SVs.

Patent Claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

. A non-transitory computer-readable recording medium storing a program for causing a computer to execute processing comprising:

2

. The non-transitory computer-readable recording medium according to, wherein each of the plurality of solution candidates is represented by a combination of values of the plurality of state variables at a time when a minimum value among values of an evaluation function of the combinatorial optimization problem obtained during the search in the first search range is updated.

3

. The non-transitory computer-readable recording medium according to, wherein

4

. The non-transitory computer-readable recording medium according to, wherein the first solution candidate is a solution candidate of which a Hamming distance from the current state is closest to a threshold among the plurality of solution candidates.

5

. The non-transitory computer-readable recording medium according to, wherein the first solution candidate is determined based on a path relinking method by using two solution candidates randomly selected from the plurality of solution candidates.

6

. The non-transitory computer-readable recording medium according to, wherein the program causes the computer to execute a process comprising:

7

. The non-transitory computer-readable recording medium according to, the processing further comprising:

8

. The non-transitory computer-readable recording medium according to, wherein the processing further comprising:

9

. A non-transitory computer-readable recording medium storing a program for causing a computer to execute processing comprising:

10

. The non-transitory computer-readable recording medium according to, wherein each of the plurality of solution candidates is represented by a combination of values of the plurality of state variables at a time when a minimum value among values of the first evaluation function obtained during the search using the first evaluation function is updated.

11

. The non-transitory computer-readable recording medium according to, wherein the processing further comprising:

12

. The non-transitory computer-readable recording medium according to, wherein the processing further comprising:

13

. The non-transitory computer-readable recording medium according to, wherein the processing further comprising:

14

. A data processing apparatus comprising:

Detailed Description

Complete technical specification and implementation details from the patent document.

This application is based upon and claims the benefit of priority of the prior Japanese Patent Application No. 2024-73559, filed on Apr. 30, 2024, the entire contents of which are incorporated herein by reference.

The embodiments discussed herein are related to a computer-readable recording medium storing a program and a data processing apparatus.

There is a method of converting, when searching for a solution to a combinatorial optimization problem, the combinatorial optimization problem into an Ising model representing a behavior of a spin of a magnetic substance. The Ising model is represented by an Ising-type evaluation function that evaluates a solution to the combinatorial optimization problem. The Ising-type evaluation function includes a plurality of state variables and a plurality of weight values. By a combination of values of the plurality of state variables, a state of the Ising model is represented. In the Ising-type evaluation function, the state variables are binary variables that take a value of 0 or 1 (or −1 or +1). The state variables may be referred to as bits. The Ising-type evaluation function may also be referred to as an energy function, and the value of the evaluation function may also be referred to as energy of the Ising model.

A device that performs a solution search by using such an Ising-type evaluation function is called an Ising machine. For example, the Ising machine searches for a combination that minimizes the value of the evaluation function among combinations of the values of the state variables included in the evaluation function. In this case, the combination of the values of the state variables that minimizes the value of the evaluation function corresponds to a ground state or an optimal solution.

As a solution finding method for obtaining an approximate solution to a combinatorial optimization problem in a practical time, there is a local search. As examples of a method of performing the local search, there are a simulated annealing method which is a type of a Markov Chain Monte Carlo (MCMC) method, a replica exchange method (also called an exchange Monte Carlo method or the like), and the like.

Some optimization problems have a constraint (1-hot constraint) that the number of state variables having a value of 1 among a group of state variables included in an evaluation function is only one. In the related art, an optimization apparatus has been proposed which reduces a calculation time by performing a local search limitedly in a state satisfying the 1-hot constraint.

Japanese Laid-open Patent Publication No. 2003-223322, Japanese Laid-open Patent Publication No. 2018-109950, U.S. Patent Application Publication No. 2019/0251227, U.S. Patent Application Publication No. 2016/0203419, and Japanese Laid-open Patent Publication No. 2020-064536 are disclosed as related art.

According to an aspect of the embodiments, there is provided a non-transitory computer-readable recording medium storing a program for causing a computer to execute processing including: searching for a solution to a combinatorial optimization problem through a local search, in a first search range that is based on a plurality of state variables; determining whether or not a current state represented by a combination of values of the plurality of state variables has fallen into a local solution in a search in the first search range; in a case where it is determined that the current state has fallen into the local solution, determining a first solution candidate, based on a plurality of solution candidates stored in a storage unit; and performing, in a state in which a value of a first state variable that has a mutually equal value between the current state and the first solution candidate among the plurality of state variables is fixed, the local search in a second search range that is based on a second state variable that has mutually different values between the current state and the first solution candidate among the plurality of state variables.

The object and advantages of the invention will be realized and attained by means of the elements and combinations particularly pointed out in the claims.

It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory and are not restrictive of the invention.

In a local search, a state represented by a combination of values of state variables included in an evaluation function may fall into a local solution and become unable to escape from the local solution. In this case, a solution finding time may become long.

In one aspect, an object is to facilitate an escape from a local solution of a combinatorial optimization problem.

Hereinafter, embodiments of the present disclosure will be described with reference to the drawings.

is a diagram illustrating an example of a data processing apparatus according to a first embodiment and a processing procedure thereof. A data processing apparatusaccording to the first embodiment searches for a solution to a combinatorial optimization problem through a local search. The data processing apparatusmay be a client apparatus or a server apparatus. The data processing apparatusmay also be called a computer.

The data processing apparatusaccording to the first embodiment includes a storage unitand a processing unit

The storage unitmay include a volatile semiconductor memory such as a random-access memory (RAM), or may include a non-volatile storage such as a hard disk drive (HDD) or a flash memory. The storage unitmay include both of the volatile semiconductor memory and the non-volatile storage.

The storage unitstores problem information of a combinatorial optimization problem. The combinatorial optimization problem may be formulated by an Ising-type evaluation function. For example, the combinatorial optimization problem is replaced with a problem of minimizing a value of the Ising-type evaluation function.

The Ising-type evaluation function is represented by, for example, Expression (1) below.

A state vector x has a plurality of state variables as elements, and represents a state of an Ising model. Expression (1) represents an evaluation function formulated in a quadratic unconstrained binary optimization (QUBO) format. In a case of a problem of maximizing the value of the evaluation function, the sign of the evaluation function may be reversed.

A first term on a right side of Expression (1) denotes a result obtained by adding up products of values of two state variables and a weight coefficient without omission and duplication for all combinations of two state variables that are selectable from all the state variables. Suffixes i and j are indices of the state variables. xdenotes an i-th state variable. Xdenotes a j-th state variable. Wdenotes a weight between the i-th state variable and the j-th state variable or a weight coefficient indicating a strength of coupling. W=Wand W=0 hold. N denotes the total number of state variables.

A second term on the right side of Expression (1) is a total sum of products of a bias of each of all the state variables and the value of the state variable. bdenotes a bias for the i-th state variable. The problem information of the combinatorial optimization problem stored in the storage unitincludes the weight coefficients, the biases, and the like included in the evaluation function described above.

The storage unitmay store a calculation condition of the local search. When a local search based on the simulated annealing method is performed, examples of the calculation condition include a maximum value of a temperature parameter (hereinafter, referred to as a highest temperature), a temperature parameter change schedule, a minimum value of the temperature parameter (hereinafter, referred to as a lowest temperature), a search end condition, and so on. When a local search based on the replica exchange method is performed, examples of the calculation condition include a highest temperature, a lowest temperature, the number of replicas, a replica exchange frequency, a search end condition, and so on.

The storage unitfurther stores a plurality of solution candidates for the combinatorial optimization problem and values of the evaluation function for the respective solution candidates. Each of the plurality of solution candidates is represented by a state (a combination of values of a plurality of state variables) at a time when the minimum value among the values of the evaluation function obtained during the search in the local search is updated.

When the value of the evaluation function corresponding to the state obtained during the search is a value smaller than the minimum value of the evaluation function obtained so far, that state is stored in the storage unitas a solution candidate. For example, whenever the minimum value is updated, a new solution candidate is stored in the storage unittogether with the corresponding value of the evaluation function. The storage unitstores the minimum value of the values of the evaluation function obtained so far.

When the local searches are performed under a plurality of calculation conditions different from each other, the plurality of solution candidates may include a solution candidate obtained in each of the local searches performed under the plurality of calculation conditions (such as different temperature conditions or different initial states). In this case, the solution candidate obtained in each local search may be used in common when a first solution candidate (described later) is determined in each local search.

In the problem of maximizing the value of the evaluation function, each of the plurality of solution candidates is represented by a state at a time when the maximum value among values of the evaluation function obtained during a search in the local search is updated.

The processing unitmay be implemented by, for example, an electronic circuit such as an application specific integrated circuit (ASIC) or a field programmable gate array (FPGA). However, the processing unitmay be implemented by a processor such as a central processing unit (CPU), a graphics processing unit (GPU), or a digital signal processor (DSP). For example, the processor executes a program stored in a memory such as a RAM (which may be the storage unit). A set of processors may be called a multiprocessor or simply a “processor”. The processing unitmay include a processor and an electronic circuit such as an ASIC or an FPGA.

The processing unitsearches for a solution to a combinatorial optimization problem through a local search.

The local search is performed by using a change amount (ΔE) of the value of the evaluation function in response to a change in x. ΔEis represented by Expression (2) below.

When xthat satisfies ΔE>0 changes, the value of Expression (1) decreases. For each of the plurality of state variables, the processing unitcalculates ΔEdue to a change in the value of one state variable among the plurality of state variables. The change in xis probabilistically accepted in a form in which a change that decreases the value of the evaluation function is prioritized.

At this time, with a steepest descent method, if the state falls into a local solution, the state becomes unable to escape. Accordingly, the processing unituses a Metropolis method or a Gibbs method in determining a transition probability from a certain state to a next state due to a change of a certain state variable. For example, the processing unitalso probabilistically permits a change that increases the value of the evaluation function, in accordance with a comparison between ΔEand a thermal noise value. The thermal noise value is obtained based on a value of the temperature parameter or a random number. As the value of temperature parameter increases, an amplitude of the thermal noise value increases. As the amplitude of the thermal noise value increases, a state transition with a large increase amount of the value of the evaluation function is more likely to be permitted.

For example, with the simulated annealing method, the processing unitgradually changes the value of the temperature parameter from the highest temperature to the lowest temperature in accordance with a predetermined temperature parameter change schedule. Consequently, the amplitude of the thermal noise value decreases, and the state of the Ising model converges to a ground state.

In the local search that adopts the MCMC method such as the simulated annealing method, a Rackwitz Fiessler (RF) method, or the like, a change in the state variable that increases the value of the evaluation function is also permitted. However, a problem presented below may occur.

is a diagram illustrating an example in which a current state falls into a local solution. A horizontal axis represents the state, and a vertical axis represents the value of the evaluation function (E(x)).

In the example in, a statehas fallen into a local solution where the value of the evaluation function is minimal. In the local search that adopts the MCMC method, the RF method, or the like, once the state falls into a local solution, only states around the local solution, for example, statesto, may be obtained and the state may be constrained to the same local solution again.

Accordingly, to facilitate an escape from the local solution of the combinatorial optimization problem, the processing unitperforms processing below.illustrates an example of a flow of processing performed by the processing unitto facilitate the escape from the local solution.

Step S: The processing unitperforms the local search described above in a first search range that is based on a plurality of state variables (for example, all state variables included in E(x)).

Step S: The processing unitdetermines whether or not the current state represented by the combination of the values of the plurality of state variables has fallen into a local solution in the search in the first search range. For example, the processing unitdetermines that the current state has fallen into the local solution when the minimum value among the values of the evaluation function obtained during the search is not updated for a predetermined period.

In the problem of maximizing the value of the evaluation function, the processing unitdetermines that the current state has fallen into the local solution when the maximum value among the values of the evaluation function obtained during the search is not updated for a predetermined period.

Step S: In a case where the processing unitdetermines that the current state has fallen into the local solution, the processing unitdetermines a first solution candidate (hereinafter, referred to as an elite solution) based on the above-described plurality of solution candidates stored in the storage unit.

The elite solution is, for example, a solution candidate of which a Hamming distance from the current state is closest to a threshold among the plurality of solution candidates stored in the storage unit. It is conceivable to use, as the elite solution, a solution candidate of which the Hamming distance from the current state is closest. However, in this case, in processing in step S(described later), a state transition from the current state to the elite solution may occur, and thereafter, the search may not proceed any further. As the threshold, for example, a value of about 20% of the total number of state variables is used. Note that the threshold may be changed as appropriate.

Alternatively, the elite solution may be determined based on a path relinking (PR) method by using two solution candidates randomly selected from the plurality of solution candidates stored in the storage unit. The method of determining an elite solution based on the path relinking method will be described later (see).

Step S: The processing unitperforms the local search in a state in which the value of a first state variable that has a mutually equal value between the current state and the elite solution among the plurality of state variables is fixed. The local search in the processing in step Sis performed in a second search range that is based on a second state variable that has mutually different values between the current state and the elite solution among the plurality of state variables.

The local search in the second search range corresponds to, for example, a local search using an evaluation function of Expression (3) below.

In Expression (3), “mismatch” represents a set of identification numbers of second state variables that have mutually different values between the current state and the elite solution among the plurality of state variables. X*represents an i-th state variable of the elite solution.

illustrates the stateand an elite solutionas examples of the current state and the elite solution, respectively.also illustrates an example of the first search range and an example of the second search range.

When it is determined that the current state has fallen into the local solution and the elite solutionis determined, the value of the first state variable that has a mutually equal value between the state, which is the current state, and the elite solutionamong the plurality of state variables is fixed. The local search is then performed in the second search range that is based on the second state variable that has mutually different values between the state, which is the current state, and the elite solutionamong the plurality of state variables.

Patent Metadata

Filing Date

Unknown

Publication Date

October 30, 2025

Inventors

Unknown

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “COMPUTER-READABLE RECORDING MEDIUM STORING PROGRAM AND DATA PROCESSING APPARATUS” (US-20250335534-A1). https://patentable.app/patents/US-20250335534-A1

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.