12 November 2019

12 mins de lecture

DReCon: un contrôleur de personnages créé grâce à l’apprentissage par renforcement profond

*Les animations basées sur la physique renferment la promesse de niveaux d’interaction, de fidélité et de variété sans précédent dans les jeux. Les interactions complexes entre un personnage et son environnement ne peuvent être fidèlement synthétisées qu’en respectant des principes physiques réels. D’autre part, les systèmes d’animation commandés par des données qui utilisent de grandes quantités d’information provenant de la capture de mouvement ont déjà démontré que le style artistique et la variété des mouvements peuvent être conservés même lorsque la conception d’un jeu impose des contraintes strictes en matière de réactivité et de contrôle des mouvements.

Afin de combiner les forces des deux méthodes, nous avons développé DReCon, un contrôleur de personnages créé grâce à l’apprentissage par renforcement profond. Essentiellement, les personnages humains simulés apprennent à se déplacer et à s’équilibrer à partir d’exemples de capture de mouvements que l’on peut contrôler avec précision. Une fois entraînés, les personnages contrôlés par manette peuvent être entièrement simulés en utilisant la physique et dirigés simultanément avec un haut niveau de réactivité, à un coût d’exécution étonnamment bas pour les plateformes actuelles.*

Rapport complet (PDF)


Les animateurs passent beaucoup de temps à essayer de faire en sorte que les choses paraissent bien. Il n’existe pas de règles clairement définies pour ce processus artistique, mais il y a des éléments de base que les animateurs essaient d’inclure dans leur travail, l’un des plus connus étant :
Les douze principes de base de l’animation.

Que sont-ils? Plusieurs de ces principes sont des méthodes servant à créer des effets dynamiques intéressants qui découlent de la physique du monde réel. Quelques exemples : le principe de « compression et étirement » capture le comportement de la déformation élastique, et le principe de « continuité du mouvement initial et chevauchement de deux mouvements consécutifs » capture les effets d’inertie et de vibration modale. Je pense que les animations intéressantes comportent généralement des aspects plausibles sur le plan de la physique, même si le mouvement est souvent exagéré pour des raisons stylistiques. Les animateurs qui travaillent sur des films peuvent capturer tous les effets qu’ils veulent dans leur travail, mais cela peut s’avérer difficile dans les jeux puisque les systèmes de jouabilité doivent contrôler l’animation d’éléments interactifs.

*⬤ Compression et étirement, ⬛ Continuité du mouvement initial et chevauchement de deux mouvements consécutifs*

Les univers des jeux sont remplis de phénomènes physiques, et pourtant, malheureusement, les personnages n’y participent pas de façon très complexe. Au lieu de cela, les développeurs de jeux créent une illusion en rejouant des animations qui s’adaptent au contexte du jeu ou, dans certains cas, en utilisant des forces comme si elles étaient des cordes de marionnettes qui tirent les personnages dans la direction voulue. Cela peut parfois sembler faux parce que le mouvement du personnage est incompatible avec les lois de la physique. L’incohérence physique peut se manifester sous forme de glissement des pieds, de flottement, d’accélération non naturelle, de postures déséquilibrées, de géométrie des membres tronqués et de collisions étranges. Si de vrais principes de physique étaient utilisés pour déplacer les personnages dans les jeux, plutôt que les méthodes actuelles, les mouvements des personnages basés sur une physique juste seraient naturels.

Alors pourquoi les systèmes d’animation de personnages n’ont-ils pas encore été totalement remplacés par des simulations physiques? En réalité, il y a quelques obstacles difficiles à surmonter. La physique des corps rigides peut être facilement appliquée pour générer des mouvements chaotiques de personnages, utilisés pour des effets comme le « ragdoll », habituellement activé pour les morts. Toutefois, lorsqu’il s’agit de personnages simulés, il est nécessaire de trouver une stratégie pour contrôler ce chaos de manière intelligente. Trouver une solution efficace qui produise un mouvement de haute qualité tout en offrant un degré de contrôle similaire à l’animation traditionnelle n’a pas été chose facile, mais de nombreux chercheurs ont travaillé d’arrache-pied sur ce problème.


Au cours de la dernière année, nos recherches chez Ubisoft La Forge se sont concentrées sur la façon dont l’animation et la physique peuvent s’associer dans les jeux. Lors du SIGGRAPH ASIA 2019, je présenterai un rapport de recherche qui propose un pas dans cette direction, intitulé :

DReCon : Contrôle réactif commandé par des données pour des personnages basés sur la physique

Cette recherche présente la méthode que nous avons développée pour contrôler la locomotion des personnages simulés par la physique en appliquant l’apprentissage par renforcement profond et une technique d’animation commandée par des données appelée « correspondance de mouvement » (Motion Matching). Les personnages se déplacent et s’équilibrent entièrement en utilisant leur propre force, ce qui permet une simulation réaliste de leurs interactions avec l’environnement. Nous avons également gardé à l’esprit les contraintes uniques des jeux

[La Forge] DReCon: Data-Driven responsive Control of Physics-Based Characters - perf800-600x320
Analyse de la performance d’un personnage (Intel Xeon E5-1650 v3)

pour nous assurer que notre méthode avait un coût d’exécution très faible afin de s’inscrire dans les budgets de performance de jeux réels sur les plateformes actuelles. DReCon est unique en ce sens qu’il maintient un haut niveau de réactivité aux entrées de l’utilisateur tout en conservant un aspect aussi naturel que possible des mouvements simulés des personnages.

*Les personnages à base physique contrôlés par DReCon conservent la qualité de mouvement de l’animation.*

L’approche

Quand on y pense, contrôler un personnage dans un monde simulé selon les lois de la physique n’est pas très différent de contrôler un robot bipède dans le monde réel. Malheureusement, la locomotion des robots bipède est difficile à achever. C’est pourquoi de nombreux robots marchent très lentement et prudemment, sans jamais trop lever les pieds du sol ou redresser complètement les genoux. Les robots bipèdes ne sont pas seulement des systèmes chaotiques composés de nombreuses pièces interconnectées, ils sont aussi sous-actionnés. Cela signifie que nous ne pouvons pas contrôler entièrement leur trajectoire dans l’espace, de sorte qu’une planification et une coordination sophistiquées sont généralement nécessaires.

Heureusement, les personnages de jeux vidéo ont un avantage sur les robots quand il s’agit de résoudre ces problèmes. Les robots doivent résoudre des problèmes dans le monde réel en utilisant du matériel réel. Les personnages simulés n’ont pas à se soucier de capteurs imprécis, d’actionneurs sous-alimentés, d’entretien ou de dommages. Et surtout, les simulations peuvent s’exécuter plus rapidement qu’en temps réel, ce qui nous permet d’appliquer efficacement l’apprentissage par renforcement profond (ARP).

L’ARP fonctionne essentiellement en formant une règle de contrôle à l’aide d’expériences par essai et erreur. La règle est un réseau neuronal qui est optimisé pour produire des décisions qui maximisent la performance d’une tâche en apprenant de ces expériences. Les valeurs de récompense associées aux décisions ont permis à la règle d’apprendre quelles décisions étaient bonnes et mauvaises à long terme, et de l’encourager à répéter celles qui étaient bonnes. Cela a conduit à des percées sur de nombreux problèmes d’IA complexes, la plus célèbre concernant AlphaGo de DeepMind qui, grâce à l’ARP, est devenue la première IA de go capable de gagner contre des joueurs professionnels. Simultanément, cela a également provoqué une révolution dans le domaine de la robotique.

[La Forge] DReCon: Data-Driven responsive Control of Physics-Based Characters - explore-600x360
DReCon entraîne les personnages à suivre des trajectoires générées aléatoirement en utilisant l’ARP. Celles-ci sont recueillies des milliers de fois par seconde.

Les tâches robotiques complexes telles que la locomotion ou la manipulation d’objets s’appuient généralement sur des méthodes d’optimisation coûteuses pour atteindre n’importe quel niveau de succès, ce qui rend difficile leur application aux systèmes en temps réel. Un compromis insatisfaisant entre le coût d’exécution et la réalisation des tâches était presque inévitable, mais je crois que l’ARP est capable d’éliminer ce compromis dans certaines applications. Avec l’ARP, les opérations coûteuses sont effectuées en précalcul, ce qui permet d’obtenir un contrôleur très performant à faible coût d’exécution. Ce précalcul nécessite ne nombreux cycles d’essais et d’erreurs, un processus qui prend beaucoup de temps sur de vrais robots, mais qui est beaucoup plus rapide avec des robots simulés.

*Les utilisateurs définissent la trajectoire/la direction à court terme qu’ils désirent pour le personnage; un utilisateur artificiel de type « pire cas » est utilisé pendant l’entraînement.*

À l’aide de l’ARP, DReCon entraîne des personnages simulés à utiliser leurs actionneurs articulés (comparables aux muscles) pour suivre un personnage animé contrôlé par l’utilisateur. Le contrôleur apprend automatiquement à corriger tout problème physique avec le mouvement du personnage animé puisque l’objectif est de suivre le mouvement le mieux possible physiquement. Cela nécessite d’apprendre à garder l’équilibre et à se déplacer tout en préservant le style général de l’animation. Nous obtenons un haut degré de réactivité en entraînant le personnage avec un utilisateur artificiel qui peut modifier les entrées de la manette de façon brusque et aléatoire. Le système n’a pas d’autre choix que d’apprendre une stratégie qui s’adapte à l’utilisateur de type « pire cas ».

[La Forge] DReCon: Data-Driven responsive Control of Physics-Based Characters - MotionMatch-600x415
La correspondance de mouvement génère une animation continuelle par le biais d’un processus de recherche.

Pour générer l’animation, nous utilisons la correspondance de mouvement, une technique commandée par des données qui permet une animation très réaliste des personnages. For Honor a été le premier jeu à utiliser cette méthode, qui est de plus en plus adoptée de nos jours. La correspondance de mouvement remplace la méthode traditionnelle de sélection directe des animations à l’aide d’un automate avec un nombre fini d’états. Les développeurs choisissent plutôt les contraintes qu’ils veulent faire respecter. Une recherche est ensuite lancée dans un grand ensemble de données de capture de mouvement, et les segments d’animation qui enfreignent le moins les contraintes sont combinés de façon continuelle pour générer le mouvement du personnage qui en résulte. Ce processus peut être implémenté par une recherche du voisin le plus proche dans un espace de grande dimension, où chaque dimension représente l’une des contraintes. Notre implémentation contraint les éléments suivants : le trajet des personnages dans les quelques images suivantes, la position face au trajet suivi, le style d’animation et la continuité du positionnement des pieds.

*Un exemple visuel de la recherche d’animations par correspondance de mouvement dans For Honor.*

Grâce à ce processus de recherche, la correspondance de mouvement génère des animations très réalistes, car de grandes quantités de données sont associées de manière intelligente dans le but spécifique d’atteindre des objectifs de mouvement de haut niveau et de préserver la continuité. Cela permet de reproduire les comportements de locomotion complexes mais subtils de la capture de mouvements. Pour cette raison, l’utilisation de l’ARP pour former une règle qui suit les sorties de la correspondance de mouvement présente un avantage par rapport aux travaux précédents, tels que DeepMimic, qui suivait des animations fixes et utilisait des récompenses pour atteindre des objectifs secondaires. La planification des mouvements (par exemple le pilotage) est gérée par la correspondance de mouvement et, par conséquent, il n’est possible d’atteindre les objectifs de mouvement qu’en apprenant comment les humains le font selon les données de capture de mouvement, plutôt qu’en maximisant des récompenses arbitraires basées sur des buts qui feront invariablement concurrence au suivi.

[La Forge] DReCon: Data-Driven responsive Control of Physics-Based Characters - trackpathwalk-768x513
Un personnage simulé peut être contrôlé avec précision (rouge) pour suivre un trajet (noir).

Néanmoins, apprendre de cette façon augmente considérablement le nombre d’états du système auxquels le contrôleur doit s’adapter et rend l’entraînement plus compliqué. Pour résoudre ce problème, notre règle de contrôle suppose que les positions conjointes provenant de l’animation sont en quelque sorte des entrées acceptables pour un système de contrôle en boucle ouverte simple, et forment uniquement la règle pour qu’elle apporte de petites corrections à ces positions afin de maximiser les performances de suivi. Nous supposons également que les corrections doivent être cohérentes dans le temps, et utilisons un procédé de filtrage pour forcer l’ajustement des corrections au fil du temps. De cette façon, l’apprentissage est contraint vers des stratégies de contrôle plus favorables qui sont dans le voisinage du contrôleur en boucle ouverte, et ne peut pas se baser sur les interférences dans la simulation.

[La Forge] DReCon: Data-Driven responsive Control of Physics-Based Characters - schematic

Cette recherche ne fait qu’effleurer la surface de ce qui est possible, mais montre que les personnages simulés selon les lois de la physique peuvent être implémentés dans les jeux sans faire exploser le budget de performance ni limiter considérablement la réactivité, ce qui est vraiment génial à notre avis. Nous voulons pousser les choses plus loin dans le futur, en améliorant l’éventail des comportements que les personnages simulés peuvent recréer et la qualité globale de nos résultats. L’animation basée sur la physique permettra aux personnages de bouger et d’interagir de façon plus réaliste que jamais auparavant, ce qui aura certainement des applications intéressantes dans les jeux à venir.

Auteurs
KEVIN BERGAMIN, McGill University, Canada
SIMON CLAVET, Ubisoft La Forge, Canada
DANIEL HOLDEN, Ubisoft La Forge, Canada
JAMES RICHARD FORBES, McGill University, Canada