The Infinite Machine for Cycling and Running Routes

Today, the usual way for a cyclist or runner to find a route nearby is to visit sites such as Komoot or Strava and find either:

  • a route that someone has manually plotted and uploaded; or
  • use heatmap data to see where others have been before

I’m writing this as a long-time cyclist and runner who has experienced the breadth of these tools for more than a decade. They have shortcomings. Someone else’s route won’t match how and where I choose to ride, and a saved route is by definition frozen in time. Roads and their environment change constantly, routes should as well.

Routes uploaded by others will never start and stop from your location, so what these sites do is generate a path from where you are to a point in the uploaded route and splice that in. Then splice out another path back to where you want to end. You end up with a Frankenstein route that is half-opinionated and half-not.

Heatmaps are great for seeing at a glance where people travel. But it creates a perpetual cycle of people just sticking to particular roads because the Saturday morning group ride uses it every weekend. It's not fine-grained enough, and it doesn't represent your personal preferences. The worst aspect is that you don't know if its popular just because a group uses it, or if its popular because it truly is a spectacular piece of road with great scenery that's enjoyable to ride or run on.

I realised I didn’t want to spend hours sifting through old routes that were in the vicinity of where I wanted to ride. So several years ago I started down this journey of trying to solve this problem.

The first challenge: identify which roads are spectacular for cycling and running. I went through many iterations but ultimately what truly sets roads apart boils down to: minimal noise, minimal traffic and within nature as much as possible. My goal was really a button that says “get me outta here!” that I can hit on Friday afternoon which takes me straight to forest-lined roads and coastal climbs.

I settled on dividing roads around the world into stretches based on sinuosity (how curvy they are) and their proximity to features like lakes, oceans, forests, and national parks. I also took into account municipal cycle networks (planned corridors through urban areas for cyclists), and designated walking trails. And of course identifying roads which have significant climbs relative to their topography because I wanted to find good climbs in my area. Other qualities mattered too, such as how long and flowy the stretches were.

A collection of pleasant roads doesn't automatically make a pleasant route. I built Remap to create something cohesive from this data. Connecting these stretches sensibly, minimising circling around your starting point, whilst maximising exploration of the surrounding area, all contribute to routes feeling exciting and fun. The challenge is to include as many worthwhile stretches as possible whilst meeting your target time or distance. I want to be able to say, “I only have an hour, find me the best cycling route with minimal turns and traffic, plenty of nature, and some climbs.”

That means considering the whole route. The roads between those stretches need to be enjoyable as well, and the way home should not be an afterthought.

Together, these considerations produce routes generated on-the-fly that seem magical once you see the results. The routes I’ve been cycling on all summer have been absolutely wonderful. Away from cars, not on shared paths, and in mixed traffic where it makes sense. These are all customisable options.

The great thing is that you don’t have to adjust anything yourself. Remap always starts by adapting to your local topography, taking local road speeds and traffic levels into account when putting together your ride or run.

That’s the infinite machine for routes. The possibilities in the thousands of roads around us, brought together on demand for you, anywhere.