Measuring Your Sensations Using the Hearth Rate Efficiency

Jun 5, 2021

7 mins read

Recently, everyone seems to be interested in how to record its feeling for a session. Garmin has just released a version of the Forerunner watches that allow it to be inform at the end of it. Also, there is a set of new podcasts published about the sensation and the RPE.

In a simplistic way, the RPE (Rating of Perceived Exertion) corresponds to the difficulty of the exercise noted from 1 to 10 (10 being the most difficult). The sensation describes the shape of the moment, rated from 1 to 5 (5 is the top of the form) and often represented by smileys. We will be focused here only on sensation.

It is in general a good thing to include his sensations to enrich the measures of the races. It permits to establish a correlation between a progressions with the shape of the moment. This is essential to do a post analysis of the trainings over several days or to share the session with a coach. There are even algorithms that estimate the load from these information like that of Foster1 (which only uses RPE).
And, this create some difficulties….

In fact, in order to carry out precise long-term monitoring, it is already necessary to be able to estimate its feel and RPE precisely. That’s not trivial.
First rating the difficulty of an exercise on a scale from 1 to 10 is not always easy. It’s not possible to do it objectively. Try, for example, to order by difficulty the following 3 exercises:

  • the Cooper test
  • 30 intervals 30x30
  • the Conconi test

Difficult to give them a RP, they have a different nature with a comparable difficulty. If we also include other sports (fitness, swimming, cycling…), it is then also more difficult to compare the effort and it is questionable if the RPE there is not a systematic error on evaluating it.

Also, over the long term, what is the guarantee that we keep the same quantification of intensities? It is clear that the training should improve the performance. And so, the difficulty of the same exercise evolves. But how to be sure that there is not a drift of quantification over the long term? How to be sure that an RPE for an activity done last year is evaluated with the same criteria as now?

For the feeling, we are faced with the same problem. But, there is a additional difficulty: there is a risk of being influenced by the nature of exercise. How to compare your form for a 5 km at 10km pace with a easy run? We risk being influenced by the difficulty of the exercise to assess its form.

In short, doing this kind of evaluation requires knowing yourself well. We will here use a slightly different approach which consists in proposing a algorithm that tries to evaluate the sensation.

Estimation of the Sensation

Imagine that I force myself to run every day on a treadmill at the same speed and for the same time. I’m running at constant RPE for all session. However, there will be certain days when this exercise will be more difficult than others. And in this case, the heart rate average was higher as usual.

This is the basic idea for measuring the feeling: if the heart rate for the same effort is higher, it is because I am less in shape.

Thanks to the cardiac efficiency measurement, we are able to measure the difference between the heart rate of the typical exertion and its measure.
Then we just have to convert it into the usual form of sensation.

A simple idea is to use a modeling by the normal distribution. We assume that this difference in heart rate undergoes the normal law.

It remains to determine the mean μ and the standard deviation σ which is in this case:

$$ \mu = \frac{\sum_{i=1}^{N} eff(i)}{N} $$ $$ \sigma = \sqrt{\frac{\sum_{i=1}^{N} (eff(i)-\mu)^2}{N}} $$

N is the number of runs performed, and eff(i) is the cardiac efficiency for each of them.

Now that we have determined the parameters of the normal distribution, we can now define the areas of perception. We will assume that cardiac efficiency is distributed equally. We use for the cumulative distribution function which is:

$$ cdf( x ) = \frac{ 1 + erf( \frac{x - \mu}{\sigma \times \sqrt{2}} ) }{2} $$

Its inverse is:

$$ invcdf( p ) = \sigma \sqrt{2} \times inverf( 2p - 1 ) + \mu $$

inverf is the inverse of the error function2.

This gives us the following table:

Perception Probability Efficiency Result
1 😫 [0-0.2] eff - μ < invcdf(0.2) eff - μ < -0.8416212σ
2 😒 [0.2-0.4] invcdf(0.2) < eff - μ < invcdf(0.4) -0.8416212σ < eff - μ < -0.2533471σ
3 😑 [0.4-0.6] invcdf(0.4) < eff - μ < invcdf(0.6) -0.2533471σ < eff - μ < 0.2533471σ
4 😄 [0.6-0.8] invcdf(0.6) < eff - μ < invcdf(0.8) 0.2533471σ < eff - μ < 0.8416212σ
5 😁 [0.8-1.0] invcdf(0.8) < eff - μ 0.8416212σ < eff - μ

The algorithm is then really simple:

  1. Compute the mean μ and the standard deviation σ of the cardiac efficiency after each session
  2. With the table above compute the estimation of the sensation.

Implementation

The calculation is performed automatically by Power Tool, so you just need to install and use the data field. However, no data will be displayed before the 5 first runs and I deactivated it for the trail because the irregularity trail efforts make such an analysis difficult.

Due to the fact that this algorithm compare the heart rate for an effort made during previous sessions, it just doesn’t make sense to produce a result after a single session. It is also better to have recorded with good and bad sensation to produce something relevant. A statistical learning algorithm is not able to guess but simply correlates with a previously learned situation.

Finally, this analysis if only based on the ratio between heart rate and the power supplied, or if preferred, the ratio between the energy consumed and produced. It is not enough to completely estimate the feelings. Muscle pain is not not taken into account, for example. And it is not certain that a variation of heart rate always reflects shape. There are even cases where a drop in heart rate during endurance may be a symptom of a overtraining.

In conclusion, I would say, that this estimate remains a good indication that one can easily compare to his own feelings. And if both indicate the same thing, it is a nice indication that the human estimation was objective.


  1. https://blog.nolio.io/user-la-charge-dentrainement-pour-mieux-sentrainer/ ↩︎

  2. https://en.wikipedia.org/wiki/Error_function ↩︎


Sharing is caring!