Gradient-based quantum assisted hamiltonian learning
Patent Information
- Application Number
- JP2025054051
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2021-09-03
- Filing Date
- 2025-03-27
- Publication Date
- 2025-10-10
AI Technical Summary
Classical methods struggle to accurately learn Hamiltonian parameters in large quantum systems, especially when the forward problem exceeds classical computational capabilities, and existing techniques are impractical or impossible to implement.
A gradient-based quantum-assisted approach using a classical processor and a quantum computer to iteratively adjust parameter estimates, calculating derivatives of a cost function with the quantum computer to minimize it, facilitating Hamiltonian learning in complex quantum systems.
Enables efficient learning of Hamiltonian parameters, particularly in classically intractable systems, providing significant speedups and accurate determination of molecular and crystalline structures using quantum computation.
Smart Images

Figure 00000000_0000_ABST
Abstract
Description
[Background technology]
[0001] Hamiltonian learning is the inverse problem of predicting experimental outcomes given a system Hamiltonian. Hamiltonian learning can be used for device characterization or to learn the structure of unknown quantum systems. Sufficiently small devices can be characterized through classical post-processing of experimental data using Bayesian, maximum likelihood, or machine learning methods. Whenever the forward problem goes beyond classical, accurate methods are not possible in large systems. Given sufficient control, experiments can be prevented from going beyond classical by performing experiments targeting small subsystems via mechanical decoupling pulses. Given sufficient control, this can be achieved by applying pulses to mechanically decouple the subsystem from its environment. It is also possible to learn the Hamiltonian from thermal or long-time mean state expectation values, which are easier to approximate classically. However, when neither technique is possible, the Hamiltonian learning problem becomes classically difficult, providing potential quantum computing applications beyond classical. Summary of the Invention [Means for solving the problem]
[0002] This specification describes systems, methods, devices, and other techniques for gradient-based, quantum-assisted Hamiltonian learning.
[0003] In general, one inventive aspect of the subject matter described herein can be implemented in a method that includes obtaining, by a classical processor, a plurality of experimental data points, each experimental data point generated according to a Hamiltonian with parameters having unknown values; and learning, by the classical processor, values of the parameters, comprising iteratively adjusting, by the classical processor, estimates of the parameters to minimize a cost function, the cost function being dependent on the plurality of experimental data points, and in each iteration, a derivative of the cost function with respect to each estimate of the parameters for the previous iteration is calculated using a quantum computer.
[0004] Other implementations of this aspect include computer programs recorded on one or more computer storage devices, each configured to perform the actions of a corresponding classical, quantum, or classical-quantum computer system, apparatus, and method. One or more classical and quantum computer systems may be configured to perform particular operations or actions by having software, firmware, hardware, or a combination thereof installed on the system that, in operation, causes the system to perform the actions. One or more computer programs may be configured to perform particular operations or actions by including instructions that, when executed by a data processing device, cause the device to perform the actions.
[0005] Each of the above and other implementations can optionally include one or more of the following features, alone or in combination: In some implementations, the experimental data points correspond to respective experiments performed in a quantum system, and the experiments comprise super-classical experiments.
[0006] In some implementations, the classical processor acquires experimental data points from the spectrometer through a classical connection.
[0007] In some implementations, the quantum computer comprises a noisy medium-scale quantum computing device.
[0008] In some implementations, calculating the derivative of the cost function with respect to the estimate of the parameters for the previous iteration using a quantum computer comprises using the quantum computer to simulate a unitary time evolution generated by a Hamiltonian, the unitary time evolution being interleaved with perturbations comprising Hermitian operators contained in the Hamiltonian.
[0009] In some implementations, the derivative comprises a gradient, each gradient of the cost function comprises multiple integrals, each integral comprises a respective integrand, each integrand comprises i) an expectation value of an observable used to generate the plurality of experimental data points given ii) a perturbed state of the quantum system used to generate the plurality of experimental data points, the state being perturbed using a Hermitian operator included in the Hamiltonian.
[0010] In some implementations, using the quantum computer to calculate derivatives of the cost function with respect to estimates of the parameters for a previous iteration comprises sending data from the classical processor to the quantum computer requesting the computation of each integrand of the plurality of integrals, and receiving, by the classical processor, data from the quantum computer representing the results of the computation of each integrand of the plurality of integrals.
[0011] In some implementations, the method further comprises calculating, by a classical processor, the plurality of integrals through summation of data representing the results of calculation of each integrand of the plurality of integrals, and performing, by the classical processor, multiplication and addition operations using the calculated plurality of integrals to calculate a first derivative of the cost function with respect to an estimate of the parameters for a previous iteration.
[0012] In some implementations, the method further comprises the steps of repeatedly preparing, for a predetermined number of iterations, by a quantum computer a register of qubits in an initial quantum state, the initial quantum state comprising a mixed diagonal state in a computational basis; applying, by the quantum computer, a quantum circuit to the initial quantum state to obtain an evolved quantum state, the quantum circuit comprising a unitary time evolution operator interleaved with a controlled perturbation, the unitary time evolution operator simulating the unitary time evolution generated by a Hamiltonian, the controlled perturbation comprising a Hermitian operator included in the Hamiltonian; measuring observables of the evolved quantum state, the observables comprising observables used to generate a plurality of experimental data points; and calculating expectation values of the measured observables.
[0013] In some implementations, the quantum computer comprises a fault-tolerant quantum computing device.
[0014] In some implementations, calculating a derivative of the cost function with respect to the estimate of the parameters for the previous iteration using a quantum computer comprises using block coding to calculate the derivative of the cost function.
[0015] In some implementations, using the quantum computer to calculate a derivative of the cost function with respect to the estimate of the parameters for the previous iteration comprises sending data from the classical processor to the quantum computer requesting the calculation of the derivative of the cost function, and receiving data from the quantum computer by the classical processor representing the result of the calculation of the derivative of the cost function.
[0016] In some implementations, the method further comprises the steps of initializing, by the quantum computer, a control register of the qubit in an initial state; applying, by the quantum computer, a preparation unitary operator to the initial state to obtain a control state of the control register; applying, by the quantum computer, a selection unitary operator to the control state to obtain an evolution state of the control register, wherein the selection unitary operator selects a unitary operator to perform based on the control state of the control register; and measuring the evolution state of the control register.
[0017] In some implementations, each experimental data point corresponds to a respective experiment performed on the quantum system, and performing each experiment comprises preparing the quantum system in an initial state, applying a time evolution operator to the initial state to generate an evolving state, where the time evolution operator is generated by a Hamiltonian and an external time-dependent driving field, and measuring observables of the evolving state.
[0018] In some implementations, the number of experimental data points is equal to or greater than the number of parameters with unknown values.
[0019] In some implementations, the Hamiltonian comprises a linear combination of terms, each term comprising a respective parameter and a respective Hermitian operator.
[0020] In some implementations, the cost function comprises a first term and a second term, where the first term comprises a sum of squared differences between the estimated value of the parameter and the prior probability of the parameter, and the second term comprises a sum of squared differences between the experimental data points estimated using the estimated value of the parameter and the obtained experimental data points.
[0021] In some implementations, the derivatives comprise second derivatives, each second derivative of the cost function comprising a plurality of integrals, each integral comprising an integrand, the integrand comprising: i) expectation values of observables used to generate the plurality of experimental data points, given ii) perturbed states of a quantum system used to generate the plurality of experimental data points, where the state is perturbed using a Hermitian operator included in the Hamiltonian; or ii) expectation values of observables used to generate the plurality of experimental data points, given a commutator of a first Hermitian operator included in the Hamiltonian with the perturbed states of the quantum system used to generate the plurality of experimental data points, where the state is perturbed using a second Hermitian operator included in the Hamiltonian.
[0022] In some implementations, the derivative comprises a second derivative, and when the value of the cost function is within a predetermined distance from a global minimum, the second derivative of the cost function comprises a sum of products of integrals, each integral comprising an integrand, and the integrand comprises i) an expectation value of an observable used to generate the plurality of experimental data points given ii) a perturbed state of a quantum system used to generate the plurality of experimental data points, the state being perturbed using a Hermitian operator included in the Hamiltonian.
[0023] The subject matter described herein can be implemented in particular embodiments to realize one or more of the following advantages.
[0024] The presently described techniques can be used to learn Hamiltonian parameters, e.g., molecular nuclear spin Hamiltonians, from time-resolved measurements, e.g., spin-spin correlator measurements. The techniques can be implemented with both NISQ and fault-tolerant devices, where significant asymptotic speedups can be achieved. In addition, the presently described techniques can be applied to classically intractable NMR experiments, e.g., experiments in which dipolar coupling is strong and cannot be easily removed.
[0025] The details of one or more implementations of the subject matter herein are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, drawings, and claims. [Brief explanation of the drawings]
[0026] [Figure 1] FIG. 1 is a conceptual block diagram of an exemplary system for Hamiltonian learning. [Figure 2] FIG. 1 is a conceptual block diagram of an exemplary system for Hamiltonian learning using noisy intermediate-scale quantum devices. [Figure 3] FIG. 10 is an exemplary circuit diagram for estimating the experimental data points and integrands needed to calculate the first and second derivatives of a Hamiltonian learning cost function. [Figure 4] 1 is a flowchart of a first exemplary process for Hamiltonian training. [Figure 5] FIG. 1 is a conceptual block diagram of an exemplary system for Hamiltonian learning using fault-tolerant quantum devices. [Figure 6] FIG. 10 is an example circuit diagram for a fault-tolerant oracle used to compute the first and second derivatives of a Hamiltonian learning cost function. [Figure 7] 10 is a flowchart of a second exemplary process for Hamiltonian training. [Figure 8] FIG. 1 illustrates an exemplary quantum computing device that may be used to perform the quantum computing methods described herein. [Figure 9] FIG. 1 illustrates an exemplary classical processor that may be used to perform the classical computing methods described herein. DETAILED DESCRIPTION OF THE INVENTION
[0027] Like reference numbers and designations in the various drawings indicate like elements.
[0028] overview This specification describes techniques for learning unknown Hamiltonian parameters, e.g., parameters of the nuclear spin Hamiltonian of a molecular or material system, using a digital quantum computer and time-resolved measurements, e.g., from an NMR spectroscopy experiment. The techniques provide quantum computation over classical whenever the experiment is difficult to simulate classically. The techniques include quantum algorithms for estimating the cost function, gradient, and Hessian of the learning problem, providing implementations for both NISQ and FT cost models.
[0029] Example Operating Environment 1 shows a conceptual block diagram of an exemplary system 100 for Hamiltonian learning. The exemplary system 100 includes a classical processor 102 and a quantum processor 104. The classical processor 102 and the quantum processor 104 may exchange electronic communications over one or more networks, or may exchange communications in another manner, such as via one or more wired or wireless connections.
[0030] Classical processor 102 is configured to perform classical computations. Quantum processor 104 is configured to perform quantum computations. For convenience, classical processor 102 and quantum processor 104 are illustrated as separate entities. For example, quantum processor 104 may be a quantum processor operated by an external third party. However, in some implementations, classical processor 102 may be included within quantum processor 104. That is, quantum processor 104 may also include components for performing classical computing operations. In general, the classical computing components of a classical processor may be implemented as one or more classical computers having physical hardware such as that described with respect to FIG. 9, and the quantum computing components of quantum processor 104 may be implemented as a quantum computing device having physical hardware such as that described with respect to FIG. 8.
[0031] The classical processor 102 is configured to perform gradient-based Hamiltonian learning using the quantum processor 104. That is, the classical processor 102 processes time-resolved experimental data S obtained from the quantum system 106. x (t) 108, where x indexes the different sets of experiments.
[0032] Classical processor 102 can receive experimental data 108 as input from an external party, or can use, for example, quantum processor 104 or another quantum processor or sensor to probe quantum system 106 and generate experimental data 108. Experimental data 108 includes multiple experimental data points, where each experimental data point is generated according to a Hamiltonian that includes one or more parameters with unknown values. Each data point corresponds to a respective experiment, where the experiment is generated according to an initial quantum state preparation ρ x, the Hamiltonian to be learned and the external time-dependent driving Hamiltonian H x The time evolution of the initial quantum state by (t) and the observable O x The resulting data point (also referred to herein as signal) S x (t) is then
[0033]
number
[0034] where U x (t2,t1) is the coupled Hamiltonian H+H from t=t1~t2 x (t) is the time evolution operator generated by
[0035]
number
[0036] In some implementations, the initial quantum state and observables are expressed by the driving Hamiltonian H x By encoding the preparation and measurement terms on (t), we can make them independent of the experiment x, e.g., ρ x = ρ and O x =O (which can lead to a more accurate description of real-world experiments). Alternatively, the driving Hamiltonian H x If (t) is only used for preparation and measurement, this is ρ x and O x may be coded globally for H x (t)=0 and
[0037]
number
[0038] Set.
[0039] To define the training problem to be performed by the classical processor 102, the Hamiltonian to be trained is
[0040]
number
[0041] can be written in the form, where h n is the set of Hamiltonian parameters, and V n is a set of Hermitian operators. Any Hamiltonian can be written in this form. In some implementations, h n Some or all of the values of , are unknown. The classical processor 102 generates estimates of these unknown values.
[0042]
number
[0043] The system is configured to perform Hamiltonian learning according to the techniques described herein to calculate
[0044] To perform Hamiltonian learning, the classical processor iteratively adjusts estimates of the unknown parameters to minimize (or maximize, depending on the form of the cost function chosen) the cost function until a predetermined completion criterion is met, e.g., the value of the cost function converges within an acceptable / predefined threshold. The cost function may be or be based on a likelihood function, e.g., a standard deviation ω n Prior probability with
[0045]
number
[0046] Given each data point S x (t) is the standard deviation
[0047]
number
[0048] Assuming that the variables are drawn from an experimental population with
[0049]
number
[0050] can be given by, where:
[0051]
number
[0052] is the parameter estimate
[0053]
number
[0054] (Throughout this document, tildes denote quantities that are derived from estimated parameters rather than hidden parameters.)
[0055] On classical devices
[0056]
number
[0057] Although it cannot be estimated, implementing it on a quantum computer requires that the circuit evolves over time.
[0058]
number
[0059] However, performing such gradient-free optimization is usually impractical. Therefore, at each iteration, the classical processor 102 calculates the derivatives of the cost function with respect to the estimates of one or more parameters for the previous iteration. The derivatives may include the first derivative (gradient) and second derivative (Hessian) of the cost function. These derivatives are
[0060]
number
[0061]
number
[0062] where:
[0063]
number
[0064]
number
[0065]
number
[0066]
number
[0067] and
[0068]
number
[0069] is the forward-evolved (estimated) operator V in time from s to t. n and
[0070]
number
[0071] is the (estimated) state ρ at time t x That is, the gradient of the cost function includes multiple integrals (e.g., given by Equation 7), each of which includes a respective integrand (e.g., given by Equation 8), where the integrand is a function of i) the observables O used to generate the plurality of experimental data points 108 given the perturbed state of the quantum system used to generate the plurality of experimental data points 108. x where the state is given by the expectation value of the Hermitian operator V n (see, for example, Equation 3).
[0072] In Equation 6
[0073]
number
[0074] The term that depends on
[0075]
number
[0076] , so in some implementations, the classical processor 102
[0077]
number
[0078] Approximating {circumflex over (H)} may be practical when close to the global minimum of C[H], which may be obtained without extra cost to the gradient estimation.
[0079]
number
[0080] The covariance matrix Σ of the final estimate of
[0081]
number
[0082] It can be estimated as:
[0083] Classical processor 102 uses quantum processor 104 to calculate the first and second derivatives, for example, as given in Equations 5 and 6. For example, at each iteration, classical processor 102 can send a request 112 to quantum processor 104 to calculate some or all of the calculations needed to determine the derivatives given in Equations 5 and 6 for the current iteration. Classical processor 102 can then receive data representing results 114 of the requested calculations and can use these results in the iterative optimization of the cost function.
[0084] The types of computations required by classical processor 102 may vary based on the computational resources included in quantum processor 104. For example, as described below with reference to FIG. 2, in some implementations, quantum processor 104 may include a noisy intermediate scale quantum (NISQ) device. In these implementations, classical processor 102 may outsource some of the computations required to determine the derivatives, e.g., the computation of the integrands in Equations 8 and 10. As another example, as described below with reference to FIG. 5, in some implementations, quantum processor 104 may include a fault-tolerant (FT) quantum device. In these implementations, classical processor 102 may outsource the direct task of determining the derivatives given in Equations 5 and 6 (or the second terms in Equations 5 and 6).
[0085] Once the iterative optimization of the cost function meets a predetermined completion criterion, the classical processor 102 generates estimates 116 of the unknown Hamiltonian parameters.
[0086]
number
[0087] can be provided as output. The estimates can be used to determine properties of the quantum system that generated the experimental data, for example, to determine the molecular and / or crystalline structure of an unknown compound.
[0088] The Hamiltonian learning process performed by the classical processor 102 can be made robust, for example, to avoid getting stuck in a local minimum. x (t)=0), in which case the system Hamiltonian H|ξ a 〉=E a |ξ a〉's eigenbase |ξ a 〉 and inserting the two resolution identification information, the signal is then
[0089]
number
[0090] It takes the form, however,
[0091]
number
[0092] is.
[0093] The estimate is based on several parameters
[0094]
number
[0095] If the signal deviates by, up to the lowest order in perturbation theory, the estimated signal is
[0096]
number
[0097]
number
[0098] where X is the wave function |ξ a is a δ-independent constant resulting from a first-order correction to 〉. The second term in the cost function (Eq. 4) is then
[0099]
number
[0100] It takes the form 4t max〈ξ, which is independent of the system size. a |V n |ξ a 〉, the frequency is limited by the parameter h n Initial guess of
[0101]
number
[0102] If is within some δ, e.g.,
[0103]
number
[0104] and each V has a spectrum in [-1,1] n is defined, the classical processor 102
[0105]
number
[0106] This implies that robust Hamiltonian learning can be performed by first learning H only from experiments at
[0107] After convergence on this data, the variance of the parameter estimates can be estimated (using Equation 6), the estimate of δ can be improved, and the range of allowed t increased. max The error in the estimate is δ≦c / t for some c<1. max Assuming that we produce ε, then iterating this procedure over multiple orders will converge to some final error ε in O(|log(ε)|) steps.
[0108] The algorithms described herein for computing the cost function C[H] and its first and second derivatives can be applied to various types of quantum computers, e.g., NISQ and FT devices. Quantum algorithm optimization differs significantly when targeting noisy short-term versus FT long-term devices. In both cases, the integral in Equation 8 is discretized to
[0109]
number
[0110] where Σ i z i = t so that the weight z i >0 is chosen. (Integration
[0111]
number
[0112] (A two-dimensional discretization is possible for s as well.) i There are various methods for choosing both and . For example, the trapezoidal rule or the midpoint rule can be used. As another example, more complex Gaussian quadrature methods can be used, or a Monte Carlo approach can be taken, where points are chosen randomly. Each method suffers from a discretization error that goes to 0 as I → ∞. Both the FT and NISQ quantum methods described below primarily focus on [Σ i z i ]=t, and has at most a logarithmic dependence on I. This allows the method of integration to be chosen for simplicity and ease in circuit design (and associated gate implementation and physical qubit control requirements), rather than focusing on optimizing against discretization error.
[0113] Systems, algorithms, and circuits for near-term quantum computing 2 shows a conceptual block diagram of an exemplary system 200 for Hamiltonian learning using noisy intermediate-scale quantum (NISQ) devices. The exemplary system 200 includes similar components to those included in the exemplary system 100 of FIG. 1, except that the quantum processor 104 of FIG. 1 is a NISQ device 202.
[0114] In the NISQ era, it is beneficial to run the shortest quantum circuit possible for any application. To this end, in implementations where quantum processor 104 of FIG. 1 is NISQ device 202, only a portion of the computations required to compute the gradient or Hessian of the cost function are computed using NISQ device 202. In particular, classical processor 102 is configured such that NISQ device 202 computes the signal
[0115]
number
[0116] and the integrand
[0117]
number
[0118] and
[0119]
number
[0120] The classical processor 102 can send data 212 requesting that calculations be performed to calculate dC[H] / dh by performing the required integration 208, multiplication and summation operations 206 (see Equations 5, 6, 7, and 9). n and d 2 C[H] / dh n dh mTo classically calculate U, we can use the integrand and the data representing the signal calculation result 214. This means that the dynamics U x When (t,s) is difficult to simulate classically, it provides an exponential quantum advantage.
[0121] Integrand function
[0122]
number
[0123] and
[0124]
number
[0125] can be estimated using the Generalized Hadamard (see Figure 3) test, using one or two control bits, respectively. (These circuits are
[0126]
number
[0127] where cU is the unitary U controlled by the control qubit.) These circuits are based on V n Only unitary local control is required, making it particularly suitable for NISQ devices. n It is assumed in Figure 2 that V is unitary, but if this is not the case, then V n can be written as a linear combination of unitary operators, the circuit can be run for each unitary component separately, and the resulting expectations can be summed to produce the target result.
[0128] The circuit in Figure 2 is in the initial state ρ xIn the application described in this disclosure, these can be mixed diagonal states in the computational basis. x can be diagonal in the computational basis as well. Mixed state preparations require averaging over many pure state preparations. This means that multiple ρ x The computational basis state |n〉 is prepared, and then the circuit U is executed while O x The expectations of the sets of 〈n|U † O x Consider an example that yields a set of estimates of U|n〉. If this is repeated for all computational basis states independently, then each ρ x is diagonal in the computational basis, and the following expression is obtained:
[0129]
number
[0130] Initial distribution〈n|ρ x |n〉 is known, so 〈n|U † O x The estimate of U|n〉 may be used to calculate the target trace. In practice, it may not be necessary to prepare all states, and 〈n|ρ x It may be sufficient to sample from a distribution proportional to |n〉. In state-of-the-art quantum experiments, this can present slight difficulties, as it may be impractical to upload a new pulse sequence to re-prepare each state. One solution to this problem is to first prepare the qubits in the + basis and measure them before running the simulation / computation, which results in a new preparation each time.
[0131] Multiple points s i and r i Repeating the above procedure in (for fixed n and m) via Eq.
[0132]
number
[0133] and
[0134]
number
[0135] In principle, in NISQ devices, these times can be drawn randomly from the ranges [0,t] and [0,s]. In this case, each choice of starting state and time generates an independent random variable, and Hoeffding's inequality can be applied.
[0136]
number
[0137] For the estimation of, M repetitions of the experiment are
[0138]
number
[0139] An estimator that satisfies
[0140]
number
[0141] The number of samples required to generate and estimate this at a constant failure rate is
[0142]
number
[0143] Scale as (where
[0144]
number
[0145] suppresses the logarithmic factor in the parameters).
[0146]
number
[0147] For the estimation of, M repetitions of the experiment are
[0148]
number
[0149] An estimator that satisfies
[0150]
number
[0151] The number of samples required to generate and estimate this at a constant failure rate is
[0152]
number
[0153] This means that
[0154]
number
[0155] and
[0156]
number
[0157] This implies that can be estimated to a certain relative error using a number of samples that are independent of t.
[0158] For comparison with the fault-tolerant analysis below, the no-fast-forward theorem requires an average circuit depth of O(t) to implement each of the circuits in Figure 2, so we can use these methods to achieve up to a constant error ε.
[0159]
number
[0160] and
[0161]
number
[0162] The total gate count for estimating
[0163]
number
[0164] and
[0165]
number
[0166] By comparison, the circuit in Figure 2 can be used to scale up to a constant error ε
[0167]
number
[0168] The total gate count to estimate
[0169]
number
[0170] These estimates need to be combined to estimate the derivative in Equation 5. To calculate the total cost of estimating this to a certain error,
[0171]
number
[0172] ,
[0173]
number
[0174] , σ x,t ~σ, and ||O x It is assumed that ||~1 is independent of x and t, and that it is possible to optimize the number of replicates of each experiment to minimize the total gate count. It is also assumed that each experiment involves preparation and measurement interchangeably, and that the covariance between these parallel measurements is zero. Then, the total number of gates required to estimate a single derivative term up to the error ε is
[0175]
number
[0176] Scale as, where N x is the number of distinct experiments performed. The summation over t is calculated as S x depends on whether (t) is logarithmically sparsely or densely sampled. In the former case, the total number of gates is
[0177]
number
[0178] The latter scales as
[0179]
number
[0180] Scale as.
[0181] 3 shows an example circuit diagram for estimating the experimental data points and integrands needed to calculate the first and second derivatives of the Hamiltonian learning cost function. The circuit estimates the signal C[H], which is needed to calculate the first and second derivatives of the cost function C[H] (Equation 4).
[0182]
number
[0183] (Top) and integrand
[0184]
number
[0185] (center) and
[0186]
number
[0187] (bottom) contains a circuit for estimating ρ and (without control) U x Simulate (t,s) and control the perturbation V nIt has access to the preparation of the means to implement the function. The target integrand can be found to be the expected value of the product of the indicated operators, which can be retrieved (in NISQ) from repeated preparations and measurements.
[0188] 4 is a flowchart of a first exemplary process 400 for Hamiltonian training. For convenience, process 400 is described as being performed by a classical computing system in data communication with a quantum computer, e.g., a NISQ device. For example, classical processor 102 of FIG. 2 , appropriately programmed in accordance with this specification, can perform process 400.
[0189] The system acquires a plurality of experimental data points, where each experimental data point is generated (i.e., obtained through measurement) according to a Hamiltonian that includes one or more parameters with unknown values (step 402). Exemplary experimental data points are described above with reference to Equation 1 and Equation 2. In some implementations, the experimental data points may be acquired by performing respective nuclear magnetic resonance (NMR) experiments. In each NMR experiment, a sample of a molecule, crystal, or other material may be placed in a strong magnetic field. For example, the sample (which may initially be in thermal equilibrium) may be perturbed through the application of one or more magnetic field pulses (e.g., time-dependent radio frequency pulses that modulate a background magnetic field). The sample is allowed to evolve under the magnetic field for a period of time, which results in a time-dependent response to the magnetic field. This response, i.e., the free induction decay, contains information about the nuclear spin Hamiltonian it generates (a quantum Hamiltonian that interacts strongly due to its strong dipolar coupling), which itself contains information about the molecular or chemical structure of the sample. The response is measured to obtain a corresponding measured signal, e.g., as described above with respect to Equation 1.
[0190] The system iteratively adjusts estimates of one or more parameters to minimize a cost function (step 404). The cost function depends on multiple experimental data points and is given by Equation 4. At each iteration, a derivative of the cost function with respect to the parameter estimates for the previous iteration is calculated using a quantum computer. The derivative may include a first or second derivative, for example, as given by Equations 5 and 6. The system uses a quantum computer to simulate a unitary time evolution generated by a Hamiltonian, where the unitary time evolution is interleaved with perturbations involving Hermitian operators included in the Hamiltonian. Exemplary operations performed by the quantum computer are described above with reference to FIGS. 2 and 3.
[0191] Once a predetermined completion criterion is met, for example, the value of the cost function has converged, the system outputs the value of the parameter that minimizes the cost function as the learned value (step 406).
[0192] Systems, algorithms, and circuits for long-term quantum computing 5 shows a conceptual block diagram of an exemplary system 500 for Hamiltonian learning using fault-tolerant quantum devices. The exemplary system 500 includes similar components to those included in the exemplary system 100 of FIG. 1, except that the quantum processor 104 of FIG. 1 is an FT device 502.
[0193] In a fault-tolerant cost model, the FT device 502 performs the integration, multiplication, and summation over t and x in the second term of Equation 5 in a fully coherent manner. That is, the classical processor 102 can send data 512 requesting that the FT device 502 perform calculations to directly compute Equation 5 (or just the second term of Equation 5). The classical processor 102 can use data representing the results 514 of the calculations performed by the FT device 502 to perform iterative cost function optimization.
[0194]
Number
[0195] Assume that it is, then Trace(A)·Trace(B)=Trace
[0196]
Number
[0197] is
[0198]
Number
[0199]
Number
[0200] Using the fact that gives, where the approximation is an approximation from numerical integration. V n and O x As long as U is unitary 0 (x,t,s) can be confirmed to be unitary (also, if this is not the case, they can be decomposed as a linear combination of unitaries themselves). The second part of the second term in Equation 5 requires multiplication by the experimental signal S x (t). This signal then needs to be loaded onto the device. If simply executed, this can easily become the dominant cost in the circuit. To reduce this cost, it is possible to assume that S x (t) consists of a small number N w << Fourier components of T,
[0201]
Number
[0202] where φ x =0 or φ x =π / 2, and a x,k >0 is expected from the t=0 behavior of the signal.
[0203]
number
[0204] To write
[0205]
number
[0206]
number
[0207] where the operations acting on the different control qubits 0 and 1 are labeled. Under the above assumptions, U 1 (x,t,s) is also unitary, where s l,t and z l,t The points are the integration points and weights, respectively, but allow for the fact that the limits of the integration (and therefore both the points to be sampled and the sum width needed to multiply) depend on t. Both sums can then be block-coded using the LCU technique. These require control registers |x〉, |t〉, |l〉, and |k〉 (and other additional registers introduced below) to encode the summation variables, as well as SELECT and PREPARE unitaries. (Here, it is assumed that time |t〉 has some finite binary representation.) These registers, in turn, are x ~logN x , n t ~logKT, n l ~logL qubits, and n k ~logN wqubits, where 1 / K is the precision with which the time t is stored.
[0208] The SEL0 unitary selects the appropriate U to be implemented based on the control register. 0 (x,t,s l,t ) unitary. In other words, SEL0=Σ x,t,l |x〉|t〉|l〉〈l|〈t|〈x|U 0 (x,t,s l,t ) Similarly, SEL1=Σ x,t,l,k |x〉|t〉|l〉|k〉〈k|〈l|〈t|〈x|U 1 (x,t,s l,t ,k). In Figure 6, U x (t,s), O x , and W x It is shown how this can be implemented using oracle access to PREP (an implementation for this is described below). a The unitary state is the state that changes from the initial state |0〉 on the control register to the corresponding control state
[0209]
number
[0210]
number
[0211]
number
[0212]
number
[0213] For simplicity, garbage registers are omitted in these steps. Given these,
[0214]
number
[0215]
number
[0216] It can be checked that, where the circuit operates on a combined system and control register set. For a=1,2, PREP a ,SEL a to
[0217]
number
[0218] Using queries, we obtain an error of ε with a reliability of 1-δ. a An expectation estimation algorithm can be used to estimate these values up to
[0219]
number
[0220] Setting dC[H] / dh within ε with reliability 1-δ n gives an estimate of Σ when sampled at time t. i z l,t = t, so |S x (t)|≦1 and σ x,t =σ, λ1=λ2=N x / σ 2 (Σ sampled t t). The number of PREPARE and SELECT calls that need to be made to the oracle is then (compare with Equation 23):
[0221]
number
[0222] To make a heuristic comparison with the NISQ results, an oracle model is taken into account. The SELECT oracle requires time evolution up to T = max(t), so by the no-fast-forward theorem, each oracle call costs at most O(T). Therefore, in the sparse sampling case, the total computational complexity is O(σ 2 ε -1 N x T 2 ) but (ε -1 T savings), and in the dense sampling case, the total complexity is O(σ 2 ε -1 N x T 3 ) is (ε -1 T 2 Since NISQ methods typically cannot achieve linear scaling in simulation time, even larger savings are expected for simulating specific Hamiltonians using fault-tolerant quantum algorithms.
[0223] The computational complexity of SELECT unitary is controlled time evolution Σ x,t,l |x〉|t〉|l〉〈l|〈t|〈x|U x (s l,t ,0) and Σ x,t,l |x〉|t〉|l〉〈l|〈t|〈x|U x (t,s l,t ) is determined by the need to carry out (initial preparation Σ x |x〉〈x|W x (will be explained later). There are a wide range of options for implementing the time evolution. Which choice is optimal depends on the details of the Hamiltonian to be studied. For example, SELECT unitary could be implemented using a higher order product formula. This choice is near-optimal both for the proposed application of studying spin systems and because it allows for a relatively easy implementation of control. For practical purposes here, we will assume that the time evolution is experiment-independent, i.e., -U x (t,s)=Ux (t,s)=e iH(t-s) This eliminates the need to take the |x〉 register into account when implementing SELECT. The implementation requires that the discretization of the integral in Equation 8 be fixed. In some implementations, the uniform weights w l = t / L with L points s l,t = tl / L can be chosen. The error in this approximation is
[0224]
number
[0225] can be shown to be bounded by L>>t 2 ||O x ||||[H,V n ]||. The controlled time evolution part of the SELECT unitary is then
[0226]
number
[0227]
number
[0228] This can be done by dividing the entire time interval [0,t] into R Trotter steps and implementing a higher order product formula at each step. To ensure that the simulation has an error of at most η,
[0229]
number
[0230] where the lowercase o(1) denotes a constant that can be taken arbitrarily small, and the X1 and X2 coefficients depend on the system size and graph connectivity. For a linear chain of N qubits, X1 = X2 = N. In contrast, assuming a more realistic model of the clustered Hamiltonian,
[0231]
number
[0232] where H whenever k,k'∈K≠L∋l k,l < <H k,k' is X1~Λ ind , X2~Λ, where
[0233]
number
[0234]
number
[0235] Alternatively, a partial Trotter decomposition can be applied without splitting the terms within each cluster. This means that instead X2~Λ int To reduce the Trotter error, we use the scaling function
[0236]
number
[0237] Each cluster can then be simulated using either the product formula or a more advanced quantum algorithm. In some implementations, such a hybrid approach can improve the run time of the approach.
[0238] To analyze how the error in quantum simulation affects the accuracy of overlap estimation, the block diagonal structure of Eqs. (36) and (37) is used. If quantum simulation is performed with an accuracy η, it can be understood that the controlled time evolution has an error of at most η. To achieve an accuracy ε in the overlap estimation, η a is set to, for a = 0, 1, respectively,
[0239]
Number
[0240] which determines the minimum number R of Trotter steps in Eq. (38).
[0241] Next, it is explained how to add double control by the |l〉 and |t〉 registers to the general product formula S p . (The single control by the |t〉 register, which is also required for the (SEL a oracle), can also be implemented by the following technique.) To achieve Hamiltonian simulation with a linear cost in t, a near-linear dependence of the time evolution on R, and the requirement that L >> O(t 2 ) implies that L >> R. This in turn implies that lt / L is not an integer multiple of t / R. For simplicity, it is assumed that L and R are powers of 2, and for 0 ≤ q < t / R,
[0242]
Number
[0243] is written as. Writing q' = qR / T < 1, then
[0244]
Number
[0245] gives an integer number (r) of Trotter steps and a fractional remainder q'. Since L and R are powers of 2, these integers r and q' are already stored in the first log(R) bits and the last log(L)-log(R) bits of the l register and may be identified by renaming l as (r,q'). The integer part (r) is given by S p Determine the number of times (t / R) needs to be applied, and |r> the bth value of the control register. r By a bit of
[0246]
number
[0247] , and |t〉control unitary is unitary
[0248]
number
[0249] where the |t〉 register defines the rotation angle for each component of the product formula. For example,
[0250]
number
[0251] teeth,
[0252]
number
[0253] To control the rotation, use the t register. t This has polylogarithmic gate complexity in the input parameters and can therefore be neglected. Similarly, the final fractional Trotter query can be implemented as controlled by the |q'〉 register, i.e., unitary
[0254]
number
[0255] is implemented. This also has a similar cost which is multi-logarithmic in the input parameters. The final scaling of the doubly controlled time evolution is then the same as the cost of implementing the Trotter evolution without control, up to a logarithmic factor.
[0256] The above implementation of controlled quantum simulation is developed and optimized specifically for product formulas. Another possible circuit implementation that works for product formulas as well as more advanced quantum simulation algorithms is to use a binary representation of the evolution time and simulate over time 2k with an integer k. In both cases, the computational complexity only scales logarithmically with the input parameters, resulting in negligible overhead. This is evident from the implementation of PREPARE and controlled-W x As long as the circuit has a smaller cost than SELECT, the comparison between the oracle models in Equation 35 and Equation 23 is justified.
[0257] A simple implementation of the Trotter step requires that all terms in the Hamiltonian be exponentiated. For the clustered model in Equation 39, this translates to O(N 2 ) gate complexity. However, this may be improved by discarding Hamiltonian terms with very small absolute values or by switching to advanced quantum simulation algorithms. Rotation gates can also be synthesized in terms of fault-tolerant gate sets, but the overhead in circuit synthesis is asymptotically negligible.
[0258] The PREP0 and PREP1 oracles require the coefficients in Equation 29 and Equation 31 to be loaded onto quantum registers, respectively. Because a uniform integration measure is chosen, the integration weights for both PREP0 and PREP1 are independent of the value of the / register, which may be prepared by applying a Hadamard gate to all qubits. The remainder of the PREPARE oracle can be implemented using a QROM and coherent alias sampling (CAS) technique, which takes O(N d ) Toffoli gates are used to map |j〉|0〉→|j〉 and
[0259]
number
[0260] can be used to perform the d is the number of unique data points or indices j. This is important because it is not assumed that the time t is uniformly chosen, and therefore it is nontrivial to prepare a |t〉 register. If time is indexed by some uniform index j, i.e., write = t j If |j〉|0〉→|j〉|t j A QROM can be used to map |j〉 (this means that the |j〉 register is of size n d =logN d CAS techniques require that the cost is equal to the number of unique data points and that the state
[0261]
number
[0262] Combining this with the prepared |l〉 register above yields the PREP0 oracle. σ x,t =σ tIf , i.e., all separate experiments are performed with the same error, which is a reasonable assumption, then N d N d It is assumed that scales at best linearly in T, i.e., for dense sampling, and therefore the cost of implementing the PREP0 oracle is bounded by O(T) and dominated in block coding by the additive cost of the SEL0 oracle.
[0263] The PREP1 oracle adds an additional amplitude a x,k These differ from the PREP0 oracle only. x N w It can be mapped onto the device using CAS with a cost that scales as N d The cost is additive and N x N w < <N d Therefore, this oracle is also expected to be dominated by the cost of SEL1.
[0264] Controlled Z rotation as an additional part of the SEL1 subroutine
[0265]
number
[0266] needs to be implemented. The classical value w x,k and φ k needs to be loaded onto the quantum device, for example using QROM techniques. w classical data points f x,k =2πw x,k Given a set of x N w ) Toffoli gates are used to map |k〉|x〉|0〉→|k〉|x〉|f x,k A QROM can be used to implement φ kis a single qubit |x〉|0〉→|x|b x 〉, but in O(N x ) Toffoli gates, φ k = 0, then b x =0, and φ k = π / 2, then b x = 1. These mappings may be more appropriate to implement during the PREP1 step. Access to these registers can then be envisaged in the SEL1 subroutine, where the controlled Z rotation is a function of the size of |f x,k t> and |t> registers, at polylogarithmic cost, and can be implemented by the same form of arithmetic as in the product formula. Alternatively, a phase gradient method can be used, which has a smaller fault-tolerant cost.
[0267]
number
[0268] It remains to explain the preparation method for ρ x This is important to consider because ρ is not a pure state, and so it is not possible to prepare it from the initial register using the same number of qubits. Instead, the size of the system register is expanded so that Trace[Oρ x ]=Trace[O|ψ x 〉〈ψ x |] such that |ψ x 〉=W x |0〉 is prepared. This requires that the number of qubits in the system N be doubled at most, and W x and
[0269]
number
[0270] In some applications of the present technique, for example in NMR applications, the additional qubits may be ignored in all operations other than
[0271]
number
[0272] The state of qubit j is often taken into account. x , which is a maximally mixed state for all qubits except for . To achieve this with an additional N qubits, we use the Bell state
[0273]
number
[0274] N copies of x are prepared, and these copies can be implemented using only Clifford gates. The Toffoli gate is then x j as the qubit and target of x +N and controlled by x. x This is followed by a Hadamard gate on the qubit. Each controlled Hadamard can be implemented using a single Toffoli gate. This is done by
[0275]
number
[0276] More generally, any thermal state in the classical 1D Ising model can be prepared as a 2N-qubit thermal-field dual state with full fidelity using a circuit of depth N / 2.
[0277] Figure 6 shows an example circuit diagram for a fault-tolerant oracle used to compute the first and second derivatives of the Hamiltonian learning cost function. The circuit diagrams for the fault-tolerant oracles SEL0, SEL1, PREP0, and PREP1 described above are shown. The black circles on the multi-qubit register indicate complex control procedures. The square boxes indicate classical inputs to the system via the QROM. Subscripts are omitted from the gates for ease of reading. SEL a The dashed circle on the control for U in the circuit indicates control that is only needed if the time evolution during the experiment changes between experiments.
[0278] 7 is a flowchart of a second exemplary process 700 for Hamiltonian training. For convenience, process 700 is described as being performed by a classical computing system in data communication with a quantum computer, e.g., a fault-tolerant device. For example, classical processor 102 of FIG. 5 , appropriately programmed in accordance with this specification, can perform process 700.
[0279] The system acquires a plurality of experimental data points, each of which is generated (i.e., acquired through measurement) according to a Hamiltonian that includes one or more parameters with unknown values (step 702). Exemplary experimental data points are described above with reference to Equation 1 and Equation 2. In some implementations, the experimental data points may be acquired by performing a plurality of respective nuclear magnetic resonance (NMR) experiments, as described above with respect to step 402 of exemplary process 400.
[0280] The system iteratively adjusts estimates of one or more parameters to minimize a cost function (step 704). The cost function depends on multiple experimental data points and is given by Equation 4. At each iteration, a derivative of the cost function with respect to the parameter estimates for the previous iteration is calculated using a quantum computer. The derivative may include a first or second derivative, for example, as given by Equations 5 and 6. The system uses the quantum computer to directly calculate the derivative, for example, through block coding. Exemplary operations performed by a quantum computer are described above with reference to Figures 5 and 6.
[0281] Once a predetermined completion criterion is met, e.g., the cost function value converges, the system outputs the parameter values that minimize the cost function as learned values (step 706). The exemplary processes 400 of FIG. 4 and 700 of FIG. 7 can be applied to learn the structures (e.g., bonds) of various molecules, crystals, or other materials. One exemplary application is Hamiltonian learning of proteins in or on membranes via proton NMR (where dipolar coupling is typically on the order of 30-40 KHz). For example, the exemplary processes 400 and 700 can be applied to learn the structure, e.g., bonds, of ubiquitin. Physical pinning of such systems to the membrane prevents tumbling, which would wash away strongly correlated interactions in solution. This application is valuable beyond classical and quantum computing applications due to challenges presented by proton NMR, such as significant residual coupling, loss of structural information through suppression of dipolar coupling terms, and differences in protein folding behavior in vitro versus in vivo.
[0282] Additional implementation details 8 is a block diagram of an exemplary quantum computing device 800. Quantum computing device 800 may be used to perform quantum computational operations described herein, according to some implementations. Quantum computing device 800 is intended to represent various forms of quantum computing devices. The components illustrated herein, their connections and relationships, and their functions are merely examples and do not limit the implementations of the invention described and / or claimed herein.
[0283] Quantum computing device 800 includes a qubit assembly 810 and a control and measurement system 820. The qubit assembly includes a plurality of physical qubits, e.g., qubits 812, that are used to perform algorithmic operations or quantum computations. While the qubits shown in FIG. 8 are configured in a rectangular array, this is schematic and not intended to be limiting. Qubit assembly 810 also includes adjustable coupling elements, e.g., couplers 814, that enable interaction between the coupled qubits. In the schematic of FIG. 8, each qubit is adjustably coupled to each of its four neighboring qubits by a respective coupling element. However, this is an exemplary configuration of the qubits and couplers, and other configurations are possible, including non-rectangular configurations, configurations that allow coupling between non-adjacent qubits, and configurations that include adjustable coupling between more than two qubits.
[0284] Each qubit may be a two-level quantum system or device, with levels representing logical values of 0 and 1. The specific physical implementation of the qubits and how they interact with each other depends on various factors, including the type of quantum computing device 800 or the type of quantum computation it is performing. For example, in an atomic quantum computer, the qubits may be implemented via atomic quantum systems, molecular quantum systems, or solid-state quantum systems, e.g., hyperfine atomic states. As another example, in a superconducting quantum computer, the qubits may be implemented via superconducting or semiconducting qubits, e.g., superconducting transmon states. As another example, in an NMR quantum computer, the qubits may be implemented via nuclear spin states.
[0285] In some implementations, quantum computation can be undertaken by initializing qubits in a selected initial state and applying a sequence of quantum logic gates to the qubits. Exemplary quantum logic gates include Pauli gates, single qubit gates, e.g., Pauli X, Pauli Y, Pauli Z (also referred to as X, Y, Z), variations of Pauli gates, e.g.,
[0286]
number
[0287] ,
[0288]
number
[0289] ,
[0290]
number
[0291] Quantum logic gates include Hadamard and S gates, two-qubit gates, e.g., control X, control Y, control Z (also called CX, CY, CZ), CNOT, and gates with more than two qubits, e.g., Toffoli gates. Quantum logic gates can be implemented by applying control signals 832 generated by the control and measurement system 820 to the qubits and couplers.
[0292] For example, in some implementations, the qubits in qubit assembly 810 may be frequency tunable. In these examples, each qubit may have an associated operating frequency that may be adjusted through the application of voltage pulses via one or more drive lines coupled to the qubit. Exemplary operating frequencies include a qubit idle frequency, a qubit interaction frequency, and a qubit readout frequency. Different frequencies correspond to different operations that the qubit may perform. For example, setting the operating frequency to a corresponding idle frequency may place the qubit into a state in which the qubit does not strongly interact with other qubits, where such a state may be used to perform a single-qubit gate. As another example, if the qubits interact through couplers with fixed coupling, the qubits may be configured to interact with one another by setting their respective operating frequencies to several gate-dependent frequencies that detune from their common interaction frequency. In other cases, for example, when qubits interact via tunable couplers, the qubits may be configured to interact with one another by setting the parameters of their respective couplers to enable interaction between the qubits, and then setting the operating frequency of each of the qubits to some gate-dependent frequency that detunes from their common interaction frequency. Such interactions may be performed to implement a multi-qubit gate.
[0293] The type of control signal 832 used depends on the physical implementation of the qubit. For example, the control signal may comprise an RF or microwave pulse in an NMR or superconducting quantum computer system, or an optical pulse in an atomic quantum computer system.
[0294] A quantum computation may be completed by measuring the state of the qubit using a quantum observable, such as Z, using the respective control signal 832. The measurement causes a readout signal 834 representing the measurement result to be communicated back to measurement and control system 820. Readout signal 834 may comprise an RF, microwave, or optical signal, depending on the physical scheme for quantum computing device 800 and / or the qubits. For convenience, control signals 832 and readout signals 834 shown in FIG. 8 are shown as addressing only selected elements of the qubit assembly (i.e., the top and bottom rows), but in operation, control signals 832 and readout signals 834 may address each element in qubit assembly 810.
[0295] Control and measurement system 820 is one example of a classical computer system that may be used to perform various operations on qubit assembly 810, as described above. Control and measurement system 820 includes one or more classical processors, e.g., classical processor 822, one or more memories, e.g., memory 824, and one or more I / O units, e.g., I / O unit 826, connected by one or more data buses, e.g., bus 828. Control and measurement system 820 may be programmed to send sequences of control signals 832 to the qubit assembly, e.g., to perform a selected series of quantum gate operations, and to receive sequences of readout signals 834 from the qubit assembly, e.g., as part of performing a measurement operation.
[0296] The processor 822 is configured to process instructions for execution within the control and measurement system 820. In some implementations, the processor 822 is a single-threaded processor. In other implementations, the processor 822 is a multi-threaded processor. The processor 822 is capable of processing instructions stored in the memory 824.
[0297] The memory 824 stores information within the control and measurement system 820. In some implementations, the memory 824 includes a computer-readable medium, a volatile memory unit, and / or a non-volatile memory unit. In some cases, the memory 824 may include a storage device capable of providing mass storage to the system 820, such as a hard disk device, an optical disk device, a storage device shared over a network by multiple computing devices (e.g., a cloud storage device), and / or some other mass storage device.
[0298] Input / output devices 826 perform input / output operations for control and measurement system 820. Input / output devices 826 may include D / A converters, A / D converters, and RF / microwave / optical signal generators, transmitters, and receivers for sending control signals 832 to and receiving readout signals 834 from the qubit assemblies, as appropriate for the physics scheme for the quantum computer. In some implementations, input / output devices 826 may also include one or more network interface devices, e.g., Ethernet cards, serial communication devices, e.g., RS-232 ports, and / or wireless interface devices, e.g., 802.11 cards. In some implementations, input / output devices 826 may include driver devices configured to receive input data and send output data to other external devices, e.g., keyboards, printers, and display devices.
[0299] Although an exemplary control and measurement system 820 is shown in FIG. 8, implementations of the subject matter and functional operations described herein may be implemented in other types of digital electronic circuitry, or in computer software, firmware, or hardware, or in combinations of one or more of these, including the structures disclosed herein and their structural equivalents.
[0300] 9 shows a schematic diagram of an exemplary generic classical processor system 900. System 900 can be used for the classical operations described herein according to several implementations. System 900 is intended to represent various forms of digital computers, such as laptops, desktops, workstations, personal digital assistants, servers, blade servers, mainframes, mobile devices, and other suitable computers. The components illustrated here, their connections and relationships, and their functions are merely examples and do not limit the implementation of the invention described and / or claimed herein.
[0301] The system 900 includes a processor 910, a memory 920, a storage device 930, and an input / output device 940. Each of the components 910, 920, 930, and 940 are interconnected using a system bus 950. The processor 910 may be enabled to process instructions for execution within the system 900. In one implementation, the processor 910 is a single-threaded processor. In another implementation, the processor 910 is a multi-threaded processor. The processor 910 may be enabled to process instructions stored in the memory 920 or on the storage device 930 to display graphical information for a user interface on the input / output device 940.
[0302] The memory 920 stores information within the system 900. In one implementation, the memory 920 is a computer-readable medium. In one implementation, the memory 920 is a volatile memory unit. In another implementation, the memory 920 is a non-volatile memory unit.
[0303] The storage device 930 may be enabled to provide mass storage for the system 900. In one implementation, the storage device 930 is a computer-readable medium. In various different implementations, the storage device 930 may be a floppy disk device, a hard disk device, an optical disk device, or a tape device.
[0304] The input / output device(s) 940 perform input / output operations for the system 900. In one implementation, the input / output device(s) 940 include a keyboard and / or a pointing device. In another implementation, the input / output device(s) 940 include a display unit for displaying a graphical user interface.
[0305] Implementations of the digital and / or quantum subject matter and digital functional and quantum operations described herein may be implemented in digital electronic circuitry, suitable quantum circuitry, or more generally in quantum computing systems, in tangibly embodied digital and / or quantum computer software or firmware, in digital and / or quantum computer hardware including the structures disclosed herein and their structural equivalents, or in one or more combinations thereof. The term "quantum computing device" may include, but is not limited to, a quantum computer, a quantum information processing system, a quantum encryption system, or a quantum simulator.
[0306] Implementations of the digital and / or quantum subject matter described herein may be implemented as one or more digital and / or quantum computer programs, i.e., one or more modules of digital and / or quantum computer program instructions encoded on a tangible, non-transitory storage medium for execution by or to control the operation of a data processing apparatus. The digital and / or quantum computer storage medium may be a machine-readable storage device, a machine-readable storage substrate, a random or serial access memory device, one or more qubits, or a combination of one or more thereof. Alternatively or additionally, the program instructions may be encoded on an artificially generated propagated signal capable of encoding digital and / or quantum information, e.g., a machine-generated electrical, optical, or electromagnetic signal generated to encode digital and / or quantum information for transmission to a suitable receiver device for execution by a data processing apparatus.
[0307] The terms quantum information and quantum data refer to information or data carried by, held, or stored in a quantum system, where the smallest nontrivial system is a qubit, i.e., a system defining a unit of quantum information. It is understood that the term "qubit" encompasses all quantum systems that can be suitably approximated as two-level systems in the corresponding context. Such quantum systems may include multilevel systems, for example, having two or more levels. By way of example, such systems may include atoms, electrons, photons, ions, or superconducting qubits. In many implementations, the ground state and the first excited state are used to identify the computational ground state, but it is understood that other configurations are possible in which the computational state is identified using a higher-level excited state.
[0308] The term "data processing apparatus" refers to digital and / or quantum data processing hardware and encompasses all types of apparatus, devices, and machines for processing digital and / or quantum data, including, by way of example, programmable digital processors, programmable quantum processors, digital computers, quantum computers, multiple digital and quantum processors or computers, and combinations thereof. An apparatus can also be or further include special-purpose logic circuitry, e.g., an FPGA (field-programmable gate array), an ASIC (application-specific integrated circuit), or a quantum simulator, i.e., a quantum data processing apparatus designed to simulate or generate information about a specific quantum system. In particular, a quantum simulator is a special-purpose quantum computer that does not have the capability to perform universal quantum computations. In addition to hardware, an apparatus can optionally include code that creates an execution environment for digital and / or quantum computer programs, e.g., code constituting processor firmware, a protocol stack, a database management system, an operating system, or one or more combinations thereof.
[0309] A digital computer program, which may also be called or described as a program, software, software application, module, software module, script, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, or other unit suitable for use in a digital computing environment. A quantum computer program, which may also be called or described as a program, software, software application, module, software module, script, or code, can be written in any form of programming language, including compiled or interpreted languages, or declarative or procedural languages, and can be converted to a suitable quantum programming language or written in a quantum programming language, e.g., QCL or Quipper.
[0310] A digital and / or quantum computer program may correspond to a file in a file system, but need not. A program may be stored within a portion of a file holding one or more scripts, among other programs or data, e.g., a markup language document, a single file dedicated to the program, or among multiple cooperating files, e.g., a file storing one or more modules, subprograms, or portions of code. A digital and / or quantum computer program may be deployed to run on one digital computer or one quantum computer, or on multiple digital computers and / or quantum computers located at one site or distributed across multiple sites and interconnected by a digital and / or quantum data communication network. A quantum data communication network is understood to be a network that may transmit quantum data using quantum systems, e.g., qubits. While digital data communication networks generally cannot transmit quantum data, quantum data communication networks may transmit both quantum data and digital data.
[0311] The processes and logic flows described herein may be performed by one or more programmable digital and / or quantum computers, operating, as appropriate, in conjunction with one or more digital and / or quantum processors, executing one or more digital and / or quantum computer programs to perform functions by operating on input digital and quantum data and generating output. The processes and logic flows can also be performed by special-purpose logic circuitry, e.g., FPGAs or ASICs, or quantum simulators, or by a combination of special-purpose logic circuitry or quantum simulators with one or more programmed digital and / or quantum computers, and an apparatus can also be implemented as special-purpose logic circuitry, e.g., FPGAs or ASICs, or quantum simulators.
[0312] To say that one or more digital and / or quantum computer systems are "configured to" perform particular operations or actions means that the system has installed thereon software, firmware, hardware, or a combination thereof that, in operation, causes the system to perform the operation or action. To say that one or more digital and / or quantum computer programs are configured to perform particular operations or actions means that the one or more programs contain instructions that, when executed by a digital and / or quantum data processing device, cause the device to perform the operation or action. A quantum computer may receive instructions from a digital computer that, when executed by a quantum computing device, cause the device to perform an operation or action.
[0313] A digital and / or quantum computer suitable for executing a digital and / or quantum computer program can be based on a general-purpose or a dedicated digital and / or quantum processor, or both, or any other kind of central digital and / or quantum processing unit. Typically, the central digital and / or quantum processing unit receives instructions and digital and / or quantum data from a read-only memory, a random access memory, or a quantum system suitable for transmitting quantum data, e.g., photons, or a combination thereof.
[0314] The essential elements of a digital and / or quantum computer are a central processing unit for performing or executing instructions and one or more memory devices for storing instructions and digital and / or quantum data. The central processing unit and memory may be augmented by or incorporated into dedicated logic circuitry or a quantum simulator. Generally, a digital and / or quantum computer also includes one or more mass storage devices for storing digital and / or quantum data, e.g., magnetic disks, magneto-optical disks, optical disks, or quantum systems suitable for storing quantum information, or is operatively coupled to receive digital and / or quantum data therefrom, transfer digital and / or quantum data thereto, or both. However, a digital and / or quantum computer need not necessarily have such devices.
[0315] Digital and / or quantum computer-readable media suitable for storing digital and / or quantum computer program instructions and digital and / or quantum data include, by way of example, semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices, magnetic disks, e.g., internal hard disks or removable disks, magneto-optical disks, CD-ROM and DVD-ROM disks, and all forms of non-volatile digital and / or quantum memories, media, and memory devices, including quantum systems, e.g., trapped atoms or electrons. It is understood that quantum memories are devices that can store quantum data over long periods of time with high fidelity and efficiency, e.g., light-matter interfaces where light is used for transmission, and materials for storing and preserving quantum characteristics of quantum data, such as superposition or quantum coherence.
[0316] Control of the various systems described herein, or portions thereof, may be implemented in a digital and / or quantum computer program product that includes instructions stored on one or more non-transitory machine-readable storage media and executable on one or more digital and / or quantum processing devices. The systems or portions thereof described herein may each be implemented in an apparatus, method, or system that may include one or more digital and / or quantum processing devices and a memory for storing executable instructions for performing the operations described herein.
[0317] While this specification contains many specific implementation details, these should not be construed as limitations on the scope of what may be claimed, but rather as descriptions of features that may be specific to particular implementations. Some features described herein in the context of separate implementations may also be implemented in combination in a single implementation. Conversely, various features described in the context of a single implementation may also be implemented in multiple implementations separately or in any suitable subcombination. Moreover, while features may be described above as acting in several combinations and may even initially be claimed as such, one or more features from a claimed combination may, in some cases, be deleted from the combination, and the claimed combination may be directed to a subcombination or a variation of the subcombination.
[0318] Similarly, while operations are shown in the figures in a particular order, this should not be understood as requiring that such operations be performed in the particular order or sequential order shown, or that all of the illustrated operations be performed, to achieve desirable results. In some environments, multitasking and parallel processing may be advantageous. Moreover, the separation of various system modules and components in the above-described implementations should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems may generally be integrated together in a single software product or packaged in multiple software products.
[0319] Specific implementations of the present subject matter have been described. Other implementations are within the scope of the following claims. For example, the actions recited in the claims can be performed in a different order and still achieve desirable results. As an example, the processes depicted in the accompanying figures do not necessarily require the particular order shown or sequential order to achieve desirable results. In some cases, multitasking and parallel processing may be advantageous. [Explanation of symbols]
[0320] 100 systems 102 Classical Processors 104 quantum processor 106 Quantum system 108 time-resolved experimental data, experimental data, experimental data points 112 Request 114 Results 116 Estimated 200 systems 202 NISQ devices 206 Multiplication and Summation Operations 208 Integral 212 Data 214 results 500 Systems 502 FT Devices 512 data 514 results 800 quantum computing devices 810 qubit assembly 812 cubits 814 Coupler 820 Control and Measurement Systems 822 Classical Processor, Processor 824 memory 826 Bus 826 I / O unit, input / output device 832 control signal 834 read signal 900 System 910 processor 920 memory 930 Storage Devices 940 Input / Output Devices 950 System Bus
Claims
1. A computer-implemented method for learning unknown values of parameters of a Hamiltonian, comprising: iteratively adjusting, by a classical processor, estimates of the parameters to minimize a cost function and until a predetermined completion criterion is met, the cost function being dependent on experimental data generated according to the Hamiltonian, and at each iteration, the iterative adjusting step comprises: calculating, by a quantum computer, derivatives of the cost function with respect to estimates of the parameters for a previous iteration, wherein the calculating comprises simulating a unitary time evolution generated by the Hamiltonian, the unitary time evolution being interleaved with perturbations comprising Hermitian operators contained in the Hamiltonian; outputting, by the classical processor, the estimates of the parameters that minimize the cost function as learned values of the parameters; A computer-implemented method comprising:
2. The method of claim 1, wherein the quantum computer comprises a noisy medium-scale quantum computing device.
3. The method of claim 1, wherein the experimental data corresponds to respective experiments performed on quantum systems included in the quantum computer, and the experiments comprise experiments that go beyond classical.
4. The method of claim 1, further comprising the step of acquiring the experimental data from the spectrometer via a classical connection by the classical processor.
5. 2. The method of claim 1 , wherein the derivative comprises a gradient, each gradient of the cost function comprises a plurality of integrals, each integral comprising a respective integrand, each integrand comprising i) an expectation value of an observable used to generate the experimental data given ii) a perturbed state of a quantum system used to generate the experimental data, the state being perturbed using a Hermitian operator included in the Hamiltonian.
6. calculating a derivative of the cost function with respect to the parameter estimates for the previous iteration, sending data from the classical processor to the quantum computer requesting the computation of each integrand of the plurality of integrals; receiving, by the classical processor, data from the quantum computer representing the results of the computation of each integrand of the plurality of integrals; The method of claim 5, comprising:
7. calculating, by the classical processor, the plurality of integrals through summation of the data representing the results of the calculation of each integrand of the plurality of integrals; performing multiplication and addition operations by the classical processor using the calculated integrals to calculate first derivatives of the cost function with respect to the parameter estimates for the previous iteration; The method of claim 6 further comprising:
8. Repeat for a given number of iterations, preparing, by the quantum computer, a register of qubits in an initial quantum state, the initial quantum state comprising a mixed diagonal state in a computational basis; applying a quantum circuit to the initial quantum state by the quantum computer to obtain an evolved quantum state, the quantum circuit comprising a unitary time evolution operator interleaved with a controlled perturbation, the unitary time evolution operator simulating the unitary time evolution produced by the Hamiltonian, the controlled perturbation comprising a Hermitian operator included in the Hamiltonian; and measuring observables of the evolved quantum state, the observables comprising the observables used to generate the experimental data; calculating an expectation value of the measured observable; The method of claim 1 further comprising:
9. initializing, by the quantum computer, a control register of a qubit in an initial state; applying, by the quantum computer, a preparation unitary operator to the initial state to obtain a control state of the control register; applying, by the quantum computer, a selection unitary operator to the control state to obtain an evolution state of the control register, the selection unitary operator selecting a unitary operator to perform based on the control state of the control register; measuring the evolving state of the control register; The method of claim 1 further comprising:
10. The method of claim 1, wherein each point of the experimental data corresponds to a respective experiment performed on a quantum system, and wherein performing each of the experiments comprises: providing the quantum system in an initial state; applying a time evolution operator to the initial state to generate an evolved state, the time evolution operator being generated by the Hamiltonian and an external time-dependent driving field; measuring observables of the evolution state; The method of claim 1 , comprising:
11. The method of claim 1, wherein the number of points of experimental data is equal to or greater than the number of parameters having unknown values.
12. the cost function comprises a first term and a second term; the first term comprises a sum of squared differences between the estimate of the parameter and the prior probability of the parameter; the second term comprises the sum of squared differences between the experimental data and the experimental data estimated using the parameter estimates; The method of claim 1.
13. the derivatives comprise second derivatives, each second derivative of the cost function comprises a plurality of integrals, each integral comprising an integrand, the integrand comprising: ii) given a perturbed state of a quantum system used to generate the experimental data, expectation values of i) observables used to generate the experimental data, where the state is perturbed using a Hermitian operator included in the Hamiltonian; or 2. The method of claim 1 , comprising: i) expectation values of observables used to generate the experimental data, the states of which are perturbed using a second Hermitian operator included in the Hamiltonian, given ii) a commutator of a first Hermitian operator included in the Hamiltonian with a perturbed state of a quantum system used to generate the experimental data.
14. 2. The method of claim 1 , wherein the derivative comprises a second derivative, and when a value of the cost function is within a predetermined distance from a global minimum, the second derivative of the cost function comprises a sum of products of integrals, each integral comprising an integrand, the integrand comprising i) expectation values of observables used to generate the experimental data given ii) perturbed states of a quantum system used to generate the experimental data, the states being perturbed using a Hermitian operator included in the Hamiltonian.
15. A quantum computer; 15. A system comprising one or more classical processors in data communication with the quantum computer, the system being configured to perform operations according to the method of any one of claims 1 to 14.