We built a predictive model that will maximize the total earnings (fare amount + tips) of a yellow taxi driver in New York City.
The model was evaluated in the context of a turn-based game using the real New York Taxi data to simulate a week as a taxi driver.
In the final leaderboard, we managed to secure the top place in our cohort of UniMelb in terms of total earnings. We note that our final model leads with a mean earnings of approximately 200 USD and is consistently awarded with a significantly higher number of trips.
It is also worth mentioning that our model outperformed models using advanced machine learning algorithms (eg Deep Learning and Reinforcement Learning) built by other teams. The model we implemented features a basic GLM (Generalized Linear Model) Poisson model and a custom probabilistic model - known as “Route Model” in the report.
On a high level, here’s what we have done:
- Data ETL using a combination of shell scripting and R
- Analysis, data exploration and visualization in R
- Building the machine learning model in Python with scikit-learn
- Implementing various driver AIs in Python
- Evaluating the driver AIs with shell script
- Read the full report: https://yaeba.github.io/nyc_taxi_driver_model/group7.pdf
- Source code: https://github.com/yaeba/nyc_taxi_driver_model