Image credit: Flickr/IBM Research
Compared to 50 years ago, the computing power that we have available to us at our fingertips is astonishing. There’s more number crunching power in our smartphones than there were in military computers back then.
However, even with the most powerful supercomputers on the planet, some problems are still way beyond our reach and there are still some problems out there that would take longer than the universe has existed to solve.
This is where quantum computing comes into play. Many people believe, including myself, that quantum computers will be able to solve problems that conventional classical computers (like the laptop on your desk and the smartphone in your pockets) just haven’t got the power to solve.
In this post, I’m going to explain quantum computing, in layman’s terms, in other words, in plain English. It’s quite a complicated subject, but don’t worry, I’m going to explain it so that anyone can understand.
What You Will Learn
- What is classical computing?
- What is quantum computing?
- What will quantum computers do?
- Latest developments in quantum computing
What is classical computing?
Before I get onto quantum computing, it’s useful to understand a little bit about what classical computing is, and also how it works.
Classical computing, refers to the number crunching that goes on inside your laptop or your phone. You might think of your computer as a cool device that allows you to do your internet shopping, chat to your friends on Facebook, but really, behind all that, it’s a general-purpose number crunching machine that executes a set of prewritten instructions which when put together, is called a computer program.
Conventional computers store numbers in memory and uses those stored numbers to perform simple calculations such as addition and subtraction. When computers perform a bunch of these operations in a sequence, it becomes an algorithm and that's when computers start to become useful.
In order to perform calculations and store numbers in memory, computers use tiny switches called Transistors. Transistors can either be 'on' or 'off'. So if a transistor is switched on then we can store a number one (1) and likewise, if it's off, we can store a zero (0).
Using a series of 1's and 0's we can represent and store any number, letter or symbol. Each of these ones and zeros is called a binary digit or 'bit'. Using just eight of these 'bits', a computer can store in total 255 different characters such as A-Z, a-z, 0-9 and a bunch of common symbols.
In terms of calculations, computers calculate using circuits known as logic gates, which themselves are made up of a number of transistors connected together. When logic gates are chained together, you start to build up the capability to perform more advanced calculations and algorithms.
Transistors are awesome, they power every electronic device in existence today, and incredibly, electronic engineers and scientists have managed to cram hundreds of millions of these tiny switches onto pieces of silicon the size of your thumbnail.
However, we have got to the point now where transistors are almost as small as an atom and can't get any smaller. This has forced us to rethink how we build our computers and devices.
Amazing as they are, a computer is just a calculator that uses just two states ('on' - 1 and 'off' - 0) to make sense of the world, make decisions, calculate and execute a number of predetermined instructions.
Quantum computers take the capabilities of classical computers to the next level. They will still perform calculations just like conventional computers, but they will perform them significantly faster and will be used to solve complex problems that are out of reach and far beyond the capabilities of normal, classical computers.
What is quantum computing?
When particles get smaller and smaller, towards the atomic scale, their behaviour gets a bit weird and they behave ways that you might not expect. For example, atomic and subatomic particles can exist in more than one state at time.
As I mentioned previously, classical computers use bits to represent and store information and physically they are represented by transistors. Quantum computers are different however. They use quantum bits also known as qubits.
These ‘qubits’ can be a one, a zero or a superposition of them both at the same time which can create nontrivial correlated states of a number of qubits, so-called 'entangled states'.
One good way to think of this is to imagine a sphere where each pole is a different state. So, a classical ‘bit’ can be in one of two states, at either of the two poles of the sphere.
The difference with a quantum bit is that it can be at any point on the sphere, significantly increasing the number of states. This means that a quantum computer that uses qubits can store a ridiculous amount of information using less energy compared to a classical computer.
Because quantum bits can have multiple states, quantum computers will be millions of times faster than even the most powerful super computers that are in existence today.
What will quantum computers do?
Quantum computers will no doubt change the world that we live in. I mean, if you look at what classical computers have done for us using just simple bits and just two options of a one and a zero, then you can imagine the possibilities of quantum computers. The processing power of qubits will be immense and will be able to perform millions of calculations at the same time.
Quantum computers are different to PCs in ways that I’ve already mentioned, however they can't yet be used to run conventional computer programs. They will have their own uses however. Here are some of the future applications of quantum computing:
Super accurate weather forecasting
It seems that the weather forecast is hardly ever correct, and even on the day, the weather forecast often changes. That’s because there are too many possible ways weather patterns can manifest itself and as such, current weather forecasting is at best, an educated guess.
With quantum computers however, all the data could be analysed at once and give us a far better idea of when and where bad weather might strike. So you’ll get much more advanced notice on major storms such as hurricanes. This will give people longer to prepare and help save lives.
By NOAARockManQ at en.wikipedia (http://www.ssd.noaa.gov/goes/flt/t4/rb-l.jpg) [Public domain], from Wikimedia Commons
Quicker, more efficient drug discovery
When it comes to developing new drugs, it’s a long and complicated process. Chemists have to test a lot of different molecular combinations to see which are more effective at combating disease.
This process is very costly (running into millions of dollars) and can take years. Many of the combinations which are chosen are used in later-stage trials and still fail.
Quantum computers could help here by mapping out the trillions of combinations and seeing which combinations would be more likely to work. This would significantly reduce the time and cost of developing new drugs.
Quantum computers will also be able to analyse a person’s genes faster than computer’s can now, and will be used to create personalized drugs which will be more effective at treating diseases.
Beefed-up, encrypted communication!
Every time we shop online, send a WhatsApp message or sign into our email, we use some sort of encryption algorithm.
Quantum computing will make encryption even more secure by using a technique called quantum key distribution.
Basically, this allows someone to send a message to someone else that only they can read by using a special private key to decipher it. Now this part isn't new. But what is new, is that using the power of quantum mechanics (the physics behind quantum computing), anybody that intercepts the message will cause the message to become useless – no one will be able to read the message.
This is amazing stuff, however, once quantum computers become more readily available, hackers may be able to break current encryption algorithms such as RSA, putting banks, online transactions and even the internet in great danger.
Image credit: Flickr/Yuri Samoilov
Artificial Intelligence and Machine Learning
Artificial Intelligence is already taking the world by storm but quantum computers are only going make this better and better.
AI and machine learning algorithms can already learn the best ways to do things and are already better at humans at certain tasks such as image recognition and playing computer games. Facebook use it find out what’s in your photos and now AI is powering driver-less cars.
So, how will quantum computers have an impact on machine learning and AI? Well they’ll be able to do things much faster and will be much more efficient. Today, it often takes weeks or months to train neural networks to do a specific task such as recognising objects in images. This will likely be reduced to minutes or seconds with quantum computers.
And because quantum computers will reduce this training time, neural networks will become larger and more capable along with greater accuracy.
Image credit: Flickr/A Health Blog
Latest developments in quantum computing
Progress in quantum computing is moving very quickly. Last year it was announced that Google and NASA scientists found that a D-wave quantum computer was 100 million times faster than a conventional classical computer. But it’s proving difficult to bring quantum computers to mainstream computing.
IBM are very active in the area of quantum computing and are trying to develop them as part of its Q division and hopes to sell them commercially at some point in the near future.
For quantum computers to be useful however, they have to have many qubits which must interact with each other in order for computations to happen. The trouble is, it is proving very difficult for scientists to find a simple way of managing and controlling complex systems of qubits.
Having said that steady progress is being made. Google, Microsoft and number of other labs and start-ups are racing toward creating working quantum machines. They're trying to take them out of the labs and the realm of pure science and move them more towards engineering.
Google has been working on quantum computers that harness superconductivity and hopes to achieve what is known a quantum supremacy very soon. This is the point at which a quantum computer will be able to perform a computation that is beyond even the most powerful ‘classical’ super computers.
Microsoft are also working on quantum computers but taking a different angle using an unproven concept called topological quantum computing. More recently, it has been announced that Microsoft are set to release a quantum computer programming language aimed at researchers to allow them to test and develop quantum computing systems more easily.
So there you have it, quantum computing in layman’s terms. It’s a complicated subject and the physics behind it is even more complicated. Not only very mathematical, but very strange too, because at the atomic level, things behave very differently compared to how things work at a macroscopic level (such as the physical objects we interactive with daily).
But if we can harness its power and peculiarities, then we have to potential to change the world and transform many different industries.
Quantum computers will give us the ability to solve complex problems that are well beyond the capabilities of classical computers, and because they will be built on a new physics, there will be discoveries and innovations further on down the line that haven’t even been thought of yet.
I’m really excited about quantum computers and what they will do for AI especially. I think they will go a long way towards building general AI systems that will be able to excel in a number of tasks.
I couple of things I do fear however is how far it will take AI. I truly believe that in the future AI will become far more intelligent that humans and I fear humans may become surplus to requirements. Who knows, I might be wrong on this.
The other thing I fear is that quantum systems will be able to crack current encryption algorithms that we all rely on today. Hopefully encryption algorithms such as RSA will be replaced by quantum safe algorithms that won’t be crackable by classical computers either.
What do you guys think? Do you think quantum computers pose a threat? Are you excited by the current advancements in quantum computing? Let me know in the comments!