LA VIE ARTIFICIELLE: SYSTÈMES, APPLICATION A L´INTERACTIVITÉ

Modèles
L´approche par objets
Les systèmes adaptatifs
Application aux installations interactives

















































Modèles


       Théories, systèmes et modèles

       Modèles fonctionnels

       Modèles comportementaux

Théories, systèmes et modèles

         Une théorie est un ensemble cohérent de concepts et de structures symboliques formant un langage de manipulation [Cardon 2000]. Par exemple la théorie des ensembles, en mathématiques, note les ensembles, leurs éléments, et définit des opérations en utilisant la logique formelle.
         Walliser [Walliser 77] définit un système comme étant "un ensemble autonome en rapport avec son environnement, un ensemble cohérent constitué de sous-systèmes en interactions et enfin un ensemble subissant des modifications plus ou moins profondes mais lui assurant toujours une certaine permanence". L´état d´un système le caractérise à un instant donné et se déduit de la description de ses éléments à cet instant, l´ensemble de ses états dans un intervalle de temps est appelé sa trajectoire comportementale. Un système est une construction abstraite structurée et opérative en ce sens qu´elle produit des résultats et peut être considérée comme l´illustration d´une théorie.
         Un modèle peut être une transcription abstraite, utilisant une théorie, d´une réalite concrète dont l´étude empirique ne serait qu´approximative. Ainsi un modèle économique peut-il utiliser la théorie des jeux stratégiques pour rendre compte d´échanges de richesses.
         Un modèle peut être aussi une matérialisation d´une théorie en permettant une compréhension intuitive.
         En général un modèle participe de ces deux approches, il est en même temps illustration d´une réalité et interprétation d´une théorie.
         Par exemple les modèles d´éclairement de la synthèse utilisent l´optique géométrique (qui est une théorie expliquant les interactions de la lumière et de la matière) pour simuler sur ordinateur la vision d´une scène réelle.

Modèles fonctionnels

         La méthode analytique consiste à décomposer un problème en sous-problèmes plus simples dont les résolutions conduisent à la solution.
         Les modèles fonctionnels sont une illustration de cette méthode, ils supposent le problème bien posé et décomposable en sous-problèmes parfaitement identifiables et résolubles.
         Par exemple, en synthèse d´image, la méthode dite du ray tracing analyse une scène 3D parfaitement modélisée et fixe pour en donner un "instantané"; les sous-problèmes (calculer l´éclairement en tous les points de l´image) sont résolus par un procédé récursif de "réflexion-réfraction".
         Les modèles fonctionnels produisent des systèmes décomposables dont les sous-systèmes sont parfaitement définis. Leur déterminisme les rend très puissants pour résoudre des problèmes simples (tels que les simulations de phénomènes physiques modélisés de façon déterministe, comme la dynamique Newtonienne, la synthèse d´images 3D, ...) Mais ils échouent dès lors qu´une complexité organisationnelle fait intervenir de multiples interactions entre éléments variables dont le comportement est pratiquement imprévisible (tels que la simulation d´une société d´insects ou de robots).

Modèles comportementaux

         L´analyse détruit les propriétés émergentes, et d´autres méthodes doivent être trouvées pour l´étude de telles propriétés (comme la prédiction du comportement d´une colonie d´êtres vivants, naturels ou artificiels, ou encore la simple prévision du temps).
         Lorsqu´un modèle fonctionnel est insuffisant, on utilise un modèle comportemental en définissant une connaissance du domaine auquel s´applique le problème posé et en construisant une représentation des comportements des éléments du système. La solution résulte alors de l´activation du système, ce qui revient à le faire "tourner" en situation. Remarquons que de tels modèles ne supposent pas que soient connus, ni la solution du problème, ni même un algorithme de résolution.
         Au lieu d´écrire un algorithme, puis un programme, censés trouver la solution, on utilise une machine virtuelle, sous la forme d´un système complexe qui, en s´adaptant aux conditions initiales, évolue vers une solution (que l´on souhaite la meilleure possible) du problème, tout comme un être vivant, confronté au réel, trouve des solutions, c´est à dire s´adapte pour survivre.
         Pour un tel système qui est dit non simplement décomposable [Cardon 2000], "on ne sépare pas clairement l´observateur du système qu´il observe, on ne le décompose pas clairement en sous-systèmes indépendants et son comportement est non strictement prévisible, car organisationnellement changeant et non stable".

L´approche par objets


       Le génie logiciel

       L´approche orientée objets

Le génie logiciel

         L´informatique classique, pour résoudre des problèmes de plus en plus complexes dépassant l´entendement d´un seul être humain, a mis en place des méthodes garantissant une efficacité maximum à des coûts minimums en investissements matériels et humains (conception et maintenance). Le but est de rationaliser les développements d´applications impliquant des compétences multiples et conduisant à l´écriture de programmes de grandes tailles.
         La programmation structurée répondait, dans les années 60-70, à cet objectif en organisant les programmes sous forme de procédures manipulant des entitées partagées; le code et les données étaient nettement séparées. Il s´agissait de trouver, par un découpage analytique, de bonnes fonctions qui seraient exécutées au bon moment avec les bonnes données, tout comme un puzzle se construit par assemblage, dans le bon ordre, des bonnes pièces.
         Les langages d´acteurs, comme PLANNER (1971), traitent d´acteurs dont les comportements sont fonction des messages qu´ils reçoivent.
         La programmation orientée objet s´organise autour d´objets pouvant interagir les uns avec les autres. Les objets sont définis par agrégation, composition et généralisation, pour construire un système dont l´évaluation et la validation sont constantes tout au long de son évolution. Dans cette approche les entités, designées sous le terme d´objets, ont un plus grand degré de liberté, ressemblant aux pièces d´un jeu de Lego, nombreuses mais déterminées, dont l´assemblage cohérent peut être multiple.
         SIMULA (1966) fut un pionner en la matière en proposant pour la première fois le concept d´encapsulation (consistant à regrouper, dans un même objet, des données et des procédures). Son successeur, SMALLTALK (1972), introduit la notion de langage reflexif (c´est à dire doué de capacité d´auto-description). Puis vinrent OBJECTIVE-C (1980), EIFFEL (1988), C++, ...
         La plupart des grands logiciels de synthèse du commerce (SoftImage, Maya, Nemo, ...) ont recourt à ce type de programmation, ainsi, d´ailleurs, que la plupart des logiciels utilisés dans le monde de l´industrie.

L´approche orientée objets

         Une abstraction est le procédé par lequel les invariants d´un système sont caractérisés comme objets bien définis et rigoureusement délimités.
         Un type abstrait est le couple formé d´une structure de données et d´un comportement ou ensemble d´opérations décrivant la façon dont ces données sont manipulées.
         Un objet est une abstraction dont la structure et le comportement sont bien définis et qui réagit à des sollicitations, prévues à l´avance, qu´il reconnait. Un objet doit, d´une part, représenter (comme un signe) et doit, d´autre part, permettre l´écriture et le debugging aisés des programmes. Il désigne à la fois le concept organisationnel de base et l´objet logiciel concret qui sera exécuté par un ordinateur réel. Il s´agit de passer du domaine conceptuel (des idées) au domaine concret (des réalisations logicielles) le plus naturellement possible en contrôlant rationnellement les équipes qui conçoivent le système. Un objet présente deux faces, l´une, structurelle, décrivant sa morphologie et l´autre, comportementale, décrivant la façon dont sont manipulés ses champs. Il peut aussi réagir, lors de réception de messages, par des méthodes.
         Une classe est la désignation abstraite des entités modélisées. On peut voir une classe comme l´ensemble de tous les objets potentiels ayant une description et un comportement communs, et un objet comme une instance de la classe à laquelle il appartient. La notion de classe est la généralisation de celle de type dans les langages struturés.
         L´approche orientée objet est donc fondamentalement une méthode fonctionnelle procédant par une analyse descendante supposant une catégorisation du domaine à modéliser: Les choses, les événements (produits par les choses) et les interactions entre les choses. Cette conception fige une fois pour toute la description du système (qui est supposé fonctionnellement décomposable) et devient inopérante pour décrire un monde non connu à priori (problème de la découverte aussi bien scientifique qu´artistique) comme le sont la plupart des systèmes naturels évolutifs.

Les systèmes adaptatifs


       Réaction et interaction

       Les systèmes perceptifs

       Les systèmes adaptatifs

       Structure d´un système adaptatif

       Complexité organisationnelle

Réaction et interaction

         Un système réactif est un système réagissant de façon automatique à tout stimulus extérieur sur le mode réflexe par déclenchement d´une réponse. Par exemple un gestionnaire de fenêtres, la plupart des logiciels de synthèses et des installations interactives simples, beaucoup de systèmes de contrôles industriels, sont des systèmes réactifs.



         Lorsque le système fait partie d´un environnement, le stimulus provient de ce dernier et la réponse y tombe, si bien qu´elle peut modifier le stimulus lui-même. On parle de rétroaction ou encore de feed back.


Les systèmes perceptifs

         Lorsque la réponse est susceptible de modifier, non seulement le stimulus, mais le système lui-même, on peut dire que celui-ci perçoit son environnement, tout comme un organisme vivant qui, pour prendre connaissance de l´univers dans lequel il vit, y entreprend des actions et en perçoit les effets en retour.
         Pour un système perceptif tout action de l´environnement est symbolisée sous forme d´une entité dont certains éléments sont les informations captées. Alors que l´événement est externe, sa symbolisation est interne. Une certaine connaissance est nécessaire au système pour identifier les événements et y répondre de façon appropriée.
         Les résolveurs de problèmes à entrées symboliques et certains systèmes experts sont des systèmes perceptif, ainsi que quelques installations interactives évoluées.


Les systèmes adaptatifs

         Un système adaptatif peut être décrit comme un noyau constitué d´entités en interaction, et d´une membrane le différenciant de son environnement. Le système s´adapte en permanence à son environnement et à son propre état réogarnisationnel. Il ne s´agit plus de résoudre un problèmen parfaitement formulé, mais plutôt d´expérimenter une auto-organisation sur une représentation interne du problème. Un exemple est fourni par une population de robots devant réaliser des tâches déterminées dans un environnement à priori inconnu.
         La notion de représentation est fondamentale pour un système adaptatif qui interpréte les stimuli issus de son environnement afin de se reconfigurer et d´agir en fonction d´un but. La trajectoire comportementale d´un tel système est évolutive et périssable, les buts eux-mêmes peuvent changer de façon non linéaire et imprévisible. Un tel système a un comportement chaotique [Prigogine 1996] (voir aussi 3-2) en ce sens que ses états futurs dépendent non seulement de ses états actuels et passés, mais encore de stratégies évolutives imprévisibles résultant des nombreuses interactions non déterministes entre ses composants.
         Les systèmes adaptatifs ne sont pas décomposables (voir 5-1-3) ,ils sont complexes et leurs capacités comportementales ne sont pas le simple résultat d´un ensemble prédéterminé de réactions aux stimuli de leur environnement ("feed-back" simple): Ce sont des systèmes autopoïétiques [Varela 74], c´est à dire définis par l´organisation de leurs composants et non pas par les composants eux-mêmes. De plus ils possédent une certaine représentation de leur environnement et d´eux-mêmes leur permettant une mise en scène abstraite de situations les impliquant et, donc, d´anticiper ces situations. Alain Cardon [Cardon 2000] voit même dans ces systèmes une modélisation possible de la conscience artificielle. Le problème de la conscience a longtemps été traité sur la base du dualisme (Descartes et Gagilée) qui sépare radicalement la réalite physique, traitée par la science, et l´existence d´une âme relevant de la philosophie ou de la religion. Mais la science moderne considère que tous les phénomènes mentaux sont d´origine biologique et que ce dualisme n´a plus lieu d´être [Searle 99]. Cela ne veut pas dire que, selon l´hypothèse de l´Intelligence Artificielle Forte, la conscience ne serait finalement qu´un programme et que sa simulation pourrait être intégralement réalisée sur ordinateur. Le phénomène de conscience serait plutot une propriété du cerveau, une émergence de son organisation, et rien ne peut exclure qu´une émergence identique ne puisse se réaliser sur un autre support, par exemple artificiel.
         Ayant une représentation signifiante, les systèmes adaptatifs supposent une modélisation d´une certaine connaissance. Initialement le système est doté d´un ensemble de représentation minimal qu´il modifie, au cours de ses interactions avec l´environnement et lui-même, pour construire de nouvelles désignations.

Structure d´un système adaptatif

         Les entités de base sont les éléments constitutifs du système et dont l´organisation est le support de la représentation. Ces entités évoluent dans le temps et communiquent au moyen d´un langage interprétatif basé sur un automate à états localement aléatoire, c´est à dire dont les transitions, bien que calculables, ne sont pas exactement déterministes. Cette instabilité locale du processus de représentation est nécessaire pour qu´un système adaptatif ne retourne pas à l´état dégradé de système réactif.
         La membrane sert d´interface entre le monde extérieur et le système qui n´en a connaissance que via des capteurs et des filtres, elle permet aussi, en délimitant la frontière entre le noyau et l´extérieur, de définir l´identité des entités de base.
         Les effecteurs sont les moyens (réels ou virtuels) par lesquels le système agit sur l´extérieur.


Représentation                   Système                   Environnement

         Un système adaptatif apparait donc comme constitué d´un ensemble d´entités de base non totalement stables, de la structure définie par les relations entre les entités et leurs actions, et d´une membrane. Il s´adapte à son environnement en s´en construisant une représentation pour y agir au mieux, et en se réorganisant dans ce but.
         Le système construit, par simulation, une mise en scène d´un scénario possible dont lui-même est acteur. Une mise à distance, réalisée grâce à un langage abstrait, lui permet d´agir au sein de cette représentation, et d´anticiper ce qu´il pourrait advenir dans la réalité (c´est à dire dans l´environnement réel).
         Un système adaptatif a la capacité d´apprendre et l´organisation de ses entités de base constitue une mémoire organisationnelle (voir Le connexionnisme en image de synthèse les mémoires associatives

Complexité organisationnelle

         La complexité, dans le domaine du calculable, permet de mesurer ce qui est facilement calculable, ce qui est difficile de calculer ou, même, ce qui n´est pas exactement calculable.
         La complexité de Kolmogorof C(s) d´une suite binaire s est la longueur du plus petit programme d´une machine de Turing universelle qui la produit.
         La profondeur logique de Bennett P(s) d´une suite binaire est le temps minimal de calcul d´un programme la générant. Par exemple la genèse d´un être humain (ensemble de cellules) à partir de son génome (suite linéaire exprimant le plan de cette genèse) est un processus hautement complexe, et elle dure effectivement 9 mois.
         P(s) traduit mieux la notion de complexité du precessus de construction récursive d´une courbe De Von Koch à l´ordre 10, que C(s) qui est le même quel que soit la profondeur de la récurrence (voir le cours Éléments de mathématiques pour la synthèse).
         Un système adaptatif est initialement produit par un plan, un programme, permettant la construction de ses entités de base, leurs relations, sa membrane et sa structure. Ce programme s´exécute en parallèle en tenant compte de l´état du système en construction. Un système est dit organisationnellement complexe si sa genèse implique des processus adaptatifs au cour desquels le système, partiellement construit, s´adapte en son entier, la réalisation du système étant sa dernière adaptation. C´est le cas des systèmes adaptatifs.

Application aux installations interactives


       L´installation comme système

       L´interactivite réactive

       Les installations mécaniques

       Les installations dynamiques

       Les installations comportementales

       Les installations adaptatives

L´installation comme système

         Une installation interactive peut être vue comme un système interagissant avec son environnement. Mais c´est aussi un dispositif concret mis en situation réelle avec le monde physique, on peut donc aussi la voir comme réalisation d´un modèle.
         Il y aura plusieurs types d´installations interactives correspondant aux différents types de modèles évoqués ci-dessus: Fonctionnel, comportemental et adaptatif (voir aussi 6-3-3):

L´interactivite réactive

         Lorsque l´interactivité est réduite au constat qu´un humain peut communiquer avec un ordinateur par l´échange de messages, nous parlerons d´interactivité de degré zéro qui est générée par un système réactif (voir 5-3-1).
         C´est le cas par exemple d´un éditeur de texte, d´une palette graphique ou, plus généralement, de toute interface manipulant procéduralement les informations.
         D´un tel système on ne peut rien attendre d´autre que ce que ses concepteurs y ont mis, il ne présente donc aucun intéret du poins de vue de la création. Pour des raisons qu´il resterait à découvrir, la plupart des interfaces existantes recourent cependant à ce genre d´interactivité (peut-être faut-il y voir une volonté de simuler les anciens outils, réactifs, parce que mécaniques).

Les installations mécaniques

         Les premiéres installations interactives simulaient le fonctionnement des machines du XIX ème siècle par un simple feed-back réflexe. L´ordinateur ne sert alors qu´à améliorer la vitesse du processus, mais le même résultat aurait pu pratiquement être obtenu par des moyens purement mécaniques. La grande diffusion de cette forme d´interactivité contribue d´ailleurs à disqualifier l´outil informatique auprès de nombreux utilisateurs qui le considèrent comme répétitif et trivial, peut-être n´ont-ils pas tord, du moins en ce qui concerne ce genre de systèmes ...

Les installations dynamiques

         La simulation de la mécanique Newtonienne améliore considérablement le réalisme et procure des sensations kinesthésiques très intéressantes (simulateurs et jeux de toutes sortes, en particulier appliqués au sport), certains dispositifs, dits à retour d´effort, symétrisent l´interaction, le système envoyant à l´utilisateur des réactions physiques (et non plus seulement visuelles) instantannées, en réponse à ses actions (voir par exemple les instruments de musique virtuels de l´ACROE).

Les installations comportementales

         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.
         C´est le cas de la funambule virtuelle (Bret Tramus 2000)qui met en scène une funambule virtuelle ainsi structuré:
         1) Un module dynamique produisant des mouvements crédibles d´un corps féminin en équilibre sur un fil et soumi à différentes forces:
                  Un champ de pesanteur.
                  Des forces réflexes de rééquilibrage.
                  Des forces externes produites par le module d´interaction.
                  Des forces internes volontaires produites par le module comportemental.
         2) Un module comportemental lui-même structuré sur deux niveaux:
                  Production de forces réflexes de maintient de l´équilibre.
                  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.
         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 capteurs angulaires et de pression donnant les positions relatives des membres et du pied en contact avec le fil, 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 de l´erreur. Lorsque toutes les erreurs sont inférieures à un seuil donné, la matrice des poids est sauvée.
         Dans un deuxième temps l´interaction est lancée en temps réel, le module connexionniste utilisant la matrice précalculée.
         Dans une version future, les deux processus (apprentissage et utilisation de la matrice) seront lancés en parallèle, le funambule apprenant, en temps réel, les réactions du spectateur. Nous comptons aussi appliquer ce principe à la chorégraphie en mêlant des danseurs virtuels "intelligents" à des danseurs réels.

Les installations adaptatives

         Un pas supplémentaire est franchi avec les modèles adaptatifs qui se font une représentation de leur environnement et qui modifient, non seulement leur comportement, mais encore leur morphologie, aussi bien au niveau ontogénétique (de l´individu) qu´au niveau phylogénétique (de l´espèce). L´installation est alors un petit univers, ou un écosystème, se développant de façon autonome, définissant ainsi une nouvelle forme d´interactivité propre à la vie artificielle, en symbiose avec le, ou les, spectateurs(s).
         Karl Sims, avec son installation Genetics Images, illustre ses recherches dans le domaine de la vie artificielle en donnant à voir un processus d´évolution, obéissant aux principes de la sélection naturelle de Darwin, à l´oeuvre sur des images: Le spectateur est invité à choisir, parmi un certain nombre de combinaisons génétique, celles des images qu´il préfére. La fonction d´adaptation des algorithmes génétiques (avec lesquels est programmée cette installation) est ici un choix esthétique. Une nouvelle forme d´émotion artistique est ainsi créée, qui n´est plus simplement une contemplation, mais qui relève de la création même.
         L´installation Las Meninas de Michael Tolson est une réflexion sur la représentation inspirée du tableau de Velasquez, elle se présente sous la forme d´un double dispositif (reflétant le double mode de représentation proposé par Velasquez): D´une part un écosystème simulé constitué de petites créatures artificielles dont la croissance et les mouvements dépendent de l´intervention du spectateur (les processus sont gérés par des réseaux neuronaux et des algorithmes génétiques). D´autre part cette scène peut être vue, inversée (métaphe du miroir dans le tableau), au moyen de jumelles stéréoscopiques, procurant ainsi cette double vision.