Code Monkey home page Code Monkey logo

taxicab's Introduction

Taxicab Prediction: Directed Research (Miodrag Potkojnak)

Context

The data that was used came in the following format:

  • Timestamp
  • Unique ID for the trip
  • Driver ID
  • Boolean (for whether or not the trip data was complete)
  • Vector of coordinates that denoted the taxi's position every 15 seconds.

This data was collected for 451 different taxi trips over the course of several months.

The good majority of the data had complete taxi trips, while some others only had partial data for the vector of coordinates.

Taxi Prediction / Customer Popup

Based on the massive amount of given information, we were able to generate several random samples of data within certain time intervals. We performed k-means clustering on each of these samples and made confidence intervals that told us how many taxi cab drivers would end up in a certain region at a certain time.

In a similar fashion, we could predict where customers would pop up at certain intervals of time as well.

With both of these pieces of information, we saw that it could be used to minimize the distance travelled by taxi cabs.

Bipartite Matching

Given where we expected customers and taxis to pop up, it's not necessarily optimal for a customer to request a taxi ride in order to have a taxi driver to start driving over, wherever they might be. Instead, if it's possible to predict where customers might pop up, we could allocate some free drivers who are nearby that cluster that we anticipate customers to show up. Additionally, if we anticipate a taxi driver will arrive in a region close to the area where a customer just requested a trip, it's not necessary to assign a currently free taxi driver at a farther location to service this customer.

Since it would be too risky to depend on a single taxi driver to end up in a certain area or a single customer to show up in an area, it's important to be confident in how many drivers/customers one would expect to show up at a certain region at a certain time. This is where the confidence intervals we generated before come in handy.

With these confidence intervals of how many customers/taxi drivers we expect to see in certain regions at certain times, we can simply perform bipartite matching to create the most optimal, gas efficient solution.

Results

To theoretically evaluate our model, we compare how far the taxi drivers would travel if they went to the destinations our model told it to go to against how far these drivers actually went. (We simply look at the beginning point of the next taxi trip that specific driver had). We found that our model reduced this "in-between" travelling distance on average by 4-fold.

taxicab's People

Contributors

konradjniemiec avatar scottyshi avatar

Stargazers

Ryan Lewis Peterman avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.