Inspiration

We were inspired by a recent road trip we took to the Appalachian Region. On our way to the destination, we passed many cool spots like breweries, lazy rivers, antique shops but did not make stops because we thought there would be more on the way and did not prefer to turn back. We realized we could have stopped at those places had we known about them earlier. Sidequest provides a list of stops you can make in your trip based on the "vibes" you select.

What it does

Users can add the origin and destination of their trip and along with information like the people they are travelling with, a customizable "vibe" for the trip, preferred duration for the trip, and the budget. We then generate a list of stops based on the vibe and the constraints (time and budget) of the road trip.

How we built it

  • Used machine learning to match user vibes with keywords of places types -- Used Universal Sentence Encoder 4 to convert user given sentences to Place API's keywords
  • Select the best spots based on ratings, price, time constraint, and name, place description, and comments to match the vibe -- Used a Reinforcement Learning agent that explores various options and tries to maximize a Q-function based on places' rating, price, time taken to get there, and other context information like have we already done similar activities in this trip.

Challenges we ran into

  • Integrating RL and optimizing it -- A DQN was too slow, so we descritized and made the model more independent. Trains / Evaluates in real time for each trip.
  • Rendering the route and stops
  • False positives in classifying places based on keywords/atmosphere
  • Prioritizing places based on constraints (time and budget)

Accomplishments that we're proud of

  • Rendering the routes along with stops
  • Extract relavant list of stops and activities

What we learned

  • Reinforcement learning for geo
  • Optimizing reward function

What's next for Sidequest

Add interactive map features, save places (bucket lists), and more

Share this project:

Updates