Contribute Media
A thank you to everyone who makes this possible: Read More

Python + Neo4j: How a Graph DB Can Make a Transit App More Intelligent

Description

Although there are tens of transit applications available in national and global levels, most of them (more or less) perform in the same way: mapping the desired path asked by the user (origin, destination) on the timetable provided by the transportation company and providing official schedules to the user. While this process was acceptable years ago, with the advances in the computer science and evolution of unstructured databases we can expect to receive something more robust than a digital version of the (train, bus, …) timetable, something that provide us with the expected delays based on the current situation (weather, temperature, events,…)

In this talk, I show you how I’ve used python to create a database for various parameters impacting transportation delays using web scrapping and how using Neo4j, I’ve created a transportations network which is used for finding the best path based on transportation times.

Topics: - Scrapping and data storage (structures and Unstructured): Getting weather, temperature, local events, planned maintenances and saving them in MongoDB and SQL databases - Creating a Neo4j database: Mapping the actual connections between transportation means - Finding the best path: using Dijkstra and A* algorithms to find the best paths, minimizing the travel time.

Level of expected Audience: Basic knowledge of Python and databases

Details

Improve this page