What is Quantum Computer? Explanation of the mechanism of operation, development roadmap, future vision: CodeZine
1.1 What is a quantum computer?
Quantum computers are new computers that are different from conventional computers. First, I will explain what kind of computer a quantum computer is and its position.
What is calculation? Please remember when you started learning math when you were in the first grade of elementary school. We learned the numbers from 1 to 9 and learned to add, subtract, multiply and divide. With this, you can now count things, calculate time and make plans, calculate money and live your daily life.
After that, I learned more complex calculation methods, manufacturing products, designing buildings, measuring the global environment, and learning that calculations are used in various jobs. . But when we were in high school, we started to realize that we humans didn't have much computing power. Calculations with large numbers are limited to about 5 digits by hand, and calculations with shapes are limited to simple circles and triangles.
Therefore, use a calculator. There are various kinds of calculators, but here we will call all machines for calculations as calculators. The most familiar calculator is a calculator (electronic desktop calculator). In the old days, we used an abacus instead of a calculator. This makes it possible to perform calculations with a large number of digits at high speed.
And when it comes to more complicated calculations, a computer is used. By learning the equations that appear in X and Y, you will be able to create calculation formulas without directly handling numbers, and by using these to create programs, you will be able to use computers to perform complex calculations that are difficult to calculate by hand. Become. If you know the basic equations, you can calculate and find answers for thousands of digits and complicated three-dimensional figures.
Computers, which are calculators that use the power of electricity, were put into practical use around 1960, and now anyone can use them and they have become a part of our lives. Computers have made it possible to break through the limits of human computing power. Figure 1.1 shows the development of computers.
Even computers, which are calculators that use electricity, have limits somewhere. Over the past 60 years or so, computers have evolved steadily, becoming capable of high-speed calculations and becoming easier to use. However, the problems that humans want to solve have evolved (complicated and complicated) at the same speed. Simulations of complex three-dimensional objects and materials that behave in a quantum-mechanical manner are difficult to compute even with the latest state-of-the-art computers.
Recently, a technology called blockchain has been attracting attention, and this is a system created using the existence of problems that are difficult to calculate even with current computers. The technology of machine learning is also attracting attention, but it also needs to solve problems that take a lot of time to calculate.
Therefore, breaking through the limits of current computers is very important, and it is believed that this will make the world a better place (Figure 1.2). So how can we break through the limits of computers? Quantum computers are expected to be one of the answers.
Quantum computers are being researched and developed as next-generation high-speed computers. Modern computers cannot solve all difficult problems, but if they can solve even a few of them, they are expected to have a great impact on society.
First, I will briefly explain what a quantum computer is. A quantum computer is defined in this book as "a computer that achieves high-speed computation by actively using physical states unique to quantum mechanics." The "quantum" of quantum computers is the "quantum" of quantum mechanics.
Quantum mechanics is one of the physics that students learn at the university level, and it is a theory developed to explain the movement of very small things such as atoms and electrons. According to this quantum mechanics, in minute things such as atoms, electrons, and photons, which are particles of light, and in substances cooled to extremely low temperatures, such as superconductivity, mysterious phenomena that we do not usually see occur. is known and has been experimentally confirmed.
For example, the "superposition state" and "quantum entanglement state", which are physical states peculiar to quantum mechanics, which will be explained later, are realized. A quantum computer is an attempt to make a computer by actively using the physical state peculiar to quantum mechanics. This makes it possible to perform computations called quantum computations that are more powerful than previous computations.
Research is revealing that this quantum computation has a potential that is essentially different from conventional computation. The development of a quantum computer is a physics and engineering challenge to create a computer that surpasses the limits of conventional computers by controlling the "quantum" at a high level (Fig. 1.3).
Here, let's organize the differences between quantum computers and ordinary computers. First of all, we can think that there are two types of “calculation”. One branch of physics is classical computing, which is based on classical physics, and the other is quantum computing, which is based on quantum physics (also known as quantum mechanics).
Classical physics is a physics that deals with the motion of objects, the action of forces, the properties of electromagnetism, etc., which are learned in junior high school and high school physics classes. On the other hand, quantum mechanics is a physics that deals with "the properties of atoms and electrons" learned at the science university level. Corresponding to these two physics, we can think that there are two calculations. The difference between classical computation and quantum computation will be explained in Chapter 3 and later. In this book, a device that performs quantum computation is called a "quantum computer", and a device that performs classical computation is called a "classical computer". For this reason, we refer to normal computers as "classical computers" in this book.
Quantum computing is upwardly compatible with classical computing, and any problem that can be solved by a classical computer can be solved by a quantum computer. This corresponds to the fact that all phenomena that can be treated in classical mechanics can (in principle) be treated in quantum mechanics (that is, classical physics is an approximation of quantum physics).
Furthermore, it is already known that problems that are difficult to solve with classical computers can sometimes be solved quickly with quantum computers. This corresponds to the fact that quantum mechanics can handle phenomena that cannot be handled by classical physics (Fig. 1.4).
Currently, there is no fixed definition of a quantum computer. Therefore, this book defines a quantum computer as shown in Figure 1.3. It should be noted here that ordinary computers are also driven by semiconductor devices (transistors, flash memories, etc.) that use quantum mechanical phenomena, but the "calculations" that can be performed are "classical calculations" corresponding to classical physics. The point is that it is
It is necessary to make a clear distinction between the physical phenomena used for realization and the calculations that can actually be performed. You can't. However, in order to perform quantum computation, it is essential to control the phenomena explained by quantum mechanics at a high level and to realize a special state that can be called a "physical state unique to quantum mechanics."
There are multiple types of what is called a quantum computer. In this book, quantum computers are classified into the following three types (Fig. 1.5).
A quantum computer that can perform versatile quantum calculations. To explain it in a little more detail, it means "a computer that can execute transformation from an arbitrary quantum state to an arbitrary quantum state with sufficient accuracy". Arbitrary quantum state here means the state of any number of qubits, and it is a universal quantum computer that can convert this to the desired state with sufficiently high accuracy (because it is difficult to do perfectly). I would say yes.
In addition, as the number of qubits increases and the conversion to be performed becomes more complex, the effect of noise increases, so the ability to correct errors during calculation (error resistance) it is necessary to have A quantum computer with error tolerance is called an "error tolerance quantum computer".
Although it cannot perform universal quantum calculations, it is capable of performing some quantum calculations, and is a quantum computer that has shown superiority over classical computers. A class of quantum computers currently being implemented that are not (or poorly) error-tolerant, called Noisy Intermediate Scale Quantum (NISQ), fall into this category. Details are explained in Section 1.2.6.
A computer that performs calculations using the physical state peculiar to quantum mechanics, or that aims to do so, and has not been shown to be superior to classical computers. Quantum annealers currently being developed are classified here.
Table 1.1 summarizes the features of these quantum computers. In this book, we regard the above three computers as "broadly defined quantum computers", and treat them in detail in this book.
"Broadly defined quantum computers" differ from "classical computers" in that they perform calculations using physical states unique to quantum mechanics. Within this "broadly defined quantum computer," the difference between "non-universal quantum computers" and "non-classical computers" is whether or not quantum computers have superiority over classical computers in terms of computational performance. And the difference between a "non-universal quantum computer" and a "universal quantum computer" is whether or not quantum computation has versatility.
In the previous section, we explained the classification of quantum computers as hardware. On the other hand, there are also types of computation, and in this book, we distinguish between two types of quantum computation models: "universal type" and "specialized type". A computational model is a model that describes how to perform computations.
You can describe any quantum computation. Quantum circuit models are representative of this. In addition, there are several computationally equivalent models such as measurement-type quantum calculation, adiabatic quantum calculation, and topological quantum calculation (see column on page 118) that are being studied. In this book, we will discuss quantum circuit models in detail.
・Quantum Circuit Model This model performs calculations using "quantum circuits" and "quantum gates" instead of the "circuits" and "logic gates" used in classical computers. It has been used since the early days of quantum computer research, and is the most standard model that can describe universal quantum computation.
You can describe specific calculations. This paper describes a computational model called quantum annealing. Quantum annealing is a computational model specialized for the purpose of computing the ground state of the Ising model (explained in Chapter 7), and the problem can be solved by mapping the problem to this Ising model.
· Quantum annealing In 2011, a Canadian venture company called D-Wave Systems commercialized it, and it suddenly became famous when Google and NASA participated in the research. Quantum annealing (Kadowaki and Nishimori, 1998) and quantum adiabatic calculation (Fahhi et al., 2001) theoretically proposed by Professor Hidetoshi Nishimori's group at Tokyo Institute of Technology and Edward Farhi's group at Massachusetts Institute of Technology It is based on a computational model called Based on these calculation models, calculations are performed by a special machine called "Quantum Annealer (Quantum Annealing Machine)" that specializes in quantum annealing.
1.2 Quantum computer basics
Now that you have a rough idea of what a quantum computer is, let's take a look at how it works. In this section, I will explain the flow of operations and the image of actually using a quantum computer, not the specific internal operations.
First, I will explain the basic flow of how a quantum computer works. The fundamentals of quantum computer operation common to both the quantum circuit model above and quantum annealing are shown in Figure 1.8. Let's explain how to perform calculations on a quantum computer in three steps.
Quantum computers have the smallest unit of computation called a quantum bit. It is the quantum version of what was simply called a "bit" in classical computers. Quantum computers are physically equipped with these qubits, and they are basically used to perform calculations. Therefore, we first prepare and initialize this qubit (Fig. 1.9).
Quantum computer calculations are realized by manipulating physically implemented qubits. The method of manipulating qubits is called “quantum gate operation” in quantum circuit models and “annealing operation” in quantum annealing. In this way, quantum computer calculations are realized by performing quantum operations on qubits (Fig. 1.10).
In order to obtain the calculation result, the state of the qubit is measured and the information of the calculation result is read (Fig. 1.11). The state of a qubit (quantum state) is fragile, and if an unnecessary measurement is made during a quantum operation in the middle of a calculation, the quantum state will be destroyed and the calculation will fail (make a mistake). Therefore, it is necessary to measure carefully at the necessary timing. The calculation by the quantum computer is completed in the above three steps.
Figure 1.12 shows the development roadmap for realizing a quantum computer. Roughly speaking, the trend is to break through the limits of classical computers and realize quantum computers. If we take a step-by-step look at this, we can see that devices that are positioned between classical computers and quantum computers are already being developed or are being researched. This section introduces this flow in the form of a development roadmap. Please use it as a reference to understand the position of each quantum computer.
First, after the "classical computer", which is a normal computer, a device that can be called a "non-classical computer" that utilizes quantum properties is being developed. This includes current quantum annealers, which are in the early stages of attempts to introduce quantum nature into computation. Then there is the stage of "non-universal quantum computers" that have been demonstrated to be capable of computations more powerful than classical computations.
Quantum supremacy (quantum supremacy) refers to the ability of quantum computers to efficiently perform calculations that are difficult for classical computers (superiority over classical computers). Demonstration of quantum supremacy by currently developed quantum devices is currently attracting attention.
A quantum computer at this stage is a quantum computer with imperfect error tolerance and cannot perform universal quantum computation. Therefore, achieving perfect error resilience leads to the ultimate goal of a universal quantum computer. It is said that it will take 20 years or more to realize this universal quantum computer.
However, the development of the previous stage is currently progressing steadily, and a device called NISQ (Nisk), which will be described later, and a quantum annealer are being developed. In the following, we will explain each stage with this flow in mind.
Let's explain the development stages for a quantum computer step by step according to Figure 1.12. The first thing I must explain is the latest trends in classical computer development. In order to break through the limits of conventional computers, classical computers continue to evolve further, and computers called non-von Neumann computers have been developed.
This is still a classical computer, but the calculation mechanism is different from a normal computer. A non-von Neumann computer is a "machine that solves a fixed problem at high speed", and while many ordinary computers have a basic configuration of "CPU + memory" called a von Neumann computer, there are other configurations. Such a computer is called a non-von Neumann computer.
In many cases, non-Von Neumann computers are designed specifically for specific problems, aiming for faster and lower power consumption calculations than von Neumann computers, and are called "machines that can quickly solve a given problem." ” has been developed. For example, chips specialized for massive matrix calculations and chips specialized for processing with machine learning have been developed.
A circuit that mimics a neural circuit called a neuromorphic chip, acceleration using a GPU (Graphic Processing Unit), and a system using an FPGA (Field Programmable Gate Array) have already been developed. Some of them are already in smartphones and so on, and we are benefiting from them without knowing it.
Quantum computers can also be positioned as one of the non-Von Neumann computers for the time being. However, while GPUs, FPGAs, TPUs, etc. are classical computations, they are fundamentally different in that they are quantum computations using quantum properties.
1.2.4 Nonclassical Computers
Computers in the development stage aiming for quantum computing are called "nonclassical computers" in this document. It is difficult to answer the question of whether a certain computer is actually performing quantum computation, in other words, whether it can perform superior computation compared to classical computation. Research and development such as repeated improvements are necessary. This requires a fairly long development period, and machines at this stage are treated as non-classical computers in this book.
Non-classical computers aim at quantum computing with devices that utilize quantum properties, including current quantum annealers and prototypes of a small number of qubits. These devices are development stage machines that have not been shown to be able to achieve computational performance superior to classical computing. Demonstrating superiority over classical computation is called quantum supremacy.
After demonstrating quantum supremacy, there is a development stage that does not yet lead to universal quantum computing, without scalability and error tolerance. Computers at this stage are called "non-universal quantum computers" in this book.
For example, if a quantum computer with 50 to 100 qubits with high precision could be created, it would be possible to overcome some of the limits of classical computers (it would be difficult to perform such calculations on a classical computer, and quantum supremacy would be demonstrated). It is possible to realize a non-universal quantum computer.
However, this non-universal quantum computer does not necessarily perform calculations that are useful to society and are more powerful than classical computers. Therefore, it is important to find useful algorithms for society using non-universal quantum computers. Quantum speed-up or quantum advantage are sometimes used to describe the fact that quantum computers surpass the performance of classical computers through calculations that are useful to society.
Quantum supremacy is rather the academic superiority of quantum computers, and quantum speedup and quantum advantage are words that mean the superiority of quantum computers in a more practical sense. increase.
A quantum computer called NISQ is emerging as a non-universal quantum computer. The classical computer we usually use does not miscalculate due to noise. The CPU and memory are not only manufactured with high precision, but also have an error correction function in the process, so they are very resistant to noise, and it is unlikely that you will be bothered by noise during normal use. think.
On the other hand, the non-universal quantum computer that is currently being realized still has a lot of noise. Quantum computers based on superconducting circuits, which are currently the most active in development, generate errors in the order of 0.1 to several percent when performing quantum operations such as quantum gate operations and qubit measurements.
And it is currently almost impossible to correct this error. Quantum computer error correction is an active research topic, but it is not easy to implement. Therefore, NISQ is attracting attention.
The term NISQ was introduced in December 2017 by John Preskill, an authority on quantum computer research at the California Institute of Technology, in a lecture titled "Quantum Computing in the NISQ era and beyond." is. NISQ is an acronym that stands for “Noisy Intermediate-Scale Quantum (computer)” and can be translated as “noisy intermediate-scale (50-100 qubits) quantum computer”.
This is considered to be the name that represents the quantum computer of the quantum circuit model that will be developed over the next several years. It is not yet known if NISQ can achieve quantum speedups. However, research on algorithms to achieve quantum speedup using NISQ is currently being actively carried out.
A quantum computer that has sufficiently increased the number of qubits, has acquired scalability and error tolerance, and can run arbitrary quantum algorithms is called a universal quantum computer. I believe that a universal quantum computer can be said to be one of the ultimate goals of human science and technology.
This is because the calculations are performed using the more universal quantum physics itself instead of classical physics, which is an approximation of quantum physics. This is because it opens up new possibilities that are thought to exist outside the classical computer.
A universal quantum computer can be realized by dramatically increasing the number and accuracy of quantum bits from non-universal quantum computers such as NISQ and implementing an error correction function (error tolerance). (Fig. 1.17). However, the technical difficulty is extremely high, and at the current technical level, the error correction function is still in the early stages of experimentation.
Quantum algorithms such as Shore's algorithm and Grover's algorithm, which will be described later, are known to be more powerful than classical computers. Shor's algorithm enables cryptanalysis, and Grover's algorithm has the potential to solve complex search problems quickly. However, in addition to these, the application fields of universal quantum computers are expected to expand greatly in the future.
1.3 Future vision of quantum computers
Classical computers range from large ones like supercomputers to small ones like desktop PCs, notebook PCs, smartphones, and wearable devices. These computers are used according to their purpose. How will quantum computers be used?
The current state of quantum computer development is roughly at the stage of the non-classical computer mentioned above, and trial use etc. are currently being carried out by the cloud. Several companies have already built non-classical computing environments for this trial. However, the functions that can be used are quite limited, and it is not at a level where it is possible to break through the limits of classical computers to perform practically useful calculations.
For example, IBM's quantum computer IBM Q, which is currently available in the cloud, can currently perform calculations using 5-qubit and 16-qubit quantum circuit models (as of May 2019). However, calculations that can be done with 5 or 16 qubits can also be calculated with a normal classical computer.
In other words, a 5-qubit quantum computer can be classified as the non-classical computer mentioned above, and has little practical meaning. For this reason, research and development to realize even higher-performance quantum computers is currently accelerating.
The story changes when it comes to 50 qubits and 100 qubits. Even with the current highest-performance supercomputers, it is difficult to simulate the calculations performed by a high-precision quantum computer with about 50 qubits because the amount of computation is too large (quantum supremacy).
Let's think about the future where a non-universal quantum computer has been realized and quantum speedup has become possible. Quantum computers will take over the problems that classical computers are not good at. Quantum computers will also be incorporated into the system.
What should be noted here is that it is part of the system. For the time being, quantum computers are considered to be purely dedicated machines. In other words, it is used as a "machine that solves a certain problem at high speed".
Theoretically, a quantum circuit model can describe general-purpose quantum computation, and all computations that can be performed by a classical computer can be performed by a quantum computer. It is believed to be used to assist parts of computers. This is because they are currently much cheaper. Therefore, it is unthinkable for the time being to have one quantum computer per household or to be installed in a smartphone.
An example of a quantum computer based on superconducting circuits is shown in Figure 1.19. For example, quantum computers based on superconducting circuits require a large-scale cooling device called a dilution refrigerator, as well as many controllers. It is thought that this will be used via the cloud for the time being.
Finally, let's imagine a future computing environment. For example, I imagine that computers 10 years from now will be configured as shown in Figure 1.20. The personal computers and smartphones we carry and operate, wearable devices such as smart watches and head-mounted displays, and smart home appliances are connected to classical computers on the cloud via wireless LAN. These devices are called user interfaces.
And when you want to calculate something, you operate these user interfaces. Then, simple calculations and calculations that require high processing speed will be calculated by the device itself, but slightly complicated calculations and calculations that require communication with a database will be performed by a classical computer connected to the cloud. to process.
Since this is a general-purpose machine, it can perform moderate calculations, but complex calculations and large-scale calculations are taken over by another computer that is good at those calculations. For example, a machine dedicated to matrix calculation is used for matrix calculation, a machine dedicated to image processing is used for image processing, a machine dedicated to machine learning is used for machine learning, and so on. And one of these specialized machines also includes a quantum computer. Quantum computers take over the problems that quantum computers are good at.
The above is just my image, but what I wanted to convey here is that quantum computers and classical computers are used together like this. Further down the road, imagine a future where quantum computers are readily available.
Then, will all classical computers be replaced by quantum computers? This is because classical computers are indispensable for controlling quantum computers.
In order to create a quantum computer, we have to create a device that does not destroy the quantum nature. Quantum nature is very fragile, so it is composed and controlled by many electronic, optical, and measuring instruments.
All of these control devices have a built-in classical computer, so a classical computer is essential for making a quantum computer. No matter how far we go, classical computers will never disappear. We aim to speed up with a hybrid of classical quantum.
Amazon SEshopOthers
Author: Ken Utsugi Release date: Wednesday, July 10, 2019 Price: 2,786 yen (tax included)
In this book, I will explain how quantum computers attracted attention, and explain the quantum bits, quantum gates, quantum circuits, quantum algorithms, etc. that are the basis for understanding quantum computers in an easy-to-understand manner using illustrations. increase.