Information processing device, information processing method, and information processing program

By using different objective functions and adjustment constraints in the Ising machine, the problem of limiting the number of quantum bits in the prior art is solved, and more efficient optimization problem handling is achieved.

JP7628190B2Active Publication Date: 2025-02-07FUJIFILM CORP
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2023563535
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2021-11-26
Filing Date
2022-10-03
Publication Date
2025-02-07
Estimated Expiration
2042-10-03

AI Technical Summary

Technical Problem

When solving optimization problems, existing Ising machines have difficulty increasing the number of qubits, resulting in the scale of problems that can be handled by them is smaller than that of traditional computers, and the prior art has failed to effectively consider the limitation of the number of qubits.

Method used

By using different second objective functions to reduce the number of qubits, combining groups of qubits, using the Ising machine to deal with optimization problems, and adjusting constraints to reduce the computational amount, the QUBO model and the Ising model are used to represent optimization problems.

Benefits of technology

Effectively reduces the number of qubits required by the Ising machine when dealing with optimization problems, and reduces the computational complexity and data size.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007628190000015
    Figure 0007628190000015
  • Figure 0007628190000016
    Figure 0007628190000016
  • Figure 0007628190000017
    Figure 0007628190000017
Patent Text Reader

Abstract

This information processing device solves an optimization problem by obtaining the value of an unknown variable using a first objective function. When causing an Ising machine to execute a process in which the value of an unknown variable correlates with the number of quantization bits at the time an optimization problem is solved by the Ising machine, the information processing device exercises control for causing the Ising machine to execute a process of deriving, using a second objective function that is different from the first objective function, the smallest value regarding an unknown variable in a range in which an executable solution of the optimization problem is obtained and solving an optimization problem defined by a mathematical model that includes the derived value regarding the unknown variable and the first objective function.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present disclosure relates to an information processing device, an information processing method, and an information processing program. [Background technology]

[0002] JP 2021-117977 A discloses a technology that not only uses a quantum computer to perform the computational processing to find a solution to a combinatorial optimization problem, but also has some of the computational processing performed by a classical computer.

[0003] JP 2020-184759 A discloses a technology for grouping multiple antennas equipped at multiple base stations using quantum annealing. Summary of the Invention [Problem to be solved by the invention]

[0004] Incidentally, an Ising machine is known as a quantum computer specialized for solving optimization problems. Ising machines include quantum annealing machines that utilize the properties of quantum mechanics, coherent Ising machines that use the properties of light, and digital annealers that are composed of digital circuits. In order to make optimization problems solvable by an Ising machine, optimization problems are modeled. Examples of models that can be solved by an Ising machine include a QUBO (Quadratic Unconstrained Binary Optimization) model in which an optimization problem is modeled by a quadratic form of a binary variable of 0 or 1, and an Ising model in which an optimization problem is modeled by a quadratic form of a binary variable of -1 or 1. The QUBO model and the Ising model can be converted to each other.

[0005] However, the scale of optimization problems that can be solved by an Ising machine is smaller than the scale of optimization problems that can be solved by conventional general-purpose computers (also called classical computers) such as von Neumann computers. This is because it is difficult to increase the number of quantum bits, which are the calculation units of a quantum computer. The technologies described in JP 2021-117977 A and JP 2020-184759 A do not take into account the number of quantum bits when the optimization problem is calculated by an Ising machine.

[0006] The present disclosure has been made in consideration of the above circumstances, and aims to provide an information processing device, an information processing method, and an information processing program that can reduce the number of quantum bits when an optimization problem is calculated by an Ising machine. [Means for solving the problem]

[0007] The information processing device disclosed herein is an information processing device that has at least one processor and causes an Ising machine to execute a process of solving an optimization problem by finding values ​​of unknown variables using a first objective function, where the value of the unknown variable is correlated to the number of quantum bits when solving the optimization problem with the Ising machine, and the processor controls the Ising machine to execute a process of deriving a value for the smallest unknown variable within a range in which a feasible solution to the optimization problem can be obtained using a second objective function different from the first objective function, and to solve the optimization problem defined by a mathematical model including the derived value for the unknown variable and the first objective function.

[0008] In the information processing device of the present disclosure, the second objective function may be an objective function that allows for relaxing constraint conditions compared to the first objective function, thereby making it possible to reduce the amount of calculation.

[0009] Furthermore, in the information processing device of the present disclosure, the unknown variable may be stored in a quantum bit group including a plurality of quantum bits, and the value of the unknown variable may be represented by a position in the quantum bit group where the quantum bit is 0 or 1. This can reduce the possibility that a feasible solution cannot be obtained.

[0010] The information processing device according to the present disclosure may further include an Ising machine having at least one processor, and the processor of the Ising machine may execute a process of solving an optimization problem defined by a mathematical model. This makes it possible to efficiently solve the optimization problem.

[0011] In addition, the information processing method disclosed herein is an information processing method executed by a processor of an information processing device that has at least one processor and causes an Ising machine to execute a process of solving an optimization problem by finding values ​​of unknown variables using a first objective function, in which the value of the unknown variable correlates with the number of quantum bits when solving the optimization problem with the Ising machine, and derives a value for the smallest unknown variable within a range in which a feasible solution to the optimization problem can be obtained using a second objective function different from the first objective function, and controls the Ising machine to execute a process of solving the optimization problem defined by a mathematical model including the derived value for the unknown variable and the first objective function.

[0012] In addition, an information processing program disclosed herein is an information processing program for causing a processor of an information processing device that has at least one processor and causes an Ising machine to execute a process of solving an optimization problem by finding values ​​of unknown variables using a first objective function, where the value of the unknown variable is correlated to the number of quantum bits when solving the optimization problem with the Ising machine, and controls the Ising machine to execute a process of deriving a value for the smallest unknown variable within a range in which a feasible solution to the optimization problem can be obtained using a second objective function different from the first objective function, and solving the optimization problem defined by a mathematical model including the derived value for the unknown variable and the first objective function. Effect of the Invention

[0013] According to the present disclosure, it is possible to reduce the number of quantum bits when an optimization problem is computed by an Ising machine. [Brief description of the drawings]

[0014] [Figure 1] FIG. 2 is a block diagram showing an example of a hardware configuration of an information processing device. [Diagram 2] FIG. 2 is a block diagram showing an example of a hardware configuration of an Ising machine. [Diagram 3] FIG. 2 is a schematic diagram for explaining an optimization problem according to the first embodiment. [Figure 4] FIG. 2 is a schematic diagram illustrating an example of a solution to an optimization problem according to the first embodiment. [Diagram 5] FIG. 1 is a diagram showing an example of a quantum bit representing the first revolution of a truck. [Figure 6] FIG. 1 is a diagram showing an example of a quantum bit that represents a solution for the first round of a truck. [Figure 7] FIG. 1 is a diagram showing an example of a quantum bit that represents multiple revolutions of one truck. [Figure 8] FIG. 1 is a diagram showing an example of a quantum bit that represents multiple revolutions of multiple trucks. [Figure 9] FIG. 2 is a block diagram showing an example of a functional configuration of an information processing device. [Figure 10] FIG. 2 is a diagram for explaining quantum bits to be removed according to the first embodiment. [Figure 11] FIG. 2 is a block diagram illustrating an example of a functional configuration of an Ising machine. [Figure 12] 13 is a flowchart illustrating an example of a model generation process. [Figure 13] 13 is a flowchart showing an example of a solution-finding process. [Figure 14] FIG. 11 is a schematic diagram for explaining an optimization problem according to the second embodiment. [Figure 15] FIG. 11 is a diagram for explaining an example of a method of expressing a quantum bit according to the second embodiment. [Figure 16] FIG. 11 is a diagram for explaining an example of a method of expressing a quantum bit according to the second embodiment. [Figure 17] FIG. 11 is a diagram for explaining another example of a method for expressing a quantum bit according to the second embodiment. [Figure 18] FIG. 11 is a diagram for explaining another example of a method for expressing a quantum bit according to the second embodiment. [Figure 19] FIG. 11 is a diagram for explaining quantum bits to be removed according to the second embodiment. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0015] Hereinafter, examples of embodiments for implementing the technology of the present disclosure will be described in detail with reference to the drawings. Note that in each of the following embodiments, an example will be described in which the QUBO model is applied as a mathematical model representing an optimization problem to be solved by an Ising machine.

[0016] [First embodiment] First, a hardware configuration of an information processing device 10 according to the present embodiment will be described with reference to Figs. 1 and 2. An example of the information processing device 10 is a server computer. As shown in Fig. 1, the information processing device 10 includes a CPU (Central Processing Unit) 20, a memory 21 as a temporary storage area, and a non-volatile storage unit 22. The information processing device 10 also includes a display 23 such as a liquid crystal display, an input device 24 such as a keyboard and a mouse, a network I / F (InterFace) 25 connected to a network, and an Ising machine 26. The CPU 20, the memory 21, the storage unit 22, the display 23, the input device 24, the network I / F 25, and the Ising machine 26 are connected to a bus 27. The information processing device 10 may include a plurality of Ising machines 26.

[0017] The storage unit 22 is realized by a hard disk drive (HDD), a solid state drive (SSD), a flash memory, or the like. The storage unit 22 as a storage medium stores an information processing program 30. The CPU 20 reads the information processing program 30 from the storage unit 22, expands it in the memory 21, and executes the expanded information processing program 30.

[0018] The storage unit 22 also stores problem data 32 for modeling an optimization problem that is the target of solution-finding processing by the information processing device 10. Details of the optimization problem represented by the problem data 32 will be described later.

[0019] The Ising machine 26 is dedicated hardware for handling the QUBO model, and is mounted, for example, in an expansion card slot of the information processing device 10. The Ising machine 26 is realized, for example, by a digital circuit such as an FPGA (Field Programmable Gate Array). When the QUBO model is input by the CPU 20 via the bus 27, the Ising machine 26 performs a process for solving an optimization problem defined by the QUBO model, and outputs the processing result to the CPU 20. Note that the Ising machine 26 may be a computer provided outside the information processing device 10, such as a cloud server connected via a network.

[0020] 2, the Ising machine 26 includes a processor 40, an interaction clock generator 42, a random number generator 44, and a plurality of Ising chips 46. The processor 40, the interaction clock generator 42, the random number generator 44, and each of the plurality of Ising chips 46 are connected to each other so that information can be exchanged. The processor 40 performs a process of solving an optimization problem by controlling the interaction clock generator 42, the random number generator 44, and each Ising chip 46.

[0021] The interaction clock generator 42 generates a clock for performing interaction between bits when the Ising chip 46 handles the QUBO model. The random number generator 44 generates random numbers, which are random bit strings, to prevent the solution search process executed by the Ising chip 46 from falling into a local optimum solution. The Ising chip 46 includes memory cells that store bits, interaction coefficients, external magnetic field coefficients, and the like.

[0022] Next, an example of an optimization problem represented by the problem data 32 according to this embodiment will be described with reference to Figs. 3 and 4. As shown in Fig. 3, in this embodiment, an example of an optimization problem will be described in which a problem of determining a route for delivering goods from one warehouse to multiple stores using multiple trucks (hereinafter referred to as a "route determination problem") is applied. Fig. 3 shows an example in which there are three trucks and nine stores. The numbers written inside the trucks in Fig. 3 indicate the maximum number of goods that the trucks can carry (hereinafter referred to as the "maximum load"). Also, the numbers written inside the stores in Fig. 3 indicate the number of goods demanded at the stores.

[0023] In this embodiment, the number of stores, the number of products in demand at each store, the number of trucks, the maximum load of each truck, the travel distance of the truck between the warehouse and each store, and the travel distance of the truck between each store are assumed to be known. In the route determination problem according to this embodiment, a case will be described in which a delivery route is obtained that minimizes the total travel distance from when a truck leaves a warehouse to when it delivers products that satisfy the demand of each store and finally returns to the warehouse. It is assumed that one truck can make multiple rounds. The round here means that the truck leaves a warehouse, delivers products to one or more stores, and returns to the warehouse. An example of a solution to the route determination problem in the example of FIG. 3 is shown in FIG. 4. The solid arrow in FIG. 4 indicates the route of a truck with a maximum load capacity of "6", and the dashed arrow indicates the route of a truck with a maximum load capacity of "8". The dashed arrow in FIG. 4 indicates the route of the first round of a truck with a maximum load capacity of "10", and the dashed arrow indicates the route of the second round of a truck with a maximum load capacity of "10".

[0024] A case will be described where the above-mentioned routing problem is solved using the Ising machine 26. First, in order to solve the routing problem using the Ising machine 26, quantum bits are prepared so that it is possible to express which store each truck visits in which lap. In the following, a variable representing a truck is denoted as t, a variable representing a store is denoted as s, a variable representing the lap of the truck's travel is denoted as n, and a variable representing the lap of the store the truck visits in one lap is denoted as i.

[0025] In the following, the number of stores to which goods are delivered is S, the number of trucks is T, the maximum number of rounds for each truck is N, and the maximum number of stores that each truck can visit in one round is I. In this case, each variable is s∈S. s ={1, 2, …, S, S+1}, t∈T s = {1, 2, …, T}, n ∈ N s = {1, 2, …, N}, i ∈ I s = {1, 2, ..., I}. The subscript "s" indicates a set. S s For , S+1 is added to the last element of the set to indicate that the truck will return to the warehouse at the end. Also, N is assumed to be a number greater than 1. This is because the maximum load capacity of a truck is set in the above routing problem, and even if all trucks share the delivery, it may not be possible to deliver products to all stores in one trip.

[0026] Next, a method of allocating quantum bits for constructing a QUBO model executable by the Ising machine 26 will be described. First, the first round of one truck (i.e., n=1) is defined. As an example, as shown in FIG. 5, all stores are candidates for visiting on the first round of the truck, and the number of stores visited on the first round is unknown, so that (S+1)×I quantum bits are prepared for one round. In the example of FIG. 5, the quantum bits are arranged two-dimensionally, with the vertical direction representing the variable i and the horizontal direction representing the variable s.

[0027] The result of solving the routing problem is expressed as shown in FIG. 6 as an example. In FIG. 6, the locations where the quantum bit value is "1" indicate that the store will be visited, and the locations where the quantum bit value is "0" indicate that the store will not be visited. Note that in FIG. 6, the "0" is omitted from the locations where the quantum bit value is "0", and the locations are left blank. This is the same in FIG. 7 and FIG. 8, which will be described later. In the example of FIG. 6, it is shown that the truck visits store 2 first on its first trip, store 3 second, and returns to the warehouse third.

[0028] Since the quantum bits shown in Fig. 5 and Fig. 6 are for one revolution, by preparing N revolutions of this quantum bit, as shown in Fig. 7 as an example, the quantum bit of one truck can be defined. That is, the number of quantum bits required to express one truck is (S+1) × N × I. Furthermore, by preparing the quantum bits of one truck for the number of trucks as shown in Fig. 8 as an example, it is possible to express the solution to the route determination problem shown in Fig. 3. That is, the number of bits required in the example shown in Fig. 8 is T × (S+1) × N × I.

[0029] Next, an example of the constraint conditions and the objective function of the route determination problem included in the problem data 32 will be shown. First, the following symbols will be defined.

[0030]

number

[0031] The constraints are expressed by the following equations (1) to (6). Equation (1) expresses the condition that each truck visits each store only once. Equation (2) expresses the condition that one truck can visit only one store at a time. Equation (3) expresses the condition that each truck visits stores in order, such as 1st, 2nd, .... Specifically, equation (3) expresses the condition that the truck starts visiting from the 1st store, and visits the 2nd, 3rd, ..., stores in order until finally returning to the warehouse, as shown in Figure 6, that is, there is no row with only the quantum bit value "0" between the 1st row and the row representing the return to the warehouse.

[0032] Equation (4) expresses the condition that the number of products delivered by each truck is equal to or less than the maximum load of each truck. Equation (5) expresses the condition that each truck returns to the warehouse on each round. Equation (6) expresses the condition that each truck does not visit a store after returning to the warehouse on each round.

[0033]

number

[0034]

number

[0035]

number

[0036]

number

[0037]

number

[0038]

number

[0039] The objective function for minimizing the total travel distance of the trucks is expressed by the following equation (7). This objective function is used to solve the above-mentioned route determination problem, and will be referred to as the "first objective function" below.

[0040]

number

[0041] The QUBO model defined by equations (1) to (7) can be solved by the Ising machine 26. In this case, S and T are uniquely determined from the problem setting, but N and I are arbitrary values, and are set to values ​​with some leeway by the user, for example. This is because the user cannot know in advance the values ​​of N and I that do not become infeasible when solving the problem with the Ising machine 26. For example, in the example route determination problem shown in FIG. 3, the truck with the largest maximum load capacity, "10," can visit a maximum of four stores in one trip while satisfying the above constraints, so I is set to a value of 4 or more.

[0042] In this way, when the user sets the values ​​of N and I so that the problem is not infeasible according to the problem setting and rules of thumb, the values ​​of N and I become large with a margin, and the number of quantum bits also increases. This is because the values ​​of the unknown variables i and n in the above-mentioned path determination problem correlate with the number of quantum bits when solving the path determination problem with the Ising machine 26. Since it is difficult to increase the number of quantum bits, which is the unit of calculation of a quantum computer, it is preferable to reduce the number of quantum bits when the Ising machine 26 calculates the path determination problem.

[0043] In addition, the data size of the QUBO model input to the Ising machine 26 is calculated by dividing each quantum bit Q t,s,n,i and the multiplication of two qubits, Q t,s,n,i ×Q t’,s’,n’,i’The coefficients of the qubits and the number of qubits are arranged in a row, and the coefficients of the qubits and the number of qubits are arranged in a row, that is, the coefficients of the qubits are proportional to the square of the qubits. Therefore, when the number of qubits increases, the data size of the QUBO model also increases. Therefore, from the viewpoint of data size, it is preferable to reduce the number of qubits when the Ising machine 26 is operated to solve the path determination problem.

[0044] Therefore, the information processing device 10 according to this embodiment has a function of reducing the number of quantum bits when the Ising machine 26 is caused to calculate the path determination problem.

[0045] Next, a functional configuration of the information processing device 10 according to this embodiment will be described with reference to Fig. 9. As shown in Fig. 9, the information processing device 10 includes a derivation unit 50, a generation unit 52, a control unit 54, and an acquisition unit 56. The CPU 20 executes the information processing program 30 to function as the derivation unit 50, the generation unit 52, the control unit 54, and the acquisition unit 56.

[0046] The derivation unit 50 derives values ​​for the smallest unknown variables i and n within a range where a feasible solution to the path determination problem can be obtained by using a second objective function different from the first objective function. The second objective function is expressed by the following equation (8).

[0047]

number

[0048] In the second objective function, the value to be minimized is the sum of I, which is the upper limit of variable i, and N, which is the upper limit of variable n. In equation (8), by including variables i and n in the objective function, a solution is obtained that minimizes the number of stores visited by the truck per round and the number of rounds made.

[0049] Specifically, the derivation unit 50 performs a process of solving a path determination problem in which the objective function is changed from the first objective function to the second objective function. In the solution in which the output of equation (8) obtained by this process is minimized, Q t,s,n,iAmong the values ​​of i and n when the value of becomes 1, the maximum values ​​of i and n correspond to the minimum values ​​of I and N within the range in which a feasible solution to the path determination problem can be obtained. These minimum values ​​of I and N are hereinafter referred to as I' and N'. In other words, I' and N' correspond to the minimum upper limit values ​​I and N of variables i and n derived using the second objective function within the range in which a feasible solution to the path determination problem can be obtained.

[0050] The second objective function is an objective function that can relax the constraint conditions compared to the first objective function. Specifically, in equation (8) showing the second objective function, since it is not necessary to calculate the travel distance of the truck, among the constraint conditions of equations (1) to (6), equations (3) and (6) which are constraint conditions related to the order of visiting stores can be ignored. Therefore, the amount of calculation can be reduced.

[0051] The solution-finding process by the derivation unit 50 can use known techniques, such as evolutionary computing techniques, such as a branch and bound method, a local search method, and a genetic algorithm, and swarm intelligence optimization techniques, such as ant colony optimization.

[0052] The generation unit 52 generates a QUBO model including N' and I' derived by the derivation unit 50 and a first objective function. Specifically, the generation unit 52 generates a QUBO model in which the path determination problem is in a data format executable by the Ising machine 26, using N' and I' derived by the derivation unit 50 and equations (1) to (7). This QUBO model includes information required to solve the path determination problem, such as the values ​​of N' and I', constraint conditions, the first objective function, a method of expressing quantum bits, and problem settings.

[0053] In the QUBO model generated by the generation unit 52, the upper limit values ​​I', N' of the unknown variables i, n are smaller than I, N set by the user with a margin so that a feasible solution can be obtained. Therefore, as shown in FIG. 10 as an example, the number of quantum bits can be reduced when the Ising machine 26 is caused to calculate the path determination problem. Specifically, when the quantum bits are arranged two-dimensionally, the quantum bits from the I'+1th row to the Ith row are reduced from the first round to the N'th round. Also, in this case, all the quantum bits from the 1st row to the Ith row are reduced from the N'+1th round to the Nth round.

[0054] The control unit 54 controls the Ising machine 26 to execute a process for solving a path determination problem defined by the QUBO model generated by the generation unit 52. Specifically, the control unit 54 outputs the QUBO model generated by the generation unit 52 to the Ising machine 26 via the bus 27. The control unit 54 also controls the storage of the result of the solution-finding process acquired by the acquisition unit 56 described later in the memory unit 22. The control unit 54 may also control the display 23 to display the result of the solution-finding process.

[0055] The acquisition unit 56 acquires the result of the solution process for the path determination problem performed by the Ising machine 26 from the Ising machine 26 via the bus 27.

[0056] Next, a functional configuration of the Ising machine 26 according to this embodiment will be described with reference to Fig. 11. As shown in Fig. 11, the Ising machine 26 includes an acquisition unit 60, an execution unit 62, and an output unit 64. The processor 40 functions as the acquisition unit 60, the execution unit 62, and the output unit 64.

[0057] The acquisition unit 60 acquires the QUBO model input from the CPU 20. The execution unit 62 executes a process of solving a path determination problem defined by the QUBO model acquired by the acquisition unit 60. The output unit 64 outputs a result of the process of solving the path determination problem by the execution unit 62 to the CPU 20 via the bus 27.

[0058] Next, the operation of the information processing device 10 according to this embodiment will be described with reference to Fig. 12 and Fig. 13. The CPU 20 executes the information processing program 30 to execute the model generation process shown in Fig. 12. The model generation process shown in Fig. 12 is executed, for example, when a command to start execution is input by the user via the input device 24.

[0059] 12, the derivation unit 50 derives values ​​for the smallest unknown variables i and n within a range in which a feasible solution to the path determination problem can be obtained using a second objective function different from the first objective function, as described above. In step S12, the generation unit 52 generates a QUBO model including N' and I' derived in step S10 and the first objective function, as described above.

[0060] In step S14, the control unit 54 outputs the QUBO model generated in step S12 to the Ising machine 26 via the bus 27. In step S16, the acquisition unit 56 acquires the result of the solution process of the path determination problem by the Ising machine 26 from the Ising machine 26 via the bus 27. In step S18, the control unit 54 performs control to store the result of the solution process acquired in step S16 in the storage unit 22. When the process of step S18 ends, the model generation process ends.

[0061] When the QUBO model is input from the CPU 20 to the Ising machine 26 in step S14 of the above model generation process, the processor 40 executes the solution-finding process shown in FIG.

[0062] In step S20 of Fig. 13, the acquisition unit 60 acquires the QUBO model input from the CPU 20. In step S22, the execution unit 62 executes a process of solving the path determination problem defined by the QUBO model acquired in step S20. In step S24, the output unit 64 outputs the result of the solution process of the path determination problem by the process of step S22 to the CPU 20 via the bus 27. When the process of step S24 ends, the solution process ends. The result of the solution process input to the CPU 20 in step S24 is acquired in step S16 of the above model generation process.

[0063] As described above, according to this embodiment, it is possible to reduce the number of quantum bits when the Ising machine 26 is caused to calculate a path determination problem.

[0064] [Second embodiment] A second embodiment of the disclosed technology will be described. Note that the hardware configurations of the information processing device 10 and the Ising machine 26 according to this embodiment are the same as those of the first embodiment, and therefore the description thereof will be omitted.

[0065] An example of an optimization problem represented by the problem data 32 according to this embodiment will be described with reference to Fig. 14. As shown in Fig. 14, in this embodiment, as an example of the optimization problem, a problem of determining the delivery amount of products so as to satisfy the demand quantity of the products at each warehouse and minimize the delivery cost when delivering products in stock from multiple factories to multiple warehouses (hereinafter, referred to as "inventory delivery problem") will be described.

[0066] In the following, the variable representing the factory is f, the variable representing the warehouse is w, and the variable representing the shipping cost per item when shipping the item from the factory to the warehouse is C. f、w , the number of items to be delivered from the factory to the warehouse is x f、w In the following, the number of factories is F and the number of warehouses is W. In this case, the variable f is f∈f s = {1, 2, …, F}, and the variable w is w∈w s = {1, 2, ..., W}. The subscript "s" indicates a set.

[0067] The first objective function in the inventory distribution problem is shown in the following equation (9). The inventory distribution problem is solved by solving the unknown variable x f、w The problem becomes one of finding the value of .

[0068]

number

[0069] Constraints for solving the inventory distribution problem include, for example, satisfying the demand for each warehouse and the total number of products delivered from each factory to the warehouse being equal to the number of products that can be produced at each factory, FM. f The following may be included:

[0070] In order to solve the inventory distribution problem using an Ising machine26, we need to use a positive integer x f、w is expressed in quantum bits, and the following two examples of how to express it are given.

[0071] The first expression method is to prepare a quantum bit group including a number of quantum bits expressed by the following formula (10), and to calculate the unknown variable x f、w is how the value of

[0072]

number

[0073] Specifically, as an example, as shown in Fig. 15, quantum bits are arranged two-dimensionally, with the vertical direction representing the number of warehouses and the horizontal direction representing the number of products to be delivered to the warehouse. That is, in the example of Fig. 15, the quantum bit group is a quantum bit array. The number of bits in the horizontal direction is the feasible production number FM fThe number of products to be delivered to the warehouse is represented by the number of quantum bits that are 1 from the beginning (the left end in the example of FIG. 15) and the number of products to be delivered to the warehouse is represented by the number of quantum bits that are 1 from the end in the horizontal direction (the right side in the example of FIG. 15).

[0074] For example, when the position where the quantum bit value becomes 1 is the position shown in FIG. 16, it indicates that 6 products will be delivered to Warehouse 1 and 3 products will be delivered to Warehouse 2. Note that in FIG. 16, the "0" is omitted from the positions where the quantum bit value is "0", and the positions are left blank. This is also the case in FIG. 18, which will be described later. In the example of FIG. 16, the position where the quantum bit becomes 1 indicates the number of products to be delivered to the warehouse, but the position where the quantum bit becomes 0 may also indicate the number of products to be delivered to the warehouse. In this case, the quantum bit values ​​of 0 and 1 shown in FIG. 16 are swapped.

[0075] The second representation method is to prepare the number of quantum bits expressed by the following equation (11), make one quantum bit correspond to one bit of a binary number, and express the unknown variable x as a binary number combining multiple quantum bits. f、w is how the value of

[0076]

number

[0077] Specifically, as an example, as shown in FIG. 17, quantum bits are arranged two-dimensionally, with the vertical direction representing the number of warehouses, and the horizontal direction representing the number of products to be delivered to the warehouse. The number of bits in the horizontal direction is log2(FM f ), and the horizontal bit string represents a binary number. For example, if the position where the quantum bit value is 1 is the position shown in Figure 18, it represents that 6 items will be delivered to Warehouse 1 and 3 items will be delivered to Warehouse 2.

[0078] The first representation method requires a larger number of quantum bits than the second representation method, but the constraints are simple, so there is a higher chance of obtaining a feasible solution. The second representation method requires a smaller number of quantum bits than the first representation method, but there is a higher chance of not obtaining a feasible solution, because an additional constraint is required to associate the quantum bits corresponding to the binary number with a decimal integer representing the number of product deliveries. An example using the first representation method will be described below.

[0079] Next, the functional configuration of the information processing device 10 according to this embodiment will be described with reference to Fig. 9. Functional units having the same functions as those in the first embodiment will be denoted by the same reference numerals as those in the first embodiment, and descriptions thereof will be omitted. As shown in Fig. 9, the information processing device 10 includes a derivation unit 50A, a generation unit 52A, a control unit 54, and an acquisition unit 56. The CPU 20 executes the information processing program 30, thereby functioning as the derivation unit 50A, the generation unit 52A, the control unit 54, and the acquisition unit 56.

[0080] The derivation unit 50A derives the smallest unknown variable x within a range in which a feasible solution to the inventory delivery problem can be obtained using a second objective function different from the first objective function. f、w The second objective function is expressed by the following equation (12). Equation (12) is an equation that minimizes the maximum number of products delivered from factory f to warehouse w.

[0081]

number

[0082] Specifically, the derivation unit 50A performs a process of solving the inventory delivery problem in which the objective function is changed from the first objective function to the second objective function. The solution obtained by this process is called x' f、w Let the minimum value be M=min(x' f、w ),∀x' f、w >0. This M is the unknown variable x within the range where a feasible solution to the inventory delivery problem can be obtained. f、wIn addition, this M can be said to be the minimum number of products that can be delivered in all combinations of factories and warehouses that require product delivery. Therefore, the number of quantum bits required in this case is expressed by the following equation (13) using M.

[0083]

number

[0084] As an example, as shown in Fig. 19, equation (13) indicates that for a combination of a factory and a warehouse that require product delivery, quantum bits that represent less than the minimum number of deliveries M are not required. In Fig. 19, the quantum bits shaded in gray indicate that they will not be required. That is, in the example of Fig. 19, M-1 quantum bits are eliminated for the warehouse that requires product delivery.

[0085] The generation unit 52A generates a QUBO model including M derived by the derivation unit 50A and the first objective function. Specifically, the generation unit 52A generates a QUBO model in which the inventory delivery problem is in a data format executable by the Ising machine 26, using M derived by the derivation unit 50A, the constraints, and the first objective function.

[0086] The functions of the Ising machine 26 according to this embodiment are different from those of the first embodiment only in the optimization problem to be processed, and therefore a description thereof will be omitted.

[0087] In addition, the operation of the information processing device 10 according to this embodiment is different from that of the first embodiment only in the optimization problem to be processed, and the flow of the process is the same as that of the first embodiment (see FIGS. 12 and 13), so the description will be omitted. f、w Only the value M for and the QUBO model generated in step S12 are different from the first embodiment.

[0088] As described above, according to this embodiment, it is possible to reduce the number of quantum bits when the Ising machine 26 is caused to calculate the inventory delivery problem.

[0089] In the above embodiments, the case where the QUBO model is applied as the mathematical model handled by the Ising machine 26 has been described, but the present invention is not limited thereto. The mathematical model may be an Ising model. In the QUBO model, an optimization problem is modeled by a quadratic form of a binary variable of 0 or 1, whereas in the Ising model, an optimization problem is modeled by a quadratic form of a binary variable of -1 or 1. In addition, the QUBO model and the Ising model can be mutually converted by a known method.

[0090] In the above embodiment, the following various processors can be used as the hardware structure of the processing units that execute various processes, such as the derivation units 50, 50A, the generation units 52, 52A, the control unit 54, and the acquisition unit 56. As described above, the above various processors include a CPU, which is a general-purpose processor that executes software (programs) and functions as various processing units, as well as a programmable logic device (PLD), which is a processor whose circuit configuration can be changed after manufacture such as an FPGA, a dedicated electric circuit, etc., which is a processor having a circuit configuration designed specifically for executing specific processes, such as an application specific integrated circuit (ASIC), etc.

[0091] A single processing unit may be configured with one of these various processors, or may be configured with a combination of two or more processors of the same or different types (for example, a combination of multiple FPGAs, or a combination of a CPU and an FPGA). Also, multiple processing units may be configured with a single processor.

[0092] As an example of configuring multiple processing units with one processor, first, there is a form in which one processor is configured with a combination of one or more CPUs and software, as typified by computers such as client and server, and this processor functions as multiple processing units. Second, there is a form in which a processor is used that realizes the functions of the entire system including multiple processing units with one IC (Integrated Circuit) chip, as typified by System on Chip (SoC), etc. In this way, the various processing units are configured using one or more of the above various processors as a hardware structure.

[0093] Furthermore, more specifically, the hardware structure of these various processors can be an electric circuit that combines circuit elements such as semiconductor elements.

[0094] In the above embodiment, the information processing program 30 is stored (installed) in advance in the storage unit 22, but the present invention is not limited to this. The information processing program 30 may be provided in a form recorded on a recording medium such as a CD-ROM (Compact Disc Read Only Memory), a DVD-ROM (Digital Versatile Disc Read Only Memory), or a USB (Universal Serial Bus) memory. The information processing program 30 may be downloaded from an external device via a network.

[0095] The disclosure of Japanese Patent Application No. 2021-191810, filed on November 26, 2021, is incorporated herein by reference in its entirety. In addition, all documents, patent applications, and technical standards described herein are incorporated herein by reference to the same extent as if each individual document, patent application, and technical standard was specifically and individually indicated to be incorporated by reference.

Claims

1. An information processing device comprising at least one processor, and causing an Ising machine to execute a process of solving an optimization problem by determining a value of an unknown variable using a first objective function, the value of the unknown variable being correlated with a number of quantum bits when the optimization problem is solved by the Ising machine, The processor, deriving values ​​for the unknown variables that are minimal within a range that results in a feasible solution to the optimization problem using a second objective function that is different from the first objective function; The derived value for the unknown variable is set as an upper limit value or a lower limit value for the unknown variable, and control is performed to cause the Ising machine to execute a process of solving the optimization problem defined by a mathematical model including the first objective function. Information processing device.

2. The second objective function is an objective function in which constraint conditions can be relaxed compared to the first objective function. The information processing device according to claim 1 .

3. the unknown variable is stored in a qubit group including a plurality of qubits; The value of the unknown variable is represented by the position in the set of qubits where the qubit is either 0 or 1.

3. The information processing device according to claim 1 or 2.

4. The Ising machine further includes at least one processor, The processor of the Ising machine executes a process of solving the optimization problem defined by the mathematical model.

3. The information processing device according to claim 1 or 2.

5. A process for solving an optimization problem by determining values ​​of unknown variables using a first objective function, the process being performed by an Ising machine in which the value of the unknown variable correlates with the number of quantum bits when solving the optimization problem with an Ising machine, the process being performed by an Ising machine having at least one processor. An information processing method executed by the processor of an information processing device, comprising: deriving values ​​for the unknown variables that are minimal within a range that results in a feasible solution to the optimization problem using a second objective function that is different from the first objective function; The derived value for the unknown variable is set as an upper limit value or a lower limit value for the unknown variable, and control is performed to cause the Ising machine to execute a process of solving the optimization problem defined by a mathematical model including the first objective function. Information processing methods.

6. An information processing program for causing an Ising machine to execute a process for solving an optimization problem by determining a value of an unknown variable using a first objective function, the process being correlated with a number of quantum bits when the optimization problem is solved by the Ising machine, the information processing program being executed by the processor of an information processing device that includes at least one processor, the information processing program causing an Ising machine to execute a process for solving an optimization problem by determining a value of an unknown variable using a first objective function, the value of the unknown variable being correlated with a number of quantum bits when the optimization problem is solved by the Ising machine, deriving values ​​for the unknown variables that are minimal within a range that results in a feasible solution to the optimization problem using a second objective function that is different from the first objective function; The derived value for the unknown variable is set as an upper limit value or a lower limit value for the unknown variable, and control is performed to cause the Ising machine to execute a process of solving the optimization problem defined by a mathematical model including the first objective function. Information processing program.

Citation Information

Patent Citations

  • Efficient resource reduction for fermion-Hamiltonian simulations on quantum hardware

    JP2019531008A

  • Automation of solving NP problems in annealer system

    JP2021002331A

  • Hybrid quantum-classical computer for packing bits into qubits for quantum optimization algorithms

    WO2020106955A1