• Aucun résultat trouvé

a instancier une interaction `a activation unique, il est possible d’imaginer que le ph´enom`ene r´ealise directement cette action. Ainsi, il y aurait bien une interaction ponctuelle. Cela signifie que l’on permet au ph´enom`ene de modifier directement la structure du mod`ele.

La raison pour laquelle nous n’avons pas encore introduit cette possibilit´e dans le mod`ele g´en´erique est que nous n’avons d´ecrit que l’ordonnancement des interactions. Cela m´eriterait donc une r´eflexion sur l’ordonnancement des actions r´ealis´ees par les ph´enom`enes sur les constituants. Autrement dit, il faudrait s’assurer que l’action d’un ph´enom`ene soit stricte-ment ´equivalente en terme de r´esultat, `a la cr´eation d’une interaction, `a son activation par l’ordonnanceur, puis `a son suicide. De plus, r´ealiser concr`etement cet aspect du mod`ele n’est pas une priorit´e actuellement. Nous pr´ef´erons donc ne pas le formaliser dans cette th`ese qui n’est qu’une ´etape, nous gardons n´eanmoins cette possibilit´e en perspective. Il temps maintenant de nous pencher sur (( le )) mod`ele de la r´ealit´e virtuelle : l’utilisateur.

5.4 L’humain dans la boucle

L’objectif premier de ce travail est l’´etablissement d’un mod`ele g´en´erique de mod´elisation des syst`emes vivants pour la r´ealit´e virtuelle. La prise en compte de l’utilisateur d`es la construction du mod`ele est fondamentale pour assurer la dimension r´ealit´e virtuelle. Dans cette section, nous montrons en quoi la prise en compte de l’utilisateur est imm´ediate. Nous montrons ensuite comment l’utilisateur/mod´elisateur peut agir sur le mod`ele. Enfin, nous ´elargissons `a la notion d’interface.

5.4.1 L’utilisateur : m´ediation des sens et de l’action

L’utilisation du principe d’autonomie pour la construction des mod`eles en r´ealit´e virtuelle nous conduit `a mod´eliser l’utilisateur. En g´en´eral, cet acte se traduit par la cr´eation d’un

L’humain dans la boucle

avatar de l’utilisateur. Ensuite, tout ce passe comme s’il ´etait un mod`ele autonome parmi les autres.

Nous avons construit nos mod`eles comme un ensemble de syst`emes autonomes en cou-plage structurel. Cette fa¸con d’appr´ehender la mod´elisation inspir´ee des travaux de Varela sur la mod´elisation du vivant, poss`ede l’avantage de tr`es bien s’adapter `a l’id´ee d’´enaction pr´esent´ee dans l’´etat de l’art (voir section 3.1.1). Ainsi, pour permettre `a l’utilisateur de faire l’exp´erience du mod`ele num´erique, il faut le mettre en couplage avec ce dernier.

Dans le cadre du mod`ele g´en´erique que nous nous sommes fix´es, le couplage entre l’utilisa-teur et le mod`ele est tr`es simple. Il suffit de lui donner acc`es aux objets Constituants. Chaque modification d’´etat que pourra ex´ecuter l’utilisateur sera per¸cue comme une perturbation par les autres syst`emes autonomes. Il apparaˆıt que la notion d’avatar n’est plus utile dans ce cas, puisqu’aucune entit´e du mod`ele n’a besoin de connaˆıtre explicitement l’utilisateur.

Finalement, afin d’augmenter au maximum le champ d’exp´erience de l’utilisateur, nous lui donnons acc`es par d´efaut `a l’ensemble de la structure de l’univers virtuel. La m´ediation des sens est donc r´ealis´ee par la mise `a disposition de l’utilisateur de l’information indiquant l’´etat des constituants. La m´ediation de l’action est elle, permise par la possibilit´e offerte `a l’utilisateur de modifier ou de cr´eer ces ´etats, c’est le rˆole de l’interface.

5.4.2 Le mod´elisateur : m´ediation de l’esprit

La troisi`eme m´ediation `a r´ealiser pour appliquer pleinement les possibilit´es offertes par la r´ealit´e virtuelle est la m´ediation de l’esprit. C’est-`a-dire que l’utilisateur doit aussi pouvoir ˆetre mod´elisateur. La solution id´eale pour offrir cette possibilit´e est de permettre le prototy-page interactif. C’est d’ailleurs ce que proposaient les travaux pr´eliminaires `a cette th`ese par l’utilisation du langage oRis [Harrouet et al., 2002; Desmeulles, 2003]. Deux raisons nous ont pouss´es `a abandonner cette possibilit´e : d’abord le prototypage interactif n´ecessite l’usage d’un langage interpr´et´e ce qui augmente consid´erablement les besoins en puissance de calcul ; en-suite, nous souhaitons que l’utilisateur/mod´elisateur soit un biologiste, il n’est pas souhaitable qu’il modifie le mod`ele informatique mais simplement le mod`ele biologique. Ceci implique qu’il n’y a pas `a cr´eer de nouvelle classe pendant la simulation, l’utilisateur/mod´elisateur doit simplement composer avec les instances des classes pr´eexistantes.

Nous voyons donc apparaˆıtre deux niveaux de mod´elisation : la mod´elisation informatique et la mod´elisation biologique. L’utilisateur ne doit avoir acc`es qu’`a la deuxi`eme. C’est `a dire qu’il peut intervenir sur les instances des organisations, des ph´enom`enes, des interactions, des constituants et de la structure. La structure et les constituants sont le domaine d’action que nous avons d´efini pour la m´ediation des sens et de l’action. Il nous reste donc `a aborder les trois autres points : organisations, ph´enom`enes et interactions.

Tout d’abord, les organisations sont les principaux objets d’action du mod´elisateur. L’ob-jet Organisation poss`ede un certain nombre de fonctions permettant `a tout moment de lui ajouter ou enlever des ph´enom`enes, des interactions, des sous-organisations. Il est ´egalement possible de modifier sa structure en modifiant l’ensemble des objets Constituant qu’elle connaˆıt. Pour chacune des actions cit´ees, des m´ecanismes de mise `a jour ont ´et´e d´evelopp´es pour permettre la prise en compte des actions de mod´elisation pendant l’ex´ecution des simu-lations.

Ensuite, il est possible de modifier les objets Ph´enom`ene qui d´efinissent les conditions d’apparition des interactions. D`es lors, il est possible d’inhiber ou de favoriser une interaction en jouant sur les param`etres du ph´enom`ene associ´e. Cette possibilit´e est tr`es int´eressante

pour comprendre le rˆole d’une interaction dans un syst`eme complexe.

Enfin, il est possible de vouloir jouer sur certains param`etres de certaines instances d’in-teraction. Ceci ne comporte pas de limite technique mais ne correspond pas `a la philosophie pr´econis´ee. En effet, les interactions doivent ´emerger des ph´enom`enes. Si on veut modifier leurs vitesses, param`etres... cette action doit se r´ealiser au niveau du ph´enom`ene qui instancie les interactions. Il reste cependant possible d’agir sur une instance particuli`ere d’interaction. Les interactions R´eaction fournissent un bon exemple de ce que l’on peut utiliser pour modifier les interactions (voir la section 5.1.4). En effet, le mˆeme m´ecanisme qui permet de cr´eer l’organisation Mod`eleSBML, les ph´enom`enes R´eactionPh´enom`eneet les interactions R´eaction, peut ˆetre utilis´e pour red´efinir certaines parties du mod`ele. Ajoutons que lorsqu’on modifie un ph´enom`ene, il est en charge de demander `a toutes les interactions concern´ees de se suicider pour pouvoir en g´en´erer de nouvelles.

Nous voyons paraˆıtre ici un avantage de notre choix de mod´elisation par rapport aux mod`eles agents bas´es entit´es et non interactions. En effet, dans un syst`eme multi-agents clas-sique les ph´enom`enes phyclas-siques ne sont r´ealis´es que si chaque entit´e poss`ede dans son com-portement les algorithmes permettant leur mise en œuvre. La notion de ph´enom`ene global n’existe pas, ce n’est qu’une abstraction que nous d´eduisons en g´en´eralisant le comportement des entit´es. Modifier, ajouter ou supprimer une loi dans l’univers virtuel revient alors `a mo-difier l’ensemble des entit´es qui le peuple ou `a imposer un contrˆole global. Dans notre cas, nous mod´elisons directement cette loi qui s’int`egre de mani`ere autonome dans le mod`ele car c’est l’influence de cette loi que nous voulons exp´erimenter. Il est appr´eciable de pouvoir ma-nipuler directement le ph´enom`ene plutˆot qu’une multitude d’objets, surtout pour permettre la m´ediation de l’esprit en temps r´eel.

Finalement, les principes d’autonomie et de r´eification des interactions nous permettent de r´ealiser `a peu pr`es toutes les actions de perturbation et de modification du mod`ele pendant son ex´ecution, `a condition que ces modifications entrent dans le champ des possibilit´es des classes d´ej`a d´efinies. Il appartient `a l’informaticien qui cr´ee le mod`ele num´erique de se poser la question de la libert´e de mod´elisation qu’il souhaite laisser au biologiste exp´erimentateur. Ensuite, il suffit de poss´eder les interfaces ad´equates.

5.4.3 A propos des interfaces`

Le rˆole des interfaces est donc de permettre la m´ediation des sens, de l’action et de l’esprit. L’´etablissement du mod`ele g´en´erique que tend `a exposer cette th`ese est une des ´etapes qui m`ene `a la r´ealisation d’un laboratoire virtuel. Nous n’avons pas ´etudi´e pr´ecis´ement les interfaces dans ce travail. La r´eflexion sur la conception d’interfaces ´elabor´ees pour l’exp´erimentation in virtuo m´erite bien de faire l’objet d’une th`ese `a part enti`ere. De plus, la r´ealisation d’interfaces est extrˆemement li´ee aux cas d’application. Or, nous essayons de nous placer dans le cas g´en´eral. Cependant, certaines pistes ont ´et´e ouvertes pour la mise en œuvre des interfaces ; celles-ci ayant valeur de test. Ainsi, nous v´erifions que le mod`ele permet la m´ediation des sens, de l’action et de l’esprit.

A titre d’exemple, nous pouvons citer la fenˆetre de visualisation des mod`eles 3D, fournie par la biblioth`eque AR´eVi. Elle permet `a l’utilisateur d’observer l’´evolution des corps des diff´erentes esp`eces cellulaires. Certaines informations peuvent ˆetre ajout´ees : visualisation du maillage du milieu ; modification de la couleur en fonction du niveau d’activation... Il est ´egalement possible d’afficher sur une courbe les concentrations chimiques `a l’endroit o`u l’utilisateur positionne une (( sonde )). Enfin, nous avons mod´elis´e une seringue virtuelle qui permet `a l’utilisateur d’ajouter une concentration mol´eculaire `a l’endroit o`u il le d´esire,

La libBio

n’importe quand dans les simulations. La partie application de la th`ese illustrera ces quelques interfaces.