To main content To navigation
Blog

Quantum Computing

Quantum computers can perform complex calculations and analyses many times faster and more efficiently than the traditional computers we work with every day. This superior computing power can provide solutions to problems that our society is currently facing. Some examples are the timely prediction of extreme weather (and its consequences such as high water), the rapid development of new medication (during pandemics), the super-fast training of AI models and the reduction of the energy needs of data centers. This blog will give a brief overview of what quantum computers can be used for and how they are built.

The use of quantum computers

At first glance, it seems that the superior computing power of quantum computers can be useful in almost any IT application. This is definitely not the case.

Quantum computers are only useful for applications where CPU computation time is (by far) the biggest bottleneck.

The use of quantum computers in current applications has two major limitations:

  • The programming languages ​​for quantum computers work in a completely different way than traditional programming languages. Using quantum programming languages (e.g. qiskit) requires specialist knowledge of mathematics and quantum mechanics. Finding developers with this expertise can be a (major) challenge.
  • The hardware of quantum computers is not (yet) standardized. This means that not every algorithm, written in a quantum programming language, can run on every quantum computer. Finding the right hardware (via cloud services) for the required software can therefore also be a (major) challenge.

A good business analysis can help determine whether the benefits (the superior computing power) of using quantum computers are big enough to justify the investment that will undoubtedly come with solving the above challenges. For example, consider a customer who is faced with ‘a large and complex data analysis problem’.

  • If the issue is large and complex, because it is unclear within the organization what exactly needs to be analyzed and calculated, the CPU calculation time is not the bottleneck. The customer is better served in this situation with a good business analyst than with quantum computers.
  • Even if the size of the dataset makes the problem large and complex, CPU calculation time is not the bottleneck. In this case, the customer is best served by using a fast io technology.
  • Only if the complexity of the issue is caused by the inherent complexity of the CPU calculations of the data analysis, quantum computers can provide a solution. For most business intelligence issues, this is rarely the case.

In which applications is CPU calculation time (often) the biggest bottleneck? Especially in intensive computer simulations. For example:

  • The weather forecast (for computers the most difficult and hardest calculation ever).
  • Aerodynamic simulations of cars and airplanes.
  • Calculating chemical reactions in the human body (for the super-fast development of new medicines).
  • Calculating mechanical forces and/or temperature effects in large buildings and bridges.
  • Modeling economic phenomena to predict the performance of your investments and trades.
  • Optimization problems (e.g. in communication or passenger traffic).

Other CPU-intensive tasks where quantum computers can provide solutions include cybersecurity (code breaking) and machine learning (training large models).

Some examples where quantum computers are already being used today are:

  • NASA uses Azure Quantum to optimize spacecraft communications. They calculate when to communicate with which craft. This is a complicated puzzle because of the rotation of the Earth.
  • DHL is investigating how courier routes can be optimized with quantum computing (Fast transport case).
  • Shell uses quantum computing to simulate chemical reactions.
  • Google is working on several applications, such as quantum AI and quantum cryptografie, for example for 5G.
  • 1QBit works on weather forecasting with quantum computing.

The construction of quantum computers

Quantum computers are designed and built fundamentally differently than traditional computers. Where traditional computers are based on the physical principles behind electrical currents and semiconductors, quantum computers are based on the physical principles of  quantum mechanics (the science of how matter works). This fundamental difference is the reason that the computing power of quantum computers is far superior to that of traditional computers. It is also the reason that quantum computers are much more difficult to build and/or operate. This difference can best be explained using the following diagram:

Schematic overview of the difference between traditional computers vs quantum computers

The hardware of traditional computers consists of electronic components such as transistors, resistors, batteries, etc. Using UV printers, billions of these components can be combined into integrated circuits: computer chips. The zero of the binary language is represented in this circuit by a low electrical voltage (0V) and the one by a high electrical voltage (5V). The circuit can then change/combine these voltages using the basic operators of the binary system: AND, OR and NOT and store them in pieces of memory: bits. Combining these operators forms the basis for the machine language of computers. The well-known high-level programming languages ​​such as C/C++/C#, Java, Python, R, etc. are then combinations of algorithms written in this machine language. Web development frameworks such as .NET, Springboot, Flask and Django are finally developed on the basis of these programming languages. Thus, all software operations are combinations of combinations of (etc.) basic binary operators AND, OR and NOT, which are physically constructed from transistors and other components of electrical current.

Quantum computers do not work on the basis of electric current, but on the basis of subatomic particles such as protons, electrons, atomic nuclei and the like. This is the matter described by quantum mechanics, hence the name ‘quantum computer’. Because this underlying principle is different from the principle of electric current, the basic binary operators of a quantum computer are no longer AND, OR and NOT, but fundamentally different operators such as Pauli, CNOT, Swap and Toffoli.

This is where quantum computers get their superior computing power: the building blocks of machine language are inherently different (and much more advanced) than for traditional computers.

However, it also means that all programming languages ​​and algorithms developed for traditional computers cannot be used for quantum computers. In order to use the superior computing power of quantum computers, algorithms are needed that work fundamentally differently and are based on the machine language of quantum computers. In order to understand this process, advanced knowledge of mathematics and quantum mechanics is required. High programming languages ​​such as C/C++/C#, Java, Python, R, etc. where you call a command or algorithm without having to understand its operation, unfortunately do not yet exist for quantum computers. Links with traditional programming languages ​​(the purple arrow in the image above) are also still in their infancy. There is hoewever great potential.

In addition, the physical construction of quantum computers is very challenging, because it involves fundamentally different principles than electric current. Manufacturers have therefore not yet succeeded in developing quantum computers that can simply run any arbitrary quantum algorithm. Specific hardware is limited to a number of specific algorithms. The prognosis of a Dutch company is that ‘universal quantum computers’ can be physically constructed in 3 to 5 years.

Christiaan Douma
Machine Learning Specialist / Software Engineer

Also interesting

Blog

Quantum Computing

Quantum computers can perform complex calculations and analyses many times faster and more efficiently than the traditional computers we work with every day.

Read article about Quantum Computing
Blog

Hello world

As friendly as “hello world” sounds, it can be so naive when people decide on the basis of these “hello world” examples whether a technique or service can also be used to solve their own “real world” problems.

Read article about Hello world
Employees speak out

Create a FLOW with Scaled Agile

In order to achieve a Flow in the development of new products and services, it has proven to be very effective to use a framework to flexibly and adaptively set up customer requirements.

Read article about Create a FLOW with Scaled Agile
Blog

Is AI taking our tester jobs?

AI and Machine Learning are developing rapidly, also in the testing field. AI test tools are becoming more advanced and frameworks to develop something yourself are becoming more accessible. This leads to the question of what the role of the tester will be once AI applications have been fully developed within the testing field.

Read article about Is AI taking our tester jobs?
1 of 5 1 /