Inspiration
As outdoor enthusiasts and avid hikers the idea of off trail wilderness adventure has long been attractive. Traveling cross country requires meticulous planning as one miscalculation can lead to disaster. To this end we have created OffTrails, a wilderness route selection aide which seeks to maximize the safety, efficiency, and speed of cross country travel.
What it does
The program pulls topological data from the US Geological Survey and water/vegetation data from ESA's Sentinel-2 L2A satellite. After allowing the user to provide the desired start and end point of their route, the program runs a modified A* pathfinding algorithm on the data taking the multitude of factors into account. The resulting route will then be displayed in the WebUI and a route GPX file can be downloaded into the user's preferred map app at their convenience.
How we built it
We built a web interface using leaflet. The backend code is written in python and uses various standard python analytics packages (matplotlib, numpy, etc.) as well as some geography specific packages such as rasterio and gpxpy. Our A* pathfinding algorithm makes use of a cost function that represents the difficulty of each terrain segment in question. Initially this cost function was implemented using Tobler's Hiking Formula but was replaced by a more accurate model published in Minetti et al. (2002), Energy cost of walking and running at extreme uphill and downhill slopes. AI was used to greatly optimize this formula so it could be run under the time constraints of a user application.
Challenges we ran into
- Integrating different geographical datasets.
- Tuning constants for the pathfinding algorithm.
Accomplishments that we're proud of
- Retrieving geographical data from various sources.
- Designing a multifaceted pathfinding algorithm that achieves the project goals.
What we learned
- Global Information System analysis and processing.
- Advanced routefinding algorithms and cost function selection
- Developing software under tight time constraints
What's next for OffTrails
In the future we would like to implement a hierarchical path finding algorithm which would involve multiple passes of path finding algorithms at increasingly high map resolutions. This approach could allow for great improvement in search radius and program efficiency, as well as have smoother and more accurate trails. We would also like to implement a larger search area, and find a good solution to deal with the huge files that come with working with geographic information system data.
Built With
- ai
- css
- html
- javascript
- leaflet.js
- openstreetmap
- python
- rasterio
- usgs

Log in or sign up for Devpost to join the conversation.