DANSE AVEC MOI

Michel Bret, Professeur en A.T.I. Université Paris 8
Marie-Hélène Tramus, Maitre de conférence en A.T.I. Université Paris 8

1 Principe

         "Danse avec moi" propose au spectateur d´interagir en temps réel avec un personnage virtuel. Face au spectateur en mouvement le danseur virtuel improvise.
         De l´interaction entre un tel acteur réel et cet être artificiel doué d´autonomie et d´une capacité d´invention gestuelle, émerge une situation artistique inédite proche du vivant: Improvisation, invention, imagination, autonomie, imprévisibilité, surprise ...

2 Description

         Le spectateur interagit, au moyen d´un capteur de position qu´il tient dans la main, avec un danseur virtuel dont l´image est projetée sur un écran de 4 mètres par 3 mètres. Les variations de vitesse de déplacement du capteur sont interprétées comme des forces agissant sur un modèle de corps humain placé dans un champ de pesanteur et est contraint par un sol. Ce corps virtuel obéit à des lois biomécaniques et est muni de comportements réflexes qui lui font maintenir son équilibre. De plus des réseaux neuronaux lui permettent de réagir aux sollicitations du spectateur de façon "intelligente".
         Plus qu´une simple boucle réotractive, ce système est un être artificiel, certes très élémentaire, mais montrant certaines propriétés du vivant: Par exemple la notion de généralisation, propre aux réseaux neuronaux, lui confère une richesse potentiellement illimitée de réactions non apprises et cependant adaptées. Son intelligence apparait comme une propriété émergente des interactions entre ses éléments (neurones artificiels), les informations qu´il capte de son environnement (interaction), et sa structure (simulation d´un corps humain muni de certains comportements).

Équipement

         Un ordinateur PC 1.50 GHz, 512 Mo de mémoire, disque de 6 Go
         Une carte graphique GEforce 64
         Systeme Windows 2000
         Le logiciel anyflo
         Un capteur "Gypsy"
         Et/ou un capteur "Polhemus" ISOTRACK II ou un capteur "InterTrax".
         Un vidéo projecteur
         Un écran d´environ 4 mètres par 3 mètres

Schéma de l´installation

3 Interactivité et modèles comportementaux

         Les modèles fonctionnels produisent des installations entièrement déterministes, et ne proposent, au mieux, qu´un ensemble de combinaisons possibles (art permutationnel) à partir d´un vocabulaire limité, le rôle du spectateur se limitant alors à parcourir un labyrinthe (stratégies du choix mises en oeuvre par la visite des sites sur Internet ou l´utilisation d´un CDROM).
         Un modèle comportemental qui produit un système intégrant le spectateur généralise la notion de participation définie par Popper [Popper 80]: Il ne s´agit plus de réactions programmées aux sollicitations d´un humain, mais de la réorganisation, ni prévisible ni stable, d´un système complexe, hybridation de machine et de nature, duquel émerge un comportement global concernant aussi bien sa composante artificielle que sa composante humaine.

4 Description technique

         Le schéma suivant montre l´articulation des differents modules composant le système.


Structure du danseur virtuel.

         1) Un module dynamique produisant des mouvements crédibles d´un corps féminin en équilibre sur un fil et soumis à différentes forces:
                  Un champ de pesanteur.
                  Une force de réaction du sol sur le pied porteur.
                  Des forces internes dues aux propriétés biomécaniques du corps (contraintes sur les articulations, élasticite des muscles, etc.).
                  Des forces externes produites par le module d´interaction.
         En l´absence de contrôle propre, le corps tend à s´écrouler et à basculer.


Corps soumis à des forces externes.

         2) Un module comportemental lui-même structuré sur deux niveaux:
                  Des forces réflexes de rééquilibrage.


Comportement réflexe de rééquilibrage.

                  Production de mouvements volontaires sur ordre du module connexionniste. Il s´agit en fait des sorties d´un réseau neuronal interprétées comme des projets (pratriquement des listes de couples appliqués aux articulations du corps) qui sont ensuite exécutés (c´est à dire passés au module dynamique), mais ils peuvent être interrompus à tout instant par un événement extérieur.


Comportement appris.

         3) Un module interactif interprétant les positions d´un capteur (polhemus), manipulé par le spectateur, comme des forces externes exercées sur le corps.
         4) Un module connexionniste implémenté sous la forme d´un réseau neuronal dont les entrées sont connectées à des mesures angulaires et de pression donnant les positions relatives des membres et du pied en contact avec le sol, et dont les sorties sont connectées au module comportemental. Une ou plusieurs couches intermédiaires de neurones complexifient le réseau.
         Dans un premier temps les poids du réseau sont initialisés aléatoirement, puis il subit un apprentissage supervisé aucours duquel un certain nombre de couples (Ei,Si) lui sont présentés, pour chaque entrée Ei il calcule la sortie Ci, la différence Ci-Si entre la sortie calculée et la sortie souhaitée est utilisée comme erreur pour corriger les poids du réseau (par la méthode de la rétropropagation) (voir le connexionnisme en image de synthèse 5-2). Lorsque toutes les erreurs sont inférieures à un seuil donné, la matrice des poids est sauvée.


Transformation d´une configuration d´entrées en projet.



Projet tangent a un projet interrompu.



Apprentissage supervisé par l´algorithme de la rétropropagation de l´erreur.



La boucle de rétroaction perception <-> action.

         Dans un deuxième temps l´interaction est lancée en temps réel, le module connexionniste utilisant la matrice précalculée.

5 Environnement multiréseaux

         Dans l´installation "Le Funambule Virtuel" le personnage est contrôlé par plusieurs réseaux, chacun étant spécialisé dans une partie du corps (les jambes, les bras, ...). Ici on a remplacé chacun de ces réseaux par un ensemble de réseaux eux-mêmes specialisés. Par exemple, dans l´ensemble des réseaux contrôlant les jambes, certains provoquent une marche en arrière, d´autres une marche en avant, d´autres des pas de danse, etc. Pour une position de déséquilibre en entrée, on commence par rechercher le réseau dont une entrée est la plus proche de cette position (distance euclidienne), laquelle est fournie en entrée à ce réseau qui délivre alors la position d´équilibre à atteindre.


Couples d´apprentissages.      Réseaux.      Réseau le plus proche

         On peut aussi rechercher, pour chaque réseau Ri, la distance minimum di de E aux entrées des couples d´apprentissage pour ce réseau, puis calculer S comme somme pondérée, par les distances, des sorties de ces réseaux lorsqu´on leur présente E en entrée.


Couples d´apprentissages.      Réseaux. Somme pondérée des Réseaux

         On a aussi multiplexé les entrées de plusieurs réseaux: Supposons que le personnage exécute un pas de danse contrôlé par un certain réseau R1, en reculant le spectateur active un réseau R2 de marche en avant, le résultat est une combinaison k*R2 + (1-k)*R1 pondérée par un coefficient k mesurant l´influence de la marche sur la danse (par exemple proportionnel à la vitesse de déplacement).


Entrées multiplexées.            Réseaux.                            Sortie pondérée

         Nous avons simulé une intention par une méthode proche de la cinématique inverse en synthèse d´image, consistant à se donner le résultat à atteindre puis à rechercher la stratégie la mieux adaptée pour y parvenir: Soit S une position à atteindre (but), on commence par rechercher, parmi tous les réseaux, celui dont une sortie est la plus proche de S, et on fournit en entrée à ce réseau la position actuelle de l´acteur de synthèse, la sortie est alors une position proche de S.


Réseaux.          Couples d´apprentissages.                            Réseau selectionne

         On peut aussi, comme ci-dessus, calculer les distances minimum de S aux sorties des couples d´apprentissage de chaque réseau et calculer S comme somme pondérée, par ces distances, des sorties des réseaux lorsqu´on leur présente E en entrée.


Réseaux.          Couples d´apprentissages. Somme pondérée des Réseaux

6 Apprentissage en temps réel

         Nous avons utilisé le capteur Gypsy pour analyser un mouvement. Pour celà nous digitalisons un danseur réel revétu du data suit, puis nous analysons ce mouvement, soit à posteriori (temps différé) soit en temps réel. Dans le premier cas on peut procéder manuellement (en indiquant quelles sont les positions retenues comme "Motif", "Loi1" ou "Loi2", ou de façon automatique en extrayant des positions remarquables (par exemple les points de contrôle d´une courbe paramétrique reconstituant le mouvement). Dans le deuxième cas l´information fournie est utilisée directement dans un apprentissage modifiant, en temps réel, les matrices des réseaux. Pour celà l´algorithme de la rétropropagation de l´erreur a été parallélisé de façon à ne pas ralentir les calculs et l´affichage. Les réseaux s´autoconfigurent ainsi au fur et à mesure des actions du spectateur, celui-ci constate que, peu à peu, l´acteur virtuel apprend, en temps réel, les réactions du spectateur. Il s´ensuit une interaction plus évoluée dans laquelle le spectateur peut constater, contrôler et tenter de modifier, ses propres actions sur le comportement du danseur virtuel.
         Le schéma suivant décrit le processus: La flèche horizontale figure les mouvements réels d´un danseur qui sont des éléments d´un espace à 57 dimensions (le Gypsy ayant 57 degrés de liberté). Pour une meilleure compréhension nous avons reduit ce nombre à 3 et avons choisi une représentation dans le cube des couleurs (R,V,B). La numérisation du mouvement définit alors un chemin dans ce cube, representé par une série d´échantillons (Ri,Vi,Bi). Un processus de séquencement cherche 3 positions remarquables, dans cet exemple: (R,0,0),(0,V,0),(0,0,B). La première (R,0,0), considérée comme le début du mouvement, est l´entrée d´un apprentissage, les deux suivantes [(0,V,0),(0,0,B)] constituent la sortie de cet apprentissage. Le réseau est alors entrainé par tout un ensemble de tels couples d´apprentissage déduits de l´analyse de la numérisation du mouvement. Lors d´une interaction, des positions captées d´un spectateur revêtu du datasuit sont présentées en entrée du réseau qui fournit alors en sortie un mouvement, suite naturelle de cette position: Une danse à deux émerge de ce processus.


Digitalisation, séquencement, apprentissage et synthèse

7 Utilisation des algorithmes génétiques

         Il est possible de se libérer de mouvements trop réalistes en faisant découvrir au système, par lui-même, des stratégies adéquates. Par exemple, pour construire un réseau neuronal répondant au problème du maintien de l´équilibre, au lieu de fournire des couples d´entrées-sorties digitalisés sur des danseurs réels, on génère aléatoirement toute une population de tels couples. Puis on fait évoluer cette population, par croisements et mutations, en optimisant une certaine fonction d´adaptation (par exemple les mouvements aboutissant à une chute seront mal notés, alors que ceux conservant l´équilibre seront bien notés). Au cours des générations successives émergent des couples d´apprentissage de mieux en mieux notés. Les meilleurs d´entre eux sont retenus pour entraîner un réseau par la méthode de la rétropropagation de l´erreur.
         Nous avons testé cette méthode qui donne de très bons résultats quant à la diversité des mouvements obtenus.

8 Projets futurs

        
         Nous projetons de généraliser cette interactivité intelligente, mais singulière (puisque ayant lieu entre un spectateur réel et un acteur de synthèse), en une interactivité plurielle faisant dialoguer un ensemble de danseurs humains avec une population de danseurs artificiels. Des interactions entre ces deux systèmes chorégraphiques, l´un réel et l´autre virtuel, nous attendons l´émergence de nouvelles pratiques de la danse et, plus généralement, de nouvelles pratiques de l´art des spectacles vivants, comme le théatre, le cirque ou le concert.

9 Images