Uncertainty and the quantum future
- Posted on December 9, 2021
- Estimated reading time 5 minutes
There has been an explosion of research and development in quantum computing over recent years which has not gone unnoticed in the media with growing coverage and speculation of its potential benefits as well as its possible dangers. Unlike “classical” computing we know and love today, quantum computing leverages the phenomena of quantum mechanics to perform its computation and it is this which gives it its power.
Being certain about uncertainty
To really get to grips with the core of quantum computing does require some understanding of quantum principles. One of the core principles is to be certain about uncertainty. It was in 1927 when Werner Heisenberg defined his infamous Uncertainty Principle which effectively states that for a quantum object, we cannot know its speed and position at the same time. As an analogy, consider taking a photograph of a racing car. Using a fast shutter speed will produce an image of the car with clarity at a specific location but no detail of its speed. A slow shutter speed will produce a photograph of the car with speed blur but loses the clarity and hence detail of the location. Therefore, we cannot have the location and speed detail simultaneously. With this Principle defined at the quantum level uncertainty is baked into the very fabric of the Universe and this brings with it some interesting quantum phenomena.
Superposition and controlled uncertainty
A quantum phenomenon which underpins the idea of uncertainty is Superposition. A quantum object in superposition is in a combination of all its possible states at once. Using another analogy, a coin lying flat can be Heads or Tails but when spinning it could be considered an equal combination of Heads and Tails. Note that it is “a combination” and not just “Heads and Tails” at once. When the spinning coin is slapped down it lands as Heads or Tails. If this is repeated many times the counts of Heads and Tails will be roughly 50% each. But how does this apply to computing?
In classical computing Bits, which store information, can be either 0 or 1. Quantum Bits, or Qubits, in quantum computers can be 0, 1 or a combination of both (once again, note “a combination” and not “0 and 1”). When a Qubit is in a combination of 0 and 1 it is said to be in Superposition. Like when a coin is slapped down, when a qubit is measured it will become either 0 or 1 and if repeated many times the counts of 0 and 1 will be roughly 50% each. Hence there is uncertainty in the Qubit while in superposition.
However, this is where our analogy breaks down and things get rather interesting because it is possible to manipulate the uncertainty. Operations known as Quantum Gates can manipulate the state of a Qubit so that it could be, for example, a combination of 0 and 1 so that when measured many times the result comes out as 0 roughly 75% of the time and as 1 the remaining 25%. In fact, as long as the percentages add up to 100% any values are possible! The physical processes to create the superposition and perform manipulations are beyond the scope of this article, however, this phenomenon lies at the heart of the power of quantum computing.
Uncertainty to our advantage
At first glance, uncertainty at the core of information seems completely useless. After all, measuring 4 Qubits in superposition and combining the results from each to form a number based on binary, e.g. 1001 = 9, will give a genuinely random number each time. But it turns out that uncertainty can be very useful. Consider the case above of 4 Qubits in superposition: each one is in a combination of 0 and 1, so if considered as a group they are collectively in a combination of all possible states of the group, in this case 16 possible states (0 and 1 form 2 states, so 2x2x2x2 = 16). As more Qubits are added to the group this number of states grows. However, if the Qubits stay in an equal combination of 0 and 1 then when measured collectively each of the 16 states has an equal chance of being obtained when the Qubits are collectively measured.
But what if we start manipulating the uncertainty as shown above? For the 4 Qubits example, if 3 are set to be 75% 0 and the other is 75% 1 then when all are measured many times, 1 of the 16 states will appear more frequently than all the others. Increasing the percentages from 75% to 90% will result in that state appearing even more frequently. The frequency of its appearance will increase for this state until the percentages reach 100% when only that particular state is measured.
Although this is a contrived example, this amplification of a single or multiple states and suppression of others is what happens in Grover’s Search, a quantum algorithm for search of unstructured data which offers a major performance boost over classical alternatives.
But one thing is certain…
No matter what advancements are made in quantum computing the computers we use today are going nowhere anytime soon! Quantum computers, or probably more precisely Quantum Processing Units (QPU) are designed as co-processors. These are processors designed to supplement the capabilities of the main processor, the Central Processing Unit (CPU). A familiar example found in most modern computers and smartphones is the Graphics Processing Unit (GPU), optimised for processing graphics on screens but can also perform specialised regular computations. At a basic level, there are some similarities between GPUs and QPUs: they can both offer a massive performance boost for specific computations; they both have their own programming models with development languages or frameworks such as OpenCL or Apple Metal for GPUs and the OpenQASM or Microsoft Q# languages for QPUs; and they both require a classical computer, via its CPU, to drive their operation and work with their results. Manufacturers are also making it easier than ever to develop for both GPUs and QPUs.
But, as already stated, research is proceeding at lightning speed. There is already active development of operating systems for quantum computers and growing numbers for applications of its use. With this field of computing still in its infancy but with such exciting potential, I feel that it is certain it will affect our future in big ways but fully how remains rather uncertain!