A web app (and future mobile app) that predicts the best possible locations for parking based on your current location and previously ticketed locations around you from the Open Data Catalogue of Parking Tickets, in the City of Toronto.
-
Crawled data from the Open Data Catalogue for Parking Ticket Data and parsed using a [Web Crawler] (https://github.com/bda-research/node-crawler), saving the associated Excel Files in the filesystem.
-
Parsed address from Excel files using a custom CSV Parser that reduces the number of requests needed to make to Mapbox by grouping nearby addresses together and exports data as a JSON object.
-
Converted physical addresses to Latitude and Longitude pairs by getting the best result from the Mapbox API.
-
Stored the address, latitude, longitude, average price, and the number of tickets to an SQLite database through our Database Interface.
-
Represented the addresses in terms of a matrix of Latitude and Longitude Sectors that are based on the minimum and maximum - CoordinateManager and ran Collaborative Filtering on the resulting matrix of prices and tickets.
- If the resulting matrix has more than 90% of unpredictable values, then a wider range for the longitudes and latitudes is used, and the "standard level" is lowered to 75%, and so on, up until a "Matrix of best fit" is computed.
-
Based on a longitude and latitude passed in the best 9 computed locations are returned to the user and displayed on a map hosted by Mapbox on the frontend.