Quantum Control Development and Implementation Interface

Through the coordinated work of the distributed data processing system in the quantum computing system and the user interface device, the control sequence of noise suppression is determined and applied, which solves the problem of difficulty in executing effective control algorithms in the prior art, and improves the stability and efficiency of quantum computing.

CN112470173BActive Publication Date: 2025-06-24Q CTRL PTY LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN201980037451.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2018-10-31
Filing Date
2019-05-31
Publication Date
2025-06-24
Estimated Expiration
2039-05-31

AI Technical Summary

Technical Problem

The prior art is difficult to determine and execute effective control algorithms for specific quantum computers, resulting in rapid degradation of quantum information and hindering the effective use of quantum computing technology.

Method used

Design a quantum computing system, including a quantum processor and a distributed data processing system, collects the characteristics of the quantum processor through user interface devices and sends them to the distributed data processing system, performs calculations to determine the control sequence of noise suppression, and reduces errors caused by decoherence and control defects.

Benefits of technology

The stable control of the qubit state is realized, the decoherence and error rates in multiple qubit operations are reduced, and the reliability and efficiency of quantum computing are improved.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN112470173B_ABST
    Figure CN112470173B_ABST
Patent Text Reader

Abstract

The present disclosure relates to a quantum computing system, the quantum computing system comprising: a quantum processor that implements one or more operations on a plurality of qubits; and a distributed data processing system that is programmed to perform calculations to determine a control sequence that, when applied to the quantum processor, reduces decoherence, decoherence-induced errors, and control-defect-induced errors of the one or more operations on the plurality of qubits. A user interface device remote from the distributed data processing system receives, from a user of the quantum processor, characteristics of the quantum processor including operation constraints and / or desired performance, and sends the characteristics to the data processing system to cause the data processing system to perform calculations to determine a control sequence based on the characteristics.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Cross - reference to related applications

[0002] This application claims priority to Australian Provisional Patent Application No 2018256557, filed on October 31, 2018, and Australian Provisional Patent Application No 2018902019, filed on June 6, 2018. The contents of these provisional patent applications are incorporated herein by reference in their entirety. Field of technology

[0003] This disclosure relates to the development and implementation interface of quantum control. Background art

[0004] Quantum computers are emerging technologies, and there are a variety of different techniques for implementing quantum computers, including ion traps, nitrogen vacancies, superconducting qubits, and electron and nuclear spins in semiconductors and other crystal structures. For each of these techniques, there is a wide range of different configurations and microscopic details, such as the number and spatial arrangement of the implemented qubits or the physical environment experienced by the qubits. As a result, each quantum computer has its own specific characteristics that distinguish it from other quantum computers.

[0005] However, a common theme in quantum computers is that quantum information degrades rapidly, and complex algorithms are required to create control sequences that can stabilize the quantum information. However, it is difficult to determine and execute these control algorithms for a specific quantum computer, which hinders the effective use of quantum computing technology.

[0006] Any discussion of documents, acts, materials, devices, articles, etc. that have been included in this specification will not be regarded as an admission that any or all of these form part of the prior art base or are common general knowledge in the relevant field of this disclosure because they existed before the priority date of each claim of this application.

[0007] Throughout the specification, the word "comprising" or variations such as "including" or "containing" will be understood to imply the inclusion of the stated element, integer, or step or group of elements, integers, or steps, but not the exclusion of any other element, integer, or step or group of elements, integers, or steps. Summary of the invention

[0008] A quantum computing system includes: a quantum processor that implements one or more operations on a plurality of qubits having qubit states; and a distributed data processing system that is programmed to perform calculations to determine a control sequence that, when applied to the quantum processor in the form of an electromagnetic field to directly control the qubit states, reduces decoherence, decoherence-induced errors, and control-defect-induced errors for the one or more operations on the plurality of qubits, wherein the calculations are based on the noise characteristics of the quantum processor to determine the noise-suppressing control sequence. A user interface device remote from the distributed data processing system receives characteristics of the quantum processor, including operation constraints and / or desired performance, from a user of the quantum processor and sends the characteristics to the distributed data processing system to cause the distributed data processing system to perform calculations to determine the noise-suppressing control sequence based on the characteristics.

[0009] There is a problem that the noise characteristics of the quantum processor change over time. Although existing calculations can provide a single control sequence at a time, the advantage of the above system is that those changes over time are compensated because the calculations can be completed within a time range similar to when the changes occur. In other words, the calculations can be repeated "instantaneously" while the quantum processor is in operation. This is possible only because the calculations are performed on the distributed data processing system, as incorporating the noise characteristics to determine the noise-suppressing control sequence for the plurality of qubits is computationally challenging.

[0010] Another advantage is that the functionality is divided between the user interface device and the distributed data processing system because the required calculations are computationally complex and many users of the quantum computing hardware platform do not have the resources to build their own high-performance local processing systems. Additionally, users typically have limited access to the software that performs the calculations required for their specific platforms. Thus, another advantage is that the user interface collects the characteristics and sends them to the distributed data processing system and returns a deployable control solution to the user. In this way, the specific characteristics of the platform are taken into account in the calculations, which results in an improved control sequence that in turn results in a reduced error rate and reduced decoherence in the qubits. The control determined in this way can include any single-qubit and multi-qubit logical operations from a universal gate set and the organization of these operations into quantum circuits used in algorithms.

[0011] The system can also include embedded code within the quantum processor that autonomously optimizes the quantum processor's communication with the distributed data processing system.

[0012] A method for controlling a quantum processor that implements one or more operations on a plurality of qubits having qubit states is also provided. The method includes:

[0013] Generate a user interface to receive user input related to the characteristics of a quantum processor from a user of the quantum processor;

[0014] Receive the user input on a distributed data processing system;

[0015] Perform a calculation on the distributed data processing system based on the user input to determine a control sequence that, when applied to the quantum processor in the form of an electromagnetic field to directly control qubit states, reduces decoherence and decoherence-induced errors for one or more operations on multiple qubits, wherein the calculation is based on the noise characteristics of the quantum processor to determine the control sequence for noise suppression.

[0016] The user input can include a request for determining the characteristics of the quantum processor, and the method can include performing a calculation on the distributed data processing system based on the user input to determine a control sequence that, when applied to the quantum processor, allows for measuring the characteristics of the quantum processor.

[0017] The noise characteristics of the quantum processor include distortion of the platform.

[0018] The measurement of the noise characteristics can include calculating a frequency-domain filter function on the distributed data processing system for the determined control sequence and applying the filter function to direct measurements from the quantum processor.

[0019] The user input can include an indication of one or more control waveforms created by the user via the user interface.

[0020] The user input can include an indication of one or more protocols or waveforms or both selected by the user from a pre-computed library via the user interface.

[0021] The control sequence can be an open-loop control sequence.

[0022] The calculation can be used to analyze the control waveform to determine the error budget for multiple qubits and display the error budget on the user interface.

[0023] The calculation can be based on the noise characteristics.

[0024] The noise characteristics can be based on one or more of the following:

[0025] Predefined clock noise;

[0026] Predefined environmental dephasing;

[0027] Predefined amplitude noise;

[0028] Predefined noise in all Cartesian coordinates (x, y, z);

[0029] A noise spectrum appropriately defined and determined through user measurement; and

[0030] A noise spectrum determined from user input.

[0031] Calculations can be based on multiple measurements from a quantum computing hardware platform over time to iteratively and autonomously optimize a control sequence.

[0032] The calculations can include determining a first control sequence to characterize noise in the quantum computing hardware platform and determining a second control sequence based on the determined noise.

[0033] The method can further include:

[0034] Receiving current measurements from the quantum computing hardware platform on a distributed data processing system;

[0035] Adjusting the control sequence based on the current measurements; and

[0036] Sending the adjusted control sequence to the quantum computing hardware platform.

[0037] The calculations can include determining an error budget for a particular control operation on multiple qubits based on input, selected, or measured noise and adjusting the control sequence to minimize errors for one or more operations on the multiple qubits.

[0038] The method can further include generating a visualization of characteristics or the determined control sequence or both on a user interface.

[0039] The calculations can include determining a predicted estimate of the evolution of multiple qubits based on measurements of the multiple qubits and adjusting the control sequence based on the predicted estimate.

[0040] The control sequence can cause the multiple qubits to adopt adjusted system dynamics different from the native system dynamics of the quantum computing hardware platform, thereby extending the computational capabilities of the system.

[0041] Also provided is a method for controlling a quantum computing processor that implements one or more operations on multiple qubits having qubit states. The method includes:

[0042] Executing code embedded in the quantum processor to

[0043] Receive measurements related to the multiple qubits;

[0044] Determine a first set of control parameters based on the measurements, control data stored with the embedded code, and calculations performed by the embedded code;

[0045] Connect to a distributed data processing system so that the distributed data processing system determines a second set of control parameters based on calculations performed by the distributed data processing system and based on the noise characteristics of the quantum processor to allow determination of a control sequence for noise suppression;

[0046] Determine a control sequence for noise suppression based on the first set of parameters and the second set of parameters, the control sequence for noise suppression reducing decoherence and decoherence-induced errors of one or more operations on multiple qubits when applied to the quantum processor in the form of an electromagnetic field to directly control qubit states.

[0047] The method may further include repeatedly determining the first set of control parameters and the step of connecting to the distributed data processing system based on a schedule.

[0048] The method may further include:

[0049] Repeatedly storing the first set of control parameters and the second set of control parameters in a lookup table according to a schedule; and

[0050] Applying the control sequence for noise suppression to multiple qubits by reading the first set of control parameters and the second set of control parameters from the lookup table between scheduled updates of the first set of parameters and the second set of parameters.

[0051] A quantum processor includes:

[0052] Multiple qubits configured to implement one or more operations on multiple qubits; code embedded in the quantum processor to perform the following steps when executed:

[0053] Receive measurements related to multiple qubits;

[0054] Determine a first set of control parameters based on the measurements, control data stored with the embedded code, and calculations performed by the embedded code;

[0055] Connect to a distributed data processing system so that the distributed data processing system determines a second set of control parameters based on calculations performed by the distributed data processing system and based on the noise characteristics of the quantum processor to allow determination of a control sequence for noise suppression; and

[0056] Determine a control sequence for noise suppression based on the first set of parameters and the second set of parameters;

[0057] A controlled source for applying the control sequence for noise suppression to the quantum processor to reduce decoherence and decoherence-induced errors of one or more operations on multiple qubits.

[0058] The described optional features of any aspect of the method, computer-readable medium, or computer system are similarly applicable, as appropriate, to the other aspects described herein. BRIEF DESCRIPTION OF THE DRAWINGS

[0059] Examples will be described with reference to the following drawings.

[0060] Figure 1 A quantum computing system is illustrated.

[0061] Figure 2 More particularly, a quantum processor from Figure 1 is illustrated.

[0062] Figure 3 A simplified example of a single qubit is illustrated.

[0063] Figure 4 An example control sequence is illustrated.

[0064] Figure 5 Another example of a quantum computing system with embedded code is illustrated.

[0065] Figure 6 A method for controlling a quantum processor performed by a distributed data processing system is illustrated.

[0066] Figure 7 A method for controlling a quantum computing processor performed by code embedded in a quantum processor is illustrated.

[0067] Figure 8 An example user interface in which a user can create a new assessment is illustrated.

[0068] Figure 9 A user interface in which a user can select one of different assessment options is illustrated.

[0069] Figure 10 A user interface including a list of assessments is illustrated.

[0070] Figure 11 Other user interfaces showing the results of a particular assessment are illustrated.

[0071] Figure 12 Shows a Figure 11 user interface similar to but including additional user input elements.

[0072] Figure 13 Shows a user interface after a user clicks on one of the block diagrams in Figure 11 .

[0073] Figure 14 A user interface for creating a new profile characterizing noise in a quantum processor is illustrated.

[0074] Figure 15 The figure illustrates a user interface showing the created profile.

[0075] Figure 16 The figure illustrates a user interface showing profile details. Detailed Description

[0076] The present disclosure provides a quantum computing system in which a user, such as an operator or researcher of a commercial quantum computer, can interact with an intuitive user interface to identify and execute stabilizations of qubit control. In particular, the user interface helps the user identify suitable controls to be executed on the quantum computing system. The user interface interacts with a cloud-based computing system to execute algorithms for characterization of the quantum computing hardware, performance evaluation of various control methods given the characterization, and optimization of controls given the characterization. As a result, the cloud system returns a control sequence that reduces errors caused by defects in the control or control hardware in the quantum computer and returns performance metrics such as error probability. The computational load of these algorithms is so large that it is impractical to run them on a local computer. Alternatively, the cloud can spin up a large number of machines in a relatively short time frame to meet the needs at hand. The computed control sequence can then be applied to the qubits in its operation.

[0077] In other words, the quantum control system is designed to generate and execute noise-aware / noise-suppressing quantum control. This is different from pure static distortion because the present disclosure focuses on potentially time-varying perturbations that can degrade the operation fidelity and that are addressed by the control designs disclosed herein.

[0078] Noise-suppressing quantum control can be created by one of two main methods:

[0079] 1) Time-domain "robust control", where the optimizer seeks to generate an optimized control signal that is robust to realistic time-domain perturbations added during the optimization process. The optimizer selects a solution that minimizes a user-defined cost function in the presence of these added perturbations.

[0080] 2) Optimization of filtering using a multi-dimensional filter function computed for an arbitrary-dimensional Hilbert space (i.e., the quantum system). Here, the system computes a filter function for control and optimizes the properties of the frequency-domain filter function response to suppress the dominant noise processes.

[0081] In both cases, adding noise awareness / suppression to the optimization process adds significant computational complexity, which is well handled by a distributed solution, allowing the use of parallel computing such as cloud-based multi-core processors and / or graphics processing units in addition to conventional processors. This can be physically remote or on-site, but separate from "embedded" processing, which is designed to handle simpler tasks in so-called "tight SWAP" (tight size, weight, and power) settings.

[0082] Figure 1 FIG. illustrates a quantum computing system 100 that includes a quantum processor 101, a distributed data processing system 102, and a user interface device 103. In Figure 1 the example, the user interface device is a local computer system, which is also the master control system of the quantum processor 101 in the sense that a user can interact with the local computer system 103 to gain access to the quantum processor 101. In other words, the user controls the data being processed by the quantum processor 101 through the local computer system 103. However, in other examples, the user interface 103 is separate from the control system of the quantum processor 103.

[0083] The quantum processor 101 implements one or more operations on a plurality of qubits 104. In this example, the plurality of qubits are in the form of a 5 by 3 array of qubits, but other arrangements including linear arrays and other structures with more qubits are equally possible. Example architectures that can be controlled using the disclosed system include Google's Bristlecone and IBM's Q Experience. The operations implemented by the quantum processor 101 can include a universal gate set to perform "circuit model" quantum computing, entanglement operations for measurement-based quantum computing, or adiabatic evolution for adiabatic quantum computing.

[0084] Figure 2 The quantum processor 101 is illustrated in more detail. In particular, the quantum processor 101 includes qubits 104 as in Figure 1 but now also shows a control signal source 201 that generates control signals 202 to control the qubits 104. Depending on the physical implementation of the qubits, the control signals can be RF signals, microwave signals, or optical signals. It can be delivered globally or locally to the qubits depending on the architecture and implementation. The signals can be customized individually for each qubit or can be applied homogeneously to all qubits. The control signals 202 can be the same signals typically used to apply quantum operations to the qubits 104 or can be a separate parallel control system.

[0085] Importantly, there is also an environment 203 in which the qubit 104 operates. Although the environment 203 can exhibit spatial and temporal correlations, the environment 203 is drawn as an irregular shape to indicate that the environment 203 is relatively difficult to accurately characterize and behaves in a random manner. More specifically, the qubit 104 interacts with the environment in an undesired but inevitable way. For example, the qubit 104 can interact with the environment 203 through various mechanisms, which results in the decoherence of the quantum information stored on the qubit 104. The environment 203 can be the same for many qubits 104 in the processor 101 or vary drastically between qubits. In the absence of countermeasures, this decoherence occurs faster than most quantum algorithms and, unless the decoherence is reduced, will significantly affect the individual quantum logic operations within the quantum processor as well as the performance of the final algorithms executed on the quantum processor. Therefore, the task of the control signal 202 is to control the qubit 104 such that the effects of decoherence are attenuated.

[0086] Figure 3 A simplified example of a single qubit 300 is illustrated, where the quantum state of the qubit 300 is represented as a Bloch vector on a Bloch sphere 301, in which the north pole 302 represents the |1> ground state (e.g., up spin) and the south pole 303 represents the |0> ground state (e.g., down spin). The current quantum information can be encoded as a superposition of the two ground states as indicated by the first vector 303. In the current example, the goal is to perform an idle operation or memory. Due to the interaction of the qubit 300 with the environment 203, the vector rotates by an unknown and uncontrolled amount, and after a certain time, reaches a different position as indicated by the second vector 304. This corresponds to the randomization of the information encoded in the qubit state described by the state vector. It is now possible to apply a control signal that "flips" the second vector 304 by 180 degrees, thus reaching a new position as indicated by the third vector 305. If the control signal is then turned off for the same amount of time as between 303 and 304, due to the interaction with the environment, the third vector 305 will rotate exactly to the position of the first vector 303. As a result, in this case the effects of the noise described as the interaction with the environment 203 are perfectly eliminated. This is a simple example of open-loop control that stabilizes the quantum state against environmental decoherence.

[0087] Figure 4 Illustrated is a corresponding control sequence 400 that applies a single control pulse 401 between t1 402 and t2 403 to flip the qubit as shown in Figure 3 In this example, this means that the RF source 201 is turned on at t1 and off at t2.

[0088] Although Figure 3 andFigure 4 The example in [0] provides perfect cancellation of external noise due to static "dephasing" interactions with the environment 203, but the situation is more complex in a practical scenario. In particular, the environment 203 can vary over time, resulting in imperfect cancellation of unwanted rotations via the applied control. Alternatively, the desired quantum operation can be a logically non-trivial operation such as a qubit flip or a phase flip, for which the simple method is ineffective. The inability to use a control adapted to the characteristics of the environment 203, the coupling mechanism between the environment 203 and the qubit 300 (one of several within 104), and the desired quantum logic operation being applied to the qubit 300 (one of several within 104) will lead to qubit decoherence and thus algorithmic errors in the quantum processor 101.

[0089] Importantly, the details of the environment 203 and its coupling mechanism with the qubit 104 are specific to the quantum processor 101 and vary over time, where the relevant time scales (microseconds to hours) are also characteristics of the quantum processor 101. Additionally, most interactions with the environment 203 cannot typically be corrected by a single pulse, but rather require multiple controls forming a sequence; the timing and nature of each segment within the sequence are chosen to optimize the performance of the desired operation (including but not limited to memory (I), bit flip (X), phase flip (Z), T, S, CNOT, CPHASE, or other entanglement gates). Combined, this creates a complexity that makes it difficult for a local computer system to efficiently compute an appropriate control solution.

[0090] Additional information including mathematical formulas for a potential algorithm for determining relevant control can be found in the following articles, which are hereby incorporated by reference: Todd J Green, Jarrah Sastrawan, Hermann Uys, and Michael J Biercuk, “Arbitrary quantum control of qubits in the presence of universal noise,” New Journal of Physics 15 (2013); H. Ball, W. D. Oliver, and M. J. Biercuk, “The role of master clock stability in quantum information processing,” Nature Quantum Information 2, 16033 (2016). In particular, these articles address the problem of deriving expressions for calculating errors induced by universal decoherence in qubits undergoing arbitrary, single, time-dependent quantum control protocols. They show that the fidelity of control operations can be expressed in terms of noise in all Cartesian directions and the experimentally relevant spectral properties of the control. There are formulas for control matrices in the time domain to capture the effects of piecewise-constant control, and it is shown how to transform them into generalized Fourier domain filter functions. These generalized filter functions can be derived for complex time-modulated control protocols, taking into account the sensitivity of the qubit state vector to rotations in three dimensions. Additionally, the filter functions can be used as tools for determining error-suppressing control, as demonstrated in the following articles: A. Soare, H. Ball, D. Hayes, M. C. Jarratt, J. J. McLoughlin, X. Zhen, T. J. Green, and M. J. Biercuk, “Experimental noise filtering by quantum control,” Nature Physics 10, 825–829 (2014); H. Ball and M. J. Biercuk, “Walsh-synthesized noise-filtering quantum logic,” EPJ Quantum Technology 2, 1 (2015).These ideas have been extended in T. J. Green and M. J. Biercuk, “Phase-modulated decoupling and error suppression in qubit-oscillator systems,” arXiv:1408.2749, Physical Review Letters 114, 120502 (2015) to meet the specific needs of multiqubit gates. Collectively, this shows that the framework provides a computationally efficient means of calculating the effect of general noise on any quantum control protocol, yielding results comparable to those obtained via time-consuming simulations of Bloch vector evolution. As a concrete example, the method can be applied to address the problem of dynamical decoupling (realization of a memory) incorporating realistic control pulses of arbitrary duration or form, including replacing simple π pulses with complex dynamically corrected gates.

[0091] Specific algorithms designed to allow efficient determination of the properties of the environment 203 are described in the following articles: V. M. Frey, S. Mavadia, L. M. Norris, W. de Ferranit, D. Lucarelli, L. Viola, and M. J. Biercuk, “Application of optimal band-limited control protocols to quantum noise sensing,” Nature Communications 8, 2189 (2017); L. M. Norris, D. Lucarelli, V. M. Frey, S. Mavadia, M. J. Biercuk, L. Viola, “Optimally band-limited spectroscopy of control noise using a qubit sensor,” arXiv:1803.05538 (2018); and G. A. Alvarez and D. Suter, “Measuring the spectrum of colored noise by dynamical decoupling,” Physical Review Letters 107, 230501 (2011). These algorithms describe the appropriate control applied to qubits 104 in the quantum processor 101 and the data fusion processes carried out to efficiently determine the noise spectrum and describe the coupling mechanism of the environment 203.

[0092] The use of physics-like additional correlation algorithms for closed-loop control based on measurement feedback is described in the following articles: J. Sastrawan, C. Jones, I. Akhalwaya, H. Uys, and M. J. Biercuk, “Analytically exploiting noise correlations inside the feedback loop to improve locked-oscillator performance” Physical Review E 94, 022204 (2016); S. Mavadia, V. Frey, J. Sastrawan, S. Dona, M. J. Biercuk, “Prediction and real-time compensation of qubit decoherence via machine learning” Nature Communications 8, 14106 (2017). In these works, the filter function again forms the tool to determine the appropriate stabilization correction to be applied to the qubits experiencing decoherence from the environment 203 based on the measurements performed in a timely manner on the qubits 104. The information extracted from the measurement records can be used to generate a “predictor” of future decoherence and the appropriate countermeasures to be deployed to pre-emptively counteract the action of the environment 203 and stabilize the qubits 104.

[0093] As described above, the computational complexity of these and other calculations of interest is high. For example, calculating the control sequence for just one CNOT quantum logic operation can take more than tens of minutes using conventional desktop computing hardware. Scaling this up to complex algorithms that perform dozens or hundreds of quantum logic operations between many qubits that are each precisely timed becomes computationally impractical for any desktop system.

[0094] The distributed data processing system 102 is programmed to perform these calculations to determine the control sequences. As described above, when the control sequences are applied to the quantum processor 101, they reduce the decoherence and decoherence-induced errors of one or more operations on multiple qubits.

[0095] To this end, the user interface device 103 remote from the distributed data processing system 102 receives the characteristics of the quantum processor 101 from the user of the quantum processor 101, including the operation constraints, desired performance, and / or the characteristics of the environment 203. The user interface 103 sends the characteristics to the data processing system 102 so that the data processing system 102 performs calculations to determine the control sequences based on the characteristics.

[0096] Figure 5FIG. illustrates another example of a quantum computing system 500, now the quantum computing system 500 includes embedded code 501 within a quantum processor 502. The embedded code 501 autonomously optimizes the quantum processor 502 that communicates with the distributed data processing system 102. The embedded code can be installed on an embedded microcontroller or processor (such as, an ARM or Pentium processor) (e.g., on a flash card), or on an FPGA (field programmable gate array) customized for the task of controlling the quantum processor 502. In this context, embedded means that the processor 501 is physically linked to the quantum processor 502, and there will generally be constraints on computing performance and capabilities. Additionally, from the user's perspective, the quantum processor 502 in which the code 501 is embedded appears to the user as a single device in the sense that the user directly interacts with the embedded code 501 rather than directly with the qubits 104. The embedded code 501 can also have real-time characteristics in the sense of ensuring a maximum response time to ensure timely control and correction of the qubits 104 based on current measurements. The embedded code 501 can perform various tasks, including performing hardware-level control commanded by other elements of the quantum processor 502.

[0097] Figure 6 FIG. illustrates a method for controlling a quantum processor 100 that implements one or more operations on a plurality of qubits, as determined by computations performed via a distributed computing environment 102. The distributed computing environment 102 generates 601 a user interface that can be used to receive user input related to the characteristics of the quantum processor from a user of the quantum processor. This can involve generating a website, such as writing HTML code to a web-accessible storage location, or dynamically modifying the website by using existing web frameworks (such as, the angular / flask framework) or using JavaScript, AJAX, or other web technologies.

[0098] The distributed processing system 102 receives 602 the user input and performs 603 computations based on the user input to determine a control sequence. As described above, when the control sequence is applied to the quantum processor 102 or 502 (i.e., the qubits 104), the sequence reduces decoherence, decoherence-induced errors, and control-defect-induced errors for one or more operations on the plurality of qubits.

[0099] In one example, the user may not have a complete characterization of qubit 104 at hand, or the characteristics of a new configuration or implementation of the qubit may simply be unknown. In such a case, the user can initiate a characterization routine, which means that the user input includes a request to determine the characteristics of quantum processor 102. The distributed data processing system 102 then performs calculations based on the user input to determine a control sequence that, when applied to the quantum processor, allows the characteristics of the quantum processor to be measured.

[0100] For example, the characteristics of processor 102 can include the distortion of the desired control waveform, which can be measured by applying a control sequence that probes the system response. This includes modulation pulses designed to probe the system response at a fixed frequency on a long time scale and pulses configured to probe the transient response. The result is information about the ability of processor 101 to achieve the desired control without distortion, which can be returned to the distributed data processing system 102. There, an algorithm can compute a pre-compensation scheme that compensates for these characteristics or otherwise appropriately takes them into account when determining the control to be applied to qubit 104.

[0101] In another example, the measurement of the characteristics includes computing a frequency domain filter function on the distributed data processing system for the determined control sequence to be applied to qubit 104. Then, the filter function can be applied to the process of error budgeting and control selection in the sense that the filter response calculation from the field of systems theory can be applied to the system. For example, the convolution of the control (described by the filter function) with the input signal that causes decoherence will produce an expected output signal (e.g., error probability). The convolution of the noise in the time domain with the control is efficiently represented as a product in the frequency domain, which constitutes an advantage of this method. This can be used to optimize the control sequence as an input function until the desired output signal is computed.

[0102] In other examples, the user input includes an indication of a control waveform created by the user via the user interface. For example, the user may wish to apply a specific control waveform that the user has designed to suppress known errors or that has been identified by others in the open literature to processor 102, or may already know which waveform is optimal for a given implementation. Then, the waveform can be compared with other waveforms input by the user and analyzed via calculations performed by the distributed data processing system 102. In this case, it is advantageous for the user to be able to specify the waveform in the user interface, and in this way the user can conveniently analyze the waveforms in the software package.

[0103] There can also be a library of waveforms and protocols, which can be stored on the distributed data processing platform 102 and presented to the user via, for example, a drop-down menu. When the user selects one of the waveforms or protocols and submits the selection, the user input received by the distributed data processing platform 102 includes an indication of one or more control protocols or waveforms or both. The library can be pre-computed in the sense that computationally intensive calculations common (non-specific) to a particular implementation have been performed earlier, and the results are stored in the library for future use in computing solutions for a particular implementation or architecture.

[0104] For example, the calculation can involve the analysis of control waveforms to determine the error budget of a plurality of qubits 104 determined from the characteristics of the quantum processor 101 sent to the distributed data processing system 102 via multiple means and one or more selected controls. Then, the error budget can be displayed on the user interface 103.

[0105] There are different control paradigms that can be used in this context, including open-loop and closed-loop. In open-loop control, the qubits 104 are characterized, and then the characterization is used to compute a control sequence by mathematically minimizing the expected decoherence of the characterized qubits 104. In closed-loop control, there are measurements available for the qubits 104, which allow the control sequence to be iteratively improved to optimize the actually observed quantity. Both of these paradigms can be implemented in the field of systems theory, which is based on transfer functions, frequency responses, and frequency analysis after transformation from the time domain (including Fourier transform). This can involve multiplying the frequency domain response function with the frequency domain control sequence (equivalent to the convolution of time domain functions) to determine the expected output signal. Additionally, in closed-loop control, repeated measurements can be used to perform real-time correction of the state of the qubits. Algorithms involving filter functions or other algorithms capable of extracting information about future evolution from past measurements can be used to determine the correction to be applied. This closed-loop control can also be combined with optimized open-loop control. The representation can be used to minimize the expected decoherence.

[0106] Another important aspect of the calculation is the ability to characterize the input noise, which also represents the characteristics of the interaction with the environment 203 (see Figure 2)。The user may input known noise characteristics into the user interface 103, or the distributed processing system 102 may determine a control sequence that allows the noise characteristics to be measured from the qubit 104. The measurement results can then be returned to the distributed data processing system 102 for further calculations to be performed when determining the characteristics of the environment 203 and the qubit 104 based on the above algorithms. For example, the applied control sequence may make the qubit 104 sensitive only to a specific frequency (i.e., a narrow frequency band), which can be used as a probe for measuring the noise at that specific frequency. The measurement results can then be combined according to the algorithms in the distributed data processing system 102 to determine the frequency-resolved spectrum of the noise characterizing the environment 203. Then, the calculation of the control sequence for the operation of the quantum processor 101 uses the noise characteristics to determine the control sequence that minimizes decoherence.

[0107] As an alternative to direct user input, measurements can be made over time to iteratively and autonomously optimize the control sequence. In this context, autonomous means that the quantum processor 502 with embedded code performs measurements and updates of the noise profile characterizing the environment 203 or other system parameters of the quantum processor 502, or the determination of optimal control without direct user intervention. The embedded code 501 can perform a set of calculations without interacting with the distributed data processing system 102.

[0108] In other examples, the distributed data processing system 102 is indeed involved in the sense that it receives the current measurements from the quantum processor 502 and adjusts the control sequence based on the current measurements. The distributed data processing system 102 then sends the adjusted control sequence to the quantum processor 502 to update the information stored in the embedded controller 501. Then, the embedded controller 501 can be requested by other control systems within the quantum computing system 502 to apply the optimally or otherwise calculated control operations designed to suppress decoherence and errors.

[0109] The noise characteristics can include a series of different parameters, including predefined clock noise (the deviation of the arrival time of the clock signal), predefined environmental dephasing (the rotation of the qubit due to entanglement with the environment 203 as shown in Figure 3 ), predefined amplitude noise (the variation in the length of the measured vector or the received power); and a noise spectrum determined from user input (indicating different noise contributions at different frequencies).

[0110] As a supplement or alternative to noise compensation, the control sequence can also make the qubit 104 adopt adjusted system dynamics different from the native system dynamics of the quantum processor 502, which is also known as quantum simulation. This extends the computational power of the quantum processor 502.

[0111] Figure 7 Method 700 for controlling a quantum computing processor 501 that implements one or more operations on a plurality of qubits 104 is illustrated. In this case, method 700 is executed by embedded code 501 and includes executing the code 501 to perform the following operations. First, the embedded code 501 schedules calibration measurements and receives 701 measurements related to the plurality of qubits, such as noise measurements based on a prescribed measurement control sequence. Then, the embedded code 501 connects to a distributed data processing system 102 to cause the distributed data processing system 102 to perform calculations to determine a set of control parameters based on the calculations performed by the distributed data processing system and the measurement results 701. For example, these parameters can reconstruct the noise spectrum characterizing the environment 203. The distributed data processing system uses these parameters to determine a control sequence that, when applied to the quantum processor, reduces decoherence and decoherence-induced errors in one or more operations on the qubits 104. The control sequence is returned to the embedded processor 501 and stored locally. This is then used to update local information that defines the control operations performed on the qubits 104. Such local information can include a machine language description of abstract quantum logic operations such as qubit flips (X) or phase flips (Z). In this case, whenever an algorithm that calls a qubit flip or phase flip operation is executed, the definition stored locally by the embedded processor is called and sent to the physical control hardware 201 that performs operations on the qubits 104.

[0112] As cited above, Todd J Green, Jarrah Sastrawan, Hermann Uys, and Michael JBiercuk, “Arbitrary quantum control of qubits in the presence of universal noise,” New Journal of Physics 15 (2013) provides analytical expressions for calculating universal decoherence-induced errors in qubits. In particular, the control matrix in the frequency domain is described as

[0113]

[0114] where,

[0115]

[0116] This describes a filter function for an arbitrary operation performed on a single qubit, which is computed on a distributed data processing system 102. The operation can be described as piecewise constant but containing many (n) time segments in order to approximate a smoothly varying control waveform (e.g., a Gaussian-shaped pulse for qubit flipping). As a result, the filter function computation is computationally challenging.

[0117] An advantage of this architecture is that computationally intensive tasks that are not suitable for embedding are outsourced to the distributed data processing system 102. Less computationally intensive tasks can be performed closer to the qubit 104, which reduces latency. Finally, information from both the distributed data processing system and the embedded code is used to determine the final control sequence to be applied to the qubit 104.

[0118] In one example, the embedded code 501 queries the distributed data processing system 102 at set intervals or other schedules to periodically update a set of parameters from the distributed data processing system 102. It may not be clear from the operation of the quantum processor 502 when a new set of parameters is needed, so having a schedule that ensures periodic updates of the parameters based on a schedule is useful.

[0119] In another example, the distributed data processing system 102 can compute parameters across a series of different scenarios (such as 1000 different sampling points for the operation space). When the embedded code 501 updates or receives these parameters from the distributed data processing system 102, the embedded code 501 repeatedly stores these parameters in a lookup table according to a schedule. Then, the embedded code 501 can apply the control sequence to multiple qubits and determine the control sequence based on the parameters from the lookup table by reading the parameters from the lookup table between scheduled updates. In this way, the operation of the qubit 104 can vary across the operation space without further updates from the distributed data processing system 102. Also, when the computation for one point in the operation space is already computationally intensive, computing across multiple points in the space is undoubtedly a difficult task for most standard computers.

[0120] In yet another example where the embedded code 501 interacts with the distributed data processing system 102, certain closed-loop control protocols involve combining local measurement results in real time with pre-computed coefficients from a large data set. Although the latter is computationally intensive and most suitable for distributed processors, the pre-computed coefficients via the distributed data processing system 102 can be sent to the embedded code 501; here, the embedded code 501 can use known mathematical functions to combine new measurement results from the qubit 104 with these coefficients.

[0121] More specifically, in Sandeep Mavadia, Virginia Frey, Jarrah Sastrawan, Stephen Dona & Michael J. Biercuk, “Prediction and real-time compensation of qubit decoherence via machine learning”, Nature Communications, Volume 8, Article number 14106 (2017), the authors describe a process in which they first calculate weighted coefficients w for past measurements, and then these weighted coefficients are combined to allow future prediction of qubit state evolution. The optimization process for calculating w from a large dataset is computationally intensive and is performed via a distributed data processing system 102. However, the real-time combination of the most recent measurements using pre-computed w stored in an embedded processor can be performed with low computational complexity via local embedded code 501 to return the label φ k at time t P (t k ).

[0122] Figure 8 FIG. illustrates an example user interface 800 in which a user can create a new evaluation, which is a process of generating characteristics of the quantum processor 101 by analyzing control operations. The user interface 800 includes input fields for an evaluation title 801, a maximum Rabi rate 802, and a polar angle 803. Alternatively, the user can drag and drop or select a CSV or other data file containing the desired information. Finally, the user can submit the data by activating the submit button 805. Specific elements of the user interface can be customized for different types of relevant control operations to be inspected

[0123] Figure 9 FIG. illustrates that a user can select one of different evaluation options including a single qubit evaluation 901 of a control pulse, a single qubit evaluation 902 of a timing sequence of a control pulse, a multi qubit gate evaluation 903, a single qubit evaluation 904 of a pulse sequence, and a cross resonance multi qubit evaluation 905. A variety of other evaluations can be performed according to the above algorithms and accessed via the user interface

[0124] Figure 10Illustrates a user interface including a list of evaluations, each evaluation having fields for a title 1001, a type 1002, a polar angle 1003 (which may be an angle measured relative to the z-axis orthogonal to the axis between the |0> and |1> states), a maximum Rabi rate 1004, and a creation date 1005. The user can conveniently view the evaluations defined for the quantum processor 101 at this time. There are various possible data display formats and comparison methods available within the user interface 1000 for creating controls applicable to the quantum processor 101.

[0125] Figure 11 Illustrates another user interface 1100 showing the results of a particular evaluation. In particular, the user interface 1100 includes spectral representations of amplitude noise 1101 and dephasing noise 1102. The relative performance of different controls (visually represented at 1106, 1107, and 1108) can be represented via bar graphs 1102, 1104, 1105 (or other graphical forms) to allow for easy comparison based on the results calculated using a distributed data processing system. The relevant information to be displayed can be the average infidelity and worst-case errors.

[0126] Figure 12 Shows Figure 11 Another user interface 1200 similar to the user interface but containing additional user input elements 1201. In particular, the user can select between different control sequences, which include primitives, CORPSE, and other control sequences known to suppress errors caused by control defects or decoherence from the environment 203. After selecting a sequence, the user interface 1200 is updated to display the results of that control sequence. In this way, the user can conveniently compare the effects of different sequences with the quality of the results.

[0127] Figure 13 Shows the user interface after the user clicks on Figure 11 one of the block diagrams 1106 in the block diagram, which presents the block diagram 1106 in more detail.

[0128] Figure 14 Illustrates a user interface 1400 for creating a new profile characterizing the noise in the quantum processor 101. The user interface 1400 includes a title 1401, a maximum frequency 1402, a maximum duration 1403, a maximum Rabi rate 1404, and a desired net operation 1405. There are various methods available for generating and displaying and comparing this information within the user interface, which is an advantage of this method.

[0129] Therefore, Figure 15Shows the created configuration file, which has fields for briefly describing the title 1501, status 1502, polar angle 1503, maximum Rabi rate 1504, creation date 1505, and creator 1506.

[0130] Figure 16 Illustrates a user interface 1600 that shows profile details, including the maximum Rabi rate, maximum frequency, number of samples, duration, maximum Slepian order, Slepian order type (which involves finding a time series of a given length whose discrete Fourier transform is maximally localized over a given frequency interval as measured by the spectral density), and modulation type. Importantly, the user interface 16 also shows the expected noise spectrum 1602 reconstructed using complex algorithms and measurements returned from the quantum processor 101. The user interface 1600 also shows the steps requested from the user, including step one 1602 of creating a profile and uploading a CSV, and step two 1603 of uploading the results to the distributed data processing system 102.

[0131] Those skilled in the art will understand that numerous variations and / or modifications can be made to the above-described embodiments without departing from the broad general scope of the disclosure. The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive.

Claims

1. A quantum computing system, comprising: A quantum processor that implements one or more operations on a plurality of qubits having qubit states, the one or more operations including entanglement gates; A distributed data processing system programmed to perform calculations to determine a first control sequence that, when applied to the quantum processor in the form of an electromagnetic field to directly control qubit states, reduces decoherence, decoherence-induced errors, and control-defect-induced errors in the one or more operations on the plurality of qubits, wherein, The calculations include determining a second control sequence to measure the noise characteristics of the plurality of qubits in the quantum processor; and The calculations are used to determine the first control sequence using the noise characteristics; wherein, the calculations further include: Deriving a Fourier domain filter function in the frequency domain for the one or more operations on the plurality of qubits based on the characteristics of the quantum processor, the Fourier domain filter function indicating the effect of noise on the one or more operations on the plurality of qubits, and the Fourier domain filter function having the first control sequence as an input function; and Using the product in the frequency domain to optimize the first control sequence until a desired error probability is calculated; and A user interface device remote from the distributed data processing system for receiving from a user of the quantum processor the characteristics of the quantum processor including operation constraints and / or desired performance, and sending the characteristics to the distributed data processing system to cause the distributed data processing system to perform the calculations to determine the first control sequence based on the characteristics.

2. The system according to claim 1, further comprising embedded code within the quantum processor that autonomously optimizes the quantum processor communicating with the distributed data processing system by performing measurements of the quantum processor, receiving an adjusted control sequence from the distributed data processing system, and updating the noise characteristics of the plurality of qubits of the quantum processor to determine updated noise characteristics; Among them, The distributed data processing system uses the updated noise characteristics to adjust the first control sequence.

3. A method for controlling a quantum processor that implements one or more operations on a plurality of qubits having qubit states, the one or more operations including entanglement gates, the method comprising: Generating a user interface to receive user input related to the characteristics of the quantum processor from a user of the quantum processor; Receiving the user input on a distributed data processing system; Performing calculations on the distributed data processing system based on the user input to determine a first control sequence that, when applied to the quantum processor in the form of an electromagnetic field to directly control qubit states, reduces decoherence and decoherence-induced errors in the one or more operations on the plurality of qubits, wherein, The calculation includes determining a second control sequence to measure noise characteristics of the plurality of qubits in the quantum processor; and The calculation is used to determine the first control sequence using the noise characteristics; and wherein the calculation further includes: Deriving a Fourier domain filter function in the frequency domain for one or more operations on the plurality of qubits based on the characteristics of the quantum processor, the Fourier domain filter function indicating the effect of noise on the one or more operations on the plurality of qubits, and the Fourier domain filter function having the first control sequence as an input function; and Using the product in the frequency domain to optimize the first control sequence until a desired error probability is calculated.

4. The method according to claim 3, wherein, The user input includes a request to determine the noise characteristics of the quantum processor, and the method includes performing a calculation on the distributed data processing system based on the user input to determine a control sequence that allows measurement of the noise characteristics of the quantum processor when applied to the quantum processor.

5. The method according to claim 4, wherein, The noise characteristics of the quantum processor include distortion of the quantum processor.

6. The method according to claim 4, wherein The measurement of the noise characteristics includes calculating a frequency domain filter function on the distributed data processing system for the determined control sequence and applying the frequency domain filter function to a direct measurement from the quantum processor.

7. The method according to claim 3, wherein The user input includes an indication of one or more protocols or waveforms or both from a pre-computed library selected by the user through the user interface.

8. The method according to any one of claims 3 to 7, wherein, The calculation is based on a plurality of measurements from the quantum processor over time to iteratively and autonomously optimize the control sequence.