Une semaine à lire des articles avant d'écrire une ligne
La puissance nécessaire pour rouler a une équation, elle date de 1998, et on peut la reproduire numériquement pour savoir si on l'a comprise. Sur la différence entre loi, modèle validé et convention.
Tout a commencé en regardant mon frère s'entraîner à la maison avec un home-trainer flambant neuf, un Wahoo KICKR CORE 2. Je l'ai vu s'agiter et pester contre le logiciel qui l'accompagne : des interfaces peu soignées, et par-dessus tout l'échafaudage d'un service payant. L'idée nous est venue là : une application native, propre, pour celui qui ne cherche pas le côté social mais veut un trainer qui se souvienne de lui et l'aide à s'entraîner.
J'aurais pu ouvrir Xcode le soir même. Le protocole pour parler au home-trainer est public, les API d'Apple, je les connais. J'ai plutôt passé une semaine à lire, et cet article raconte ce que j'y ai trouvé. Non pas parce que la lecture en soi serait intéressante, mais parce qu'elle a changé la façon dont l'application traite chaque nombre qu'elle affiche.
En les regardant après coup, les découvertes de cette semaine-là répondaient toutes à la même question : ce nombre, d'où vient-il ? D'une mesure, d'un calcul, ou d'une habitude que personne n'a jamais vérifiée ?
La puissance a une équation, et elle date de 1998
La première découverte a été que la question centrale d'un simulateur, combien dois-je pousser pour aller à cette vitesse sur cette route ?, a une réponse publiée et vérifiée. C'est le modèle de Martin, Milliken, Cobb, McFadden et Coggan, paru dans le Journal of Applied Biomechanics en 1998. Les auteurs l'ont comparé à un capteur de puissance SRM sur route : R² de 0,97, erreur standard de 2,7 watts. Voici l'équation, telle que l'écrit l'article :
L'équation réunit cinq termes :
- la résistance de l'air, y compris celle des roues qui tournent ;
- le frottement de roulement des pneus ;
- le frottement des roulements des roues ;
- la gravité, c'est-à-dire le coût de monter ;
- l'énergie cinétique, c'est-à-dire le coût d'accélérer, roues comprises.
Le tout divisé par le rendement de la transmission, parce que la chaîne et les pignons mangent une partie de ce que vous mettez dans les pédales.
Le plus utile de l'article, cependant, c'est l'annexe. Les auteurs rapportent un exemple détaillé : une vitesse, un vent, une pente de 0,3 %, et la valeur de chaque terme. Cela transforme la lecture en un exercice vérifiable : si mon code donne les mêmes nombres, j'ai bien fait mes devoirs. Sinon, non.
| terme | watts |
|---|---|
| air | 158,8 |
| roulement | 23,6 |
| roulements | 1,37 |
| gravité | 22,1 |
| énergie cinétique | 2,3 |
| total, après la transmission | 213,3 |
Le code les reproduit tous, et l'exercice a aussi dissipé un doute. Le PDF de l'article qu'on trouve en ligne est un scan, et l'exposant du terme des roulements se lit mal : ce pourrait être 10⁻³ ou 10⁻⁴. Avec 10⁻⁴, ce terme vaudrait 0,137 watt ; avec 10⁻³, il vaut 1,37, soit le 1,4 que rapporte l'annexe. C'est donc 10⁻³, et c'est l'article lui-même qui le dit, à condition d'en refaire les calculs. Le lire ne suffisait pas : c'est le recalcul qui a montré laquelle des deux lectures était la bonne.
Le modèle de Martin est le premier type de nombre que j'ai appris au cours de cette semaine d'exploration, et c'est un modèle validé : quelqu'un l'a confronté à la réalité, a déclaré de combien il se trompe, et n'importe qui peut en refaire les calculs.
À l'envers, c'est une cubique
Le calcul est exactement à l'envers dans le cas d'un simulateur. Il ne connaît pas la vitesse : il connaît les watts que vous poussez, et doit vous dire à quelle vitesse vous allez. Posée ainsi, l'équation devient une cubique en la vitesse, et les cubiques ont une solution exacte, celle de Cardan, qu'on étudie au lycée puis qu'on oublie. Personnellement, je n'avais aucune réminiscence de cette élégantissime solution. Ou plutôt, je me souvenais de la formule, mais je n'en avais jamais compris le moins du monde l'usage réel dans le monde réel. C'était vraiment fascinant de repêcher un souvenir comme celui-là et de lui trouver un rôle réel. Si vous vous demandez de quel simulateur je parle, c'est une remarque tout à fait juste. J'en ai parlé ensuite dans J'ai construit un faux home-trainer pour pouvoir construire le vrai.
L'application réelle, pourtant, n'utilise pas Cardan. Elle fait quelque chose de plus élégant (et d'efficace) : elle intègre la vitesse pas à pas, dix fois par seconde, parce qu'un vélo accélère et ralentit, il ne saute pas d'une vitesse à l'autre. Mais quand la puissance et la pente restent constantes, la vitesse à laquelle l'intégration se stabilise doit être exactement la racine de la cubique. Deux chemins indépendants vers le même nombre : s'ils ne coïncident pas, l'un des deux se trompe. Sur sept combinaisons de puissance et de pente, ils coïncident aujourd'hui à 5 centimètres par seconde près.
Ici, la vérification ne vient pas d'une expérience mais des mathématiques, et la racine d'une cubique n'est pas une opinion. C'est le deuxième type de nombre : celui qui découle d'une loi, et qui donc se recalcule. Si deux calculs indépendants ne coïncident pas, l'erreur est de notre côté.
Le TSS n'est pas une loi
Le troisième type, je l'ai trouvé là où je m'y attendais le moins : dans les nombres que tout cycliste connaît. Si vous vous entraînez avec un capteur de puissance, vous connaissez le TSS, le score de stress d'un entraînement, et ses frères : la puissance normalisée, le facteur d'intensité, les zones de puissance. Ils viennent presque tous du travail d'Allen et Coggan, et l'ouvrage de référence est Training and Racing with a Power Meter.
En le lisant, ce qui m'a frappé, c'est combien peu de ce système est une découverte et combien est un choix. Le TSS est une définition : il dit comment combiner durée et intensité en un nombre, et ce nombre est utile parce que tout le monde le calcule de la même façon. Les sept zones de puissance sont une convention : des frontières placées à des endroits raisonnables, adoptées partout, mais pas le résultat d'une expérience démontrant que le corps change de comportement exactement à 75 % du seuil.
Il n'y a rien de mal à cela. Le problème commence quand une application présente une convention avec la même assurance qu'une mesure.

Et pas davantage 220 moins l'âge
L'exemple le plus célèbre d'une convention prise pour une mesure est la fréquence cardiaque maximale. 220 moins l'âge est écrit partout, et n'a pas d'origine expérimentale publiée. En 2001, Tanaka, Monahan et Seals ont réuni 351 études et 18 712 personnes, et la formule qui en sort est autre : 208 moins 0,7 fois l'âge.
À quarante ans, les deux formules donnent le même nombre, 180. Plus on s'en éloigne, plus elles divergent : à soixante-dix ans, l'ancienne dit 150 battements et celle de Tanaka 159, neuf battements de différence, assez pour déplacer tout un entraînement par zones.
Et Tanaka aussi est une moyenne, avec un écart de dix ou douze battements. C'est pourquoi Grade ne l'utilise que tant qu'elle ne sait rien de mieux : si votre cœur est déjà monté plus haut que ce que dit la formule, c'est votre cœur qui gagne. Pas l'inverse. Un maximum enregistré plus bas dit seulement que vous n'avez jamais poussé à fond, et n'abaisse rien.
Dans une seule formule, il y avait les trois types de nombre : une convention qui se présente comme un fait, un modèle validé qui la remplace, et une mesure, la vôtre, qui quand elle existe les bat tous les deux.
Loi, modèle validé, convention
À la fin de la semaine, ces quatre lectures se sont mises en ligne d'elles-mêmes, et j'avais en main une distinction qui est devenue une règle du projet. Tous les nombres ne se vérifient pas de la même façon, et les confondre est le moyen le plus rapide de donner à une convention l'autorité d'une mesure.
| catégorie | ce que c'est | comment on vérifie | exemples |
|---|---|---|---|
| loi ou définition | découle de la physique, ou d'une définition | se recalcule et se compare | la cubique de Cardan, le TSS |
| modèle validé | a une étude dédiée, avec ses propres chiffres | se compare à ces chiffres | Martin 1998, Tanaka 2001 |
| convention | une pratique répandue, sans expérience derrière | on contrôle que le nombre est bien celui déclaré, et qu'on le dit | les zones de puissance, 220 moins l'âge |
La règle qui en découle tient en une phrase : une convention s'étiquette. L'utiliser n'est pas un défaut. La présenter comme une mesure, si.
« Données insuffisantes » est une réponse
La distinction a un cas limite, et je l'ai compris en dernier : celui où le nombre n'existe pas. Ni loi, ni modèle, ni convention : seulement des données qui ne suffisent pas. Cela ne figure dans aucun article, c'est une habitude. Quand les données ne suffisent pas, on le dit.
Avec moins de cinq activités, les totaux d'une période sont décidés par le hasard. Avec moins de vingt-huit jours d'historique, la charge d'entraînement ne dit rien de vous. Dans ces cas, Grade n'affiche pas de nombre : elle écrit ce qui manque et pourquoi. Garmin, dans la même situation, affiche « No Status », et c'est le bon choix.
Un nombre affiché avec assurance, quand il n'y a rien dessous, coûte plus cher qu'un espace vide. Parce que le jour où l'utilisateur s'en aperçoit, il cesse de se fier aussi à tous les autres.
Cette semaine de lectures n'a pas produit une ligne de code. Elle a produit le critère selon lequel chaque ligne, ensuite, a été écrite.
Grade est un simulateur de parcours GPX pour home-trainers connectés. Vous importez la trace d'une vraie sortie, et le home-trainer vous donne ses montées, pente par pente, mètre par mètre. iPhone, iPad, Mac.


