Keywords: Forward simulation, motion tracking, controller characteristics, motion prediction, trajectory optimization, neural network. iv

several healthy reference motions and under the inĆuence of external perturbations. However, a re-training is necessary to follow the motion in a pathological condition. The different predictions allowed us to produce a gait that respects the constraint imposed by the pathology in a reasonable time. This prediction is different from the captured motion when the respect of the constraint caused by the pathology is the only objective.

RÉSUMÉ

Mon travail de recherche porte sur la modélisation et la simulation du système squelettique humain et la conception et lŠanalyse dŠun simulateur prédictif de marches pathologiques. Il sŠorganise en trois volets. Le premier est la conception dŠun simulateur direct capable de générer un mouvement de marche similaire à celui dŠun sujet réel. Le second a pour objectif dŠanalyser notre simulateur dans différentes conĄgurations. EnĄn, dans le dernier volet, lŠobjectif est de prédire le mouvement de marche réalisable par un sujet sous lŠinĆuence dŠune pathologie. La qualité des prédictions est estimée en utilisant des données cliniques fournies par le Laboratoire de Biomécanique et de Biomatériaux (LBB) du CHU de Hanovre (Allemagne), partenaire du projet ANR PRCI OMEGA dans lequel sŠest déroulé cette thèse.

Dans le domaine de la simulation directe, lŠévolution rapide des méthodes de contrôle a permis au cours des dernières années de passer de la reproduction de mouvements peu naturels à la production de mouvements de sujets présentant une pathologie. LŠintégration de réseau de neurones dans la stratégie de contrôle est une approche couramment utilisée dans les travaux les plus récents. Mais, à notre connaissance, peu de travaux ont été réalisés aĄn dŠévaluer les caractéristiques des contrôleurs utilisés pour produire des mouvements en simulation directe.

Comme nous disposons de données cliniques pour des mouvements de marche dŠun sujet sain et avec une pathologie artiĄciellement induite, nous avons cherché à proposer une routine dŠanalyse.

La première étape a consisté à pouvoir reproduire un mouvement capturé dans un simulateur direct. Pour cela, un traitement est dŠabord réalisé sur le mouvement aĄn de le préparer à la simulation. La simulation est réalisée dans un environnement suffisamment rapide pour réaliser lŠentraînement dŠun réseau de neurones utilisé dans la stratégie de contrôle.

Ensuite, la seconde étape a consisté à analyser les différentes conĄgurations du simulateur. Cela a été fait dans le but dŠestimer la précision, la robustesse aux perturbations extérieures et aux changements dans le mouvement de référence. Les résultats sont utilisés pour déterminer la conĄguration optimale pour faire nos prédictions et pour mieux interpréter les mouvements obtenus.

La dernière étape consiste à produire des prédictions en intégrant dans notre modèle les informations sur le(s) changement(s) subit(s) par le sujet. Les prédictions sont proposées en utilisant un algorithme dŠoptimisation de trajectoires articulaires. Une méthode permettant de réduire le nombre de variables à optimiser est aussi proposée, et elle utilise des connaissances a priori sur la pathologie simulée.

Le suivi des mouvements sains ou pathologiques est de qualité équivalente avec différentes i conĄgurations dŠentraînement. Mais les conĄgurations dŠentraînement font varier les caractéristiques en matière de robustesse. La conĄguration correspondant à un entraînement réalisé avec plusieurs mouvements de référence suivi dŠun curriculum learning avec des perturbations extérieures est la plus robuste. Elle permet de suivre plusieurs mouvements de référence sains et sous lŠinĆuence de perturbations extérieures. Cependant, un ré-entraînement est nécessaire pour suivre un mouvement dans la condition pathologique. Les différentes prédictions réalisées ont permis de produire un mouvement qui respecte la contrainte imposée par la pathologie en un temps raisonnable. Cette prédiction est différente du mouvement capturé dans le cas où le respect de la contrainte causée par la pathologie est le seul objectif.

Mots clés : Simulation directe, suivi de mouvement, caractéristiques des contrôleurs, prédiction de mouvement, optimisation de trajectoires, réseau de neurones.

ii ABSTRACT My research work focuses on the modeling and simulation of the human skeletal system and the design and analysis of a predictive simulator of pathological gait. It is organized in three parts. The Ąrst part is the design of a forward simulator capable of generating a gait similar to that of a real subject. The second one is to analyze our simulator in different conĄgurations.

Finally, in the last part, the objective is to predict the gait performed by a subject under the inĆuence of a pathology. The quality of the predictions is estimated by using clinical data provided by the Laboratory of Biomechanics and Biomaterials (LBB) of the University Hospital of Hanover (Germany), partner of the ANR PRCI OMEGA project in which this work took place.

In the Ąeld of forward simulation, the rapid evolution of control methods has made it possible in recent years to move from the reproduction of unnatural movements to the production of movements of subjects with a pathology. The integration of neural networks in the control strategy is an approach commonly used in the most recent works. However, to our knowledge, little work has been done to evaluate the characteristics of the controllers used to produce movements in forward simulation. As we have clinical data of gaits of a healthy subject and with an artiĄcially induced pathology, we sought to propose an analysis routine.

The Ąrst step consisted in reproducing a captured motion in a forward simulator. For this, a treatment is performed on the motion in order to prepare it to the simulator. The simulation is performed in a fast enough environment to train the neural network we used in the control strategy.

Then, the second step was to analyze the different conĄgurations of the simulator. This was done in order to estimate the accuracy, robustness to external perturbations and change in the reference motion. The results are used to determine the optimal conĄguration to make our predictions and to better interpret the obtained motions.

The last step consisted in producing predictions by integrating in our model the knowledge on the change(s) undergone on the subject. The predictions are proposed using a trajectory optimization algorithm. A method allowing to reduce the number of variables to be optimized is also proposed, and it uses the a priori knowledge on the simulated pathology.

The tracking of healthy or pathological gaits is of equivalent quality with different training conĄgurations. However, the training conĄgurations present varied characteristics in terms of robustness. The conĄguration corresponding to a training with several reference motions followed by a curriculum learning with external perturbations is the most robust. It allows the tracking of iii

INTRODUCTION

Mon travail de recherche sŠinscrit dans le cadre du projet ANR PRCI OMEGA ń Optimizationbased forward musculoskeletal simulation of pathological gait ż. Il porte sur la modélisation et la simulation du système musculosquelettique humain et lŠétude de lŠinĆuence dŠune pathologie sur la locomotion dŠune personne. Ce projet participe à lŠavancement de la recherche visant à être capable de proposer plus facilement des solutions aux personnes atteintes de pathologies affectant leurs tâches quotidiennes et notamment leur locomotion. Ces solutions permettraient ainsi dŠaméliorer le confort de vie de ces personnes.

LŠidée proposée consiste à utiliser la simulation physique aĄn de simuler la marche dans différentes conditions dŠun sujet. Deux méthodes de simulation physique peuvent être utilisées pour cela : la simulation directe interactive et la simulation directe par contrôle optimal. La plupart des simulateurs directs interactifs proposés dans la littérature génèrent des mouvements de marche à lŠaide de moments articulaires [START_REF] Coros | Generalized biped walking control[END_REF] ou à lŠaide de forces musculaires [START_REF] Lee | Locomotion control for many-muscle humanoids[END_REF].

Ils permettent de simuler des mouvements de marche réalistes, ils sont interactifs et robustes aux évolutions de lŠenvironnement de simulation. Des méthodes basées sur le contrôle optimal ont été proposées pour réaliser des prédictions, mais elles ne présentent pas les avantages précédemment cités [FSD * 19]. Cette approche a été utilisée par nos partenaires du Laboratoire de Biomécanique et de Biomatériaux (LBB) dans le cadre du projet OMEGA, et nos travaux sont complémentaires. Nous avons choisi lŠapproche utilisant la simulation directe interactive car cŠest un environnement moins contraint permettant des conditions expérimentales, plus proche de la réalité que des conditions dŠexpérimentation en laboratoire. À notre connaissance, il nŠexiste pas de tel simulateur capable de prédire des mouvements de marche spéciĄques à des patients, et validés par des données cliniques. CŠest à cette problématique de recherche que ma thèse cherche à apporter des contributions.

Mes travaux de recherche sŠarticulent autour de la modélisation et de la simulation de mouvement, et sŠorganisent en trois volets. Le premier est la conception dŠun simulateur squelettique direct capable de générer un mouvement de marche similaire à celui dŠun sujet réel. Dans ce but, différents contrôleurs de mouvement et modèles de patient ont été étudiés. Deux mouvements dŠune même personne ont été choisis pour lŠétude, un mouvement sain et un mouvement dit pathologique. AĄn de valider le simulateur et en particulier le contrôleur et le modèle utilisé, des analyses ont été réalisées. 1 Le deuxième volet est la réalisation dŠanalyses sur nos simulateurs dans différentes conĄgurations. Elles cherchent à estimer la Ądélité de la reproduction du mouvement, la robustesse face aux perturbations extérieures et celles face aux changements dans le mouvement à reproduire, dit mouvement de référence. Ces propriétés sont importantes aĄn de choisir la conĄguration la plus adaptée à la réalisation des prédictions. Elles apportent aussi des informations permettant lŠinterprétation des différentes mesures réalisées sur les mouvements simulés et prédits.

Dans le dernier volet, lŠobjectif est la réalisation des prédictions de lŠinĆuence dŠune pathologie sur la marche dŠun sujet. LŠidée consiste alors à trouver les adaptations du mouvement de référence permettant de respecter les contraintes imposées par la pathologie. Cela nécessite des connaissances sur la pathologie aĄn de modéliser les contraintes quŠelle impose. Dans notre cas, la pathologie est induite en utilisant une orthèse qui restreint la Ćexion du genou droit.

Notre approche utilise lŠoptimisation de trajectoires aĄn de trouver les mouvements permettant de produire des simulations stables et qui respectent les contraintes de la pathologie. LŠaspect prédictif est validé en utilisant les données capturées par nos partenaires du Laboratoire de Biomécanique et de Biomatériaux (LBB) du CHU de Hanovre (Allemagne). Ceci nous permet de disposer de données cliniques sur le sujet et ces partenaires interviennent également dans la création des modèles pathologiques.

Dans ce manuscrit, le chapitre 2 est consacré à la présentation de lŠétat de lŠart. Cet état de lŠart présente des modèles utilisés dans des simulateur directs pour représenter un sujet virtuel et le mettre en mouvement. Ensuite, les méthodes de contrôle permettant de réaliser le suivi dŠun mouvement, le contrôle de lŠéquilibre, de la direction et de la vitesse de déplacement sont présentées. Une section détaille la spécialisation des contrôleurs permettant de les adapter aux modèles utilisés. EnĄn, une section présente les différentes approches existantes pour réaliser des simulations prédictives.

Le chapitre 3 est consacré à la présentation des réalisations. Le modèle et les mouvements capturés sont présentés, puis les traitements réalisés sur ces mouvements aĄn de pouvoir les utiliser dans notre environnement de simulation. LŠenvironnement de simulation est présenté ensuite, en détaillant la méthode de contrôle et dŠentraînement. Ensuite, la méthode dŠanalyse des conĄgurations de simulation est présentée. Et enĄn, la méthode utilisée pour calculer les prédictions.

Dans le chapitre 4 les résultats sur le suivi des mouvements sains et avec la pathologie induite sont présentés et discutés. Puis, les résultats des différentes prédictions réalisées sont à leur tour présentés et discutés.

Les différentes méthodes présentées dans ce manuscrit ont pour la plupart fait lŠobjet de publications dans des revues, conférences ou workshop scientiĄques nationaux et internationaux.

ÉTAT DE L'ART

AĄn de mieux comprendre les mécanismes dŠadaptation mis en jeu lorsque quŠun sujet est confronté à une situation lŠobligeant à changer son schéma de marche, nous nous intéressons a la simulations prédictive et patient spéciĄque de marches pathologiques. La simulation est dite prédictive car elle à pour objectif dŠobtenir une modélisation dynamique du mouvement résultant du changement de situation. Et, elle est qualiĄé de patient spéciĄque car elle est réalisé sur un modèle spéciĄque à un patient.

Ce chapitre détaille dans la section 2.1, la modélisation spéciĄque dŠun patient, des mouvements de ce patient et de leur dynamique dans un environnement numérique. Dans les section 2.2 et 2.3, les méthodes utilisées en simulation directe pour contrôler un modèle de patient sont abordées. Les méthodes abordées sont spéciĄque à lŠobtention de mouvements de marche. La section 2.2, décrit les méthodes générique utilisée pour contrôler les mouvements, elles sont rassemblées sous le nom de contrôleur. Alors que la section 2.3 détail comment ces contrôleurs sont rendu spéciĄque. EnĄn, la dernière section (Section 2.4) traite de deux approches utilisées pour obtenir des prédictions de mouvements de marche dans des cas pathologiques.

Modélisation de lŠhumain, cinématique et dynamique

Cette section traite de lŠétat de lŠart sur la simulation dynamique du mouvement de marche humaine. Elle est organisée en partant de la modélisation statique de lŠhumain dans la soussection 2.1.1. Ensuite, la sous-section 2.1.2 décrit des modélisations cinématiques et une dernière, la sous-section 2.1.3 sŠintéresse à des modélisations dynamiques.

Modélisation de lŠhumain

La modélisation statique de lŠêtre humain que lŠon va traiter ici est une description qui doit permettre dŠobserver les articulations des différents segments du corps entre eux. Une modélisation sous forme dŠun squelette composé de corps rigides et dŠarticulations va permettre dŠatteindre cet objectif. Chaque corps rigide peut représenter un ou plusieurs os et chaque articulation peut représenter une ou plusieurs articulations anatomiques.

Après avoir présenté les modèles en corps rigides articulés nous aborderons leurs assemblages en squelette. Dans le cadre de la simulation de mouvement de marche humaine, différents squelettes sont utilisés. Plusieurs modèles de squelette avec des niveaux de détail différents seront présentés. Le pied jouant un rôle important dans la marche, sa modélisation est traitée en détail.

Et enĄn, une modélisation adaptée à la capture de la cinématique du mouvement est abordée.

Les corps rigides

Les corps rigides sont utilisés pour décrire un élément dont les propriétés ne vont pas changer pendant la durée de lŠétude.

La position dans lŠespace dŠun corps rigide est décrite en donnant la conĄguration dŠun repère local au corps rigide par rapport à un repère de référence. Il existe deux approches pour décrire cette conĄguration : les coordonnées maximales [START_REF] Jalón | Natural coordinates for the computer analysis of multibody systems[END_REF] et les coordonnées généralisées [START_REF] Asada | A Geometrical Representation of Manipulator Dynamics and Its Application to Arm Design[END_REF]. Dans un espace en 3 dimensions, les coordonnées maximales sont les 6 paramètres utilisés pour décrire la position (3 paramètres) et lŠorientation (3 paramètres) du repère local. Pour les coordonnées généralisées, seul le nombre minimum de paramètres permettant de décrire uniquement la conĄguration est utilisé. Par exemple, si le déplacement du corps rigide est contraint à un axe, un seul paramètre sera utilisé pour décrire sa position.

Dans le cas des squelettes, les articulations entre les corps rigides imposent les contraintes.

Lors de lŠutilisation des coordonnées maximales pour décrire la conĄguration dŠun squelette, des équations supplémentaires sont nécessaires pour décrire les contraintes imposées par les articulations.

Les articulations

Dans le corps humain, les articulations contraignent les mouvements relatifs des os entre eux. Il en existe différents types et elles sont classiĄées en fonction de leurs caractéristiques morphologiques et fonctionnelles. La classiĄcation morphologique sŠeffectue selon la composition : Ąbreuse, cartilagineuse ou synoviale. La classiĄcation fonctionnelle se base sur leur mobilité : mobiles, semi-mobiles et immobiles. Pour chacune des articulations présentées, il existe un équivalent en 2D, cŠest la projection dans lŠhyperplan sagittal de lŠarticulation en 3D. Elles sont utilisées dans les modèles 2D.

Pour tous ces modèles dŠarticulation, les degrés de liberté ne permettent pas des rotations et des translations inĄnies. Des butées sont présentes, elles limitent les déplacements autour et le long des axes des articulations. Elles sont la modélisation des limites causées par lŠélongation maximal des muscles et des ligaments. Ces limites changent en fonction de la conĄguration du squelette, une modélisation précise sera alors nécessairement dynamique [START_REF] Jiang | Data-driven approach to simulating realistic human joint constraints[END_REF]. Lors de lŠutilisation des modèles dŠarticulations dans des études impliquant des mouvements de faibles amplitudes que la marche, la modélisation des limites articulaire nŠest pas nécessaire [START_REF] Kwon | Momentum-mapped inverted pendulum models for controlling dynamic human motions[END_REF].

De même, lors dŠétude utilisant une modélisation des muscles, cŠest cette dernière qui impose les limites articulaires.

Les squelettes

Le squelette humain peut être décrit comme un arbre où le bassin est la racine, les noeuds sont des corps et les arêtes des articulations. Cette modélisation permet de simpliĄer la description de la conĄguration dans lŠespace du squelette comme nous allons le voir dans cette sous-section.

Lors du mouvement de marche, le déplacement des différentes parties du corps peut être approximé à des déplacements dans le plan sagittal. Il existe donc de nombreuses modélisations sous la forme de squelette en 2 dimensions.

Modèle classique Modèle HAT

Les squelettes du pied

Le pied est constitué de nombreux os, articulations, ligaments et muscles. Sa modélisation nŠest pas aisée, car il est difficile de se rendre compte de lŠimpact des choix de modélisation. Une autre stratégie permettant une meilleure absorption des chocs consiste à augmenter le nombre de corps rigides utilisés dans la modélisation du pied. LŠutilisation de 6 corps rigides, reliés par des articulations pivots passives [START_REF] Lee | Biped control using multi-segment foot model based on the human feet[END_REF] permet par exemple de produire des phases dŠappui plus naturelles et le suivi de trajectoires est plus précis. Les corps rigides étant des boites, ils représentent assez mal lŠanatomie du pied. Un modèle utilisant des capsules [START_REF] Park | Multi-segment foot modeling for human animation[END_REF] permet dŠavoir une structure plus proche de la réalité anatomique. Il nŠest pas possible dŠévaluer les bénéĄces de ce modèle par rapport au précédent car la méthode de résolution des contacts nŠest pas adaptée. Il permet tout de même de mettre en avant que lŠutilisation de relativement petits corps rigides dans le pied est une source dŠinstabilité pour la simulation physique. Ces résultats sont corrélés avec ceux obtenus par Lee et al. [START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF] qui utilisent un modèle plus détaillé comprenant 12 articulation sphéroïdes (2 passives et 10 actives). Grâce à lŠutilisation dŠune modélisation des contacts plus adaptée ce modèle permet la simulation de mouvements de marche. Mais une augmentation de la fréquence de simulation est nécessaire pour obtenir une stabilité numérique similaire à celle de modèles plus simples.

Modèle à deux orteils

Parmis les différents niveaux de détail des modèles présentées dans cette sous section, le choix dŠun modèle semble compliqué. Il dépendra de lŠapplication dans laquelle le modèle sera utilisé. Nous allons voir dans la suite différente utilisations ces modèles.

Cinématique

La cinématique à pour objectif de décrire le plus précissement possible les mouvements des différentes segments dŠun sujet. Elle sŠintéresse au mouvement sans prendre en compte les forces exercées sur les corps. Un avatar consitué de corps rigide et dŠarticulation qui utilisé comme support.

On aborde dans cette section, les méthodes adaptées à la description de la conĄguration du squelette de lŠavatar. La description de la position relative est rapidement abordée pour laisser place à la description de lŠorientation qui peut être faite avec plusieurs méthodes.

La description de la position en coordonnée maximale sera toujours faite par un vecteur de la dimension de lŠespace simulé (typiquement 2D ou 3D). En coordonnée générale, elle sera réduite à un vecteur de dimension 2 si la position est contrainte à un plan puis à un scalaire si la position est contrainte à un axe. Les coordonnées généralisées vont donc plutôt être utilisées dans les calculs lors de la modélisation de la dynamique.

Les descriptions des orientations

La cinématique inverse

La cinématique inverse permet dŠobtenir les mouvements effectués par un sujet à partir de la position des marqueurs placés sur celui-ci. Un avatar sur lequel sont placés les mêmes marqueurs que ceux du sujet réel est nécessaire. Dans un premier temps, le placement des marqueurs sur lŠavatar est ajusté aĄn quŠils correspondent le plus Ądèlement possible au placement des marqueurs sur le sujet. Ensuite, la recherche des conĄgurations articulaires de lŠavatar minimisant la distance quadratique moyenne entre les marqueurs réels et virtuels est réalisée pour chaque pas de temps.

Il existe différents ensembles de marqueurs classiquement utilisés car la quantité et le nombre de marqueurs vont dépendre des objectifs de lŠacquisition. Les marqueurs étant placés sur le sujet, lŠaugmentation de leur nombre a un risque dŠinterférer avec le mouvement. Mais lŠaugmentation du nombre de marqueurs permet de capturer le mouvement plus Ąnement.

Le choix de lŠensemble à utiliser dépend aussi du modèle squelettique auquel il est associé. AĄn de déterminer la conĄguration spatiale de chaque corps rigide, le positionnement des marqueurs sur celui-ci est important. Pour étudier les mouvements de marche, les marqueurs sont principalement placés sur le bas du corps. Parmi les ensembles de marqueurs généralement utilisés, on peut citer le Plug in Gait (PiG) [START_REF] Davis | A gait analysis data collection and reduction technique[END_REF], le Calibrated Anatomical System Technique (CAST) [START_REF] Catani | Position and orietnation in space of bones during movement[END_REF], le Gait2392 dŠOpenSim [DAA * 07] et le Human Body Model (HBM) [VGEZ * 13].

La cinématique inverse permet dŠobtenir la conĄguration du squelette de lŠavatar à partir de la position dans lŠespace des différents marqueurs. Ces conĄgurations articulaires sont ensuite utilisées pour faire de lŠanalyse de mouvements, des études en dynamique inverse ou pour réaliser des simulations directes. Nous traitons dans la sous-section 2.1.3 des méthodes de calculs utilisées pour les réaliser des études en dynamique inverse et des simulations directes.

Dynamique

La dynamique est lŠétude de corps en mouvement sous lŠeffet dŠaction mécanique. Dans le cas du corps humain, elle permettent dŠestimer des données impossibles à obtenir expérimentalement. Par exemple, les actions mécaniques qui sŠappliquent aux articulations. La dynamique permet dŠen calculer une approximation en utilisant des données mesurées de manière non invasive. Elle est dŠun grand intérêt dans le domaine de la biomécanique. Cependant, lŠaccès à des données expérimentales nŠest pas toujours possible. Le patient peut ne pas être capable de réaliser lŠexpérimentation, les conditions que lŠon veut tester peuvent être impossibles à mettre en place ou elles sont trop nombreuses. Dans ce cas, être capable de produire des données aĄn de les analyser est important. CŠest ce que permet la simulation dynamique.

Par rapport à la cinématique, la dynamique nécessite plus dŠinformations sur le squelette à modéliser. Les informations relatives à la répartition des masses et au volume des corps sont indispensables. Pour les articulations, les informations sur les comportements dynamiques (capacité à produire un moment, friction interne) peuvent être utilisées.

LŠobjectif de cette section est de présenter deux types dŠétude, la dynamique inverse et la dynamique directe. La dynamique inverse consiste à calculer les actions mécaniques qui ont permis dŠobtenir un mouvement connu. À lŠinverse, la dynamique directe consiste à calculer le mouvement produit par des actions mécaniques connues. Un troisième type dŠétude hybride existe, où certains mouvements sont connus ainsi que certaines forces et lŠon cherche les mouvements et les forces manquantes. La dynamique directe étant utilisée pour la simulation, plus de détails seront apportés sur ce type dŠétude. La dynamique inverse étant principalement utilisée pour des applications dŠétude de mouvement, elle sera moins détaillée.

Les deux types dŠétudes nécessitent dŠétablir les équations du mouvement. Elles sont constituées à partir des équations de mouvement pour chaque corps rigide, augmentées de contraintes modélisant les articulations et les contacts. Pour les études en dynamique inverse une approche récursive est généralement adoptée. Pour les études en dynamique directe, aĄn de réaliser des simulations, une intégration numérique est réalisée. Les différentes étapes et les modèles utilisés pour les articulations sont détaillés dans la suite.

La dynamique inverse

La dynamique inverse consiste à chercher les forces et les moments appliqués sur les corps articulés τ nécessaires à la production dŠune accélération aux articulations q. Cette sectioŚn présente un algorithme qui permet de calculer la dynamique inverse pour un arbre cinématique.

CŠest lŠalgorithme récursif de Newton-Euler, il est le plus simple et le plus efficace. Il a une complexité en O(n) avec n le nombre dŠarticulations.

Le pseudo-code associé au calcul de la dynamique inverse est donné en Algorithme 1.

Algorithm 1 Calcul des forces appliquées pour chaque à articulations

Input: jtype(i), q i , qi , qi , f x i , X T (i) ▷ X T (i) = λ(i),i X λ(i) Output: τ i v 0 = 0 a 0 = -a g for i = 1 . . . N B do [X J , S i , v J , c J ] = jcalc(jtype(i), q i , qi ) i X λ(i) = X J X T (i) if λ(i) ̸ = 0 then i X 0 = i X λ(i) λ(i) X 0 end if v i = i X λ(i) v λ(i) + v J a i = i X λ(i) a λ(i) + S i qi + c J + v i × v J f i = I i a i + v i × * I i v i -i X * 0 f x i end for for i = N B . . . 1 do τ i = S T i f i ▷ La force est transposée en coordonnée généralisée if λ(i) ̸ = 0 then f λ(i) = f λ(i) + λ(i) X * i f i end if
end for λ(i) et µ(i) désignent respectivement les corps parents et enfants du corps i. f i est la force transmise dŠun corps λ(i) au corps i par lŠarticulation i. Et S i est la matrice du sous espace de mouvement de lŠarticulation i.

Cet algorithme consiste en 2 étapes (les deux boucles itératives). DŠabord le calcul des vitesses et des accélérations de chaque corps du squelette permet dŠobtenir les forces nécessaires à la production des accélérations en utilisant les propriétés des corps rigides. Puis, les forces appliquées à chaque articulation sont mises à jour en remontant les branches.

Pour la résolution du problème en présence de boucles articulaires fermées, le problème est plus complexe. En effet dans ce cas plusieurs τ permettent de produire les accélérations q. Pour nos différents cas dŠapplication, il nŠy a pas de boucle fermée car nous connaissons les forces de contact avec le sol. Pour plus de détails sur la résolution en boucle fermée, le lecteur est invité à consulter la section 8.12 de Rigid Body Dynamics Algorithms [START_REF] Featherstone | Rigid Body Dynamics Algorithms[END_REF].

La dynamique directe

La dynamique directe consiste à calculer les accélérations des différentes articulations q en connaissant les forces et moments appliquées sur les corps articulés τ . On ne peut les calculer localement pour chaque corps, mais on peut formuler les équations quŠelles doivent satisfaire.

Le calcul est alors effectué par propagation. La première boucle de la méthode est similaire à celle de la méthode récursive de Newton-Euler utilisée pour la dynamique inverse. Les variables nécessaires pour la suite (produit vitesse par lŠaccélération c i , forces de biais sur les corps rigides, Le calcul est donc effectué par propagation. La première boucle de la méthode est similaire à celle de la méthode de récursive de Newton-Euler, utilisé pour la dynamique inverse. Les variables nécessaires (produit vitesse-accélération, c i , forces de biais sur les corps rigide, p i ) pour la suite sont calculées en fonction de celle des corps parents, le calcul est donc fait en descendant. Dans une seconde boucle, on calcul lŠinertie, I A i , et les forces de bias p A i des ensembles de corps rigide articulés (Figure 2.6). Les caractéristiques dynamique dŠun ensembles dépendent de celle de ses sous-ensembles, le calcul est donc fait en remontant. EnĄn, une dernière boucle, calcul les accélérations angulaire et les accélérations des corps rigides en utilisant les résultats des calculs précédent. LŠaccélération dŠun corps dépendant de lŠarticulation de son parents, le calcul est fait en remontant.

Après avoir mis à jour par récurrence les forces de biais et les inerties implicites des corps articulés, les accélérations sont mises à jour, puis les forces transmises et enĄn les forces articulaires (voir Algorithme 2).

Algorithm 2 Calcul de a i

Input: jtype(i),

q i , qi , f x i , X T (i), τ i ▷ X T (i) = λ(i),i X λ(i) , i X * j ≡ i X j pour les forces Output: a i v 0 = 0 for i = 1 . . . N B do [X J , S i , v J , c J ] = jcalc(jtype(i), q i , qi ) i X λ(i) = X J X T (i) if λ(i) ̸ = 0 then i X 0 = i X λ(i) λ(i) X 0 end if v i = i X λ(i) v λ(i) + v J c i = c J + v i × v J
▷ c i dépend de la vitesse des parents

p A i = v i × * I i v i -i X * 0 f x i ▷ p A i dépend
U i = I A i S i D i = S T i U i u i = τ i -S T i p A i
▷ les moments appliqués sont pris en compte ici if λ(i) ̸ = 0 then Les étapes suivantes consistent à détecter les collisions et à calculer leur inĆuence sur les vitesses précédemment estimées. Les collisions sont converties en des contraintes de vitesse et de position pour le système. La résolution consiste alors à chercher les impulsions à appliquer qui permettent de satisfaire ces contraintes. La méthode utilisée pour les calculer est la résolution dŠun problème de complémentarité linéaire. Une fois les impulsions calculées pour lŠensemble du squelette, les vitesses précédemment calculées sont mises à jour en utilisant un algorithme par récurrence similaire à celui utilisé pour calculer les accélérations. EnĄn, une deuxième intégration est effectuée aĄn de calculer les positions. 20 q(t)

I a = I A i -U i D -1 i U T i p a = p A i -I a c i + U i D -1 i u i I A λ(i) = I A λ(i) -λ(i) X * i I a i X λ(i) p A λ(i) = p A λ(i) -λ(i) X * i p a end if end for a 0 = -a g for i = 1 . . . N B do a ′ = i X λ(i) a λ(i) + c i qi = D -1 i (u i -U T i a ′ ) a i = a ′ + S i qi
q(t) τ c i p i I A i p A i qi (t) LCP q(t + 1)
1 ère boucle de lŠalgo 2 2 e boucle de lŠalgo 2 3 boucle de lŠalgo 2 Algo 3 + LCP

F N = κz(1 + δ ż) (2.1)
Pour Kelvin-Voigt :

F N = κz + δ ż (2.

Personnalisation des modèles

Cette section présente les différentes méthodes utilisées pour obtenir un modèle Ądèle du sujet qui fait lŠobjet dŠétudes ou de simulation.

Nous commençons par présenter les modèles qui servent de référence pour la plupart des mises à lŠéchelle. On traitera ensuite de la mise à lŠéchelle des corps rigides, et enĄn de lŠestimation des modèles de contacts. Les modèles de référence sont ensuite utilisés pour étudier dŠautres sujets. Ils fournissent une base réaliste et peuvent être personnalisés avec une mise à lŠéchelle à partir de données plus accessibles.

Acquisition des modèles de référence

Mise à lŠéchelle des modèles de référence

La mise à lŠéchelle des modèles précédemment décrits est réalisée en utilisant des données plus accessibles. Le plus est de mettre le modèle à lŠéchelle en utilisant la taille et le poids du sujet. Mais comme la longueur des segments varie entre les sujets de même taille cette méthode nŠest pas très précise.

Avec des données de capture de mouvement il est possible de mettre à lŠéchelle la longueur

Conclusion

Dans cette section, nous avons parcouru les principaux éléments nécessaires à la réalisation des simulations en dynamique directe.

On trouve de nombreux modèles squelettiques, mais le niveau de détail est sensiblement similaire. Il y a quelques modèles qui sont beaucoup plus détaillés, mais ils sont peu utilisés pour faire de la simulation directe. Pour lŠétude de mouvements de marche, un modèle 3D avec une articulation sphéroïde pour la hanche, un pivot pour le genou et deux pivots pour les chevilles est un bon compromis entre précision et complexité. La modélisation du haut du corps peut être fait en utilisant un HAT, cela permet de simpliĄer le modèle. Les constatations sont similaires sur le squelette du pied mais il en ressort quŠil est important de modéliser au moins deux segments aĄn de pouvoir simuler le phénomène de décollage des orteils. Pour du suivi de mouvement, une modélisation plus détaillée ne sera justiĄé que si elle permet dŠaméliorer le suivi.

Mais, la précision apporté par un modèle simple est suffisante car les méthodes dŠacquisition ont une précision limitée en particulier, pour les mouvements des pieds et des orteils.

Pour le calcul de la physique, un modèle basé sur les coordonnées généralisées permet lŠutilisation de lŠalgorithme de Featherstone. CŠest un algorithme récursif avec une complexité en O(n) qui est plus efficace que les méthodes de résolution par inversion de matrices. Et, pour le calcul des contacts, les deux modélisations rigides et souples ont des coûts en calcul similaire, mais les expériences montrent que les modèles rigides obtiennent une meilleure stabilité à fréquence de simulation égale.

Simulation directe de la marche

Dans le cas dŠun squelette composé dŠarticulations actives, la simulation directe consiste à calculer des moments pour chaque articulation puis à utiliser lŠalgorithme de Featherstone pour avancer au pas de temps suivant. Nous allons dans cette partie nous intéresser aux calculs des moments appliqués à chaque articulation. Ils sont le résultat dŠune ou plusieurs fonctions de contrôle. Le terme contrôleur sera utilisé pour parler dŠune fonction de contrôle. Comme illustré dans la Ągure 2.10, les contrôleurs utilisent lŠétat courant de la simulation ainsi que diverses informations pour calculer les moments.

Données dŠentrée

Contrôleur(s)

q i (t) qi (t) τ q i (t + dt) qi (t + dt)
Pas de temps Nous allons présenter ces contrôleurs en les classant par rôle. Dans une première section, nous verrons les contrôleurs permettant de suivre un mouvement, puis dans une deuxième, ceux qui permettent de conserver lŠéquilibre, imposer une vitesse ou une direction de déplacement.

Le suivi de mouvement

Les contrôleurs réalisant la fonction de suivi de mouvement utilisent en plus de lŠétat courant de la simulation (q(t), q(t)) À chaque pas de temps, une cible est comparée à lŠétat courant de la simulation aĄn de calculer les moments à appliquer. Pour cette comparaison, des contrôleurs proportionnels dérivés (PD) ont été le plus souvent utilisés. Les contrôleurs sont proportionnels et dérivés, car ils sont basés sur la position et la vitesse.

des
aτ = k p (q d -q) -k d ( q) (2.3)
Une amélioration du contrôleur PD est le contrôleur PD stable [START_REF] Tan | Articulated Swimming Creatures[END_REF]. Il est plus stable car pour le calcul du moment une estimation de la vitesse au prochain pas de temps est faite. Le contrôle par suivi dŠun mouvement est utilisé à chaque fois quŠun mouvement de référence est disponible car il permet dŠavoir un mouvement qui converse le style du sujet. Cependant il nécessite une personnalisation qui sera abordée dans la section 2.3 et ils ne sont généralement pas suffisant pour générer lŠéquilibre, la direction ou la vitesse de déplacement.

τ = -k p (q + ∆t q -q d ) -k d ( q + q) (2.
τ i = J T CDM (i) F i (2.5)

Contrôle de lŠéquilibre, de la direction et de la vitesse

Dans cette section nous présentons les méthodes de contrôle dŠéquilibre, de vitesse, de direction, de longueur des pas et de marche sur des empreintes. Ils sont séparés en deux catégories, les méthodes implicites et explicites. Les méthodes implicites calculent directement le moment à appliquer à partir de lŠétat de la simulation et des consignes. Alors que les méthodes explicites vont simuler un modèle aĄn dŠétablir explicitement une stratégie permettant de respecter les consignes.

Contrôle implicite

Les méthodes implicites sont principalement basées sur des boucles de rétroaction. Elles agissent sur différentes parties du squelette et peuvent permettre de contrôler lŠéquilibre, la vitesse de déplacement, la direction de déplacement.

Pour le contrôle de lŠéquilibre, une méthode consiste à modiĄer les cibles pour la hanche en phase de vol [START_REF] Yin | SIMBICON : Simple biped locomotion control[END_REF]. La formule suivante est proposée :

θ d = θ d0 + c d d -c v v (2.
F v = k v (V -V ),

Combinaison de contrôleurs

Conclusion

Dans cette section, nous avons vu divers contrôleurs permettant de produire un mouvement ressemblant à un mouvement de référence, de maintenir lŠéquilibre, de suivre une direction de déplacement, de poser les pieds à des endroits précis et de se déplacer à une vitesse déĄnie. Nous allons voir dans la section suivantes, les méthodes utilisées aĄn de spécialiser le contrôleur pour un sujet.

Spécialisation des contrôleurs

Les principales méthodes de contrôle ont été présentées dans la section 2.2. On note la présence de nombreux paramètres dans ces méthodes de contrôle. Ces paramètres peuvent être modiĄés pour obtenir des comportements spéciĄque. Dans cette section, nous listons des la sous-section 2.3.1 ces différents paramètres puis dans la sous-section 2.3.2, nous présentons les différentes fonctions de coût utilisé pour évaluer le comportement dŠun contrôleur. Et enĄn, dans la sous-section 2.3.3, nous présentons différentes méthodes utilisées pour trouver les valeurs optimales de ces paramètres.

Les paramètres

Nous avons choisi de rassembler les paramètres en trois groupes : les coefficients des contrôleurs proportionnels ou proportionnels-dérivés, les paramètres des trajectoires de référence et les poids des neurones.

Les coefficients des contrôleurs PD

Les poids des réseaux de neurones artiĄciels

Les réseaux de neurones sont composés de multiples neurones qui possèdent chacun un poids qui doit être optimisé pour que lŠensemble du réseau produise le comportement désiré. Ils peuvent être utilisés pour calculer la prochaine cible en utilisant un réseau de neurones convolutif [START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF] ou un auto-encodeur variationnel [START_REF] Ling | Character controllers using motion VAEs[END_REF]. DŠautres calculent les mouvements sur les deux prochains cycles de marche [START_REF] Kwon | Fast and Ćexible multilegged locomotion using learned centroidal dynamics[END_REF]. Ils peuvent être aussi utilisés pour décrire les limites des conĄgurations articulaires [START_REF] Jiang | Synthesis of biologically realistic human motion using joint torque actuation[END_REF], pour calculer les moments pour lŠensemble des articulations pour le prochain pas de temps [START_REF] Xie | ALL-STEPS : Curriculum-driven learning of stepping stone skills[END_REF] ou pour calculer les coefficients des contrôleurs PD pour le prochain pas de temps [CMM * 18]. En fonction de la complexité de la tâche à accomplir, lŠorganisation et le nombre de neurones varient ainsi que les méthodes utilisées pour calculer les récompenses et réaliser lŠoptimisation.

Dans la section suivante, nous présentons les différentes fonctions de coût et les pénalités utilisées dans les différents processus dŠoptimisation.

Fonctions de coût et pénalités

Les fonctions de coût permettent de spéciĄer le comportement attendu par le contrôleur.

Elles permettent, par exemple, de récompenser le maintien de lŠéquilibre ou la ressemblance avec un mouvement de référence. Les pénalités sont utilisées pour spéciĄer les comportements à éviter, par exemple la chute.

Ressemblance à un mouvement de référence

Une

Approches dŠoptimisation

Cette section présente les approches utilisées pour trouver les paramètres permettant de maximiser les récompenses et de minimiser les pénalisations. Le choix de lŠapproche dépend des paramètres qui doivent être optimisés. LŠinitialisation et la régularisation ont aussi un rôle important dans la réussite de lŠoptimisation. La régularisation permet dŠéviter le surentraînement, cŠest à dire que le résultat de lŠoptimisation soit trop spéciĄque au données rencontré lors de lŠentrainement.

Optimisation des paramètres

La

Conclusion

Dans cette section, nous avons vu les différents paramètres des contrôleurs qui peuvent être optimisés. Leurs optimisations permettent dŠobtenir des comportements spéciĄques lors des simulations. Nous avons vu comment évaluer à quel point une simulation respecte un comportement et comment lŠoptimisation peut être réalisée.

Simulation prédictive de mouvement

Prédictions implicites

Les premiers travaux sur la simulation prédictive ont été réalisés avec une approche implicite.

La plupart des travaux résolvent un problème de contrôle optimal avec une fonction de coût basée sur la minimisation de lŠénergie utilisée pour se déplacer. La résolution est donc effectuée seulement sur un demi-cycle de marche. À notre connaissance, aucune résolution nŠa été effectuée sur plusieurs cycles de marche.

Le principal inconvénient est lŠimpossibilité de produire des simulations interactives. De plus, pour chaque changement dans les contraintes, le problème doit de nouveau être résolu. Cependant, pour les futures résolutions, un résultat peut être obtenu plus rapidement en prenant pour point de départ de lŠoptimisation une solution obtenue pour un problème précédent similaire.

Ces méthodes nécessitent le choix et lŠajustement des termes de la fonction de coût pour produire des prédictions réalistes. Ce processus est relativement complexe, mais les méthodes explicites souffrent aussi de cet inconvénient.

Prédiction explicite

Dans le domaine des approches explicites, le concept de prédiction a été introduit que plus tardivement. Cependant, de nombreux travaux ont cherché à produire des mouvements visiblement puis physiquement réalistes dès les années 80. Dans ce domaine, nous considérons les contributions de tous les travaux qui ont eu pour objectif de produire un mouvement sans essayer uniquement de reproduire un mouvement de référence.

LŠapproche explicite consiste à réaliser une simulation par pas de temps.

Conclusion

Le principal inconvénient de la prédiction utilisant la simulation directe est le temps nécessaire pour lŠentraînement.

Le problème prend plus de temps à être résolu, mais la solution résultante est robuste aux changements apportés au mouvement de référence [START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF]. Ils peuvent facilement produire plusieurs cycles de marche successifs mais non-identiques, et des allures réalistes sur un terrain en pente [START_REF] Kwon | Fast and Ćexible multilegged locomotion using learned centroidal dynamics[END_REF].

Chapitre 3

CONTRIBUTIONS

Introduction

Dans lŠétat de lŠart, nous avons vu différentes modélisations physiques de lŠhumain, une méthode de simulation directe, différentes méthodes de contrôle permettant de produire des mouvements de marche et deux méthodes permettant de réaliser des simulations prédictives.

Nos contributions sŠappuient sur ces connaissances.

Nous proposons un simulateur avancé, basé sur le calcul des mouvements les plus optimaux,

Acquisition des données

Cette section a pour but de présenter le processus permettant dŠobtenir les trajectoires

LŠacquistion des mouvements

Le modèle squelettique

La cinématique inverse

Préparation automatique des mouvements

Le but de cette étape est dŠadapter les mouvements issus de la cinématique inverse aĄn de pouvoir les utiliser dans notre environnement de simulation. En effet, le fonctionnement de notre environnement de simulation impose certaines contraintes. Ces contraintes sont dues aux calculs de la consigne utilisé pour contrôler lŠavatar. Comme la consigne est la somme du mouvement de référence et de la sortie du réseau de neurone, si le mouvement de référence est bruité et/ou discontinue cŠest la sortie du réseau de neurones qui devra compenser. Le réseau sera donc plus difficile à entraîner. Nous proposons donc une méthode permettant dŠavoir une description des mouvements qui soit C 2 continue en tout point. Pour cela, nous allons dŠabord extraire un cycle de marche des données de cinématique inverse (section 3.3.1) puis chercher à approximer chaque trajectoire articulaire de ce cycle par une fonction paramétrique C 2 continue en tout point (section 3.3.2). Ainsi, nous obtenons des mouvements non bruités, périodiques et dérivables.

Isolation dŠun cycle de marche

Cette préparation automatique consiste premièrement à isoler un cycle de marche. En effet, le mouvement acquis est un ensemble de plusieurs cycles de marche. AĄn dŠy parvenir, nous avons choisi dŠutiliser les événements de contact entre le pied et le sol. Les données de plateforme de force sont les plus adaptées pour extraire les évènements de début et de Ąn des phases de contact. Cependant, comme nous ne disposons que des données pour deux appuis successifs, il est possible dŠisoler seulement un demi-cycle de marche avec cette méthode. Nous avons donc choisi dŠutiliser les positions de marqueurs (RTOE, RANK, LTOE, LANK, voir Figure 3.3) pour estimer les événements de contacts. Cette estimation est faite en utilisant une méthode basée sur lŠétude de la vitesse dans le plan sagittal des marqueurs placés sur le pied [START_REF] Ghoussayni | Assessment and validation of a simple automated method for the detection of gait events and intervals[END_REF]. Cette méthode permet de détecter les événements sur un mouvement de marche automatiquement quelque soit le sujet [START_REF] Bruening | Automated event detection algorithms in pathological gait[END_REF].

Elle consiste à réaliser un Ąltrage temporel des positions 3D des marqueurs. Le Ąltrage est réalisé avec un Ąltre de Butterworth du second ordre, discret avec une fréquence de coupure de 10 Hz. Le Ąltre est appliqué dans les deux directions aĄn de ne pas créer de décalage (voir Figure 3.6a). Ensuite, la vitesse des marqueurs dans le plan sagittal est calculée pour déterminer les événements (voir Figure 3.6b).

LŠévolution de la vitesse dans le plan sagittal est étudiée pour chaque marqueur. On liste les maximums locaux puis on retire ceux qui sont en dessous de 30% du maximum global (voir Une fois les événements détectés, on extrait un cycle un utilisant deux événements de contact successif pour le talon dŠun même pied. Si plusieurs cycles complets sont détectés dans le mouvement, on choisi celui qui a la position la plus centrale, car la précision de la capture de mouvement est meilleure au milieu du volume dŠacquisition.

Obtention dŠun mouvement périodique

r eqm = 1 N N -1 i=0 (d[i] -N U RBS d ( i N )) 2
N U RBS(t) = j i=1 ω i P i N i,n (t) j i=1 ω i N i,n (t) avec N i,n (t) = f i,n (t)N i,n-1 + g i+1,n (t)N i+1,n-1 f i,n (t) = t -k i k i+n -k i g i,n (t) = 1 -f i,n (t) = k i -t k i+n -k i
Nous avons choisi de réaliser la minimisation en utilisant la méthode dŠoptimisation du CMA-ES [START_REF] Hansen | The CMA Evolution Strategy : A Comparing Review[END_REF] car cette méthode est performante pour un nombre de variables faibles (moins de 100). Cela nous permet dŠutiliser jusquŠà 30 points de contrôle.

La fonction de coût que nous avons utilisé nŠest pas composée uniquement de r eqm . Nous avons ajouté plusieurs termes aĄn dŠaider la convergence de lŠoptimisation : Ů Une pénalisation de la distance minimale d m entre deux points :

r min_dist = sig 15,-1 (1 - 2 * d m d h
) avec d h la valeur maximale de la distance minimale Ů Une récompense pour la répartition moyenne des poids w moy :

r moy_w = exp(-0, 0005(w moy -w cible ) 2 ) avec w cible la valeur cible pour la moyenne Ů Une pénalisation du poids minimum w min :

r min_w = sig 20,0 (w min )
Ces termes supplémentaires dans la fonction de coût servent à éviter que deux points de contrôle soit trop proches car cela causerait une oscillation de grande amplitude dans la courbe.

Et que le poids soit négatif car cela inverserait lŠordonnée du point de contrôle.

On initialise les abscisses aléatoirement entre [0, 1[, les ordonnées à 0 et les poids à 100.

Et pour la position horizontale du bassin, le coefficient de la fonction affine est initialisée à la

valeur d[N -1] -d[0],

Contrôle pour le suivi dŠun mouvement de référence

La première fonctionnalité de notre environnement de simulation est de produire un mouvement physique et contrôlé qui suit le mieux possible un mouvement de référence tout en étant capable de conserver lŠéquilibre sur plusieurs cycles de marche. Dans cette section, nous présentons lŠarchitecture du contrôleur qui est majoritairement inspirée des travaux de Lee et al. [START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF]. Puis, nous allons détailler dans les différents composants et les modiĄcations que nous avons apportées. Ces modiĄcations inĆuencent la génération des cibles données aux contrôleurs PD stables et lŠentraînement du réseau de neurones.

Architecture du contrôleur

Le contrôleur est composé de cinq éléments (voir Figure 3.10).

LŠélément (1) permet dŠobtenir une pose de référence à partir des trajectoires articulaires de référence. Cet élément est utilisé lors de lŠinitialisation de la simulation, puis à chaque pas de temps de contrôle aĄn dŠobtenir la prochaine pose de référence.

LŠélément (2) permet de calculer une pose cible à partir de lŠétat courant de la simulation et de la pose de référence. Cet élément nécessite un entraînement hors-ligne. Cette cible est calculée à une fréquence inférieure à la fréquence de simulation (600 Hz), que lŠon nomme la fréquence de contrôle (30 Hz).

LŠélément (3) a pour but de calculer les moments à appliquer à chaque degré de liberté contrôlé. Ces moments sont calculés par des contrôleurs PD stables à partir de la pose cible et de lŠétat courant de la simulation. Ces moments sont calculés à la fréquence de simulation.

LŠélément (4) permet lŠintégration temporelle de lŠétat courant de la simulation, la sauvegarde de mesures sur lŠétat courant et lŠapplication de perturbations externes.

LŠélément (5) est utilisé pour réaliser lŠoptimisation hors-ligne des poids du réseau de neurones utilisé dans lŠélément (2). Cet élément utilise le principe de proximal policy optimisation dont la fonction de coût sera détaillée dans la section 3.4.6.

Calcul de la pose cible (2)

La pose cible est calculée en additionnant la pose de référence que lŠon souhaite obtenir après la simulation et des décalages. Ces décalages ont pour but de produire une pose cible qui permet dŠobtenir après simulation un état proche de la pose de référence.

Calcul des moments (3)

LŠétape de calcul des moments est indispensable à la mise en mouvement. Les moments sont calculés avec la méthode du contrôle PD stable [START_REF] Tan | Stable proportional-derivative controllers[END_REF]. Un contrôleur est placé sur chaque degré de liberté contrôlable. Ils sont tous indépendants les uns des autres. Pour chaque contrôleur, la formule utilisée pour calculer le moment à appliquer sur le degré de liberté est la suivante :

τ = -K p (q + q∆t -q) -K d ( q -q∆t)
La valeur de q est estimée en utilisant la formule suivante :

q = M -1 (-C + q + q∆t + q + F ext )
Avec M la matrice de masse, C les forces de Coriolis et centrifuge et F ext les forces extérieures.

Nombre de frames Orientation (rad)

Nombre de frames Moment (Nm)

Simulation directe (4)

Pour lŠétape de simulation directe, le but est de réaliser lŠintégration temporelle du système avec le moins dŠerreurs possibles et en utilisant un temps de calcul raisonnable. Au cours du projet, trois moteurs physiques différents ont été étudiés : Open Dynamique Engine (ODE) [Smi],

SimBody [START_REF] Sherman | Simbody : Multibody dynamics for biomedical research[END_REF] Nous proĄtons de cette étape de simulation directe pour sauvegarder des données sur la simulation qui seront utilisées par le composant réalisant le calcul de mouvement prédit (section 3.6). CŠest aussi lŠétape où nous pouvons appliquer des perturbations sur notre personnage virtuel. Ces perturbations sont utilisées lors de lŠentraînement (section 3.4.6) pour rendre le simulateur plus robuste. Elles sont appliquées sur le centre de masse dans une direction aléatoire selon le schéma suivant : 100 N pendant 0.2 s puis 1 s de pause. Elles correspondent aux tests de robustesse proposés par Geijtenbeek et al. [START_REF] Geijtenbeek | Simple datadriven control for simulated bipeds[END_REF]. Leur utilisation est détaillée dans la section 3.5.7.

Proximal policy optimisation (5)

LŠentraînement par proximal policy optimisation (PPO) consiste à initialiser lŠenvironnement dans différents états initiaux. Simuler lŠévolution des différents environnements en collectant les décisions prises par lŠagent. Une fois que suffisamment de donnés ont été collectés, lŠagent est mis à jour. Ces deux étapes sont répétées jusquŠà la Ąn de lŠentraînement. Cette section présente succinctement : lŠinitialisation des environnements de simulation, les données collectées lors de chaque transition et la méthode de mise à jour de lŠagent.

LŠinitialisation des différents environnements de simulation est faite de manière aléatoire.

Initialisation

Actions de lŠagent

Fin de la collecte ?

Mise à jour de lŠagent

L 2 (∆q) = i (q courant (i) -q cible (i)) 2

63

Ů La différence de position des effecteurs dans le repère global : r ee = exp(K ee * L 2 (∆ee)).

Les effecteurs sont le corps situé entre le tibia et le pied, et le HAT. Et la formule utilisée est la suivante :

L 2 (∆ee) = i ((COM courant (i) -COM courant ) -(COM cible (i) -COM cible )) 2
La récompense r est Ąnalement calculée par r = r ee * r q .

La phase de mise à jour de lŠagent est réalisée de manière classique pour la PPO. Nous avons intégré à cet entraînement le suivi dŠun programme avec des tâches de plus en plus difficiles en suivant le principe du curriculum learning [START_REF] Bengio | Curriculum learning[END_REF]. Après un premier entraînement qui abouti à la production dŠun mouvement qui suit le mouvement de référence, nous réalisons un deuxième apprentissage mais en ajoutant des perturbations lors de la simulation.

ConĄguration du simulateur

Le comportement du simulateur dépendent directement de la conĄguration du réseau de neurones utilisé pour calculer les poses cibles. Des conĄgurations différentes du réseau de neurones peuvent être obtenues en changeant les conditions dŠentraînement (PPO). Nous présentons dans cette section les différentes conditions dŠentraînement que nous avons déĄni.

AĄn dŠavoir différentes conditions dŠentraînement nous avons choisi dŠexploiter la possibilité dŠutiliser différents mouvements de référence et de pouvoir appliquer des perturbations sur lŠava-

Analyse des conĄgurations de simulation

Cette section présente les travaux réalisés aĄn dŠévaluer les caractéristiques des conĄgurations obtenues après lŠentraînement décrit ci-dessus. Nous présentons ici la méthodologie employée aĄn dŠétablir différentes métriques sur les conĄgurations :

1. LŠexactitude de la méthode de contrôle. Elle mesure la capacité dŠune conĄguration à produire un mouvement proche du mouvement de référence, la méthode utilisée est détaillée dans la section 3.5.3.

2. La reproductibilité de la méthode dŠentraînement. Elle vise à évaluer si deux entraînements réalisés avec le même protocole donnent des résultats similaires, la méthode utilisée est détaillée dans la section 3.5.4.

3. La spéciĄcité du contrôleur. Elle mesure la capacité dŠune conĄguration à produire des mouvements stables sans ré-entraînement lors de la modiĄcation des trajectoires de référence, la méthode utilisée est détaillée dans la section 3.5.5.

4. La robustesse du contrôleur. Elle mesure la capacité dŠune conĄguration à produire des mouvements stables même en cas de perturbations extérieures, la méthode utilisée est détaillée dans la section 3.5.7.

5. La sensibilité du contrôleur. Elle vise à mesurer lŠeffet dŠune modiĄcation dŠune trajectoire de référence sur le mouvement simulé, la méthode utilisée est détaillée dans la section 3.5.6.

Les objectifs de lŠanalyse du simulateur sont de mieux interpréter les mouvements produits par le simulateur et de choisir la conĄguration la plus adaptée à la réalisation de prédictions.

Sélection des mesures

Réalisation des mesures

La méthode de détection des événements est la même que pour lŠisolation dŠun cycle de marche depuis les données de capture de mouvement (section 3. On obtient les valeurs suivantes :

Ů R1 = 113.9 • Ů R1d = 96.4 • Ů R1p = 103.5 • Ů R7 = 133.1 • Ů R7d = 120.2 • Ů R7dp = 125.3 •
Ces résultats ne montrent pas de différences signiĄcatives entre les réseaux. DŠaprès la somme des différences, il semble que lŠentraînement sur moins de mouvements et lŠutilisation des mouvements déphasés réduise la différence entre les mouvements simulés et la référence.

Des différences sont plus fréquemment relevées sur la Ćexion de la hanche au moment du contact, la dorsiĆexion maximale du pied en phase de vol, la dorsiĆexion moyenne du pied en phase dŠappui et la Ćexion du genou droit au moment du contact. Ces différences peuvent sŠexpliquer par la modélisation simpliĄée du pied.

Il ne ressort Ąnalement pas de préférence particulière pour une conĄguration dŠentraînement.

Mais la conĄguration R7 semble être la moins adaptée à nos objectifs.

Évaluation de la reproductibilité de la PPO

Le but de cette évaluation est de quantiĄer la dispersion des mesures causée par le processus dŠentraînement. On cherche à savoir si deux entraînements réalisés avec les mêmes conditions expérimentales aboutissent à deux réseaux qui produisent des simulations similaires. Pour cela on calcule lŠécart entre les moyennes des mesures obtenues pour deux conĄgurations similaires, mais issues de deux entraînements distincts. On réalise ces mesures pour les réseaux R1 et R7d.

La

Évaluation de la spéciĄcité à un mouvement

Cette évaluation a pour but de quantiĄer la capacité dŠun réseau à produire des mouvements stables sans ré-entraînement en cas de changement dans les trajectoires de référence. Cette capacité est recherchée car dans le cadre du projet, on souhaite que le réseau Pour cette évaluation, nous avons employé deux approches.

La première consistait à appliquer des modiĄcations sur la trajectoire de référence du ge- Les résultats obtenus sont présentés dans la table 3.7. AĄn dŠinterpréter la limite inférieure de RK,il faut rappeler que la Ćexion maximale moyenne du genou est dŠenviron 70 • . La modiĄcation

RK 53.5 • - D1 -60 • 0 • D2 0 • 38 • D3 -15 • 12.9 • D4 0 • 36.5 •
1 5 s 1 1 1 1 1 1 1 10 s 1 1 1 1 1 1 1 15 s 1 1 1 1 1 1
Table 3.8 Ű Ratio de réussite des différentes conĄgurations un mouvement de référence est utilisé.

Évaluation de la sensibilité aux modiĄcations des mouvements

Dans le but dŠétablir un lien entre les modiĄcations appliquées sur le mouvement de référence et les changements observés dans les mouvements produits par le simulateur, nous avons proposé une analyse de sensibilité. Table 3.9 Ű Rang de sensibilité Cette table donne pour chaque valeur dŠentrée les 5 mesures les plus inĆuencées. Lorsque deux valeurs sont données, la première fait référence au côté gauche et la seconde au côté droit.

Évaluation de la robustesse aux perturbations

EnĄn, aĄn dŠévaluer la robustesse des différentes conĄgurations nous avons réaliser un ensemble de simulations pendant lequelles nous avons appliqué des perturbations en suivant le protocole proposé par Geijtenbeek et al. [START_REF] Geijtenbeek | Simple datadriven control for simulated bipeds[END_REF]. Il consiste à appliquer une force dŠune intensité T sur le centre de masse dans une direction horizontale aléatoire, selon le schéma suivant :

100 N pendant 0.2 seconde puis 1 seconde de pause.

Ce protocole a été appliqué dans deux situations différentes :

Ů La simulation avec comme mouvement dŠentrée les 7 mouvements de référence et leurs versions déphasées (7d).

Ů La simulation avec le seul mouvement que les conĄgurations R1, R1d, R1p ont rencontré. Les résultats obtenus (voir Table 3.10) permettent de comparer la robustesse du simulateur avec les différents réseaux de neurones. Comme pour la spéciĄcité, on considère 3 ratios, les simulations qui durent au moins 5 s, 10 s et 15 s. Ce choix permet de se faire une idée de la robustesse sur des simulations qui durent plus ou moins longtemps. Contrairement aux résultats sur la spéciĄcité, il y a une nette différence entre le taux de succès à 10 s et à 15 s. Cela conĄrme lŠutilité de réaliser des simulations dŠau moins 15 s pour juger de la stabilité.

R1

Les résultats montrent que lŠentraînement en présence de perturbations permet effectivement de rendre le simulateur plus robuste aux perturbations. Ces résultats nous montrent aussi quŠun entraînement réalisé sur plus de mouvements de référence rend le réseau moins robuste aux perturbations.

Conclusion

Les résultats des analyses réalisées sur les mouvements produits en utilisant les différents réseaux de neurones nous permettent de choisir un contrôleur qui est le plus adapté à la réalisation de prédictions. AĄn de pouvoir réaliser des prédictions nous avons cherché parmi les différents réseaux celui qui était le plus à même de produire des simulations stables quand les trajectoires de référence sont modiĄées. Ce choix a été guidé par le fait que la méthode que nous utilisons pour réaliser les prédictions est basée sur la déformation de trajectoires. Cette méthode sera présentée en détails dans la section 3.6.

Nous avons choisi le réseau R7dp qui a été obtenu en réalisant un premier entraînement sur 7 mouvements de référence et leurs versions déphasées dŠun demi-cycle de marche, puis un ré-entraînement avec des perturbations. Ce réseau permet la plus grande stabilité sur lŠensemble des mouvements de référence avec et sans perturbation. De plus, il présente une précision et une exactitude similaires à celles des autres réseaux étudiés.

Calcul de mouvement prédit

Dans cette section pour présentons la troisième utilisation possible de notre environnement de simulation dont lŠarchitecture est rappelée dans la Ągure 3.17. LŠobjectif est de produire des mouvements prédits. Un mouvement prédit est une proposition de mouvement que le sujet pourrait effectuer pour sŠadapter aux changements qui lui sont imposés. Sa recherche est un problème dŠoptimisation de trajectoires, car il faut trouver des nouvelles trajectoires de référence permettant de produire un mouvement respectant les contraintes. Les contraintes représentent le changement imposé à lŠavatar et des termes de régularisation.

Notre contribution consiste à réaliser lŠoptimisation en simulant les mouvements obtenus après modiĄcation de la trajectoire de référence. Cela permet de sŠassurer de la faisabilité du mouvement et de pouvoir calculer la récompense utilisée dans le processus dŠoptimisation directement avec des données mesurées sur le mouvement simulé. Mais le nombre de déformations qui peuvent être effectuées sur le mouvement de référence est très important. En effet, le mouvement de référence ne doit pas être nécessairement un mouvement physiquement valide pour permettre de produire un mouvement simulé stable. Le nombre de simulations à réaliser est donc très élevé, nous proposons donc également une approche pour réduire le nombre de simulations.

Réduction de lŠespace de recherche

LŠespace de recherche est constitué de toutes les modiĄcations que lŠon peut apporter au mouvement de référence, en conservant la continuité C 2 , ainsi que la caractéristique cyclique des trajectoires articulaires.

Le choix dŠutiliser la description utilisant des NURBS non-rationnelles et périodiques a été grandement motivé par le souhait de pouvoir modiĄer des paramètres en étant sûr que les propriétés de continuité et la caractéristique cyclique soit conservées.

La première méthode utilisée pour réduire lŠespace de recherche a donc été de réaliser des approximations des trajectoires avec un nombre variable de points de contrôle, aĄn dŠen déterminer la quantité optimale cŠest-à-dire minimale tout en gardant une trajectoire dŠallure similaire. Nous considérons que deux trajectoires sont similaires de manière subjective, et les critères utilisés pour sélectionner le nombre de points de contrôle à utiliser sont :

Ů La valeur de lŠerreur quadratique moyenne ;

Ů Le nombre de points de contrôle ;

Ů LŠéloignement des points de contrôle par rapport à lŠordonnée ;

Ů Le respect de lŠallure générale de la trajectoire.

Cette étape a permis de réduire le nombre total de points de contrôle utilisés pour décrire les trajectoires des articulations.

Dans un deuxièmement temps, notre avons choisi de réduire le nombre de trajectoires articulaires à optimiser. Pour cela, nous nous sommes basé sur lŠétat de lŠart des connaissances biomécaniques sur la contrainte que nous avons choisi dŠimposer à lŠavatar. Par exemple, dans [START_REF] Kerrigan | Hip hiking and circumduction : Quantitative deĄnitions[END_REF] est présenté une comparaison de mesures effectuées entre des patients présentant une démarche raide du genou et des patients témoins. [IKK * 12] présente également des comparaisons de mesures, mais en utilisant des courbes de Lissajous. Dans [START_REF] Lewek | The inĆuence of mechanically and physiologically imposed stiff-knee gait patterns on the energy cost of walking[END_REF] sont présentées encore des comparaisons de mesures mais réalisées sur des sujets sains pour lesquels la pathologie a été induite. Toutes rapportent des schémas dŠélévation et de circumduction de hanches pendant la phase de vol. LŠélévation de la hanche peut être déĄnie comme "une augmentation de lŠabduction de la hanche sur le côté non affecté pendant lŠappui, avec une élévation du bassin du côté affecté pendant la phase de vol" [START_REF] Kerrigan | Hip hiking and circumduction : Quantitative deĄnitions[END_REF]. Et la circumduction peut être déĄnie comme "une abduction de la hanche plus importante du côté du membre affecté pendant le mouvement de

Déformation des trajectoires

Dans cette section nous présentons les différents choix possibles pour déformer les trajectoires tout en conservant les propriétés de continuité C 2 et la caractéristique périodique. Nous avons commencé par exclure la possibilité de changer lŠabscisse les points de contrôle.En effet, lorsque deux points de contrôle ont des abscisses très proches une oscillation de grande amplitude apparaît dans la trajectoire. Nous avons alors observé lŠinĆuence des modiĄcations de lŠordonnée et du poids des points de contrôle. La Ągure ?? présente une comparaison des déformations obtenues en faisant varier dans un cas lŠordonnée y des points de contrôle (courbes bleues) et dans lŠautre cas leur poids w (courbes vertes). La même modiĄcation nŠa pas été appliquée simultanément sur tous les points de contrôle car cela aurait eu très peu dŠinĆuence. En effet, appliquer le même décalage sur les ordonnées de tous les points de contrôle revient à ajouter un décalage à la trajectoire. Et multiplier simultanément tous les poids nŠa aucun effet car cŠest le ratio entre les points qui inĆuence lŠallure de la courbe. Nous avons tracé les courbes correspondantes à lŠapplication dŠune modiĄcation au point dŠabscisse 0 < ϕ < 1. Les modiĄcations sont appliquées sur tous les points de contrôle (j) en utilisant la première formule pour lŠordonnée et

y new (j) = y old (j) + y of f set * (1 -2 * ♣x(j) -ϕ♣) 30 w new (j) = w old (j) * (w + (1 -w) * (1 -2 * ♣x(j) -ϕ♣) 3 )
La modiĄcation du poids seul a été écartée car lŠamplitude des modiĄcations est limitée par lŠordonnée des points de contrôle. AĄn de limiter le nombre de variables à optimiser nous avons choisi dŠoptimiser uniquement les ordonnées.

Optimisation des trajectoires de référence

Dans cette section, nous allons présenter la méthode utilisée pour réaliser lŠoptimisation.

LŠalgorithme dŠoptimisation que nous avons choisi dŠutiliser est celle du CMA-ES. Le principe On utilisant un mouvement de référence, la conĄguration la moins spéciĄque et lŠalgorithme du CMA-ES, nous allons chercher progressivement par optimisation de nouvelles trajectoires de référence optimisées qui permettent de produire un mouvement stable plus proche de lŠobjectif.

Ainsi, notre modèle ne diverge pas et reste capable de produire des mouvements stables tout au long de lŠoptimisation. CŠest important car si lŠon se retrouve dans une conĄguration qui ne permet plus de produire des mouvements stables, il est impossible de revenir en arrière avec cet algorithme.

Les nouvelles trajectoires de référence sont calculées en appliquant des décalages sur lŠordonnée de certains points de contrôle. Ces décalages et celui sur la durée du cycle de marche sont les valeurs dŠentrée de notre processus dŠoptimisation. Les récompenses sont calculées à partir de plusieurs objectifs. En plus de lŠobjectif permettant de mesurer lŠéloignement avec la condition altérée, il y a plusieurs objectifs qui servent de régularisation. On mesure la quantité de collisions entre les deux jambes, le changement dans la direction de marche, la chute et la différence entre les cycles consécutifs de marche. Toutes ces mesures sont réalisées à la Ąn de la simulation, et notre algorithme de détection automatique des événements est utilisé pour extraire les cycles. La formule générale de la récompense est la suivante : r = w obj * r obj + w col * r col + w dir * r dir + w f all * r f all + w sim * r sim Les formules suivantes détaillent le calcul des différents termes :

r obj = 1 -exp(-5 * dif f 2 )
dif f est la différence angulaire (en radians) entre la contrainte imposée et la contrainte respectée par la simulation. r col = sig 0.5,10 (col ratio ) col ratio est le ratio de pas de temps de simulation pendant lesquels il y a des collisions entre les deux jambes. 0 correspond à aucune collision et 1 à des collisions à chaque pas de temps. r dir = sig 0.5,20 (3 * ∆dir) ∆dir est la différence angulaire (en radians) entre la direction de marche souhaitée et moyenne des directions de marche de chaque cycle simulé. r f all = sig 0.5,10 (f all ratio ) f all ratio est le ratio de pas de temps de simulation manquant pour arriver à la Ąn de lŠhorizon de simulation. 0 correspond à aucun pas de temps manquant et 1 à une chute dès le premier pas de temps. Les conditions dŠarrêt utilisées sont celles par défaut (cf. documentation du module Python cma).Nous avons seulement modiĄé la tolérance sur la valeur de la récompense, car il est impossible dŠatteindre la valeur par défaut de 10 -11 avec notre fonction de coût. Pour déĄnir une valeur plus cohérente nous avons mesuré la récompense de similarité, de direction et de collisions sur un mouvement de référence. Et nous avons calculé la récompense minimale associée à une différence de 1 • dans le respect de lŠobjectif.

Chapitre 4

RÉSULTATS

Dans ce chapitre, nous allons présenter les résultats obtenus en utilisant les méthodes présentées dans le chapitre 3. LŠobjectif de la section 4.1 est de présenter et dŠanalyser les résultats obtenus pour le suivi de mouvements sains et pathologiques avec les différents réseaux de neurones entraînés. Dans la section 4.2 les résultats des prédictions obtenues avec différentes conĄgurations sont présentés et analysés.

Dans les différentes tables de ce chapitre les valeurs sur-lignées en bleu mettent en avant une dissymétrie. Les valeurs sur-lignées en orange mettent en avant un différence supérieure aux valeurs établies dans la section 3.5.3.

Résultats du suivi de mouvement

Dans cette section nous allons présenter la réalisation des différents entraînements en détaillant le coût en temps de calcul et lŠévolution au cours du temps des récompenses (section 4.1.1). Ensuite, dans les sections 4.1.3 et 4.1.4, les mouvements obtenus en utilisant les différents réseaux de neurones sont présentés. La section 4.1.3 présente sur le suivi dŠun mouvement sain avec différents réseaux et la section 4.1.4 présente le suivi dŠun mouvement pathologique. La section 4.1.2 présentera le mouvement optimal utilisé pour la réalisation de toutes les simulations avec la condition c0.

Entraînements

Le déroulement des différents entraînements est détaillé dans cette section. Au total, 9 entraînements ont été réalisés pour obtenir tous les résultats présentés dans ce document. Ils ont été réalisés en utilisant les protocoles détaillés dans la section 3. Sachant que lors des premiers cycles de lŠentraînement le réseau nŠest pas capable de produire des mouvements de marche, on peut interpréter ces deux phases. Premièrement, une phase qui va permettre au réseau de produire un mouvement de marche stable. Puis, une deuxièmement phase qui va permettre de mieux suivre le ou les mouvements de référence. Il est donc probable quŠil soit possible dŠutiliser le réseau obtenu après 300 cycles dŠentraînement comme solution de départ pour tous les entraînements réalisés sur le même sujet. Cela pourrait permettre de réduire dŠenviron 10% le temps dŠentraînement.

On observe aussi sur le graphique supérieur une différence importante entre les entraînements réalisés sur 1 mouvement et les entraînements réalisés sur 7 mouvements. Pour les entraînements réalisés sur 7 mouvements, la borne inférieure des récompenses sur les transitions est proche de 0 pour un nombre de cycles plus important que pour les autres entraînements. Nous pouvons expliquer cela car les réseaux entraînés à reproduire 7 mouvements nŠobtiennent pas un taux de réussite de 100% sur la reproduction des 7 mouvements avec des conditions initiales variables (voir Table 3.8).

Les deux graphiques inférieurs permettent de vériĄer quŠil nŠy a pas de condition initiale problématique. Dans notre cas, on observe sur lŠentraînement dans la condition R7 des valeurs de récompense plus faibles pour un ϕ de départ proche de 0.4. Cette valeur ne correspond pas à un événement particulier dans le cycle de marche mais elle explique peut-être le résultat légèrement inférieur obtenu dans la Table 3.8.

Approximation optimale dŠun mouvement

Les résultats de cette section permettent de visualiser la qualité de notre approximation optimale dŠun mouvement et la quantité de calculs nécessaires à son obtention. LŠobtention de lŠapproximation optimale dŠun mouvement nŠest pas totalement automatique. En effet, la phase de choix du nombre de points de contrôle pour chaque trajectoire a été réalisée manuellement. x du bassin -6.0 -6.7 -6.7 -6.9 -7.2 -7.4 -7.7 -8.0 Pos. y du bassin -7.1 -7.2 -7.7 -7.7 -7.6 -8.1 -8.1 -9.6 Pos. z du bassin -6.6 -7.2 -7.3 -7.5 -7.4 -7.5 -7.5 -9.6 Rot. coronale du HAT -3.2 -3.7 -6.6 -7.1 7.2 -7.1 -7.6 -8.7 Rot. tranversale du HAT -4.5 -4.9 -6.6 -6.6 -6.7 -6.8 -6.8 -8.5 Rot. sagitale du HAT -5.1 -5.3 -5.4 -5.5 -5.5 -5.6 -5.9 -8.4 Abdution/Addution de la hanche -3.7 -4.4 -5.6 -5.9 -6.3 -6.6 -6.8 -8.2

Rot. int/ext de la hanche -4.0 -4.2 -4.8 -4.7 -5.0 -5.0 -6.0 -7.8 Flexion/Extension de la hanche -4.8 -5.1 -5.1 -5.2 -5.1 -5.7 -6.0 -7.0 Flexion/Extension du genou -4.5 -5.3 -5.8 -5.6 -6.3 -6.6 -6.3 -7.6 DorsiĆexion/PlantaĆexion du pied -3.0 -3.4 -4.1 -3.9 -5.3 -4.6 -5.1 -7.6

Invertion/Eversion du pied -5.0 -5.2 -5.4 -5.4 -5.9 -6.1 -6.2 -8.9

Table 4.1 Ű Erreur quadratique moyenne des approximations En vert, la valeur conservée pour la suite des expériences.

valeurs pour représenter le mouvement. Nous avons donc réussi à diviser par un facteur 10 la quantité de données nécessaires à la représentation du mouvement.

On observe que les points de contrôle sont généralement placés au niveau des changements de pente de la courbe. Il semble donc possible de pouvoir calculer automatiquement un nombre de points de contrôle optimal en utilisant les changements de signe et les extremums de la dérivé et ainsi dŠavoir une meilleure initialisation lors de lŠoptimisation.

Suivi du mouvement dans la condition c0

Suivi du mouvement c1

Prédictions du mouvement

Dans cette section, nous présentons et analysons les résultats des différentes prédictions réalisées en utilisant la méthode proposée dans la section 3.6. LŠun des objectifs des prédictions que nous avons réalisé est de mesurer la qualité des prédictions, de lŠinĆuence des paramètres optimisés et de lŠinĆuence de la fonction objectif.

Nous avons réalisé les prédictions en utilisant au moins un des objectifs suivant :

Ů une Ćexion maximale du genou droit inférieure à 33 Ů Diminution de la vitesse de marche.

Minimisation de la moyenne des moments avec le jeu J1

On observe aussi une augmentation de plus de 15% de la longueur du pas réalisée avec la jambe droite et une augmentation de plus de 10% de la vitesse de marche. genou droit, des comportements attendus et inattendus. Les comportements attendus observés sont : la diminution de la Ćexion maximale du genou gauche, la diminution de la Ćexion maximale du genou gauche en 1ère phase de double appui et le changement de vitesse de marche. On observe aussi des comportements qui sont inattendus : pas dŠaugmentation du maximum de rotation externe de la hanche droite, hyper-extension des deux genoux en phase de simple appui, diminution trop importante du maximum de Ćexion gauche en phase de simple appui, pas de changement de cadence.

Là encore, le respect de la contrainte sur la Ćexion du genou est un point positif. Un deuxième point positif est la réduction de la vitesse de déplacement. Elle sŠexplique probablement par lŠajout de la minimisation des moments. Mais cette minimisation de lŠénergie semble, comme pour la prédiction CMA1, causer une dissymétrie importante dans le mouvement, en particulier sur la longueur des pas.

Minimisation et optimisation avec le jeu J3

Cette prédiction (nommée CMA5) a pour objectif de voir sŠil y a un intérêt à guider lŠoptimisation en limitant la taille du jeu de paramètres. LŠoptimisation cherche à nouveau à optimiser une Ćexion du genou aĄn de respecter la contrainte de 33 Les résultats obtenus avec la méthode de prédiction montrent lŠémergence naturelle de plusieurs phénomènes compatibles avec la réalité. On peut citer par exemple la réduction de la vitesse de marche pour minimiser lŠénergie. Par contre, lŠapparition de dissymétries de longueur des pas nŠest pas naturel et pourrait probablement être corrigée en utilisant une pénalisation sur la dissymétrie de la marche.

Dans le cadre du projet OMEGA, lŠobjectif dŠobtenir un simulateur capable de réaliser des prédictions a été rempli. LŠétude nŠa néanmoins pas été réalisée sur autant de pathologiques et de sujets que prévu initialement. Malgré tout, de mon point de vue, les résultats sont satisfaisants car les différentes approches proposées vont pouvoir être réutilisées et sont généralisables aĄn de choisir les contrôleurs les plus adaptés à la réalisation de prédiction.

( a )

 a Mouvement de référence sain (b) Mouvement de référence pathologique (c) Mouvement pathologique prédit

Figure

  Figure 1.1 Ű Illustration

Figure 2 . 1 Ű

 21 Figure 2.1 Ű Représentations schématique des articulations

( a )

 a Modèles 2D de squelettes[START_REF] Sok | Simulating biped behaviors from human motion data[END_REF] (b) Modèles 3D de squelettes[START_REF] Lee | Biped control using multi-segment foot model based on the human feet[END_REF] Un modèle 2D classique[START_REF] Abe | Simulating 2D gaits with a phase-indexed tracking controller[END_REF] représente le corps entier et possède une douzaine dŠarticulations pivots : coudes (2), épaules(2), cou (1), lombaire (1), hanches (2), genoux (2) et chevilles(2). DŠautres modèles [SKL07, YLV07, GH10, SG12, Mil14, SG15] préfèrent simpliĄer le haut du corps. Le complexe bras, tête et tronc est souvent remplacé par un seul corps rigide, nommé HAT (Head, Arm, Torso). Un modèle avec 7 articulations pivots est alors obtenu. Une simpliĄcation supplémentaire consiste à Ąxer lŠarticulation lombaire[START_REF] Ong | Predicting gait adaptations due to ankle plantarĆexor muscle weakness and contracture using physics-based musculoskeletal simulations[END_REF]. Par contre, la suppression de lŠarticulation de la cheville est une simpliĄcation qui ne peut pas être effectuée[START_REF] Martin | Predicting human walking gaits with a simple planar model[END_REF], et a fortiori les articulations du genou et de la hanche.LŠapproximation du mouvement contraint à un plan étant assez grossière, les modèles 3D sont plus courants. On y retrouve les mêmes articulations, mais avec plus de degrés de liberté. Une modélisation où toutes les articulations pivots sont remplacées par des articulations sphéroïdes a été envisagé [LKL10, LL15]. Ce choix à permet de ne pas contraindre les mouvements du modèle, mais dans la réalité seul les hanches et les épaules sont des articulations sphéroïdes. Des modèles plus proches de la réalité sont donc aussi utilisées aĄn de limité les mouvements irréaliste. Les mouvements du genou sont des Ćexions et des extensions. Une modélisation avec un pivot est donc largement utilisée [LVY16, HENS16, LPLL19, RKL * 21]. Cette modélisation est imparfaite car lŠaxe de rotation change en fonction de lŠangle de Ćexion. Le modèle gait2392_simbody et ses variations [DLH * 90, AP99] décrivent ce phénomène. Cependant, ils sont rarement utilisés ou bien lŠarticulation est simpliĄée. La simpliĄcation est généralement justiĄée par le fait que le déplacement de lŠaxe de rotation est relativement faible lorsque la Ćexion est modérée. Ce qui est le cas dans les mouvements de marche. Les chevilles permettent de réaliser les mouvements de dorsiĆexion, de pantarĆexion, dŠinversion et dŠeversion du pied. Une modélisation avec deux pivots est donc largement utilisée, même si [ALX * 19, HRL15] conservent seulement le pivot permettant les dorsiĆexions et pantar-Ćexions. De la même manière que pour les modèles 2D, on retrouve des modèles qui ne détaillent pas le haut du corps. CŠest le cas du modèle gait2392 simbody et de ses variations [LPKL14, SG15, CPB18, JVDL19]. Les arguments avancés sont que lŠaction du haut du corps sur le bas du corps peut être modélisée avec un modèle simpliĄé. Et que le modèle simpliĄé permet de diminuer la complexité. Mais la plupart des modèles détaillent le haut du corps [YLV07, CPB15, KH17, KLV20, LPLL19, BCHR19]. Parmi les modèles qui détaillent le haut du corps, cŠest généralement la combinaison dŠun modèle bas du corps avec un modèle du haut du corps. Par exemple, le modèle Fullbody de Lee et al. [LPKL14] est une combinaison du modèlegait2392 simbody avec le modèle du haut du corps proposé par Holzbaur et al. [HMD05]. Comme pour le bas du corps, on nŠobserve pas de consensus sur les modélisations des articulations du haut du corps. LŠarticulation du coude permet les mouvements de Ćexion et dŠextension mais aussi les mouvements de pronation et suplination de la main. Pourtant, une articulation avec deux pivots est rarement utilisée car les mouvements de la main ont très peu dŠintérêt dans lŠétude de la marche. On peut citer le travail de Yin et al. [YLV07] qui utilisent cette modélisation. Les lombaires sont constitués dŠun enchaînement dŠarticulations semi-mobiles. La mobilité combiné est donc suffisamment importante pour être modélisée. Une approche utilisant une seule articulation sphéroïde est utilisée dans les modèles utilisant un haut du corps simpliĄé (HAT). Pour les autres modèles plusieurs articulations à double pivot sont utilisées en série (Fig 2.3).

Figure 2 . 3 Ű

 23 Figure 2.3 Ű Modèlisation du dos [WGH20]

Figure 2 . 4 Ű

 24 Figure 2.4 Ű Squelettes de pied [LPLL19]

  Figure 2.5 Ű Représentation de la conĄguration géométrique dŠun squelette composé de n = 3 articulations. Les λ(i),i X λ(i) , ∀i ∈ [1, n] décrivent pour chaque articulation i, la transformation permettant de passer du repère local du corps parent λ(i) au repère local de lŠarticulation. Les X Ji , ∀i ∈ [1, n] donne la transformation permettant de passer du repère local de lŠarticulation au repère du corps parent.

  p i ) sont calculées en fonction de celles des corps parents, le calcul est donc fait en descendant. Dans une seconde boucle, on calcule lŠinertie I A i et les forces de biais p A i des ensembles de corps rigides articulés (Figure 2.6). Les caractéristiques dynamiques dŠun ensemble dépendent de celles de ses sous-ensembles, le calcul est donc fait en remontant. EnĄn, une dernière boucle calcule les accélérations angulaires et linéaires des corps rigides en utilisant les résultats des calculs précédents. LŠaccélération dŠun corps dépendant de lŠarticulation de son parent, le calcul est fait en remontant.

Figure 2 .

 2 Figure 2.6 Ű Représentation par ensemble de corps rigides[START_REF] Featherstone | Rigid Body Dynamics Algorithms[END_REF]

  de la vitesse des parents end for for i = N B . . . 1 do

Figure 2 .

 2 Figure 2.7 Ű Illustration du la logique du calcul

  τ

Figure 2 .

 2 Figure 2.8 Ű Schématisation des contacts de Kelvin-Voigt, Hunt-Crossley et volumique. DŠaprès une Ągure de Ezati et al. [EBGM20]

  de chaque segment indépendamment. Une fois la taille et la masse des segments mises à jour il est possible de recalculer lŠinertie et le centre de masse (CDM). Pour la mise à lŠéchelle des inerties et des masses, des méthodes plus précises peuvent être utilisées. LŠune consiste a acquérir un maillage 3D du sujet et à calculer les masses et les inerties en supposant une répartition uniforme de la masse totale [KLV20, KH17, HENS16, HNJS14]. LŠautre à approximer le volume du sujet par des capsules [BCHR19] puis à faire les calculs en répartissant la masse totale dans les capsules. La mise à lŠéchelle consiste aussi à rendre le modèle musculaire plus réaliste. Cette mise à échelle est aussi bénéĄque pour les modèles basés sur des articulations actives car elle permet dŠaffiner leurs caractéristiques. La mise à lŠéchelle peut être réalisée en utilisant des mesures de force maximale réalisée avec un dynamomètre. De même, les mesures faites avec un électromyogramme peuvent apporter des informations supplémentaires. Ces protocoles sont difficiles à mettre en place car le sujet peut ne pas être capable de réaliser les tests. De plus, les mesures dŠélectromyographie ajoutent de nombreux capteurs qui peuvent interférer avec les mouvements du sujet. LŠutilisation des données de dynamique inverse pour réaliser ce calcul présente donc un grand intérêt [MEHM19].Mise à lŠéchelle des modèles de contactAu-delà du choix du modèle de contact à utiliser, la mise à lŠéchelle de ses paramètres est importante. Plusieurs études proposent des méthodes pour y parvenir. LŠidée est dŠoptimiser le modèle de contact aĄn dŠobtenir des forces de contact qui ressemblent le plus possible aux forces mesurées expérimentalement [JHF16, BM18, EBGM20]. Une autre approche consiste à minimiser les forces virtuelles à appliquer sur le sujet simulé pour arriver à reproduire parfaitement le mouvement[START_REF] Brubaker | Estimating contact dynamics[END_REF].

Figure 2 .

 2 Figure 2.10 Ű Simulation directe

  informations sur le mouvement à suivre. Ces informations sont généralement la conĄguration cible pour le squelette à lŠétat suivant. Cette conĄguration est extraite dŠun mouvement de référence. Il peut être issu dŠune capture de mouvement[LYvdP * 10] ou créé à partir dŠinterpolations entre des poses clés [WFH09]. Une combinaison entre différents mouvements peut-être faite en utilisant une machine à états [YLV07]. Dans plusieurs travaux [PBYV17, PALV18, BCHR19, LPLL19] un réseau neuronal génère des cibles. On trouve aussi la combinaison de mouvements issus dŠesquisses [NCNV * 12].

4 )

 4 Les contrôleurs sont placés sur chaque articulation et ils produisent un moment pour chacune.Cette méthode produit des moments assez réalistes, mais ils ne permettent pas de reproduire le mouvement de référence dans la simulation.De plus, le modèle est sous-articulé donc on ne peut pas contrôler la position globale de la racine.Il faut aussi garder à lŠidée que les données dŠentrée (modèle du sujet, description du mouvement) ne sont pas Ądèlement identiques à la réalité. Donc, rien nŠassure que le mouvement soit physiquement réalisable par le modèle. EnĄn, la méthode de contrôle PD étant explicite, elle ne considère pas les forces extérieures et elle est fortement inĆuencée par le choix des coefficients k p et k d .Un modèle utilisant des contrôleurs PD simpliĄe grandement la réalité. Un unique couple de coefficients (k p , k d ) ne peut pas permettre de modéliser toutes les situations. En cas de contact, les coefficients ont besoin dŠêtre plus élevés pour générer plus de moments aĄn dŠatteindre la consigne malgré les forces de contact. Au contraire, en lŠabsence de contact des coefficients trop élevés produisent des mouvements très robotiques, on observe un phénomène de dépassement avec oscillations autour de la consigne. Liu et al. [LYvdP * 10] proposent donc dŠutiliser des coefficients différents quand lŠarticulation agit directement sur un corps en contact avec le sol.Une autre solution proposée pour corriger lŠerreur due aux forces extérieures est lŠutilisation de forces virtuelles (F i ). Coros et al.[START_REF] Coros | Generalized biped walking control[END_REF] les utilisent pour compenser la gravité. Cette méthode consiste à appliquer des moments (τ i ) supplémentaires sur les articulations. Les moments sont calculés en utilisant la matrice Jacobienne (J CDM (i) ) de position globale du CDM dŠun segment par rapport aux angles des articulations (équation 2.5).

Figure 2 .

 2 Figure 2.11 Ű Force virtuelle

  avec V la vitesse désirée dans le plan sagittal et k v un coefficient à déterminer. Pour la vitesse dans le plan coronal, cŠest la position de CDM qui est utilisée comme cible dans un contrôleur PD [CBV10]. Les forces sont appliquées sur la jambe dŠappui et sur le haut du corps. La force appliquée dans le plan coronal aura tendance à déséquilibrer le sujet, un contrôleur dŠéquilibre est donc nécessaire aĄn de corriger la position du pied en phase de vol. Une amélioration de cette méthode est proposée par Carensac et al. [CPB15]. Ils proposent dŠappliquer des forces virtuelles indépendamment sur le haut et le bas du corps aĄn de pouvoir utiliser seulement le haut du corps quand cela est suffisant. Ils rajoutent aussi une pondération des moments inversement proportionnels à la masse des corps déplacés. Une méthode similaire est proposée par Kavafoglu et al. [KKC * 18] et testée sur de plus nombreux scénarios.Pour contrôler la direction de déplacement, il est possible dŠutiliser un contrôleur proportionnel pour modiĄer les mouvements de la jambe en phase de vol, du dos et de la tête[START_REF] Yin | SIMBICON : Simple biped locomotion control[END_REF][START_REF] Coros | Generalized biped walking control[END_REF]. Ce contrôleur utilise comme cible une direction interpolée entre la direction courante et lŠobjectif. Il vient modiĄer la rotation de la hanche, du dos et de la tête.Ces méthodes sont relativement simples à mettre en place, mais elles peuvent générer des moments trop importants sur les chevilles et causer des rotations parasites du pied. Elles peuvent aussi causer des auto-collisions lors des changements de direction. Des méthodes explicites permettent en échange de calculs plus complexes dŠavoir une vision du futur aĄn de pouvoir mieux contrôler le squelette.Contrôle expliciteContrairement aux méthodes implicites qui cherchent à résoudre le problème pour lŠinstant courant, les méthodes explicites cherchent à établir une stratégie en prévoyant le futur. Elles sont aussi appelées méthodes prédictives et permettent de produire des mouvements qui nécessitent anticipation et planiĄcation.Ces méthodes peuvent être utilisées sur le modèle complet du squelette en 2D[START_REF] Sun | Dynamic Simulation of Human Gait Model with Predictive Capability[END_REF] et en 3D[START_REF] Han | Data-guided model predictive control based on smoothed contact dynamics[END_REF]. Elles consistent à calculer un mouvement optimal avec un horizon dŠenviron un cycle de marche. Ce calcul peut donc être fait à une fréquence beaucoup plus faible que la fréquence de simulation. Mais lŠoptimisation reste un challenge car lŠespace de recherche est de grande taille (lié au nombre de degrés de liberté) et le nombre de variables augmente linéairement avec la durée de lŠhorizon de planiĄcation et la complexité de lŠenvironnement. CŠest pour cela que cette méthode est plutôt appliquée sur un modèle réduit.

Figure 2 . 12 Ű

 212 Figure 2.12 Ű Types de pendule inverse, le pendule inversé sur un chariot [KH10], un modèle de pendule inverse mappé sur les moments [KH17] et un modèle de pendule inverse avec un système masse ressort, amortisseur [MdLH10].

  Chow et Jacobson[START_REF] Chow | Studies of human locomotion via optimal programming[END_REF] sont à notre connaissance, les premiers à résoudre un problème de contrôle optimal pour réaliser la prédiction du mouvement dŠune jambe. Il montre que leur modèle permet dŠobtenir une simulation proche de la réalité expérimentale. Plus tard, Yen et Nagurka[START_REF] Nagurka | Suboptimal trajectory planning of a Ąve-link human locomotion model[END_REF] étendent cette méthode à un modèle bipède constitué de 5 articulations.Anderson et Pandy[START_REF] Anderson | Dynamic optimization of human walking[END_REF] ont proposé une prédiction utilisant un nombre signiĄcatif de muscles tout en permettant un mouvement en 3D. Les poses du début et de Ąn, ainsi que la durée du demi-cycle sont Ąxés à partir de données expérimentales. Ils obtiennent une simulation où le mouvement, les forces de réaction au sol et les activations musculaires sont pertinentes en comparaison avec les mesures expérimentales. Ren et al.[START_REF] Ren | Predictive modelling of human walking over a complete gait cycle[END_REF] proposent la prédiction dŠun cycle de marche complet en utilisant seulement la vitesse de marche, la durée dŠun cycle de marche et la durée de la phase de double appui. Xiang et al. [XARAM09] utilisent une méthode basée sur la formulation récursive de Lagrange pour prédire un demi-cycle de marche à partir de la longueur dŠun pas et proposent des prédictions pour le port dŠune charge. Xiang et al. [XAC * 12] proposent des prédictions pour les transitions entre la marche lente et la marche rapide ainsi que la marche et lŠarrêt. Ackermann et al. [AV12] prédisent une stratégie de marche différente dans un environnement à faible gravité. Koelewijn et al. [KvdB16] ont prédit des mouvements dans le cas dŠune amputation trans-tibiale unilatérale. Falisse et al. [FSD * 19] ont amélioré les résultats précédemment cités aĄn dŠobtenir des simulations en 3D avec un modèle plus complexe. Lin et al. [LWP18], utilisant un critère de performance basé sur le coût du transport, ont prédit la marche à des vitesses plus lentes et plus rapides que les données expérimentales. Une boîte à outils logicielle Open-Sim MOCO [DBF * 20], utilisant la méthode de colocation directe, a aussi été conçue pour être facile à utiliser, personnalisable et extensible, accélérant ainsi lŠutilisation des simulations pour comprendre le mouvement.Le problème de contrôle optimal est posé avec comme contraintes le respect des lois de la dynamique musculaire et/ou squelettique. On peut trouver dŠautres contraintes comme la symétrie droite/gauche, la vitesse de marche, la longueur des pas et dŠautres mesures spatio-temporelles de la marche. Une fonction objectif basée au moins sur la minimisation du coût de transport vient compléter le problème. Parfois, la fonction de coût inclut un terme de minimisation de lŠerreur par rapport à des données expérimentales. Étant donné les contraintes imposées par la dynamique, la fonction de coût est très sensible à lŠoptimisation. Les méthodes utilisant la collocation directe sont donc préférées aux méthodes de tirs directs, car elles réduisent lŠhorizon dŠintégration. Les systèmes algébriques obtenus avec cette méthode sont résolus efficacement par les méthodes existantes.Ces méthodes présentent lŠavantage dŠavoir un temps de résolution plus court que les méthodes utilisant lŠapproche explicite. Cet avantage semble être dû aux méthodes de résolution utilisées. Il est aussi fortement lié à une supposition qui est faite : la symétrie du mouvement.

  capable de prédire et donc dŠaméliorer les stratégies thérapeutiques pour les patients individuels. Ce simulateur est basé sur des réseaux neuronaux et des processus dŠoptimisation. Une analyse approfondie des propriétés de ce simulateur a été réalisée concernant sa précision, son exactitude, sa robustesse et sa sensibilité, et a été utilisée pour déterminer la conĄguration la plus optimale pour la prédiction. Pour prédire les mouvements de marche, lŠapproche proposée consiste à appliquer des déformations à un mouvement de référence aĄn dŠobtenir des simulations nouvelles et stables sans réentraîner les réseaux neuronaux. La méthode permettant dŠobtenir des prédictions est Ąnalement appliquée pour obtenir une prédiction de lŠeffet dŠune limitation stricte des mouvements du genou sur un sujet sain. Cette condition altérée limite la Ćexion du genou à environ 30 • , et est nommée c1. Elle a été choisie car elle représente bien les effets de la pathologie du genou-raide (stiff-knee gait) [LOW12].Ce chapitre détaille dans la section 3.2, le protocole utilisé pour obtenir les données brutes qui représentent les mouvements réalisés par le sujet. Ensuite, dans la section 3.3 nous proposons un traitement automatique à appliquer sur ces données brutes aĄn dŠobtenir une modélisation des mouvements adaptée à notre simulateur. Une fois que les mouvements sont adaptés à notre simulateur, nous présentons dans la section 3.4 le processus permettant dŠobtenir des réseaux de neurones permettant au simulateur de suivre un mouvement de référence. Dans la section 3.5, nous présentons un protocole permettant dŠanalyser les caractéristiques de différents réseaux de neurones aĄn de choisir le plus adapté à la réalisation des prédictions. EnĄn, dans la section 3.6, nous présentons la méthode dŠoptimisation des trajectoires que nous avons employée aĄn dŠobtenir les mouvements prédits. La Ągure 3.1 donne une vision globale des différentes utilisations possibles de lŠenvironnement de simulation que nous proposons.

Figure 3 .

 3 Figure 3.1 Ű Vues générales Notre environnement de simulation permet : (a) de produire un mouvement qui suit un mouvement de référence, (b) dŠanalyser les caractéristiques du simulateur direct et (c) de produire des mouvements prédits.

  articulaires brutes utilisées dans le cadre du projet OMEGA. Ce processus comprend le choix des sujets, le matériel et les logiciels utilisés. Le projet OMEGA étant une collaboration entre le LIRIS et le LBB, cela nous a permis de bénéĄcier de données dŠexcellente qualité, car les mesures ont été réalisées par des biomécaniciens et des techniciens habitués à réaliser des captures de mouvement en environnement clinique. Étant donné que le projet est une collaboration, il nous a été possible dŠétablir conjointement le protocole expérimental de ces captures.

Figure 3 . 2 Ű

 32 Figure 3.2 Ű Ensemble de marqueurs Plug-in Gait[Vic]

  Nous avons utilisé le modèleGait2392 [DAA * 07]. Ce modèle visible sur la Ągure 3.4a est composé de 23 degrés de liberté et 92 unités musculo-tendineuses. Nous lŠavons modiĄé aĄn de pouvoir lŠutiliser dans un simulateur direct. En effet, ce modèle ne possède pas de primitive de collisions, il nŠest donc pas possible de lŠutiliser dans un simulateur direct. Nous avons choisi de modéliser les pieds avec 3 corps rigides articulés par des articulations pivot (Figure 3.5). Ce modèle a était choisi car dŠaprès Lee et al. [Lee19], il permet dŠavoir des simulations directes stables sans avoir un modèle très détaillé. Cela limite la complexité du contrôle et du calcul des collisions.

Figure 3 . 3 Ű

 33 Figure 3.3 Ű Ensemble de marqueurs Plug-in Gait[Vic]

  (a) Modèle neuromusculaire Gait2392 (b) Notre modèle cinématique En vert les articulations pivots et en bleu les articulations sphéroïdes.

Figure 3 .

 3 Figure 3.5 Ű Notre modèle de pied à 3 corps rigides, similaire à [Lee19]

  La cinématique inverse permet dŠobtenir les mouvements effectués par un sujet à partir de la position des marqueurs placés sur celui-ci. Un avatar sur lequel sont placés les mêmes marqueurs que ceux du sujet réel est nécessaire. Dans un premier temps, le placement des marqueurs sur lŠavatar est ajusté aĄn quŠils correspondent le plus Ądèlement possible au placement des marqueurs sur le sujet. Nous avons réalisé cette étape sous OpenSim en utilisant une pose en T, capturée lors de lŠacquisition des mouvements.Ensuite, la recherche des conĄgurations articulaires de lŠavatar minimisant la distance quadratique moyenne entre les marqueurs réels et virtuels est réalisée pour chaque pas de temps.Pour réaliser cette étape, nous avons utilisé deux approches.La méthode classique qui consiste à minimiser la distance quadratique moyenne pour tous les marqueurs simultanément, en utilisant le même poids pour chaque marqueur. Les mouvements obtenus avec cette méthode présentaient un phénomène de glissement des pieds sur le sol. En effet, comme nous utilisons une représentation récursive du mouvement et que nous approximons les trajectoires après la phase de cinématique inverse, une modiĄcation de lŠorientation du bassin est possible. Cette modiĄcation de lŠorientation entraîne une différence dŠorientation qui se propage et cause des décalages au niveau de la position globale des pieds.Nous avons donc utilisé une approche permettant de diminuer les modiĄcations causées par lŠapproximation de lŠorientation du bassin. Dans notre cas, ces modiĄcations sont causées par la discontinuité de lŠorientation du bassin à lŠissue de la phase de minimisation des distances quadratiques. La discontinuité de lŠorientation du bassin est causée par le glissement des marqueurs sur la peau. En effet, la position et lŠorientation de la racine (le bassin) sont obtenues à partir de la position de quatre marqueurs (RASI, LASI, RPSI et LPSI, voir Figure3.3)). Comme les marqueurs sont placés sur la peau et que la peau se déplace par rapport aux os pendant les mouvements, la position des marqueurs les uns par rapport aux autres nŠest pas Ąxe. LŠorientation du bassin de lŠavatar qui minimise la distance quadratique nŠest donc pas forcement continue.Nous proposons donc de réaliser uniquement la minimisation de la distance des marqueurs du bassin puis de lisser les trajectoires obtenues pour sa position et son orientation. Le lissage est réalisé avec un Ąltre de Butterworth du second ordre, discret avec une fréquence de coupure de 10 Hz. Le Ąltre est appliqué dans les deux directions aĄn de ne pas créer de décalage.Ensuite, la minimisation de la distance quadratique pour les autres marqueurs est réalisée sans laisser la possibilité de modiĄer la position et lŠorientation du bassin calculées précédemment.LŠorientation et la position du bassin étant lissées à la Ąn de la cinématique inverse, elle nŠest plus modiĄée par le Ąltrage effectué lors de lŠapproximation des trajectoires.

Figure 3 .

 3 Figure 3.7a). Nous trions les valeurs restantes par ordre décroissant. Nous appliquons ensuite le traitement suivant sur chaque maximum présent dans la liste, en partant du premier maximum : Ů En partant de lŠabscisse du maximum, on cherche la première fois où pour une abscisse supérieure la vitesse passe sous le seuil de 10% du maximum global. Ce sera un événement de contact. Ů En partant de lŠabscisse du maximum, on cherche la première fois où pour une abscisse inférieure la vitesse passe sous le seuil de 10% du maximum global. Ce sera un événement dŠenvol. Ů On supprime de la liste tous les maximums locaux dont lŠabscisse est comprise entre celle de lŠévénement dŠenvol et de contact. La Figure 3.7 présente (a) les maximums retenus après avoir supprimé ceux inférieurs à 30% du maximum global et (b) les événements isolés pour cette trajectoire avec lŠalgorithme décrit ci-dessus. Notre méthode est totalement automatique contrairement à Ghoussayni et al. [GSDE04] qui déĄnissent un seuil de manière empirique en fonction des données utilisées. Dans notre cas, il nŠest pas possible dŠextraire les événements en utilisant seulement le seuil de 10%, car on obtient des faux événements pendant les phases où les marqueurs sont pratiquement immobiles (pied posé au sol). DŠun autre côté, lŠaugmentation du seuil de 10% fausse la mesure, car on sŠéloigne

Figure 3 .

 3 Figure 3.6 Ű Détail du Ąltrage Position et vitesse du marqueur avant du pied droit dans une capture de mouvement. Les courbes en ligne pointillée orange sont les données avant Ąltrage. En bleu, les données après Ąltrage.

  Le cycle obtenu à lŠétape précédente nŠest pas parfaitement périodique (voir Figure 3.8). Lorsque lŠon met les données dŠun cycle bout à bout plusieurs fois, on observe une divergence progressive. En effet, même un sujet sain ne réalise pas deux fois exactement le même cycle de marche. Pour notre simulateur, il est bénéĄque dŠavoir un mouvement périodique, car il sera utilisé comme consigne de contrôle et répété de manière virtuellement inĄnie. Nous allons donc chercher à rendre cycliques toutes les trajectoires, pour cela, nous avons Vitesse (m/s) (a) Position des maximums supérieurs à 30% (petites barres verticales) Nombre de frames Vitesse (m/s) (b) Évènements détectés : ronds pour les contacts et croix pour les envols

Figure 3 .

 3 Figure 3.7 Ű Extraction des événements , basée sur la vitesse du marqueur LANK pendant la simulation dŠun mouvement de marche.

N

  Figure 3.9 Ű Orientation sagittale du bassin avant et après Ąltrage

Figure 3 . 10 ŰFigure 3 .

 3103 Figure 3.10 Ű Architecture du contrôleur

( a )

 a Rot. cor. du bassin (b) Rot. trans. du bassin (c) Rot. sag. du bassin (d) Pos. x du bassin (e) Pos. y du bassin (f) Pos. z du bassin (g) Rot. cor. du HAT (h) Rot. trans. du HAT (i) Rot. sag. du HAT (j) Abd. de la hanche g. (k) Abd. de la hanche d. (l) Rot. de la hanche g. (m) Rot. de la hanche d. (n) Flex. de la hanche g. (o) Flex. de la hanche d.(p) Flex. du genou g. (q) Flex. du genou d.

Figure 3 .

 3 Figure 3.11 Ű Trajectoires de référence et leur approximation, avec la position des 8 points de contrôle.

Figure 3 . 12 Ű

 312 Figure 3.12 Ű Trajectoire cible (verte) et de référence (orange) pour la Ćexion du genou droit

Figure 3 .

 3 Figure 3.13 Ű Cible, moment et position pour la Ćexion du genou droit En bleu, lŠorientation simulé, en vert, la consigne en entrée du contrôleur-PD stable et en rouge le moment généré par le contrôleur.

  et DART [LXH * 18]. Bien que dans la littérature de nombreuses utilisations dŠODE soient rapportées, nous avons rapidement choisi dŠutiliser un autre moteur physique car ODE utilise une représentation en coordonnées maximales. Cette représentation nécessite des équations supplémentaires pour représenter les contraintes des articulations. Ces équations dépendent de paramètres tels que Constraint Force Mixing et Error Reduction Parameter, qui in-Ćuencent de manière importante le résultat des simulations, et lŠutilisation de valeurs permettant de se rapprocher dŠune représentation en coordonnées générales rendent la simulation instable. La méthode de reproduction du mouvement présentée dans cette section a premièrement été implémentée sous SimBody car toutes nos données étaient issues dŠOpenSim. Cependant, même si la méthode dŠintégration utilisée par SimBody est très précise, elle est trop coûteuse en temps de calcul. Le calcul des pas de temps était 10 fois plus lent et difficilement parallélisable. La réalisation dŠentraînements du réseau de neurones nŠétait pas réalisable en un temps raisonnable. Nous avons Ąnalement opté pour DART, le moteur physique aussi choisi par Lee et al., et nous avons réalisé la conversion des modèles aĄn de pouvoir les utiliser dans cet environnement. Ce moteur répond aux critères que nous avions Ąxés : il utilise la méthode de Featherstone et lŠintégration est effectuée suffisamment rapidement en utilisant un modèle de contact rigide. Par ailleurs, nous avons aussi essayé dŠutiliser un modèle de contact souple pour obtenir des résultats plus précis pour les forces dŠinteraction. Hélas, lŠutilisation dŠun modèle de contact souple nécessitait une fréquence de simulation beaucoup plus élevée pour être stable. En pratique une fréquence de 2000 Hz permet dŠavoir une simulation stable, contre seulement 600 Hz pour des contacts rigides. Ce qui représente une multiplication par plus de trois du temps dŠentraînement du réseau.

FinFigure 3 . 14 Ű

 314 Figure 3.14 Ű Le principe de la stratégie de proximal policy optimisation

  Les hyperparamètres de la PPO nŠont pas été modiĄés car les valeurs utilisées sont cohérentes avec les valeurs déterminées empiriquement dans lŠétat de lŠart. Parmi ces paramètres on trouve les paramètres utilisés pour calculer lŠavantage (γ = 0.99 et λ = 0.99), le nombre de fois où les transitions collectées sont réutilisées dans une même phase de mise à jour de lŠagent(10), le nombre de transitions à utiliser pour chaque étape de lŠapprentissage (128) et la vitesse dŠapprentissage (0.0001 avec une décroissance linéaire vers 0 sur les 2 derniers millions de transitions).Nous avons seulement modiĄé le nombre de transitions collectées entre chaque mise à jour de lŠagent aĄn de permettre aux simulations dŠatteindre la Ąn de lŠhorizon de simulation. Nous avons choisi un horizon de simulation de 20 cycles de marche (environ 20 secondes de mouvement) aĄn dŠaugmenter la robustesse du simulateur. Pour cela, le nombre de transitions collectées est Ąxé à N thread * F control * 20. Originalement, lŠhorizon de simulation était Ąxé à 10 secondes, mais avec seulement 2048 transitions collectées, F control = 30Hz et N thread = 16, cela donne un horizon effectif de seulement 4 secondes.

  tar pendant la simulation. Nous avons donc choisi dŠavoir 5 conditions dŠentraînement simples et 2 conditions dŠentraînement de type curriculum learning. Nous avons nommé les réseaux obtenus aĄn dŠy faire référence plus facilement dans la suite. Pour les conditions dŠentraînement simples, nous avons fait varié le nombre de mouvements de référence utilisés : Ů Un mouvement de sujet sain, avec ϕ = 0 correspondant au contact du talon droit (R1) Ů Un mouvement de sujet sain et sa version déphasée dŠun demi-cycle de marche (R1d) Ů Sept mouvements de sujet sain, avec ϕ = 0 correspondant au contact du talon droit (R7) Ů Sept mouvements de sujet sain et leurs versions dephasées dŠun demi-cycle de marche (R7d) Ů Un mouvement de sujet avec le genou contraint (R1c1) Le déphasage dŠun demi-cycle de marche permet dŠavoir pour un mouvement donné une version avec le contact initial du pied droit et aussi une version avec le pied gauche. CŠest une modiĄcation importante car la phase ϕ est une des valeurs dŠentrée du réseau de neurones. Pour les conditions dŠentraînement de type curriculum learning, nous avons utilisé les réseaux issues des entraînements simples comme solution initiale. Puis, nous avons réalisé un réentraînement en appliquant des perturbations sur lŠavatar pendant les simulations. Nous avons appliqué ces conditions sur : Ů Le réseau obtenu avec un mouvement de sujet sain (R1p) Ů Le réseau obtenu avec sept mouvements de sujet sain et leurs versions dephasées dŠun demi-cycle de marche (R7dp) Je verrai pour faire une Ągure

Figure 3 . 15 Ű

 315 Figure 3.15 Ű Évènements et phase du cycle de marche droit : contact initial (CI), décollage des orteils de la jambe opposée (DOo), contact initial de la jambe opposée (CIo), décollage des orteils (DO) et phase de double appui (DA) (inspirée de [HJ19])

  nou. Elle a été réalisée avec une version plus ancienne de notre simulateur. Nous étions moins exigeant, une simulation de 3 secondes était considérée comme un succès. Dans cette version, les trajectoires étaient décrites par des B-Splines, les déformations étaient réalisées en changement lŠordonnée dŠun ou plusieurs points de contrôle de manière à faire varier lŠamplitude des extremums locaux (D1, D2, D3, D4) de trajectoire du genou droit (voir Figure 3.16).

Figure 3 .

 3 Figure 3.16 Ű ModiĄcations sur la trajectoire du genou droit Valeur dŠentrée Limite inférieure Limite supérieure

  AĄn de la réaliser, nous avons effectué des simulations en faisant varier les valeurs dŠentrée (D1, D2, D3, D4). Les combinaisons de variations ont été générées en utilisant une séquence de Sobol.La séquence et le nombre dŠéchantillons ont été choisis pour être optimaux aĄn de calculer les indices de sensibilité selon Saltelli et al. [SAA * 10]. Pour chaque mesure, nous avons calculé lŠindice dŠeffet principal. Il existe plusieurs façons de calculer cet indice et nous avons utilisé la méthode introduite par Saltelli et al. [SAA * 10]. Cet indice peut être considéré intuitivement comme la variance obtenue si tous les paramètres sauf le paramètre k pouvaient être Ąxés, le tout normalisé par la variance globale. Cela présente lŠavantage de pouvoir étudier lŠinĆuence dŠune valeur dŠentrée dans un système où toutes les valeurs changent. Ces mesures ont aussi été réalisées sur la version du simulateur qui utilisait les B-Splines. La table 3.

Figure 3 . 17

 317 Figure 3.17

  Les composants permettant la prédiction dŠun mouvement sont : Ů La phase de réduction de la taille de lŠespace de recherche ; Ů La déformation dŠune trajectoire du mouvement du référence ; Ů LŠoptimisation des déformations ; Ů Le composant de simulation et de contrôle permettant dŠévaluer le résultat dŠune déformation.

  Rot. coronale du HAT Phase φ Orientation (rad) (b) Rot. coronale du bassin Phase φ Longeur (m) (c) Hauteur du bassin Phase φ Orientation (rad) (d) Abd. de hanche gauche Phase φ Orientation (rad) (e) Abd. de hanche droite Phase φ Orientation (rad) (f) Flex. du genou gauche Phase φ Orientation (rad) (g) Flex. du genou droit

Figure 3 . 18 Ű

 318 Figure 3.18 Ű Trajectoires approximées avec un nombre de points de contrôle optimal

Figure 3 . 19 Ű

 319 Figure 3.19 Ű Déformation de la trajectoire du genou droit. En bleues les variations de c0 obtenues en appliquant un décalage de ± π 2 rad sur lŠordonnée de chaque point de contrôle. En vertes les variations de c0 obtenues en multipliant les poids entre 0.001 et 1000. En rouge, la trajectoire dans la condition c1.

  Le CMA-ES fonctionne par vagues (itérations). Pour chaque vague, plusieurs ensembles de valeurs dŠentrée vont être testés. Ces ensembles sont obtenus par tirage aléatoire dans lŠespace de recherche qui est décrit par des valeurs moyennes et des écart-types pour chaque valeur dŠentrée.Une fois une vague terminée, en fonction des récompenses obtenues pour chaque ensemble, la valeur moyenne et lŠécart-type sont mis à jour. LŠinitialisation est réalisée en utilisant 0 comme valeur moyenne et un écart-type de 0.001 pour les décalages, et 0.0001 comme valeur pour le décalage sur la durée du cycle de marche. Ceci aĄn dŠêtre très proche du mouvement de référence à lŠinitialisation.

r

  sim = sig 0.5,20 (3 * sim) sim est la moyenne des similarités entre deux cycles successifs de marche. La similarité entre deux cycles est déĄnie comme étant la somme des différences quadratiques moyennes des positions locales des centres de masse de chaque corps rigide. Dans chaque formule précédente sig a,b (x) = 1 1-exp(-a * (x+b)) , et le résultat est régularisé de manière à obtenir 0 pour x = 0 et 1 pour x = 1.

  4.7. Pour tous les entraînements réalisés, chaque mouvement de référence était représenté par des trajectoires décrites avec des NURBS périodiques et non-uniformes composées de 8 points de contrôle. Elles ont été obtenues en utilisant la méthode décrite dans la section 3.3.2. Un entraînement dure environ 10 heures en parallélisant la simulation des transitions sur les 12 threads dŠun processeur cadencé à 3.6 GHz. Les calculs de propagation sur le réseau de neurones nŠont pas été réalisés sur GPU. En effet, il représente très peu de temps de calcul par rapport aux simulations elles-mêmes. Quelle que soit la conĄguration, les entraînements ont une durée similaire car la condition dŠarrêt est la réalisation de 22 millions de transitions et que la durée de simulation dŠune transition est constante. Cette durée est dŠenviron 20 ms et elle correspond à un mouvement dŠune durée de 33 ms.La simulation parallélisée est donc environ 20 fois plus rapide que le temps réel. Pour augmenter cette valeur sans diminuer lŠhorizon de simulation, il faudrait augmenter le nombre de threads utilisés et/ou le nombre de transitions collectées par cycle. La Figure 4.1 montre pour les 7 conĄgurations dŠentraînement différentes lŠévolution de la récompense par transition en fonction du nombre de cycles dŠapprentissage. Elle montre aussi la répartition des récompenses par transition en fonction de la direction de déplacement et de la phase dŠinitialisation de la simulation. Seuls 7 graphiques sont présentés car les 2 entraînements supplémentaires sont réalisés en utilisant une deuxièmement fois une conĄguration déjà présentée. On précise que pour deux entraînements réalisés avec des conĄgurations identiques, il nŠy a pas de différence visible dans les récompenses. Pour chaque conĄguration, le graphique supérieur présente lŠévolution des récompenses par transition en fonction du nombre de cycles dŠapprentissage. Cela permet de visualiser pour chaque cycle la répartition des récompenses données aux transitions simulées pendant ce cycle. Le premier et le dernier quartile des récompenses sont représentés par un trait noir et la médiane par un point orange. Ces informations permettent de lire la borne inférieure, la borne supérieure et la répartition par quartile des récompenses pour chaque cycle. Pour chaque entraînement qui commence avec un réseau non entraîné on observe deux phases au cours de lŠapprentissage. La première phase sŠétend environ du premier au 300ème cycle, et correspond à une augmentation rapide de la récompense pour les 3/4 des transitions. Cette phase nŠest pas observée lorsque que lŠon réalise un ré-entraînement avec des perturbations. La deuxièmement phase sŠétend du 300ème cycle à la Ąn de lŠapprentissage, elle correspond à une évolution beaucoup plus lente des récompenses.

  Cette opération a uniquement été effectuée pour le mouvement nommé c0_15. CŠest le même mouvement qui a été utilisé pour faire lŠapproximation avec 8 points de contrôle utilisée pour obtenir les réseaux R1, R1d et R1p.Nous avons commencé par réaliser lŠoptimisation de la position des points pour un nombre de points de contrôle Ąxe avec la méthode présentée dans la section 3.3.2. Cette optimisation a été réalisée pour 4, 5, 6, 7, 8, 9, 10 et 21 points de contrôle. Nous avons rassemblé dans la Table4.1 lŠerreur quadratique moyenne des approximations en fonction du nombre de points de contrôle pour chaque degré de liberté.Dans cette table, pour chaque degré de liberté, nous avons marqué avec une case verte le nombre optimal de points de contrôle utilisés. Cet optimum a été choisi en utilisant la liste des critères suivants : Ů La valeur de lŠerreur quadratique moyenne ; Ů Le nombre de points de contrôle ; Ů LŠéloignement des points de contrôle par rapport à lŠordonnée ; Ů Le respect de lŠallure générale de la trajectoire ; Ů La validité des critères pour les deux côtés.Les trajectoires approximées optimales comparées aux données brutes sont visibles dans laFigure 4.2. On y voit aussi le positionnement des points de contrôle (points verts) et leur poids (taille des points). En tout, 128 points de contrôle sont nécessaires pour représenter le mouvement de marche de notre sujet. Cela représente 387 paramètres car il faut 3 paramètres par point de contrôle plus les deux paramètres qui représentent le déplacement global du sujet dans le plan horizontal et le paramètre qui indique la durée du cycle. Dans les données brutes environ 200 valeurs étaient nécessaires pour représenter chaque trajectoire. Donc au total 4200 Degré de liberté/Nb.

  Toutes les références saines (d) Toutes les références saines avec leurs versions déphasées (e) Curriculum sur R1 (f) Curriculum sur R7d (g) R1_c1

Figure 4 . 1 Ű

 41 Figure 4.1 Ű Récompenses pour chaque entraînement Graphique supérieur : évolution au cours des cycles de la répartition des récompenses par transition ; Graphique centrale : récompenses par transition en fonction du ϕ de départ ; Graphique inférieur : récompenses par transition en fonction de la direction de départ.

( a )

 a Rot. cor. du bassin (b) Rot. trans. du bassin (c) Rot. sag. du bassin (d) Pos. x du bassin (e) Pos. y du bassin (f) Pos. z du bassin (g) Rot. cor. du HAT (h) Rot. trans. du HAT (i) Rot. sag. du HAT (j) Abd. de la hanche g. (k) Abd. de la hanche d. (l) Rot. de la hanche g. (m) Rot. de la hanche d. (n) Flex. de la hanche g. (o) Flex. de la hanche d.(p) Flex. du genou g. (q) Flex. du genou d.

Figure 4 . 2 Ű

 42 Figure 4.2 Ű Trajectoires de référence et leur approximation pour le nombre optimal de points de contrôle.

( a )

 a Rot. cor. du bassin (b) Rot. trans. du bassin (c) Rot. sag. du bassin (d) Pos. y du bassin (e) Rot. cor. du HAT (f) Rot. trans. du HAT (g) Rot. sag. du HAT (h) Abd. de la hanche g. (i) Abd. de la hanche d. (j) Rot. de la hanche g. (k) Rot. de la hanche d. (l) Flex. de la hanche g. (m) Flex. de la hanche d. (n) Flex. du genou g. (o) Flex. du genou d. (p) Flex. chev. g. (q) Flex. chev. d. (r) Flex. chev. g. (s) Flex. chev. d.

Figure 4 . 4 Ű

 44 Figure 4.4 Ű Trajectoires de référence et simulées avec la conĄguration R1p

Figure 4 .

 4 Figure 4.5 Ű Résultats des forces de réaction au sol

( a )

 a Rot. cor. du bassin (b) Rot. trans. du bassin (c) Rot. sag. du bassin (d) Pos. y du bassin (e) Rot. cor. du HAT (f) Rot. trans. du HAT (g) Rot. sag. du HAT (h) Abd. de la hanche g. (i) Abd. de la hanche d. (j) Rot. de la hanche g. (k) Rot. de la hanche d. (l) Flex. de la hanche g. (m) Flex. de la hanche d. (n) Flex. du genou g. (o) Flex. du genou d.

Figure 4 .

 4 Figure 4.6 Ű Trajectoires de référence c1, simulées avec la conĄguration R1c1

( a )

 a Rot. cor. du bassin (b) Rot. trans. du bassin (c) Rot. sag. du bassin (d) Pos. y du bassin (e) Rot. cor. du HAT (f) Rot. trans. du HAT (g) Rot. sag. du HAT (h) Abd. de la hanche g. (i) Abd. de la hanche d. (j) Rot. de la hanche g. (k) Rot. de la hanche d. (l) Flex. de la hanche g. (m) Flex. de la hanche d. (n) Flex. du genou g. (o) Flex. du genou d.

Figure 4 . 10 Ű

 410 Figure 4.10 Ű Comparaison des mouvements simulés avec CMA4, c0 et c1 En bleu, les trajectoires du mouvement CMA4 pendant le 15ème cycle ; en vert, les trajectoires pendant le 15ème cycle des mouvements c0 simulés ; en rouge, les trajectoires pendant le 15ème cycle des mouvements c1 simulés.

( a )

 a Rot. cor. du bassin (b) Rot. trans. du bassin (c) Rot. sag. du bassin (d) Pos. y du bassin (e) Rot. cor. du HAT (f) Rot. trans. du HAT (g) Rot. sag. du HAT (h) Abd. de la hanche g. (i) Abd. de la hanche d. (j) Rot. de la hanche g. (k) Rot. de la hanche d. (l) Flex. de la hanche g. (m) Flex. de la hanche d. (n) Flex. du genou g. (o) Flex. du genou d.

Figure 4 .

 4 Figure 4.11 Ű Comparaison des mouvements simulés entre CMA5, c0 et c1 En bleu, les trajectoires du mouvement CMA5 pendant le 15ème cycle ; en vert, les trajectoires pendant le 15ème cycle des mouvements c0 simulés ; en rouge, les trajectoires pendant le 15ème cycle des mouvements c1 simulés.

end for Algorithm 3 Intégration pour obtenir les vitesses

  Cette méthode réalise le calcul de dynamique directe rapidement car elle a une complexité en O(N B ) avec N B le nombre de corps rigides, généralement strictement plus petit que le nombre de degrés de liberté articulaires. Cet algorithme est appelé algorithme de Featherstone. Il est

	Input: qi (t)
	Output: qi (t + dt)
	for i = 1 . . . N B do
	qi (t + dt) = qi (t) + qi * dt
	end for
	implémenté dans la plupart des moteurs physiques qui utilisent une représentation en coordonnée
	généralisée. Après avoir calculé lŠaccélération, les vitesses et positions sont simplement calculées
	par intégration numérique.

Le squelette étant en interaction avec son environnement, des collisions ont lieu et ont une inĆuence sur le mouvement.

  Le modèle musculaire a pour rôle de transformer une excitation musculaire en un moment articulaire. LŠexcitation musculaire est liée à lŠactivation musculaire par une équation différentielle non linéaire du premier ordre. LŠactivation musculaire est liée à la force développée par le muscle par une autre équation différentielle non linéaire du premier ordre.

	constantes. Dans la suite nous présentons ces deux modélisations. la dynamique de contraction. La force musculaire quŠun muscle est capable de générer dépend si un moment est réalisable en fonction de la conĄguration du squelette. Cette méthode est
	Le modèle de Hunt-Crossley a été utilisé dans des simulations en dynamique directe [SG13, de sa longueur, de sa vitesse dŠallongement et de lŠangle de pennation. Les relations entre la proposée par Jiang et Liu [JL18, JVDL19]. Ils proposent dŠutiliser un réseau de neurones pour
	SG15] et cŠest également le cas pour le modèle de Kelvin-Voigt [GW96]. LŠinconvénient majeur Modèle musculaire et limites articulaires force et la longueur sont données par des courbes force-longueur et force-vitesse. Ce modèle est remplir cette fonction. Ils choisissent un réseau neuronal convolutif entraîné par renfoncement.
	de ces deux méthodes est la discontinuité de la force de contact au moment du contact. En effet, comme la dérivé de la profondeur dŠinterpénétration est forcement non nulle au moment du contact, on observe une discontinuité dans la force de contact. Des travaux ont donc cherché à lisser les forces de contact pour rendre les modèles plus stables. Millard et al. [MK15] proposent de calculer différemment la profondeur dŠinterpénétration aĄn de réduire le saut de discontinuité. Il calcule la profondeur de pénétration à partir de lŠinteraction entre un disque Ąxé sur le pied et le sol. Le modèle a été évalué en comparant les forces obtenues avec des données cinématiques aux forces acquises expérimentalement. Ils montrent une bonne précision, à part au moment du décollage du pied. Une autre méthode celui proposé par Thelen [The03] qui est une amélioration du modèle de Hill [ZW90]. Cela permet une évaluation très rapide et lŠentraînement est réalisable par renfoncement car il JusquŠà présent, nous avons décrit les articulations comme étant actives, cŠest-à-dire quŠelles Une fois que les forces musculaires sont établies, il est possible de déterminer les moments est possible de générer un très grand nombre de conĄgurations et de les évaluer avec le modèle sont capables de produire un moment. Mais ce nŠest pas le cas en réalité, toutes les articulations articulaires à partir de la position des liaisons entre les muscles et les os. Ce calcul est fait en musculaire. Leurs travaux permettent de produire en simulation directe des mouvements dont sont passives. CŠest la contraction des muscles et lŠeffet de bras de levier qui est la source dŠun utilisant la mécanique des bras de levier. les activations musculaires sont proches de celles obtenues avec un modèle musculaire. moment au niveau dŠune articulation. Les caractéristiques dŠune articulation dépendent des Les modèles musculaires sont utilisés dans plusieurs simulations directes. Différents travaux Les différentes modélisations présentées jusquŠici sont très générales, elles sont adaptables muscles qui la mettent en mouvement. ont pour objectif de montrer que les réĆexes musculaires jouent un rôle important dans la pour pratiquement nŠimporte quelle créature réelle ou Ąctive. Nous allons voir dans la section Nous allons brièvement décrire les modèles musculaires les plus utilisés. Puis, nous verrons LPLL19, CPPD17]. articulaires. objectif de montrer quŠil est possible dŠobtenir des activations proches de la réalité [LPKL14, des méthodes permettant de les approximer avec un modèle basé uniquement sur les moments marche [GH10, SG15, OGHD19]. DŠautres travaux utilisant des modèles musculaires ont pour suivante comment rendre le modèle spéciĄque à un sujet en particulier.
	proposée est la modulation des coefficients κ et δ avec des sigmoides [BSF10]. Cette méthode Le modèle musculaire à plusieurs conséquences sur le modèle articulaire. Les conĄgurations
	permet dŠassurer de la continuité dans les forces. accessibles par les articulations sont bornées, les moments quŠelles peuvent produire sont limités
	Une autre stratégie de modulation, utilisée aussi bien avec les méthodes de Hunt-Crossley et et il est possible que des forces passives sŠappliquent même si les muscles ne sont pas activés.
	de Kelvin-Voigt, est de moduler les coefficients par le volume dŠinterpénétration. Des sphères et Des modèles imitant les conséquences du modèle musculaire sont donc couramment utilisés aĄn
	des ellipsoïdes ont par exemple été utilisés par Brown et McPhee [BM17, BM18]. Ces modèles dŠobtenir des simulations plus réalistes sans avoir le surcoût de calcul lié au modèle musculaire.
	sont présumés être suffisamment stables et précis pour réaliser des simulations directes, mais ils La plus facile à mettre en place est la limitation des moments qui peuvent être générés par
	nŠont pas été testé. Avec lŠutilisation de données cinématiques la trajectoire du centre de pression les articulations [TET12]. Plusieurs travaux ont montré que les squelettes avec des limites de
	est estimée. Lopes et al. [LNAS15] proposent un modèle basé sur des ellipsoïdes, testé sur de la moments irréalistes produisent souvent des mouvements pas naturels, à moins dŠêtre guidés par
	dynamique directe. Il a montré des temps de calcul similaire mais plus de stabilité quŠun modèle un mouvement de référence [PALV18, MAP * 19]. La facilité dŠobtenir un mouvement naturel avec
	visco-élastique classique. des limites de moments réalistes a été conĄrmée par au moins deux travaux distincts [JVDL19,
	Le calcul des forces tangentielles est fait de différentes manières. La plupart du temps, le modèle de friction de Coulomb est utilisé [ST96]. Mais un modèle changeant en fonction de muscle XLKV20]. tendon Une deuxième brique est lŠajout de bornes sur les conĄgurations des articulations. CŠest
	lŠétat du contact, statique ou dynamique, peut aussi être utilisé. Le changement de modèle est conditionné par les forces de contact et les vitesses relatives [SG13, SG15]. LŠutilisation dŠun modèle de contact rigide en combinaison avec un maillage déformable rend le SimBiCon robuste aux perturbations et aux bruits [JK11]. Les segments du maillage sont modélisés comme des ressorts qui sŠopposent à la déformation des sommets et des arêtes. Les performances ne sont pas clairement établies. Mais comme on se rapproche dŠune modélisation a) Muscle F-L b) Muscle F-V plus difficile à mettre en place car les bornes dŠune articulation dépendent de la conĄguration c) Tendon des articulations voisines [JL18]. Il est possible de déĄnir ces limites dynamiques à partir du modèle musculaire [LPLL19]. De plus, il faut générer le moment permettant de faire respecter la contrainte. Une méthode similaire à celles utilisées pour calculer les forces de contact peut être employée. Dans ce cas, lŠutilisation dŠune méthode visco-élastique peut permettre de modéliser Force Normalisé en partie les forces passives.
	par éléments Ąnis (résolution dŠéquations différentielles) elles sont probablement moins bonnes que pour les méthodes présentées précédemment. Par contre, elle permettent de fournir des Longeur Normalisée Il est aussi possible de trouver un modèle intermédiaire entre les contraintes relativement Vitesse Normalisée Tension du tendon simples et la modélisation avec deux équations différentielles non linéaires du premier ordre.
	résultats avec des formes complexes. Figure 2.9 Ű Modèles musculaires de Thelen [The03] Millard et al. [MEHM19] proposent un modèle qui permet de calculer le moment produit par
	DŠautres contraintes peuvent venir inĆuencer les mouvements. Il sŠagit des contraintes in-chaque muscle avec un modèle continue et dérivable. Le calcul du moment est basé sur lŠévalua-
	ternes qui sŠappliquent sur les articulations et sont le résultat de la modélisation de lŠeffet dŠunités La première équation modélise la communication entre les nerfs et le muscle. Elle traduit le tion de courbes de Bézier. Ce modèle a été utilisé pour prédire des mouvements mais seulement 2) musclo-tendineuses. Elles sont implicites lorsque lŠutilisation dŠun modèle musculaire limite les sur des modèles 2D.
	Avec z et ż respectivement les profondeurs et vitesses de pénétration. κ et δ sont des mouvements possibles, et explicites quand les limites sont déĄnies pour chaque articulation. Une autre stratégie de réduction de la complexité du problème est dŠêtre capable de dire

comportement suivant. Plus lŠactivation est élevée plus il est difficile de la faire augmenter et plus lŠactivation diminue, plus il est difficile de la faire diminuer. La deuxième équation modélise

  de réaliser lŠarbitrage en respectant des métriques [DAP08]. EnĄn, comme cŠest le cas pour la combinaison des moments, il est aussi possible de combiner des modiĄcations sur les trajectoires de référence [CPB15]. Pour la combinaison successive, en cherche à favoriser différents contrôleurs au cours du temps. CŠest généralement en fonction de lŠétat de la simulation que le contrôleur est choisi. On trouve chez Carensac et al. [CPB15], un contrôleur dŠéquilibre qui est activé seulement quand le modèle perd lŠéquilibre. Cette méthode est aussi utilisée avec les réseaux de neurones [CMM * 18]. Chentanez et al. proposent dŠutiliser deux réseaux, un permettant le suivi dŠun mouvement de référence et le deuxième permettant de retrouver lŠéquilibre. LŠutilisation de graphe de contrôle permet aussi de combinaison successive de différents contrôleurs. Elle est principalement utilisée

	Pour la combinaison simultanée, on cherche à combiner pour un pas de temps les contri-
	butions de contrôleurs qui ont des objectifs différents. Par exemple, le suivi dŠun mouvement
	de référence et la compensation de forces extérieures. Une méthode facile à mettre en place
	est de sommer les différentes contributions [GPV12]. Cependant, cela peut aboutir à un ré-

LŠutilisation simultanée de différents contrôleurs pour contrôler un même squelette nŠest pas évidente. En effet, lŠaddition de leur contribution peut aboutir à un résultat qui ne satisfait aucun des problèmes. On peut distinguer deux types de combinaison de contrôleur, la combinaison simultanée et la combinaison successive. sultat non-satisfaisant. Il est aussi possible de réaliser une interpolation entre les différentes commandes [CBV09]. Cette interpolation pouvant favoriser certains contrôleurs, une étape dŠop-timisation peut permettre pour combiner dans une même simulation différent mouvements [LVY16] ou déclencher des actions permettant au modèle de se relever [HET * 14].

  La plupart des contrôleurs utilisés dans la littérature ont une réponse proportionnelle à une quantité mesurée ou proportionnelle à la dérivée dans le temps de la quantité mesurée. Cette proportion est représentée par un gain, plus il est important plus la réaction sera importante. Pour trouver les gains à utiliser pour faire du suivi de mouvement, il est nécessaire dŠétablir un espace de recherche. CŠest ce que propose Carensac et al. [CPB18] en donnant en fonction de la fréquence de simulation et des articulations un intervalle de valeur pour les gains. Il faut aussi prendre en compte le mouvement que lŠon cherche à produire et lŠarticulation contrôlée, car pour produire un mouvement soumis à une résistance, il est nécessaire dŠutiliser des gains plus élevés [LYvdP * 10]. Pour les contrôleurs PD stables, un seul gain nécessite dŠêtre optimisé [TLT11].

Dans le cas des contrôleurs dŠéquilibre et de vitesse, lŠutilisation de contrôleurs PD stables nŠest pas possible, car les problèmes de planiĄcation ne peuvent pas être résolus explicitement. Chaque gain doit donc être optimisé indépendamment.

Les trajectoires paramétriques

Des trajectoires paramétriques sont utilisées dans la plupart des contrôleurs. Par exemple pour décrire les trajectoires cibles pour les articulations, on trouve des fonctions linéaires continues par morceaux [LYvdP * 10] et des splines [HET * 14]. On note aussi, lŠutilisation de séquences de polynômes cubiques pour décrire la trajectoire du pied

[START_REF] Winkler | Gait and Trajectory Optimization for Legged Systems Through Phase-Based End-Effector Parameterization[END_REF]

. Pour déĄnir les vitesses cibles, on observe lŠutilisation de fonctions linéaires continues par morceaux

[START_REF] Kwon | Control systems for human running using an inverted pendulum model and a reference motion capture sequence[END_REF]

, de points interpolés par des splines de Catmull-Rom

[START_REF] Carensac | Real-time gait control for partially immersed bipeds[END_REF]

et des splines cubiques

[START_REF] Rabbani | Anticipatory balance control[END_REF]

. La recherche des valeurs optimales pour les paramètres permettant de décrire les trajectoires est dŠautant plus complexe que le nombre de trajectoires augmente. La solution optimale sera donc plus difficile à obtenir pour lŠensemble des trajectoires des articulations que pour la trajectoire de la vitesse cible.

  Mais des métriques plus complexes vont pouvoir donner un poids moins important au pas de temps simulé pendant la chute. On peut utiliser des mesures de lŠéloignement de la tête[START_REF] Bergamin | DReCon : Data-driven responsive control of physics-based characters[END_REF] ou de la racine [CMM * 18] par rapport au mouvement de référence. Une autre métrique est de mesurer la position du centre de masse par rapport aux pieds [LYvdP* 10] ou au sol, cela permet de vériĄer si le centre de masse reste approximativement au-dessus du polygone de support. LorsquŠaucun mouvement de référence nŠest utilisé, la récompense peut être basée sur lŠorientation vers le haut du torse et de la tête et le déplacement global vers lŠavant[START_REF] Yu | Learning symmetric and low-energy locomotion[END_REF].

	Comportement
	Conservation de lŠéquilibre
	Une autre métrique très importante est la conversation de lŠéquilibre. Ce comportement peut
	être favorisé en pénalisant la chute ou en récompensant le maintien de lŠéquilibre. La pénalisation
	de la chute peut être mise en place en comptant le nombre de pas de temps manquants pour
	arriver à la Ąn de la simulation [LPKL14]. LŠajout de pénalité si des membres autres que les

caractéristique que les simulations cherchent souvent est la ressemblance avec un mouvement de référence. Pour mesurer cette ressemblance, il est possible dŠutiliser plusieurs métriques.

On peut comparer la distance entre les conĄgurations des articulations en utilisant la somme des différences dŠorientation. Avec les quaternions, cette mesure peut être obtenue très facilement [LYvdP

* 10]

. Une autre méthode consiste à mesurer la somme des distances entre des nuages de points

[START_REF] Lee | Locomotion control for many-muscle humanoids[END_REF]

. Ces mesures statiques ne permettent pas de sŠassurer de la ressemblance cinématique. Un terme mesurant la différence de vitesse angulaire est très souvent ajouté au calcul. La comparaison de la dynamique du centre de gravité permet de quantiĄer la ressemblance statique et cinématique avec un calcul simple

[START_REF] Kwon | Fast and Ćexible multilegged locomotion using learned centroidal dynamics[END_REF]

. La mesure de la position des effecteurs relativement au centre de masse est aussi utilisée

[START_REF] Peng | DeepMimic : Example-guided deep reinforcement learning of physics-based character skills[END_REF]

. Les mesures basées sur la comparaison des angles donnent une information sur la ressemblance au niveau de la conĄguration locale. Elles doivent donc être combinées avec des mesures sur la racine ou le centre de masse pour obtenir une information supplémentaire sur la ressemblance au niveau global. Pour la racine, on trouve des mesures de la différence dŠorientation, de vitesse, de vitesse angulaire [CMM * 18]. Pour le centre de masse, les mesures dŠorientation nŠétant pas possible, des différences de position [PALV18] et de vitesse [BCHR19] sont utilisées. LŠutilisation de mesures sur la posture est aussi possible [XLKV20]. pieds touchent le sol a aussi été proposé [HET * 14]. Pour récompenser du maintien de lŠéquilibre, lŠajout de récompenses pour chaque pas de temps simulé est une méthode simple à mettre en place [XLKV20]. naturel Les comportements peu naturels sont pénalisés pour éviter dŠavoir un mouvement robotique. Parmi ces comportements, on trouve des comportements précis comme : le dépassement des limites articulaires [CMM * 18], le glissement des pieds [LZCV20], les contacts des corps avec dŠautres corps que le sol [CMM * 18] ou lŠordre de contact des corps [KLV20]. On trouve aussi des mesures plus générales, comme la régularité des trajectoires articulaires [HET * 14] et la minimisation de la dépense énergétique totale [LYvdP * 10] ou rapportée à la distance parcourue [LPKL14]. La récompense de la symétrie [YTL18] ou dŠun certain degré de symétrie [ALX * 19] dans le mouvement peut être utilisé pour plus ou moins favoriser les mouvements pathologiques.

La magnitude des forces de contact est aussi une métrique importante pour avoir un mouvement naturel

[START_REF] Lee | Locomotion control for many-muscle humanoids[END_REF]

. EnĄn, des métriques très précises peuvent être utilisées quand on recherche des mouvements avec des caractéristiques connues : durée, longueur et cadence des pas et durée des contacts

[START_REF] Kwon | Fast and Ćexible multilegged locomotion using learned centroidal dynamics[END_REF]

. Ces métriques peuvent aussi être utilisées pour remplir la mission de marcher sur des emplacements donnés

[START_REF] Xie | ALL-STEPS : Curriculum-driven learning of stepping stone skills[END_REF]

.

Combinaison des récompenses

Les récompenses peuvent être combinées en réalisant une somme pondérée des différents termes

[START_REF] Lee | Locomotion control for many-muscle humanoids[END_REF]

. Les poids attribués à chaque terme sont généralement utilisés pour favoriser le suivi du mouvement de référence. Leur choix est difficile car il nŠest pas possible de connaître lŠeffet exact de leurs changements sans refaire lŠoptimisation. De meilleurs résultats sont obtenus en ajoutant des fonctions dŠactivation adaptée à chaque mesure. On retrouve souvent des Gaussiennes

[START_REF] Peng | DeepMimic : Example-guided deep reinforcement learning of physics-based character skills[END_REF]

, des fonctions de Heaviside [CMM * 18], ou des unité de rectiĄcation linéaire

[START_REF] Bergamin | DReCon : Data-driven responsive control of physics-based characters[END_REF]

.

  plupart des fonctions de coût nŠétant pas linéairement dépendantes des paramètres, les recherches sont faites avec des méthodes dŠoptimisation variées. Si les modiĄcations dŠune trajectoire sont représentées par un faible nombre de paramètres, une approche utilisant le CMA-ES

peut être utilisée

[START_REF] Hansen | The CMA Evolution Strategy : A Comparing Review[END_REF]

. CŠest le cas de Lee et al.

[START_REF] Lee | Locomotion control for many-muscle humanoids[END_REF]

, ils lŠutilisent pour optimiser 18 paramètres. Une autre approche est dŠutiliser une optimisation séquentielle des paramètres en commençant par ceux du début de la trajectoire

[START_REF] Kwon | Momentum-mapped inverted pendulum models for controlling dynamic human motions[END_REF]

. Cela permet dŠéviter certains minimums locaux. Le CMA est couramment utilisé hors-ligne, mais il peut aussi être utilisé en ligne avec un nombre dŠitérations limité

[START_REF] Kwon | Fast and Ćexible multilegged locomotion using learned centroidal dynamics[END_REF]

.

Dans le cas de lŠoptimisation dŠun plus grand nombre de paramètres, la méthode "primaldual" du point intérieur est utilisée

[START_REF] Wächter | On the implementation of an interior-point Ąlter line-search algorithm for large-scale nonlinear programming[END_REF]

. Elle se base sur des évaluations analytiques ou numériques de la hessienne. Elle est utilisée par exemple pour calculer une trajectoire optimale sous contraintes

[START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF]

sans réaliser dŠapproximations de la fonction.

Une autre approche utilisée pour optimiser des trajectoires est le Ąltrage de particules, aussi appelée méthode de Monte-Carlo séquentielle

[START_REF] Doucet | On sequential Monte Carlo sampling methods for Bayesian Ąltering[END_REF]

. Cette méthode permet dŠoptimiser en ligne la stratégie de contrôle dans le futur proche [HET

* 14]

.

Entraînement de réseaux de neurones

La méthode la plus efficace à ce jour est adoptée dans tous les travaux récents. CŠest la "Proximal Policy Optimisation" [SWD * 17], elle est efficace, car elle permet dŠutiliser le plus possible dŠinformations issues dŠun lot de simulations tout en évitant le surentraînement.

Dans les travaux les plus récents, lŠoptimisation est combinée aux "curriculum learning".

Cette méthode consiste à partir dŠun problème simple et à le complexiĄer une fois que lŠagent est capable de le résoudre. Chentanez propose dŠutiliser cette méthode aĄn de pouvoir entrainer un seul réseau à produire plusieurs mouvements différents [CMM

* 18]

. Une comparaison entre plusieurs approche permettant de réaliser le "curriculum learning" a été réalisé par Xie et al.

[START_REF] Xie | ALL-STEPS : Curriculum-driven learning of stepping stone skills[END_REF]

, il a été appliqué sur la marche à des emplacements donnés.

Une autre méthode utilisée aĄn dŠaugmenter la quantité de données dŠentrainement est proposée par Hwang et al.

[START_REF] Hwang | Real-time locomotion controller using an inverted-pendulum-based abstract model[END_REF]

. Elle permet de doubler la quantité de données sans réaliser de simulation supplémentaire, en utilisant le miroir des données par rapport au plan saggital.

  La simulation prédictive consiste à proposer un nouveau mouvement à partir du modèle du sujet et dŠune modélisation dŠune situation. Cette situation peut être lŠévolution de la condition

du sujet simulé ou de son environnement. Les simulations prédictives présentent un intérêt si elles sont réalistes et personnalisées. Dans la littérature, deux approches majoritaires ont émergé aĄn de répondre à cette problématique : les approches implicites et les approches explicites. Les approches implicites se basent sur la résolution dŠun problème de contrôle optimal. Les équations de la dynamique auxquelles est soumis le modèle sont transformées en un système de contraintes.

Une fonction de coût est utilisée aĄn de déĄnir un objectif. EnĄn, la résolution du problème permet dŠobtenir le mouvement et les commandes nécessaires à la production du mouvement sur lŠensemble de lŠintervalle de résolution. Pour les approches explicites, les équations de la dynamique sont résolues par intégration, il nŠy a donc pas dŠintervalle de résolution. Des contrôleurs produisent des signaux (excitations musculaires ou moments angulaires) qui contrôlent le modèle au cours de la simulation. Les contrôleurs sont optimisés pour que le mouvement produit tende vers un objectif.

Optimisation des trajectoires de contrôle Lee

  Pour chacun, une commande est appliquée sur le modèle biomécanique du sujet puis lŠintégration temporelle est réalisée en utilisant les équations de la dynamique. Les commandes sont produites par un contrôleur de mouvement. La plupart du temps le contrôleur génère les commandes en fonction de lŠétat courant de la simulation, cŠest un contrôle en boucle fermée. Rarement, lorsque lŠinteraction avec lŠenvironnement nŠest pas critique, par exemple pour de la simulation de nage[START_REF] Lee | Realistic biomechanical simulation and control of human swimming[END_REF], le contrôle peut être réalisé en boucle ouverte. Les différents travaux réalisés en approche explicite directe se distinguent par leur contrôleur de mouvement. et al.[START_REF] Lee | Locomotion control for many-muscle humanoids[END_REF] ont proposé une méthode utilisant lŠoptimisation des paramètres dŠun contrôleur et permettant de réaliser des prédictions de mouvement avec comme objectif dŠéviter la douleur, dŠeffectuer une tâche, de compenser une faiblesse musculaire ou la dislocation dŠune articulation. La dynamique dŠactivation musculaire nŠest pas simulée dans cette méthode.De nombreux travaux utilisent les réseaux de neurones pour contrôler un modèle biomécanique. Au moins un réseau de neurones est utilisé dans le processus de génération de la commande. Lee et al.[START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF] utilisent deux réseaux de neurones, lŠun pour la commande articulaire, lŠautre pour les commandes musculaires. Les prédictions proposées simulent le cas du port dŠune prothèse aussi que plusieurs pathologies. Dans ces travaux, les prédictions sont Le contrôleur présenté par Lee et al.[START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF] est également robuste aux changements apportés au mouvement de référence. Ils ont appliqué des modiĄcations aux trajectoires angulaires aĄn de les rendre conformes aux contraintes. Les contraintes prennent la forme de limites articulaires imposées par les muscles. Leur méthode utilise lŠoptimisation statique des trajectoires du mouvement de référence. LŠobjectif est de trouver le mouvement qui respecte les contraintes, tout en étant le plus proche possible du mouvement de référence. Cette méthode leur a permis de simuler quatre types de mouvements pathologiques, dont la démarche du genou raide, mais aucune information nŠest donnée sur la sévérité de ces pathologies. LŠinconvénient de lŠoptimisation statique de la trajectoire de référence est que la stabilité du mouvement produit par la simulation nŠest pas prise en compte.

Armstrong et Green

[START_REF] Armstrong | The dynamics of articulated rigid bodies for purposes of animation[END_REF]

proposent en 1985 un méthode permettant de produire des mouvements humains physiquement réalistes. CŠest une approche basée uniquement sur un modèle squelettique, les muscles ne sont pas pris en compte. Ils produisent un mouvement de plongeon pour un squelette composé de 12 articulations. Komura et al.

[START_REF] Komura | Creating and retargetting motion by the musculoskeletal human body model[END_REF]

introduisent une méthode pour produire ou recentrer un mouvement en utilisant un modèle musculosquelettique. Cela leur permet de proposer des prédictions de lŠeffet de la fatigue musculaire sur le mouvement. La méthode est utilisée pour faire de lŠinterpolation de mouvement, corriger des résultats de cinématique inverse et modiĄer des mouvements existants.

par exemple lŠadaptation aux changements de direction [PALV18, BCHR19], lŠadaptation aux perturbations externes

[START_REF] Bergamin | DReCon : Data-driven responsive control of physics-based characters[END_REF]

et lŠadaptation aux changements du modèle

[START_REF] Lee | Scalable muscle-actuated human simulation and control[END_REF]

.

Optimisation des paramètres du contrôleur

Le contrôle basé sur le réĆexe musculaire est une méthode introduite par Geyer et al. [GH10]. Un modèle de contrôle en 2D a été développé par Dorn et al. [DWHD15], basé sur le réĆexe musculaire, et a permis de prédire des mouvements de marche sur plan incliné et en portant des charges. Ils ont effectué des comparaisons sur la cinématique, la dynamique, les coordinations musculaires et lŠénergie. Song et al. [SG18] produisent des prédictions sur un modèle 3D en utilisant un contrôleur basé sur les réĆexes musculaire et la rétro-action. DŠautres résultats sur des modèles 3D ont aussi été présentés par Ong [OGHD19] et Geijtenbeek et al. [Gei19].

Ils parviennent à prédire des marches à différentes vitesses et à différents niveaux de faiblesse ou de contracture musculaire. Geijtenbeek a conçu un logiciel nommé SCONE

[START_REF] Geijtenbeek | SCONE : Open Source Software for Predictive Simulation of Biological Motion[END_REF]

, avec des objectifs similaires à ceux dŠOpenSim MOCO mais pour le modèle de réĆexe musculaire.

À savoir, être facile à utiliser, personnalisable et extensible, accélérant ainsi lŠutilisation des simulations pour comprendre le mouvement. Sun et al

[START_REF] Sun | Dynamic Simulation of Human Gait Model with Predictive Capability[END_REF]

proposent un contrôleur capable de prédire un mouvement de marche à partir des paramètres anthropomorphiques, des propriétés mécaniques des articulations, de la longueur des pas et de la vitesse du CDM. Cette prédiction est néanmoins limitée à un modèle en 2D.

Table 3 .

 3 1 Ű Moyenne et écart type de lŠerreur quadratique moyenne entre les données brutes et lŠapproximation par une NURBS périodique avec 8 points de contrôle, pour différents degrés de liberté, en radian.

Table 3 .

 3 Si ce nŠest pas le cas, on supprime lŠélément en question. Maintenant, que les données sont prêtes, nous déterminons automatiquement les différentes phases correspondant à la Ągure 3.15 pour chacune des deux jambes. Et pour chaque cycle nous réalisons automatiquement les mesures présentées dans la section 3.5.1.Pour chaque enregistrement, nous calculons aussi la moyenne et lŠécart-type des mesures.Aucune des mesures nŠest sensible à la direction de marche comme le montre la table 3.2 obtenue avec et sans variation de la direction de marche. De plus, les mesures effectuées sur les mouvements de référence ne sont pas sensibles aux valeurs de ϕ utilisé pour lŠinitialisation.

	Mesures	ϕ et direction	ϕ		Écarts
	%.1DA	11.0 (0.2)	7.1 (0.6)	10.9 (0.2)	7.1 (0.6)	0.0	0.0
	%.2DA	7.1 (0.6)	11.0 (0.2)	7.1 (0.6)	10.9 (0.2)	0.0	0.0
	%.A	56.7 (0.5)	61.4 (0.3)	56.7 (0.5)	61.4 (0.3)	0.0	0.0
	Moy.IB	4.5 (1.1)	4.5 (1.2)	0.0
	IC.FH	36.3 (0.5)	39.9 (0.4)	36.4 (0.5)	39.9 (0.4)	0.0	0.0
	Moy.V.FH	12.5 (0.3)	7.2 (0.2)	12.4 (0.3)	7.3 (0.2)	0.0	0.0
	Max.V.FH	36.3 (0.5)	40.1 (0.4)	36.3 (0.5)	40.1 (0.4)	0.0	0.0
	Max.V.AH	3.4 (0.3)	10.8 (0.3)	3.3 (0.3)	10.9 (0.3)	0.0	0.0
	Max.V.RH	10.7 (0.4)	8.5 (0.4)	10.8 (0.3)	8.4 (0.4)	0.1	-0.1
	Max.FG	64.3 (0.3)	69.1 (0.2)	64.4 (0.3)	69.1 (0.2)	0.0	0.0
	IC.FG	14.7 (0.4)	21.2 (0.3)	14.7 (0.4)	21.2 (0.3)	0.0	0.0
	Max.1DA.FG	26.4 (0.3)	25.9 (0.4)	26.3 (0.3)	25.9 (0.4)	0.0	0.0
	min.SA.FG	8.2 (0.6)	6.8 (0.2)	8.2 (0.6)	6.8 (0.2)	0.1	0.0
	Max.SA.FG	30.3 (0.3)	28.9 (0.6)	30.3 (0.3)	28.9 (0.6)	0.0	0.0
	Max.A.DFC	12.7 (0.3)	10.4 (0.6)	12.7 (0.3)	10.4 (0.6)	0.0	0.0
	Max.V.DFC	3.8 (0.4)	5.9 (0.5)	3.8 (0.4)	5.9 (0.5)	0.0	0.0
	Moy.SA.DFC	-13.5 (0.3)	-9.7 (0.3)	-13.5 (0.3)	-9.7 (0.3)	0.0	0.0
	Cadence	123.7 (0.6)	123.7 (0.6)	0.0
	Long. des pas	64.5 (1.1)	71.3 (0.5)	64.6 (1.1)	71.3 (0.5)	0.0	0.0
	Vitesse	1.40 (0.02)	1.40 (0.02)	0.00

3.1). Au cours de chaque simulation, les positions de marqueurs virtuellement placés aux extrémités avant et arrière du pied sont enregistrées. Pour notre analyse, contrairement à lŠisolation dŠun cycle de marche, il est nécessaire dŠavoir les événements de contact initial et de décollage pour chaque pas. On réalise donc une étape de synchronisation pour retirer les événements de décollage (resp. contact) isolé en début (resp. Ąn) dŠenregistrement. Pour réaliser la synchronisation, on détermine la fréquence moyenne des événements (F event ), puis on regarde si pour chaque événement on trouve lŠévénement complémentaire dans un intervalle de temps de 1 2Fevent . 2 Ű Comparaison entre les mouvements simulés avec une variation de ϕ et de la direction de marche et ceux avec seulement une variation de ϕ

Table 3 .

 3

	Mesures	R1		R1d		R1p		R7		R1d		R7dp
	%.1DA	0.2	0.6	0.5	0.3	0.5	0.6	0.5	0.2	0.5	0.5	0.7	0.4
	%.2DA	0.6	0.2	0.3	0.5	0.6	0.5	0.2	0.5	0.5	0.5	0.4	0.7
	%.A	0.5	0.3	0.4	0.5	0.6	0.6	0.3	0.6	0.6	0.6	0.6	0.9
	Moy.IB	1.2		0.6		1.4		4.3		1.8		1.0
	IC.FH	0.5	0.4	0.5	0.2	0.2	0.5	0.5	0.9	0.7	0.8	0.6	0.2
	Moy.V.FH	0.3	0.2	0.3	0.3	0.3	0.2	0.4	0.4	0.4	0.3	0.3	0.2
	Max.V.FH	0.5	0.4	0.3	0.2	0.2	0.5	0.4	0.5	0.6	1.0	0.6	0.2
	Max.V.AH	0.3	0.3	0.3	0.5	0.5	0.3	0.5	0.4	0.4	0.2	0.3	0.5
	Max.V.RH	0.3	0.4	0.4	0.5	0.2	0.3	0.6	0.8	0.9	0.4	0.5	0.3
	Max.FG	0.3	0.2	0.5	0.5	0.6	0.3	0.8	0.6	0.4	0.4	0.6	0.4
	IC.FG	0.4	0.3	0.3	0.3	0.4	0.3	0.4	0.6	0.3	0.6	0.8	0.2
	Max.1DA.FG	0.3	0.4	0.3	0.3	0.5	0.2	0.7	0.5	0.8	0.5	0.6	0.4
	min.SA.FG	0.6	0.2	0.2	0.2	0.3	0.3	0.4	0.2	0.4	0.5	0.3	0.5
	Max.SA.FG	0.3	0.6	0.5	0.5	0.2	0.4	0.8	0.5	1.0	0.5	0.4	0.8
	Max.A.DFC	0.3	0.6	0.4	0.6	0.3	1.0	0.7	0.6	0.5	0.6	1.0	0.3
	Max.V.DFC	0.4	0.5	0.6	0.4	0.4	0.8	0.5	0.7	0.5	0.6	1.1	0.4
	Moy.SA.DFC	0.3	0.3	0.2	0.4	0.4	0.5	0.3	0.5	0.5	0.2	0.5	0.2
	Cadence	0.6		0.7		0.5		0.9		0.6		0.7
	Long. des pas	1.1	0.5	1.2	1.0	0.9	0.5	0.8	1.2	0.6	1.6	0.7	1.3
	Vitesse	0.02		0.02		0.01		0.02		0.02		0.02
			Table 3.4 Ű Précision des différentes conĄgurations

3 Ű Comparaison des mouvements de référence de la condition c0 avec ceux de la condition c1

Pour la cadence, cŠest une valeur de 10 pas.s -1 . Pour la longueur des pas, une valeur de 15 cm.

Et enĄn pour la vitesse, une valeur de 0.20 m.s -1 .

Table 3 .

 3 5 Ű Exactitude des différentes conĄgurations La table 3.4 montre que la dispersion des mesures au cours de la simulation de plusieurs cycles de marche est bien inférieure à la dispersion observée entre les mesures réalisées sur les mouvements de référence. On observe aussi quŠaucune des méthodes dŠentraînement ne produit des réseaux qui présentent une amélioration ou une dégradation de la précision. La seule valeur notable est lŠécart-type de lŠinclinaison moyenne du bassin pour le réseau R7, mais elle reste tout de même inférieure à la valeur seuil de 5 • . La table3.5 liste pour chaque mesure et chaque réseau la différence entre la moyenne des valeurs observées et la valeur mesurée sur le mouvement de référence. On observe que pour chaque réseau, nous avons entre 8 et 11 différences qui sont supérieures au seuil établi. Nous avons aussi calculé la somme des valeurs absolues des différences pour les mesures angulaires.

Table 3

 3 table3.6 présente les résultats obtenus. On observe des valeurs supérieures aux valeurs mesurées pour la précision, on ne peut donc pas conclure que le processus dŠentraînement est par-

	Mesures	R1		R7d
	%.1DA	-1.3	0.3	0.1	-0.0
	%.2DA	0.3	-1.3	-0.0	0.1
	%.A	-0.6	-0.4	-0.4	0.4
	Moy.IB	1.0		1.2
	IC.FH	0.1	-2.5	-1.3	0.3
	Moy.V.FH	0.1	2.9	1.0	3.0
	Max.V.FH	0.1	-2.8	0.4	0.6
	Max.V.AH	-0.7	1.1	-0.7	-1.7
	Max.V.RH	-1.4	-3.5	0.2	0.8
	Max.FG	-0.3	-1.8	-4.9	0.1
	IC.FG	-0.4	-0.4	0.1	-1.3
	Max.1DA.FG	1.4	2.5	2.4	-3.1
	min.SA.FG	-2.2	2.6	1.5	5.1
	Max.SA.FG	-1.1	0.2	2.3	-1.1
	Max.A.DFC	-0.8	-1.9	-1.5	3.7
	Max.V.DFC	1.6	-5.4	-2.8	6.3
	Moy.SA.DFC	1.0	-2.2	-0.7	1.7
	Cadence	0.0		-0.0
	Long. des pas	-0.7	1.7	-0.6	-0.7
	Vitesse	0.01		-0.01

faitement reproductible. Mais la plupart des mesures sont en dessous des seuils que nous avions Ąxé pour juger de la différence signiĄcative entre deux mouvements. De plus, le nombre dŠen-.6 Ű Mesure de la reproductibilité du simulateur traînements réalisés avec la même conĄguration nŠest pas suffisant pour établir des conclusions qualitatives. On conclu donc que la reproductibilité nŠest pas parfaite, mais elle est suffisante pour ne pas produire des mouvements totalement différents.

Table 3

 3 LŠamplitude des modiĄcations acceptables sur D1, D2, D3 et D4 et plus est importante donc le blocage strict de lŠarticulation fait échouer plus facilement les simulations que la modiĄcation des extremums. On observe aussi que D2, D3 et D4 sont des modiĄcations plus critiques que D1 car leurs amplitudes acceptables sont plus faibles. La seconde approche, nous lŠavons mise en place après avoir implémenté lŠentraînement sur différents mouvements. Elle consiste, pour chaque conĄguration, à mesurer le ratio de réussite lorsque les mouvements à reproduire sont sélectionnés aléatoirement parmi les 7 mouvements de référence et leur version déphasée, avec une répartition uniforme du phi de départ. On considère

	Ratio	R1	R1d	R1p	R7	R7d R7dp
	7d 5 s 0.724 0.892 0.712 0.978 0.978 0.986
	7d 10 s 0.724 0.798 0.554 0.976 0.978 0.986
	7d 15 s 0.724 0.67 0.524 0.976 0.978 0.986

.7 Ű Bornes des modiĄcations acceptables de RK permet donc de réduire la Ćexion maximale de 16.5 • . Ce nŠest clairement pas suffisant pour approcher la valeur de 32 • , observée en moyenne dans les mouvements de référence de la condition c1.

Table 3 .

 3 10 Ű Ratios de réussite des différentes conĄgurations face aux perturbations

			R1p	R7d R7dp
	7d 5 s 0.624 0.638 0.956 0.984
	7d 10 s 0.327 0.404 0.71 0.964
	7d 15 s 0.179	0.3	0.486 0.936
	1 5 s	0.994	1	0.972 0.998
	1 10 s 0.744	1	0.658 0.996
	1 15 s 0.506	1	0.392 0.988

Table 3

 3 Des variations dans les mouvements des pieds sont également constatées mais nous ne les étudierons pas car notre modèle ne le permet pas.Le changement dŠorientation du bassin dans le plan coronal inĆuence donc lŠorientation globale de tous les corps rigides dans le plan coronal.Pour limiter cet effet, nous avons choisi dŠinclure dans lŠoptimisation toutes les articulations du plan coronal qui sont liées au bassin. Le changement de hauteur du bassin inĆuence aussi la hauteur des autres corps. Pour que les pieds restent en contact avec le sol, nous avons choisi dŠinclure aussi la Ćexion du genou opposée en phase dŠappui. Étant donné quŠune modiĄcation de la cadence de marche est aussi observée, nous avons aussi inclus dans lŠoptimisation une variable permettant son optimisation. Nos conclusions sont résumées dans la table ??, et le résultat sur les points de contrôle sélectionnés est présenté dans les trajectoires de la Ągure 3.18.

	Degré de liberté	Appui	Vol affecté	Appui	Vol non
		non		affecté	affecté
		affecté
	Rotation coronale du bassin	l		-
	Hauteur globale du bassin	l		-
	Rotation coronale du HAT	*		-
	Abduction de hanche	l	l	-	-
	Flexion du genou	l	c	c	-

balancier"

[START_REF] Kerrigan | Hip hiking and circumduction : Quantitative deĄnitions[END_REF]

.

Dans notre simulateur, la position et lŠorientation du bassin sont déĄnies dans le repère du monde. .11 Ű Conclusions de la comparaison entre c0 et c1 par degré de liberté et par phase : l indique une différence rapportée par la littérature, * une implication suite à notre modèle et c est la contrainte imposé. Lorsque deux valeurs sont données, la première fait référence au côté gauche et la seconde au côté droit.

Table 4 .

 4 Cette section présente les mouvements obtenus en simulant le suivi du mouvement dans la condition c0 en utilisant les réseaux R1p et R7dp. Le mouvement de référence c0 est représenté par lŠapproximation faite dans la section 4.1.2. Les résultats sont présentés sous la forme de graphiques(Figures 4.3 et 4.4) permettant une comparaison visuelle des trajectoires et de la Table 4.2 permettant une comparaison quantitative des mesures effectuées sur les mouvements simulés. Une comparaison entre forces de réaction au sol réelles et simulées est aussi faite. LŠensemble des données issues des simulations a été obtenu en réalisant 500 simulations de 20 cycles de marche en faisant varier le ϕ de départ. 2 Ű Comparaison des mouvements simulés avec R1p et R7dpFigure 4.3 Ű Trajectoires de référence et simulées avec la conĄguration R7dpLes durées des différentes phases du cycle de marche sont bien simulées avec les deux réseaux. Cette conclusion peut être faite car la cadence est respectée et les différentes durées en pourcentage des phases ne présente pas de différence signiĄcative. Dans les mouvements acquis la cadence est variable. Cette variabilité est naturelle et nŠest pas simulée dans notre environnement. En effet, le mouvement donné en entrée du réseau de neurones ne présente aucune variation de cadence.On observe une différence signiĄcative sur la Ćexion des hanches au moment du contact initial pour les deux réseaux. Cette Ćexion est mesurée à environ ϕ = 0 pour la jambe droite et ϕ = 0.5 pour la jambe gauche. Ce résultat est cohérent avec lŠanalyse de lŠexactitude de notre simulateur. Cette augmentation de la Ćexion des hanches au moment du contact par rapport au mouvement réel est pénalisé lors de lŠapprentissage et il est présent pour tous les réseaux.Il est donc probable quŠelle soit indispensable à la réalisation dŠune simulation stable. Et la conséquence de la modélisation des pieds.Une méthode pour le vériĄer serait de mettre un poids plus important lors de lŠapprentissage pour la pénalité associée au suivi du mouvement de cette articulation.La Ćexion maximale du genou présente un erreur de 5 • . Bien que cette différence soit importante, elle nŠest pas considérée comme signiĄcative car dans les mouvements de référence nous avons observé plus de 5 • de différence entre deux mouvements de la condition c0.Pour la Ćexion lors du contact initial, le résultat est corrélé avec celui de la hanche. On observe une Ćexion plus importante du genou au moment du contact. Une Ćexion plus importante du genou et de la hanche correspondent à une distance hanche-cheville plus courte. La nécessité de cette distance plus courte nŠest pas forcée par la récompense sur lŠaxe vertical de la position du bassin, et elle ne peut pas non plus être inĆuencée par la position des effecteurs. En effet, la récompense sur la position des effecteurs est calculée comme la différence entre leur position et le centre de masse. Comme lŠeffecteur est le corps situé entre le pied et le tibia, la position de son centre de masse par rapport au centre de masse global.En supposant que la position globale du centre de masse est peu inĆuencée par la différence de conĄguration, la récompense est inĆuencée par la Ćexion de la hanche, du genou et la dorsiĆexion. La dorsiĆexion a très peu dŠinĆuence sur la position du centre de masse donc cette erreur de position devrait être pénalisée. Cette adaptation est donc possiblement dû à un mouvement permettant dŠéviter un contact entre le pied et le sol.La phase de simple appui sŠétend approximativement de ϕ = 0.6 à 1 pour la jambe gauche et de 0.1 à 0.5 pour la jambe droite. Donc le maximum global correspond au deuxième maximum local et le minimum global au deuxième minimum local. Pour le mouvement réalisé par R1p et R7 pour le genou gauche, cŠest le même mouvement. On observe un peu moins de Ćexion au moment du contact initial du pied opposé. Plus de Ćexion pour la jambe qui va être en contact et moins de contact pour lŠautre jambe. Plus observé sur R7 donc permet potentiellement plus de stabilité. Pour la dorsiĆexion, on note seulement quŠon observe des valeurs plus importantes en appui et plus faible en vol. Cette position peut sŠexpliquer par un modèle de contact du pied trop épais sur la partie avant ou trop Ąn sur la partie arrière. Il me faut une estimation de lŠerreur de position du centre de masse global.

	Mesures	Ref	R7dp	R1p	R7dp -Ref	R1p -Ref
	%.1DA	9.5	7.9	10.8	8.0	8.2	6.9	1.3	0.1	-1.3	-1.0
	%.2DA	7.9	9.5	8.0	10.8	6.9	8.2	0.1	1.3	-1.0	-1.3
	%.A	58.2 59.1 60.1 58.7 56.2 58.9	1.9	-0.4	-2.0	-0.2
	Moy.IB	0.7		4.7		2.1		3.9		1.4
	IC.FH	29.0 28.6 33.1 39.9 34.4 37.0	4.1	11.3	5.4	8.4
	Moy.V.FH	10.4	6.6	9.7	5.1	12.3	6.4	-0.8	-1.6	1.9	-0.2
	Max.V.FH	33.9 31.9 33.5 41.3 34.4 37.0	-0.5	9.4	0.5	5.0
	Max.V.AH	5.6	12.0 10.9 13.3	1.8	11.0	5.3	1.3	-3.9	-1.0
	Max.V.RH	10.2 10.0	7.9	10.8	4.1	10.6	-2.3	0.8	-6.1	0.6
	Max.FG	69.0 70.6 74.0 68.4 68.0 67.4	5.0	-2.3	-1.0	-3.3
	IC.FG	10.7 12.4 19.9 18.2 15.4 21.4	9.2	5.7	4.7	8.9
	Max.1DA.FG	29.7 27.0 28.1 24.2 27.7 26.1	-1.6	-2.8	-2.0	-0.8
	min.SA.FG	10.1 10.7	5.8	2.7	5.7	9.4	-4.3	-8.0	-4.3	-1.3
	Max.SA.FG	31.7 29.0 28.5 23.4 29.0 27.8	-3.1	-5.6	-2.7	-1.2
	Max.A.DFC	7.6	6.2	5.8	10.5 12.9 10.3	-1.8	4.3	5.2	4.1
	Max.V.DFC	13.0 14.7	-0.3	4.6	4.7	8.8	-13.3	-10.1	-8.3	-5.9
	Moy.SA.DFC	-8.4	0.9	-14.3	-13.4	-10.9	-10.6	-5.9	-14.3	-2.5	-11.5
	Cadence	123.7	123.7	123.7	0.0		0.0
	Long. des pas	69.0 73.9 67.6 64.6 64.6 73.3	-1.4	-9.3	-4.4	-0.6
	Vitesse	1.47	1.36	1.42	-0.11	-0.05
	Norm.Moment	/		14.4	14.2	/		/
	GRF	307.7	321.4	371.1	331.7	364.0	338.5	63.4 10.3 56.3 17.1
	Sur chaque graphique on visualise en orange la trajectoire du degré de liberté dans le mou-
	vement de référence et en bleu les trajectoires du degré de liberté au 15ème cycle pour chacun
	des 500 mouvements simulés. La valeur de ϕ = 0 correspond pour tous les graphiques au contact
	initial de la jambe droite.

La Ćexion maximale de la hanche en phase de vol est différente de la Ćexion au moment du contact initial dans les mouvements de référence. En effet, lorsque lŠon regarde les trajectoires de référence de la Ćexion des hanches, on observe que le maximum de Ćexion et atteint avant le contact. Dans les mouvements simulés, ce maximum est bien simulé pour la hanche gauche, mais moins bien pour la hanche droite. Ceci est partiellement masqué par le fait que la Ćexion au moment du contact initial est supérieur. Pour la hanche droite avec le réseau R7dp, on nŠobserve pas de minimum local de la Ćexion de la hanche avant le contact.

Le maximum de lŠabduction de la hanche gauche en phase de vol nŠest pas simulé correctement pour R7dp. Il est important de noter quŠil y avait que la variation dans cette mesure pour les mouvements de référence dans la condition bf était importante.Il en est de même pour la rotation de la hanche en phase de vol.

On observe des différences importantes entre les mesures sur le mouvement de référence et les mouvements simulés. On rappelle que lors de lŠanalyse des différents mouvements de référence (section 3.5.3), nous avions aussi observé des différences importantes entre les mesures.

Dans lŠensemble des mesures faites sur les simulations peu de variabilité entre les mesures sont observées. En observant les trajectoires, on voit que dans les mouvements simulés il nŠy a pas de maximum local de Ćexion pendant la phase de vol. Ce maximum dans les mouvements réels permet dŠéviter le contact entre le pied et le sol en phase de vol. Dans les mouvements simulés, les orteils font un plus grand mouvement de Ćexion dans la phase de vol aĄn dŠéviter de toucher le sol.

  Cette section présente les mouvements obtenus en simulant le suivi du mouvement dans la condition c1 en utilisant le réseaux R1c1. Le mouvement de référence c1 est représenté par la même approximation que celle utilisée pendant lŠentraînement du réseau. Les résultats sont présentés sous la forme de graphiques, la Figure4.6 permettant une comparaison visuelle des trajectoires et la Table4.3 permettant une comparaison quantitative des mesures effectuées sur les mouvements simulés. LŠensemble des données issues des simulations a été obtenu en réalisant 500 simulations de 20 cycles de marche en faisant varier le ϕ de départ.

Table 4 .

 4 Une Ćexion plus importante de la hanche pour les deux jambes lors de la phase de vol est observée. Cette observation nŠest pas étonnante et semble être aussi apparue aĄn de permettre la stabilisation du mouvement.On observe que la rotation-externe maximale de la hanche est bien reproduite (Table3.3).Pour la Ćexion minimale du genou en simple appui, on observe une différence signiĄcative avec le mouvement de référence. Cette différence est observée pour les deux genoux. On observe donc bien une dissymétrie, avec une Ćexion moins importante pour la jambe gauche, ce qui correspond à la condition c1. Les jambes restent néanmoins plus tendues pendant cette phase dŠappui. On peut imaginer que cela permet de stabiliser le mouvement car la jambe opposée, qui est en phase de vol, aura moins de risque de rentrer en contact avec le sol. On peut voir sur les trajectoires que ce minimum intervient pour les deux jambes à la Ąn de la phase de simple appui.De son coté la Ćexion maximale pendant cette même phase est bien simulée. Elle apparaît au début de la phase de simple appui est correspond à lŠabsorption de lŠénergie de contact.On observe sur la dorsiĆexion des différences signiĄcatives qui vont dans le même sens que pour le mouvement en condition c0 et on ne retrouve pas la dissymétrie observée dans le mouvement de référence.Pour le moment moyen, la valeur est plus faible que dans le mouvement en condition c0 mais la vitesse de déplacement lŠest aussi. La vitesse de déplacement est, elle, bien simulée.

	Mesures	Ref		R1c1	R1c1 -Ref
	%.1DA	7.8	6.7	7.1	8.3	-0.7	1.6
	%.2DA	6.7	7.8	8.3	7.1	1.6	-0.7
	%.A	58.8	55.7	58.3	57.2	-0.6	1.5
	Moy.IB	2.5		4.8		2.3
	IC.FH	28.8	26.7	34.2	33.3	5.4	6.6
	Moy.V.FH	9.4	8.9	9.7	8.8	0.3	-0.1
	Max.V.FH	28.8	28.3	34.1	33.3	5.3	5.0
	Max.V.AH	4.0	4.8	1.5	6.3	-2.5	1.5
	Max.V.RH	16.0	21.0	12.0	21.8	-4.1	0.9
	Max.FG	61.3	32.0	56.8	26.9	-4.6	-5.0
	IC.FG	8.6	15.1	10.0	19.2	1.3	4.1
	Max.1DA.FG	18.7	22.1	18.8	22.2	0.1	0.1
	min.SA.FG	7.2	16.9	1.8	11.3	-5.4	-5.5
	Max.SA.FG	21.7	24.6	21.3	21.9	-0.5	-2.7
	Max.A.DFC	7.9	-0.7	11.7	9.6	3.8	10.2
	Max.V.DFC	14.1	2.4	5.0	6.4	-9.1	4.0
	Moy.SA.DFC	-6.2	-8.1	-7.6	-12.5	-1.4	-4.5
	Cadence	112.7	112.7	0.0
	Long. des pas	63.5	69.7	58.0	67.5	-5.5	-2.2
	Vitesse	1.25	1.18	-0.07
	Norm.Moment	/		11.5	/
	GRF	348.9 316.3 324.3 371.9 -24.6	55.6

3 Ű Comparaison du mouvement de référence c1 avec les simulation en utilisant R1c1

Comme pour les mouvements simulés dans la condition c0, la cadence est parfaitement respectée et la durée des différentes phases est bien reproduite.

On observe une différence signiĄcative de la Ćexion de la hanche lors du contact initial. Cela soutient le fait que cette augmentation de la Ćexion nŠest pas propre au mouvement c0 et quŠelle est sûrement nécessaire à la stabilité de la simulation.

Pour les forces de réaction on nŠobserve un appui plus important sur la jambe avec le genou bloqué alors que lŠinverse est observé dans le mouvement capturé. Mais lŠobservation faite dans la réalité peut être partiellement causée par la volonté de ne pas forcer sur lŠorthèse. Dans la simulation, cette stratégie nŠest pas récompensée, ce qui peut être une raison de la différence constatée.

  Un paramètre permettant de modiĄer la durée du cycle de marche est aussi optimisé.Ů le jeu J3 est composé de lŠordonnée certains points de contrôle des trajectoires suivantes : la rotation coronale du HAT, la rotation coronale du bassin, la hauteur globale du bassin, lŠabduction des hanches et la Ćexion des genoux. Un paramètre permettant de modiĄer la durée du cycle de marche est aussi optimisé.

	La description du mouvement de référence utilisée pour toutes les optimisations est celle
	présentée dans la section 4.1.2.
	Dans les sections ci-dessous, nous présentons les résultats des prédictions pour les conĄgu-
	rations suivantes :
	Ů minimisation de la moyenne des moments avec le jeu J1 (section 4.2.1) ;
	Ů optimisation de la Ćexion du genou avec le jeu J1 (section 4.2.2) ;
	Ů optimisation de la Ćexion du genou avec le jeu J2 (section 4.2.3) ;
	Ů minimisation de la moyenne des moments et optimisation de la Ćexion du genou avec le
	jeu J2 (section 4.2.4) ;
	Ů minimisation de la moyenne des moments et optimisation de la Ćexion du genou avec le
	jeu J3 (section 4.2.5).
	•
	Ů une moyenne des moments minimale
	Et nous avons choisi dŠoptimiser différents jeux de paramètres :
	Ů le jeu J1 est composé de lŠordonnée de tous les points de contrôle des trajectoires sui-
	vantes : les 3 rotations du HAT, les 3 rotations et la hauteur globale du bassin, les 3
	rotations des hanches, et la Ćexion des genoux. Un paramètre permettant de modiĄer la
	durée du cycle de marche est aussi optimisé.
	Ů le jeu J2 est composé de lŠordonnée de tous les points de contrôle des trajectoires sui-

vantes : la rotation coronale du HAT, la rotation coronale du bassin, la hauteur globale du bassin, lŠabduction des hanches et la Ćexion des genoux.

Table 4 .

 4 Pour le mouvement prédit, on observe des dissymétries pour toutes les mesures faites sur les hanches sauf pour la Ćexion moyenne, pour la Ćexion maximale du genou et pour le minimum de Ćexion en phase de simple appui du genou.Lors de lŠobservation des trajectoires, on cherche à repérer les différences qui ne sont pas mises en avant par la lecture du tableau, on observe les suivantes : • du minimum de rotation externe de la hanche droite.Les principaux éléments qui ressortent des observations sont que le mouvement est dissymétrique, que le bassin est plus haut et tourné vers la droite, que les jambes restent plus tendues et que la vitesse a diminuée.La diminution de la vitesse était attendue car, dans la réalité, il existe une relation entre la vitesse de déplacement et lŠénergie dépensée. Comme la moyenne des moments est un indicateur de lŠénergie dépensée, ce résultat est satisfaisant.

	Entre la simulation du suivi du mouvement de référence et la prédiction, on observe les écarts
	signiĄcatifs suivants :
	Ů Diminution de la Ćexion des hanches lors du contact initial ;
	Ů Augmentation de lŠabduction maximale de la hanche droite en phase de vol ;
	Ů Augmentation de la rotation externe maximale de la hanche gauche en phase de vol ;
	Ů Diminution de toutes les valeurs de Ćexion pour le genou gauche ;

Cette prédiction (nommée CMA1) a pour objectif de montrer ce qui est possible de prédire en minimisant la moyenne des moments. Nous avons choisi de la réaliser sur le jeu de paramètres J1 aĄn de guider le moins possible lŠoptimisation. Le résultat a été obtenu en réalisant 1000 cycles de CMA-ES en 5h. LŠoptimisation nŠas pas convergée, la condition dŠarrêt a été le nombre de cycles.

Dans la Table

4

.4 nous avons mis en évidence les dissymétries des mesures réalisées sur les mouvements simulés (en bleu) et les écarts entre les mesures supérieures aux seuils établis précédemment (en orange).

Ů Diminution de la Ćexion maximale pour le genou droit.

On observe aussi une diminution importante (environ 20%) de la longueur du pas réalisée 4 Ű Mesures simulées entre CMA1 et c0 avec la jambe gauche, une diminution dŠun peu moins de 10% de la vitesse de marche et une diminution dŠenviron 30% de la moyenne des moments.

LŠimportante dissymétrie du mouvement nŠétait pas attendue, en particulier la diminution de la longueur du pas seulement du côté gauche. Cette solution a peut-être été obtenue car dans lŠespace de recherche il nŠétait peut être pas possible de diminuer la longueur des deux pas en même temps sans déséquilibrer la marche.

Le dernier point est lŠobservation dŠun mouvement où les jambes restent plus tendues. Cette modiĄcation réduit lŠamplitude du mouvement et permet probablement de réduire la moyenne des moments nécessaires à la génération du mouvement.

4.2.

2 Optimisation de la Ćexion du genou avec le jeu J1 Cette

  Table4.5 Ű Comparaisons des mesures entre CMA2, c0 et c1 Ů Augmentation de la Ćexion maximale de la hanche gauche en phase de vol ; Ů Diminution de la Ćexion maximale du genou droit ; Ů Augmentation de la Ćexion maximale du genou gauche ; Ů Diminution de la Ćexion des deux genoux pour toutes les autres mesures sauf la Ćexion maximale du genou droit en simple appui.On observe aussi une augmentation de plus de 15% de la longueur du pas réalisée avec la jambe droite et une augmentation de plus de 10% de la vitesse de marche. Table4.6 Ű Comparaison des mesures avec CMA3, c0 et c1 genou droit, des comportements attendus et inattendus. Le comportement attendu observé est la diminution du maximum de Ćexion du genou gauche en phase de simple appui. On observe aussi des comportements qui sont inattendus : pas dŠaugmentation du maximum de rotation externe de la hanche droite, augmentation de la Ćexion maximale du genou gauche, pas de diminution de la Ćexion maximale du genou gauche en 1ère phase de double appui, hyper-extension du genou droit en phase de simple appui, pas de changement de cadence ni de vitesse.Là encore, le respect de la contrainte sur la Ćexion du genou est un point positif. Cela conĄrme que notre choix de paramètres à optimiser après réduction de lŠespace de recherche est cohérent. Mais cela ne permet pas dŠobtenir une stratégie qui correspond parfaitement à la réalité, principalement parce que la vitesse et la cadence ne changent pas par rapport au mouvement c0.

	Mesures	CMA2		c0		c1	c0 -CMA2 c1 -CMA2
	%.1DA	8.3	6.3	10.8	8.0	7.1	8.3	2.5	1.7	-1.2	2.0
	%.2DA	6.3	8.3	8.0	10.8	8.3	7.1	1.7	2.5	2.0	-1.2
	%.A	58.5 56.2 60.1 58.7 58.3 57.2	1.6	2.5	-0.2	0.9
	Moy.IB		2.1		4.7		4.8	2.6		2.7
	IC.FH	33.6 30.7 33.1 39.9 34.2 33.3	-0.4	9.2	0.6	2.7
	Moy.V.FH	5.4	1.0	9.7	5.1	9.7	8.8	4.3	4.1	4.3	7.8
	Max.V.FH	38.5 38.5 33.5 41.3 34.1 33.3	-5.0	2.8	-4.4	-5.2
	Max.V.AH	9.2	11.9 10.9 13.3	1.5	6.3	1.8	1.4	-7.6	-5.7
	Max.V.RH	8.1	10.8	7.9	10.8 12.0 21.8	-0.3	0.1	3.8	11.1
	Max.FG	82.7 31.5 74.0 68.4 56.8 26.9	-8.8	36.8 -26.0	-4.6
	IC.FG Max.1DA.FG Mesures min.SA.FG %.1DA Max.SA.FG %.2DA Cadence %.A Long. des pas Moy.IB Vitesse IC.FH Norm.Moment Moy.V.FH Moy.grf Max.V.FH Max.V.AH	10.6 12.6 19.9 18.2 10.0 19.2 16.1 18.6 28.1 24.2 18.8 22.2 12.0 9.3 CMA3 c0 c1 -3.7 -10.0 5.8 2.7 1.8 11.3 9.5 10.4 4.6 10.8 8.0 7.1 8.3 15.9 18.5 28.5 23.4 21.3 21.9 12.7 4.6 10.4 8.0 10.8 8.3 7.1 125.0 123.7 112.7 -1.3 c0 -CMA3 c1 -CMA3 5.6 -0.7 6.6 5.6 2.7 3.6 12.7 5.5 0.4 3.4 -3.3 3.7 21.3 4.9 5.4 3.4 0.4 3.7 -3.3 3.4 58.2 56.9 60.1 58.7 58.3 57.2 1.9 1.8 0.0 0.3 -12.3 70.4 76.5 67.6 64.6 58.0 67.5 -2.8 -11.9 -12.3 3.5 4.7 4.8 1.1 1.3 -9.0 1.53 1.36 1.18 -0.17 36.8 28.2 33.1 39.9 34.2 33.3 -3.7 11.7 -2.7 5.1 -0.35 15.2 14.4 11.5 -0.6 11.7 -0.7 9.7 5.1 9.7 8.8 -2.1 5.8 -2.1 9.5 -3.7 370.4 332.0 371.1 331.7 324.3 371.9 0.7 -0.3 -46.1 39.9 33.3 33.5 41.3 34.1 33.3 -6.4 8.0 -5.8 0.0 39.9 12.0 10.8 10.9 13.3 1.5 6.3 -1.1 2.5 -10.5 -4.5
	Max.V.RH		9.2	11.9	7.9	10.8 12.0 21.8	-1.3	-1.1	2.8	9.9
	Max.FG		83.7 32.3 74.0 68.4 56.8 26.9	-9.8	36.1 -27.0	-5.3
	IC.FG		19.8 17.1 19.9 18.2 10.0 19.2	0.1	1.1	-9.8	2.1
	Max.1DA.FG	26.4 25.5 28.1 24.2 18.8 22.2	1.8	-1.3	-7.5	-3.3
	min.SA.FG		6.6	-10.0	5.8	2.7	1.8	11.3	-0.8	12.7	-4.9	21.3
	Max.SA.FG	24.5 28.3 28.5 23.4 21.3 21.9	4.1	-4.9	-3.2	-6.5
	Cadence		120.8	123.7	112.7	2.9		-8.1
	Long. des pas	60.6 69.4 67.6 64.6 58.0 67.5	7.0	-4.8	-2.5	-1.9
	Vitessel		1.31	1.36	1.18	0.05	-0.13
	Norm.Moment	15.3	14.4	11.5	-1.1	-4.8
	Moy.grf		351.2	351.7	371.1	331.7	324.3	371.9	19.9 -20.0 -26.9 20.2
	LŠoptimisation a convergée, la condition dŠarrêt était la constance des récompenses au cours de
	plusieurs cycles successifs.
	Dans la Table 4.5 nous avons mis en évidence les dissymétries des mesures réalisées sur
	les mouvements simulés (en bleu) et les écarts entre les mesures supérieures aux seuils établis
	précédemment (en orange).
	Pour le mouvement prédit, on observe des dissymétries pour la Ćexion maximale du genou
	et pour la Ćexion minimale du genou en phase de simple appui.
	Entre la simulation du suivi du mouvement de référence et la prédiction, on observe les écarts
	signiĄcatifs suivants :
	Ů Diminution de la Ćexion de la hanche droite lors du contact initial ;

prédiction (nommée CMA2) a pour objectif de montrer quŠil est possible dŠoptimiser une Ćexion du genou aĄn de respecter la contrainte de 33 • de Ćexion maximale. Nous avons choisi de la réaliser sur le jeu de paramètres J1 aĄn de guider le moins possible lŠoptimisation.

Le résultat a été obtenu après un peu plus de 600 cycles du CMA-ES, soit un peu plus de 3h.

4.2.

4 Minimisation et optimisation avec le jeu J2 Cette

  prédiction (nommée CMA4) a pour objectif de montrer quŠil est possible dŠoptimiser une Ćexion du genou aĄn de respecter la contrainte de 33 • et de réduire lŠénergie en utilisant le jeu de paramètres J2. Le résultat a été obtenu après un peu plus de 1400 itérations du CMA-ES, soit environ 7h30. LŠoptimisation nŠa pas convergée, elle a été arrêtée après 1400 itérations. Table 4.7 Ű Comparaison des mesures entre CMA4, c0 et c1 Dans la Table 4.7 nous avons mis en évidence les dissymétries des mesures réalisées sur les mouvements simulés (en bleu) et les écarts entre les mesures supérieures aux seuils établis précédemment (en orange). Pour le mouvement prédit, on observe des dissymétries pour la Ćexion maximale du genou et pour la Ćexion minimale du genou en phase de simple appui. Entre la simulation du suivi du mouvement de référence et la prédiction, on observe les écarts signiĄcatifs suivants : Ů Diminution de la Ćexion des hanches lors du contact initial ; Ů Diminution de la Ćexion moyenne de la hanche gauche ; Ů Diminution de la Ćexion maximale des deux hanches ; Ů Augmentation de lŠabduction maximale du genou droit ; Ů Augmentation de la rotation externe maximale du genou gauche ; Ů Diminution de la Ćexion du genou gauche pour toutes les autres mesures ; Ů Diminution de la Ćexion du genou droit ; Ů Augmentation de la Ćexion au moment du contact initial ;

	Mesures	CMA4	c0		c1		c0 -CMA4 c1 -CMA4
	%.1DA	8.2	8.3	10.8	8.0	7.1	8.3	2.6	-0.3	-1.1	0.0
	%.2DA	8.3	8.2	8.0	10.8	8.3	7.1	-0.3	2.6	0.0	-1.1
	%.A	61.0 55.5 60.1 58.7 58.3 57.2	-0.9	3.2	-2.7	1.7
	Moy.IB	7.8		4.7		4.8		-3.2	-3.0
	IC.FH	23.8 31.8 33.1 39.9 34.2 33.3	9.3	8.1	10.4	1.5
	Moy.V.FH	4.4	8.6	9.7	5.1	9.7	8.8	5.3	-3.5	5.3	0.2
	Max.V.FH	26.2 34.8 33.5 41.3 34.1 33.3	7.3	6.5	7.9	-1.5
	Max.V.AH	6.2	22.1 10.9 13.3	1.5	6.3	4.7	-8.8	-4.7	-15.8
	Max.V.RH	16.7	8.9	7.9	10.8 12.0 21.8	-8.8	1.9	-4.7	12.9
	Max.FG	57.6 32.1 74.0 68.4 56.8 26.9 16.3 36.2	-0.9	-5.2
	IC.FG	7.8	23.2 19.9 18.2 10.0 19.2 12.1	-5.0	2.2	-4.0
	Max.1DA.FG	14.0 27.1 28.1 24.2 18.8 22.2 14.1	-3.0	4.8	-4.9
	min.SA.FG	-10.0	-0.5	5.8	2.7	1.8	11.3 15.8	3.1	11.8 11.8
	Max.SA.FG	13.9 27.2 28.5 23.4 21.3 21.9 14.7	-3.8	7.4	-5.4
	Cadence	123.1	123.7	112.7	0.6		-10.4
	Long. des pas	47.5 67.8 67.6 64.6 58.0 67.5 20.1	-3.2	10.6	-0.3
	Vitesse	1.18	1.36	1.18	0.18	0.00
	Norm.Moment	10.6	14.4	11.5	3.8		0.9
	Moy.grf	365.3	333.6	371.1	331.7	324.3	371.9	5.8	-1.9	-41.0	38.3

Ů Diminution de la longueur du pas gauche ;

Table 4

 4 • et à réduire lŠénergie. Le résultat a été obtenu après un peu plus de 400 itérations du CMA-ES, soit environ 1h45. LŠoptimisation nŠa pas convergée, elle a été arrêtée après 400 itérations.Dans la Table4.8 nous avons mis en évidence les dissymétries des mesures réalisées sur les mouvements simulés (en bleu) et les écarts entre les mesures supérieures aux seuils établis précédemment (en orange).Pour le mouvement prédit, on observe des dissymétries pour la Ćexion des hanches au moment du contact initial, pour lŠabduction maximale des hanches, pour la Ćexion maximale des genoux et pour la Ćexion des genoux au moment du contact initial.Entre la simulation du suivi du mouvement de référence et la prédiction, on observe les écarts signiĄcatifs suivants : Ů Diminution de la Ćexion de la hanche droite lors du contact initial ; Ů Diminution de la Ćexion maximale de la hanche droite en phase de vol ; Ů Diminution de lŠabduction maximale de la hanche gauche en phase de vol ; Ů Diminution de la Ćexion maximale du genou droit ; Ů Diminution de toutes les mesures sur les deux genoux.

	Mesures	CMA5	c0		c1		c0 -CMA5 c1 -CMA5
	%.1DA	11.3	9.4	10.8	8.0	7.1	8.3	-0.5	-1.4	-4.2	-1.1
	%.2DA	9.4	11.3	8.0	10.8	8.3	7.1	-1.4	-0.5	-1.1	-4.2
	%.A	61.4 59.3 60.1 58.7 58.3 57.2	-1.3	-0.5	-3.2	-2.1
	Moy.IB	5.2		4.7		4.8		-0.6	-0.4
	IC.FH	33.8 27.3 33.1 39.9 34.2 33.3	-0.7	12.6	0.4	6.1
	Moy.V.FH	7.1	2.4	9.7	5.1	9.7	8.8	2.6	2.7	2.6	6.4
	Max.V.FH	34.1 33.3 33.5 41.3 34.1 33.3	-0.6	8.0	0.0	0.0
	Max.V.AH	4.8	14.4 10.9 13.3	1.5	6.3	6.1	-1.0	-3.3	-8.1
	Max.V.RH	10.8 11.6	7.9	10.8 12.0 21.8	-2.9	-0.8	1.2	10.2
	Max.FG	63.5 33.4 74.0 68.4 56.8 26.9 10.4 35.0	-6.8	-6.4
	IC.FG	8.5	1.3	19.9 18.2 10.0 19.2 11.4 16.9	1.5	17.9
	Max.1DA.FG	17.8 13.0 28.1 24.2 18.8 22.2 10.3 11.2	1.0	9.2
	min.SA.FG	-10.0	-10.0	5.8	2.7	1.8	11.3 15.8 12.7 11.8 21.3
	Max.SA.FG	17.4 15.0 28.5 23.4 21.3 21.9 11.2	8.4	3.9	6.8
	Cadence	123.7	123.7	112.7	0.0		-11.0
	Long. des pas	62.3 70.3 67.6 64.6 58.0 67.5	5.3	-5.7	-4.3	-2.8
	Vitesse	1.37	1.36	1.18	0.00	-0.19
	Norm.Moment	13.9	14.4	11.5	0.5		-2.4
	Moy.grf	338.0	365.0	371.1	331.7	324.3	371.9	33.1 -33.3 -13.7	6.9

.8 Ű Mesures avec CMA5, c0 et c1

3.5.3 Évaluation de la précision et de lŠexactitudeLe but de cette évaluation est de pouvoir comparer la précision et lŠexactitude des différentes conĄgurations du simulateur. Pour la précision, on cherche pour chaque mesure i à connaître lŠécart-type σ i entre les valeurs obtenues pendant un enregistrement et lŠécart-type σ i (ϕ) entre les valeurs moyennes obtenues en faisant varier le ϕ utilisé pour lŠinitialisation. Pour lŠexactitude, on cherche à regarder si la moyenne des valeurs obtenues pour lŠensemble des différents enregistrements i(ϕ) lŠécart avec la valeur de référence. AĄn de pouvoir interpréter ces valeurs, on mesure sur lŠensemble des mouvements de référence lŠécart-type les différentes mesures 3.3.On mesure aussi la différence entre la moyenne des mesures faites sur le sujet en condition c0 et en condition c1. Et on établi quŠune différence dans les mesures dŠangle supérieure à 5 degrés est cliniquement signiĄcative[START_REF] Mcginley | The reliability of three-dimensional kinematic gait measurements : A systematic review[END_REF]. Les N valeurs de ϕ sont échantillonnées selon une séquence de Sobol.En considérant que les valeurs des mesures suivent une répartition normale, on choisi dŠutiliser la valeur de 2.5 fois lŠécart-type comme référence. Cela correspond à couvrir 99% des valeurs dans la répartition normale. On établi en observant les valeurs dŠécart-type, quŠune différence de pourcentage de plus de 5% est signiĄcative pour les mesures de pourcentage de cycle de marche.

ratios, les simulations qui durent au moins 5s, 10s et 15s. La table 3.8 nous montre que la conĄguration R7dp est la moins spéciĄque, elle permet une adaptation à plus de mouvements différents. Au contraire, la conĄguration R1p est la plus spéciĄque, elle a le taux dŠéchec le plus élevé lorsquŠelle rencontre dŠautres mouvements. On observe aussi que lŠutilisation dŠun mouvement déphasé dŠun demi-cycle de marche dans lŠapprentissage permet de réduire la spéciĄcité. Par contre, la stabilité est aussi affectée si seulement

genou droit, des comportements attendus et inattendus. Les comportements attendus observés sont : la diminution de la Ćexion maximale du genou gauche, la diminution de la Ćexion maximale du genou gauche en 1ère phase de double appui, la diminution du maximum de Ćexion gauche en phase de simple appui. On observe aussi des comportements qui sont inattendus : pas dŠaugmentation du maximum de rotation externe de la hanche droite, hyper-extension des deux genoux en phase de simple appui, pas de changement de cadence ni de vitesse de marche.Là encore, le respect de la contrainte sur la Ćexion du genou est un point positif. Le nombre de paramètres à optimiser est encore suffisant. Par contre, la solution obtenue ne présente pas de diminution de la vitesse de marche et ni de lŠénergie.

Optimisation de la Ćexion du genou avec le jeu J2

Cette prédiction (nommée CMA3) a pour objectif de montrer quŠil est possible dŠoptimiser de la Ćexion du genou aĄn de respecter la contrainte de 33 • de Ćexion maximale en utilisant une jeu de paramètres plus petit J2. Le résultat a été obtenu après un peu plus de 300 cycles du CMA-ES, soit environ 1h45. LŠoptimisation a convergée, la condition dŠarrêt était la constance des récompenses au cours de plusieurs cycles.

Dans la Table 4.6 nous avons mis en évidence les dissymétries des mesures réalisées sur les mouvements simulés (en bleu) et les écarts entre les mesures supérieures aux seuils établis précédemment (en orange).

Pour le mouvement prédit, on observe des dissymétries pour la Ćexion de hanche au moment du contact initial, la Ćexion moyenne de hanche, la Ćexion maximale de hanche, la Ćexion maximale du genou et pour la Ćexion minimale du genou en phase de simple appui.

Entre la simulation du suivi du mouvement de référence et la prédiction, on observe les écarts signiĄcatifs suivants :

Ů Diminution de la Ćexion de la hanche droite lors du contact initial ;

Ů Diminution de la Ćexion moyenne de la hanche droite en phase de vol ;

Ů Augmentation de la Ćexion maximale de la hanche gauche en phase de vol ;

Ů Diminution de la Ćexion maximale de la hanche droite en phase de vol ;

Ů Augmentation de la Ćexion maximale du genou gauche ;

Ů Diminution de la Ćexion maximale du genou droit ;

Ů Diminution de la Ćexion minimale du genou droit en phase de simple appui.

On observe aussi une augmentation de plus de 15% de la longueur du pas réalisée avec la jambe droite et une augmentation de plus de 10% de la vitesse de marche.