Inside Qiskit, IBM's open source quantum computing framework
- 28 August, 2018 09:11
Researchers, scientists, academics, hobbyists, businesses - all of these groups are represented in the community of Qiskit, the open source framework based on IBM's quantum computing programme that's opening up access to real quantum computing in the cloud for everyone.
Qiskit (Quantum Information Science Kit) is just over a year old, and it followed up the IBM Quantum Experience - IBM Q Experience for short - a program that put quantum computers on the cloud (for the first time) so researchers and developers could tinker with the almost brand-new field of computation.
Since opening up the Q Experience, hobbyists have created games and composed music using real quantum computers, while scientists and researchers are using qubits to solve problems that were previously too difficult to solve.
"The Q Experience is basically an API that allows people to send jobs to be executed on real quantum hardware," explains Ali Javadi, research staff member at IBM. "This is a Python interface, for ease of expression, but it has expanded to much more than the initial version. The overarching goal is to allow a set of very different people access to a quantum computer."
Quantum, says Javadi, has understandably intrigued a wide range of people in the field. It is such a new way of working that no one, even IBM, is very certain of the path these quantum experiments might lead. To put it (extremely) simply, unlike the traditional computational method of two binary states - 1s and 0s - quantum bits, or qubits, can exist in both states at once.
"Developers can write quantum programs but also scientists who have expertise in a particular field can use higher-level libraries for expressing, for example, quantum chemistry applications, or quantum optimisation applications," Javadi says. "These are basically problems that are computationally very hard to solve on a classical computer, and we believe one of the earliest applications of a quantum computer is to speed up those hard problems in specific domains.
"And so this library we recently released - Qiskit Acqua - the goal is to allow those people, without learning much about quantum computing, to be able to use it as an accelerator under the hood, to speed up certain tasks, and to get familiar with what quantum can offer to speed up certain tasks."
Javadi's background is in computer science, and specifically in quantum compilers. One of the goals for near-term quantum devices, he explains, is that the resources are very limited, whether that's the number of qubits or the number of operations that can be applied to qubits. Compilers take user inputs and makes them more efficient based on the resources available to get the best result.
"The progress in quantum has been really rapid in the past five or six years," he says. "We see a lot of interest, and the thing is it's a very different model of computation, it's yet to be determined exactly what the power is, it's a very active research area to understand what tasks can be done with it.
"Part of the nice side effect of putting these devices online and giving a lot of people access to the devices is that they can run their own programs and computations and see: a lot of discoveries could come from this, just by providing access to a lot of people. The wisdom of the crowd."
And that is where the open source element fits in. Aside from the science applications, businesses could be interested in quantum computing for optimising complex mathematical models surrounding cost functions, for example. Companies are beginning to "dip their toes in" to see how quantum and Qiskit can help their needs.
Since launching Qiskit in 2017, Javadi says that he thinks the success of the community engagement has taken a lot of people by surprise.
"I think about 90,000 people have signed up to use the IBM Q Experience service, and there are over 90,000 downloads of Qiskit," he says. "In total I think over five million jobs have been submitted via the API, using Qiskit to be executed in the cloud.
"One of the things we're happy about is that Qiskit is open source, so we are getting a lot of contributions to the code base from outside - we have almost 70 contributors to Qiskit, of course some are IBMers but a lot of them also come from outside, who have contributed to this open source software."
The community runs regular submissions for papers - 120 about Qiskit published in some form or another so far - as well as teaching competitions under an umbrella programme called IBM Q Awards. These have included contests for designing the best courses to teach quantum mechanics, using Qiskit, while another was for writing the best tutorial for quantum computing concepts using the framework.
"We got some really good submissions from those," Javadi says. "The winners are all going to contribute their code so it will basically be strengthened by the community that contributes to it."
While the hype about (often baffling) quantum mechanics is easier to understand through the fun projects like games or music composition, Javadi stresses that the access provided by the Q Experience has extremely significant implications in the field of research.
Just five or so years ago, running a quantum experiment would mean being present in a lab and tinkering with wires on a device. Alternatively, researchers would use simulations to see how they expected quantum mechanics to work out. But now practically anyone can access a real quantum device via the cloud.
"This has come out of the lab now, these devices are accessible online, doing the same kind of work, but just by submitting a Python script and not actually having to do all the work in the lab," he explains. "I think broadly, that is really the favourite thing for me - that it's really useful for science, and progress in science in general. It also helps with the reproducibility of results, so for example, if somebody publishes some results and says 'I discovered this core quantum mechanic effect', previously there was no way to verify that - but now you can say, 'go here, go run my code, and see for yourself'."
Clearly then it is early days for the exciting new field, and researchers are only just starting to unearth the applications for quantum computing. But there is potential for enormous growth and discovery in the near future.
"That's the hope," says Javadi. "The field has really good new energy in the past few years - if you look at the space of quantum algorithms, there have been very important discoveries of what we can do with a quantum computer. It's a very active area and a lot of exciting things will happen in the next decade or so.
"I really do hope that the academic community will use these tools that were not available even when I was a grad student - which wasn't that long ago, like five years ago - none of these tools really existed.
"If I wanted to study some particular effect, I had to do a simulation on my laptop, but now these devices are available and a lot of tools have been built on top of them, like Qiskit. It is a really excellent learning opportunity, just for making the concepts you learn in the classroom more concrete - actually running code and seeing that in action."