Our inspiration was to help emergency services and disaster relief personnel find ways to connect different people together
What it does
Relief Connection is an webapp that helps emergency services staff to plot a path between different people (represented by points on a map) in the aftermath of a disaster using a greedy algorithm that solves the traveling salesman problem. Our algorithm directly connects two points in a straight line on our map, however this could be useful for some disaster recovery situations, such as a situation like Hurricane Maria where people who were stranded were rescued by helicopter search crews.
Our demo shows a route that connects forty different points inside of a rectangular area that roughly captures MSU (excluding Farms), and part of East Lansing north of Grand River. The forty points in our list were randomly generated using Python 3's random library. Specifically, random.uniform() allowed us to create random floating point numbers in between specific ranges. Our route was then created by a Python implementation of a greedy solution to the traveling salesman problem that took in the randomly generated list earlier as its input. Finally, we created a plot program that took in the created list by our algorithm program and plotted it using gmplot, a library that takes latitude and longitude pairs (represented by tuples of floating point numbers) then plots and overlays the plotted route to a html file.
How we built it
Python 3, HTML/CSS, gmplot library
Challenges we ran into
Accomplishments that we're proud of
We implemented a greedy solution that creates a path that connects multiple different points on a path and are able to display it as overlayed on top of a map.
What we learned
How to use HTML/CSS and how to use Python 3 to plot a route on top of Google Maps
What's next for ReliefConnection
If we have more time to work on our project, we would probably find some way to link our webpage to our Python applications, such as allowing users to input points. We would probably also consider implementing a way to use Bluetooth technologies and signal strength from different Bluetooth connections to determine someone's relative location in a localized area.