Qiskit Camp 2020 —Tips on Ideation for a Quantum Computing Hackathon
We’re a month away from Qiskit Camp 2020, IBM’s flagship, global Quantum Computing event and an exceptional hangout for anyone that likes to think about using tools at the edge of human knowledge to do something remarkable… and have fun whilst doing it.
Having gone through a learning curve when coming up with an idea for Qiskit Camp Europe last September I thought I’d share my three main insights.
- Read and think broadly.
- Know your subroutines!
- Know the categories most projects tend to fall under.
Before I get started, it’s good to mention that there are a couple of pre-existing articles that are very much worth any camp prepper’s time, namely:
- Amira Abbas’ Qiskit Camp 101
- Anastasia Marchenkova’s Quantum Hackathon Tips
- Huang Junye’s From Qiskit Camp to Qiskit Hackathon
all of which give better general advice on what to expect from a QC hackathon than this article, I’ll stick to talking about ideas.
1. Read and think broadly
Many might think that a good way to come up with ideas would be to reaquaint yourself with the bible, Nielsen & Chuang, and indeed in the next point I do advocate that something of the sort is important but just as it is better to apologise later than ask for permission, I feel it’s better to dream first and figure out the algorithm later.
To dream, you need subject matter to think about and to do so in a way which is not biased. So pick an area which has always interested you, strategic investment, gambling, financial modelling, page-rank algorithms, climate change or drug design and try to spend an hour a day in the coming month reading about it.
You might stumble upon a problem which looks like a combinatorial optimisation problem, something you might be able to slap Grover’s algorithm onto or phase estimation and then we’re cooking! You’re doing something truly creative and I think that’s what is most worth while.
This type of approach also prevents us, as a community, from working within the same safe bubbles and to really champion and drive towards innovative thinking.
2. Know your subroutines!
Having found a problem we now need to figure out how to approach it.
Like a jazz musician needs to know his scales to play an improvised solo, we need to know the main problems and algorithms in quantum computing well so as to know how to approach a problem we think we can work on.
Knowing the basics also allows flexibility in approach. Last hackathon my team and I, pivoted from an algorithm based on quantum teleportation to one based on Grover iterations because the problem wasn’t budging.
Having knowledge of landmark problems and how they are approached gives you the agility to quickly adapt your approach and ultimately find a solution which works.
The opposite in the ideation process can happen also. Thinking about an algorithm you know and love, you can come to see an application for it that you’d never thought of before. Although personally, I’ve always experienced this process the other way around.
There are too many resources to mention here but arguably the most useful resource for a prepper would be to join Samanvay(@AnsatzX on Twitter)’s biweekly Qiskit Textbook reading group accessible here.
The linked articles I mentioned earlier list many resources also.
3. Know the categories most projects tend to fall under
Being familiar with projects from previous hackathons and what clusters seem to have formed gives one an idea of what avenues to explore when trying to think of ideas. The main ones I can see are the following:
Quantum Games
Look no further than the OG Dr James Wootton if you want to see clever implementations of quantum ideas or quantum techniques to communicate concepts from QC or to just make fun games!
His medium article about ideas for a quantum hackathon around games is a great place to draw inspiration from.
Quantum inspired art
Using quantum computing algorithms to make music or visual art is definitely something which will make you look like the coolest group at the hackathon. The Quantum Synth team, at Qiskit Camp Europe definitely checked these boxes with their Italian suave and use of synthesisers to show us what the main quantum computing algorithms “sound” like when applied to a quantum state which in this case was a musical note encoded by qubits.
Quantum Algorithms applied to theoretical or real world problems
This is what I tried to work on at Qiskit Camp Europe where we took a theoretical problem called the rendezvous problem and tried to attack it with a quantum perspective. The thinking here was that we knew we could translate a maze into a graph and that quantum algorithms can do useful things to graphs and went from there. You can learn more about what we did here.
Another interesting application project from Qiskit Camp Europe implemented circuits which represented scenarios and strategies from within Game Theory allowing the subject to subject to be . You can find the repository here.
Improving the Qiskit Architecture
Here teams work to improve on and optimise some part of the Qiskit framework be it Ignis, Aqua, Terra or Aer, or to add some new function or structure to the architecture. Two interesting and memorable projects from this category are Qizgloria, a team which made it possible to use PyTorch and Qiskit without too much sweat and Qiskit PyZX who used a build of a PyZX transpiler, which uses ZX calculus, to optimize Qiskit circuits in Terra.
The projects I have mentioned here are just projects that I can remember. There many many more cool ideas out there which are listen is Qiskit’s Camp round up articles that are more than worth your time to check out for inspiration.
My process — What idea am I thinking of working on?
I am currently reading about strategies in betting, particularly roulette. Inspired by Ed Thorpe and Claude Shannon who would go to Vegas in the 60s to beat the house using wearable computers they designed. Maybe it’s now time for a new form of computation to provide an advantage over the house, although quantum computers certainly won’t wearable any time soon!
I’ve been reading Richard Epstein’s The Theory of Gambling and Statistical Logic as well as Thorp’s paper on the Kelly Criterion which he applied in all sorts of financial markets to attain a 20% return rate on his investments over 25 years as inspiration.
This has been leading me to ideas of using the computational basis of a qubit to represent betting and not betting and then iteratively running some operation on this state to determine whether to bet or not or by how much depending on some amplitude but I’m not there yet.
Plus knowing me, I’ll probably come up with something better on the plane!
A Final Remark
Don’t forget how special it is that we have the opportunity to collaborate with bright people from all around the world in such beautiful settings and try to make the most of it. Make friends and have a laugh.
If you feel like you’re not good enough to be there, remember that you don’t have to do everything. Remember that you should know what your strengths are and that your team should be formed of people who compliment those strengths and support your weaknesses.
Super excited to see you all there :)