Performance Management Chart

Sorry, I haven’t.

Mike

As jpowers indicated, an exponentially weighted moving average is calculated from
Today’s CTL = (1-k) * Yesterday’s CTL + k * Today’s TSS.
That’s the definition of an exponentially weighted moving average.

However, based on the discussion in this thread, I conclude that commonly-used formulas for ATL and CTL have errors. This means that I am trusting whaat people have reported here. Two things are important in understanding why this is so.

First, the recursive formula defines an infinite series. That is, data points far in the past have an influence, however small, on today’s CTL. That means that any truncation, to 7 (ATL), 14 (as some have used) or 42 (CTL) introduces errors. In the case of a 42-day moving average, the choice of k=1/42 leaves out about 36 per cent of the past training load. In the case of k = 1/7 (ATL), 34 per cent of the load is omitted. In other words, some of what you are interpreting as the difference between ATL and CTL is only a difference in the errors of the formulas.

Second, therefore, the choice of k is critical and cannot simply be chosen as 1/42, 1/ 14, 1/7 etc – because this omits varying amounts of the load. In the case of the 7-day, 14-day and 42-day loads, of course, we want explicitly to limit how far back the weighting goes. How to do this in a way that respects the averaging process without creating errors?

In any averaging process, it is required that the sum of the weights = 1. That’s what averaging means – and any other sum of weights is simply a weighted sum, not a weighted average. Since the sum of the weights in any finite stretch of an infinite series cannot equal 1, let’s make an approximation – we want the sum of the weights to be within 1 per cent of 1 (ie, 0.99). For any true averaging process, some similar requirement is necessary.

But, from this requirement, we can calculate what k has to be for 7-day, 14-day or 42-day loads. Here are some sample values, to four decimal places:
for 7-day ATL, k = 0.4821
for 14-day ATL, k = 0.2803
for 42-day CTL, k = 0.1038.

Sorry about this…

1 Like

Well, for 42 (aka 6 weeks), it doesn’t really matter. 1/42 and 1-exp(-1/42) are only a twentieth of a percent different. It’s a bigger difference for 7: 1/7 and 1-exp(-1/7) are about 2% different.

CTL is an impulse-response model, where the positive boost from each “impulse” of training (TSS) fades over time. The fading is an exponential decay, so the CTL contribution from a particular event is a^t * TSS, where t is how many days ago the event was and a describes how fast the contribution fades. A physicist, at least, would typically prefer to write a as exp(-1/T), so CTL_event is exp(-t/T) * TSS. You’d then call T the “characteristic time” – it describes in terms of time how fast the decay is. Some people might prefer half-life, a = (1/2)^(t/H). Apparently a = 1/N is also used. You can convert any of these to each other: if a = 1/42, T = 41.5 and H = 29, roughly. Ultimately, I don’t think CTL is an accurate enough model to worry about whether your formula is doing a 42-day average or a 41.5-day average. ATL is a little more concerning, since using a = 1/7 is what I would call a 5-day average.

1 Like

Thanks! That explains why my software (intervals.icu which uses exp(-1/T)) gets slightly different results to Training Peaks (which according to this thread, uses 1/T). I haven’t verified this myself but users have reported the difference.

Sorry if this is a stupid question but how can I find out what my current CTL and ATL numbers are?

CTL/ATL are not shown in TrainerRoad. The Calendar does, however, show related numbers that are arguably just as useful: this week’s TSS and the 6-week average TSS. Those are, roughly, ATL and CTL, respectively.

2 Likes

So just a heads up on Intervals.icu - You can now upload your TR calendar, it doesn’t reflect yet on the chart, only in the activities section I understand that soon it will reflect on the PMC chart as well

2 Likes

New user to Intervals.icu - how do I do this? (Upload TR Cal to Intervals.icu that is)

Under ‘Options’, then ‘Add Calendar’:

1 Like

Great - thanks!!

in intervals.icu select Avtivities

image

Select options drop down list

image

Select add calendar

image

Now open new tab with your TR account and select “Export Calnder”

I use Outlook so i selected outlook

Select “Connect Calendar”

Now copy the URL in the address bar

Go back to Intervals.ICU tab and paste it in “Add Calendar”

Make sure “Show past planned workouts” is checked

image

You can delete the calendar if you want

image

If you change your plan on TR then you can refresh it on Intervals.icu … I think, havn;t tried that yet

image

this is how i did it - seems to work

6 Likes

Yep - managed it. Thanks for the help,
Dave

The Intervals.icu /fitness chart now shows future ATL, CTL and TSB for workouts on your calendar including those imported from TrainerRoad. A, B and C races are also indicated. I still need to do some work to show other things like sick, injured etc.

7 Likes

Is there any way i can setup to finish on a specific date and not 14 months period?

Thanks, it looks amazing

Sorry I don’t understand the question “finish on a specific date”?

This was about the topic, not about the intervals.icu.

Hi David, is there a way to exclude certain rides from the PMC? I’ve been double recording rides with my garmin and TR so it’s inflating my daily TSS. Thanks!

Yes you can edit the training load and make it 1, which will effectively remove it from the PMC. Or you can delete the duplicates in Strava and then they will also be deleted from Intervals.icu.

No way to do that I’m afraid. I would question why you’d want to do that. Just ignore everything that’s too far into the furure.

As far as the charts are concerned, you can enter how far you want to look back and forward from the current day rather than graphing the full 14 months. Just change the numbers in the green boxes at the top left corner.

Mike

1 Like

Hey all. Great spreadsheet! I just downloaded and started inputting data into here from early summer and have a weird observation, I must be doing something wrong? Its missing loads of data through September/October. I have certainly done training in there too. what might I be doing wrong?

image

1 Like