Determination device, control device, quantum annealing system, determination method, control method, and recording medium
By determining symmetry and assigning combinatorial optimization problems with non-isomorphic graph structures, the quantum annealing system effectively addresses unfair sampling to find multiple optimal solutions, enhancing solution diversity and probability equity.
Patent Information
- Application Number
- PCT/JP2024/019927
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Filing Date
- 2024-05-30
- Publication Date
- 2025-12-04
AI Technical Summary
Existing quantum annealing systems struggle to efficiently find multiple optimal solutions to combinatorial optimization problems due to unfair sampling and symmetry in graph structures, limiting the ability to obtain a large number of optimal solutions.
A determination device and control method that determine symmetry in permutations of binary variables and assign combinatorial optimization problems to a quantum annealing machine using multiple indexing methods to ensure non-isomorphic graph structures, enabling quantum annealing to find multiple optimal solutions.
The solution allows for the quantum annealing system to obtain a relatively large number of optimal solutions by addressing unfair sampling and symmetry issues, ensuring diverse and equitable probability distributions for each solution.
Smart Images

Figure JP2024019927_04122025_PF_FP_ABST
Abstract
Description
Determination device, control device, quantum annealing system, determination method, control method, and recording medium
[0001] The present invention relates to a determination device, a control device, a quantum annealing system, a determination method, a control method, and a recording medium.
[0002] One method for searching for a solution to a combinatorial optimization problem is quantum annealing (see, for example, Patent Document 1).
[0003] WO 2023 / 100595
[0004] There may be cases where quantum annealing is used to solve combinatorial optimization problems that have multiple optimal solutions, and it is desired to obtain as many optimal solutions as possible.
[0005] An example of an object of the present invention is to provide a determination device, a control device, a quantum annealing system, a determination method, a control method, and a recording medium that can solve the above-mentioned problems.
[0006] According to a first aspect of the present invention, a determination device includes a determination means for determining symmetry regarding the permutation of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine among a plurality of the binary variables.
[0007] According to a second aspect of the present invention, a control device includes control means for assigning a combinatorial optimization problem to a quantum annealing machine based on each of a plurality of indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem, and for controlling the quantum annealing machine to perform quantum annealing.
[0008] According to a third aspect of the present invention, a quantum annealing system comprises a quantum annealing machine and a control device, wherein the control device comprises control means for assigning a combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem, and for controlling the quantum annealing machine to perform quantum annealing.
[0009] According to a fourth aspect of the present invention, a determination method includes a computer determining symmetry regarding permutations of indices that identify binary variables of a combinatorial optimization problem assigned to a quantum annealing machine among a plurality of the binary variables.
[0010] According to a fifth aspect of the present invention, a control method includes a computer assigning a combinatorial optimization problem to a quantum annealing machine based on each of a plurality of indexing methods for binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem, and controlling the quantum annealing machine to perform quantum annealing.
[0011] According to a sixth aspect of the present invention, a recording medium is a recording medium having recorded thereon a program for causing a computer to execute a determination of symmetry regarding the permutation of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine, between a plurality of the binary variables.
[0012] According to a seventh aspect of the present invention, a recording medium has recorded thereon a program that causes a computer to execute the following: assigning a combinatorial optimization problem to a quantum annealing machine based on each of a plurality of indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem; and controlling the quantum annealing machine to perform quantum annealing.
[0013] According to the present invention, when a combinatorial optimization problem is solved by quantum annealing, it is expected that a relatively large number of optimal solutions will be obtained.
[0014] 1 is a diagram illustrating an example of the configuration of a quantum annealing system according to at least one embodiment; 2 is a diagram illustrating an example of the configuration of a quantum annealing machine according to at least one embodiment; 3 is a diagram illustrating an example of the configuration of a control device according to at least one embodiment; 4 is a diagram illustrating an example of the structure of a quantum annealing machine according to at least one embodiment; 5 is a diagram illustrating a first example of assignment of indices to nodes of a complete graph; 6 is a diagram illustrating an example of an LHZ model showing indices for assignment of a complete graph; 7 is a diagram illustrating a second example of assignment of indices to nodes of a complete graph; 8 is a diagram illustrating an example of assignment of physical variables to an LHZ model; 9 is a diagram illustrating another example of assignment of physical variables to an LHZ model; 10 is a diagram illustrating yet another example of assignment of physical variables to an LHZ model; 11 is a diagram illustrating an example of the rate at which each optimal solution can be obtained for each assignment of a Hamiltonian to an LHZ model; 12 is a diagram illustrating an example of the rate at which each optimal solution can be obtained for each assignment of a Hamiltonian to an LHZ model; 01 is a diagram showing an example of a ratio at which each optimal solution can be obtained based on the above. FIG. 1 is a diagram showing an example of a procedure for a process performed by a control device according to at least one embodiment. FIG. 2 is a diagram showing an example of a procedure for a control device according to at least one embodiment for performing process A. FIG. 3 is a diagram showing an example of a procedure for a control device according to at least one embodiment for performing process B. FIG. 4 is a diagram showing an example of a procedure for a control device according to at least one embodiment for performing process C. FIG. 5 is a diagram showing an example of a procedure for a control device according to at least one embodiment for performing process D. FIG. 6 is a diagram showing an example of the configuration of a determination device according to at least one embodiment. FIG. 7 is a diagram showing an example of the configuration of a control device according to at least one embodiment. FIG. 8 is a diagram showing an example of the configuration of a quantum annealing system according to at least one embodiment. FIG. 9 is a diagram showing an example of a procedure for a determination method according to at least one embodiment. FIG. 10 is a diagram showing an example of a procedure for a control method according to at least one embodiment. FIG. 11 is a schematic block diagram showing the configuration of a computer according to at least one embodiment.
[0015] The following describes embodiments of the present invention, but the following embodiments do not limit the scope of the invention. Furthermore, not all of the combinations of features described in the embodiments are necessarily essential to the solution of the invention. In the following, characters with a tilde (~) will be treated as " ~ For example, σ with a tilde is sometimes expressed as σ ~ It can also be written as:
[0016] 1 is a diagram showing an example of the configuration of a quantum annealing system according to at least one embodiment. In the configuration shown in Fig. 1, the quantum annealing system 1 includes a quantum annealing machine 100 and a control device 200.
[0017] The quantum annealing system 1 performs quantum annealing to solve a combinatorial optimization problem. In particular, when there are multiple optimal solutions to a combinatorial optimization problem, the quantum annealing system 1 finds multiple optimal solutions. The quantum annealing system 1 may be configured to find all optimal solutions to the combinatorial optimization problem.
[0018] Hereinafter, combinations of values that each binary variable in a combinatorial optimization problem can take will be referred to as candidate solutions, regardless of whether they satisfy the constraints in the combinatorial optimization problem. Of the candidate solutions, the one with the best evaluation indicated by the evaluation function in the combinatorial optimization problem will be referred to as the optimal solution or simply the solution. When constraints are specified in a combinatorial optimization problem, of the candidate solutions that satisfy the constraints, the one with the best evaluation indicated by the evaluation function in the combinatorial optimization problem will be referred to as the optimal solution or the solution.
[0019] The quantum annealing machine 100 performs quantum annealing. In the following, an example will be described in which the quantum annealing machine 100 is configured as a quantum annealing machine using the LHZ (Lechner-Hauke-Zoller) method. However, the configuration of the quantum annealing machine 100 is not limited to a specific configuration.
[0020] In the following, a case where a combinatorial optimization problem is expressed using an Ising model will be described as an example. However, the representation format of the combinatorial optimization problem in the quantum annealing system 1 is not limited to a specific format. For example, the combinatorial optimization problem may be expressed using QUBO (Quadratic Unconstrained Binary Optimization). Alternatively, the combinatorial optimization problem may be expressed using a model other than the Ising model or QUBO.
[0021] In the following, an example will be described in which the evaluation function in a combinatorial optimization problem is expressed by a Hamiltonian (energy function). However, the representation format of the evaluation function in the quantum annealing system 1 is not limited to a specific format. For example, the quantum annealing system 1 may use an evaluation function in which the larger the evaluation function value, the better the evaluation.
[0022] 2 is a diagram showing an example of the configuration of the quantum annealing machine 100. In the configuration shown in FIG. 2, the quantum annealing machine 100 includes a plurality of quantum bit devices 110 and a plurality of four-body couplers 120.
[0023] The quantum bit devices 110 are elements for expressing the value of quantum bits. The quantum annealing machine 100 is not limited to a specific type of quantum bit. The four-body coupler 120 couples four quantum bit devices 110. The coupling of quantum bit devices is also referred to as interaction of quantum bit devices. However, the coupler included in the quantum annealing machine 100 is not limited to a four-body coupler.
[0024] The control device 200 controls the quantum annealing machine 100 to perform quantum annealing. In particular, the control device 200 determines the allocation of combinatorial optimization problems to the quantum annealing machine 100. The control device 200 then controls the quantum annealing machine 100 in accordance with the determined allocation. The control device 200 may be configured using a computer.
[0025] Fig. 3 is a diagram showing an example of the configuration of the control device 200. In the configuration shown in Fig. 3, the control device 200 includes a communication unit 210, a display unit 220, an operation input unit 230, a storage unit 280, and a processing unit 290. The processing unit 290 includes a determination unit 291 and a control unit 294. The determination unit 291 includes a structure determination unit 292 and an evaluation function determination unit 293.
[0026] The communication unit 210 communicates with other devices such as the quantum annealing machine 100. For example, the communication unit 210 transmits a control signal for controlling the quantum annealing machine 100 to the quantum annealing machine 100. The communication unit 210 also receives a signal indicating the result of quantum annealing from the quantum annealing machine 100.
[0027] The display unit 220 has a display screen such as a liquid crystal panel or an LED (Light Emitting Diode) panel, and acquires various images. For example, the display unit 220 may display the results of quantum annealing, or the optimal solution to the combinatorial optimization problem obtained from the results of quantum annealing, or both. The display unit 220 may also display the allocation of the combinatorial optimization problem to the quantum annealing machine 100 determined by the control device 200. The display unit 220 is an example of a notification means.
[0028] The operation input unit 230 includes input devices such as a keyboard and a mouse, and accepts user operations. For example, the operation input unit 230 may accept user operations for making various settings related to quantum annealing, such as setting the number of iterations of quantum annealing.
[0029] The storage unit 280 stores various data. For example, the storage unit 280 may store an optimal solution to a combinatorial optimization problem. When multiple optimal solutions to a combinatorial optimization problem are obtained, the storage unit 280 may store the multiple optimal solutions. The storage unit 280 is configured using a storage device included in the control device 200.
[0030] The processing unit 290 performs various processes by controlling each unit of the control device 200. The functions of the processing unit 290 are performed, for example, by a CPU (Central Processing Unit) included in the control device 200 reading and executing a program from the storage unit 280.
[0031] The determination unit 291 determines symmetry regarding the swapping of indices (indexes that identify binary variables) of binary variables of a combinatorial optimization problem assigned to the quantum annealing machine 100 among multiple binary variables. The swapping of indices among multiple binary variables may involve swapping the indices of two binary variables among the multiple binary variables, repeated one or more times.
[0032] The determination unit 291 is an example of a determination means. The symmetry here means that even if processing is performed by swapping the indexes of multiple binary variables, a processing result that can be evaluated as equivalent to the processing result obtained when processing is performed without swapping the binary variables is obtained.
[0033] The structure determination unit 292 determines whether the structure of the quantum annealing machine 100 is such that multiple allocations of combinatorial optimization problems to the quantum annealing machine 100 are possible, such that the probability of obtaining each optimal solution to the combinatorial optimization problem differs for each optimal solution. Hereinafter, multiple allocations of combinatorial optimization problems to the quantum annealing machine 100, such that the probability of obtaining each optimal solution to the combinatorial optimization problem differs for each optimal solution, are also referred to as desired multiple allocations.
[0034] By swapping the indices of the binary variables from one assignment of the combinatorial optimization problem to the quantum annealing machine 100, another assignment can be obtained. When the structure of the quantum annealing machine 100 has symmetry with respect to all possible assignments of the indices of the binary variables of the combinatorial optimization problem, the structure determination unit 292 may determine that multiple desired assignments are not possible.
[0035] The evaluation function determination unit 293 determines whether the evaluation function in the combinatorial optimization problem remains the same even when the indices of the binary variables are swapped between multiple binary variables in the combinatorial optimization problem. Furthermore, the evaluation function determination unit 293 swaps the indices that are determined to result in the same evaluation function in the optimal solution obtained by quantum annealing, thereby obtaining another optimal solution. The evaluation function determination unit 293 is an example of a swapping means.
[0036] The control unit 294 controls the quantum annealing machine 100 to perform quantum annealing. In particular, the control unit 294 controls the quantum annealing machine 100 in accordance with an allocation based on the determination result of the structure determination unit 292. The control unit 294 corresponds to an example of control means.
[0037] Here, consider the case where there are multiple optimal solutions to a combinatorial optimization problem. For example, consider a combinatorial optimization problem represented by an Ising model with four variables, where only one variable has a ferromagnetic interaction with the other variables and the remaining variables have antiferromagnetic interactions with each other. The variables here are binary variables in the combinatorial optimization problem. Each variable takes on a value of +1 or -1.
[0038] In addition, the ferromagnetic interaction is expressed by the product of two variables being +1, and the antiferromagnetic interaction is expressed by the product of two variables being -1. This Ising model is expressed by the Hamiltonian H 0 It is assumed that the value is expressed as follows.
[0039]
[0040] σ 1 , σ 2 , σ 3 , σ 4 and represent variables. The variables included in the Hamiltonian are also called logical variables. The Hamiltonian H shown in Equation (1) 0 Let us consider a case where quantum annealing is performed by embedding the above in a quantum annealing machine using the LHZ method. A model using the LHZ method is also called an LHZ model.
[0041] Fig. 4 is a diagram showing an example of the structure of the quantum annealing machine 100. Fig. 4 shows an example of the quantum annealing machine 100 in which the LHZ model is implemented when the number of variables included in the Hamiltonian is four and there is no term with one variable (a term with one variable). Fig. 4 can also be regarded as a graph showing the LHZ model.
[0042] 4, the open circle represents the qubit device 110. Two numbers, such as "12," shown within the open circle represent the index of a variable associated with the qubit device 110. A variable associated with a qubit device is also referred to as a physical variable.
[0043] A model that can be directly associated with a quantum annealing machine, such as the LHZ model, is also referred to as a physical model. Specifically, a model that has a graph structure similar to the graph structure of a quantum annealing machine is also referred to as a physical model. The graph structure here is a graph representation of the structure of the object to be expressed.
[0044] In the LHZ model, a Hamiltonian is embedded in the model so that a physical variable represents a product of logical variables. In the example of Figure 4, the two numbers shown as the index of a physical variable represent the index of the two logical variables whose product is represented by that physical variable. For example, the physical variable represented by "12" represents the logical variable σ 1 and σ 2 The product of σ 1 σ 2 Here, the physical variables are ~ For example, the physical variable indicated by "12" is expressed as σ ~ 12 It can also be written as:
[0045] A white circle marked with "F" indicates that a physical variable that takes a fixed value is assigned to the quantum bit device 110. A binary variable that takes a fixed value is also called a fixed bit. In the example of FIG. 4, a white circle marked with "F" indicates a value of +1. A black circle indicates a four-body coupling (four-body interaction). In the example of FIG. 4, a four-body coupling indicates that the product of the four coupled variables has a value of +1 (even parity).
[0046] When quantum annealing is simulated using the LHZ model shown in Figure 4, three basis states are obtained. For example, in one of the three basis states, the values of the physical variables are expressed as in Equation (2).
[0047]
[0048] When finding the optimal solution to a combinatorial optimization problem from the results of quantum annealing using the LHZ model, there is symmetry regarding the positive and negative signs of all the logical variables. Specifically, multiplying each logical variable by -1 does not change the energy (the value of the Hamiltonian). This means that the value of any one of the logical variables can be arbitrarily set to +1 or -1. σ 1 = +1, the optimal solution shown in equation (3) can be obtained from the values of the physical variables shown in equation (2).
[0049]
[0050] Based on the three basis states, three optimal solutions are obtained as shown in equation (4).
[0051]
[0052] These three optimal solutions are not necessarily obtained with equal probability. In quantum annealing simulations, of the times when an optimal solution was obtained, the optimal solution (+1, -1, +1, +1) was obtained approximately 80% of the time, the optimal solution (+1, +1, +1, -1) was obtained just under 20% of the time, and the optimal solution (+1, +1, -1, +1) was obtained just under 5% of the time.
[0053] When there are multiple solutions to a combinatorial optimization problem, the probability of obtaining the optimal solution is biased, which is also called unfair sampling. Unfair sampling can be a hindrance when multiple optimizations are sought, such as when finding all optimal solutions.
[0054] Therefore, the structure determination unit 292 determines whether or not multiple assignments (desired multiple assignments) of logical variables to physical variables are possible, with each assignment having a different probability of obtaining an optimal solution. If it is determined that such assignments are possible, the structure determination unit 292 sets multiple assignments of logical variables to physical variables. The assignment of logical variables to physical variables can be considered as the assignment of binary variables in a combinatorial optimization problem to quantum bit devices in a quantum annealing machine.
[0055] For example, in the case of the LHZ method, the control device 200 implements a combinatorial optimization problem represented by a complete graph in a quantum annealing machine 100 having a structure represented by an LHZ model. In a complete graph, the graph structure is symmetric in that all combinations of two nodes are connected by one edge, and there is a degree of freedom in assigning the complete graph to the LHZ model.
[0056] For example, suppose we index the nodes in the complete graph and assign the complete graph to an LHZ model depending on the index. In this case, depending on the assignment of indices to the nodes of the complete graph, we get different assignments of the complete graph to the LHZ models.
[0057] Fig. 5 is a diagram showing a first example of assigning indexes to nodes of a complete graph. Fig. 5 shows an example of a complete graph with four nodes. In the example of Fig. 5, two indexes are assigned to one node for the purpose of explanation. The indexes "1", "2", "3", and "4" are indexes indicating variables assigned to the nodes. The indexes "a", "b", "c", and "d" are indexes used to assign the complete graph to the LHZ model.
[0058] Here, the Ising model is represented by a complete graph, where a node of the complete graph represents a logical variable and an edge represents the connection strength between two logical variables.
[0059] For example, the Hamiltonian H in Eq. (1) 0 When expressing this as the complete graph in Figure 5, the node with index "1" is the logical variable σ 1 The node with index "2" represents the logical variable σ 2 The node with index "3" represents the logical variable σ 3 The node with index "4" represents the logical variable σ 4 Shows.
[0060] The edge connecting the node with index “1” and the node with index “2” is expressed by the Hamiltonian H 0 σ in 1 σ 2The coefficient of the term σ is "-1". The edge connecting the node with index "1" and the node with index "3" is 1 σ 3 The coefficient of the term σ is "-1". The edge connecting the node with index "1" and the node with index "4" is 1 σ 4 The coefficient of the term σ is "-1". The edge connecting the node with index "2" and the node with index "3" is 2 σ 3 The edge connecting the node with index “2” and the node with index “4” is 2 σ 4 The edge connecting the node with index "3" and the node with index "4" is 3 σ 4 indicates the coefficient "+1" of the term.
[0061] A model that can be directly associated with a combinatorial optimization problem is also called a logical model. Specifically, a model in which one node represents one logical variable and the connections between the nodes represent the relationship between the logical variables in the combinatorial optimization problem is also called a logical model. The complete graph in Figure 5 can be considered as a logical model that represents the above-mentioned "combinatorial optimization problem represented by an Ising model with four variables, where only one variable has ferromagnetic interactions with the other variables and the other variables have antiferromagnetic interactions with each other."
[0062] Fig. 6 shows an example of an LHZ model with indices for complete graph assignment. By assigning the complete graph shown in Fig. 5 to an LHZ model according to the indices "a", "b", "c", and "d", we obtain the LHZ model shown in Fig. 4.
[0063] 7 is a diagram showing a second example of index assignment to nodes of a complete graph. In the example of FIG. 7, the index "a" and the index "b" are swapped in the complete graph shown in FIG. 5. The complete graph shown in FIG. 7 can be considered as the same logical model as the complete graph shown in FIG. 5, with the indexes "a" and "b" swapped. According to the example of FIG. 7, the same Ising model as in FIG. 5 is assigned to the LHZ model with an assignment different from that in FIG. 5.
[0064] 8 is a diagram showing an example of allocation of physical variables to LHZ models. FIG. 8 shows an example in which the complete graph shown in FIG. 7 is assigned to the LHZ model shown in FIG. 6 according to the indexes "a", "b", "c", and "d". When comparing the LHZ model shown in FIG. 8 with the case of FIG. 4, the physical variable σ ~ 13 , σ ~ 14 , σ ~ 23 , and σ ~ 24 The positions where the physical variables σ are assigned are different. ~ 13 is assigned to the second left node from the top in the example of FIG. 4, whereas it is assigned to the third center node from the top in the example of FIG.
[0065] Here, the LHZ models shown in Figures 4, 6, and 8 are symmetrical, but have no other geometric symmetry. Even if the LHZ model shown in Figure 8 is flipped left to right, it will not be identical to the LHZ model shown in Figure 4. Such an assignment that is not geometrically symmetrical is also referred to as an asymmetric assignment. An assignment that is not geometrically symmetrical can be considered as multiple assignments in which the model obtained by the assignment is not identical even if it is graphically rotated or flipped, or even if a combination of rotation and flipping is performed. Multiple physical models obtained by asymmetric assignment are also referred to as asymmetric physical models.
[0066] The assignment of the logical model to the physical model can also be changed by exchanging the logical variables (exchanging the indexes of the logical variables). For example, the Hamiltonian H 0 Let us consider the case where the indexes "1" and "2" of the logical variables in (a) are swapped. For ease of understanding, the swapped indexes are indicated with a "'" attached. In this case, the index swap can be expressed as in equation (5).
[0067]
[0068] Hamiltonian H after index exchange 1 is expressed as in equation (6).
[0069]
[0070] Hamiltonian H 1 to the LHZ model as shown in Figure 4 based on the indexes after the exchange, and then return the indexes to their original state after the exchange, an LHZ model equivalent to the example in Figure 8 can be obtained. In other words, the LHZ model obtained by the exchange in this case can be expressed using the indexes before the exchange as shown in Figure 8.
[0071] Furthermore, the Hamiltonian H in equation (1) 0 Let us consider the case where the indexes "1" and "3" of the logical variables in (a) and (b) are swapped. For ease of understanding, the swapped indexes are indicated with a "'" attached. In this case, the swapping of the indexes can be expressed as in equation (7).
[0072]
[0073] Hamiltonian H after index exchange 2 is expressed as in equation (8).
[0074]
[0075] Hamiltonian H 2 are assigned to the LHZ model as shown in FIG. 4 based on the index after the exchange, and the resulting LHZ model is expressed using the index before the exchange as shown in FIG.
[0076] 9 is a diagram showing another example of the assignment of physical variables to the LHZ model. In FIG. 9, the Hamiltonian H 2 The LHZ model obtained by assigning the above to the LHZ model based on the index after the exchange as shown in FIG. 4 is expressed using the index before the exchange.
[0077] Furthermore, the Hamiltonian H in equation (1) 0 Let us consider the case where the indexes "1" and "4" of the logical variables in (a) and (b) are swapped. For ease of understanding, the swapped indexes are indicated with a "'" attached. In this case, the index swap can be expressed as in equation (9).
[0078]
[0079] Hamiltonian H after index exchange 3 is expressed as in equation (10).
[0080]
[0081] Hamiltonian H 3 are assigned to the LHZ model as shown in FIG. 4 based on the index after the exchange, and the resulting LHZ model is expressed using the index before the exchange as shown in FIG.
[0082] 10 is a diagram showing yet another example of the assignment of physical variables to the LHZ model. In FIG. 10, the Hamiltonian H 3 The LHZ model obtained by assigning the above to the LHZ model based on the index after the exchange as shown in FIG. 4 is expressed using the index before the exchange.
[0083] The LHZ models in Figures 4, 8, 9, and 10 are all associated with the same combinatorial optimization problem, and the optimal solution is the same. Specifically, when expressed using the indexes before exchange, there are three optimal solutions as shown in Equation (4). However, the probability of obtaining each optimal solution differs depending on the LHZ model.
[0084] 11 is a diagram showing an example of the rate at which each optimal solution can be obtained for each allocation of Hamiltonians to LHZ models. Fig. 11 shows the rate at which each optimal solution can be obtained among the number of times an optimal solution can be obtained in a quantum annealing simulation for each allocation of Hamiltonians to LHZ models.
[0085] The horizontal axis of the graph in Figure 11 shows the assignment of Hamiltonians to the LHZ model using indices attached to the Hamiltonians. "0" on the horizontal axis indicates the Hamiltonian H 0 The horizontal axis indicates the Hamiltonian H 1 The horizontal axis indicates the Hamiltonian H 2 The horizontal axis indicates the Hamiltonian H 3 10 to the LHZ model.
[0086] The percentage of times each optimal solution was obtained is shown in the form of a bar graph along the vertical axis of the graph in Figure 11. In the case of the LHZ model in Figure 4, as mentioned above, of the times an optimal solution was obtained, the optimal solution (+1, +1, +1, -1) was obtained in just under 20% of cases, the optimal solution (+1, +1, -1, +1) was obtained in just under 5% of cases, and the optimal solution (+1, -1, +1, +1) was obtained in approximately 80% of cases.
[0087] In the case of the LHZ model in Figure 8, of the times when the optimal solution was obtained, the optimal solution (+1, +1, +1, -1) was obtained in just under 5 percent of cases, the optimal solution (+1, +1, -1, +1) was obtained in just under 20 percent of cases, and the optimal solution (+1, -1, +1, +1) was obtained in approximately 80 percent of cases.
[0088] In the case of the LHZ model in Figure 9, of the times when the optimal solution was obtained, the optimal solution (+1, +1, +1, -1) was obtained in approximately 80% of cases, the optimal solution (+1, +1, -1, +1) was obtained in just under 5% of cases, and the optimal solution (+1, -1, +1, +1) was obtained in just under 20% of cases.
[0089] In the case of the LHZ model in Figure 10, of the times when the optimal solution was obtained, the optimal solution (+1, +1, +1, -1) was obtained in just under 20% of cases, the optimal solution (+1, +1, -1, +1) was obtained in approximately 80% of cases, and the optimal solution (+1, -1, +1, +1) was obtained in just under 5% of cases.
[0090] By performing quantum annealing based on each of the multiple allocations, the quantum annealing system 1 is expected to be able to obtain multiple optimal solutions regardless of whether unfair sampling occurs. For example, when the quantum annealing system 1 performs quantum annealing based on each of the four allocations shown in FIG. 11, it is expected that any optimal solution will be obtained with approximately 80% probability when an optimal solution is obtained through quantum annealing, for at least one of the allocations. In this respect, the quantum annealing system 1 is expected to be able to obtain all optimal solutions.
[0091] The allocations in the examples of Figures 4, 8, 9, and 10 correspond to examples of multiple ways of allocating combinatorial optimization problems to the quantum annealing machine 100, where the probability of obtaining each optimal solution to the combinatorial optimization problem, which is the subject of determination by the structure determination unit 292, is different for each optimal solution.
[0092] The structure determination unit 292 may determine whether the structure of the quantum annealing machine 100 is such that multiple ways of indexing the binary variables of the combinatorial optimization problem can exist, such that the graph representations of the quantum annealing machine 100 to which the combinatorial optimization problem has been assigned are not isomorphic to each other as labeled graphs. The graph representation of the quantum annealing machine 100 to which the combinatorial optimization problem has been assigned can be said to represent the graph structure of the quantum annealing machine 100 to which the combinatorial optimization problem has been assigned.
[0093] Here, multiple labeled graphs being isomorphic to each other means that multiple labeled graphs can be superimposed so that the label values are the same. Furthermore, the graph representation of the quantum annealing machine to which the combinatorial optimization problem is assigned may be one in which the index of the physical variable assigned to the node is indicated at the node of the graph representing the quantum annealing machine, as in the examples of Figures 4, 8, 9, and 10.
[0094] A structure in which multiple ways of indexing the binary variables of a combinatorial optimization problem exist, such that the graph representations of the quantum annealing machine 100 to which a combinatorial optimization problem is assigned are not isomorphic to each other as labeled graphs, is also referred to as a structure having asymmetrical properties. When the structure of the quantum annealing machine 100 has asymmetrical properties, it is also referred to as the quantum annealing machine 100 having asymmetrical properties, or as the quantum annealing machine 100 having asymmetrical properties.
[0095] The multiple indexing of binary variables of a combinatorial optimization problem such that the graph representations of the quantum annealing machine 100 to which the combinatorial optimization problem is assigned are not isomorphic to each other as labeled graphs is also referred to as multiple assignments such that the labeled graphs are not isomorphic to each other. Indexing of binary variables of a combinatorial optimization problem can be considered as an assignment of the combinatorial optimization problem to the quantum annealing machine 100.
[0096] Here, indexes are assigned to the binary variables of the combinatorial optimization problem, and the quantum annealing machine 100, to which the combinatorial optimization problem is assigned based on the index, is represented as a graph. In the graph representation, the quantum bit devices 110 are represented as nodes labeled with an index. Furthermore, connections between the quantum bit devices 110 are represented as edges, or combinations of edges and nodes that are distinct from the nodes representing the quantum bit devices 110.
[0097] For example, as described above, the LHZ model in the example of Fig. 4 and the LHZ model in the example of Fig. 8 are not graphically symmetric. For this reason, when the LHZ model in the example of Fig. 4 and the LHZ model in the example of Fig. 8 are regarded as labeled graphs, these labeled graphs are not isomorphic to each other. In this case, the structure determination unit 292 determines that the structure of the quantum annealing machine 100 is asymmetric.
[0098] For example, the structure determination unit 292 may determine whether the number of bonds to which each quantum bit device 110 is coupled is the same for all quantum bit devices 110, and whether the number of coupled quantum bit devices 110 is the same for all bonds between quantum bit devices 110.
[0099] The fact that all quantum bit devices 110 have the same number of couplings to which they are coupled can be interpreted as the fact that all nodes in the graph representing the quantum bit devices 110 have the same degree. The fact that all couplings between quantum bit devices 110 have the same number of coupled quantum bit devices 110 can be interpreted as the fact that all couplings in the graph have the same structure. As described above, couplings between quantum bit devices 110 are represented by edges, or by combinations of edges and nodes other than the nodes representing the quantum bit devices 110.
[0100] If it is determined that the number of bonds to which each quantum bit device 110 is coupled is the same for all quantum bit devices 110, and that the number of coupled quantum bit devices 110 is the same for all bonds between quantum bit devices 110, the structure determination unit 292 determines that the structure of the quantum annealing machine 100 does not have asymmetry.
[0101] If it is determined that the structure of the quantum annealing machine 100 is asymmetric, the structure determination unit 292 searches for multiple assignments that do not result in isomorphism between the labeled graphs. The assignment of combinatorial optimization problems to the quantum annealing machine 100 can be expressed by indexing the binary variables of the combinatorial optimization problems.
[0102] The structure determination unit 292 may search all possible assignments that do not result in isomorphism between labeled graphs, or may search a portion of all possible assignments that do not result in isomorphism between labeled graphs.
[0103] For example, in the examples of Figures 4 to 10, the structure determination unit 292 may acquire the allocation in the example of Figure 4, the allocation in the example of Figure 8, the allocation in the example of Figure 9, and the allocation in the example of Figure 10. Alternatively, the structure determination unit 292 may acquire two or more of these allocations.
[0104] The structure determination unit 292 may assign the indexes of the logical model variables to the physical models in multiple ways and determine whether the labeled graphs are isomorphic to each other, thereby searching for multiple assignments that do not result in the labeled graphs being isomorphic to each other.
[0105] The structure determination unit 292 may search for multiple assignments that do not result in isomorphism between the labeled graphs, and if such multiple assignments are obtained, determine that the structure of the quantum annealing machine 100 has asymmetry.
[0106] The structure determination unit 292 may determine in advance whether the structure of the quantum annealing machine 100 has asymmetry. Here, "in advance" may mean before a combinatorial optimization problem to be subjected to quantum annealing is obtained. The structure determination unit 292 may search in advance for multiple assignments that do not result in isomorphism between labeled graphs. Here, "in advance" may mean before a combinatorial optimization problem to be subjected to quantum annealing is obtained.
[0107] The structure determination unit 292 may output the determination result of whether the structure of the quantum annealing machine 100 has asymmetry, and / or a plurality of assignments that do not result in isomorphic labeled graphs to the control unit 294. Then, the control unit 294 may control the quantum annealing machine 100 to perform quantum annealing based on the determination result by the structure determination unit 292, the assignment detected by the structure determination unit 292, or / and / or the determination result.
[0108] The structure determination unit 292 may display on the display unit 220 the determination result of whether the structure of the quantum annealing machine 100 has asymmetry, and / or multiple allocations that do not result in isomorphic labeled graphs. In this case, a user may specify the allocation of combinatorial optimization problems to the quantum annealing machine 100. The control unit 294 may then control the quantum annealing machine 100 to perform quantum annealing in accordance with the user's specification. The structure determination unit 292 and the control unit 294 may be included in separate devices.
[0109] When the control unit 294 controls the quantum annealing machine 100 to perform quantum annealing based on each of multiple assignments of a combinatorial optimization problem to the quantum annealing machine 100, the number of times that quantum annealing is repeatedly performed for one assignment is not limited to a specific number of times.
[0110] For example, the control unit 294 may cause the quantum annealing machine 100 to repeatedly perform quantum annealing for each of the multiple indexing methods detected by the structure determination unit 292 until a predetermined condition for performing quantum annealing is met.
[0111] The predetermined condition for performing quantum annealing here is not limited to a specific condition. For example, the predetermined condition for performing quantum annealing here may be a condition that the number of times quantum annealing has been repeated reaches a predetermined number. Alternatively, the predetermined condition for performing quantum annealing here may be a condition that the number of times an optimal solution has been obtained by quantum annealing reaches a predetermined number.
[0112] The quantum annealing system 1 may obtain another optimal solution by exchanging symmetric logical variables in the Hamiltonian of the optimal solution obtained by quantum annealing. Here, the symmetric logical variables mean that the same Hamiltonian can be obtained even if multiple logical variables are exchanged with each other.
[0113] For example, when the quantum annealing system 1 calculates the Hamiltonian H′ in equation (11), 0 Let us consider the case where the combinatorial optimization problem shown below is solved using quantum annealing.
[0114]
[0115] Based on the symmetry of the signs of all logical variables, σ 1 = +1, there are three optimal solutions as shown in equation (12).
[0116]
[0117] FIG. 12 shows the Hamiltonian H' 0 12 is a diagram showing an example of the rate at which each optimal solution can be obtained based on the Hamiltonian H′ shown in equation (11). 0 In a simulation in which the above-mentioned parameters are assigned to the LHZ model as in the example of FIG. 4, the proportion of times each optimal solution was obtained among the number of times the optimal solution was obtained is shown in the form of a bar graph.
[0118] 12, of the times the optimal solution was obtained, the optimal solution (+1, +1, -1, -1) was obtained in approximately 80% of cases, the optimal solution (+1, -1, +1, -1) was obtained in just under 5% of cases, and the optimal solution (+1, -1, -1, +1) was obtained in just under 20% of cases. In this way, the probability of obtaining each optimal solution differs, and it is possible that the quantum annealing system 1 may obtain only some of the optimal solutions.
[0119] In this case, the evaluation function determination unit 293 may exchange symmetrical logical variables in the Hamiltonian with each other to obtain another optimal solution. Specifically, the exchange of logical variables in the optimal solution means the exchange of the values of those logical variables with each other in the optimal solution.
[0120] For example, consider a case where the quantum annealing system 1 performs quantum annealing and obtains only the optimal solution (+1, +1, −1, −1) out of the three optimal solutions. In this case, the evaluation function determination unit 293 calculates the Hamiltonian H 0 Logical variable σ in 2 and σ 3 Based on the symmetry with σ 2 The value of and σ 3 The evaluation function determination unit 293 replaces the values of the Hamiltonian H 0 Logical variable σ in 2 and σ 4 Based on the symmetry with σ 2 The value of and σ 4 In this way, the evaluation function determination unit 293 can obtain other optimal solutions from the optimal solution directly obtained by quantum annealing by mutually exchanging the symmetric logical variables in the Hamiltonian.
[0121] The evaluation function determination unit 293 may determine whether or not there are symmetric logical variables in the Hamiltonian. If it is determined that there are symmetric logical variables in the Hamiltonian, the evaluation function determination unit 293 may acquire another optimal solution by interchanging the symmetric logical variables in the Hamiltonian in the optimal solution obtained by quantum annealing.
[0122] For example, the evaluation function determination unit 293 may swap the indices (indexes that identify logical variables) of multiple logical variables in the Hamiltonian and determine whether the same Hamiltonian is obtained. If it is determined that the same Hamiltonian is obtained, the evaluation function determination unit 293 may determine that there are symmetric logical variables in the Hamiltonian and store the index swapping at that time. When an optimal solution is obtained by quantum annealing, the evaluation function determination unit 293 may swap the multiple logical variables in the optimal solution with each other in accordance with the stored index swapping to obtain another solution.
[0123] The evaluation function determination unit 293 may display the determination result of whether or not there are logical variables that are symmetrical to each other in the Hamiltonian, the exchange of indexes when it is determined that the same Hamiltonian can be obtained, or either one of these, on the display unit 220. In this case, the user may exchange logical variables that are symmetrical to each other in the Hamiltonian in the optimal solution obtained by quantum annealing to obtain another optimal solution.
[0124] If the evaluation function determination unit 293 detects mutually symmetric logical variables in the Hamiltonian, the control unit 294 may control the quantum annealing machine 100 to perform quantum annealing based on each of multiple assignments of the combinatorial optimization problem to the quantum annealing machine 100 obtained by swapping those logical variables. In this case, it is expected that the probability of obtaining each optimal solution to the combinatorial optimization problem will differ for each assignment. In this respect, it is expected that the control device 200 will be able to obtain a relatively large number of optimal solutions.
[0125] Fig. 13 is a diagram showing an example of the procedure of processing performed by the control device 200. In the processing of Fig. 13, the control device 200 acquires information of the quantum annealing machine 100 (step S101). For example, the control device 200 acquires information indicating the graph structure of the quantum annealing machine 100 (a graph representing the structure of the quantum annealing machine 100).
[0126] Next, the structure determination unit 292 determines the allocation of the logical model to the physical model (step S102). As the determination of the allocation of the logical model to the physical model, the structure determination unit 292 determines the allocation of the indices of the nodes representing the logical variables in the logical model to the nodes representing the physical variables in the physical model. Determining such an allocation can be considered as determining the allocation of the binary variables in the combinatorial optimization problem to the quantum bit devices 110.
[0127] In the processing of step S102, the structure determination unit 292 determines whether or not there is asymmetry in the quantum annealing machine 100. If it is determined that there is no asymmetry in the quantum annealing machine 100, the structure determination unit 292 determines one way of assigning logical models to physical models.
[0128] On the other hand, if it is determined that there is no asymmetry in the quantum annealing machine 100, the structure determination unit 292 determines multiple ways to assign the logical model to the physical model so that the graph representations of the quantum annealing machine 100 to which the combinatorial optimization problem is assigned are not isomorphic to each other as labeled graphs.
[0129] When the control device 200 is used as a device dedicated to the structure of one quantum annealing machine 100, the storage unit 280 may store the information on the quantum annealing machine 100 obtained in step S101 and the allocation determined in step S102. Then, in the subsequent processing of FIG. 13 , the control device 200 may omit the processing of step S101 and the processing of step S102.
[0130] Next, the control device 200 acquires a logical model (step S103). For example, the control device 200 acquires an Ising model that represents a combinatorial optimization problem.
[0131] Next, the control device 200 branches the process depending on whether or not the structure determination unit 292 determines that there is asymmetry in the quantum annealing machine 100 (step S104). If it is determined that there is no asymmetry in the quantum annealing machine 100 (step S104: NO), the evaluation function determination unit 293 determines whether or not there are mutually symmetric logical variables in the Hamiltonian (step S105).
[0132] If the evaluation function determination unit 293 determines that there are logical variables that are symmetric with each other in the Hamiltonian (step S105: YES), the control device 200 performs process A (step S107). Process A refers to a process in which there is no asymmetry in the quantum annealing machine 100 and there are logical variables that are symmetric with each other in the Hamiltonian. After step S107, the control device 200 ends the process of FIG. 13.
[0133] On the other hand, if the evaluation function determination unit 293 determines in step S105 that there are no logical variables that are symmetrical to each other in the Hamiltonian (step S105: NO), the control device 200 performs process B (step S108). The process when there is no asymmetry in the quantum annealing machine 100 and there are no logical variables that are symmetrical to each other in the Hamiltonian is referred to as process B. After step S108, the control device 200 ends the process of FIG. 13 .
[0134] On the other hand, if it is determined in step S104 that the quantum annealing machine 100 has asymmetry (step S104: YES), the evaluation function determination unit 293 determines whether there are logical variables that are symmetric to each other in the Hamiltonian (step S106).
[0135] If the evaluation function determination unit 293 determines that there are logical variables that are symmetric with each other in the Hamiltonian (step S106: YES), the control device 200 performs process C (step S109). The process when there is asymmetry in the quantum annealing machine 100 and there are logical variables that are symmetric with each other in the Hamiltonian is referred to as process C. After step S109, the control device 200 ends the process of FIG. 13 .
[0136] On the other hand, if the evaluation function determination unit 293 determines in step S106 that there are no logical variables that are symmetrical to each other in the Hamiltonian (step S106: NO), the control device 200 performs process B (step S110). The process when there is asymmetry in the quantum annealing machine 100 and there are no logical variables that are symmetrical to each other in the Hamiltonian is referred to as process D. After step S110, the control device 200 ends the process of FIG. 13.
[0137] Fig. 14 is a diagram showing an example of a procedure in which the control device 200 performs process A. The control device 200 performs the process of Fig. 14 in step S107 of Fig. 13. In the process of Fig. 14, the control unit 294 controls the quantum annealing machine 100 to perform quantum annealing (step S121).
[0138] Process A is a process when there is no asymmetry in the quantum annealing machine 100, and the structure determination unit 292 determines one way of allocating logical models to physical models. In this case, the control unit 294 sets the control of the quantum annealing machine 100 in accordance with the one way of allocating determined by the structure determination unit 292, and controls the quantum annealing machine 100 based on the setting.
[0139] Next, the processing unit 290 determines whether an optimal solution has been obtained by quantum annealing (step S122). If the processing unit 290 determines that an optimal solution has been obtained (step S122: YES), the evaluation function determination unit 293 generates another optimal solution by exchanging the values of the logical variables that are symmetric in the Hamiltonian in the obtained optimal solution (step S123). If there are multiple combinations of logical variables that are symmetric in the Hamiltonian, the evaluation function determination unit 293 may generate another optimal solution by exchanging the values of the logical variables that are symmetric in the Hamiltonian for each of the multiple combinations.
[0140] Next, the evaluation function determination unit 293 stores the calculation results in the storage unit 280 (step S124). Specifically, the evaluation function determination unit 293 stores the optimal solution obtained by quantum annealing and the optimal solution obtained by exchanging the values of symmetric logical variables in the Hamiltonian in the storage unit 280. The evaluation function determination unit 293 may store, among the obtained optimal solutions, those that have not yet been stored in the storage unit 280 in the storage unit 280.
[0141] Next, the processing unit 290 determines whether or not the termination condition for the loop of processing from step S121 to step S125 is satisfied (step S125). The termination condition here corresponds to the example of the predetermined condition for executing quantum annealing described above. The termination condition here is not limited to a specific one.
[0142] For example, the termination condition here may be that the number of times the loop of processing from step S121 to step S125 has been repeated reaches a predetermined number. In this case, the termination condition corresponds to the example of the condition that the number of times quantum annealing has been repeated reaches a predetermined number, as described above.
[0143] Alternatively, the termination condition here may be a condition that the number of times an optimal solution is obtained by executing quantum annealing in step S121 reaches a predetermined number. In this case, the termination condition corresponds to the example of the condition described above that the number of times an optimal solution is obtained by quantum annealing reaches a predetermined number.
[0144] If the processing unit 290 determines that the termination condition is not satisfied (step S125: NO), the process returns to step S121. On the other hand, if the processing unit 290 determines that the termination condition is satisfied (step S125: YES), the control device 200 outputs the calculation result (step S126). For example, the processing unit 290 may cause the display unit 220 to display the optimal solution stored in the storage unit 280. After step S126, the control device 200 terminates the process of FIG. 14. On the other hand, if the processing unit 290 determines in step S122 that the optimal solution has not been obtained (step S122: NO), the process proceeds to step S125.
[0145] After the processing unit 290 determines in step S125 that the termination condition is met, the evaluation function determination unit 293 may perform the processing of step S123. For example, in step S121, the control unit 294 controls the quantum annealing machine 100 to perform quantum annealing. Then, the control unit 294 stores the candidate solutions to the combinatorial optimization problem obtained by quantum annealing in the storage unit 280.
[0146] In this case, next (i.e., after storing the solution candidates in the storage unit 280), the processing unit 290 determines whether or not the termination condition is met in step S125. If the processing unit 290 determines that the termination condition is not met, the process returns to step S121.
[0147] On the other hand, if the processing unit 290 determines in step S125 that the termination condition is met, the evaluation function determination unit 293 detects an optimal solution from the solution candidates stored in the storage unit 280. Then, the evaluation function determination unit 293 performs the process of step S123. Specifically, the evaluation function determination unit 293 generates another optimal solution by exchanging the values of the symmetric logical variables in the Hamiltonian for the detected optimal solution.
[0148] Next, the control device 200 outputs the calculation result in step S126. For example, the processing unit 290 may cause the display unit 220 to display the optimal solution stored in the storage unit 280. Thereafter, the control device 200 ends the processing of FIG. 14.
[0149] FIG. 15 is a diagram showing an example of a procedure for the control device 200 to perform process B. The control device 200 performs the process of FIG. 15 in step S108 of FIG. 13. Step S141 of FIG. 15 is similar to step S121 of FIG. 14. After step S141, the evaluation function determination unit 293 stores the calculation result in the storage unit 280 (step S142). For example, when an optimal solution is obtained by performing quantum annealing in step S141, the evaluation function determination unit 293 may store the obtained optimal solution in the storage unit 280. Alternatively, the evaluation function determination unit 293 may store solution candidates obtained by performing quantum annealing in step S141 in the storage unit 280.
[0150] Next, the processing unit 290 determines whether or not the termination condition for the loop of processing from step S141 to S143 is satisfied (step S143). The termination condition here corresponds to the example of the predetermined condition related to the execution of quantum annealing described above. The termination condition here is not limited to a specific one.
[0151] For example, the termination condition here may be that the number of times the loop of processing from steps S141 to S143 has been repeated reaches a predetermined number. In this case, the termination condition corresponds to the example of the condition that the number of times quantum annealing has been repeated reaches a predetermined number, as described above.
[0152] Alternatively, the termination condition here may be that the number of times an optimal solution is obtained by executing quantum annealing in step S141 reaches a predetermined number. In this case, the termination condition corresponds to the example of the condition described above in which the number of times an optimal solution is obtained by quantum annealing reaches a predetermined number.
[0153] If the processing unit 290 determines that the termination condition is not met (step S143: NO), the process returns to step S141. On the other hand, if the processing unit 290 determines that the termination condition is met (step S143: YES), the control device 200 outputs the calculation result (step S144). For example, the processing unit 290 may cause the display unit 220 to display the optimal solution stored in the storage unit 280. After step S144, the control device 200 ends the process of FIG. 15.
[0154] Fig. 16 is a diagram showing an example of a procedure in which the control device 200 performs process C. The control device 200 performs the process of Fig. 16 in step S109 of Fig. 13. In the process of Fig. 16, the structure determination unit 292 swaps the indexes of the logical variables (step S161).
[0155] Process C is a process when the quantum annealing machine 100 is asymmetric, and the structure determination unit 292 determines multiple assignments of the logical model to the physical model. In step S161, the structure determination unit 292 selects one of the multiple assignments determined and swaps the indices of the logical variables according to the selected assignment. The assignment of the logical model to the physical model can be changed by swapping the indices of the logical variables (swapping binary variables in a combinatorial optimization problem), as in the change from the example of FIG. 4 to the example of FIG. 8, thereby swapping the indices assigned to the nodes representing the quantum bit devices 110 of the physical model.
[0156] The permutation of the indexes of the logical variables performed by the structure determination unit 292 may include a case where none of the indexes are permuted. In the second or subsequent execution of step S161, the structure determination unit 292 selects an assignment that has not yet been selected in the previous execution of step S161, and permutes the indexes of the logical variables according to the selected assignment.
[0157] Next, the control unit 294 controls the quantum annealing machine 100 to perform quantum annealing (step S162). The control unit 294 sets the control of the quantum annealing machine 100 in accordance with the index after the replacement in step S161, and controls the quantum annealing machine 100 based on the setting. Setting the control of the quantum annealing machine 100 in accordance with the index after the replacement can be considered as setting the control of the quantum annealing machine 100 in accordance with the allocation selected by the structure determination unit 292.
[0158] Next, the processing unit 290 determines whether an optimal solution has been obtained by quantum annealing (step S163). If the processing unit 290 determines that an optimal solution has been obtained (step S163: YES), the structure determination unit 292 restores the indexes of the logical variables to their original values (step S164).
[0159] Next, the evaluation function determination unit 293 exchanges the values of the symmetric logical variables in the Hamiltonian in the optimal solution after the indexes have been restored to generate another optimal solution (step S165). Step S165 is the same as step S123 in FIG. 14 .
[0160] Next, the evaluation function determination unit 293 stores the calculation result in the storage unit 280 (step S166). Step S166 is similar to step S124 in FIG.
[0161] Next, the processing unit 290 determines whether or not the termination condition for the loop of processes from steps S162 to S167 is satisfied (step S167). In the description of Fig. 16, the termination condition for the loop of processes from steps S162 to S167 is also referred to as the first termination condition.
[0162] The first termination condition here corresponds to the example of the predetermined condition for executing quantum annealing described above. The first termination condition here is not limited to a specific one. For example, the first termination condition here may be a condition that the number of times the loop of processing from steps S162 to S167 has been repeated under the index after the swapping in step S161 has reached a predetermined number. In this case, the first termination condition corresponds to the example of the condition that the number of times quantum annealing has been repeated has reached a predetermined number described above.
[0163] Alternatively, the first termination condition here may be a condition that the number of times an optimal solution is obtained by executing quantum annealing in step S162 under the index after the swapping in step S161 reaches a predetermined number. In this case, the first termination condition corresponds to the example of the condition described above that the number of times an optimal solution is obtained by quantum annealing reaches a predetermined number.
[0164] If the processing unit 290 determines that the first termination condition is not met (step S167: NO), the process returns to step S162. On the other hand, if the processing unit 290 determines that the first termination condition is met (step S167: YES), the processing unit 290 determines whether the termination condition of the loop of processes from steps S161 to S168 is met (step S168). In the description of FIG. 16, the termination condition of the loop of processes from steps S161 to S168 is also referred to as the second termination condition.
[0165] The second termination condition here may be a condition that the loop of processing from steps S161 to S168 has been executed for all allocations determined by the structure determination unit 292.
[0166] If the processing unit 290 determines that the second termination condition is not satisfied (step S168: NO), the process returns to step S161. On the other hand, if the processing unit 290 determines that the second termination condition is satisfied (step S168: YES), the control device 200 outputs the calculation result (step S169). For example, the processing unit 290 may cause the display unit 220 to display the optimal solution stored in the storage unit 280. After step S169, the control device 200 terminates the process of FIG. 16. On the other hand, if the processing unit 290 determines in step S163 that the optimal solution has not been obtained (step S163: NO), the process proceeds to step S167.
[0167] After the processing unit 290 determines in step S168 that the second termination condition is met, the evaluation function determination unit 293 may perform the processing of step S165. For example, the structure determination unit 292 performs the processing of step S161. Next, the control unit 294 controls the quantum annealing machine 100 to perform quantum annealing in step S162. Then, in step S164, the structure determination unit 292 restores the indexes of the logical variables to their original values. The control unit 294 stores the candidate solutions to the combinatorial optimization problem after the indexes have been restored in the storage unit 280.
[0168] Next, the processing unit 290 determines whether or not the first end condition is met in step S167. If the processing unit 290 determines that the first end condition is not met, the process returns to step S162.
[0169] On the other hand, if it is determined in step S167 that the first termination condition is met, the processing unit 290 determines whether the second termination condition is met in step S168. If the processing unit 290 determines that the second termination condition is not met, the process returns to step S161.
[0170] On the other hand, if the processing unit 290 determines in step S168 that the second termination condition is met, the evaluation function determination unit 293 detects an optimal solution from the solution candidates stored in the storage unit 280. Then, the evaluation function determination unit 293 performs the processing of step S165. Specifically, the evaluation function determination unit 293 generates another optimal solution by exchanging the values of the symmetric logical variables in the Hamiltonian for the detected optimal solution.
[0171] Next, the control device 200 outputs the calculation result in step S169. For example, the processing unit 290 may cause the display unit 220 to display the optimal solution stored in the storage unit 280. Thereafter, the control device 200 ends the processing of FIG. 16.
[0172] Fig. 17 is a diagram showing an example of the procedure for the control device 200 to perform process D. The control device 200 performs the process of Fig. 17 in step S110 of Fig. 13. Steps S181 and S182 are the same as S161 and S162 of Fig. 16. After step S182, the structure determination unit 292 restores the index of the logical variable to its original state (step S183).
[0173] Next, the evaluation function determination unit 293 stores the calculation result in the storage unit 280 (step S184). For example, when an optimal solution is obtained by executing quantum annealing in step S182, the evaluation function determination unit 293 may store the obtained optimal solution in the storage unit 280. Alternatively, the evaluation function determination unit 293 may store solution candidates obtained by executing quantum annealing in step S182 in the storage unit 280.
[0174] Next, the processing unit 290 determines whether or not an end condition for the loop of processes from steps S182 to S185 is met (step S185). In the description of Fig. 17, the end condition for the loop of processes from steps S182 to S185 is also referred to as a first end condition.
[0175] The first termination condition here corresponds to the example of the predetermined condition for executing quantum annealing described above. The first termination condition here is not limited to a specific one. For example, the first termination condition here may be a condition that the number of times the loop of processing from steps S182 to S185 has been repeated under the index after the replacement in step S181 has reached a predetermined number. In this case, the first termination condition corresponds to the example of the condition that the number of times quantum annealing has been repeated has reached a predetermined number described above.
[0176] Alternatively, the first termination condition here may be a condition that the number of times an optimal solution is obtained by executing quantum annealing in step S182 under the index after the swapping in step S181 reaches a predetermined number. In this case, the first termination condition corresponds to the example of the condition described above that the number of times an optimal solution is obtained by quantum annealing reaches a predetermined number.
[0177] If the processing unit 290 determines that the first termination condition is not met (step S185: NO), the process returns to step S182. On the other hand, if the processing unit 290 determines that the first termination condition is met (step S185: YES), the processing unit 290 determines whether the termination condition of the loop of processes from steps S181 to S186 is met (step S186). In the description of FIG. 17 , the termination condition of the loop of processes from steps S181 to S186 is also referred to as the second termination condition.
[0178] The second termination condition here may be a condition that the loop of processing from steps S181 to S186 has been executed for all allocations determined by the structure determination unit 292.
[0179] If the processing unit 290 determines that the second termination condition is not met (step S186: NO), the process returns to step S181. On the other hand, if the processing unit 290 determines that the second termination condition is met (step S186: YES), the control device 200 outputs the calculation result (step S187). For example, the processing unit 290 may cause the display unit 220 to display the optimal solution stored in the storage unit 280. After step S187, the control device 200 ends the process of FIG. 17.
[0180] As described above, the determination unit 291 determines the symmetry of the indices that identify the binary variables of the combinatorial optimization problem assigned to the quantum annealing machine regarding the interchange between multiple binary variables. By performing processing based on the determination result, the control device 200 is expected to obtain a relatively large number of optimal solutions.
[0181] Furthermore, the structure determination unit 292 of the determination unit 291 determines whether the structure of the quantum annealing machine 100 is such that multiple indexing methods are possible for the binary variables of the combinatorial optimization problem, such that the labeled graph representations of quantum annealing machines 100 to which combinatorial optimization problems are assigned based on indices are not isomorphic. The labeled graph representation of the quantum annealing machine 100 to which combinatorial optimization problems are assigned based on indices can be a labeled graph in which the quantum annealing machines 100 to which combinatorial optimization problems are assigned based on indices and the quantum bit devices 110 are represented by nodes labeled with indices, and the connections between the quantum bit devices 110 are represented by edges or combinations of nodes and edges that are distinct from the nodes representing the quantum bit devices 110. As described above, the index can be an index that identifies the binary variables of the combinatorial optimization problem.
[0182] According to the control device 200, when it is determined that the structure of the quantum annealing machine 100 is such that multiple indexing methods for binary variables of a combinatorial optimization problem are possible, such that the representations of the combinatorial optimization problem in the labeled graphs of the quantum annealing machine 100, in which the combinatorial optimization problem is assigned based on the indexes, are not isomorphic to each other, the quantum annealing machine 100 can be controlled to perform quantum annealing based on each of the multiple indexing methods. As a result, the control device 200 is expected to have a different probability of obtaining each optimal solution to the combinatorial optimization problem for each indexing method. In this respect, the control device 200 is expected to obtain a relatively large number of optimal solutions.
[0183] In addition, the structure determination unit 292 of the determination unit 291 determines whether the number of bonds to which each quantum bit device 110 is coupled is the same for all quantum bit devices 110 in the quantum annealing machine 100, and whether the number of coupled quantum bit devices 110 is the same for all bonds between the quantum bit devices 110.
[0184] According to the control device 200, the structure determination unit 292 determines that for all quantum bit devices 110 in the quantum annealing machine 100, the number of bonds to which that quantum bit device 110 is coupled is the same, and that for all bonds between the quantum bit devices 110, the number of coupled quantum bit devices 110 is the same, thereby making it possible to determine that the structure of the quantum annealing machine 100 is not a structure in which multiple ways of indexing the binary variables of a combinatorial optimization problem are possible, such that the representations of the quantum annealing machines 100 in labeled graphs to which combinatorial optimization problems are assigned based on indices are not isomorphic to each other.
[0185] In addition, the structure determination unit 292 of the determination unit 291 searches for multiple ways of indexing the binary variables of the combinatorial optimization problem so that the expressions in the labeled graph of the quantum annealing machine 100 to which the combinatorial optimization problem is assigned based on the index are not isomorphic to each other.
[0186] The control device 200 can control the quantum annealing machine 100 to perform quantum annealing based on each of these multiple indexing methods. As a result, the control device 200 is expected to have a different probability of obtaining each optimal solution to the combinatorial optimization problem for each indexing method. In this respect, the control device 200 is expected to be able to obtain a relatively large number of optimal solutions.
[0187] In addition, the structure determination unit 292 of the determination unit 291 searches through all possible indexing of binary variables of the combinatorial optimization problem so that the expressions in the labeled graph of the quantum annealing machine 100 to which the combinatorial optimization problem is assigned based on the index are not isomorphic to each other.
[0188] The control device 200 can control the quantum annealing machine 100 to perform quantum annealing based on each of all possible indexings. As a result, the control device 200 is expected to have a different probability of obtaining each optimal solution to the combinatorial optimization problem for each indexing. In this respect, the control device 200 is expected to obtain a relatively large number of optimal solutions. For example, the control device 200 is expected to be able to obtain all optimal solutions.
[0189] Furthermore, the control unit 294 assigns the combinatorial optimization problem to the quantum annealing machine 100 based on each of the multiple indexing methods detected by the structure determination unit 292 of the determination unit 291, and controls the quantum annealing machine 100 to perform quantum annealing. With the control device 200, it is expected that the probability of obtaining each optimal solution to the combinatorial optimization problem will differ for each indexing method. In this respect, it is expected that the control device 200 will be able to obtain a relatively large number of optimal solutions.
[0190] Furthermore, the control unit 294 causes the quantum annealing machine to repeatedly perform quantum annealing for each of the multiple indexing methods detected by the structure determination unit 292 of the determination unit 291 until a predetermined condition for performing quantum annealing is met.
[0191] The control device 200 allows the quantum annealing machine to repeatedly perform quantum annealing for each of a plurality of indexing methods, and is therefore expected to obtain a relatively large number of optimal solutions.
[0192] Furthermore, combinatorial optimization problems are expressed using the Ising model or QUBO. The control device 200 allows the quantum annealing machine 100 to implement combinatorial optimization problems using the LHZ method. When using the LHZ method, the structure of the quantum annealing machine 100 corresponds to a structure in which multiple indexing methods can be used for binary variables of a combinatorial optimization problem, such that the labeled graph representations of the quantum annealing machine 100, to which combinatorial optimization problems are assigned based on indices, are not isomorphic. In this respect, the control device 200 is expected to obtain a relatively large number of optimal solutions.
[0193] Furthermore, the quantum annealing machine 100 is an LHZ quantum annealing machine. In this case, the structure of the quantum annealing machine 100 corresponds to a structure in which multiple indexing methods can be used for binary variables of a combinatorial optimization problem, such that the labeled graph representations of the quantum annealing machine 100, to which combinatorial optimization problems are assigned based on indices, are not isomorphic to each other. In this respect, the control device 200 is expected to obtain a relatively large number of optimal solutions.
[0194] Furthermore, the evaluation function evaluation unit 293 of the evaluation unit 291 determines whether the evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between the binary variables of the combinatorial optimization problem. According to the control device 200, if it is determined that the evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between the binary variables of the combinatorial optimization problem, another optimal solution can be obtained by swapping those binary variables with each other in the optimal solution. In this respect, the control device 200 is expected to obtain a relatively large number of optimal solutions.
[0195] The control unit 294 also controls the quantum annealing machine 100 to execute quantum annealing to obtain a solution to the combinatorial optimization problem. The evaluation function determination unit 293 generates a solution by swapping the values of binary variables determined to have the same evaluation function from the solution obtained by quantum annealing. It is expected that the control device 200 will be able to obtain a relatively large number of optimal solutions.
[0196] Furthermore, the control unit 294 assigns the combinatorial optimization problem to the quantum annealing machine 100 based on each of multiple indexing patterns in which the indexes of binary variables determined to have the same evaluation function are swapped, and controls the quantum annealing machine to perform quantum annealing. According to the control device 200, it is expected that the probability of obtaining each optimal solution to the combinatorial optimization problem will differ for each indexing pattern. In this respect, it is expected that the control device 200 will be able to obtain a relatively large number of optimal solutions.
[0197] Furthermore, the display unit 220 notifies the user of the determination result by the determination unit 291. With the control device 200, it is expected that the user will be able to cause the quantum annealing system 1 to perform quantum annealing for each of multiple allocations of the combinatorial optimization problem to the quantum annealing machine 100 in accordance with the determination result by the determination unit 291, and obtain an optimal solution. With the control device 200, it is expected that a relatively large number of optimal solutions will be obtained in this regard.
[0198] Second Embodiment Fig. 18 is a diagram illustrating an example of the configuration of a determination device according to at least one embodiment. In the configuration illustrated in Fig. 18, the determination device 610 includes a determination unit 611. In this configuration, the determination unit 611 determines symmetry regarding the interchange of multiple binary variables of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine. The determination unit 611 corresponds to an example of a determination means. According to the determination device 610, it is expected that a relatively large number of optimal solutions can be obtained by performing processing based on the determination results.
[0199] Third Embodiment FIG. 19 is a diagram illustrating an example of the configuration of a control device according to at least one embodiment. In the configuration illustrated in FIG. 19 , the control device 620 includes a control unit 621. With this configuration, the control unit 621 assigns combinatorial optimization problems to the quantum annealing machine based on multiple indexing methods for the binary variables of the combinatorial optimization problems, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problems are assigned based on indexes that identify the binary variables of the combinatorial optimization problems, and controls the quantum annealing machine to perform quantum annealing. The control unit 621 corresponds to an example of a control means. With the control device 620, it is expected that the probability of obtaining each optimal solution to the combinatorial optimization problem will differ for each indexing method. In this respect, it is expected that the control device 620 will be able to obtain a relatively large number of optimal solutions.
[0200] <Fourth embodiment> Fig. 20 is a diagram showing an example of the configuration of a quantum annealing system according to at least one embodiment. In the configuration shown in Fig. 20, a quantum annealing system 630 includes a quantum annealing machine 631 and a control device 632. The control device 632 includes a control unit 633.
[0201] With this configuration, the control unit 633 assigns a combinatorial optimization problem to the quantum annealing machine 631 based on each of multiple indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs of the quantum annealing machine to which the combinatorial optimization problem is assigned based on the indexes that identify the binary variables of the combinatorial optimization problem are not isomorphic to each other as labeled graphs, and controls the quantum annealing machine 631 to perform quantum annealing. The control unit 633 is an example of control means.
[0202] According to the quantum annealing system 630, it is expected that the probability of obtaining each optimal solution to the combinatorial optimization problem will differ for each indexing. In this respect, it is expected that the quantum annealing system 630 will be able to obtain a relatively large number of optimal solutions.
[0203] Fifth Embodiment Fig. 21 is a diagram showing an example of a processing procedure in a determination method according to at least one embodiment. The determination method shown in Fig. 21 includes determining symmetry (step S611).
[0204] In determining symmetry (step S611), the computer determines the symmetry regarding the interchange of multiple binary variables of the index that identifies the binary variables of the combinatorial optimization problem assigned to the quantum annealing machine. According to the determination method shown in Figure 21, it is expected that a relatively large number of optimal solutions can be obtained by performing processing based on the determination results.
[0205] Sixth Embodiment Fig. 22 is a diagram illustrating an example of a processing procedure in a control method according to at least one embodiment. The control method illustrated in Fig. 22 includes controlling a quantum annealing machine (step S621).
[0206] In controlling the quantum annealing machine (step S621), the computer assigns the combinatorial optimization problem to the quantum annealing machine based on each of multiple indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on the indexes that identify the binary variables of the combinatorial optimization problem, and controls the quantum annealing machine to perform quantum annealing.
[0207] According to the control method shown in Fig. 22, it is expected that the probability of obtaining each optimal solution to the combinatorial optimization problem will differ for each indexing. In this respect, it is expected that the control method shown in Fig. 22 will obtain a relatively large number of optimal solutions.
[0208] 23 is a schematic block diagram showing the configuration of a computer according to at least one embodiment. In the configuration shown in FIG. 23, a computer 700 includes a CPU (Central Processing Unit) 710, a main memory device 720, an auxiliary memory device 730, an interface 740, and a non-volatile recording medium 750.
[0209] One or more of the above-described control device 200, determination device 610, control device 620, and control device 632, or a part thereof, may be implemented in the computer 700. In this case, the operation of each of the above-described processing units is stored in the auxiliary storage device 730 in the form of a program. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program. The CPU 710 also allocates storage areas in the main storage device 720 corresponding to each of the above-described storage units in accordance with the program. Communication between each device and other devices is executed by the interface 740, which has a communication function, and performs communication under the control of the CPU 710.
[0210] When the control device 200 is implemented in a computer 700, the operations of the processing unit 290 and each of its units are stored in the form of a program in an auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program.
[0211] Furthermore, the CPU 710 allocates a storage area for the storage unit 280 in the main storage device 720 in accordance with the program. Communication with other devices by the communication unit 210 is implemented by the interface 740 having a communication function and performing communication under the control of the CPU 710. Display of various images by the display unit 220 is implemented by the interface 740 having a display device and displaying various images under the control of the CPU 710. Reception of user operations by the operation input unit 230 is implemented by the interface 740 having an input device and receiving user operations.
[0212] When the determination device 610 is implemented in the computer 700, the operation of the determination unit 611 is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program.
[0213] Furthermore, the CPU 710 allocates a storage area in the main storage device 720 for the determination device 610 to perform processing in accordance with the program. Communication between the determination device 610 and other devices is performed by the interface 740, which has a communication function and performs communication under the control of the CPU 710. Interaction between the determination device 610 and a user is performed by the interface 740, which has a display device and an input device, displaying various images under the control of the CPU 710 and accepting user operations.
[0214] When the control device 620 is implemented in the computer 700, the operation of the control unit 621 is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program.
[0215] Furthermore, the CPU 710 allocates a storage area in the main memory device 720 for the control device 620 to perform processing in accordance with the program. Communication between the control device 620 and other devices is achieved by the interface 740 having a communication function and performing communication under the control of the CPU 710. Interaction between the control device 620 and a user is achieved by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
[0216] When the control device 632 is implemented in the computer 700, the operation of the control unit 633 is stored in the form of a program in the auxiliary storage device 730. The CPU 710 reads the program from the auxiliary storage device 730, loads it into the main storage device 720, and executes the above-described processing in accordance with the program.
[0217] Furthermore, the CPU 710 allocates a storage area in the main storage device 720 for the control device 632 to perform processing in accordance with the program. Communication between the control device 632 and other devices is achieved by the interface 740 having a communication function and performing communication under the control of the CPU 710. Interaction between the control device 632 and a user is achieved by the interface 740 having a display device and an input device, displaying various images under the control of the CPU 710, and accepting user operations.
[0218] One or more of the above-described programs may be recorded on nonvolatile recording medium 750. In this case, interface 740 may read the programs from nonvolatile recording medium 750. Then, CPU 710 may directly execute the programs read by interface 740, or may temporarily store the programs in main storage device 720 or auxiliary storage device 730 and then execute them.
[0219] Alternatively, a program for executing all or part of the processing performed by the control device 200, the determination device 610, the control device 620, and the control device 632 may be recorded on a computer-readable recording medium, and the program may be loaded into a computer system and executed to perform the processing of each unit. The term "computer system" as used herein includes hardware such as an operating system (OS) and peripheral devices. The term "computer-readable recording medium" refers to portable media such as flexible disks, optical magnetic disks, read-only memories (ROMs), and compact disc read-only memories (CD-ROMs), as well as storage devices such as hard disks built into the computer system. The program may be designed to implement part of the aforementioned functions, or may be capable of implementing the aforementioned functions in combination with a program already stored in the computer system.
[0220] Although the embodiments of the present invention have been described above in detail with reference to the drawings, the specific configuration is not limited to these embodiments and includes designs within the scope of the present invention. Furthermore, the above-described embodiments may be combined with other embodiments as appropriate.
[0221] A part or all of the above-described embodiments can be described as, but not limited to, the following supplementary notes.
[0222] (Supplementary Note 1) A determination device comprising: a determination means for determining symmetry regarding permutation of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine among a plurality of the binary variables.
[0223] (Supplementary Note 2) The determination device according to Supplementary Note 1, wherein the determination means determines whether the structure of the quantum annealing machine is such that, with respect to a graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on the index, multiple ways of indexing binary variables of the combinatorial optimization problem are possible, such that the graphs are not isomorphic to each other as labeled graphs.
[0224] (Supplementary Note 3) The determination apparatus according to Supplementary Note 2, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph that shows a graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of edges and nodes that are distinct from the nodes that represent the quantum bit devices.
[0225] (Supplementary Note 4) The determination apparatus according to Supplementary Note 2 or Supplementary Note 3, wherein the determination means determines whether all quantum bit devices in the quantum annealing machine have the same number of couplings to which the quantum bit devices are coupled, and whether the number of coupled quantum bit devices is the same for all couplings between the quantum bit devices.
[0226] (Supplementary Note 5) The determination device according to any one of Supplementary Notes 2 to 4, wherein the determination means searches for multiple ways of indexing binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0227] (Supplementary Note 6) The determination device according to Supplementary Note 5, wherein the determination means exhaustively searches indexing of binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0228] (Supplementary Note 7) The determination device according to Supplementary Note 5 or Supplementary Note 6, further comprising: a control means for assigning the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing methods detected by the determination means, and controlling the quantum annealing machine to perform quantum annealing.
[0229] (Supplementary Note 8) The determination device according to Supplementary Note 7, wherein the control means causes the quantum annealing machine to repeatedly perform quantum annealing for each of the multiple indexing patterns detected by the determination means until a predetermined condition regarding the execution of the quantum annealing is met.
[0230] (Supplementary Note 9) The determination device according to any one of Supplementary Notes 1 to 8, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0231] (Supplementary Note 10) The determination device according to Supplementary Note 9, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0232] (Supplementary Note 11) The determination device according to any one of Supplementary Notes 1 to 10, wherein the determination means determines whether or not an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between a plurality of binary variables in the combinatorial optimization problem.
[0233] (Supplementary Note 12) The determination device according to Supplementary Note 11, comprising: a control means for controlling the quantum annealing machine to perform quantum annealing to obtain a solution to the combinatorial optimization problem; and a swapping means for generating, from the solution obtained by the quantum annealing, a solution in which values of binary variables determined to have the same evaluation function are swapped.
[0234] (Supplementary Note 13) The determination device according to Supplementary Note 11 or Supplementary Note 12, further comprising: a control means for assigning the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing patterns in which the indexes of binary variables determined to have the same evaluation function are swapped, and controlling the quantum annealing machine to perform quantum annealing.
[0235] (Supplementary Note 14) The determination device according to any one of Supplementary Notes 1 to 13, further comprising: a notification unit that notifies a user of a determination result by the determination unit.
[0236] (Supplementary Note 15) A control device comprising: control means for assigning a combinatorial optimization problem to a quantum annealing machine based on each of a plurality of indexing methods for binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to a graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify binary variables of the combinatorial optimization problem, and for controlling the quantum annealing machine to perform quantum annealing.
[0237] (Supplementary Note 16) The control device according to Supplementary Note 15, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph that shows a graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of nodes and edges that are distinct from the nodes that represent the quantum bit devices.
[0238] (Supplementary Note 17) The control device according to Supplementary Note 15 or Supplementary Note 16, wherein the control means assigns the combinatorial optimization problem to the quantum annealing machine based on each of all possible indexing of binary variables in the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs, and controls the quantum annealing machine to perform quantum annealing.
[0239] (Supplementary Note 18) The control device according to any one of Supplementary Notes 15 to 17, wherein the control means causes the quantum annealing machine to repeatedly perform quantum annealing for each of a plurality of indexing methods for binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, until a predetermined condition for performing the quantum annealing is satisfied.
[0240] (Supplementary Note 19) The control device according to any one of Supplementary Notes 15 to 18, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0241] (Supplementary Note 20) The control device according to Supplementary Note 19, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0242] (Supplementary Note 21) The control device according to any one of Supplementary Notes 15 to 20, comprising: a determination means for determining whether an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between a plurality of binary variables of the combinatorial optimization problem; and a swapping means for generating a solution obtained by the quantum annealing by swapping values of the binary variables that are determined to have the same evaluation function.
[0243] (Supplementary Note 22) The control device according to any one of Supplementary Notes 15 to 21, wherein the control means assigns the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing patterns in which the indexes of binary variables determined to have the same evaluation function in the combinatorial optimization problem are swapped even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem, and controls the quantum annealing machine to perform quantum annealing.
[0244] (Supplementary Note 23) A quantum annealing system comprising: a quantum annealing machine; and a control device, wherein the control device comprises control means for assigning the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem, and for controlling the quantum annealing machine to perform quantum annealing.
[0245] (Supplementary Note 24) The quantum annealing system according to Supplementary Note 23, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph that shows the graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of nodes and edges that are distinct from the nodes that represent the quantum bit devices.
[0246] (Supplementary Note 25) The quantum annealing system according to Supplementary Note 23 or Supplementary Note 24, wherein the control means assigns the combinatorial optimization problem to the quantum annealing machine based on each of all possible indexing of binary variables in the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs, and controls the quantum annealing machine to perform quantum annealing.
[0247] (Supplementary Note 26) The quantum annealing system according to any one of Supplementary Notes 23 to 25, wherein the control means causes the quantum annealing machine to repeatedly perform quantum annealing for each of a plurality of indexing methods for binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, until a predetermined condition for performing the quantum annealing is met.
[0248] (Supplementary Note 27) The quantum annealing system according to any one of Supplementary Notes 23 to 26, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0249] (Supplementary Note 28) The quantum annealing system according to Supplementary Note 27, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0250] (Supplementary Note 29) The quantum annealing system according to any one of Supplementary Notes 23 to 28, comprising: a determination means for determining whether an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between a plurality of binary variables of the combinatorial optimization problem; and a swapping means for generating a solution obtained by the quantum annealing by swapping values of the binary variables for which the evaluation functions are determined to be the same.
[0251] (Supplementary Note 30) The quantum annealing system according to any one of Supplementary Notes 23 to 29, wherein the control means assigns the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing patterns in which the indexes of binary variables determined to have the same evaluation function in the combinatorial optimization problem are swapped even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem, and controls the quantum annealing machine to perform quantum annealing.
[0252] (Supplementary Note 31) A determination method including: a computer determining symmetry regarding permutations of a plurality of binary variables of an index that identifies binary variables of a combinatorial optimization problem assigned to a quantum annealing machine.
[0253] (Supplementary Note 32) The method of determining symmetry according to Supplementary Note 31, wherein the determining of symmetry includes the computer determining whether the structure of the quantum annealing machine is such that, with respect to a graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on the indexes, there can be multiple ways of indexing binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs.
[0254] (Supplementary Note 33) The determination method according to Supplementary Note 32, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph showing the graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of edges and nodes that are distinct from the nodes representing the quantum bit devices.
[0255] (Supplementary Note 34) The method of determining whether or not the structure allows multiple indexing methods to exist includes the computer determining, for all quantum bit devices in the quantum annealing machine, whether the number of couplings to which the quantum bit devices are coupled is the same, and whether the number of coupled quantum bit devices is the same for all couplings between the quantum bit devices.
[0256] (Appendix 35) The method of any one of Appendices 32 to 34, wherein determining whether the structure allows multiple indexings includes: searching, by the computer, for multiple indexings of binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0257] (Supplementary Note 36) The determination method according to Supplementary Note 35, wherein searching the plurality of indexing methods includes the computer searching through all indexing methods for binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0258] (Supplementary Note 37) The determination method described in Supplementary Note 35 or Supplementary Note 36, including the computer assigning the combinatorial optimization problem to the quantum annealing machine based on each of the detected multiple indexing methods, and controlling the quantum annealing machine to perform quantum annealing.
[0259] (Appendix 38) The determination method described in Appendix 37, wherein performing the quantum annealing includes the computer repeatedly causing the quantum annealing machine to perform quantum annealing for each of the detected multiple indexing methods until a predetermined condition for performing the quantum annealing is met.
[0260] (Supplementary Note 39) The determination method according to any one of Supplementary Notes 31 to 38, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0261] (Supplementary Note 40) The determination method according to Supplementary Note 39, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0262] (Supplementary Note 41) The method according to any one of Supplementary Notes 31 to 40, wherein the determining of symmetry includes determining, by the computer, whether or not an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem.
[0263] (Supplementary Note 42) The determination method according to Supplementary Note 41, including the computer controlling the quantum annealing machine to perform quantum annealing to obtain a solution to the combinatorial optimization problem, and generating a solution from the solution obtained by quantum annealing by swapping the values of binary variables determined to have the same evaluation function.
[0264] (Supplementary Note 43) The determination method described in Supplementary Note 41 or Supplementary Note 42, including the computer assigning the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing methods in which the indexes of binary variables determined to have the same evaluation function are swapped, and controlling the quantum annealing machine to perform quantum annealing.
[0265] (Supplementary Note 44) The determination method according to any one of Supplementary Notes 31 to 43, including the computer notifying a user of the symmetry determination result.
[0266] (Supplementary Note 45) A control method comprising: a computer assigning a combinatorial optimization problem to a quantum annealing machine based on each of a plurality of indexing methods for binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem; and controlling the quantum annealing machine to perform quantum annealing.
[0267] (Supplementary Note 46) The control method according to Supplementary Note 45, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph showing the graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of edges and nodes that are distinct from the nodes representing the quantum bit devices.
[0268] (Supplementary Note 47) The control method described in Supplementary Note 45 or Supplementary Note 46, wherein performing the quantum annealing includes the computer assigning the combinatorial optimization problem to the quantum annealing machine based on each of all possible indexings of binary variables in the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs, and controlling the quantum annealing machine to perform quantum annealing.
[0269] (Appendix 48) The control method described in any one of Appendices 45 to 47, wherein executing the quantum annealing includes causing the computer to repeatedly execute quantum annealing for each of multiple indexings of binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, until a predetermined condition for executing the quantum annealing is met.
[0270] (Supplementary Note 49) The control method according to any one of Supplementary Notes 45 to 48, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0271] (Supplementary Note 50) The control method according to Supplementary Note 49, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0272] (Supplementary Note 51) The control method according to any one of Supplementary Notes 45 to 50, including the computer determining whether an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem, and generating a solution from the solution obtained by the quantum annealing by swapping the values of the binary variables for which the evaluation functions are determined to be the same.
[0273] (Appendix 52) The control method according to any one of Appendices 45 to 51, wherein executing the quantum annealing includes the computer assigning the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing patterns in which the indexes of binary variables determined to have the same evaluation function in the combinatorial optimization problem are swapped even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem, and controlling the quantum annealing machine to execute quantum annealing.
[0274] (Supplementary Note 53) A recording medium having recorded thereon a program that causes a computer to execute the following: determining symmetry regarding the permutation of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine between a plurality of said binary variables.
[0275] (Appendix 54) The recording medium according to Appendix 53, wherein in determining the symmetry, the program causes the computer to determine whether the structure of the quantum annealing machine is such that, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on the index, there can be multiple ways of indexing binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0276] (Supplementary Note 55) The recording medium described in Supplementary Note 54, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph showing the graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of nodes and edges that are distinct from the nodes representing the quantum bit devices.
[0277] (Appendix 56) The recording medium described in Appendix 54 or Appendix 55, wherein, in determining whether the structure allows multiple indexing methods to exist, the program causes the computer to determine whether, for all quantum bit devices in the quantum annealing machine, the number of couplings to which the quantum bit devices are coupled is the same, and for all couplings between the quantum bit devices, the number of coupled quantum bit devices is the same.
[0278] (Appendix 57) The recording medium described in any one of Appendices 54 to 56, wherein by determining whether the structure allows multiple indexing methods to exist, the program causes the computer to execute: searching for multiple indexing methods for binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0279] (Appendix 58) The recording medium described in Appendix 57, wherein the searching of the multiple indexings causes the program to cause the computer to perform an exhaustive search of indexings for binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
[0280] (Appendix 59) The recording medium described in Appendix 57 or Appendix 58, wherein the program causes the computer to: assign the combinatorial optimization problem to the quantum annealing machine based on each of the detected multiple indexing methods, and control the quantum annealing machine to perform quantum annealing.
[0281] (Appendix 60) The recording medium described in Appendix 59, wherein the program causes the computer to execute the quantum annealing by causing the quantum annealing machine to repeatedly execute quantum annealing for each of the detected multiple indexing methods until a predetermined condition for executing the quantum annealing is met.
[0282] (Supplementary Note 61) The recording medium according to any one of Supplementary Notes 53 to 60, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0283] (Supplementary Note 62) The recording medium according to Supplementary Note 61, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0284] (Appendix 63) The recording medium of any one of Appendices 53 to 62, wherein, in determining the symmetry, the program causes the computer to determine whether or not an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem.
[0285] (Appendix 64) The recording medium described in Appendix 63, wherein the program causes the computer to execute the following: controlling the quantum annealing machine to perform quantum annealing to obtain a solution to the combinatorial optimization problem; and generating a solution from the solution obtained by quantum annealing by swapping the values of binary variables determined to have the same evaluation function.
[0286] (Appendix 65) The recording medium described in Appendix 63 or Appendix 64, wherein the program causes the computer to execute the following: assigning the combinatorial optimization problem to the quantum annealing machine based on each of multiple indexing methods in which the indexes of binary variables determined to have the same evaluation function are swapped, and controlling the quantum annealing machine to perform quantum annealing.
[0287] (Supplementary Note 66) The recording medium according to any one of Supplementary Notes 53 to 65, wherein the program causes the computer to notify a user of the symmetry determination result.
[0288] (Supplementary Note 67) A recording medium having recorded thereon a program that causes a computer to execute the following: assigning a combinatorial optimization problem to a quantum annealing machine based on each of multiple indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem; and controlling the quantum annealing machine to perform quantum annealing.
[0289] (Supplementary Note 68) The recording medium described in Supplementary Note 67, wherein the quantum annealing machine comprises quantum bit devices and couplers that couple the quantum bit devices, and in the labeled graph showing the graph structure of the quantum annealing machine, the quantum bit devices are represented by nodes labeled with the index, and couplings between the quantum bit devices are represented by edges or combinations of nodes and edges that are distinct from the nodes representing the quantum bit devices.
[0290] (Appendix 69) The recording medium described in Appendix 67 or Appendix 68, wherein, in performing the quantum annealing, the program causes the computer to: assign the combinatorial optimization problem to the quantum annealing machine based on each of all possible indexings of binary variables in the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs; and control the quantum annealing machine to perform quantum annealing.
[0291] (Appendix 70) The recording medium described in any one of Appendices 67 to 69, wherein, in executing the quantum annealing, the program causes the computer to repeatedly execute quantum annealing using the quantum annealing machine for each of multiple indexing methods for binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, until a predetermined condition for executing the quantum annealing is met.
[0292] (Supplementary Note 71) The recording medium according to any one of Supplementary Notes 67 to 70, wherein the combinatorial optimization problem is expressed by an Ising model or QUBO.
[0293] (Supplementary Note 72) The recording medium according to Supplementary Note 71, wherein the quantum annealing machine is an LHZ quantum annealing machine.
[0294] (Appendix 73) The recording medium described in any one of Appendices 67 to 72, wherein the program causes the computer to execute the following: determine whether or not an evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem; and generate a solution from the solution obtained by the quantum annealing by swapping the values of the binary variables determined to have the same evaluation function.
[0295] (Appendix 74) The recording medium of any one of Appendices 67 to 73, wherein, in executing the quantum annealing, the program causes the computer to: assign the combinatorial optimization problem to the quantum annealing machine based on each of multiple indexing patterns in which the indexes of binary variables determined to have the same evaluation function in the combinatorial optimization problem are swapped even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem; and control the quantum annealing machine to execute quantum annealing.
[0296] The present invention may be applied to a determination device, a control device, a quantum annealing system, a determination method, a control method, and a recording medium.
[0297] 1, 630 Quantum annealing system 100, 631 Quantum annealing machine 110 Qubit device 120 Four-body coupler 200, 620, 632 Control device 210 Communication unit 220 Display unit 230 Operation input unit 280 Storage unit 290 Processing unit 291, 611 Determination unit 292 Structure determination unit 293 Evaluation function determination unit 294, 621, 633 Control unit 610 Determination device
Claims
1. A determination device comprising a determination means for determining symmetry regarding the permutation of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine among a plurality of said binary variables.
2. The determination device according to claim 1, wherein the determination means determines whether the structure of the quantum annealing machine is such that, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on the index, multiple ways of indexing the binary variables of the combinatorial optimization problem are possible such that the graphs are not isomorphic to each other as labeled graphs.
3. The determination apparatus according to claim 2, wherein the determination means determines whether the number of couplings to which all quantum bit devices in the quantum annealing machine are coupled is the same, and whether the number of coupled quantum bit devices is the same for all couplings between the quantum bit devices.
4. The determination device according to claim 2 or 3, wherein the determination means searches for multiple ways of indexing binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs.
5. The determination device according to claim 4, wherein said determination means searches through all indexing of binary variables of said combinatorial optimization problem such that said graphs are not isomorphic to each other as labeled graphs.
6. The determination device according to claim 4 or claim 5, further comprising control means for assigning the combinatorial optimization problem to the quantum annealing machine based on each of the multiple indexing methods detected by the determination means, and controlling the quantum annealing machine to perform quantum annealing.
7. The determination device according to claim 6, wherein the control means causes the quantum annealing machine to repeatedly perform quantum annealing for each of the multiple indexing methods detected by the determination means until a predetermined condition for performing the quantum annealing is met.
8. The determination device according to any one of claims 1 to 7, wherein the determination means determines whether the evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between multiple binary variables in the combinatorial optimization problem.
9. The determination device according to claim 8, comprising: control means for controlling the quantum annealing machine to perform quantum annealing to obtain a solution to the combinatorial optimization problem; and replacement means for generating a solution from the solution obtained by the quantum annealing by replacing the values of binary variables determined to have the same evaluation function.
10. The determination device according to claim 8 or claim 9, further comprising control means for assigning the combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing patterns in which the indexes of binary variables determined to have the same evaluation function are swapped, and for controlling the quantum annealing machine to perform quantum annealing.
11. The determination device according to any one of claims 1 to 10, further comprising: notification means for notifying a user of the determination result by said determination means.
12. A control device comprising: control means for assigning a combinatorial optimization problem to a quantum annealing machine based on each of multiple indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem, and for controlling the quantum annealing machine to perform quantum annealing.
13. The control device according to claim 12, wherein the control means assigns the combinatorial optimization problem to the quantum annealing machine based on each of all possible indexings of the binary variables of the combinatorial optimization problem such that the graphs are not isomorphic to each other as labeled graphs, and controls the quantum annealing machine to perform quantum annealing.
14. The control device according to claim 12 or 13, wherein the control means causes the quantum annealing machine to repeatedly perform quantum annealing for each of a plurality of indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, until a predetermined condition for performing the quantum annealing is met.
15. A control device as claimed in any one of claims 12 to 14, comprising: a determination means for determining whether or not the evaluation function in the combinatorial optimization problem remains the same even when the indexes are swapped between multiple binary variables of the combinatorial optimization problem; and a swapping means for generating a solution obtained by the quantum annealing in which the values of the binary variables determined to have the same evaluation function are swapped.
16. A quantum annealing system comprising a quantum annealing machine and a control device, wherein the control device comprises control means for assigning a combinatorial optimization problem to the quantum annealing machine based on each of a plurality of indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem, and for controlling the quantum annealing machine to perform quantum annealing.
17. A determination method comprising: a computer determining symmetry regarding permutations of a plurality of binary variables of an index that identifies binary variables of a combinatorial optimization problem assigned to a quantum annealing machine.
18. A control method comprising: a computer assigning a combinatorial optimization problem to a quantum annealing machine based on each of multiple indexings of binary variables in the combinatorial optimization problem, such that the graphs of the quantum annealing machine to which the combinatorial optimization problem is assigned based on indexes that identify the binary variables of the combinatorial optimization problem are not isomorphic to each other as labeled graphs; and controlling the quantum annealing machine to perform quantum annealing.
19. A recording medium having recorded thereon a program that causes a computer to execute the following: determining the symmetry of an index that identifies a binary variable of a combinatorial optimization problem assigned to a quantum annealing machine, regarding the permutation of the binary variables among multiple such variables.
20. A recording medium having recorded thereon a program that causes a computer to execute the following: assigning a combinatorial optimization problem to a quantum annealing machine based on each of multiple indexing methods for the binary variables of the combinatorial optimization problem, such that the graphs are not isomorphic to each other as labeled graphs, with respect to the graph structure of the quantum annealing machine to which the combinatorial optimization problem is assigned based on an index that identifies the binary variables of the combinatorial optimization problem; and controlling the quantum annealing machine to perform quantum annealing.
Citation Information
Patent Citations
Mixed integer linear programming problem solving method, system, equipment and medium
CN117172282A
Assignment device, assignment method, and assignment recording medium
WO2022239059A1