Published: July 7, 2014

William Luce rides his bike along a rural Boulder road. Last fall, computer science major and avid cyclist William Luce and a friend turned their bikes east onto Niwot Road north of Boulder.

“There was a storm blowing in and there was a 40 mph wind coming right off the foothills and blowing straight east,” he said. “We pedaled as hard as we could with this tailwind at our backs.”

When Luce got back home, he uploaded the GPS data he’d recorded during his ride to an online program called Strava, which compared his performance to all other cyclists who had ever ridden and recorded their times for that section of road in the past.

The results seemed ludicrous. They also sparked a research idea that has consumed his first year at the University of Colorado Boulder and garnered interest in his work among professional riders.

The problem was this: Luce loves to ride, but between school and family, he has a wife and a young daughter, he doesn’t have the time to train to become one of the top-tier riders in Boulder. So when Strava ranked him No. 12 on that particular stretch of Niwot Road, he realized that the system was fundamentally flawed.

“I had no business being twelfth—there are more than 12 professional cyclists in Boulder,” he said. “It was solely because of an external variable. If it rains one day, and it’s sunshine the next, it’s not the same ride any more even if you’re riding the same stretch of road. The meteorological variables, when it comes to endurance sports, are far more important than I thought to being able to compare one ride to another.”

Disentangling weather and fitness

Luce began to wonder if he could write some computer code that could incorporate extremely localized weather data—possibly including not just wind but also temperature, humidity and precipitation—into the way performance is measured. If he could find a way, the applications for such a tool could be widespread. Existing programs like Strava could theoretically begin incorporating weather conditions into the data they collect, eventually allowing users an option to view a version of a leaderboard for a particular segment that was corrected for weather.

But professional athletes also could use weather correction as a training tool, allowing them to more accurately compare their fitness over time, disentangling whether the slower ride they just took was due to being in worse shape or to stronger headwinds, for example.

And if the same tool could be used for micro-forecasting of weather along a particular racecourse, riders could incorporate predicted rains or crosswinds into their decisions about whether to make a break from the main pack or stay safely in the group of riders known as the peloton during the race.

Luce, who at the time was just taking his first programming class at CU-Boulder, was kicking around the idea in the lab when his instructor, Rhonda Hoenigman, overheard him. Hoenigman—who had previously done her own research into modeling bike race dynamics—thought the idea was interesting and invited Luce to work on his problem through an independent study with her in the spring.

The bulk of the work during the independent study was just trying to determine whether the data was even there to be collected.

“You can get a weather forecast for an entire city,” Hoenigman said. “But can you get an idea of more localized patterns? If you look at a racecourse and there’s a reading over here and a reading over there, how should we predict what’s going on along the entire course?”

For more than just cyclists

After determining what data is available and writing the first rudimentary code to process that data, Luce is now onto figuring out what the results he’s able to produce might actually mean, in real terms, to athletes on the ground. For example, how accurate does the wind speed prediction need to be before it’s useful? And how much does a 10-degree increase in temperature actually affect performance?

“Right now, we’re doing a lot of testing,” Luce said. “I can go out and run the code I have right now, but the point is to start to quantify what means what.”

Even in its early stages, the promise of the program Luce is trying to build is resonating with the hardcore athletes who live in Boulder. It seems that every time Luce talks about his project, he hears back from athletes who are already imagining how they might be able to use a weather data tool. And they’re not just bikers. They’re runners. They’re triathletes. They’re even golfers, Luce said.

But there is still a particular appeal with cyclists, and Luce is collaborating with some professional riders to see how the program might be useful, especially in long stage races, like the Tour de France.

Regardless of what the final product ends up looking like, Luce’s experience embarking on a research project early in his education and taking on an independent study has tremendous value on its own, Hoenigman said.

“The independent study is not necessarily about the finished product, which takes a lot of the pressure off,” Hoenigman said. “It’s really about the process. This is going to take some pretty advanced computer science—some graduate-level artificial intelligence and machine learning. I think this has been of real value for him as a student.”