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

Share this project: