Example map of directions
Making traveling in the city a safer, worry-free experience
What it does
Using OpenNYC data sets, we parse crime statistics to find which areas in the city are safer than others. Then we get straightforward directions from your location to your destination using the safest routes possible for walking.
How we built it
Python backend to parse data sets and create a grid of safe and unsafe spots. Each tile in the grid has a score corresponding to how safe it is. We find the shortest path between two tiles with the minimum weight (safest path). We have an IOS app written in Swift to get user input and show directions to the destination using Google Maps sdk to embed a map.
Challenges we ran into
Determining how particular crimes affect the weight of a certain area in the grid. Determining the size of the tiles in the grid: needs to be small enough to provide 'safe' routes, but large enough to have enough data per tile. Creating a routing algorithm that finds the shortest path as well as a path that avoids dangerous areas.
Accomplishments that we're proud of
Parsing data sets with different standards to aggregate data and develop a proper heuristic to mark safe and unsafe spots. Also, coming up with a shortest path minimum weight algorithm for our grid.
What we learned
Aggregating 'difficult' data sets, developing more efficient algorithms to handle data and reduce computation time.
What's next for Safeny
Expanding the weight scoring algorithm to include more data sets from OpenNYC. Release an android app version of Safeny. Release