You’re thinking too classically – how to program a quantum computer
Speaker: Tim Ellison
IBM
For more blog posts, see The Oracle Code One table of contents
General
- When reach maturity of computers have today, will significantly outperform today’s classical computers
- Need quantum computer to model quantum mechanics
Classical computers
- Classical data and logic representation – data encoding (binary/ascii), logic gates (binary), computing circuits (built out of logic gates)
- Need resilient bit store, data representation and algorithms. Don’t think about it much because data is reliable
- Some problems are hard/not a good fit
- Traveling salesman – 10 cities is 1.8 million routes. 20 cities is 1 billion billion routes
- Optimizations (ex: minimize wastage cutting wood)- requires starting with a guess and trying all options
- Modelling molecutes (simulate electron interactions – 25 electrons is laptop sized problems. 43 electrons ins Titan supercomputer
- Modeling caffeine is impossible on today’s computers. But could represent in 160 quantum bits. And pharmaceuticals are far more complicated.
Quantum
- Qubit in both 0 and 1 state at same time. Superposition
- Collapses to a value when observe.
- Can influence probability of it being a 0 or 1
- Combine qubits to cause correlation of random results. Quantum entanglement “causes” both “linked” qubits to git save values.
- Call experiments (vs programs) for quantum because results not deterministic
- Power doubles every time add qubit.
- 275 qubits is more states than number of atoms in universe
- Fast to factor prime numbers using Shor’s algorithm [watch out security!]
- Expect quantum computers to be used – chemistry, AI (classification, machine learning, linear algebra), financial services (portfolio optimization, scenario analysis, pricing)
- Built with ions, photons, superconducting circuits.
Demo
https://quantumexperience.ng.bluemix.net/qx
- 5 qubits
- Get 21 units (since free, it is rate limited.) Once experiment completed, get results back
- Can run on real quantum computer or on simulator
- Result gives you the probability of different results
- Shows openqasm. A quantum assembly language
- H gate puts into superposition state
- Large program runs in O(square root of n) vs O(n^2) complexity
Resources
- Python API: https://github.com/QISKit – build, compile/transpile and execute
- Run experiments: https://quantumexperience.ng.bluemix.net/qx
Journey
- Science is well understood
- Machines currently error prone. Nothing can do on quantum that can’t do on classical (yet)
- Quantum Advantage – being able to benefit from quantum
- Prediction: less than 5 years for chemistry. 10-15 years for breaking cryptography
- Starting to build data centers in Poughkeepsie (upstate NY)
My take: The basics of this I’ve heard before. It was cool seeing IBM’s experiment generator used. It’ll be interesting seeing where this goes. The speaker said this was normally a 2 hour talk. I liked the part about applications of quantum and how they are built. I also liked seeing the assembly and graphical code.