Analyzing the Uber “Schedule a Ride” option from a graph algorithms and optimization perspective. This code accompanies the post in my blog http://withoutlossofgenerality.com/schedule-a-ride-uber-algorithms/.
We know that Uber has a “schedule a ride” option where you can schedule a ride days-in-advance by giving a start time, pick-up location and destination. Given a set of “schedule a ride” requests for a given day, engineers at Uber have to figure out
- Whether or not all those requests can be satisfied
- How many drivers will be needed if all requests are to be satisfied?
- Given that only K drivers are available, how many requests can be satisfied at maximum?
In this project, we try to figure out how such a task may be accomplished given the Los Angeles Uber Movement dataset and a set of “schedule a ride” requests generated using a multi-modal Gaussian distribution.