apprendre et créer

par l’expérimentation interactive

 

Colloque « Approches croisées de la création de logiciels et dispositifs numériques ludo-éducatifs », Ludovia 7 et 8 juillet 2005, Saint-Lizier Ariège.

 

Michel BRET

Professeur émérite des université, Art et Technologies de l’Image, Université Paris 8

18ème section (Arts)

michel-bret@wanadoo.fr

 

 

Mots-clés :

Art, création, interactivité, pédagogie, réseaux neuronaux.

 

Résumé :

 La « première interactivité » traduit la boucle rétroactive de la cybernétique, la « seconde interactivité » (par analogie avec la seconde cybernétique) concerne les systèmes capables de s’auto configurer et rejoint par là les stratégies du vivant. Les réseaux de neurones permettent de simuler de tels organismes artificiels en complétant la pensée algorithmique par des processus d’apprentissages interactifs. Les problématiques de la création numérique et de son enseignement, celles des dispositifs artistiques ou ludo-éducatifs, ainsi que celles de l’écriture des logiciels qui les rendent possible se trouvent ainsi reposés à la lumière d’une interactivité que nous qualifierons d’ « intelligente ».

 

Introduction

Dans les années 70, lorsque j’ai rejoint le GAIV (Groupe Art et Informatique de Vincennes) à l’Université Paris 8, j’étais doublement motivé, par ma curiosité de peintre et par mon éducation scientifique, pour explorer le champ des machines . A cette époque les ordinateurs n’étaient absolument pas conçus pour faire des images et il fallait être complètement fous (comme nous l’étions tous, Hervé Huitric, Monique Nahas, d’autres et moi-même) pour penser qu’un jour cela serait possible. Aujourd’hui, la question ne se pose même plus.

Les ordinateurs ne savaient pas faire d’images, en fait ils ne savaient pas faire grand chose puisqu’il n’existaient ni programmes ni même de systèmes. Il a donc fallu tout construire et ce fut une chance car tout était alors possible.

En tant qu’artiste je m’intéressais à l’image numérique interactive, en tant qu’enseignant je voulais transmettre cette passion et en tant que chercheur je tentais d’en établir les fondements. L’interactivité était, dès le début, au cœur de mes préoccupations. Aujourd’hui, plus que jamais, elle le reste, car les neurosciences nous ont montrées le rôle central de l’action [1]dans la construction de nos facultés mentales les plus évoluées. L’art, le jeu, la science et l’éducation peuvent ainsi se repenser à la lumière du numérique.

 

1 Conception d’un système graphique orienté art

Il s’agissait de construire une interface entre la machine et l’artiste qui ne soit ni contraignante ni difficile d’accès. Contrairement à l’opinion commune qui voyait dans les artistes de doux rêveurs dépourvus de toute pensée technologique, j’ai choisi le langage, pariant sur leur intelligence . J’ai ainsi d’abord écrit, en 1985, un interpréteur, puis un compilateur, et enfin un système complet d’images : « anyflo ». Plus de dix années plus tard, les concepteurs de Maya me donnaient implicitement raison en sortant leur langage « mel »…

Le système anyflo est caractérisé par sa généralité (pas d’hypothèses particulières quant aux objets traités), son adaptabilité (possibilité de l’enrichir indéfiniment) et sa facilité d’emploi (destiné aux artistes). Il m’a permis de réaliser de nombreux films de synthèse, de construire des installations interactives à finalité artistique, ludique ou à but pédagogiques , je l’utilise aussi dans la simulation de toutes sortes de phénomènes. C’est ainsi que, avec le professeur Alain Berthoz du Collège de France, nous avons étudié les lois naturelles du mouvement  (plan de phase, contre phases, loi de la puissance deux tiers, référentiels d’interaction, …) [2].

Je le considère comme ma palette de peintre, en perpétuelle reconfiguration. C’est aussi une sorte d’organisme artificiel interactivement adaptable. Par exemple l’introduction des réseaux neuronaux et des algorithmes génétiques a profondément modifier ma façon de programmer et donc la structuration même du système.

Le langage intègre de puissants outils de débuguage qui peuvent aussi bien être utilisés dans un but pédagogique pour expliquer la synthèse d’images, l’animation par ordinateur, la dynamique, la programmation graphique ou même des courants de pensée comme le conexionnisme ou l’évolutionnisme. J’ai utilisé ces possibilités dans les cours que j’ai dispensé en Art et Technologies de l’Image à l’Université de Paris 8, je les utilise aujourd’hui pour créer des œuvres interactives et les expliquer au public.

 

2 Installations interactives à finalité artistique

2-1 Les premières

Dans les années 70-80 je participais à des concerts de musique électronique au cours des quels je programmais des images interactives en temps réel (avec les contraintes de l’époque : ordinateurs 8 bits de faible puissance, programmation exclusivement en assembleur, sortie graphique de basse définition).

 

Puis j’ai été conduit à produire des films de synthèse en temps différé (ce qui permettait une bien meilleure qualité d’image) mais toujours mu par cette exigence de l’interactivité, en l’occurrence celle-ci étant « endogène », c’est à dire simulée et ayant lieu entre des processus excluant toute intervention humaine en temps réel (voir l’image 2-0 extraite de mon film « cahin caha »). Il a fallu attendre l’arrivée des cartes graphiques câblant les fonctionnalités d’OpenGL pour revenir à l’interactivité en temps réel (ou « exogène »).

 

 

Image 2-0 : Cahincaha

 

« La Plume » et « Le pissenlit », que j’ai développé sous anyflo avec Edmond Couchot et Marie-hélène Tramus, sont des installations que l’on pourrait qualifier d’ « historiques », puisqu’elles ont été crées en 1988 et qu’elles sont toujours exposées (France, Japon, Corée, Canada, Italie, Allemagne, …). Souffler sur l’image fait virevolter la plumes ou s’envoler les akènes d’un pissenlit.

 

 

Figure 2-1 : Un nuage de plumes

 

 

Figure 2-2 : Un champ de pissenlits

 

2-2 Les deux interactivités

Avec Edmond Couchot et Marie-Hélène Tramus nous distinguons plusieurs types d’interactivité [3] :

La « première interactivité » qui est celle de la simple boucle rétroactive de la cybernétique et qui est à la base de la plupart des systèmes interactifs.

Puis la « seconde interactivité » (par analogie avec la seconde cybernétique) qui apparaît dès lors que le système qui la produit est capable de se modifier lui-même au cours d’un apprentissage par lequel il interagit avec son environnement afin de s’y adapter. Il s’agit bien là d’un comportement que l’on pourrait qualifier d’ « intelligent ».

 

2-3 Neurones et création

En 1995, à la suite de Karl Sims [4], de Van de Panne et Fiume [5], et sensibilisé par l’artiste américain Michael Tolson à la technique des réseaux neuronaux, je m’intéressais au connexionnisme et à ses applications artistiques, en particulier dans le domaine de l’interactivité [6].

La vie a résolu le problème de l’adaptation des organismes à leur environnement en inventant les systèmes nerveux centraux, constitués de neurones massivement interconnectés au moyen de liaisons modifiables par l’expérience [7].

L’informatique permet de simuler de tels systèmes au moyen des « réseaux neuronaux » [8]. Prenons l’exemple des réseaux multi couches à apprentissage supervisé. Il s’agit de construire des êtres virtuels munis :

1) D’un système perceptif (dont les organes sont des capteurs qui se projettent sur les neurones de la couche d’entrée du réseau neuronal).

2) D’un système moteur (muscles d’un modèle dynamique de l’être de synthèse commandés par les neurones moteurs, qui sont ceux de la couche de sortie du réseau).

3) De plusieurs couches cachées figurant le « cortex » du cerveau artificiel.

4) Enfin d’un protocole d’apprentissage permettant d’entraîner le réseau lors d’expérimentations au cours des quelles les poids des connexions sont modifiés (par l’algorithme dit de la « rétropropagation de l’erreur ») afin de satisfaire de mieux en mieux aux directives du « professeur » chargé d’éduquer le réseau.

 

2-4 « La funambule virtuelle » et « danse avec moi »

C’est ainsi, qu’avec Marie-Hélène Tramus, je développais « La funambule virtuelle » puis « danse avec moi », installations interactives mettant en scène des acrobates et des danseurs de synthèse munis de réseaux neuronaux les dotant de comportements « intelligents ».

Sur l’image 2-4-1 on peut voir un schéma de l’installation :

1) Une danseuse réelle (à gauche) est munie de capteurs qui sont connectés à la couche d’entrée du réseau (à droite).

2) Une danseuse virtuelle (au milieu) est aussi munie de capteurs (virtuels ceux-ci) également connectés à la couche d’entrée.

3) L’ensemble de ces connexions constitue une sorte de « système perceptif » du personnage virtuel, le réseau lui-même jouant le rôle d’un petit « cerveau ».

4) La couche de sortie est connectée aux muscles du modèle dynamique du corps virtuel.

5) Le bouclage cybernétique réside dans la modification des perceptions de la danseuse virtuelle de par ses actions mêmes.

6) L’interactivité résulte dans le comportement de la danseuse réelle confrontée à cette boucle et agissant sur elle.

7) Enfin le système répond au principe de la « deuxième interactivité » puisque les réseaux s’auto configurent par apprentissage  au cours d’expérimentations.

 

 

Figure 2-4-1:Schéma de l’installation.

 

 

Figure 2-4-2 : Une funambule professionnelle interagissant avec la funambule virtuelle

 

 

Figure 2-4-3 La funambule au théâtre

 

 

Figure 2-4-4 La funambule en exposition

 

 

Figure 2-4-5 : Danse avec moi

 

 

Figure 2-4-6 Danse avec moi

 

3 Les installations interactives à but pédagogique

3-1 Un outil pédagogique

Pour construire des installations interactives j’ai développé des modules temps réel (écrits en langage anyflo) permettant une mise au point rapide : Il s’agit de montrer clairement au concepteur ce qui se passe lorsque le système tourne afin de pouvoir en détecter les disfonctionnements éventuels. Un tel outil peut aussi être utilisé, dans un but pédagogique, afin de faire comprendre à des néophytes le fonctionnement du dit système.

 

Un utilisateur naïf peut par exemple expérimenter interactivement la notion même d’interactivité (en manipulant différents types de systèmes : réactifs, rétroactifs, homéostatiques, adaptatifs ou organiques), des réseaux neuronaux à apprentissage supervisé , ou compétitif, afin d’en comprendre le fonctionnement.

 

3-2 Application à l’interprétation de la musique

            Les méthodes les plus couramment utilisées par les concepteurs de systèmes d’interprétation graphique de musiques, consistent à mapper des séquences animées préalablement digitalisées sur une séquence musicale dont on analyse les paramètres (recherche d’un rythme, reconnaissance d’une mélodie ou d’un type musical, analyse des fréquences par une transformée de Fourier, etc…). Ce principe, s’il donne des résultats en effet très réalistes, ne permet qu’un nombre nécessairement limité de mouvements (ceux numérisés) ceux-ci étant obligatoirement réalistes (ce qui ne correspond pas forcément aux souhaits du créateur).

 D’autre part la façon dont un danseur réel interprète la musique ne se réduit pas à une simple correspondance entre celle-ci et ses mouvement  mais intègre sa culture et autorise l’improvisation et l’invention.

            Nous avons préféré considérer la musique et la danse comme deux phénomènes très différents entre lesquels n’existe pas de correspondance terme à terme à priori. Cependant, le déroulement de ces deux phénomènes dans le temps peut faire apparaître une résonance, une adéquation de l’un à l’autre, qui se traduit dans les faits par une sorte de mise en phase. S’il nous est facile, à nous autres humains, de produire cette résonance en dansant, il n’en va pas de même pour un système artificiel.

            Le cerveau, pour contrôler des mouvements complexes, diminue le nombre de degrés d'action qu'il a sur les muscles du corps en créant des corrélations automatiques entre certains paramètres. Ainsi le corps du danseur virtuel, qui peut être modélisé sous la forme d’un réseau complexe dont les nœuds sont les articulations de son squelette et dont les connexions sont les forces exercées sur ces nœuds pour les faire bouger, peut-il être contrôlé par un autre réseau de paramètres, plus simple celui-là, permettant de déclencher des actions sur plusieurs muscles en même temps (par exemple des mouvements antagonistes). Une matrice représente l’état dynamique du personnage à chaque instant, l’évolution du personnage dans le temps, c’est à dire ses mouvements de danse, est caractérisé par l’évolution de cette matrice. En faisant l’hypothèse que la danse et la musique sont en phase lorsque leurs variations se font dans le même sens, nous avons un moyen de mesurer l’écart entre le mouvement produit et le mouvement idéal, la différence entre les deux peut alors être interprétée comme une erreur permettant de corriger la matrice du réseau de la danse (un peu à la manière dont un réseau neuronal s’auto configure lors d’un apprentissage) et on peut espérer qu’une configuration plus ou moins stable émerge d’un tel processus.

            Pratiquement nous avons fait de nombreux essais en variant la description topologique, la métrique et la dynamique du réseau de danse, ainsi qu’en variant les paramètres d’analyse du signal audio. Il en est résulté un système utilisable par des VJ’s en concert de musique live.

 

            Une autre méthode consiste à utiliser des réseaux à apprentissage non supervisé, par exemple compétitifs comme ceux de Kohonen [9]. Le signal audio est analysé en continu et le réseau détecte une cohérence interne entre les échantillons successifs en les classant dans des ensembles de reconnaissance (à chacun desquels est associé un mouvement particulier) pour faire émerger une correspondance naturelle entre la musique et les mouvements de danse.

            La figure 3-2-1 montre une danseuse virtuelle en train d’apprendre une musique. Le réseau de Kohonen apparaît à gauche du réseau, la couche d’entrée est connectée à la distribution des fréquences (résultat d’une FFT appliquée au signal audio, courbe à droite), la classification, à droite du réseau, correspond à différentes figures de danse.

 

 

Figure 3-2-1 : Réseau de Kohonen

 

3-3 Un outil pour la chorégraphie

Dans un autre exemple j’utilise le programme mettant en scène une danseuse virtuelle interactive « intelligente ». Celle-ci, destinée à des spectacles, doit pouvoir s’adapter à n’importe quel type d’entrées (audio, gestuelles ou autre). Les réseaux qui la meuvent doivent donc pouvoir être construits très rapidement, interactivement et par des non spécialistes. Un menu guide l’utilisateur au cours des différentes phases de l’apprentissage :

1) Définition du réseau : Combien de couches, combien de neurones sur chacune d’entre elles, valeurs de différents paramètres (constantes d’apprentissage, lois sigmoïdes, etc..) (figure 3-3-1).

2) Entrée des couples d’apprentissage.

3) Lancement de l’apprentissage

4) Utilisation du réseau lors d’une interaction.

Chaque étape visualise en temps réel les actions de l’utilisateur ainsi que les réponses du système.

Cette méthode sépare nettement la phase d’apprentissage de l’utilisation de la matrice ainsi construite, mais dans la réalité il n’en est rien et un organisme évolué apprend continuellement. J’ai donc parallélisé le processus d’apprentissage, très gourmand en temps de calcul, afin qu’il puisse se dérouler en même temps que l’affichage sans ralentir celui-ci. Il en résulte une interactivité beaucoup plus crédible.

 

 

Figure 3-3-1 : Configuration d’un réseau

 

3-4 Exemple de questionnement : Celui de l’imitation

Un réseau neuronal est en lui-même un système abstrait insensible à la sémantique de ses entrées, celles-ci peuvent donc être connectées à n’importe quel type de capteurs :

Dans l’expérience de la Funambule Virtuelle ces capteurs modélisaient une sorte de kinesthésie, sens par lequel le personnage virtuel prenait connaissance de la disposition de son propre corps (mesurée par les angles relatifs de ses membres), ces informations, passées en entrée du réseau, donnaient lieu, en sortie, à la description du mouvement qui rétablissait l’équilibre.

 

Dans une troisième série d’expérimentations j’ai construit un personnage artificiel muni d’un œil (une caméra vidéo), d’une rétine (l’image numérique produite par cette caméra) et d’un nerf optique (les connexions de chaque pixel de cette image à autant de neurones sur la couche d’entrée). Le réseau transmet l’activation des ses entrées aux couches cachées successives et jusqu’à ses sorties qui sont des neurones moteurs agissant sur le système musculaire animant le personnage virtuel. Lorsque une image est présentée en entrée, le corps prend une position qui dépend de la matrice des poids et, lorsque cette image change, c’est à dire lorsque l’œil regarde, le corps bouge. La matrice est initialisée aléatoirement, les mouvements sont donc arbitraires et, bien que produits par l’image, ils ne semblent pas avoir de relation avec elle. Nous nous proposons d’affecter à cet acteur virtuel la capacité d’imiter. Pour cela nous construisons des couples d’apprentissage sous la forme d’une image (la photo d’un expérimentateur réel prenant une certaine position) et d’une configuration du corps virtuel reproduisant cette position. Puis nous entraînons ce réseau par l’algorithme de la rétropropagation de l’erreur de façon à ce qu’il reconnaisse les positions montrées. A l’issu de cet entraînement, grâce à la propriété de généralisation des réseaux neuronaux, ce réseau est capable de reconnaître, non seulement les positions apprises, mais encore toutes les positions proches de celles-ci et, même, des positions non apprises.

            Pour réaliser ces expérimentations j’ai écrit un programme interactif interfaçant le modèle neuronal avec une webcam.

            Sur les figures 3-4-1, 3-4-2 et 3-4-3 on voit l’image d’un objet clair se déplaçant sur la rétine (en bas et à gauche de l’écran) et se projetant sur les neurones de la couche d’entrée (à gauche du réseau) dont l’activation, passée aux neurones moteurs de sortie (via la couche cachée)  agissent sur les muscles du personnage virtuel et le font bouger.

            La figure 3-4-4 montre la saisie de couples d’apprentissages. Trois positions debout et trois positions accroupies ont déjà été saisies (elles apparaissent sous la forme de petites photos en haut de l’écran). Une position écartée est en cours de saisie, l’image caméra apparaît en bas et à gauche de l’écran, le personnage est mis dans la même position écartée. Le réseau en activité apparaît au milieu, avec sa couche d’entrée connectée à la rétine (les pixels de l’image caméra), sa couche cachée et sa couche de sortie connectée aux muscles du personnage virtuel. Les segments blancs entre les couches figurent l’influx nerveux circulant entre les neurones.

            La figure 3-4-5 montre l’apprentissage en train de se faire. La courbe d’erreur reproduit les pérégrinations de l’algorithme d’apprentissage, montrant de nombreuses hésitations et même de fausses pistes, rapidement abandonnées. Initialement de 75% , l’erreur tombe en dessous des 50% après une vingtaine d’essais, elle n’est plus que de 26% après 38 essais.

            Sur la figure 3-4-6 on voit que la courbe d’erreur descend globalement et, après 210 essais l’erreur est tombée en dessous de 2%, ce qui est un excellent apprentissage.

            La figure 3-4-7 montre le réseau en action en train de reconnaître une position prise par un acteur réel devant la caméra. On voit que l’image de celui-ci, en bas et à gauche, ne reproduit qu’imparfaitement la position écartée (sur la figure 3-4-4, les bras sont plus hauts), cependant le réseau a reconnu cette position.

            Notons que « imiter » ne signifie pas nécessairement « faire la même chose ». Par exemple nous pouvons donner des couples d’apprentissages arbitraires pour apprendre au personnage virtuel à se lever quand on se baisse ou à se plier quand on s’étend.

            Une utilisation intéressante de ce système consisterait à le confier à un chorégraphe qui entraînerait le personnage virtuel à danser dans un certain style.

            Une autre application consiste à munir le personnage virtuel simultanément de plusieurs sens, par exemple l’ouie et la vue, en connectant une caméra vidéo et un signal audio aux entrées de un ou plusieurs réseaux neuronaux. J’ai réalisé une telle installation interactive proposant aux spectateurs de danser sur une musique avec un personnage virtuel qui « entendait » également cette musique. Il en résulte une mise en résonance des deux danseurs (réel et virtuel) avec la musique.

 

Figure 3-4-1 : Un objet clair, en bas de l’image rétinienne, produit une activation des neurones d’entrée

 

Figure 3-4-2 : L’objet s’est déplacé, l’activation aussi, le personnage change de position

 

Figure 3-4-3 : L’objet s’est encore déplacé, l’activation aussi, le personnage change de position

 

 

Figure 3-4-4 : 3 positions debout et 3 positions accroupies ont déjà été saisies, l’acquisition d’une position écartée est en cours

 

 

Figure 3-4-5 : Début d’apprentissage (erreur de 26% après 38 essais)

 

 

 

Figure 3-4-6 : Amélioration de l’erreur qui est tombée à moins de 2% (après 210 essais)

 

 

 

Figure 3-4-7 : Réseau en action : Le personnage prend une position proche de la position apprise (écartée), bien que la position montrée ne soit pas exactement celle proposée en apprentissage (voir figure 3-4-4).

 

4 Conclusion

         Je crois avoir montré, à travers la création du logiciel « anyflo », de ses interfaces pédagogiques et artistiques et des dispositifs ludo-éducatifs que peuvent être les installations interactives, que les problématiques de la création numérique sont inséparables de celles de l’interactivité. Loin de se réduire à un simple schéma stimulus-réponse elle s’apparente au schéma perception-action à la base des comportements les plus évolués des êtres vivants et faisant intervenir un système nerveux dont la plasticité lui permet de se transformer et de s’adapter à son environnement par apprentissage. Ainsi se trouve  dépassée, je pense, l’opposition traditionnelle entre une soit disant rationalité scientifique ou technique et une prétendue intuition artistique : Finalement, tout ceci n’est qu’une affaire de neurones…

 



[1] Alain Berthoz: Le sens du mouvement, Editions Odile Jacob Sciences, 1997

[2] M. Bret, M.H. Tramus, A. Berthoz, Interacting with an intelligent dancing figure : artistic experiments at the crossroads between art and cognitive science, Leonardo, Vol 38, No 1, pp. 46-53, 2005.

[3] M.-H. Tramus, M. Bret, E. Couchot , La seconde interactivité, in Arte e vida no século XXI, Organizadora Diana Domongues, UNESP, Brasil (2003).

[4] Karl Sims, Evolving Virtual Creatures, in Computer Graphics, 15-22, 1994.

[5] Michiel Van de Panne, Eugène Fiume, Sensor-Actuator Networks, in Computer Graphics, 335-342, 1993.

[6] M. Bret, Virtual Living Beings, in Lecture Notes in Artificial Intelligence, Virtula Worlds 119-134, Ed. Jean-Claude Heudin, Springer 2000.

[7] Jean Pierre Changeux, L’homme neuronal, Fayard, 1983

[8] Hervé Abdi: Les réseaux de neurones, Presses Universitaires de Grenoble 1994.

[9] T. Kohonen, Self-Organization and Associative Memory, Springer-Verlag 1984