A CIO’s guide to Quantum Computing
It’s a sign of advancing age when one realises that many people that will read this article didn’t exist in 1982. That was the year the first CD player was sold in Japan, and the year that Time Magazine declared the computer their ‘person of the year’. It was also the year the Nobel prize-winning physicist Richard Feynman came up with the idea of the quantum computer. He didn’t design a quantum computer, but he did spark the idea that because many problems in physics cannot be simulated by classical computers, there might be a way to use the quantum properties of atoms to solve this problem.
The problem, for physicists, is that they can model something statistically (for example, they can say that an isotope will emit a radioactive particle every x seconds) but they cannot properly predict exactly when it will happen because they cannot simulate the isotope with a computer model. The best they can do at the moment is to imitate it.
This was an interesting, but rather theoretical idea for a long time. Now, 35 years later, we seem to be on the verge of a breakthrough in this technology. But, is it more than a tool for physicists?
Let’s try to understand how such a computer works. In a classical computer (the one you’re using now, be it a desktop, laptop or smartphone) information is represented by bits – 0s and 1s and combinations of these represent bigger numbers, which refer to characters, colours, positions etc. Quantum computers have qubits instead. They can be 0 or 1, but they can be at another state, which is called a ‘superposition’. The best way I have heard to think of this is that the qubit is in two universes, one of which it is at 0, and the other it is at 1 (this combination of the two states is the “superposition”). When we perform an operation on the qubit, it happens in both these universes. As you increase the number of qubits, the number of possible outcomes from the same operation increases exponentially.
Unfortunately these qubit results are essentially in other universes, not in ours. After the calculation has been made, there are lots of results available to us in lots of universes. To figure out the actual answer to the question you asked, you have to use interference. Think back to doing science at school and interference of light waves through slits, and stuff like that. There is a good description of how this works for quantum computing in this article, or you can just accept that it works and move on to the rest of this article 🙂
So what can we do with one of these devices? The one thing that everyone seems to be able to agree on is they can handle number factorisation really well. There is a thing called ‘Shor’s Algorithm’ which was a thought experiment, showing that a quantum computer could calculate factors of prime numbers massively more efficiently than a classical one. In recent times, with the development of small (a few qubits) quantum computers this appears to have been borne out.
Another popular idea is Grover’s algorithm which is designed to be able to sort databases far more quickly than classical methods. It can also be used to crack data encryption that safeguards, for example, internet banking transactions. For a fun and mind-bending explanation of Grover’s algorithm, try this link.
This threat to encryption certainly has a lot of people scratching their heads. If you have designed your security around a lot of very-hard-to-invert factoring equations, and someone comes up with a way that changes that from hard to easy, things get quite scary. So it’s fair to say that a lot of nation states are involved in the exploration of quantum computing for strategic reasons.
A spin-off of the work into quantum computing is quantum communication. This could be part of the answer to this challenge to current cryptography. It uses the quite spectacularly baffling phenomenon of quantum entanglement (which Einstein called ‘spooky action at a distance’) to provide a secure communication channel. There is a research centre in the UK looking into the application of this. According to some reports, this has actually been implemented in China.
But other than that it has been hard to find more prosaic applications for quantum computing. IBM has opened it’s own research to the public in the hope of ideas coming from the wisdom of the crowd. Microsoft is launching a new programming language Q#, and their quantum development kit with the same idea.
Quantum computing is certainly a technology to keep an eye on. It could lead to some great advances, and shake up the way we work on huge, complex systems. But for those of us in the business world, it won’t affect us directly for a long time. You wouldn’t see any performance improvement if you tried to run Windows, or Excel on a quantum computer. It would just cost you a whole lot more. So you can relax about not understanding quantum teleportation and stochastic problems – we’ve still got plenty of life in the computing designs we have and a lot of ongoing problems that quantum computing won’t help us with.