Hybrid algorithm

An Overview for Hybrid Algorithm and Its Architecture

What is a Hybrid Algorithm?

While you were skimming over quantum programming, you’ll probably heard of “hybrid quantum-classical computing”. Hybrid quantum-classical computing is a hot topic among quantum computing enthusiasts and it typically refers to a set of programs that runs on a quantum processor. Programs such as variational quantum algorithms and quantum approximate optimization algorithms.

But what does “hybrid” really mean?

In layman terms, “hybrid” means a program that runs both classical and quantum code. Quantum code is defined as a sequence of quantum gates that is applied to one or multiple qubits on a quantum device or quantum processing unit i.e. QPU. “Classical” refers to a program that runs on a regular computer, written in available programming language. Typically anyone can choose to easily interface with quantum computing services.

Hybrid quantum computing is the preferred industry term for a simple idea: “A quantum computer and a classical computer working together to solve a problem.” It is an approach that takes the form of a back-and-forth collaboration where different aspects of a problem are passed between the quantum and classical tools best suited for each stage. According to scientists, hybrid quantum-classical algorithms are maybe one of the best ways for users to get the most out of a current or near-term quantum computer. Keeping in mind the edge existing classical systems possess in terms of hardware, there are a lot of things in which classical computers are better, or faster at. By letting the classical computer do what it’s good at and quantum computers do what it’s good at, could be a better solution.

Hybrid architecture for quantum algorithms:

The gate-based quantum computers are not universal. On the other hand, global unitary operations like the shift operator cannot be expressed within the circuit model, cannot be equally applied to machines with unlimited and limited memory and cannot be assumed to be equally available on different quantum hardware architectures.

To overcome the above restrictions, quantum programming uses a classical universal language to define the actual sequence of elementary instructions for a quantum computer, so a program is not intended to run on a quantum computer itself, but on a (probabilistic) classical computer, which in turn controls a quantum computer and processes the results of measurements. In the terms of classical computer science, you can describe this setting as a universal computer with a quantum oracle. Figure 1 shows the hybrid architecture.

Quantum algorithms such as Shor’s algorithm are in two separate parts: First part is classical algorithm which can be done on a classical computer and second part is Quantum algorithm which can be done on a quantum computer or can be simulated on classical computer.

Fig 1. The hybrid architecture between classical and quantum computers.

hybrid 1
Fig 1. The hybrid architecture between classical and quantum computers.

Naturally quantum algorithms are the hybrid algorithms that consist of a classical and a quantum component. However, the quantum part of the manu algorithm is probabilistic, often they need multiple runs to get desired result. The complete cycle of the hybrid architecture for the quantum algorithms will be done as follows:

  • Pre-calculate certain classical factors (initialize and run the classical part of the algorithm)
  • Running the quantum algorithm by the quantum circuit
    • Initialize the quantum node (Initialize quantum circuit and define all gates, switches and unitary function)
    • Prepare inputs state (store inputs on target and control registers)
    • Execute the quantum portion of the algorithm (Apply gates and unitary transformation on input data)
    • Measure the output of Machine State (Measure the output registers of the quantum circuit)
    • Evaluate Measurement (If have the desired result, then doing post-processing in step 3)
    • Exit if desired result (If solution found then exit from quantum circuit, else repeat step 2)
  •  Finish post-processing (Run the second classical part of the algorithm)

Fig 2.

hybrid 2
Fig 2.

Steps 1 and 3 were executed on classical computers and step 2 was executed on quantum computers by quantum circuits. Measuring and evaluating the quantum circuit in steps 2(e) and 2(f) can be done on classical computers. The diagram in Fig. 3 shows the development of a general plan of hybrid architecture for the quantum algorithms and being simulated on classical computers. The quantum circuit is simulated on a classical computer.

7 Responses

Leave A Comment

Your email address will not be published. Required fields are marked *