Storage media, quantum computing control methods and information processing devices

By performing quantum calculations under multiple conditions in parallel during the quantum computing process and determining the calculation conditions for the next stage based on the results at the intermediate stage, the problem of excessively long calculation time in quantum chemical calculations is solved, and the calculation time is shortened while the accuracy is maintained or improved.

CN116508029BActive Publication Date: 2025-12-02FUJITSU LTD
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
CN202080106206.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2020-11-20
Publication Date
2025-12-02
Estimated Expiration
2040-11-20

AI Technical Summary

Technical Problem

In quantum chemical calculations, a large number of repetitive calculations are required to achieve the required computational accuracy, which leads to excessively long computation times.

Method used

By using information processing devices to perform quantum calculations under multiple conditions in parallel during the quantum computing process, and using speculative processing to determine the calculation conditions for the next stage based on the calculation results obtained midway, the calculation time can be shortened.

Benefits of technology

It effectively shortens the computation time of quantum computing while maintaining or improving computational accuracy.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116508029B_ABST
    Figure CN116508029B_ABST
Patent Text Reader

Abstract

Shorten the computation time of quantum computing. A computer causes the first quantum calculator, one of multiple quantum calculators performing calculations on the quantum state of the system being calculated, to repeat the first calculation (N times) based on the first computational condition (e.g., θ = θ0). Furthermore, based on the results of a second calculation (sN times) by the first quantum calculator (fewer than the first time) and information about the system, the computer calculates the first energy of the system (e.g., E). 0s Then, midway through a computation based on the first computational condition, the computer causes a second quantum calculator among multiple quantum calculators to begin computation based on the second computational condition (e.g., θ = θ). 1s The calculation of the quantum state of ) is based on the first energy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to storage media, quantum computing control methods, and information processing devices. Background Technology

[0002] Instead of error-correcting quantum computers, which were considered to be time-consuming to commercialize, NISQ (Noisy Intermediate-Scale Quantum computer) was proposed as a medium-sized quantum computer (with around several hundred qubits) without error correction capabilities. NISQ is expected to be realized within a few to a dozen years.

[0003] One application of NISQ is quantum chemical calculation (see, for example, Patent Document 1). Quantum chemical calculation involves solving the Schrödinger equation, H|ψ〉=E|ψ〉, to obtain information related to the molecules and properties of the system. H is the Hamiltonian, determined by interatomic and intermolecular distances, etc. |ψ〉 is the quantum state of the system, sometimes called the state vector (or simply state). E is the energy of the system.

[0004] The calculation of the Schrödinger equation described above can be considered as a calculation of the intrinsic value problem. That is, finding the intrinsic vector (state vector) corresponding to the intrinsic value (energy) is equivalent to solving the Schrödinger equation. The system generally becomes the state with the lowest energy. Therefore, in quantum chemical calculations, most of the search is for the lowest energy (ground state energy) or its corresponding quantum state (ground state).

[0005] VQE (Variational Quantum Eigensolver) is known as an algorithm that uses both quantum and classical computers to search for the ground state energy and ground state. In VQE, the optimization variable θ (the variable used for quantum gate operations) set for the quantum computer is varied, and the classical computer calculates the energy based on the quantum states obtained for each θ, thus searching for the ground state energy and ground state.

[0006] Existing technical documents

[0007] Patent documents

[0008] Patent Document 1: International Publication No. 2012 / 023563

[0009] Patent Document 2: Japanese Patent Application Publication No. 2010-271755

[0010] Patent Document 3: Japanese Patent Publication No. 2013-513875 Summary of the Invention

[0011] The problem the invention aims to solve

[0012] However, in quantum computing, such as quantum chemical calculations, a significant amount of repetitive calculations are performed for each computational condition (θ in the example above) in order to obtain results with the required computational accuracy. Therefore, this results in a high computational time consumption.

[0013] In one embodiment, the objective of this invention is to shorten the computation time of quantum computing.

[0014] means for solving problems

[0015] In one embodiment, a quantum computing control program is provided. The quantum computing control program causes a computer to perform the following process: First, among a plurality of quantum calculators performing calculations on the quantum state of the system to be calculated, repeats the calculation of the quantum state based on first calculation conditions a first time. Furthermore, the quantum computing control program causes the computer to perform the following process: Calculates the first energy of the system based on the result of a second calculation by the first quantum calculator (less than the first time) and information about the system. Moreover, the quantum computing control program causes the computer to perform the following process: Midway through a calculation based on the first calculation conditions, Second, among a plurality of quantum calculators, begins a calculation of the quantum state based on second calculation conditions, which are determined based on the first energy.

[0016] In addition, a quantum computing control method is provided in one embodiment.

[0017] In addition, an information processing device is provided in one embodiment.

[0018] The effects of the invention

[0019] In one embodiment, the present invention can shorten the computation time of quantum computing.

[0020] The above and other objects, features and advantages of the present invention will become clearer from the following description in conjunction with the accompanying drawings illustrating exemplary preferred embodiments of the invention. Attached Figure Description

[0021] Figure 1 This is a diagram illustrating an example of the quantum computing control method and information processing apparatus of the first embodiment.

[0022] Figure 2 This is a block diagram illustrating a hardware example of an information processing device.

[0023] Figure 3 This is a block diagram illustrating a functional example of an information processing device.

[0024] Figure 4This is a flowchart (1) illustrating an example of the processing steps of a quantum computing control method.

[0025] Figure 5 This is a flowchart (2) illustrating an example of the processing steps of a quantum computing control method.

[0026] Figure 6 This is a flowchart (3) illustrating an example of the processing steps of a quantum computing control method.

[0027] Figure 7 This is a flowchart illustrating the processing steps of a comparative example of a quantum computing control method.

[0028] Figure 8 This is a graph (Figure 1) illustrating an example relationship between the number of repetitions of the calculation and the accuracy of the energy calculation.

[0029] Figure 9 This is a graph (Figure 2) illustrating an example of the relationship between the number of repetitions of the calculation and the accuracy of the energy calculation.

[0030] Figure 10 This is a graph showing the difference in processing time between the quantum computing control methods of the second embodiment and the comparative example.

[0031] Figure 11 This is a figure showing an example of the simulation results. Detailed Implementation

[0032] The following description, with reference to the accompanying drawings, illustrates the methods for carrying out the invention.

[0033] (First Embodiment)

[0034] Figure 1 This is a diagram illustrating an example of the quantum computing control method and information processing apparatus of the first embodiment.

[0035] The information processing device 10 of the first embodiment controls a plurality of quantum calculators 12a1, 12a2, ..., 12aQ to calculate (search) the ground state energy and ground state of the system.

[0036] Quantum calculators 12a1 to 12aQ can be used in various applications, such as quantum calculators based on superconducting qubits or quantum calculators that use the color centers of diamond as qubits.

[0037] Each of the quantum calculators 12a1 to 12aQ calculates the quantum state of the system to be calculated according to the calculation conditions set by the information processing device 10. For example, each of the quantum calculators 12a1 to 12aQ performs a prescribed quantum calculation (quantum operation) on multiple qubits according to the set calculation conditions. The values ​​of the multiple qubits measured after the quantum calculation become the quantum state of the system as the calculation result. In the case of quantum chemical calculation as a quantum calculation, the system to be calculated is a system containing multiple atoms or molecules.

[0038] In the case of performing VQE-based quantum computing, the energy of the system is represented by the following equation (1).

[0039] [Formula 1]

[0040]

[0041] In equation (1), θ (denoted as a vector) is the optimization variable, representing the computational conditions in the quantum calculator 12a1~12aQ. θ is, for example, a parameter that determines the angle of the quantum operation (spin rotation operation) on the qubit. ψ(θ) represents the quantum state of the system obtained through quantum operation. H is the Hamiltonian, which reflects the magnitude of the Coulomb interaction between electron atoms and the Coulomb interaction between electrons in quantum chemical calculations, and is determined by the distance between atoms, the distance between molecules (hereinafter referred to as R), etc. The quantum state with the minimum energy when θ and R are varied is the ground state (or a state close to it) that we want to find, and the energy at this time is the ground state energy (or an energy close to it).

[0042] The information processing device 10 has a storage unit 11 and a processing unit 12.

[0043] Storage unit 11 is a volatile storage device such as RAM (Random Access Memory) or a non-volatile storage device such as HDD (Hard Disk Drive) or flash memory.

[0044] Storage unit 11 stores information about the system used in quantum computing as the object of computation. For example, parameters representing the Hamiltonian of the system and information about the required computational accuracy are stored in storage unit 11.

[0045] The processing unit 12 is implemented using a processor such as a CPU (Central Processing Unit) or a DSP (Digital Signal Processor) as hardware. However, the processing unit 12 may also include application-specific electronic circuits such as ASICs (Application Specific Integrated Circuits) or FPGAs (Field Programmable Gate Arrays). The processor executes programs stored in memory such as RAM. For example, it executes a quantum computing control program. In addition, a collection of multiple processors is sometimes referred to as a "multiprocessor" or simply a "processor".

[0046] The processing unit 12 performs the following processing.

[0047] Processing unit 12 causes the first quantum calculator among the quantum calculators 12a1 to 12aQ that calculate the quantum state of the system to be calculated to repeat the calculation of the quantum state for the first number of times (hereinafter N times) under the first calculation condition. For example, processing unit 12 as follows Figure 1 In this way, θ = θ0 is set as an example of the first calculation condition, and the quantum calculator 12a1 performs N quantum state calculations (quantum computation).

[0048] Furthermore, the processing unit 12 calculates the first energy of the system based on the calculation results of the second number of calculations (hereinafter sN times) less than N times by the first quantum calculator and the system information (information on the Hamiltonian). s is the prediction execution ratio, a value less than 1. For example, the processing unit 12 calculates the energy based on the quantum states obtained through each quantum calculation (the quantum states of sN times) when the quantum calculator 12a1 performs sN quantum calculations based on θ = θ0, as follows.

[0049] In equation (1), H can be expressed as in equation (2) below.

[0050] [Formula 2]

[0051]

[0052] In equation (2), O i It is the tensor product of the Pauli matrices for quantum operations. The Pauli matrix, also known as the Pauli operator, consists of four matrices: X, Y, Z, and I (the identity matrix). h represents the coefficients of the real numbers. i For each R, it is pre-stored in storage unit 11. i is an integer from 1 to L. That is, H can be generated by L h. i O i The sum and representation of L. For example, L depends on the type of molecule and the basis functions used in the calculation.

[0053] The energy of a certain θ can be expressed as shown in equation (3).

[0054] [Formula 3]

[0055]

[0056] Here, when we assume that the probability of the number of qubits in state |1> being even is p0 and the probability of it being odd is p1 in each quantum computation, p0 and p1 can be expressed as shown in the following equation (4).

[0057] [Formula 4]

[0058]

[0059] That is, <ψ(θ)|O i For example, |ψ(θ)> can be expressed as in equation (5) below.

[0060] [Formula 5]

[0061] <ψ(θ)|O i |ψ(θ)>=2p0-1 (5)

[0062] When dealing with tensor product O i The measured p0 was replaced with p i0 When, equation (3) can be expressed as in equation (6) below.

[0063] [Formula 6]

[0064]

[0065] That is, it is possible to find p i0 We can calculate E by finding p1, where the number of qubits in state |1> is odd.

[0066] Processing unit 12 calculates p based on the calculation results of sN calculations (n ​​= sN). i0 , using p i0 E is calculated as an example of the first energy according to equation (6). 0s , as E.

[0067] Furthermore, during quantum computation based on the first quantum calculator, the processing unit 12 causes the second quantum calculator among quantum calculators 12a1 to 12aQ to begin quantum computation based on a second computation condition, which is determined based on the first energy. For example, during quantum computation based on quantum calculator 12a1, the processing unit 12 causes quantum calculator 12a2 to begin quantum computation based on θ = θ 1s Quantum computing, θ=θ1s Based on the calculated E 0s And this is an example of the second calculation condition that determines the outcome.

[0068] Processing Unit 12 is based on E 0s For example, using the simultaneous perturbation probability approximation or successive quadratic programming method to determine θ in a way that reduces energy. 1s .

[0069] Furthermore, the processing unit 12 calculates the second energy of the system based on the Nth calculation result of the first quantum calculator and the system information (the Hamiltonian information). For example, the processing unit 12 calculates the aforementioned p based on the Nth calculation result (Nth quantum state) of the quantum calculator 12a1. i0 , using p i0 E0, as an example of the second energy, is calculated according to equation (6), and is taken as E. E0 is based on the ratio of E to E. 0s The energy obtained from the results of more quantum computing is therefore more accurate than E. 0s high.

[0070] Then, the processing unit 12 determines whether to enable the second quantum calculator to perform quantum calculation according to a third calculation condition that is different from the second calculation condition, based on whether the difference between the first energy and the second energy is below a predetermined value (p).

[0071] For example, processing unit 12 in E 0s The difference between E0 and |E0 is |E 0s When -E0| is less than or equal to p, that is, when |E 0s In the case of -E0|≦p ( Figure 1 Case 1), allowing the quantum calculator 12a2 to continue based on the second computational condition (θ=θ 1s Quantum computing, where p is, for example, the final required computational precision input by the user. In the case of performing quantum chemical calculations, for example, 1.6 × 10⁻⁶ is used. -3 hartree is p.

[0072] On the other hand, in |E 0s When -E0| is greater than p, that is, when |E 0s In the case of -E0|>p ( Figure 1 In case 2), the processing unit 12 causes the quantum calculator 12a2 to perform quantum computation based on the third computation condition. In this case, the quantum computation under the second computation condition is interrupted in the quantum calculator 12a2, and quantum computation based on the third computation condition (θ=θ1) begins. The third computation condition is determined based on the second energy and using the same method as the second computation condition described above.

[0073] Processing unit 12 repeats the above-described processing for other computational conditions. The energy obtained through this processing converges towards the ground state energy. Processing unit 12, for example, outputs the system's energy obtained after performing quantum computation for a specified type of computational condition, along with the applied computational condition (θ), as the computational result (search result). Figure 1 In the example, θ = θ M This becomes the final computational condition for application. Furthermore, in the case of performing quantum chemical calculations, the aforementioned processing is performed on each R.

[0074] The processing unit 12 can output the calculation results to a display device (not shown) for display, or it can output the calculation results to a device external to the information processing device 10. Furthermore, the processing unit 12 can also store the calculation results in the storage unit 11.

[0075] In addition, if the processing unit 12 meets the prescribed convergence conditions (e.g., the amount of energy variation is within a prescribed range), it may terminate the processing without performing quantum computation based on the new computation conditions.

[0076] In the quantum computing control method of the first embodiment described above, the information processing device 10 causes the first quantum calculator to repeatedly calculate the quantum state of the system under a first computing condition, and causes the second quantum calculator to start calculating under a second computing condition based on a first energy obtained midway through the calculation. Thus, quantum calculations based on multiple computing conditions are performed in parallel, thereby shortening the calculation time.

[0077] Furthermore, the information processing device 10 calculates the second energy of the system based on the quantum state and system information obtained through N calculations by the first quantum calculator. Moreover, if the difference between the first energy and the second energy is greater than p, the information processing device 10 causes the second quantum calculator to interrupt quantum calculations based on the second calculation condition and begin quantum calculations based on a third calculation condition, which is determined based on the second energy. As described above, E0, as an example of the second energy, is based on a value greater than E, as an example of the first energy. 0s The energy obtained from the results of more quantum computing is therefore more accurate than E. 0s Therefore, by performing quantum computation based on the third computational condition determined by the second energy, it is possible to suppress the reduction in computational accuracy.

[0078] The above processing is a speculative processing (hereinafter referred to as speculative processing), but it differs from previous speculative processing in the following aspects.

[0079] In previous speculative processing, the results of previous stages of processing were used as input and referenced as the basis for the judgment. For example, if a certain branch (if statement) has been mostly judged as true so far, it will also be assumed to be true and processed speculatively in this case.

[0080] In contrast, in the quantum computing control method of the first embodiment described above, the input (computation conditions) for the next stage of repeated computation is obtained based on the results obtained midway through repeated computation based on certain computation conditions. In VQE, the computational precision becomes on the order of 1 / √n relative to the variable n representing the number of repeated computations, and the results obtained midway through repeated computations are mostly correct to some extent. Therefore, such speculative processing is possible.

[0081] Furthermore, it is speculated that a smaller execution ratio s indicates the use of more quantum calculators, but correspondingly, the number of parallel operations increases, and the computation time is expected to be further reduced.

[0082] (Second Implementation)

[0083] The second implementation method will now be described.

[0084] Figure 2 This is a block diagram illustrating a hardware example of an information processing device.

[0085] The information processing device 20 includes a CPU 21, RAM 22, HDD 23, image signal processing unit 24, input signal processing unit 25, media reader 26, communication interface 27, and interface 28. These units are connected to a bus.

[0086] CPU 21 is a processor containing arithmetic circuitry that executes program commands. CPU 21 loads at least a portion of the program and data stored in HDD 23 into RAM 22 and executes the program. Furthermore, CPU 21 may have multiple processor cores, and information processing device 20 may also have multiple processors. Multiple processors or processor cores can be used to execute the processes described below in parallel. In addition, a collection of multiple processors (multiprocessors) is also referred to as a "processor".

[0087] RAM22 is a volatile semiconductor memory that temporarily stores the program executed by CPU21 and the data used by CPU21 in its operations. Alternatively, the information processing device 20 may also have memory other than RAM, and may have multiple types of memory.

[0088] HDD23 is a non-volatile storage device that stores programs and data of software such as the operating system (OS), middleware, and application software. The programs may include, for example, quantum computing control programs that control quantum computing. Furthermore, the information processing device 20 may include other types of storage devices such as flash memory and SSDs (Solid State Drives), and may also include multiple non-volatile storage devices.

[0089] The image signal processing unit 24 outputs an image to the display 24a connected to the information processing device 20 according to the command from the CPU 21. The display 24a can be a CRT (Cathode Ray Tube) display, a liquid crystal display (LCD), a plasma display panel (PDP), an organic EL (OEL) display, or the like.

[0090] The input signal processing unit 25 obtains input signals from the input device 25a connected to the information processing device 20 and outputs them to the CPU 21. The input device 25a can be a mouse, touch panel, trackball, or other pointing device, a keyboard, a remote controller, a push-button switch, etc. Furthermore, multiple types of input devices can be connected to the information processing device 20.

[0091] The media reader 26 is a reading device that reads programs and data recorded on the recording medium 26a. The recording medium 26a can be, for example, a magnetic disk, an optical disk, a magnetic disk (MO), or a semiconductor memory. Magnetic disks include floppy disks (FD) and HDDs. Optical disks include CDs (Compact Discs) and DVDs (Digital Versatile Discs).

[0092] The media reader 26 copies programs and data read from the recording medium 26a to other recording media such as RAM 22 and HDD 23. The read program is executed by, for example, CPU 21. Alternatively, the recording medium 26a can also be a portable recording medium, sometimes used for distributing programs and data. Furthermore, the recording medium 26a and HDD 23 are sometimes referred to as computer-readable recording media.

[0093] Communication interface 27 is an interface that connects to network 27a and communicates with other information processing devices via network 27a. Communication interface 27 can be a wired communication interface that connects to a communication device such as a switch using a cable, or a wireless communication interface that connects to a base station using a wireless link.

[0094] Interface 28 communicates with quantum calculators 28a1, 28a2, ..., 28aQ. Interface 28 can, for example, transmit various computation conditions and control signals to quantum calculators 28a1 to 28aQ or receive quantum computation results (quantum states) based on quantum calculators 28a1 to 28aQ.

[0095] The functions and processing steps of the information processing device 20 will be explained below.

[0096] Figure 3 This is a block diagram illustrating a functional example of an information processing device.

[0097] The information processing device 20 includes an information acquisition unit 30, a Hamiltonian information storage unit 31, an energy calculation unit 32, a prediction and determination unit 33, a calculation condition determination unit 34, a calculation condition setting unit 35, a calculation execution instruction unit 36, and a calculation result output unit 37. The Hamiltonian information storage unit 31 can be installed, for example, using a storage area secured in RAM 22 or HDD 23. The information acquisition unit 30, energy calculation unit 32, prediction and determination unit 33, calculation condition determination unit 34, calculation condition setting unit 35, calculation execution instruction unit 36, and calculation result output unit 37 can be installed, for example, using a program module executed by CPU 21.

[0098] The information acquisition unit 30 acquires the calculation precision (p mentioned above) input by the user through operation of the input device 25a, and the information of the system as the object of calculation, namely the Hamiltonian (h shown in the aforementioned equation (2)). i ).

[0099] Hamiltonian information storage unit 31 stores Hamiltonian information acquired by information acquisition unit 30.

[0100] The energy calculation unit 32 calculates the system's energy based on the quantum state and Hamiltonian information calculated by the quantum calculators 28a1 to 28aQ, according to the aforementioned equation (6). The energy calculation unit 32 calculates the energy based on the results of sN (s < 1) quantum calculations or N quantum calculations based on a certain calculation condition. The current number of calculations is notified from the calculation execution instruction unit 36. Alternatively, the energy calculation unit 32 can also calculate the energy based on the current quantum calculation results when the number of calculations is n = sN or n = N.

[0101] The prediction and determination unit 33 determines whether the difference between the energy calculated based on the results of sN quantum calculations and the energy calculated based on the results of N quantum calculations is p or less. p is, for example, the calculation accuracy obtained by the information acquisition unit 30.

[0102] The calculation condition determination unit 34 determines θ, representing the calculation conditions in the quantum calculators 28a1 to 28aQ, based on the energy calculated by the energy calculation unit 32 and the determination result of the prediction determination unit 33. The calculation condition determination unit 34 determines θ in a way that reduces the energy, for example, by using the simultaneous perturbation probability approximation or the successive quadratic programming method.

[0103] The calculation condition setting unit 35 sets the θ determined by the calculation condition determination unit 34 to the quantum calculators 28a1 to 28aQ that are not currently performing calculations.

[0104] The calculation execution instruction unit 36 ​​instructs the quantum calculator, whose calculation condition setting unit 35 has set θ, to perform the calculation.

[0105] The calculation result output unit 37 outputs, for example, the energy of the system obtained after performing quantum computation under specified computational conditions, and the applied computational conditions (θ) as the calculation result (search result). The calculation result output unit 37 can output and display the calculation result on the display 24a, or it can send the calculation result to other information processing devices via the network 27a. Furthermore, the calculation result output unit 37 can also store the calculation result in a storage device such as an HDD 23.

[0106] Figure 4 , Figure 5 and Figure 6 This is a flowchart illustrating an example of the processing steps in a quantum computing control method. Figure 4 The diagram shows a control example of enabling a quantum calculator to perform quantum calculations according to the first calculation condition.

[0107] First, the information acquisition unit 30 acquires information on the calculation precision (p) and Hamiltonian input by the user through operation of the input device 25a, etc. (step S10).

[0108] The calculation condition setting unit 35 sets an initial value of θ0 for one of the quantum calculators 28a1 to 28aQ as the first calculation condition (step S11).

[0109] The computation execution instruction unit 36 ​​initializes the variable n1, which represents the number of repetitions of the quantum computation under the first computation condition, to 1 (step S12), and instructs the quantum calculator with θ0 set to execute the quantum computation (step S13). Thus, one quantum computation based on θ0 is performed.

[0110] The calculation execution instruction unit 36 ​​determines whether n1 = sN (step S14). If it is determined that n1 is not sN, the calculation execution instruction unit 36 ​​determines whether n1 = N (step S15).

[0111] If the calculation execution instruction unit 36 ​​determines that n1 is not N, it sets n1 to n1+1 (step S16) and repeats the process from step S13.

[0112] In the process of step S14, if the calculation execution instruction unit 36 ​​determines that n1 = sN, the energy calculation unit 32 calculates E according to the aforementioned formula (6). 0s (Step S17). The energy calculation unit 32, for example, calculates the probability (p) that the number of qubits in state |1> is even in each of the aforementioned quantum calculations, based on the results of the quantum calculations n1 = sN. i0 ), using p i0 Calculate E 0s E is used as E in equation (6).

[0113] After the processing in step S17, the calculation condition determination unit 34 calculates based on E 0s , determines θ 1s As the second calculation condition (step S18). Then, the calculation condition setting unit 35 sets θ 1s Set up the quantum calculators currently not performing calculations in quantum calculators 28a1 to 28aQ (step S19). Then, begin. Figure 5 The processing of the second calculation condition shown (step S20) continues, but the processing of the first calculation condition continues, repeating the processing from step S15.

[0114] In step S15, if the calculation execution instruction unit 36 ​​determines that n1 = N, the energy calculation unit 32 calculates E0 according to the aforementioned equation (6) (step S21). The energy calculation unit 32 calculates p based on the quantum calculation results of n1 = N times. i0 , using p i0 Calculate E0, which is E in equation (6).

[0115] After the processing in step S21, the prediction and determination unit 33 determines E. 0s The difference between E0 and |E0 is |E 0s -E0| Is it below p (step S22).

[0116] In the inference and determination section 33, it is determined to be |E 0s -E0| replaces the aforementioned θ if it is not below p. 1s The calculation condition determination unit 34 determines θ1, which will be used as the second calculation condition, based on E0 (step S23). Then, the calculation condition setting unit 35 sets θ1 as the second calculation condition. 1sA quantum calculator, replacing θ 1s Then, θ1 is set (step S24). Next, the processing of the second calculation condition begins (step S25).

[0117] In step S22, the prediction and determination unit 33 determines that |E 0s When -E0| is below p, or after the processing in step S25, the processing of the first calculation condition ends.

[0118] Figure 5 The diagram shows a control example of enabling the quantum calculator to perform calculations according to the second calculation condition.

[0119] The calculation execution instruction unit 36 ​​initializes the variable n2, which represents the number of repetitions of the quantum computation under the second calculation condition, to 1 (step S30), and sets θ1 or θ 1s The quantum calculator instructs the execution of quantum computation (step S31). Thus, execution is based on θ1 or θ 1s One quantum computation.

[0120] The calculation execution instruction unit 36 ​​determines whether n2 = sN (step S32). If it is determined that n2 is not sN, the calculation execution instruction unit 36 ​​determines whether n2 = N (step S33).

[0121] If the calculation execution instruction unit 36 ​​determines that n2 is not N, it sets n2 to n2+1 (step S34) and repeats the process from step S31.

[0122] In step S32, if the calculation execution instruction unit 36 ​​determines that n2 = sN, the energy calculation unit 32 calculates E according to the aforementioned formula (6). 1s (Step S35). The energy calculation unit 32 calculates based on θ1 or θ 1s The aforementioned p is calculated using the results of n2 = sN quantum calculations. i0 , using p i0 Calculate E 1s E is used as E in equation (6).

[0123] After the processing in step S35, the calculation condition determination unit 34 calculates based on E 1s Determine θ 2s This is used as the third calculation condition (step S36). Then, the calculation condition setting unit 35 sets θ... 2s The quantum calculators currently not performing calculations are set in quantum calculators 28a1 to 28aQ (step S37). Then, the processing of the third calculation condition begins (step S38), but the processing of the second calculation condition continues, and the processing from step S33 onwards is repeated.

[0124] In step S33, if the calculation execution instruction unit 36 ​​determines that n2 = N, the energy calculation unit 32 calculates E1 according to the aforementioned equation (6) (step S39). The energy calculation unit 32 calculates p based on the quantum calculation results of n2 = N times. i0 , using p i0 Calculate E1, which is E in equation (6).

[0125] After the processing in step S39, the prediction and determination unit 33 determines E. 1s The difference between E1 and |E1 is |E1|. 1s -E1| Is it below p (step S40).

[0126] In the inference and determination section 33, it is determined to be |E 1s -E1| replaces the aforementioned θ if it is not below p. 2s The calculation condition determination unit 34 determines θ2, which will be used as the third calculation condition, based on E1 (step S41). Then, the calculation condition setting unit 35 sets θ... 2s A quantum calculator, replacing θ 2s Then, θ2 is set (step S42). Next, the processing of the third calculation condition begins (step S43).

[0127] In the processing of step S40, the prediction and determination unit 33 determines that |E 1s When -E1| is below p, or after the processing in step S43, the processing of the second calculation condition ends.

[0128] The processing after the third calculation condition is also the same as... Figure 5 The same process applies. However, regarding the final calculation conditions, for example, the following... Figure 6 The processing is shown.

[0129] Figure 6 The diagram illustrates a control example for enabling a quantum calculator to perform calculations based on final computational conditions. This is done when using computational conditions of type M+1 (θ0~θ...). M In the case of ), the final calculation condition is θ. M .

[0130] The computation execution instruction unit 36 ​​will use the variable n, which represents the number of repetitions of the quantum computation for the final computation conditions. M+1 Initialize to 1 (step S50), and set θ M or θ Ms The quantum calculator instructs the execution of quantum computation (step S51). Thus, execution is based on θ. M or θ Ms One quantum computation.

[0131] The calculation execution instruction unit 36 ​​determines whether n M+1=N (step S52). The calculation execution instruction unit 36 ​​determines that it is not n. M+1 If the value is N, let it be n. M+1 =n M+1 +1 (step S53), repeat the process from step S51.

[0132] In step S52, the execution instruction unit 36 ​​determines that n is n. M+1 When N = N, the energy calculation unit 32 calculates E according to the aforementioned equation (6). M (Step S54). The energy calculation unit 32 calculates based on θ. M or θ Ms n M+1 =N quantum computation results to calculate p i0 , using p i0 Calculate E M E is used as E in equation (6).

[0133] After the processing in step S54, the calculation result output unit 37 outputs the calculation result (step S55). Thus, the processing of the final calculation conditions ends. For example, the calculation result output unit 37 outputs E calculated in step S54. M and the computational conditions applied (θ) M or θ Ms () is used as the calculation result.

[0134] Furthermore, in the case of performing quantum chemical calculations, the aforementioned processing is performed on R, which is the distance between atoms and the distance between molecules.

[0135] Figures 4-6 The processing order is just one example, and the processing order can be changed appropriately.

[0136] Before explaining the effects of the quantum computing control method described above, the following comparative example will be given, in which the processing of each computational condition is performed sequentially rather than speculatively.

[0137] (Comparative Example)

[0138] Figure 7 This is a flowchart illustrating the processing steps of a comparative example of a quantum computing control method.

[0139] In the comparative example of quantum computing control processing, firstly, the initial value of θ, i.e., θ0, which serves as the computation condition, is set in the quantum calculator (step S60), the variable n, representing the number of repetitions of the quantum computation, is initialized to 1 (step S61), and the execution of the quantum computation is instructed to the quantum calculator (step S62). Thus, one quantum computation is performed.

[0140] Then, determine whether n = N (step S63). If it is determined that n = N, set it to n = n + 1 (step S64) and repeat the process from step S62.

[0141] If n = N, then based on the results of the quantum computations performed n = N times, calculate E as represented by equation (6) (step S65). Then, determine whether the computation conditions are the final computation conditions (in...). Figure 7 In the example, θ = θ M (Step S66).

[0142] If it is determined that it is not the final calculation condition, θ is updated based on E calculated in step S65 (step S67), and the process from step S61 is repeated to process the new calculation condition.

[0143] If the calculation condition is determined to be the final calculation condition in step S66, the calculation result is output (step S68), and the quantum computing control process ends.

[0144] Figure 8 and Figure 9 This is a graph illustrating one example of the relationship between the number of repetitions of the calculation and the accuracy of the energy calculation. In Figure 8 and Figure 9 The following example illustrates how, through simulation, using θ = π / 10 as the calculation condition, the energy of a hydrogen molecule was calculated when the intermolecular distance, R, was set to 1. Figure 8 In the above, let the number of repetitions, N, be 100. Figure 9 In this diagram, N is set to 1000. The horizontal axis represents energy (in Hartley units), and the vertical axis represents the number of times the calculated energy occurs.

[0145] like Figure 8 Therefore, with N=100, a large error occurs compared to the known correct solution (energy = -0.99 Hartley) in the above calculation conditions. For example... Figure 9 Therefore, when N=1000, the error becomes smaller.

[0146] Given that the standard deviation of the energy is 1.6 × 10⁻⁶ -3 Hartley's calculations need to be set to N = 20000, with a standard deviation of 1.6 × 10⁻⁶. -3 Hartley is an example of the precision required in quantum chemical calculations.

[0147] As described above, the processing of each computational condition is repeated extensively. Therefore, when applying the quantum computing control method of the aforementioned comparative example, which performs processing based on multiple computational conditions sequentially, the computation time becomes longer.

[0148] Figure 10 This is a graph showing the difference in processing time between the quantum computing control methods of the second embodiment and the comparative example. Figure 10 The example shown illustrates the control of quantum computing based on computational conditions of type M+1.

[0149] In the comparative example of quantum computing control methods, θ = θ0 ~ θ is used as the computational condition for the M+1 class. M The quantum computing is performed serially N times.

[0150] In contrast, the quantum computing control method of the second embodiment performs speculative processing. Figure 10 In the example, midway through N quantum calculations based on θ = θ0 (when n0 = sN), a calculation based on θ = θ0 was initiated. 1s Quantum computing. Furthermore, when n0 = N, |E 0s -E0| is below p, therefore, continue based on θ=θ 1s Quantum computing.

[0151] Furthermore, based on θ = θ 1s Midway through N quantum calculations (when n1 = sN), a process based on θ = θ began. 2s Quantum computing. Figure 10 In the example, when n1 = N, |E 1s -E1| is greater than p, therefore, the interrupt is based on θ = θ 2s Quantum computing, based on θ = θ², has begun.

[0152] In the quantum computing control method of the second embodiment, as long as |E is generated once... is -E i In the case where |≦p (i is an integer from 0 to M) (the case where the hypothesis is successful), the time to completion can be shortened compared to the quantum computing control method of the comparative example, based on the final computation condition (θ=θ). M The processing time up to quantum computing.

[0153] (Example of simulation results)

[0154] Figure 11 This is a graph showing an example of simulation results. The horizontal axis represents the prediction execution ratio s, the left vertical axis represents the processing time and resources used (number of quantum calculators × quantum computing execution time) when the prediction execution ratio s = 1 is set to 100%, and the right vertical axis represents the prediction success rate.

[0155] In addition, Figure 11The following calculation example is shown: To simplify the calculation, assume N = 100, p = 0.1, and θ is not determined by energy, but is predetermined as θ0 = 0 × π / 10, θ1 = 1 × π / 10, ...

[0156] θ9=9×π / 10.

[0157] Simulation result 70 shows the prediction success rate relative to the prediction execution ratio s (determined as |E|). is -E i Simulation result 71 shows the resource usage relative to the predicted execution ratio s (the ratio of |≦p). Simulation result 72 shows the processing time relative to the predicted execution ratio s.

[0158] When the speculative execution ratio s is reduced, the resource usage increases as shown in simulation result 71 due to the decrease in the speculative success rate. However, as seen in simulation result 72, there is a tendency for processing time to decrease when the speculative execution ratio s is reduced.

[0159] Furthermore, as mentioned above, the aforementioned processing can be achieved by having the information processing device 20 execute a program.

[0160] The program can be pre-recorded on a computer-readable recording medium (e.g., recording medium 26a). Examples of recording media include magnetic disks, optical disks, optical discs, semiconductor memory, etc. Magnetic disks include FDs and HDDs. Optical disks include CDs, CD-Rs (Recordable) / RWs (Rewritable), DVDs, and DVD-Rs / RWs. Sometimes programs are distributed while recorded on portable recording media. In this case, the program can also be copied from the portable recording medium to other recording media (e.g., HDD 23) and executed.

[0161] The foregoing description is merely illustrative of the principles of the invention. Furthermore, those skilled in the art can make numerous modifications and alterations. The invention is not limited to the precise structures and applications shown and described above; all corresponding modifications and equivalents are considered to be within the scope of the invention based on the appended claims and their equivalents.

[0162] Explanation of reference numerals in the attached figures

[0163] 10. Information processing device

[0164] 11 Storage Department

[0165] 12 Processing Department

[0166] 12a1~12aQ Quantum Calculator

Claims

1. A computer-readable non-volatile storage medium storing a quantum computing control program that causes at least one computer to perform the following processing: The first quantum calculator among a plurality of quantum calculators that calculate the quantum state of the system repeats the calculation of the quantum state based on the first calculation conditions a first time. Based on the information from the system and the calculation result of the second time (fewer than the first time) by the first quantum calculator, the first energy of the system is obtained. Midway through a calculation based on the first calculation condition, a second quantum calculator among the plurality of quantum calculators begins a calculation based on the quantum state under a second calculation condition determined by the first energy.

2. The computer-readable non-volatile storage medium according to claim 1, wherein, The process also includes: Based on the information and the calculation result of the first iteration by the first quantum calculator, the second energy of the system is obtained. If the difference between the first energy and the second energy is below a predetermined value, the second quantum calculator continues to perform calculations based on the second calculation conditions until the number of calculations reaches the first number.

3. The computer-readable non-volatile storage medium according to claim 2, wherein, The process also includes: If the difference is greater than the specified value, the second quantum calculator is interrupted from calculation based on the second calculation condition and begins calculation based on the third calculation condition, which is determined based on the second energy.

4. The computer-readable non-volatile storage medium according to claim 2, wherein, The specified value refers to the calculation precision.

5. A quantum computing control method, wherein, The computer will perform the following processing: The first quantum calculator among a plurality of quantum calculators that calculate the quantum state of the system repeats the calculation of the quantum state based on the first calculation conditions a first time. Based on the information from the system and the calculation result of the second time (fewer than the first time) by the first quantum calculator, the first energy of the system is obtained. Midway through a calculation based on the first calculation condition, a second quantum calculator among the plurality of quantum calculators begins a calculation based on the quantum state under a second calculation condition determined by the first energy.

6. The quantum computing control method according to claim 5, wherein, The process also includes: Based on the information and the calculation result of the first iteration by the first quantum calculator, the second energy of the system is obtained. If the difference between the first energy and the second energy is below a predetermined value, the second quantum calculator continues to perform calculations based on the second calculation conditions until the number of calculations reaches the first number.

7. The quantum computing control method according to claim 6, wherein, The process also includes: If the difference is greater than the specified value, the second quantum calculator is interrupted from calculation based on the second calculation condition and begins calculation based on the third calculation condition, which is determined based on the second energy.

8. The quantum computing control method according to claim 6, wherein, The specified value refers to the calculation precision.

9. An information processing apparatus having a processing unit that performs the following processing: The first quantum calculator among multiple quantum calculators of the quantum state of the computing system repeats the computation based on the first computation condition a first time for the first quantum calculator. Based on the information from the system and the calculation result of the second time (fewer than the first time) by the first quantum calculator, the first energy of the system is obtained. Midway through a calculation based on the first calculation condition, a second quantum calculator among the plurality of quantum calculators begins a calculation based on the quantum state under a second calculation condition determined by the first energy.

Citation Information

Patent Citations

  • Simulation system, method, and program

    JP2010271755A

  • Simultaneous execution of request processing and request analysis.

    JP2013513875A

  • Method of calculating electronic state, electronic state calculation device and computer program

    WO2012023563A1

  • Quantum information processing method, classical computer, quantum computer, hybrid system, quantum information processing program, and data structure for finding a differential of energy

    CA3137475A1