Le mouvement qui s'écoute
28-29 juillet 2026.
Cette nuit, on essayait surtout de répondre à une question assez basique : est-ce que mes moteurs vont réellement réussir à faire marcher Echo ? Les premiers calculs n'étaient pas très rassurants. Sur certains mouvements, on arrivait à des pics autour de 114 % du couple de calage. Le réflexe aurait pu être de conclure que les moteurs étaient trop faibles. Mais au lieu de changer le matériel, j'ai commencé à changer la marche : quatre pattes au sol plutôt que trois, des foulées plus courtes, une cadence plus rapide, davantage de balayage avec le coxa et moins de grands mouvements qui créent des bras de levier énormes. Avec exactement les mêmes moteurs et le même robot, on est redescendu autour de 76 %.
Ça m'a fait réaliser que je regardais peut-être le problème à l'envers. On peut construire un corps suffisamment puissant pour supporter n'importe quel mouvement qu'on lui impose. Ou on peut construire un mouvement qui utilise correctement le corps qu'on a. Dans le deuxième cas, la question n'est plus seulement « quelle force peuvent produire mes moteurs ? », mais « pourquoi est-ce que je leur demande cette force-là ? ». Une mauvaise géométrie, une patte trop loin, une accélération brutale ou un changement de posture au mauvais moment peuvent transformer un geste banal en énorme effort.
Je me suis mis à observer davantage ma propre manière de bouger. Quand on marche, quand on se relève ou quand on déplace quelque chose, on ne combat pas constamment la gravité et l'inertie. On s'en sert. On prend de l'élan, on change de géométrie, on déplace son centre de masse, on laisse parfois un membre partir presque tout seul et on ne fait que guider le mouvement. Même quand je me relève d'un lit, si une position me fait mal, je ne pousse pas plus fort : je roule, je laisse mes jambes tomber, j'utilise leur masse pour m'aider à remonter. La bonne réponse à un effort trop important est souvent de changer le mouvement, pas d'ajouter de la force.
Et Echo possède justement quelque chose qui rend ça intéressant : ses moteurs parlent. Ils ne reçoivent pas seulement des angles, ils renvoient aussi leur charge, leur courant, leur température, leur position et leur vitesse. Jusqu'ici je les regardais surtout comme des actionneurs. En réalité, ils peuvent aussi devenir une partie de sa proprioception. Le robot peut savoir en permanence où ça force, où ça chauffe, si un mouvement devient brutal ou si une articulation commence à sortir de sa zone confortable.
À partir de là, je ne veux plus vraiment coder « la bonne marche ». Je peux fournir une base suffisamment propre pour qu'elle ne commence pas par faire n'importe quoi, mais la démarche finale devrait pouvoir être affinée en fonction de ce que le corps lui-même renvoie. Il faut atteindre un objectif — avancer, suivre quelqu'un, tourner, se reposer — mais en essayant en même temps de limiter l'effort, le bruit, la consommation, les pertes d'équilibre et les mouvements brusques. La manière de marcher devient alors un compromis entre plusieurs contraintes plutôt qu'une animation qu'on rejoue toujours de la même façon.
C'est exactement là que le mouvement rejoint ce que je construis depuis le début autour de l'homéostasie. Si un servo commence à forcer, ce n'est pas uniquement une information de diagnostic destinée à moi. Ça peut devenir un signal interne pour Echo. Même chose avec la température ou la consommation. Le corps dit : « cette manière de faire me coûte cher ». Le comportement peut alors changer avant que quelque chose casse. Je préfère largement cette idée à un système qui exécute parfaitement un ordre jusqu'au moment où il atteint une limite physique. La douleur, si j'utilise ce mot pour le robot, doit commencer par être ça : une information qui pousse à modifier l'action.
Ça implique aussi qu'Echo ne connaît pas réellement son corps le jour où je termine de l'assembler. Une fiche technique peut me donner un couple maximal ou une température limite, mais deux pattes imprimées avec les mêmes fichiers ne seront jamais parfaitement identiques. Il y aura un roulement un peu plus serré, un câble qui frotte davantage, un jeu mécanique différent, puis de l'usure avec le temps. Je veux donc qu'elle puisse progressivement cartographier ses propres limites : bouger doucement, observer ce qui se passe, apprendre qu'une articulation est plus libre dans un sens qu'un autre et mettre cette carte à jour au fur et à mesure.
Le même problème se pose pour l'apprentissage. Je ne peux évidemment pas faire essayer des milliers de démarches au vrai robot jusqu'à ce qu'il trouve la bonne. Le matériel coûte cher, les moteurs chauffent et une pièce cassée peut demander des heures d'impression. La simulation devient donc l'endroit où l'on cherche, et le corps réel celui où l'on vérifie. Une solution intéressante apparaît dans le jumeau numérique, on la teste sur Echo, on mesure l'écart, puis on remet cet écart dans la simulation. Le réel ne sert pas simplement à confirmer que ça marche : il sert à corriger le modèle qui servira à la prochaine recherche.
C'est probablement ce qui m'intéresse le plus dans tout ça. Je pensais au départ apprendre à un robot à marcher. En réalité, je commence plutôt à construire les conditions pour qu'un corps apprenne à s'utiliser lui-même. Sa façon de se déplacer pourrait changer avec sa batterie, sa température, son usure, le sol, une patte qui commence à forcer ou simplement l'objectif du moment. Une démarche qui fonctionne parfaitement aujourd'hui ne sera peut-être plus la meilleure dans six mois.
Elle n'apprendra donc probablement jamais à marcher une bonne fois pour toutes.
Elle apprendra à marcher avec le corps qu'elle a aujourd'hui.