One of the areas that I have been researching is what applications can best make use of the power of quantum computing. Although this is a work in progress, I am providing a preliminary assessment for my readers based upon discussions with various experts and other research I have done so far. The list below is shown in a priority order based upon the combination of three factors that I have reviewed: Progress-to-Date, Difficulty, and Payoff. One thing to note is that the successful implementations for most, if not all, of these application areas will probably be based upon a hybrid platform that combines classical and quantum computing in a cloud environment to achieve the best of both worlds. So here’s the list.
Machine learning is a hot area right now because we are now seeing significant deployments at the consumer level of many different platforms. We are now seeing aspects of this every day in voice, image and handwriting recognition, to name just a few examples. But it is also a difficult and computationally expensive task, particularly if you want to achieve good accuracy. Because of the potential payoff, there is a lot of research ongoing based upon sampling of Boltzmann distributions.
There are many problems in materials science that can achieve a huge payoff if we just find the right catalyst or process to develop a new material, or an existing material more efficiently. There is already a significant effort in using classical computers to simulate chemical interactions, but in many cases the problems become intractable for solving classically. So the original idea presented by Richard Feynman is why not use a quantum computer to simulate the quantum mechanical processes that occur. Here are just a few examples of significant problems that could see large payoffs if we can solve them.
Finding the optimum mix for a basketful of investments based upon projected returns, risk assessments, and other factors is a daily task within the finance industry. Monte Carlo simulations are constantly being run on classical computers and consume an enormous amount of computer time. By utilizing quantum technology to perform these calculations, one could achieve improvements in both the quality of the solutions as well as the time to develop them. Because money managers handle billions of dollars, even a 1% improvement in the return is worth a lot of money. There is a web site called Quantum for Quants that is devoted to this subject that you can check out to learn more.
Many common optimizations used in industry can be classified under logistics and scheduling. Think of the airline logistics manager who needs to figure out how to stage his airplanes for the best service at the lowest cost. Or the factory manager who has an ever changing mix of machines, inventory, production orders, and people and needs to minimize cost, throughput times and maximize output. Or the pricing manager at an automobile company who needs to figure out the optimum prices of all the dozens car options to maximize customer satisfaction and profit. Although, classical computing is used heavily to do these tasks, some of them may be too complicated for a classical computing solution whereas a quantum approach may be able to do it.
Although drug design is really a problem in computational chemistry, I put it into its own classification because it is used by the pharmaceutical industry. Many of the drugs being developed still do so through the trial and error method. This is very expensive and if more effective ways of simulating how a drug will react would save a ton of money and time.
Cyber security is becoming a larger issue every day as threats around the world are increasing their capabilities and we become more vulnerable as we increase our dependence upon digital systems, learn more about cybersecurity in 2019 over at sites such as Upskilled and others. Various techniques to combat cyber security threats can be developed using some of the quantum machine learning approaches mentioned above to recognize the threats earlier and mitigate the damage that they may do.
You may wonder why I have put codebreaking so far down the list, given all the attention given to Shor’s algorithm and its ability to factor large numbers and break RSA encryption. The reason is that I believe that this will just be a temporary application until the world converts to a class of “post-quantum” cryptographic techniques that will not be vulnerable to breaking by a quantum computer. There is an increasing amount of research in post-quantum cryptography that you can review here and here. So although, we probably will have quantum computers able to factor very large numbers 10 years from now, it is not clear if we will have a use for it at that time.
When one develops large software programs with millions of lines of code or large ASIC chips that have billions of transistors, it can get awfully difficult and expensive to verify them for correctness. There can be billions or trillions of different states and it is impossible for a classical computer to check every single one in simulation. Not only does one want to understand what will happen when the system is operating normally, but one also wants to understand what happens if there is a hardware or other error. Will the system detect it and does it have a recovery mechanism to mitigate any possible problem? The costs of an error can be very high because some of these systems can be used where lives or millions of dollars might be dependent on their being error-free. By using quantum computing to help in these simulations, one can potentially provide a much better coverage in their simulations with a greatly improved time to do so.
As I mentioned at the beginning of this article, the list above is still preliminary. I will be working on refining it to better define and quantify the potential of each application. In the meantime, I would welcome any comments from anyone who thinks I have overlooked an application, disagrees with the priorities, or has anything else to add.