This is how i’ve come to understand what the Ai is doing: This is a gross over simplification, but I think its about right.
The simplest analogy I can come up with is:
Think of a 4-week training block as a simulation. The AI’s job is to select workouts that fit a specific structure (provided by the training plan) and then predict your resulting FTP based on your completion of all of these workouts at a the predicted perceived effort (and HR if it has this data).
Imagine a stack of 100 blocks, the 100 blocks represents a 100w FTP. And lets assume there is 10 workouts in the 4 week simulation window.
The Ai looks at the first workout, based on your 100w stack of blocks, it picks a workout that will stack one 2w block on-top of your 100w stack (in TR this equivalent is moving your 6 week power curve up at some power / time duration). And this workout, if its difficulty was judged correctly, should feel hard and the Ai thinks this is an appropriate ramp rate in the workout difficulty based on your training history etc.
If the athlete completes the first prescribed workout, the stack of blocks is now 100 + 2 = 102w (equivalent to your athlete level increasing)
The Ai then picks the next workout, to stack another 2w block etc etc. (In reality the blocks will not all be weighted equal, some workouts will be worth 1w and some 3w etc but we will keep them as 2w to make things simple)
At the end of the 4 week cycle we therefore would have the 100w of starting blocks, plus 10 x 2w blocks, so we get given a prediction of a 120w FTP at the end of the 4 week window, awesome!.
The athlete then starts training. and the following can occur:
Scenario 1 (the ideal):
They do the first workout. They meet the power at the perceived effort simulated, the simulation is proving correct (so far) and the predicted chain of stacked blocks are still a 2w gain each time and the end prediction holds at 120w FTP
Scenario 2 (struggling with intensity):
They do the first workout, they meet the power target but the perceived effort was harder than expected. The Ai stacks one 2w block (as the power curve moved up), but concludes that stacking 2w blocks each time is too much, so reduces the remaining blocks to be 1w each time and therefore the final predicted stack becomes 100w + 2w + 9x1w = 111w and the prediction therefore drops from 120w to a 111w FTP
Scenario 3 (skipped workout):
The athlete completes the first 5 workouts at the power and perceived effort, but then skips 2 workouts, before completing the last 3. The final stack will be 100 + 5x2 + 2x0 + 3x2 = 116w FTP
Scenario 4 (fatigue):
The athlete completes all workouts, but after the 5th workout, brought in some fatigue that the model had no way of accounting for (went skiing, to the gym, huge Sunday ride, etc). the model then adjusts the final 5 workouts down to being only 1w gain each time to allow the fatigue to dissipate so the final stack is 100w + 5x2 + 5x1 = 115W FTP
Scenario 5 (most likely): A complex mixture of any or all of the above.