Inspiration
We are all runners. We have all experience running suboptimal runs which lead us to getting injured or not having gains. We want an application which can tell us what exactly to run, including the pace and the route, so that we have a lower chance of injury but higher chance of making improvement.
What it does
It takes your past Strava activities to determine what pace and route you should run today. It takes into account multiple factors like baseline pace, calculated fatigue levels, and distances. If a runner is deemed to have high levels of fatigue it will give a lower stress run, and if the runner has low levels of fatigue it will give a higher stress run. Once the distance and pace of the run is determined, it will create a route using many factors such as surface impact, obstacles, distance.
How we built it
We used python to deliver our application. We have a baseline model which is useful for people who do not have many Strava Activities, but as a person get more and more activities in, we use this data to personalize the model and thus personalize the results of the runner.
Challenges we ran into
We had to develop many models to calculate variables such a baseline pace, fatigue, stress, and other factors needed to provide the next run's information. Developing an algorithm for generating the route proved difficult due to state explosion of the number of possible routes. Even now, it can take minutes to generate a route for longer distances.
Dataset
We used generic runners activities to train a baseline model. We then use the user's personal activities to train the baseline model into a personalized model.
Next Steps
Improve the route generation to work faster with longer distances. Use elevation. Structured speed workouts. Continuous learning from new runs
Technical Contributions
Personalized run & stress prediction from training history. Converts optimal effort to real runnable route. Safe adjustments when the user changes the distance or intensity. Matches terrain, distance, and other factors to route.
Built With
- cython
- fastapi
- python
Log in or sign up for Devpost to join the conversation.