Endurance Analytics

Our blog - covering sports analytics and EA products

3D Visualisation, applications in Performance Modelling

Anybody who has ever been fortunate enough to pilot an aeroplane has probably experienced an eerie realisation that the world is far more 3 dimensional than most of us ever really think about. Up there, a couple of thousand feet or more above ground level, there is almost a sensation of diving somewhere in the middle of an aquarium while the place that once represented the 3D world feels like nothing more than the gravel and the weeds down at the very bottom of the tank. The opportunity to see the world like that has a lot to do with why many of us stop, gaze and enjoy the vista on high mountain passes.

Modelling cycling courses relies on what we call “triplets” of GPS data – latitude, longitude, elevation – and we have recently been looking for better ways to visualise data in these 3 dimensions. We were incredibly fortunate to hire a guy whose recent projects included some pretty serious geospatial work – software used to remap the bed of the Panama Canal – and the image with this blog is an example of the capability he came up with. In this image we’ve rendered the gradient of every road sector as a kind of “4th dimension”, now quite a familiar technique, but the possibilities go way beyond that.


CPL predictive race modelling typically includes projections of riders speed given power, variable power levels required to execute an Optimal Pacing Strategy, and even cadence ranges given that power, rider attributes and gearing. We can now map any of these projections onto 3D visualisations of a course and we think this opens up a world of possibilities in terms of understanding race planning and execution. Imagine being able to look at the course of a forthcoming event and see the “hotspots” where a rider will be travelling particularly slowly – often the best candidate sectors for pacing improvement – or where a particular range of gearing may be inadequate.


There is more too. One of the big benefits of Pre-Event Performance Models is scenario analysis. What is the impact of a rider’s time on course given more power (CPL Power Delta), less weight (CPL Mass Delta), less aerodynamic drag, or changes in equipment? Currently we can illustrate these impacts for the 4 quarters of a course, and for the course in aggregate, but imagine if these impacts could be visualised through every single sector. Where does a heavier but more aerodynamic wheel cost time and where does it buy time? To the best of our knowledge the cycling world has not seen this sort of analytic detail in 3D before.

We expect to incorporate more and more 3D visualisations into what we do. The image with this blog is from a rather special pacing project that came across our desk this week. In the meantime, if you the reader should have any particular visualisation ideas or problems with which we may be able to help, then we are always happy to hear them.

Sustainable Power is a moving target

The trouble with rider’s power output is it falls over time. Not in the course of a season, when we hope it increases due to training stimuli, but as a response to the duration of a ride. Whether we’re interested in short efforts, when sustainable power decreases as a function of anaerobic work capacity, or relatively longer ones, when fatigue is the problem, there is an inescapable reality that we become weaker as the clock ticks over. This reality can be visualised as a rider’s “Power Duration Curve”.

In some way stronger riders enjoy a double advantage. As well as going faster from the outset they also arrive at the finish line way before weaker riders, putting their effort on a very different section of the curve. Indeed pro level ironmen face a completely different race to the typical age grouper who will be out on course for hours more. What may be a tempo ride for someone can be a test of endurance for another. A layman might conclude that we should all ride full gas from the off, thus completing whatever course asap and aiming for some shorter (but higher) point on the curve. Unfortunately the realities of physiology quickly undermine such a strategy.

Completing any course as quickly as possible comes down to intelligent pacing. Even if we discount the opportunities presented by a computer optimised, variable power strategy, there is a problem to be solved. A rider needs to know the highest power output he can expect to be able to sustain for the duration of the course, to leave everything on the road and get the best ride out of himself. But what is his expected duration on course?! Only predictive analytics, performance modelling, can do a good job of revealing that.

There is a chicken and egg problem here. To estimate time on course we need to know (average) sustainable power, something to feed our model. But to identify sustainable power we need to know time on course! Thankfully computers are pretty good at solving these kind of problems…we can “iterate” a power value until we “solve” for a rider’s best sustainable power. Best means the number that leads to the fastest time on course, but rests no higher than the rider’s curve at that duration.

CPL Event Models have always solved for best sustainable power based on your inputs, but we haven’t done a great job of explaining this. That’s why, as of now, where you see our power prediction, you can click on “why this number?” to open an insightful chart. You’ll see two lines 1) Power Duration Curve… based on observed power inputs & 2) Power For Time on Course. Where these lines cross (and a rider’s fitness would have to be critically unsuited to the event if they don’t) is best sustainable power.

Best sustainable power is clearly a key number for any rider wanting to go as fast as possible, even if a variable power pacing strategy has been discounted. So of course we’d encourage everyone to use the free analytics here on CPL in uncovering that number. No rider can out-perform his fitness but the number comes with two guarantees. First, said rider will finish about as fast as he can, no guess work. And second, the suffering will end about as soon as it can do. Smart riders should like the sound of both.

Evaluating Optimal Pacing Plans

Performance Analysis & Modelling in sport probably began in field games such as football and baseball where the objective is to turn analytical intelligence into real tactical advantage which increases the probability of victory. In cycling the highest objective or “holy grail” is free speed - faster race times for equivalent physical effort - and no application promises more of this than the development of Optimal Pacing Plans.

At CPL we’ve been developing optimal pacing algorithms since 2010, when we provided the first web based tool for experiments in variable power pacing highlighting the importance of sector-by-sector constraints on rider's ability to deliver power. This has always been a “beta” tool (further development intended) but we have recently had the opportunity to do a lot more research and development in this area. Since we are no longer the only resource for optimal pacing plans some of our conclusions may be of even greater interest in light of what others are offering.

Beware Simplification

In the same way that climbing and descending a mountain is not the same as riding an equal distance on the flat (though both propositions equal zero net elevation gain) any efforts to simplify a course take us a long way from the realities of rider-on-course modelling. Smoothing away even the smallest ups, downs, and changes of direction can seriously compromise and result in overly optimistic pacing plans. We have always done performance modelling at the highest resolutions made possible by GPS profiles and observe poorer correspondence to reality when that resolution is dialled down. So beware simplification.

Compute Time

The Optimal Pacing Plans included in our Popular Event Models leverage the full resolution of the course profile for the best achievable accuracy. In fact it takes a lot of computing power to come up with a plan from this kind of model. So much so that we don’t pretend to offer plans you can calculate in a couple of seconds on the internet. Our plans take several minutes of compute time to generate so sending you a pdf is the only way to keep things honest and useable. The ten sector summary we show you is just that - a summary – hiding the intricacies of the real model.


Can you control your power output to the nearest watt? Can you even hit an exact average for a certain interval or stretch of road? Probably not. Most people would struggle to hit this accuracy on a turbo trainer, never mind in the varying environment of road cycling. So beware pacing plans that expect you to execute in terms of single digit resolution. We work to the nearest 10 watts - just about executable – with insignificant effects on best time on course predictions. The only exception to this is in the final sector of the course where there is only one number that will solve for an overall target power.


One way to solve the optimal pacing problem is to look at the impact of small changes in sector powers on 1) time in sector & 2) target power at the course level. Logically the sectors which offer the greatest reduction in time-on-course for the least impact on target power (dt[s]/dNP if you’re into maths) may be the ones where a rider should “power up”, and vice versa. Various optimisation techniques can exploit this kind of theory but we have found better results using simulations. The way we develop Optimal Pacing Plans is conceptually similar to having a rider tackle the event 10,000 different times. Every time this rider tries a different pacing strategy – sometimes he blows up, sometimes he’s too conservative. We simply keep the details of the fastest ride where he doesn’t blow up and that is your plan.

Want to try a performance model with Optimal Pacing Plan? Simply choose an event here.