Methods, apparatus, devices, and storage media of determining pulse parameters

By decomposing the fusion target state in quantum computing into sub-target states and optimizing the pulse parameters of each sub-target state, the problem of low computational efficiency of the GRAPE algorithm in the case of multiple qubits is solved, and more efficient pulse parameter determination is achieved.

CN117151234BActive Publication Date: 2026-06-12HUAWEI TECH CO LTD

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
HUAWEI TECH CO LTD
Filing Date
2022-05-23
Publication Date
2026-06-12

Smart Images

  • Figure CN117151234B_ABST
    Figure CN117151234B_ABST
Patent Text Reader

Abstract

Embodiments of the present application disclose a method, device and equipment for determining pulse parameters, and a storage medium, and belong to the technical field of quantum computing. The method comprises: obtaining a fusion target state corresponding to N qubits, wherein N is a positive integer; decomposing the fusion target state into M sub-target states, wherein M is a positive integer less than or equal to N; for each sub-target state, determining a first pulse parameter of a control pulse used for evolving a corresponding initial state into the sub-target state; and determining a pulse parameter of a control pulse used for evolving an initial state corresponding to the fusion target state into the fusion target state according to the first pulse parameter. The present application can solve the problem of low efficiency in determining pulse parameters in quantum computing of multiple qubits.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of communication technology, and in particular to a method, apparatus, device, and storage medium for determining pulse parameters. Background Technology

[0002] In quantum computing, it is necessary to evolve a specified number of qubits from an initial state to a target state to achieve quantum state preparation. Currently, gradient ascent pulse engineering (GRAPE) is often used to calculate pulse parameters, which are then used to control a pulse generator to produce corresponding control pulses. These control pulses are applied to the qubits to achieve quantum state preparation (also known as quantum state transfer or quantum state evolution).

[0003] GRAPE is computationally efficient when calculating the pulse parameters for the control pulses used to evolve a single qubit from its initial state to its target state. However, when calculating the pulse parameters for the control pulses used to evolve multiple qubits from their initial states to a fused target state, the computational efficiency of GRAPE decreases as the number of qubits increases. Summary of the Invention

[0004] This application provides a method, apparatus, device, and storage medium for determining pulse parameters, which can improve the computational efficiency when calculating pulse parameters corresponding to multiple qubits. The technical solution is as follows:

[0005] Firstly, a method for determining pulse parameters is provided, the method comprising:

[0006] Obtain the fusion target state corresponding to N qubits, where N is a positive integer. Decompose the fusion target state into M sub-target states, where M is a positive integer less than or equal to N. For each sub-target state, determine the first pulse parameter for the control pulse used to evolve the corresponding initial state into the sub-target state. Based on the first pulse parameter, determine the pulse parameter for the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state.

[0007] In the scheme provided in this application embodiment, the fusion target state is first decomposed into multiple sub-target states, each sub-target state corresponding to at least one qubit. Then, the pulse parameters of the control pulses required for the initial state to evolve into the sub-target state are determined respectively, thereby obtaining the pulse parameters of the control pulses required to evolve the initial state into the fusion target state. In this application embodiment, instead of directly calculating the pulse parameters of the control pulses required for the initial state to evolve into the fusion target state, the fusion target state is first decomposed into multiple sub-target states, each sub-target state corresponding to fewer qubits than the fusion target state. Thus, the efficiency of calculating the pulse parameters of the control pulses required for the initial state to evolve into the sub-target state is higher than that of directly calculating the pulse parameters corresponding to the fusion target state.

[0008] In one possible implementation, when decomposing the fusion target state, a second pulse parameter is also obtained for the control pulses used to decompose the fusion target state into M sub-target states. Then, based on the first and second pulse parameters, pulse parameters for the control pulses used to evolve the initial state corresponding to the fusion target state into the fusion target state are determined.

[0009] In one possible implementation, the decomposition of the target state for fusion can be specifically processed as follows:

[0010] The fused target state is de-entangled to obtain the corresponding M sub-target states, and the second pulse parameter of the control pulse used to evolve the fused target state into the corresponding M sub-target states.

[0011] In one possible implementation, when determining the first pulse parameter for the control pulse used to evolve the corresponding initial state into the sub-target state, the problem can be considered in reverse: the sub-target state can be taken as the initial state, and the corresponding initial state can be taken as the target state. Therefore, the processing can be as follows:

[0012] For each sub-target state, determine the third pulse parameter for the control pulse used to evolve the sub-target state into the corresponding sub-target state;

[0013] Based on the third pulse parameter, the first pulse parameter for the control pulse used to evolve the corresponding initial state into the sub-target state is determined.

[0014] Here, assuming that for any sub-target state, the third pulse parameter includes pulse parameters corresponding to x time slices, then the pulse parameter corresponding to the xth time slice in the third pulse parameter is taken as the pulse parameter corresponding to the 1st time slice in the first pulse parameter, the pulse parameter corresponding to the (x-1)th time slice in the third pulse parameter is taken as the pulse parameter corresponding to the 2nd time slice in the first pulse parameter, and so on, to obtain the first pulse parameter corresponding to each sub-target state.

[0015] In one possible implementation, the GRAPE algorithm can be used to determine the third pulse parameter of the control pulse used to evolve the sub-target state into the corresponding initial state.

[0016] In one possible implementation, the GRAPE algorithm can also be used to directly obtain the first pulse parameters.

[0017] Secondly, an apparatus for determining pulse parameters is provided, the apparatus comprising:

[0018] The acquisition module is used to acquire the fusion target state corresponding to N qubits, where N is a positive integer;

[0019] The decomposition module is used to decompose the fused target state into M sub-target states, where M is a positive integer less than or equal to N;

[0020] The determining module is configured to, for each sub-target state, determine a first pulse parameter for a control pulse used to evolve the corresponding initial state into the sub-target state; and, based on the first pulse parameter, determine a pulse parameter for a control pulse used to evolve the initial state corresponding to the fused target state into the fused target state.

[0021] In one possible implementation, the decomposition module is used for:

[0022] Determine the second pulse parameter of the control pulse used to decompose the fused target state into M sub-target states, and obtain the M sub-target states;

[0023] The determining module is used for:

[0024] Based on the first pulse parameter and the second pulse parameter, pulse parameters for the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state are determined.

[0025] In one possible implementation, the decomposition module is used for:

[0026] The fused target state is de-entangled to obtain M corresponding sub-target states, and a second pulse parameter for the control pulse used to evolve the fused target state into the corresponding M sub-target states.

[0027] In one possible implementation, the determining module is configured to:

[0028] For each sub-target state, a third pulse parameter is determined for the control pulse used to evolve the sub-target state into the corresponding sub-target state;

[0029] Based on the third pulse parameter, a first pulse parameter is determined for the control pulse used to evolve the corresponding initial state into the sub-target state.

[0030] In one possible implementation, the determining module is used for:

[0031] GRAPE is used to determine the pulse parameters of the control pulse used to evolve the sub-target state into the corresponding initial state.

[0032] Thirdly, a quantum computing device is provided, comprising a processor, a pulse generator, and a quantum chip, wherein:

[0033] The processor is used to execute the method for determining pulse parameters as described in the first aspect and various possible implementations thereof, and the pulse generator is used to generate control pulses based on the pulse parameters determined by the processor and apply them to the corresponding qubits of the quantum chip.

[0034] Fourthly, a readable storage medium is provided, wherein at least one instruction is stored therein, the at least one instruction being loaded and executed by a processor to implement the method for determining pulse parameters as described in the first aspect and various possible implementations thereof.

[0035] Fifthly, a computer program product is provided, the computer program product including at least one instruction, the at least one instruction being loaded and executed by a processor to implement the method for determining pulse parameters as described in the first aspect and various possible implementations of the first aspect. Attached Figure Description

[0036] Figure 1 This is a schematic diagram of an implementation scenario provided in an embodiment of this application;

[0037] Figure 2 This is a flowchart of a method for determining pulse parameters provided in an embodiment of this application;

[0038] Figure 3 This is a schematic diagram of a method for determining pulse parameters provided in an embodiment of this application;

[0039] Figure 4 This is a schematic diagram of a method for determining pulse parameters provided in an embodiment of this application;

[0040] Figure 5 This is a schematic diagram of a method for determining pulse parameters provided in an embodiment of this application;

[0041] Figure 6 This is an efficiency comparison chart provided in an embodiment of this application;

[0042] Figure 7 This is a schematic diagram of a device for determining pulse parameters provided in an embodiment of this application;

[0043] Figure 8 This is a schematic diagram of the structure of a quantum computing device provided in an embodiment of this application. Detailed Implementation

[0044] To make the objectives, technical solutions, and advantages of this application clearer, the method for determining pulse parameters provided by this application is described below with reference to the accompanying drawings.

[0045] To facilitate understanding of this application, a brief explanation of quantum computing will be provided below.

[0046] Quantum computing is the process of changing the quantum state of a qubit by applying control pulses to it. This process of change in a qubit during quantum computing is typically called an evolutionary process. The state of a qubit at any given moment during this evolutionary process is called a quantum state. In a single quantum computation, the evolution of each qubit can also be called the evolution of the quantum system, which includes all the qubits involved in the evolutionary process.

[0047] A qubit is the basic unit for storing data in a quantum chip. Physically, it can be realized through a two-level quantum system, where the two levels correspond to the 0 and 1 states of the qubit, respectively. Compared to classical computers where bits can only be in the 0 or 1 state, in quantum computers, qubits can not only be in the 0 or 1 state, but also in a superposition of the 0 and 1 states.

[0048] The evolution of a quantum system is usually represented by a unitary operator U(t), called the evolution operator. The quantum system starts in the quantum state ρ(0), and the evolution over time t can be calculated using the evolution operator:

[0049]

[0050] At time t = 0, the evolution operator of the quantum system is U(0) = I, where I represents the identity transformation. Under the control pulses of total duration T, the evolution operator of the quantum system eventually becomes U(T), therefore the final quantum state of the evolution is:

[0051]

[0052] See Figure 1 The diagram illustrates an implementation scenario of an embodiment of this application. Figure 1 As shown, the method provided in this application embodiment can be implemented by a quantum computing device. The quantum computing device 100 includes a processor 10, a controller 20, and a quantum chip 30. The quantum chip 30 can be a superconducting quantum chip or a diamond center quantum chip, etc.

[0053] The processor 10 determines the pulse parameters of the control pulses used to drive the quantum chip 30 to perform quantum computing according to the quantum computing task, and sends the pulse parameters to the controller 20. The pulse parameters may include the amplitude, phase, frequency, etc. of the control pulses. The controller 20 includes a pulse generator 210, which generates control pulses based on the pulse parameters and applies the control pulses to the qubits of the quantum chip 30 to realize the evolution of the quantum system.

[0054] Each qubit is controlled by an individual control pulse. When a quantum computing task requires N qubits, the processor 10 needs to determine the pulse parameters of the control pulses corresponding to these N qubits based on the quantum computing task.

[0055] u 1 u 2 u 3 ......u N

[0056] Among them, u 1 u 2 u 3 ......u N Each represents a set of pulse parameters, and each set of pulse parameters includes pulse parameters used to generate x-direction control pulses and y-direction control pulses.

[0057] Furthermore, the duration T of the control pulse applied to the qubit is typically divided into n time slices, each with a duration of Δt. For any given qubit, the pulse parameters are identical within Δt. Therefore, the task is to determine the pulse parameters for each of the N qubits within each Δt.

[0058] u1, u2, u3...u n

[0059] in, k = 1, 2, 3...n. This represents the pulse parameters of the control pulse corresponding to the first qubit in the k-th time slice. This represents the pulse parameter of the control pulse corresponding to the second qubit in the k-th time slice, and so on.

[0060] It should be noted that the control pulse corresponding to a qubit is the same as the control pulse acting on that qubit, the pulse parameter corresponding to a qubit is the same as the pulse parameter of the control pulse acting on that qubit, and the pulse parameter corresponding to the target state is the same as the pulse parameter of the control pulse acting on the qubit corresponding to that target state.

[0061] Furthermore, the aforementioned quantum chip 30 can be a one-dimensional quantum chip with non-tunable qubit coupling, or it can be a one-dimensional quantum chip with tunable qubit coupling.

[0062] The following is a comparative description of the method for determining pulse parameters provided in the embodiments of this application and the methods for determining pulse parameters in related technologies:

[0063] When quantum computing tasks require execution on multiple qubits, current related technologies directly use the GRAPE algorithm to calculate the pulse parameters of the control pulses required for the evolution of the initial state into the fused target state.

[0064] The method for determining pulse parameters provided in this application first decomposes the fusion target state into multiple sub-target states, each corresponding to at least one qubit. Then, the pulse parameters of the control pulses required for the initial state to evolve into the sub-target state are determined for each sub-target state, thereby obtaining the pulse parameters of the control pulses required to evolve the initial state into the fusion target state. In this application embodiment, instead of directly calculating the pulse parameters of the control pulses required for the initial state to evolve into the fusion target state, the fusion target state is first decomposed into multiple sub-target states, each sub-target state having fewer qubits than the fusion target state. Therefore, calculating the pulse parameters of the control pulses required for the initial state to evolve into the sub-target state is more efficient than directly calculating the pulse parameters corresponding to the fusion target state.

[0065] The method for determining pulse parameters provided in this application will be described below with reference to specific embodiments.

[0066] See Figure 2 The method may include the following processing steps:

[0067] Step 60: Obtain the fusion target state corresponding to N qubits, where N is a positive integer.

[0068] In practice, during quantum computing, depending on the actual computing task, it is necessary to control pulses to act on N qubits in the quantum chip, so that these N qubits evolve from the initial state to the specified target state.

[0069] In a quantum computing device, the application program sends computing tasks to the processor. These tasks can include a quantum system consisting of N qubits and a fusion target state corresponding to these N qubits. The fusion target state is the tensor product of the target states corresponding to the N qubits.

[0070] After receiving the computational request, the processor needs to calculate the pulse parameters to be used based on the target fusion state of N qubits. Then, based on the pulse parameters, it controls the pulse generator to produce corresponding control pulses, which are applied to the N qubits corresponding to the quantum system. This causes the N qubits to evolve under the influence of the control pulses, ultimately evolving into the target fusion state.

[0071] In addition, the time taken for this quantum computing task (i.e., the total duration of the control pulses acting on the qubits in this quantum computing task) T must be determined. T represents the time required from the application of the control pulses to the qubits until the qubits evolve into the fusion target state.

[0072] The value of T can be related to N. For example, a correspondence between T and N can be established in advance. After obtaining the target fusion state corresponding to N qubits, the value of N can be determined based on the correspondence between T and N, and then the corresponding value of T can be determined based on the correspondence between T and N. Furthermore, after determining T, it can be divided into n time slices of a preset duration. The preset duration can be related to T or be a fixed value.

[0073] Step 61: Determine the first pulse parameter of the control pulse used to decompose the fused target state into M sub-target states, and obtain the M sub-target states.

[0074] In practice, after obtaining the fusion target state corresponding to N qubits, the value of M is determined.

[0075] The possible values ​​of M are explained below;

[0076] Value Case 1

[0077] In different quantum computing tasks, the value of N is different, and correspondingly, the value of M can also be different.

[0078] For example, M can be equal to N. Or, for example, when N is greater than 4, M can be N-2.

[0079] Second case of value selection

[0080] The value of M can be a fixed value and is independent of the value of N.

[0081] For example, the value of M is 2.

[0082] Furthermore, after determining the value of M, the number of parts X to be divided into for the n time slices can be determined based on N and M. Specifically, the value of X is the number of decomposition layers required to decompose the fused target state into M sub-target states plus one. For two sub-targets decomposed from the same target state, the decomposition of these two sub-target states belongs to the same decomposition layer.

[0083] For example, if N and M are both 4, the fused target state is decomposed into a first sub-target state and a second sub-target state. This decomposition is the first level of decomposition. Then, the first and second sub-target states are further decomposed to obtain two sub-target states each. This decomposition of the first and second sub-target states is the second level of decomposition. Thus, the fused target state has four sub-target states, which are obtained by decomposing the first and second sub-target states. Therefore, it can be deduced that decomposing the fused target state into four sub-target states requires two levels of decomposition, so X is 2 + 1 = 3.

[0084] After obtaining the value of X, the n time slices are divided into X parts according to the preset allocation rules. For example, the n time slices are evenly divided into X parts, with each part containing the same number of time slices.

[0085] The following describes the processing of step 61, which may include the following sub-steps:

[0086] Step 610: Deentangle the fused target state to obtain the corresponding two sub-target states and the pulse parameters for the control pulse used to evolve the fused target state into the above two sub-target states.

[0087] Step 611: Determine whether the number of sub-target states obtained by unentanglement is M.

[0088] Step 612: If the number of sub-target states obtained by de-entanglement is M, then the sub-target states obtained by de-entanglement are taken as the M sub-target states corresponding to the fused target state, and the pulse parameters obtained in step 610 are obtained.

[0089] Step 613: If the number of sub-target states obtained by de-entanglement is less than M, then perform the following steps:

[0090] Step 6131: In the sub-target states obtained by untangling the current layer, obtain the sub-target states in sequence. Whenever a sub-target state is obtained, take the currently obtained sub-target state as the intermediate target state.

[0091] It should be noted that if a sub-target state is used as an intermediate target state, then subsequent sub-target states will no longer be considered as sub-target states obtained from de-entanglement, but will only be used as intermediate target states.

[0092] Step 6132: Deentangle the currently acquired intermediate target state to obtain two corresponding sub-target states. If the number of sub-target states obtained by deentanglement is M, then stop acquiring sub-target states for deentanglement and proceed to step 614. If the number of sub-target states obtained by deentanglement is less than M, continue to acquire sub-target states as intermediate target states and perform subsequent processing. If the currently acquired sub-target state is the last sub-target state obtained by deentanglement in the current layer, and the number of sub-target states obtained by deentanglement after using this sub-target state as an intermediate target state is still less than M, then proceed to step 6131.

[0093] Step 614: Take the sub-target state obtained by de-entanglement as the M sub-target states corresponding to the fused target state, and obtain the pulse parameters obtained in the process of obtaining the M sub-target states from the fused target state as the pulse parameters of the control pulse used to decompose the fused target state into the M sub-target states.

[0094] The following examples illustrate step 61:

[0095] Example 1, combined with the following Figure 3 Taking N=4, M=N=4, and the quantum computing task taking time T, divided into n time slices as an example, step 61 is explained as follows:

[0096] Assuming the target state for the fusion of the four qubits in the quantum system is ρ, and the corresponding initial state is... in, This represents the tensor product of the initial states |0><0| of 4 qubits.

[0097] First, the fused target state ρ is de-entangled to obtain two sub-target states ρ. A and ρ B , Then, if the sub-target state obtained after de-entanglement is 2 less than 4, then ρ is obtained sequentially. A and ρ B .

[0098] First obtain ρ A , will ρ A As an intermediate target state. For ρ A Deentanglement is performed to obtain the two corresponding sub-target states ρ. A1 and ρ A2 , The number of sub-target states obtained from the current de-entanglement is determined to be 3, which is less than 4. (Because ρ) A The entanglement has been resolved, so ρ A No longer considered a sub-target state, the only sub-target state at this point is ρ. B ρ A1 and ρ A2 ).

[0099] Since the number of sub-target states obtained from de-entanglement is currently 3, which is less than 4, we continue to obtain ρ. B , will ρ B As an intermediate target state. For ρ B Deentanglement is performed to obtain the two corresponding sub-target states ρ. B1 and ρ B2 , The number of sub-target states obtained from the current de-entanglement is determined to be 4. (Because ρ) B The entanglement has been resolved, so ρ B No longer considered a sub-target state, the only sub-target state at this point is ρ. A1 ρ A2 ρ B1 and ρ B2 .

[0100] Since the number of sub-target states obtained from de-entanglement is currently 4, the sub-target state corresponding to ρ is determined to be ρ. A1 ρ A2 ρ B1 and, and obtain the evolution of ρ into The pulse parameters of the control pulse, used to control ρ A Evolved into The pulse parameters of the control pulse, and the pulse used to make ρ B Evolved into The pulse parameters of the control pulse are used as the pulse parameters of the control pulse used to decompose the fused target state into M sub-target states.

[0101] After the above deentanglement process, it can be determined that two layers of decomposition are required, so T needs to be divided into 3 parts, denoted as T1, T2, and T3. Among them, T1 includes n1 time slices, T2 includes n2 time slices, and T3 includes n3 time slices, where n1 + n2 + n3 = n.

[0102] Example 2, combined with the following Figure 4 Taking N=4, M=N-1=3, and the quantum computing task taking time T, divided into n time slices, as an example, step 61 is explained as follows:

[0103] Assuming the target state for the fusion of the four qubits in the quantum system is ρ, and the corresponding initial state is... in, This represents the tensor product of the initial states |0><0| of 4 qubits.

[0104] First, the fused target state ρ is de-entangled to obtain two sub-target states ρ. A and ρ B , Then, if the sub-target state obtained after de-entanglement is 2 less than 4, then ρ is obtained sequentially. A and ρ B .

[0105] First obtain ρ A , will ρ A As an intermediate target state. For ρ A Deentanglement is performed to obtain the two corresponding sub-target states ρ. A1 and ρ A2 , The number of sub-target states obtained from the current unentanglement is determined to be 3.

[0106] Since the number of sub-target states obtained from de-entanglement is currently 3, the sub-target state corresponding to ρ is determined to be ρ. A1 ρ A2 and ρ B And obtain the data used to evolve ρ into The pulse parameters of the control pulse, and the pulse used to control ρ A Evolved into The pulse parameters of the control pulse.

[0107] After the above deentanglement process, it can be determined that two layers of decomposition are required, so T needs to be divided into 3 parts, denoted as T1, T2, and T3. Among them, T1 includes n1 time slices, T2 includes n2 time slices, and T3 includes n3 time slices, where n1 + n2 + n3 = n.

[0108] Example 3, combined with the following Figure 5 Taking N=4, M=2, and the quantum computing task taking time T, divided into n time slices as an example, step 61 is explained as follows:

[0109] Assuming the target state for the fusion of the four qubits in the quantum system is ρ, and the corresponding initial state is... in, This represents the tensor product of the initial states |0><0| of 4 qubits.

[0110] First, the fused target state ρ is de-entangled to obtain two sub-target states ρ. A and ρ B , Then, if the sub-target state obtained after de-entanglement is 2, then the sub-target state corresponding to ρ is determined to be ρ. A and ρ B And obtain the data used to evolve ρ into The pulse parameters of the control pulse.

[0111] After the above deentanglement process, it can be determined that two layers of decomposition are required. Therefore, T needs to be divided into two parts, denoted as T1 and T2. T1 includes n1 time slices, and T2 includes n2 time slices, where n1 + n2 = n.

[0112] The following is an example of deentanglement of ρ to obtain ρ. A and ρ B Let's take an example to illustrate how to de-entangle:

[0113] When the evolution operator (unitary operator) U(t) acts on the fusion target state ρ, we get Let the optimization function be F p =t r (ρ A ρ A ), where ρ A =t rB (ρ(t)). Where F p t represents the degree of entanglement of the fusion target state ρ. rB () represents the function for finding the trajectory. Using the gradient descent method, adjust the impulse parameters in U(t) until F... p =1, or the iteration threshold is reached, or F is obtained after two iterations. p The difference is less than the threshold. Therefore, ρ can be obtained. A Then according to ρ can be obtained B The pulse parameters used in the last iteration are those used to evolve ρ into... The pulse parameters of the control pulse.

[0114] Combination Figure 3 As shown, by untangling ρ, we can obtain:

[0115]

[0116] Where T1 includes n1 time slices, the above formula can be written as:

[0117]

[0118] in, Each time slice contains the pulse parameters corresponding to the four qubits in the first time slice, the pulse parameters corresponding to the four qubits in the second time slice, and so on, for the four qubits in the n1th time slice. The pulse parameters contained therein are respectively with The pulse parameters contained in the n1 time slices are the same. Therefore, during the iterative process of untangling ρ, each iteration adjusts the pulse parameters corresponding to the four qubits in each of the n1 time slices. That is, for... as well as The pulse parameters corresponding to the four qubits are adjusted.

[0119] Similarly, by considering ρ A By untangling the entanglements, we can obtain:

[0120]

[0121] Where T2 includes n2 time slices, then the above ρ A The formula obtained from untangling can be written as:

[0122]

[0123] in, Each contains ρ within the (n1+1)th time slice A The two corresponding qubits represent the pulse parameters and ρ in the (n1+2)th time slice, respectively. A The pulse parameters corresponding to the two qubits... ρ in the (n1+n2)th time slice A The pulse parameters corresponding to the two qubits are as follows: The pulse parameters contained therein are respectively with The pulse parameters contained in are the same. Therefore, in the iterative process of untangling ρ, each iteration adjusts ρ within each of the n2 time slices. A The pulse parameters corresponding to the two qubits are, in other words, for as well as ρ A The pulse parameters corresponding to the two qubits are adjusted respectively.

[0124] Similarly, by considering ρ B By untangling the entanglements, we can obtain:

[0125]

[0126] Where T2 includes n2 time slices, then the above ρ B The formula obtained from untangling can be written as:

[0127]

[0128] in, Each contains ρ within the (n1+1)th time slice B The two corresponding qubits represent the pulse parameters and ρ in the (n1+2)th time slice, respectively. A The pulse parameters corresponding to the two qubits... ρ in the (n1+n2)th time slice B The pulse parameters corresponding to the two qubits are as follows: The pulse parameters contained therein are respectively with The pulse parameters contained in it are the same. Therefore, for ρ... B During the iterative process of untangling, each iteration adjusts ρ within each of the n2 time slices. B The pulse parameters corresponding to the two qubits are, in other words, for as well as ρ B The pulse parameters corresponding to the two qubits are adjusted respectively.

[0129] Step 62: For each sub-target state, determine the second pulse parameter for the control pulse used to evolve the sub-target state into the corresponding initial state.

[0130] In implementation, for each of the M sub-target states obtained in step 102, the Gradient Ascent Pulse Engineering (GRAPE) algorithm can be used to determine the pulse parameters of the control pulse used to evolve the sub-target state into the corresponding initial state. The following section combines... Figure 3 The GRAPE algorithm will be explained.

[0131] See Figure 3 , will ρ A1 Evolves into |0><0|, and ρ A2 Evolves into |0><0|, and ρ B1 Evolves into |0><0|, and ρ B2 The time taken to evolve into |0><0| is T3. That is, the time taken to evolve |0><0| into ρ is T3. A1 Evolving |0><0| into ρ A2 Evolving |0><0| into ρ B1 And the evolution of |0><0| into ρ B2 The time taken is also T3. T3 consists of n3 time slices, and within each time slice, each qubit corresponds to a set of pulse parameters. The GRAPE algorithm is used to determine ρ. A1 The pulse parameters corresponding to the corresponding qubit can be obtained through the following steps:

[0132] ρ A1 As the initial state, and taking |0><0| as the target state, then:

[0133] ρ A1 The formula for forward propagation is:

[0134]

[0135] The formula for backpropagation of |0><0| is:

[0136]

[0137] Where j∈[n1+n2+1, n], n=n1+n2+n3, U A1(j) Contains ρ A1 The corresponding pulse parameters of the qubit in the j-th time slice, Includes U j The same pulse parameters are used in the same way, and so on.

[0138] The iterative steps of the GRAPE algorithm are explained below:

[0139] (1) Initialize the above ρ A1 The values ​​of the impulse parameters included in each evolution operator in the formulas for forward propagation and |0><0| backward propagation.

[0140] (2) Calculate ρ j and γ j .

[0141] (3) Calculate ρ j and γ j The fidelity F.

[0142] (4) Determine whether the current iteration meets the iteration stopping condition (the iteration stopping condition is, for example, F equals the first threshold, or, for example, the absolute value of the difference between the fidelity F obtained in the current iteration and the fidelity F obtained in the previous iteration is less than the second threshold, where the first threshold is a value close to 1, such as 0.999999, and the second threshold is a smaller value, such as 1×10). -10 If the iteration stops when the iteration stops, the iteration stops; if the iteration stops when the iteration stops, the gradient descent method is used to adjust the values ​​of the impulse parameters contained in each evolution operator according to the preset step size, and then proceeds to step (2).

[0143] When the iteration stops, we can obtain:

[0144]

[0145] in, Here Each of them includes ρ A1 The pulse parameters of the corresponding qubit in the nth, n-1th, ..., n1+n2+1th time slices.

[0146] Similarly, the GRAPE algorithm is used to determine ρ. A2 The pulse parameters corresponding to the corresponding qubits can be obtained as follows:

[0147]

[0148] in, Here Each of them includes ρ A2 The pulse parameters of the corresponding qubit in the nth, n-1th, ..., n1+n2+1th time slices.

[0149] Similarly, the GRAPE algorithm is used to determine ρ. B1 The pulse parameters corresponding to the corresponding qubits can be obtained as follows:

[0150]

[0151] in, Here Each of them includes ρ B1 The pulse parameters of the corresponding qubit in the nth, n-1th, ..., n1+n2+1th time slices.

[0152] Similarly, the GRAPE algorithm is used to determine ρ. B2 The pulse parameters corresponding to the corresponding qubits can be obtained as follows:

[0153]

[0154] in, Here Each of them includes ρ B2 The pulse parameters of the corresponding qubit in the nth, n-1th, ..., n1+n2+1th time slices.

[0155] Step 63: Determine the pulse parameters of the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state based on the first pulse parameter and the second pulse parameter.

[0156] The following is combined Figure 3 The following explanation is provided for step 63:

[0157] Based on the formula obtained from untangling ρ: For ρ A The formula obtained by untangling: For ρ B The formula obtained by untangling: For ρ A1 The formula obtained using the GRAPE algorithm: For ρ A2 The formula obtained using the GRAPE algorithm: For ρ B1 The formula obtained using the GRAPE algorithm: For ρ B2 The formula obtained using the GRAPE algorithm: as well as. We can obtain:

[0158]

[0159] Among them, U n U n-1 ...U1 contains the pulse parameters corresponding to the four qubits in the nth time slice and the first time slice of the (n-1)th time slice.

[0160] After transforming the above formula, we get:

[0161]

[0162] That is, the pulse parameters corresponding to the four qubits in the nth time slice calculated in steps 61 and 62 are used as the pulse parameters corresponding to the control pulses used to evolve the four qubits from the initial state to the fusion target state in the first time slice. The pulse parameters corresponding to the four qubits in the (n-1)th time slice are used as the pulse parameters corresponding to the control pulses used to evolve the four qubits from the initial state to the fusion target state in the second time slice. And so on, the pulse parameters corresponding to the control pulses used to evolve the four qubits from the initial state to the fusion target state in each of the n time slices can be obtained.

[0163] In this embodiment, instead of directly calculating the pulse parameters of the control pulses required for the initial state to evolve into the fusion target state, the fusion target state is first decomposed into multiple sub-target states. Then, the pulse parameters required for the initial state to evolve into the sub-target states are determined, thus obtaining the pulse parameters needed to evolve the initial state into the fusion target state. Since the number of qubits corresponding to each sub-target state is less than that of the fusion target state, the efficiency in determining the pulse parameters required for the initial state to evolve into the sub-target state is higher than that of directly calculating the pulse parameters required for the initial state to evolve into the fusion target state.

[0164] like Figure 6 As shown in the figure, experimental verification shows that the more qubits corresponding to the fused target state, the more efficient the method provided by the embodiments of this application is compared with the efficiency of directly using the GRAPE algorithm in related technologies.

[0165] Based on the same technical concept, embodiments of this application also provide a device for determining pulse parameters, which can be applied in quantum computing devices, such as... Figure 7 As shown, the device includes an acquisition module 710, a decomposition module 720, and a determination module 730, wherein:

[0166] The acquisition module 710 is used to acquire the fusion target state corresponding to N qubits, where N is a positive integer;

[0167] The decomposition module 720 is used to decompose the fused target state into M sub-target states, where M is a positive integer less than or equal to N;

[0168] The determining module 730 is configured to, for each sub-target state, determine a first pulse parameter for a control pulse used to evolve the initial state corresponding to the sub-target state into the sub-target state; and, based on the first pulse parameter, determine a pulse parameter for a control pulse used to evolve the initial state corresponding to the fused target state into the fused target state.

[0169] In one possible implementation, the decomposition module 720 is used for:

[0170] Determine the second pulse parameter of the control pulse used to decompose the fused target state into M sub-target states, and obtain the M sub-target states;

[0171] The determining module 730 is used for:

[0172] Based on the first pulse parameter and the second pulse parameter, pulse parameters for the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state are determined.

[0173] In one possible implementation, the decomposition module 720 is used for:

[0174] The fused target state is de-entangled to obtain M corresponding sub-target states, and a second pulse parameter for the control pulse used to evolve the fused target state into the corresponding M sub-target states.

[0175] In one possible implementation, the determining module 730 is configured to:

[0176] For each sub-target state, a third pulse parameter is determined for the control pulse used to evolve the sub-target state into the corresponding sub-target state;

[0177] Based on the third pulse parameter, a first pulse parameter is determined for the control pulse used to evolve the corresponding initial state into the sub-target state.

[0178] In one possible implementation, the determining module 730 is configured to:

[0179] The GRAPE algorithm is used to determine the pulse parameters of the control pulse used to evolve the sub-target state into the corresponding initial state.

[0180] In this embodiment, instead of directly calculating the pulse parameters of the control pulses required for the initial state to evolve into the fusion target state, the fusion target state is first decomposed into multiple sub-target states. Then, the pulse parameters required for the initial state to evolve into the sub-target states are determined, thus obtaining the pulse parameters needed to evolve the initial state into the fusion target state. Since the number of qubits corresponding to each sub-target state is less than that of the fusion target state, determining the pulse parameters required for the initial state to evolve into the sub-target state takes less time than directly calculating them, resulting in higher efficiency.

[0181] It should be noted that the apparatus for determining pulse parameters provided in the above embodiments is only an example of the division of the functional modules described above. In practical applications, the above functions can be assigned to different functional modules as needed, that is, the internal structure of the quantum computing device can be divided into different functional modules to complete all or part of the functions described above. Furthermore, the apparatus for determining pulse parameters and the method for determining pulse parameters provided in the above embodiments belong to the same concept, and their specific implementation process is detailed in the method embodiments, which will not be repeated here.

[0182] This application provides a quantum computing device. See also... Figure 8 The quantum computing device 800 may include a processor 801, a controller 802, and a quantum chip 803. The processor 801 and the controller 802 can be connected via a data bus. The controller 802 and the quantum chip 803 can be connected via a control bus.

[0183] The processor 801 determines the pulse parameters of the control pulses used to drive the quantum chip 803 to perform quantum computing based on the quantum problem to be calculated in the quantum computing process, and sends the pulse parameters to the controller 802. The controller 802 generates control pulses based on the pulse parameters and applies the control pulses to the qubits of the quantum chip 803. The quantum chip 803 performs quantum computing under the driving force of the control field formed by the control pulses. Optionally, the quantum chip 803 can be a superconducting quantum chip or a diamond center quantum chip, etc., and this embodiment does not specifically limit its type.

[0184] Furthermore, to ensure the functionality of the processor 801, the quantum computing device 100 may also include a memory 804, a communication interface 805, and a bus 806. The overall functionality implemented by the processor 801, memory 804, communication interface 805, and bus 806 can be the same as that implemented by conventional computing devices.

[0185] Furthermore, in a quantum computing device, the number of processors 801 can be one or more.Figure 8 Only one processor 801 is shown. Optionally, processor 801 can be a central processing unit (CPU). If the quantum computing device has multiple processors 801, the multiple processors 801 can be of different types or can be the same. Optionally, the multiple processors of the quantum computing device can also be integrated into a multi-core processor.

[0186] The memory 804 stores computer instructions and data. The memory 804 can store the computer instructions and data required to implement the quantum computing method provided in this application. For example, the memory 804 can store the correspondence between quantum gates and the overall phase generated by the quantum gates acting on the qubits, as well as the conditions for performing quantum computing, etc. The memory 804 can be any one or any combination of the following storage media: non-volatile memory (such as read-only memory (ROM), solid-state disk (SSD), hard disk drive (HDD), optical disk, etc.), and volatile memory.

[0187] The communication interface 805 can be any one or any combination of the following devices: a network interface (such as an Ethernet interface), a wireless network card, or other devices with network access capabilities. The communication interface 805 is used for data communication between the quantum computing device and other computing devices. For example, other computing devices can use this communication interface 805 to send the correspondence between quantum gates and the overall phase to the quantum computing device 800 to update the correspondence stored in the quantum computing device 100.

[0188] Figure 8 Bus 806 is also illustrated as an example. Bus 806 connects processor 801 to memory 804 and communication interface 805. Thus, through bus 806, processor 801 can access memory 804 and interact with other computing devices via communication interface 805. Bus 806 can be divided into address bus, data bus, control bus, etc. For ease of illustration, Figure 8 The bus is represented by a single thick line, but this does not mean that there is only one bus or one type of bus.

[0189] This application also provides a computer-readable storage medium storing instructions or programs that are loaded and executed by a processor to implement the method for determining pulse parameters provided in this application.

[0190] This application also provides a computer program product, which includes instructions that are loaded and executed by a processor to implement the method for determining pulse parameters provided in this application.

[0191] In the above embodiments, implementation can be achieved entirely or partially through software, hardware, firmware, or any combination thereof. When implemented using software, it can be implemented entirely or partially in the form of a computer program product. The computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a device, they generate, in whole or in part, the processes or functions described in the embodiments of this application. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another website, computer, server, or data center via wired (e.g., coaxial cable, fiber optic cable, digital subscriber line) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium accessible to the device or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, and magnetic tape), an optical medium (e.g., Digital Video Disk (DVD), etc.), or a semiconductor medium (e.g., solid-state drive, etc.).

[0192] Those skilled in the art will understand that all or part of the steps of the above embodiments can be implemented by hardware or by a program instructing related hardware. The program can be stored in a computer-readable storage medium, such as a read-only memory, a disk, or an optical disk.

[0193] The above description is merely one embodiment of this application and is not intended to limit this application. Any modifications, equivalent substitutions, improvements, etc., made within the spirit and principles of this application should be included within the protection scope of this application.

Claims

1. A method for determining pulse parameters, characterized in that, The method includes: Obtain the fusion target state corresponding to N qubits, where N is a positive integer; The fusion target state is decomposed into M sub-target states, where M is a positive integer less than or equal to N; For each sub-target state, a first pulse parameter is determined for the control pulse used to evolve the initial state corresponding to the sub-target state into the sub-target state; Based on the first pulse parameter, determine the pulse parameter of the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state.

2. The method according to claim 1, characterized in that, The step of decomposing the fused target state into M sub-target states includes: Determine the second pulse parameter of the control pulse used to decompose the fused target state into M sub-target states, and obtain the M sub-target states; The step of determining the pulse parameters for the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state based on the first pulse parameters includes: Based on the first pulse parameter and the second pulse parameter, pulse parameters for the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state are determined.

3. The method according to claim 2, characterized in that, The step of determining the second pulse parameter for the control pulse used to decompose the fused target state into M sub-target states, and obtaining the M sub-target states, includes: The fused target state is de-entangled to obtain M corresponding sub-target states, and a second pulse parameter for the control pulse used to evolve the fused target state into the corresponding M sub-target states.

4. The method according to any one of claims 1-3, characterized in that, For each sub-target state, determining the first pulse parameter for the control pulse used to evolve the initial state corresponding to the sub-target state into the sub-target state includes: For each sub-target state, a third pulse parameter is determined for the control pulse used to evolve the sub-target state into the corresponding initial state; Based on the third pulse parameter, a first pulse parameter is determined for the control pulse used to evolve the initial state corresponding to the sub-target state into the sub-target state.

5. The method according to claim 4, characterized in that, For each sub-target state, the third pulse parameter for determining the control pulse used to evolve the sub-target state into the corresponding initial state includes: The gradient descent pulse optimization technique (GRAPE) is used to determine the pulse parameters of the control pulse used to evolve the sub-target state into the corresponding initial state.

6. A device for determining pulse parameters, characterized in that, The device includes: The acquisition module is used to acquire the fusion target state corresponding to N qubits, where N is a positive integer; The decomposition module is used to decompose the fused target state into M sub-target states, where M is a positive integer less than or equal to N; The determining module is configured to, for each sub-target state, determine a first pulse parameter for a control pulse used to evolve the initial state corresponding to the sub-target state into the sub-target state; and, based on the first pulse parameter, determine a pulse parameter for a control pulse used to evolve the initial state corresponding to the fused target state into the fused target state.

7. The apparatus according to claim 6, characterized in that, The decomposition module is used for: Determine the second pulse parameter of the control pulse used to decompose the fused target state into M sub-target states, and obtain the M sub-target states; The determining module is used for: Based on the first pulse parameter and the second pulse parameter, pulse parameters for the control pulse used to evolve the initial state corresponding to the fusion target state into the fusion target state are determined.

8. The apparatus according to claim 7, characterized in that, The decomposition module is used for: The fused target state is de-entangled to obtain M corresponding sub-target states, and a second pulse parameter for the control pulse used to evolve the fused target state into the corresponding M sub-target states.

9. The apparatus according to any one of claims 6-8, characterized in that, The determining module is used for: For each sub-target state, a third pulse parameter is determined for the control pulse used to evolve the sub-target state into the corresponding sub-target state; Based on the third pulse parameter, a first pulse parameter is determined for the control pulse used to evolve the initial state corresponding to the sub-target state into the sub-target state.

10. The apparatus according to claim 9, characterized in that, The determining module is used for: The gradient descent pulse optimization technique (GRAPE) is used to determine the pulse parameters of the control pulse used to evolve the sub-target state into the corresponding initial state.

11. A quantum computing device, characterized in that, The quantum computing device includes a processor, a pulse generator, and a quantum chip, wherein: The processor is used to execute the method for determining pulse parameters as described in any one of claims 1 to 5, and the pulse generator is used to generate control pulses based on the pulse parameters determined by the processor and apply them to the corresponding qubits of the quantum chip.

12. A readable storage medium, characterized in that, The readable storage medium stores at least one instruction, which is loaded and executed by a processor to implement the method for determining pulse parameters as described in any one of claims 1 to 5.