TransWikia.com

Firstbeat Energy Expenditure Algorithm

Physical Fitness Asked on October 26, 2021

I am looking for an implementation (or a document that describes the actual algorithm) for the energy expenditure/VO2/EPOC calculation from the heart rate variability.

A few white papers about

  • Oxygen consumption estimation
  • Energy expenditure estimation
  • EPOC (Excess post-exercise oxygen consumption)
  • Training effect
  • Athlete’s recovery analysis

can be downloaded here.

According to Garmin’s webpage, the error is about 50% smaller than for the generic method.

While these are fascinating to read, they don’t tell us much about how to actually calculate these values from heart rate data. All it says:

Neural networks were used to construct a model that derives VO2 from R-R intervals (time between successive heart beats), using respiration rate and on/off-response information.

Even though the normal heart rate monitors don’t make the data available, there are cheap receivers for polar and ANT+ around that allow beat by beat monitoring, like this one www.sparkfun.com/products/8661 (for polar) or http://www.abra-electronics.com/products/WRL%252d08840-Nordic-USB-ANT-Stick.html (for ant+)
https://code.google.com/p/hrvtracker/ (program)

The conventional estimation of caloric expenditure as a function of the heart rate can be found in this paper:
Prediction of Energy Expenditure from Heart Rate Monitoring During Submaximal Exercise.

2 Answers

I've just started looking into this, being Fitness.SE's most upvoted and unanswered question.

I came across two articles:

  1. Towards VO2 monitoring: Validation of a heart rate based algorithm
  2. Instantaneous VO2 from a wearable device

They both seem to point toward having an actual algorithm rather than a neural network for calculating VO2 from heart-rate. Unfortunately, both are behind paywalls. Fortunately, I think I can get access to the first (IEEE) through my University. I will have to report back at a later time.


Towards VO2 monitoring: Validation of a heart rate based algorithm

In 2005, Firstbeat Technologies proposed a VO2- estimation based on the RR intervals instead of the HR (5). More recent studies continued searching for new improvements (6), but the question on how to accurately estimate the VO2 based on HR while avoiding individual laboratory calibration is still open. In this article, we propose a new algorithm for the estimation of the VO2 during a walking/running training session.

Fitness.SE doesn't support MathJax so this is going to be messy, but, the article goes about calculating VO2 in three not simple steps. First is that it estimates you VO2max through the formula:

VO2max = 56.363 + 1.921*NPAC - 0.831*Age - 0.754*BMI + 10.978*Sex;
where NPAC stands for NASA Physical Activity Class, BMI is in kg/m^2, Sex = 0 if Female, 1 if Male.

The execution starts as soon as the activity classifier detects a walking or running activity. The core algorithm is structured as a state-machine. In each state, an estimate of the normalized oxygen intake pVO2=VO2/VO2max from the normalized heart rate pHR=HR/HRmax is provided. More precisely, at time i, the transformation

pVO2(i) = f_k(pHR(i))

is applied, where f_k is one of two following models. The first one uses the improved formula from Saalasti (2) and a second one (named Accelerating) is a new polynomial regression computed using the training dataset over the periods of increasing HR.

This new algorithm is the one the paper is proposing. The original Saalasti algorithm is based on the neural network. The Saalasti paper in question is referenced below.

In the last step, the VO2 is estimated by multiplying the resulting pVO2 with the subject’s VO2max:

VO2 = pVO2 * VO2max


(2) S. Saalasti, "Neural Networks for Heart Rate Time Series Analysis," 2003.

Answered by C. Lange on October 26, 2021

While I don't have the algorithm, I do have a pretty decent sized library of .sdf files of exercises. From which someone could almost certainly reverse engineer something very close to the energy expenditure model. I have a strong suspicion it is mostly exponential smoothing.

Answered by Kevin Joubert on October 26, 2021

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP