About Quantum Getaway
Just a week ago, I was trying to figure out how to get from Connecticut to my university. It took me several hours searching through different services, trying to find the optimal combination of prices and timing. Why doesn't such a service exist already? This is what inspired me to create Quantum Getaway.
Quantum Getaway is a program that uses quantum annealing technology to determine the best route from Point A to Point B. Using your request along with built-in travel data, the program generates a query that can be sent to a D-Wave computer, which returns a combination of flights that will get you where you need to be.
Instructions for use
Open the website at https://quantum-getaway.herokuapp.com/. Select an origin and a destination. As of now, the online version of the program may crash with simulated annealing, so using the actual D-Wave computer is highly preferred. An API token can be obtained at https://cloud.dwavesys.com/leap/signup/.
Click Submit and wait. The solver can take up to 30 seconds to generate a solution. Once a solution is available, it will appear on the screen. Ta-da!
So what?
On the home page of Quantum Getaway, you can click "Click to view all flights" to see 100 pre-scheduled flights. When you ask Quantum Getaway to generate a solution, it will only use these flights. Some cities are not connected by flights, which forces the program to problem-solve your travel itinerary.
Challenges and accomplishments
First of all, I was able to write a Quantum Unconstrained Binary Optimization problem for this program in a day, which was necessary for the project to work with quantum computers. I became very stuck in the middle of the hackathon, as the computer kept returning bad results and I couldn't find anything wrong with the algorithm. Fortunately, by adjusting the weights of some penalties, it started to work again.
I started to write a Node/React website, but I realized that I was quickly running out of time. I decided to use Flask, which would make it faster and easier for me to integrate the code that calculates flights. I got it online on Heroku before the end of the hackathon. I also learned about Flask templates and how they can be automatically filled with data. At the end of the day, it's quite satisfying to see the website in action, properly generating a sequence of flights based on my query.
The future
Along with some bug fixes, there are many features I am considering adding to this program:
- Make easier to use, i.e. so you don't have to sign up for D-Wave Leap
- Optimize for time, cost, or number of flights
- Use real-time travel data from travel websites
- Give more realistic travel suggestions
- Run calculations asynchronously
Log in or sign up for Devpost to join the conversation.