Inspiration

What it does

The proposed problem consists on creating a software solution for calculating the most optimal path one worker should take to cover a vast region of space whilst visiting them all. While doing this we need to consider the time it takes for the worker to get from one place to another and how much time should it spend there to take into account it's schedule.

How we built it

To tackle the problem we first started by developing a graph of the given regions. We did this by searching for api's that would help us determine the distance between cities. And also to determine in real time how much traffic is on the roads to get a better estimation. After that we created an algorithm capable of finding the desired path of the worker given the data we are interested in, this are: starting point, schedule and the places where it needs to be. Finally we created an Android app made on Flutter that would allow the hypothetical worker to follow the path to it's destination. As Android can't run python code, we managed to, from one computer, host a simple webpage to work as an API, where we posted the necessary data, and then another computer connect via IP and reads the data, brings it to the Android app and displays the route.

Challenges we ran into

One of the first challenges was the timeout problems of the APIs, which we finally mostly solved by waiting for a short time in between requests. We also had issues connecting the python computation of the optimal path with the Android App, as the current wifi we were connected to didn't allow these types of connections between computers via. We finally solved it by using an external internet source.

Accomplishments that we're proud of

We accomplished to make an Android app that was able to read data posted by a simple API which a different computer hosted. Also, of

What we learned

We learned about graph algorithms, how to build them, real time data extraction via APIs and how to build Android apps.

What's next for Smart Route Finder

We plan to improve the optimal path the model finds, as well as incorporate more real time data for a more precise prediction.

Share this project:

Updates