Solution-finding device and solution-finding method
Patent Information
- Application Number
- JP2021069594
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-04-16
- Publication Date
- 2025-03-05
- Estimated Expiration
- 2041-04-16
AI Technical Summary
【0013】 本発明によれば、組合せ最適化問題の解に相当する各スピンの状態を効率的に求めることができる。
Smart Images

Figure 0007639517000002 
Figure 0007639517000003 
Figure 0007639517000004
Abstract
Description
[Technical field]
[0001] The present invention relates to a solution-finding device, a solution-finding method, and a solution-finding program for finding the state of each spin that corresponds to the solution of a combinatorial optimization problem. [Background technology]
[0002] When solving a combinatorial optimization problem, the formula expressing the energy in the combinatorial optimization problem is converted into an energy function in the Ising model. This energy function is expressed by variables that represent the state of each spin and coefficients that correspond to the spin.
[0003] Each spin state is represented as "1" or "-1".
[0004] By performing pseudo-annealing using the energy function of the Ising model, the state of each spin that corresponds to the solution of the combinatorial optimization problem can be obtained.
[0005] In general, simulated annealing involves selecting one spin, deciding whether to accept or reject a reversal of the state of that spin, and then reversing the state of that spin if the reversal is accepted. This process is then repeated.
[0006] Moreover, Patent Document 1 describes an optimization device that searches for the minimum value of an evaluation function without destroying a Markov chain. [Prior art documents] [Patent documents]
[0007] [Patent Document 1] JP 2020-205049 A Summary of the Invention [Problem to be solved by the invention]
[0008] It is preferable to efficiently obtain the state of each spin that corresponds to the solution of a combinatorial optimization problem.
[0009] Therefore, an object of the present invention is to provide a solution-finding device, a solution-finding method, and a solution-finding program that can efficiently find the state of each spin that corresponds to the solution of a combinatorial optimization problem. [Means for solving the problem]
[0010] The solution-finding device according to the present invention is characterized by comprising a selection means for selecting one spin based on the acceptance probability of each spin, a switching means for switching from an operation of randomly selecting one spin and determining whether to accept or reject the reversal of the spin state to an operation in which the selection means selects one spin, an inversion means for inverting the state of the spin when the selection means selects a spin, and an energy change calculation means for calculating, for each individual spin, the energy change when the spin state is inverted.
[0011] The solution-finding method according to the present invention is characterized in that the computer switches from an operation of randomly selecting one spin and determining whether to accept or reject the reversal of the spin state to an operation of selecting one spin based on the acceptance probability of each individual spin, and when a spin is selected based on the acceptance probability of each individual spin, the state of the spin is reversed, and the energy change when the spin state is reversed for each individual spin is calculated.
[0012] The solution-finding program according to the present invention is characterized in that it causes a computer to execute a selection process that selects one spin based on the acceptance probability of each spin, a switching process that switches from an operation of randomly selecting one spin and determining whether to accept or reject the reversal of the state of the spin to an operation of selecting one spin in the selection process, an inversion process that inverts the state of the spin when a spin is selected in the selection process, and an energy change calculation process that calculates the energy change when the spin state is inverted for each individual spin. Effect of the Invention
[0013] According to the present invention, it is possible to efficiently find the state of each spin that corresponds to the solution of a combinatorial optimization problem. [Brief description of the drawings]
[0014] [Figure 1] 1 is a block diagram showing an example of a solution solving device according to an embodiment of the present invention. [Diagram 2] 4 is a flowchart showing an example of a processing progress of an embodiment of the present invention. [Diagram 3] 4 is a flowchart showing an example of a processing progress of an embodiment of the present invention. [Figure 4] 11 is a schematic diagram showing the relationship between the inverse of temperature T and the number of standby trials. FIG. [Diagram 5] 1 is a schematic block diagram showing an example of the configuration of a computer related to a solution finding device according to an embodiment of the present invention. [Figure 6] 1 is a block diagram showing an overview of a solution solving device of the present invention; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
[0015] Hereinafter, an embodiment of the present invention will be described with reference to the drawings.
[0016] FIG. 1 is a block diagram showing an example of a solution solving device according to an embodiment of the present invention.
[0017] The solution finding device 10 of this embodiment is given the initial state value of each spin ("1" or "0") and the energy function of the Ising model. Then, the solution finding device 10 executes pseudo annealing to find the state of each spin that corresponds to the solution of the combinatorial optimization problem. Note that the temperature in the following description is the temperature in pseudo annealing.
[0018] The solution finding device 10 includes a first selection unit 11, an acceptance determination unit 12, a second selection unit 13, a switching unit 14, an inversion unit 15, an energy change calculation unit 16, a temperature control unit 17, and an end determination unit 18.
[0019] The first selection unit 11 randomly selects one spin from the multiple spins provided. In the following description, it is assumed that the number of spins provided is N, and an identification number is assigned to each spin. The identification number of one spin is any one number from 1 to N. The first selection unit 11 may generate a uniform random integer number in the range of 1 to N, and select a spin having an identification number corresponding to the random number.
[0020] The acceptance decision unit 12 decides whether to accept or reject the reversal of the state of the spin selected by the first selection unit 11. The acceptance probability is determined individually for each spin. The acceptance probability of a spin with an identification number j is expressed by the following formula (1).
[0021]
number
[0022] In formula (1), ΔE j is the energy change when the state of spin j is inverted. Inverting the spin state means inverting "1" to "-1" or "-1" to "1". In formula (1), T is the temperature in pseudo annealing. In addition, min(A,B) represents the smaller value of A and B. The acceptance probability shown by formula (1) is called the Metropolis acceptance probability. Formula (1) is an example of calculating the acceptance probability, and the acceptance probability may be calculated by other calculation methods.
[0023] The acceptance judgment unit 12 generates a real uniform random number (referred to as r) in the range of 0 to 1. If the random number r is equal to or less than the acceptance probability of the spin selected by the first selection unit 11, the acceptance judgment unit 12 judges to accept the reversal of the state of the spin selected by the first selection unit 11. If the random number r is greater than the acceptance probability of the spin selected by the first selection unit 11, the acceptance judgment unit 12 judges to reject the reversal of the state of the spin selected by the first selection unit 11.
[0024] The second selection unit 13 selects one spin based on the acceptance probability of each spin. Below, two methods, a first method and a second method, will be described as a method for the second selection unit 13 to select one spin.
[0025] [First method] In the first method, the second selection unit 13 generates a real uniform random number in the range of 0 to 1 for each spin. i That is, the second selection unit 13 selects R1, R2, . . . , R N Also, the acceptance probability corresponding to spin i is p i The acceptance probability p i is the acceptance probability calculated by the above-mentioned formula (1). Then, the second selection unit 13 converts the uniform random numbers for each spin from i=1 to i=N by the following formula (2).
[0026] x i =-(1 / p i )logR i (2)
[0027] x i is the R corresponding to spin i i For each spin from i=1 to i=N, the above x i By finding the random numbers x1, x2, , x N The second selection unit 13 selects random numbers x1, x2, . . . , x N Select the spin that corresponds to the smallest random number among the above. This is the first method.
[0028] [Second Method] In the second method, the second selection unit 13 also generates a real uniform random number in the range of 0 to 1 for each spin. i That is, the second selection unit 13 selects R1, R2, . . . , R N Next, the second selection unit 13 converts the uniform random numbers for each spin from i=1 to i=N by the following formula (3).
[0029] y i =log(-logR i )+max(ΔE i / T,0) (3)
[0030] ΔE i is the energy change when the state of spin i is inverted. T is the temperature. max(A,B) is the larger value of A and B. y i is the R corresponding to spin i i For each spin from i=1 to i=N, the above y i By finding the random numbers y1, y2, , y N The second selection unit 13 selects random numbers y1, y2, . . . , y N Select the one spin that corresponds to the smallest random number among the above. This is the second method.
[0031] The above equation (3) is y i =logx i =log(-(1 / p i )logR i ) is a modified equation. Therefore, in the second method as well, it can be said that the second selection unit 13 selects one spin based on the acceptance probability of each spin.
[0032] Here, the first method and the second method are compared. In the first method, p i In the first method, the power of e must be calculated (see formula (1)). On the other hand, in the second method, the power of e does not need to be calculated (see formula (3)). Therefore, the second method can perform calculations at high speed. N In the second method, y1, y2, . . . , y NThe calculation for obtaining is faster. Therefore, it is preferable that the second selection unit 13 selects one spin by the second method rather than the first method. In the following description, it is assumed that the second selection unit 13 selects one spin by the second method.
[0033] In both the first and second methods, the Markov chain during spin selection is not broken.
[0034] The switching unit 14 switches from an operation in which the first selection unit 11 selects one spin and the acceptance decision unit 12 decides whether to accept or reject the reversal of the state of that spin to an operation in which the second selection unit 13 selects one spin.
[0035] The switching unit 14 switches the above operation when a predetermined condition is satisfied. The condition will be described. The number of times that the acceptance judgment unit 12 rejects the reversal of the state of the spin selected by the first selection unit 11 until the acceptance judgment unit 12 accepts the reversal of the state of the spin selected by the first selection unit 11 is called the number of waiting trials. The above predetermined condition is that the number of waiting trials becomes larger than a predetermined threshold. That is, when the number of waiting trials becomes larger than a predetermined threshold, the switching unit 14 switches from the operation in which the first selection unit 11 selects one spin and the acceptance judgment unit 12 judges whether to accept or reject the reversal of the state of the spin to the operation in which the second selection unit 13 selects one spin.
[0036] After this switching, the first selection unit 11 does not return to the operation of selecting one spin and the acceptance decision unit 12 deciding whether to accept or reject the reversal of the state of that spin.
[0037] When the acceptance determination unit 12 accepts an inversion of the spin state selected by the first selection unit 11, the inversion unit 15 inverts the spin state.
[0038] Furthermore, when the second selection unit 13 selects a spin, the inversion unit 15 inverts the state of the spin. Therefore, the state of the spin selected by the second selection unit 13 is always inverted.
[0039] The energy change calculation unit 16 calculates the energy change when the state of the spin is inverted for each spin, and calculates a value obtained by dividing the energy change by the temperature T. As described above, the energy change when the state of the spin i with the identification number i is inverted is defined as ΔE i The energy change calculation unit 16 calculates ΔE i That is, the energy change calculation unit 16 calculates ΔE1 / T, ΔE2 / T, . . . , ΔE N The energy change calculation unit 16 calculates ΔE1 / T, ΔE2 / T, . . . , ΔE N / T can be calculated.
[0040] The temperature control unit 17 lowers the temperature T of the pseudo-annealing.
[0041] The termination determination unit 18 determines whether or not to terminate the pseudo-annealing. The state of each spin at the time when the termination determination unit 18 determines to terminate the pseudo-annealing is the state of each spin that corresponds to the solution of the combinatorial optimization problem.
[0042] The first selection unit 11, the acceptance determination unit 12, the second selection unit 13, the switching unit 14, the inversion unit 15, the energy change calculation unit 16, the temperature control unit 17, and the termination determination unit 18 are realized, for example, by a CPU (Central Processing Unit) of a computer that operates according to a solution-seeking program. For example, the CPU may read the solution-seeking program from a program recording medium such as a program storage device of the computer, and operate as the first selection unit 11, the acceptance determination unit 12, the second selection unit 13, the switching unit 14, the inversion unit 15, the energy change calculation unit 16, the temperature control unit 17, and the termination determination unit 18 according to the solution-seeking program.
[0043] Next, the process of this embodiment will be described. It is assumed that the initial state values of each spin and the energy function of the Ising model are inputted in advance to the solution-finding device 10. It is assumed that the number of given spins is N. It is assumed that the temperature T of the pseudo-annealing is set to an initial value in advance. In the following description, the matters already described will be omitted as appropriate.
[0044] 2 and 3 are flow charts showing an example of the process flow of an embodiment of the present invention. The process flow shown in Fig. 2 and Fig. 3 can be said to be the process flow of simulated annealing.
[0045] First, the energy change calculation unit 16 calculates a value obtained by dividing the energy change when the spin state is inverted by the temperature T for each spin in the initial state (step S1). That is, the energy change calculation unit 16 calculates ΔE1 / T, ΔE2 / T, . . . , ΔE N Calculate / T.
[0046] Next, the temperature control unit 17 initializes the value of a variable m to 0 (step S2). The variable m is a variable for determining whether or not to decrease the temperature T.
[0047] After step S2, the switching unit 14 judges whether the number of waiting trials at that time is greater than a threshold value (step S3). This threshold value is a threshold value that is previously determined for comparison with the number of waiting trials. If the number of waiting trials is equal to or less than the threshold value (No in step S3), the solution finding device 10 performs processing from step S4 onwards. If it is judged that the number of waiting trials is greater than the threshold value (Yes in step S3), the switching unit 14 switches from an operation in which the first selection unit 11 selects one spin and the acceptance judgment unit 12 judges whether to accept or reject the reversal of the state of the spin (operation of steps S5 and S6 described below) to an operation in which the second selection unit 13 selects one spin (operation of step S8 described below). After this switching, if the process proceeds to step S3, the process automatically proceeds to step S8.
[0048] When the process moves to step S3 for the first time, the number of waiting trials is not obtained. Therefore, when the process moves to step S3 for the first time, the process automatically moves to step S4.
[0049] In step S4, the switching unit 14 sets the number of waiting trials to 0. As described above, the number of waiting trials is the number of times that the acceptance determination unit 12 rejects the reversal of the spin state selected by the first selection unit 11 before the acceptance determination unit 12 accepts the reversal of the spin state selected by the first selection unit 11.
[0050] After step S4, the first selection unit 11 randomly selects one spin from the given multiple spins (in other words, N spins) (step S5). Details of the operation of the first selection unit 11 to randomly select one spin have already been described, and therefore will not be described here.
[0051] After step S5, the acceptance decision unit 12 decides whether to accept or reject the reversal of the state of the spin selected in step S5 (step S6). The details of the operation of the acceptance decision unit 12 to decide whether to accept or reject the reversal of the state of the selected spin have already been explained, so the explanation will be omitted here. Note that when calculating the acceptance probability of the selected spin, the most recently calculated ΔE1 / T, ΔE2 / T, . . . , ΔE N / T, a value corresponding to the selected spin may be used.
[0052] If it is determined that the reversal of the spin state selected by the first selection unit 11 is to be rejected, the switching unit 14 adds 1 to the number of waiting trials (step S7). After step S7, the processing from step S5 onwards is repeated. As the number of times that the acceptance determination unit 12 rejects the reversal of the spin state selected in step S5 increases, the number of waiting trials also increases.
[0053] Moreover, when it is determined that the reversal of the spin state selected by the first selection unit 11 is to be accepted, the reversal unit 15 reverses the spin state (step S9).
[0054] Next, the energy change calculation unit 16 calculates a value obtained by dividing the energy change when the spin state is inverted by the temperature T for each spin in the state at that time (step S10). That is, the energy change calculation unit 16 calculates ΔE1 / T, ΔE2 / T, . . . , ΔE N Calculate / T.
[0055] The subsequent operations are shown in FIG.
[0056] After step S10, the temperature control unit 17 adds 1 to the value of the variable m (step S11).
[0057] After step S11, the temperature control unit 17 judges whether the value of the variable m is equal to a threshold value (step S12). This threshold value is a threshold value that is determined in advance for comparison with the variable m. The number of spins N may be used as the value of this threshold value.
[0058] If the value of the variable m does not reach the threshold value (No in step S12), the solution finding device 10 performs the operation from step S3 (see FIG. 2) onwards. As already explained, in step S3, the switching unit 14 judges whether the number of waiting trials at that time is greater than the threshold value. If the number of waiting trials is equal to or less than the threshold value (No in step S3), the solution finding device 10 performs the process from step S4 onwards. If it is judged that the number of waiting trials is greater than the threshold value (Yes in step S3), the switching unit 14 switches from the operation in which the first selection unit 11 selects one spin and the acceptance judgment unit 12 judges whether to accept or reject the reversal of the state of the spin (operation of steps S5 and S6) to the operation in which the second selection unit 13 selects one spin (operation of step S8 described later). After this switching, if the process proceeds to step S3, the process automatically proceeds to step S8.
[0059] Here, it is assumed that the switching unit 14 has determined that the number of waiting attempts is greater than the threshold. In this case, the switching unit 14 switches the operation as described above. As a result, after step S3, the process proceeds to step S8.
[0060] In step S8, the second selection unit 13 selects one spin based on the acceptance probability of each spin. The details of the operation of the second selection unit 13 to select one spin have already been explained, so the explanation will be omitted here. Note that, between the first method and the second method described above, the second method is more preferable, and the second selection unit 13 selects one spin by the second method described above. In the second method, y1, y2,...,y N When calculating, in formula (3), the most recently calculated ΔE1 / T, ΔE2 / T, . . . , ΔE N / T can be used.
[0061] After step S8, the reversing unit 15 reverses the spin state selected in step S8 (step S9).
[0062] When the process moves from step S6 to step S9, the reversal unit 15 reverses the spin state selected in step S5. When the process moves from step S8 to step S9, the reversal unit 15 reverses the spin state selected in step S8.
[0063] The operations of steps S10, S11, and S12 after step S9 have already been explained, so the explanation will be omitted here.
[0064] In step S12, when the value of the variable m becomes equal to the threshold value (Yes in step S12), the temperature control unit 17 decreases the temperature T by a predetermined value (step S13).
[0065] After step S13, the end determination unit 18 determines whether or not to end the pseudo-annealing (step S14). The end condition of the pseudo-annealing may be determined in advance. For example, if the number of times step S13 has been executed reaches a predetermined value, it may be determined that the pseudo-annealing is to be ended, and if the number of times step S13 has been executed does not reach the predetermined value, it may be determined that the pseudo-annealing is not to be ended. The end condition of the pseudo-annealing is not limited to the above example, and may be another condition.
[0066] When it is determined not to end the pseudo-annealing (No in step S14), the solution finding device 10 repeats the processes from step S2 onwards.
[0067] When it is determined that the pseudo-annealing is to be ended (Yes in step S14), the process ends at that point in time. The state of each spin at that point in time is the state of each spin that corresponds to the solution of the combinatorial optimization problem.
[0068] The inventors have confirmed through experiments that there is no significant difference in the solutions obtained (in other words, the states of each spin obtained) among the following three types of methods. [Method 1] The method of the present invention. [Method 2] A method that always randomly selects a spin, regardless of the value of the number of waiting attempts, and determines whether to accept or reject the reversal of the state of that spin. If it is determined to be acceptable, the state of that spin is reversed. [Method 3] A method in which a spin is always selected in the same manner as the second selection unit 13, regardless of the value of the number of waiting attempts, and the state of that spin is inverted.
[0069] That is, the inventors have confirmed through experiments that the same solution can be obtained in any of the above methods 1 to 3.
[0070] Next, the inventor investigated the number of waiting trials in method 2. FIG. 4 is a schematic diagram showing the relationship between the inverse of temperature T and the number of waiting trials, and shows the results of investigating the number of waiting trials in method 2. The horizontal axis in FIG. 4 represents the inverse of temperature T (1 / T), and the vertical axis represents the number of waiting trials. The vertical axis is also in a logarithmic scale. It can be seen from the graph in FIG. 4 that the number of waiting trials increases as temperature T decreases. An increase in the number of waiting trials causes inefficiency of pseudo annealing.
[0071] In an embodiment of the present invention, when the number of waiting trials becomes greater than a threshold, the switching unit 14 switches from an operation in which the first selection unit 11 selects one spin and the acceptance judgment unit 12 judges whether to accept or reject the reversal of the state of the spin to an operation in which the second selection unit 13 selects one spin. When the second selection unit 13 selects one spin, the reversal unit 15 switches the state of the spin. Therefore, it is possible to eliminate the cause of inefficiency of pseudo-annealing when the temperature drops. Also, when the temperature is high, the number of waiting trials is small, so the above method 2 has a lower computational cost than the above method 3.
[0072] Therefore, according to this embodiment, it is possible to efficiently obtain the state of each spin that corresponds to the solution of the combinatorial optimization problem. Also, in this embodiment, it is possible to obtain a solution similar to that obtained by general simulated annealing (method 2).
[0073] Moreover, the solution finding device 10 after the operation has been switched by the switching unit 14 can also be written as follows.
[0074] selection means for selecting one of the spins based on the acceptance probability of each of the spins; an inversion means for inverting the state of the spin selected by the selection means; an energy change calculation means for calculating a value obtained by dividing an energy change by a temperature when the state of the spin is inverted for each individual spin; The selection means generates a uniform random number corresponding to the spin i of the identification number i by R i The energy change when the state of spin i is inverted is ΔE i Let T be the temperature and R i A random number converted from y i Let max(A,B) denote the larger of A and B. Let the number of spins be N. For each spin from i=1 to i=N, y i =log(-logR i )+max(ΔE i / T,0), the y corresponding to each spin is calculated.i Find the minimum value of y i Select one spin that corresponds to A solution-finding device characterized by:
[0075] The above selection means corresponds to the second selection unit 13. The above inversion means corresponds to the inversion unit 15. The above energy change calculation means corresponds to the energy change calculation unit 16.
[0076] 5 is a schematic block diagram showing an example of the configuration of a computer relating to the solution finding device 10 of the embodiment of the present invention. The computer 1000 includes a CPU 1001, a main storage device 1002, an auxiliary storage device 1003, and an interface 1004.
[0077] A solution-finding device 10 according to an embodiment of the present invention is realized, for example, by a computer 1000. The operation of the solution-finding device 10 is stored in the form of a solution-finding program in an auxiliary storage device 1003. A CPU 1001 reads out the solution-finding program, loads the solution-finding program in a main storage device 1002, and executes the processing described in the above embodiment according to the solution-finding program.
[0078] The auxiliary storage device 1003 is an example of a non-transient tangible medium. Other examples of non-transient tangible media include a magnetic disk, a magneto-optical disk, a CD-ROM (Compact Disk Read Only Memory), a DVD-ROM (Digital Versatile Disk Read Only Memory), and a semiconductor memory connected via the interface 1004. In addition, when a program is distributed to the computer 1000 via a communication line, the computer 1000 that receives the program may load the program into the main storage device 1002 and execute the processing described in the above embodiment according to the program.
[0079] In addition, some or all of the components may be realized by general-purpose or dedicated circuits, processors, etc., or a combination of these. These may be configured by a single chip, or may be configured by multiple chips connected via a bus. Some or all of the components may be realized by a combination of the above-mentioned circuits, etc., and programs.
[0080] When some or all of the components are realized by a plurality of information processing devices, circuits, etc., the plurality of information processing devices, circuits, etc. may be centrally or distributed. For example, the information processing devices, circuits, etc. may be realized as a client-server system, a cloud computing system, etc., in a form in which each is connected via a communication network.
[0081] Next, an overview of the present invention will be described. Fig. 6 is a block diagram showing an overview of the solution-finding device of the present invention. The solution-finding device of the present invention comprises a selection means 73, a switching means 74, an inversion means 75, and an energy change calculation means 76.
[0082] The selection means 73 (for example, the second selection unit 13) selects one spin based on the acceptance probability of each spin.
[0083] The switching means 74 (for example, the switching unit 14) switches from an operation of randomly selecting one spin and determining whether to accept or reject the reversal of the state of the spin to an operation in which the selection means 73 selects one spin.
[0084] When the selection means 73 selects a spin, the reversing means 75 (for example, the reversing unit 15) reverses the state of the spin.
[0085] The energy change calculation means 76 (for example, the energy change calculation unit 16) calculates the energy change when the spin state is inverted for each individual spin.
[0086] With such a configuration, it is possible to efficiently find the state of each spin that corresponds to the solution of a combinatorial optimization problem.
[0087] A selection means 73 selects a uniform random number corresponding to the spin i of the identification number i from R i The energy change when the state of spin i is inverted is ΔE i Let T be the temperature and R i A random number converted from y i Let max(A,B) denote the larger of A and B. Let the number of spins be N. For each spin from i=1 to i=N, y i =log(-logR i )+max(ΔE i / T,0), the y corresponding to each spin is calculated. i Find the minimum value of y i One spin may be selected that corresponds to
[0088] When the switching means 74 rejects the reversal of the state of a randomly selected spin more than a predetermined threshold, the switching means 74 may switch from an operation of randomly selecting one spin and determining whether to accept or reject the reversal of the state of the spin to an operation in which the selection means 73 selects one spin. [Industrial Applicability]
[0089] The present invention is preferably applied to a solution finding device that finds the state of each spin that corresponds to a solution to a combinatorial optimization problem. [Explanation of symbols]
[0090] 10 Solving device 11 First Selection Section 12 Acceptance Judgment Department 13 Second Selection Section 14 Switching section 15 Reversal section 16 Energy Change Calculation Section 17 Temperature control unit 18 End Judgment Section
Claims
1. a selection means for selecting one of the spins based on the acceptance probability of each of the spins; a switching means for switching from an operation of randomly selecting one spin and determining whether to accept or reject a reversal of the state of the spin to an operation of the selecting means selecting one spin; an inversion means for inverting a state of the spin when the selection means selects the spin; and an energy change calculation means for calculating an energy change when the state of the spin is inverted for each individual spin. A solution-finding device characterized by:
2. The selection means selects a uniform random number corresponding to the spin i of the identification number i from R i The energy change when the state of spin i is inverted is defined as ΔE i Let T be the temperature and R i The random number converted from y i Let max(A,B) represent the larger value of A and B. Let the number of spins be N. For each spin from i=1 to i=N, i =log(-logR i ) + max(ΔE i / T, 0) to obtain the y i Find the minimum value of y i Select one spin corresponding to The solution solving apparatus according to claim 1 .
3. The switching means switches from an operation of randomly selecting one spin and determining whether to accept or reject the reversal of the state of the spin to an operation of the selecting means selecting one spin when the number of times the reversal of the state of the randomly selected spin has been rejected exceeds a predetermined threshold value. The solution finding apparatus according to claim 1 or 2.
4. The computer Switching from a random selection of one spin and deciding whether to accept or reject a reversal of the state of that spin to a selection of one spin based on the acceptance probability of each individual spin; When one spin is selected based on the acceptance probability of each spin, the state of the selected spin is inverted; For each spin, calculate the energy change when the spin state is flipped A method for solving a problem.
5. The computer When selecting one spin based on the acceptance probability of each spin, a uniform random number corresponding to the spin i of the identification number i is calculated by R i The energy change when the state of spin i is inverted is defined as ΔE i Let T be the temperature and R i The random number converted from y i Let max(A,B) represent the larger value of A and B. Let the number of spins be N. For each spin from i=1 to i=N, i =log(-logR i ) + max(ΔE i / T, 0) to obtain the y i Find the minimum value of y i Select one spin corresponding to The method of claim 4.
6. The computer When the number of times that the reversal of the state of a randomly selected spin is rejected becomes greater than a predetermined threshold value, the operation is switched from randomly selecting one spin and determining whether to accept or reject the reversal of the state of the spin to an operation of selecting one spin based on the acceptance probability of each spin. The solution-finding method according to claim 4 or 5.
7. On the computer, a selection process for selecting one spin based on the acceptance probability of each individual spin; a switching process for switching from the operation of randomly selecting one spin and determining whether to accept or reject a reversal of the state of the spin to the operation of selecting one spin in the selection process; a reversal process for reversing a state of the spin when the spin is selected in the selection process; and Energy change calculation process to calculate the energy change when the spin state is inverted for each individual spin A solution program for executing the above.
8. On the computer, In the selection process, a uniform random number corresponding to spin i of identification number i is generated by R i The energy change when the state of spin i is inverted is defined as ΔE i Let T be the temperature and R i The random number converted from y i Let max(A,B) represent the larger value of A and B. Let the number of spins be N. For each spin from i=1 to i=N, i =log(-logR i ) + max(ΔE i / T, 0) to obtain the y i Find the minimum value of y i Select one spin corresponding to The solution-finding program according to claim 7.
9. On the computer, When the number of times that the reversal of the state of the randomly selected spin is rejected becomes greater than a predetermined threshold value, the switching process switches from the operation of randomly selecting one spin and determining whether to accept or reject the reversal of the state of the spin to the operation of selecting one spin in the selection process. The solution-finding program according to claim 7 or 8.
Citation Information
Patent Citations
Sampling device and sampling method
JP2020204929A
Optimization device, control method of optimization device, and control program of optimization device
JP2020205049A
Optimization apparatus, optimization program, and optimization method
JP2021043787A
Program, data processing method, and data processing apparatus
JP2022161128A