10 modÈles pour les humanoÏdes chap10.pdf · 274 le traité de la réalité virtuelle virtuel, un...

42
10 MODÈLES POUR LES HUMANOÏDES Ronan Boulic, Stéphane Donikian et Franck Multon 10.1 INTRODUCTION Nous allons nous intéresser dans ce chapitre à la conception des humanoïdes de syn- thèse dans un contexte temps-réel pour la réalité virtuelle. On distingue deux grandes classes nécessitant la mise en oeuvre de modèles humanoïdes en réalité virtuelle : 1. disposer d’une représentation humanoïde de l’utilisateur au sein même de l’environ- nement virtuel. D’une manière générale la représentation de l’utilisateur dans l’en- vironnement virtuel est appelée avatar ; elle peut prendre toutes sortes de formes allant du solide texturé à l’humanoïde. Cette dernière forme plus complète s’impose lorsque la personne en interaction avec l’environnement virtuel cherche à reproduire des tâches qu’il serait trop coûteux ou trop dangereux de réaliser en environnement réel, par exemple la maintenance de systèmes complexes existants ou seulement à l’état de prototypes virtuels. D’une manière générale la modélisation complète de l’avatar est nécessaire lorsque l’Environnement Réel et l’Environnement Virtuel ne sont pas colocalisés. Ceci est le cas pour de nombreux domaines d’applications : formation, application militaire, psychothérapie, ainsi que pour l’animation temps- réel de personnage virtuel dans des contextes de productions télévisuelles, de perfor- mances artistiques ou de jeux. 2. disposer d’une représentation d’agents autonomes indépendants de l’utilisateur né- cessaire à la simulation d’environnements complexes impliquant plusieurs per- sonnes, voire une population. Tous les domaines d’applications ont a priori besoin d’agents autonomes indépendants et plus particulièrement la simulation d’environ- nements urbains, les applications militaires, la formation, les applications en psycho- thérapie et les applications ludiques ou artistiques. Le segment des jeux est l’un des plus dynamique à l’heure actuelle, en particulier pour la mise en oeuvre de mondes persistants. Le second cas de figure est le plus complexe, car il est nécessaire de faire fonctionner en étroite relation un certain nombre de briques logicielles, objets de ce chapitre. Ces humanoïdes doivent être dotés d’une incarnation (squelette et enveloppe corporelle), de capacités de perception (principalement visuelle), de traitement de l’information, de prise de décision (réaction et cognition) et d’action (motricité, dialogue). Au plus bas niveau, les humanoïdes se déplacent, utilisent des objets, interagissent entre eux et avec les éléments du décor. Il s’agit de générer des modèles de mouvement à par- tir d’analyses biomécaniques et de mouvements capturés, et de coordonner de façon réaliste les différents mouvements possibles : c’est la couche motrice. Au niveau in- termédiaire, les humanoïdes jouent la scène qui doit permettre l’accomplissement de l’action. Leurs comportements, leur gestuelle, leur expression physique au sens large doivent être en adéquation avec l’atmosphère, les dialogues, le décor : c’est la couche théâtrale. Au niveau le plus haut, bénéficier des avantages de l’autonomie des agents et de leur contrôle partiel nécessite de définir la notion de chef d’orchestre qui va suivre l’évolution de l’animation et influer sur celle-ci. Il détermine, par exemple, les rôles et les actions que doivent effectuer les acteurs, ainsi que le choix de la prise de vue à par- tir d’un scénario capable, entre autre, de réagir aux actions humaines : c’est la couche orchestrale. Ce dernier niveau n’est pas présenté ici car non spécifique à l’humain

Upload: others

Post on 29-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

10 MODÈLES POUR LES HUMANOÏDES

Ronan Boulic, Stéphane Donikian et Franck Multon

10.1 INTRODUCTION

Nous allons nous intéresser dans ce chapitre à la conceptiondes humanoïdes de syn-thèse dans un contexte temps-réel pour la réalité virtuelle. On distingue deux grandesclasses nécessitant la mise en œuvre de modèles humanoïdes en réalité virtuelle :

1. disposer d’une représentation humanoïde de l’utilisateur au sein même de l’environ-nement virtuel. D’une manière générale la représentation de l’utilisateur dans l’en-vironnement virtuel est appelée avatar ; elle peut prendre toutes sortes de formesallant du solide texturé à l’humanoïde. Cette dernière forme plus complète s’imposelorsque la personne en interaction avec l’environnement virtuel cherche à reproduiredes tâches qu’il serait trop coûteux ou trop dangereux de réaliser en environnementréel, par exemple la maintenance de systèmes complexes existants ou seulement àl’état de prototypes virtuels. D’une manière générale la modélisation complète del’avatar est nécessaire lorsque l’Environnement Réel et l’Environnement Virtuel nesont pas colocalisés. Ceci est le cas pour de nombreux domaines d’applications :formation, application militaire, psychothérapie, ainsique pour l’animation temps-réel de personnage virtuel dans des contextes de productions télévisuelles, de perfor-mances artistiques ou de jeux.

2. disposer d’une représentation d’agents autonomes indépendants de l’utilisateur né-cessaire à la simulation d’environnements complexes impliquant plusieurs per-sonnes, voire une population. Tous les domaines d’applications ont a priori besoind’agents autonomes indépendants et plus particulièrementla simulation d’environ-nements urbains, les applications militaires, la formation, les applications en psycho-thérapie et les applications ludiques ou artistiques. Le segment des jeux est l’un desplus dynamique à l’heure actuelle, en particulier pour la mise en œuvre de mondespersistants.

Le second cas de figure est le plus complexe, car il est nécessaire de faire fonctionneren étroite relation un certain nombre de briques logicielles, objets de ce chapitre. Ceshumanoïdes doivent être dotés d’une incarnation (squelette et enveloppe corporelle),de capacités de perception (principalement visuelle), de traitement de l’information,de prise de décision (réaction et cognition) et d’action (motricité, dialogue). Au plusbas niveau, les humanoïdes se déplacent, utilisent des objets, interagissent entre euxet avec les éléments du décor. Il s’agit de générer des modèles de mouvement à par-tir d’analyses biomécaniques et de mouvements capturés, etde coordonner de façonréaliste les différents mouvements possibles : c’est la couchemotrice. Au niveau in-termédiaire, les humanoïdes jouent la scène qui doit permettre l’accomplissement del’action. Leurs comportements, leur gestuelle, leur expression physique au sens largedoivent être en adéquation avec l’atmosphère, les dialogues, le décor : c’est la couchethéâtrale. Au niveau le plus haut, bénéficier des avantages de l’autonomie des agentset de leur contrôle partiel nécessite de définir la notion de chef d’orchestre qui va suivrel’évolution de l’animation et influer sur celle-ci. Il détermine, par exemple, les rôles etles actions que doivent effectuer les acteurs, ainsi que le choix de la prise de vue à par-tir d’un scénario capable, entre autre, de réagir aux actions humaines : c’est la coucheorchestrale. Ce dernier niveau n’est pas présenté ici car non spécifique àl’humain

Page 2: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

274 Le traité de la réalité virtuelle

virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1.

Ce chapitre se concentre sur les approches de modélisation et de contrôle permet-tant une interaction temps-réel, tant ce sujet peut à lui seul justifier un ouvrage dé-dié [Watt e.a., 2003], [Magnenat-Thalmann e.a., 2004], [Funge, 2004]. La contraintedu temps-réel est particulièrement sévère pour un système mécanique aussi complexe,c’est pourquoi sa modélisation repose sur de nombreuses simplifications selon l’usagequ’il est prévu d’en faire. Le chapitre est structuré de la manière suivante. Nous rap-pelons tout d’abord les grandes lignes du standard H-ANIM offrant un ensemble deconventions pour la représentation du squelette et du mouvement. Nous présentonsensuite deux grandes familles de techniques d’animation, la cinématique directe et in-verse, avant d’évoquer la capture temps-réel du mouvement et son adaptation pourrésoudre de nouvelles contraintes. Une réflexion sur l’intégration de la dynamique clôtla première partie du chapitre. La seconde partie traite desmécanismes permettant demettre en œuvre une autonomie croissante au sein des entitésanimées. Nous y présen-tons tout d’abord les modèles de comportement réactifs synthétisés par la boucle deperception-décision-action. Suivent les modèles de comportement cognitifs, collectifset sociaux. Une brève conclusion souligne les axes principaux des travaux de rechercheet développements dans ce domaine très riche.

10.2 L’HUMAIN VIRTUEL

L’atlas anatomique Gray, accessible gratuitement en ligne[Gray, 1918], est une res-source précieuse pour se faire une idée de la complexité du corps humain d’un point devue biomécanique et physiologique. Il va sans dire que des simplifications importantessont requises pour permettre l’animation temps-réel d’un humanoïde en trois dimen-sions. L’histoire de ces techniques commence dès les années1960 comme le rappelletrès bien David Sturman dans son article sur l’animation de marionnettes virtuelles[Sturman, 1998]. Dès ses débuts, ce domaine a énormément bénéficié de l’apport de laRobotique aussi bien en modélisation qu’en contrôle [Craig, 1989] tout en développantau cours du temps une famille de modèles plus spécifiques [Badler e.a., 1993b]. L’objetde cette section est de présenter rapidement deux efforts destandardisation facilitant lamise au point et le partage d’animations de personnages virtuels.

10.2.1 H-ANIM

Le standard H-ANIM [Group, ] résulte d’un effort concerté entre plusieurs laboratoiresde recherche et compagnies pour définir en particulier un ensemble standardisé de nomsd’articulations, structuré sous forme d’une topologie reflétant l’anatomie humaine aussifidèlement que possible (cf. description ci-dessous). La hiérarchie des articulations in-clut toutes les articulations principales, en particuliertoutes les vertèbres. Les piedssont néanmoins simplifiés dans le sens où seule l’articulation metatarsalest offertepour représenter la mobilité entre l’ensemble des orteils et le corps principal du pieds.Le standard offre une certaine flexibilité en autorisant tout sous-ensemble de cette hié-rarchie pour autant que la relation parent-enfant soit préservée pour les nœuds restantset qu’aucun nœud supplémentaire ne soit inséré entre les nœuds d’origine. Au mini-mum, la hiérarchie doit contenir le nœudHumanoidRoot. En sens inverse, il est biensûr possible d’ajouter des extensions en tant que nœuds enfants à la topologie d’origine.

1Ce chapitre s’intituleScénarios adaptatifs : le paradoxe du contrôle d’agents autonomes

Page 3: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 275

Voici la topologie utilisée dans H-ANIM [Group, ] (Syntaxe =nom de l’articulation :nom du segment solide associé) :

HumanoidRoot : sacrumsacroiliac : pelvis| l_hip : l_thigh| l_knee : l_calf| l_ankle : l_hindfoot| l_subtalar : l_midproximal| l_midtarsal : l_middistal| l_metatarsal : l_forefoot|| r_hip : r_thigh| r_knee : r_calf| r_ankle : r_hindfoot| r_subtalar : r_midproximal| r_midtarsal : r_middistal| r_metatarsal : r_forefoot|vl5 : l5

vl4 : l4vl3 : l3

vl2 : l2vl1 : l1

vt12 : t12vt11 : t11

vt10 : t10vt9 : t9

vt8 : t8vt7 : t7

vt6 : t6vt5 : t5

vt4 : t4vt3 : t3

vt2 : t2vt1 : t1

vc7 : c7| vc6 : c6

| vc5 : c5| vc4 : c4| vc3 : c3| vc2 : c2| vc1 : c1| skullbase : skull ( * )

|l_sternoclavicular : l_clavicle| l_acromioclavicular : l_scapula| l_shoulder : l_upperarm| l_elbow : l_forearm| l_wrist : l_hand ( ** )|r_sternoclavicular : r_clavicle

r_acromioclavicular : r_scapular_shoulder : r_upperarm

r_elbow : r_forearmr_wrist : r_hand ( ** )

( * suite)skullbase : skull

l_eyelid_joint : l_eyelidr_eyelid_joint : r_eyelidl_eyeball_joint : l_eyeballr_eyeball_joint : r_eyeballl_eyebrow_joint : l_eyebrowr_eyebrow_joint : r_eyebrow

Page 4: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

276 Le traité de la réalité virtuelle

temporomandibular : jaw

( ** suite, m? principe pour le cot?roit)l_wrist : l_hand

l_thumb1 : l_thumb_metacarpall_thumb2 : l_thumb_proximal

l_thumb3 : l_thumb_distall_index0 : l_index_metacarpal

l_index1 : l_index_proximall_index2 : l_index_middle

l_index3 : l_index_distall_middle0 : l_middle_metacarpal

l_middle1 : l_middle_proximall_middle2 : l_middle_middle

l_middle3 : l_middle_distall_ring0 : l_ring_metacarpal

l_ring1 : l_ring_proximall_ring2 l_ring_middle

l_ring3 : l_ring_distall_pinky0 : l_pinky_metacarpal

l_pinky1 : l_pinky_proximall_pinky2 : l_pinky_middle

l_pinky3 : l_pinky_distal

Le second aspect clef de ce standard est l’adoption d’une convention d’orientationinitiale commune pour toutes les articulations afin de pouvoir ré-utiliser une animationmise au point pour un personnage sur tout autre personnage respectant le standarddécrit ci-dessus. En posture initiale, les jambes et les pieds sont parallèles et à l’aplombdes hanches, les bras sont à la verticale avec les paumes versl’intérieur, les doigts à laverticale excepté le pouce ouvert à 45 degrés vers l’avant. En résumé, dans la postureinitiale toutes les articulations sont orientées comme l’objet HumanoidRoot. Commecependant ce choix peut rendre difficile la mise au point ou l’adaptation d’animation, lestandard offre la possibilité de définir un repère anatomique local à chaque articulation.C’est dans ce repère que peut s’exprimer le plus naturellement quels sont les degrés demobilité et les limites articulaires associées.

Le standard H-ANIM définit également l’attachement d’entités solides, appelés seg-ments, représentant l’enveloppe du personnage (cg. figure 10.1) et permet d’ajouterdes points optionnels, appelés sites, utilisables pour le contrôle par cinématique inverse.L’objet displacerpeut être exploité pour la déformation d’éléments de l’enveloppe, enparticulier au niveau du visage pour lequel quelques articulations sont offertes pourl’animation de la bouche et de la région des yeux. Cependant,on se tournera vers lestandardMPEG4 Facial Animation Parameterssi l’on désire disposer d’une fonction-nalité plus complète [Garchery e.a., 2004].

10.2.2 CAL3D

Ce projet est représentatif du mouvement Open-source qui fédère les contributions deprogrammeurs indépendants à travers le monde [project CAL3D, ]. Son objectif estd’offrir une bibliothèque C++ de composition d’animationset des modules exporteursde modèles CAL3D depuis 3DS MAX [MAX, ] ou Milkshape [3D, ]. Les modulesexporteurs permettent d’effectuer le travail de modélisation avec des interfaces profes-sionnelles puis d’exporter un modèle animable avec une enveloppe déformable, ainsique des animations. La bibliothèque d’animation permet la composition des animationset offre une gestion des niveaux de détails de l’enveloppe. Aucune convention d’orien-

Page 5: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 277

Figure 10.1 : Convention d’orientation d’un objet HUMANOID, le premier objet detype JOINT est appeléHumanoidRoot. Il coïncide avec l’extrémité inférieure de la

colonne vertébrale, ou sacrum. Sa position est telle que la surface inférieure des piedssoit au niveau Y=0 du repère de modélisation.

tation n’est requise ; c’est la convention du logiciel de modélisation qui est exportéedans les fichiers CAL3D. De plus, la bibliothèque ne traite pas la partie affichage quiest laissée à l’application finale. Il est possible d’intégrer le rendu des surfaces défor-mées par CAL3D dans lescene graphed’OSG [Graph, ].

10.3 ANIMATION D’HUMAINS VIRTUELS

10.3.1 ANIMATION D’HUMAINS PAR CINÉMATIQUE DIRECTE

Si on se limite à un ensemble restreint de mouvements, il est possible de concevoirdes modules paramétrables d’animation. Dans les années 80,cette technique a été em-ployée pour simuler la locomotion humaine [Zeltzer, 1982].Même si la méthode s’estlargement améliorée depuis, le principe est le même : analyser un mouvement spéci-fique pour trouver un paramétrage et des opérateurs qui permettent d’adapter le geste àde nombreuses situations.

Pour la locomotion humaine, on définit généralement un automate avec les phases clédu cycle [Boulic e.a., 1990] [Bruderlin e.a., 1996] : simpleou double appui et phasede vol . A l’intérieur de chaque phase, on définit alors des postures clé à atteindre ainsique la manière dont ces postures évoluent en fonction de la vitesse, de la longueur despas... Ces travaux s’inspirent généralement d’études menées en biomécanique dans lecas de la locomotion. Le même type d’approche peut être mené pour d’autres types demouvements à condition de mener des analyses biomécaniquesspécifiques.

Page 6: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

278 Le traité de la réalité virtuelle

Les évolutions récentes tendent à utiliser des techniques de typeAnalyse en Compo-santes Principales(ACP) [Glardon e.a., 2004] pour trouver un jeu réduit de paramètrespour contrôler la locomotion humaine. Il est aussi généralement nécessaire de corrigerquelques artefacts comme le contact et le non-glissement des pieds sur le sol qui estrésolu par cinématique inverse. L’avantage est qu’aucune analyse biomécanique n’estnécessaire étant donné que l’ACP joue un rôle similaire. Cette méthode semble plusgénérale que celle proposée à partir d’analyses spécifiquesde mouvements.

Par nature, ces méthodes se limitent aux mouvements qui ont été étudiés et sontdonc difficiles à utiliser dans le cas d’humanoïdes autonomes capables d’effectuer unegrande gamme de gestes.

10.3.2 ANIMATION D’HUMAINS PAR CINÉMATIQUE INVERSE

Le problème résolu par la cinématique inverse est de trouverune posture garantissantla position et/ou l’orientation dans l’espace monde d’une ou de plusieurs parties ducorps. Il existe essentiellement quatre familles d’algorithmes de cinématique inverse :

1. Analytique exact : on dispose, en général à l’aide de capteurs optiques ou magné-tiques, d’une information localisant chaque segment du corps dans l’espace, le pro-blème se ramène à effectuer une calibration unique suivi d’une transformation ma-tricielle par segment à chaque nouvelle mesure. Cette méthode est décrite dans laprochaine sous-section.

2. Analytique sous-contraint : on désire contraindre la posture à partir d’une informa-tion partielle incluant la position/orientation du corps et celle des extrémités (pieds,mains, voire tête) [Badler e.a., 1993a]. Cette approche a d’abord été proposée parBadler. Une même solution analytique [Tolani e.a., 2000] peut être exploitée pourle bras ou la jambe. L’angle laissé libre, appeléswivel angle, doit être contrôlé parl’application sous peine de conduire à des postures peu réalistes [Molet, 1998].

3. Numérique individualisé : l’approcheCyclic Coordinate Descent(CCD) rechercheune solution optimale de manière indépendante pour chaque articulation. Cet algo-rithme à faible coût calcul doit être intégré dans une bouclepour converger vers unminimum global [Welman, 1993]. L’approche reposant sur le principe des travauxvirtuels via le Jacobien transposé est similaire au CCD. En effet chaque articulationest mise à contribution indépendamment des autres et elle nécessite une résolutionitérative [Welman, 1993].

4. Numérique intégré : cette approche repose sur une linéarisation du système viale calcul du jacobien. La mise en œuvre de la pseudo-inverse du jacobien permetd’obtenir une variation coordonnée des articulations (et de norme minimale). L’al-gorithme doit aussi être intégré dans une boucle pour s’approcher du but par pe-tits déplacements successifs respectant la validité de la linéarisation. Nos tests ontmontré que malgré le surcoût calcul la meilleure qualité de la convergence de cetteapproche la rendait aussi performante que l’approche baséesur le jacobien trans-posé [Baerlocher e.a., 2004]. Baerlocher a également montré comment obtenir uneposture respectant une hiérarchie de contraintes associées à des priorités strictes, etceci en contexte interactif. Par exemple on donne généralement la plus grande prio-rité à la contrainte associée au centre de masse (e.g. se projeter sur le polygone desupport afin de préserver l’équilibre) [Boulic e.a., 1996] ce qui peut réduire l’espaceatteignable par la main.

D’un point de vue coût calcul, les méthodes analytiques sontbeaucoup plus ef-ficaces que les méthodes numériques. Elles sont extensivement utilisées en ligne

Page 7: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 279

et hors ligne pour l’édition de mouvements. L’intérêt des méthodes numériquestient à leur plus grande souplesse d’utilisation, surtout lorsque la posture est sou-mise à des contraintes conflictuelles (i.e. qui ne peuvent être satisfaites simultané-ment) [Boulic e.a., 2001]. Récemment cependant l’évolution de la puissance des pro-cesseurs rend les méthodes numériques compatibles avec un usage temps-réel pour unpersonnage [Peinado e.a., 2004] ou plusieurs [Kulpa e.a., 2005].

10.3.3 CAPTURE DE MOUVEMENTS EN TEMPS RÉEL

La méthode illustrée dans cette section est de type analytique exacte. Nous supposonsici que l’on cherche à animer le squelette de la personne donton capture le mouve-ment et qu’une bonne approximation de son squelette est obtenue en faisant une mise àl’échelle d’un squelette représentatif de la population concernée. L’identification pré-cise de la taille des segments du squelette peut être faite à l’aide de méthodes d’opti-misations [O’Brien e.a., ][Herda e.a., 2001].

La méthode peut être exploitée avec des mesures provenant decapteurs magné-tiques [Molet e.a., 1999b] ou de marqueurs optiques pour autant que l’on puisseconstruire un «repère capteur» associé à chaque segment avec ces derniers (cf. fi-gure 10.2). Dans une première étape de calibration, le sujetportant les capteurs adoptela posture dans laquelle les transformations des articulations sont toutes à l’identité. Lamesure de translation d’un capteur proche du bassin permet d’abord de superposer lesquelette virtuel avec le squelette du sujet. Ensuite, il est possible d’évaluer la trans-formation locale allant du repère capteur au repère de l’articulation associée selon laformule ci-dessous (convention matrice ligne) car les deuxautres transformations sontconnues :

Msj = Msw × Mwj (10.1)

Msw est construite à partir des mesures du capteur etMwj est obtenue à partir dumodèle du squelette virtuel en posture par défaut.

Figure 10.2 : la calibration permet de calculer la transformation liant le repèrecapteur au repère de l’articulation dans la posture par défaut.

Page 8: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

280 Le traité de la réalité virtuelle

La méthode proposée par Molet n’exploite ensuite que la composanterotation de sesmesures car elle est plus robuste que la composante en translation. En phase de captureil s’agit d’identifier la transformation locale de chaque articulation (cf. figure 10.3).Pour cela on procède récursivement en partant de la racine dela hiérarchie, au niveaudu capteur du bassin, et en procédant en direction des feuilles de l’arbre. Donc, pourl’articulation j nous disposons de la transformation actualisée de son articulation pa-rente, ce qui nous donne la rotation actualiséeRjw permettant de passer du repèreinitial dej vers le repère Monde. De même nous pouvons construire facilement la rota-tion faisant passer du repère Monde au repère capteurRws grâce à la mesure courante.La rotation de calibrationRsj est constante et est extraite deMsj (cf. equation 10.1).Celle-ci relie le repère capteur au repère final de l’articulation ; nous pouvons doncécrire (convention matrice ligne) :

Rj = Rjw × Rws × Rsj (10.2)

Figure 10.3 : rotations exploitées pour construire la transformation locale del’articulation j en phase de capture.

Molet a montré dans [Molet e.a., 1999a] que cette approche permet d’évaluer l’inter-action d’un humain virtuel avec un environnement virtuel complexe ; il faut cependantnoter que l’absence de retour haptique impose unfeedbacksupplémentaire pour infor-mer des collisions non visibles. Cette technique a aussi étéexploitée avec succès pourinteragir avec un agent autonome grâce à une technique efficace de reconnaissanced’actions [Emering e.a., 1998].

Plus récemment Shin a proposé une méthode générale traitantle cas où le person-nage virtuel est de taille et de proportions très différentes de la personne portant lescapteurs [Shin e.a., 2001]. Cette approche repose sur un algorithme analytique sous-contraint. L’idée principale est d’analyser à chaque instant la nature du mouvementdes effecteurs vis-à-vis de l’environnement et d’en déduire une grandeur normaliséeappeléeimportance. Cette grandeur permet de décider si le personnage animé doitplutôt reproduire fidèlement le geste de la personne capturée (préservation des trajec-toires articulaires) ou si il doit plutôt reproduire la mêmetrajectoire cartésienne dansl’environnement. Ce second cas s’impose lorsqu’il y a interaction avec des élémentsimportants tels que le sol ou des objets à manipuler.

Page 9: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 281

10.3.4 ADAPTATION EN TEMPS RÉEL DE MOUVEMENTS CAPTURÉS

Depuis l’apparition des systèmes de capture de mouvements,de nombreux travauxont proposé des méthodes d’adaptation de trajectoires à de nouvelles contraintes. Unepremière approche consiste à optimiser le jeu de trajectoires afin de résoudre lescontraintes spatio-temporelles. Ces approches ne sont pasadaptées aux besoins d’in-teraction en environnement virtuel. En effet, elles nécessitent de connaître toutes lescontraintes à l’avance alors que l’utilisateur peut intervenir de manière imprévisible, àn’importe quel instant. De plus, les temps de calcul sont très loin du temps réel. Parcontre, plus récemment, de nouvelles techniques sont apparues pour résoudre plus ra-pidement ce type de problème : l’ajout de trajectoires, la recherche dans un graphe demouvements et l’adaptation de la posture image par image.

10.3.4.1 L’ajout de trajectoires

Filtrages successifsDq

t

q

t

Contrainte (Cinématique inverse)

+Déplacementobtenu ci-dessous

Figure 10.4 : Principe de l’ajout d’un déplacement pour résoudre des contraintes.

L’ajout de trajectoires a été introduit récemment par Gleicher [Gleicher e.a., 1998] etLee [Lee e.a., 1999]. Elle consiste non pas à modifier directement une trajectoireθ,mais plutôt, à calculer une autre trajectoire∆θ qui représente le déplacement à ef-fectuer pour vérifier les contraintes.∆θ s’additionne à la trajectoire originaleθ. Decette manière nous conservons la forme ainsi que les hautes fréquences du mouve-ment, permettant de garder le naturel de l’animation. Soit un ensemble de n contraintesC = {(Ci, ti)}i=1,n qui s’appliquent chacune à des instantsti. Ces contraintes sontgénéralement exprimées dans l’espace cartésien afin de poser un pied sur le sol oude garantir qu’une préhension atteint bien son objectif, par exemple. Pour toutes cescontraintes, un algorithme de cinématique inverse est généralement utilisé pour dé-terminer des variations d’angles∆θj

i à chaque instantti, pour toutes les trajectoiresarticulairesθj . Dans la figure 10.4, l’une de ces trajectoires articulairesest représentéeen noir et le cercle représente la variation d’angle obtenuepour cette trajectoire pourune contrainte. L’algorithme est itératif et l’opération est donc répétée jusqu’à résoudreau mieux les différentes contraintes spatio-temporelles.

Page 10: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

282 Le traité de la réalité virtuelle

Cette méthode peut être employée pour un grand nombre de contraintes mais requiertalors un grand nombre d’itérations et de temps de calcul. Pour un très faible nombrede contraintes, il est envisageable d’utiliser ce type de méthode dans un environnementinteractif puisque le temps de calcul correspond approximativement au temps réel dela simulation. Cependant, cette méthode nécessite de connaître toutes les contraintesà l’avance, au moins sur un intervalle de temps donné. Ce typed’approche se des-tine donc plus à des personnages pilotés par un système automatique (type modèle decomportement qui raisonnerait sur des tâches bien identifiées dans le temps) qu’à unhumanoïde devant répondre rapidement aux ordres d’un utilisateur.

10.3.4.2 Graphes de mouvements

L’autre approche se fonde sur une très large base de données dont toutes les transitionspossibles sont précalculées à l’avance. On se retrouve alors avec un graphe très étendudans lequel les nœuds sont les postures et les arcs sont les transitions possibles. Ainsi,pour un seul mouvement composé den postures successives, nous aurions un graphecomportantn nœuds etn−1 arcs. Supposons que l’on dispose dem mouvements diffé-rents dans la base de données, ayant chacunni postures (i variant de 1 àm). Le graphecontient doncN =

∑mi=1 ni nœuds et il faut tester toutes les transitions possibles entre

ces noeuds. Plusieurs auteurs ont proposé des calculs de distances entre mouvements(par exemple, récemment, [Hsu e.a., 2004]) afin de déterminer s’il était réaliste de tran-siter d’une posture d’un mouvement vers une autre posture d’un autre mouvement. Enfonction de cette distance, les transitions supposées réalistes sont alors générées. Aprèsce précalcul, on dispose donc d’un graphe de mouvements. Etant donné une confi-guration initialeEi et d’une configuration finaleEf (posture et vitesse), le problèmeconsiste alors à trouver le chemin le plus probable entre despostures proches deEi etEf dans le graphe, comme le montre la figure 10.5.

M1

M2

M3

M4

Figure 10.5 : Principe du graphe de mouvements utilisé en environnement interactif(exemple avec 4 mouvements M1, M2, M3 et M4).

L’exemple donné dans [Lee e.a., 2004] montre qu’il est alorspossible de piloter in-teractivement un boxeur en déplaçant une cible à atteindre.Ainsi, un grand nombrede mouvements de boxe différents ont été capturés, comprenant des coups de poing àdifférentes positions et des déplacements. Ceci conduit à un graphe contenant originel-lement 6453 nœuds (ensuite réduits à 437) et 27072 transitions. L’utilisateur déplaceune cible et le personnage doit interactivement trouver un chemin dans le graphe quilui permette de la frapper le plus rapidement possible. Cecidémontre bien que cettetechnique pourrait être utilisée en réalité virtuelle, en interaction avec un utilisateur oupiloté par un modèle comportemental.

Page 11: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 283

Dans cette technique, le mouvement capturé n’est pas modifiési bien que la précisiondu respect des contraintes dépend du nombre de mouvements dela base de données.Plus l’échantillonnage des postures possibles est important (en nombre et en qualité),plus les contraintes sont respectées, car proches d’une situation connue. Toutefois, ilest très coûteux de capturer un très grand nombre de mouvements lorsqu’on souhaitedonner une autonomie maximale à un personnage synthétique.En effet, pour la boxe,nous avons vu que de nombreuses postures et situations différentes ont été utilisées.Pour un plus large échantillonnage de types de mouvements, le nombre de capturesnécessaires pourrait devenir ingérable.

10.3.4.3 Adaptations de mouvements image par image

La dernière approche consiste à résoudre les contraintes image par image. Dans cecas, il est nécessaire de résoudre rapidement un problème detype cinématique in-verse sur le corps entier à chaque pas de temps. Pour parvenirà ce type de per-formance, de récentes approches ont proposé une résolutionhiérarchique et itéra-tive [Shin e.a., 2001][Kulpa e.a., 2005]. Le corps humain est décomposé en groupespour lesquelles des solutions analytiques sont disponibles. Par exemple, pour lesmembres (bras et jambes), Tolani et coll. [Tolani e.a., 2000] ont proposé des méthodestrès efficaces de calcul regroupées dans la librairie appelée IKAN (pour plus d’informa-tion, voir le sitehttp ://hms.upenn.edu/software/ik/ik.html). Chaque groupe peut ainsiêtre résolu indépendamment par des méthodes analytiques spécifiques.

Pour passer au corps entier, un processus itératif est mis enœuvre. Il consiste à résoudred’abord les segments les plus éloignés, indépendamment, enutilisant la technique évo-quée ci-dessus. Ainsi, si une solution est atteignable immédiatement par ces segmentséloignés, l’algorithme prend fin rapidement. Si, par contre, ces groupes éloignés nesuffisent pas à résoudre le problème, on applique une nouvelle adaptation des groupesplus proches (buste, bassin, par exemple) indépendamment des autres. On répète ceprocessus hiérarchiquement, jusqu’à la racine du personnage. Les adaptations menéesprès de la racine peuvent remettre en cause les solutions obtenues pour les groupeséloignés. L’algorithme reprend donc le processus depuis ledébut, jusqu’à convergervers une solution. L’algorithme pourrait être le suivant :

RépéteradapterGroupe(JAMBE_GAUCHE)adapterGroupe(JAMBE_DROITE)adapterGroupe(TETE)adapterGroupe(BRAS_GAUCHE)adapterGroupe(BRAS_DROIT)adapterGroupe(TRONC)adapterRacine()

Jusqu’à convergence

Pour optimiser encore les calculs, il est possible d’indiquer, pour chaque contrainte, saportée sur le squelette [Boulic e.a., 1997]. Ainsi, une contrainte sur le poignet dans unepréhension peut limiter sa portée au bras ou impliquer aussides mouvements du tronc,jusqu’à la racine du personnage.

Page 12: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

284 Le traité de la réalité virtuelle

Figure 10.6 : Animation temps réel d’un humain virtuel sur sol déformable

Ces techniques d’adaptation de mouvements image par image sont évidemment trèssensibles aux problèmes de continuité dans l’évolution descontraintes au cours dutemps. Il est donc nécessaire de définir des contraintes qui évoluent continuement aucours du temps. Ceci implique donc de prédire légèrement à l’avance les contraintesnécessaires. Toutefois, contrairement aux ajouts de mouvements qui agissent sur laséquence entière, ces approches permettent de résoudre image par image en prédisantlocalement l’évolution de la contrainte, uniquement. Il est ainsi possible d’animer unpersonnage sur un sol complexe qui évolue de manière imprévisible, mais continue, aucours du temps (cf. figure 10.6).

Grâce à ces approches basées sur une résolution image par image, on peut aussi envisa-ger de mélanger plusieurs mouvements entre eux [Boulic e.a., 1997] tout en s’assurantde leur cohérence temporelle [Menardais e.a., 2004].

Figure 10.7 : Mélange de plusieurs mouvements (deux marchesdifférentes, unecourse, un accroupissement, un applaudissement et préhension) afin de déplacer lepersonnage en temps réel dans l’environnement tout en attrapant des cibles dans

l’espace.

Page 13: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 285

10.3.5 UTILISATION DE LA DYNAMIQUE

Dans de nombreux mouvements humains, les lois de la mécanique interviennent de ma-nière significative. C’est particulièrement le cas pour lesgestes rapides, impliquant desinerties importantes. C’est aussi le cas lorsque le personnage doit réagir à des phéno-mènes physiques tel que le vent, soulever des charges lourdes ou lutter contre la gravité.Pour résoudre ces problèmes, il est possible de modéliser lecorps humain comme unsystème mécanique polyarticulé. Les segments corporels ont des propriétés de masseet d’inertie, et sont connectés via des articulations mécaniques de type rotule, pivot,glissière. . . En utilisant les formalismes de Newton ou de Lagrange, on obtient unefonction permettant de lier les forces externes, les forcesinternes et les accélérationsdes segments corporels. Le problème consiste alors à définirquelles forces externessont susceptibles de produire le mouvement souhaité.

Plusieurs types de contrôleur ont été proposés afin de calculer ces forces en fonction decontraintes et d’un mouvement de référence. Ainsi, Hodgins, en 1995 [Hodgins, 1995]a proposé d’utiliser un contrôleur à deux niveaux. Le niveaule plus intuitif consisteà donner des postures objectifs à atteindre à différents instants. Grâce à ce niveau decontrôle on peut, par exemple, décomposer le mouvement étudié en postures clé. Cetravail est effectué en amont et peut, éventuellement, êtreadapté interactivement enfonction de perturbations externes, par exemple pour prendre en compte des courantsdans un fluide [Yang e.a., 2004]. Le niveau inférieur est composé de contrôleurs detype Proportionel-Intégral-Dérivé (PID).

Les gains de ce contrôleur sont calculés à l’avance et permettent une simulation rela-tivement rapide du système humain complet. Avec l’évolution des performances desordinateurs et des méthodes de résolution, ce type de simulation pourrait être envisagéen environnement interactif. Ceci est particulièrement intéressant dans les applicationsnécessitant des interactions avec retour d’effort où l’humain virtuel doit être capablede s’adapter de manière crédible à des contraintes mécaniques appliquées par l’utili-sateur. Cependant, les ressources de calcul nécessaires restent très importantes pourgérer un corps humain entier. Comment prendre en compte la dynamique dans le cadred’animations interactives

D’autres contrôleurs ont été proposés afin d’adapter un mouvement capturé à de nou-velles contraintes en respectant les lois de la mécanique [Pollard e.a., 2000]. Ils sebasent sur des méthodes d’optimisation qui ne sont pas compatibles avec les contraintesd’interaction en environnement virtuel. Cependant, avec l’amélioration des perfor-mances des ordinateurs, ce sont des techniques qui peuvent,à l’avenir, être des so-lutions envisageables, pour des applications nécessitantce type de modélisation phy-sique.

10.4 MODÉLISER LE COMPORTEMENT HUMAIN

Si l’on s’intéresse au comportement humain, il est nécessaire de s’intéresser à un cer-tain nombre de sujets tels que la compréhension des mécanismes sous-tendant les fonc-tionnements du langage (production et perception), de la mémoire, de la perception, ducontrôle musculaire ou encore des émotions. En résumé, il faut s’intéresser au fonction-nement des différentes facultés qui constituent ensemble l’esprit humain, sans oublierleur relation avec le corps. En complément de l’étude de ces mécanismes généraux

Page 14: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

286 Le traité de la réalité virtuelle

sous-tendant tout comportement humain, des travaux portent aussi sur l’étude des fa-cultés humaines dans des circonstances beaucoup plus circonscrites telles que lors del’exercice d’un métier ou d’une activité comme la navigation piétonnière, activité parta-gée par un grand nombre de personnes. Il existe plusieurs courants en ce qui concernel’étude du comportement humain : le premier, très systémique, consiste à partir destravaux menés par les sciences neuronales et à regarder ainsi à l’intérieur de l’acti-vité cérébrale de patients soumis à des stimuli divers, selon des protocoles opératoiresbien définis ; le second, plus symbolique, consiste à modéliser le comportement hu-main de manière plus abstraite sous la forme de modules, éventuellement structuréshiérarchiquement, décrivant chacun un mécanisme et des relations de séquencialité oude parallélisme existant entre eux.

La modélisation n’est pas une fin en soi : elle suppose un objectif, car un modèle estune réduction de l’objet d’étude, une reproduction simplificatrice à des fins d’étude, demesure ou de calcul. Plusieurs notions sont importantes dans la modélisation :

• réduction de la complexité : il s’agit de retenir les caractéristiques intéressantes etpertinentes pour l’objectif de l’étude ;

• formalisation : choisir une ontologie ;

• instrumentation : déterminer les paramètres importants qui devront être tracés afind’observer l’évolution du modèle.

La problématique de la modélisation du comportement humaindans le cadre d’appli-cations de réalité virtuelle n’est pas de reproduire l’intelligence humaine mais de pro-poser une architecture permettant de modéliser des comportements crédibles d’acteursvirtuels anthropomorphes évoluant en temps réel dans des mondes virtuels. Ces der-niers peuvent représenter des situations particulières étudiées par des psychologues ducomportement ou encore correspondre à un univers imaginaire décrit par un scénariste.

Il existe un certain nombre de classification des comportements humains en fonction deleurs niveaux de complexité. L’objectif ici n’est pas de lesénumérer mais d’introduireles notions à modéliser2. Considérons l’être humain comme composé de capacités deperception, de traitement, d’action et de mémorisation. Ils’agit d’une vision simplifi-catrice mais néanmoins illustrative de l’architecture comportementale de l’être humain.En effet, l’être humain est de toute évidence doté d’une partde capacités de perceptionextéroceptives, lui permettant d’appréhender à travers ses sens le monde extérieur etd’autre part de capacités proprioceptives lui permettant d’être à l’écoute de son proprecorps en prenant en compte des sensations telles que la faim,la soif, ou encore la fa-tigue. Il est aussi doté de capacités de décision en faisant appel aux données perçuesmais aussi à ses connaissances et à ses facultés de raisonnement. Enfin, il est à mêmed’agir sur lui-même et sur son environnement. H. Mallot [Mallot, 1999], par exemple,classifie les comportements humains en différents niveaux de complexité et en illustrequatre :

• le premier niveau représente des comportements réflexes de type attraction, répul-sion et peut être défini simplement par une interconnexion entre des capteurs et deseffecteurs ;

2Une description plus complète peut être trouvée dans [Donikian, 2004, Burkhardt e.a., 2004].

Page 15: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 287

• le niveau suivant représente des comportements qui nécessitent une intégration inter-neuronale sur des couches cachées et qui permet de décrire des comportements detype manœuvre, nécessitant une intégration spatio-temporelle ;

• le troisième niveau traite de la plasticité de l’intégration spatio-temporelle, mais cecomportement d’apprentissage reste complètement déterminé par l’état des donnéessensorielles ;

• le quatrième niveau, appelé cognitif, ne dépend plus seulement des stimuli senso-riels, mais aussi d’un but courant poursuivi par la personne.

D’après H. Mallot [Mallot, 1997], le mot cognition se réfèregénéralement à des pro-cessus mentaux variés tels que l’attention, la reconnaissance des lieux et des objets,la planification et le raisonnement. La théorie du contrôle en psychologie comporte-mentale, telle que la décrivent R. Lord et P. Levy [Lord e.a.,1994] reprend le principedes boucles de rétro-action, tout en l’étendant à l’ensemble des processus comporte-mentaux de la tâche d’asservissement à la régulation des comportements sociaux. PourLord et Levy, la généricité des boucles de rétro-action pourla description du comporte-ment provient de la nature hiérarchique des systèmes de contrôle, même si la nature desactivités de contrôle peut être très différente en fonctiondes niveaux : par exemple, auniveau le plus haut, on traitera de planification d’action, tandis qu’au niveau le plus bas,il s’agira d’une boucle d’asservissement d’un muscle ou d’un ensemble de muscles. Ilexiste un certain nombre de classifications de ces niveaux. Nous adoptons ici celleintroduite par A. Newell dansUnified Theories of Cognition[Newell, 1990], qui re-groupe certains niveaux de la hiérarchie en domaines : biologique, cognitif, rationnelet social. A l’intérieur du domaine biologique, se trouve leniveau réactif. Nous présen-tons maintenant les modèles de comportement d’humanoïdes de synthèse selon qu’ilssoient réactifs, cognitifs ou sociaux.

10.5 MODÈLES DE COMPORTEMENT RÉACTIF

10.5.1 LES FAMILLES DE MODÈLE

On peut situer historiquement les premiers travaux à la fin des années 80 avec notam-ment l’article de C. Reynolds sur l’animation de nuées d’oiseaux [Reynolds, 1987]. Unpremier ensemble d’approches a été étudié en parallèle dansla littérature, jusque dansle milieu des années 90, pour la définition du modèle décisionnel [Donikian, 1994] :

stimulus / réponses :cette approche définit le comportement des objets à partir d’unensemble de capteurs et d’effecteurs reliés entre eux par unréseau de nœuds in-termédiaires transformant l’information passée. Ce type d’approche comprendles modèles de type réseaux de neurones [Travers, 1988, Wilhelms e.a., 1989,van de Panne e.a., 1993, Ngo e.a., 1993]. La manière dont un objet se comportedépend de la perception qu’il a de son environnement et de la manière dont cetteperception est transmise à travers le réseau aux effecteursqui produisent le mou-vement des objets. Cette approche a l’avantage de pouvoir générer une quan-tité très importante de mouvements différents (choix du jeude paramètres) maisreste par contre à un niveau d’abstraction très faible. De plus il s’agit de mo-dèles de type boite noire dans lesquels il est impossible de modifier le moindreparamètre sans avoir à reprendre le processus complet de configuration. De plus,

Page 16: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

288 Le traité de la réalité virtuelle

le pourcentage de bons contrôleurs décroissant de manière exponentielle avecla croissance du nombre de paramètres à prendre en compte, ilest illusoire devouloir contrôler un mouvement complexe avec cette approche.

règles de comportement :comme l’approche précédente, l’approche par règles decomportement prend en entrée des informations restituant une certaine percep-tion de l’environnement et produit en sortie un contrôle surla motricité desobjets. Ici, le comportement des objets est défini par un ensemble de règles[Reynolds, 1987]. Les comportements possibles d’un objet peuvent être repré-sentés par un arbre de décision, chaque branche représentant un comportementdifférent. Une action satisfaisant les conditions de l’environnement courant serachoisie par l’application d’un algorithme de parcours d’arbre. Les comporte-ments permis par cette approche sont d’un niveau d’abstraction plus élevé quel’approche précédente. Le cœur du problème dans cette approche réside dans lapondération des différents comportements. La solution la plus simple consisteà faire un choix implicite sur l’ordre des règles (suite de si... alors ... sinon),mais cette solution ne permet pas la spécification de comportements complexes.Le parcours de l’arbre des possibilités avec pondération des branches permet dene pas privilégier toujours la même règle, tandis que la prise en compte d’unehiérarchie d’experts permet de confronter plusieurs comportements concurrents,le choix final restant à l’expert de plus haut niveau. On peut ainsi utiliser la pa-noplie des algorithmes de parcours d’arbre de décision intégrant des fonctionsd’évaluation des différentes branches (essais successifs, séparation et évaluationprogressive, glouton, parcours ascendant, etc.) [Coderre, 1988, Tu e.a., 1994]

automates d’états finis : l’automate définit les différents enchaînements possiblesentre comportements [Booth e.a., 1993, Thalmann e.a., 1990]. Cette approchetrouve très rapidement ses limites dès qu’il s’agit de modéliser un comportementun tant soit peu compliqué. La modélisation du comportementd’un conducteura ainsi montré la nécessité de passer à l’utilisation de plusieurs automates dont ilfaut définir l’exécution coordonnée.

Le constat que l’on peut faire de ces différents travaux est que ce sont des modèles adhoc conçus pour être appliqués à chaque fois sur des cas particuliers, dans lesquels lesobjets et leur environnement sont relativement simples et les champs de perception etd’action limités. Il existe en outre une grande disparité dans les comportements permispar chacune des approches :

• le niveau d’abstraction est très faible et seuls des comportements de type réflexespourront être spécifiés (approche stimulus-réponse) ;

• le niveau d’abstraction est plus élevé mais l’environnement est réduit, voire complè-tement défini. La perception et l’action de l’entité sont a contrario d’un niveau trèsfaible.

Ces modèles demeurent relativement simples, avec des champs de perception et d’ac-tion limités, et en outre ils ne prennent pas en compte l’aspect temporel, qui est pri-mordial (mémorisation, prédiction, durée d’une action, séquencement de tâches). Afinde rendre compte de la complexité décisionnelle, il est nécessaire de traiter conjointe-ment les aspects continus et discrets, de coordonner les comportements concurrentset de gérer leur structure organisationnelle. C’est pourquoi les deux premières ap-proches ont été assez vite abandonnées au profit de l’approche à base d’automatesd’états finis dans leurs versions parallèles et hiérarchiques : piles d’automates (EPFL,

Page 17: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 289

Suisse) [Noser e.a., 1997], ensembles d’automates communicants (PaT-Nets) (Univer-sité de Pennsylvanie, Etats-Unis) [Badler e.a., 1997], hiérarchie d’automates parallèles(HCSM) (Université d’Iowa, Etats-Unis) [Ahmad e.a., 1994]et systèmes de transi-tions parallèles hiérarchisés (HPTS) (IRISA, France) [Donikian e.a., 1995]. Le modèleHPTS est le seul qui permette de traiter les aspects temporels et non déterministes et quiintègre un langage de spécification couplé à un générateur decode [Moreau e.a., 1998]et à un interpréteur. Du côté industriel, un produit (Motivate) a été commercialisé parla société Motion Factory (orientation jeux) pour la spécification du comportement àbase de machines à états finis hiérarchiques (HFSM) [Koga e.a., 1998]. Il est mainte-nant intégré au sein du logiciel d’animation Softimage sousle nom de RTK Behavior.

10.5.2 HPTS : UN OUTIL DE SPÉCIFICATION DE COMPORTEMENTS RÉACTIFS

Partant du constat qu’un modèle comportemental réactif devait avoir les propriétéssuivantes : réactif, concurrent, préemptif, hiérarchique, modulaire, flot de données,nous avons proposé un modèle formel pour la spécification de ces comportements[Donikian e.a., 1994]. Ce modèle intitulé HPTS (Hierarchical Parallel Transition Sys-tem) est un modèle de description de comportements qui mélange l’approche automateet l’approche multi-agent. Au sens automate, il s’agit d’unmodèle de type automatesparallèles hiérarchiques. Au sens multi-agent, il s’agit d’un système de type temps réelà contrôle hiérarchisé. Chaque état de chaque automate est un agent possédant un étatinterne, pouvant recevoir des stimuli et pouvant en provoquer en réaction. Le modèlepropose une approche unifiée de deux types de flots : contrôle et données. Un état dusystème peut être vu comme une boîte noire recevant un flot de données en entrée, dé-livrant un flot de données en sortie et possédant un contrôle continu et discret (cf figure10.8). Un état du système est soit un état terminal, soit un état composite. GuillaumeMoreau, dans le cadre de son travail de thèse [Moreau, 1998],a proposé une mise enoeuvre du modèle HPTS, a réalisé un langage de programmationassocié et a développéun compilateur permettant de générer du code équivalent en C++. Ce langage a ensuiteété repris et étendu [Donikian, 2001].

Figure 10.8 : Un état d’HPTS.

À chaque état correspond un paramètre d’activité qui a troisvaleurs possibles : actif,suspendu, inactif et des états transitoires : débute, termine, attend, reprend (cf figure10.9). Les paramètres de contrôle permettent d’influer, pardécision externe ou interneà l’entité, sur le comportement à adopter. Par exemple, un sous-état peut avertir l’état-père qu’il s’est auto-terminé, tandis qu’un état peut avertir un de ses sous-états qu’il doitdébuter. Un bloc de code peut être associé tant aux états qu’aux transitions. Une fonc-

Page 18: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

290 Le traité de la réalité virtuelle

tion de filtrage gère la cohérence des actions proposées par les états actifs des différentssous-automates parallèles et fait une proposition cohérente qui est renvoyée à l’état en-globant. Il existe deux modes de franchissement des transitions : dans le mode normal,on teste les transitions dans l’ordre de spécification et la première ayant une conditionde franchissement valide sera choisie, tandis que dans le mode aléatoire, l’ensembledes transitions franchissables seront prises en compte et un tirage aléatoire sera effec-tué, prenant en compte les pondérations associées aux transitions. Un automate-pèreest toujours exécuté après ses automates-fils. Ce principe permet à des comportementsde sélectionner et mélanger les propositions fournies par leurs automates-fils. Ainsi,des comportements concurrents peuvent fonctionner en parallèle et être arbitrés.

# / #

suspend()

# / #

idle wait

Dataflow output

State

Transition: condition / generated action

start / start()

active

# / execute()suspend /

resume / resume()terminate / terminate()

Figure 10.9 : Les différents statuts d’un état.

Ce modèle a été utilisé avec succès pour modéliser le comportement de conducteurs devéhicules et de piétons. Des descriptions complètes de ces deux modèles sont décritesdans les thèses de Guillaume Moreau [Moreau, 1998] pour le conducteur de véhiculeet de Gwenola Thomas [Thomas, 1999] pour le piéton. Le modèleHPTS a été utilisé etvalidé dans de nombreuses applications liées au domaine du transport (projet européenDIATS, projet SCE sur la simulation de tramway, projet PREDIT DELICE, ...). Dansle modèle HPTS, la coordination des comportements s’effectue au sein de la fonctiond’intégration qui prend en compte pour un automate donné lespropositions effectuéespar l’ensemble des états actifs de ses sous-automates. Dansce modèle, le contrôle estfait a posteriori sur les propositions d’action des comportements en cours, un feedbackpouvant être renvoyé aux comportements pour qu’ils s’adaptent. Nous verrons dans lasection 10.5.5 une extension de ce modèle automatisant la coordination.

10.5.3 LES MODÈLES DE PERCEPTION

La perception n’est pas seulement une interprétation des messages sensoriels, elle estaussi contrainte par l’action. Selon A. Berthoz [Berthoz, 1997], la perception est unesimulation interne de l’action. Selon W. Prinz [Prinz, 1997], les actions sont codéesdans le cerveau selon les effets perçus qu’elles sont censées produire. Dans le cadrede l’animation comportementale, la théorie de Gibson [Gibson, 1986] sur lesaffor-dancesa été principalement utilisée. Ce terme d’affordance, difficilement traduisible,correspond aux disponibilités physiques perceptibles d’un objet ou d’un lieu. L’accentest mis non pas sur la nature de l’observé mais sur la nature del’observateur qui vatout de suite accéder dans son cerveau aux caractéristiquesde l’objet qui l’intéresse.Ainsi, un environnement va fournir directement à l’entité comportementale l’ensembledes comportements possibles vis-à-vis des objets qui le constituent et rejoint en celales théories précédentes liant perception et action. En associant de l’information sym-

Page 19: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 291

bolique aux objets de l’environnement, Widyanto a expérimenté la théorie de Gibson[Widyanto e.a., 1991] : un système visuel capture les affordances de l’environnementen lançant des rayons parallèles dans le champ de vision.

La simulation d’humanoïdes autonomes dotés de comportements sophistiqués passepar la prise en compte de l’environnement. En complément de la représentation géo-métrique de l’environnement, il est nécessaire de fournir pour chaque entité un mo-dèle symbolique de son environnement, afin de pouvoir produire des comportementscomplexes. Nathalie Farenc [Farenc e.a., 1999] a proposé d’ajouter de l’informationau graphe de description de la scène géométrique (en l’occurrence un fichier Open-Inventor). Dans cette approche, sont associées à la scène des informations sur des es-paces de circulation et sur des points de passage ou d’action. Soraia Raupp Musse[Musse, 2000] a utilisé ces univers informés pour y contrôler l’animation de groupesd’acteurs et de foules.

Le comportement d’une entité dépend de son espace d’évolution et de son action :suivre un trottoir, traverser une route. M. Relieu [Relieu e.a., 1998] précise que la dis-crimination urbaine est utilisée pour la focalisation d’attention, afin de sélectionnerles informations pertinentes pour les actions à effectuer dans l’espace courant tandisqu’une tâche secondaire permet d’observer ce qui se passe dans les régions connexes.Ces comportements d’observation ont été introduits en animation comportementale parSonu Chopra à travers la gestion de trois types de tâches visuelles : perception endo-gène, exogène et oisive [Chopra-Khullar e.a., 1999]. En adéquation avec la théorie deGibson et plus précisément celle de M. Relieu sur les affordances spatiales positiveset négatives, G. Thomas a proposé d’informer l’environnement urbain en caractéri-sant les espaces d’évolution, en prenant en compte leur configuration, les objets qu’ilscontiennent et leur structuration méréotopologique [Thomas e.a., 2000a]. L’environne-ment contient alors les informations nécessaires aux prises de décision des piétons etdes conducteurs de véhicules.

Il existe un autre type de méthode basé sur la vision artificielle et utilisant la recherched’information dans le plan image tel qu’il est perçu par une caméra placée au niveau del’oeil de l’humanoïde. Ce procédé utilisant la technique duZ-buffer a été introduit parRenault à l’EPFL [Thalmann e.a., 1990]. Nicolas Courty [Courty, 2002] a étendu cemodèle en floutant la zone dite de vision périphérique et en intégrant la notion de cartede saillance. Il utilise des techniques de traitement d’images pour extraire les pointssaillants de l’image. Il a illustré cela à travers le guidagede la focalisation d’attention,d’un personnage se déplaçant dans une ville, par les éléments saillants extraits de sapropre vision artificielle de l’environnement.

C. Peters et al. [Peters e.a., 2002] utilisent aussi un modèle de vision artificielle,mais qui est couplé à un modèle de mémoire (modèle d’Atkinsonet Shiffrin[Atkinson e.a., 1968]). Leur modèle de mémoire à court termecontient ainsi un maxi-mum de huit éléments à chaque pas de temps. Ils développent des exemples de re-cherches d’objets dans un appartement qui sont traités grâce à un comportement descrutation et de recherche d’information. Il s’agit ici d’un double filtrage d’information(visuel et mémoriel) et non d’une vision abstraite topologique de l’espace3.

3nous reviendrons sur ce point dans la section 10.7.3.

Page 20: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

292 Le traité de la réalité virtuelle

10.5.4 LES MODÈLES D’ACTIONS SUR LES OBJETS

Kallman et Thalmann [Kallmann e.a., 1998] ont proposé d’associer des affordancesaux objets. Ils proposent un cadre de modélisation général pour la gestion des interac-tions entre un humanoïde et les objets de son environnement.Ils définissent desobjetsintelligents; l’idée est d’associer aux objets toutes les informations nécessaires à lamise en œuvre des interactions entre l’objet et un opérateur. Grâce aux objets intelli-gents, le problème d’analyse de l’environnement pour exécuter des actions disparaît.En plus d’informations symboliques, des méthodes d’interaction sont associées auxobjets.

L’objectif de STARFISH4 [Badawi e.a., 2004] est de définir le formalisme permettantd’accompagner le schéma d’action lors de ses trois étapes successives. Ces étapesconcernent la représentation des connaissances sur les objets de l’environnement, cellede l’état de ces objets, et des actions à effectuer pour les faire changer d’état. Il s’agitd’étudier les différents mécanismes d’interactions existant entre un acteur autonome etles objets de son environnement, de proposer un formalisme permettant de les spécifier,d’en faire une mise en œuvre et de l’expérimenter. Il faut prendre en compte notammentle fait que cette relation est spécifique à chacun des acteurscar elle dépend des connais-sances acquises antérieurement par la personne. Même s’il ne s’agit pas de modéliser lemécanisme d’apprentissage, il faut pouvoir reproduire seseffets en faisant en sorte quetous les acteurs n’aient pas le même schéma d’action dans la même situation. MarwanBadawi a proposé d’utiliser la théorie de Schank sur les actes primitifs [Schank, 1972].Pour Schank, toute action peut être décomposée en une suite d’instances de huit actesprimitifs. Le système STARFISH permet de décrire des actions élémentaires (les actesprimitifs de Schank) et composites et de gérer des surfaces d’interaction sur les objets.Les surfaces d’interaction sont des sous-parties de la géométrie d’un objet, dédiéesà la réalisation d’une action. De premiers résultats ont ainsi été obtenus sur l’actiond’ouverture de porte et de changement de pièce, comportement adapté au type de mé-canisme d’ouverture de porte, ainsi qu’à l’action de déverrouillage du mécanisme defermeture de la porte.

10.5.5 LES APPROCHES COMPÉTITIVES ET COOPÉRATIVES

DE SÉLECTION D’ACTION(S)

Selon Clancey [Clancey, 2002], tous les comportements orientés buts ne sont pas obte-nus par inférence ou compilation, mais des actions reproduisent simplement des motifsculturels et d’autres sont coordonnées sans délibération moyennant attention et adap-tation. Une personne n’effectue pas du multitâche en parallèle, mais plusieurs tâchesvont se dérouler en fusionnant attentivement plusieurs intérêts parallèles. Il est utiled’offrir un mécanisme permettant de dérouler des comportements en parallèle sans quel’utilisateur n’ait à synchroniserà la mainleur exécution, et sans qu’il ne lui soit néces-saire, au moment de la description d’un comportement, d’avoir la connaissance de l’en-semble des autres comportements susceptibles de pouvoir s’exécuter en même temps.Deux types de familles d’algorithmes de sélection de l’action existent : les approchescoopératives et les approches compétitives (cf figure 10.10). L’approche coopérativepermet de combiner plusieurs potentialités d’action, tandis que la seconde ne gardequ’une action parmi l’ensemble des actions potentiellement réalisables. La première

4acronyme de Synoptic Objects for Tracking Actions ReceivedFrom Interactive Surfaces and Humanoids

Page 21: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 293

approche, du fait de l’expressivité de la combinaison des actions s’exprime principa-lement par l’usage de fonctions arithmétiques sur des données de nature quantitative,tandis que la deuxième approche grâce à l’utilisation de fonctions de coût couplées àdes informations de nature plus qualitative va permettre dedéterminer la meilleure ac-tion à réaliser selon le contexte. Au sein d’HPTS, nous proposons les deux approchesà travers la notion de fonction d’intégration utilisable à chaque niveau de la hiérarchie.Il s’agit en fait d’une boîte noire programmable, et nous laissons ainsi au programmeurle choix de pouvoir faire du compétitif ou du coopératif, en fonction de la nature descomportements à traiter.

Figure 10.10 : Mécanismes de sélection de l’action

En ce qui concerne l’approche compétitive, des algorithmesde sélection de l’actionont été proposés dans le domaine des systèmes multi-agents,la plupart étant des ex-tensions de l’algorithme ASM (Action Selection Mechanism)de P. Maes (MIT, Etats-Unis) [Maes, 1990]. On peut citer l’algorithme de V. Decugiset J. Ferber (LIRMM,France) [Decugis e.a., 1998] qui s’intéresse à un problème intéressant : comment com-biner réactivité et planification dans des applications temps réels (en l’occurrence larobotique). Ils ont ainsi proposé un ASM hiérarchique dans lequel les niveaux les plusbas concernent les comportements réflexes de base et les niveaux les plus élevés in-tègrent des comportements plus complexes (de la même manière que dans les mo-dèles à base d’automates hiérarchiques). A chaque niveau, un mécanisme d’arbitragedoit être utilisé pour choisir parmi les actions proposées par les ASMs parallèles. B.Rhodes a proposé, lui aussi, une autre extension des ASMs : ils’agit des PHISH-Nets[Rhodes, 1996]. Ce modèle autorise l’utilisation d’actions paramétrées et permet dedéfinir des relations entre actions qui sont soit de type conflictuel (elles ne peuventpas s’exécuter en même temps) ou de précédence (l’une doit avoir été effectuée avantles autres). Ces modèles permettent de faire de la planification réactive mais l’incon-vénient concerne la spécification exhaustive de toutes les interactions possibles entreactions (hypothèse du monde clos). De plus il existe dans cessystèmes des cas pour les-quels aucune décision ne pourra être prise. Fabrice Lamarche [Lamarche e.a., 2002] aproposé d’automatiser le mélange des comportements en respect de leur importance re-lative, en utilisant l’approche coopérative du mécanisme de sélection de l’action. Pourillustrer la problématique de ce travail, prenons un exemple concret : une personne estdevant une table, elle lit tout en buvant un café et en fumant une cigarette. Cette phrasedécrit un comportement relativement simple pour un être humain, cependant en termed’animation comportementale, il pose divers problèmes. D’une part, il est constitué detrois comportementsindépendantsqui se déroulent en simultané : lire un document,boire un café, fumer une cigarette. Dans les modèles comportementaux décrits dans lalittérature, simuler ce type de comportement est relativement complexe, il faut pouvoir

Page 22: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

294 Le traité de la réalité virtuelle

les agencer de manière à respecter un certain nombre de contraintes telles que ne pasboire le café alors que l’on a une cigarette dans la bouche, nepas manipuler une feuillede papier avec la main tenant la tasse de café. D’autre part, lorsque l’on dispose destrois comportements codés séparément sous forme d’automates, il n’est pas utile derecoder un automate spécifique à leur réalisation en simultané. L’objectif est de pou-voir les lancer et les laisser s’agencer automatiquement enfonction des circonstances,des envies et des contraintes physiques de l’agent. Les plusgros problèmes de syn-chronisation viennent de l’utilisation des ressources internes de l’agent. Par ressourcesinternes, on entend la vue, les mains, les pieds, ou plus généralement toute dépendance,physique ou non, limitant leurs déroulements en parallèle.Pour ce faire, trois nouvellesnotions ont été introduites au sein du modèle HPTS :

ressources :par l’exclusion mutuelle sur l’utilisation de ces données (parties du corps,par exemple), cela permet de définir à tout moment l’ensembledes comporte-ments compatibles et donc coordonnables ;

priorité : il s’agit d’un coefficient qui indique l’importance du comportement auquel ilest associé dans un contexte donné. Ce coefficient peut illustrer soit l’adéquation(activation) soit l’inadéquation (inhibition) entre le comportement et le contexte.La priorité peut être définie dynamiquement et évoluer au cours du temps ;

degré de préférence :il s’agit d’une valeur numérique associée à chaque transitiond’un automate. Cette valeur comprise entre -1.0 et 1.0 permet de décrire la pro-pension de l’automate à utiliser cette transition lorsqu’elle est franchissable. Si lavaleur est positive, la transition favorise la réalisationdu comportement. Si la va-leur est négative, cette transition ne favorise pas la réalisation du comportement,mais permet de décrire un chemin de libération de ressource ou de terminaisoncohérente d’un comportement. Une valeur nulle n’influera pas sur le comporte-ment.

Ce système permet de décrire les comportements de manière fine, avec toutes leurspossibilités d’adaptation. La description d’un nouveau comportement, grâce au méca-nisme d’évitement des interblocages, ne nécessite pas la connaissance des comporte-ments déjà décrits. La coordination de l’ensemble des comportements actifs devientainsi générique et automatique. Une description complète de l’algorithme de coordi-nation automatique est décrite dans la thèse de Fabrice Lamarche [Lamarche, 2003] etillustrée par l’exemple du lecteur / buveur / fumeur.

10.6 MODÈLES DE COMPORTEMENT COGNITIF

10.6.1 INTRODUCTION

Les systèmes purement réactifs ne sont pas suffisants pour décrire l’ensemble des com-portements, notamment au niveau rationnel et sociaux. Il est ainsi nécessaire de décrirespécifiquement les comportements cognitifs. Les modèles cognitifs s’intéressent à lareprésentation des connaissances d’un acteur (croyances,intentions). La représentationest la notion centrale des sciences cognitives traditionnelles au détriment du contextecorporel et environnemental dans lequel les systèmes cognitifs sont amenés à opérer.En réaction à cela, la situation et l’incarnation sont devenues des concepts importantsen science cognitive à la fin des années 1980 [Ziemke, 2002]. Dans cette approche, lacognition n’est plus réduite à une manifestation cérébralemais elle implique aussi le

Page 23: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 295

corps et l’environnement. Le corps de l’agent ainsi que l’environnement dans lequelil opère procurent un certain nombre de structures que les appareils cognitifs internesde l’agent cognitif vont utiliser pour résoudre les problèmes de l’agent [Keijzer, 2002].Tandis qu’il y a un consensus dans la communauté dite de la cognition située et in-carnée pour dire que l’approche traditionnelle de la cognition en tant que processuscalculatoire est incomplète, voire erronée. Il n’y a par contre pas de consensus sur ceque sont les fondements de cette nouvelle approche. Keijzer[Keijzer, 2002] présente,par exemple, la notion de cognition incarnée dynamique, en considérant les agents cog-nitifs comme des systèmes dynamiques et en mettant en avant le rôle central joué parles relations temporelles dynamiques impliquées dans les interactions entre le systèmeneuronal, le corps et l’environnement.

La science cognitive incarnée a des racines en intelligenceartificielle où elle est de-venue populaire en tant que nouvelle intelligence artificielle. En plus de l’IA, elle aaussi des racines dans d’autres disciplines des sciences cognitives telles que la psycho-logie, la linguistique, les neurosciences. Brooks [Brooks, 1990] et d’autres ont montréqu’un certain nombre de comportementsintelligentsd’un agent peuvent s’expliquer auniveau du contrôle sensori-moteur. Des mécanismes très simples connectant les cap-teurs et les effecteurs d’un agent permettent d’exhiber descomportemernts complexessans avoir recours à des représentations symboliques. Ainsi, si un certain nombre decomportements peuvent être exprimés grâce à l’hypothèse del’ancrage physique, laquestion reste posée pour des fonctions cognitives de plus haut niveau faisant interve-nir notamment le langage [Vogt, 2002].

Dans la science cognitive incarnée, il est assuré que l’intelligence peut être décritecomme la somme des expériences corporelles antérieures de l’agent acquises au tra-vers de son interaction avec son environnement. En d’autrestermes, l’intelligence d’unagent est fondée sur ses interactions antérieures avec le monde physique [Vogt, 2002].Certains prétendent que les représentations symboliques ne sont pas nécessaires pourmettre en œuvre des comportements d’agents intelligents. Brooks [Brooks, 1990] aainsi introduit l’hypothèse de l’ancrage physique : cette hypothèse statue que l’intelli-gence d’un agent doit être fondée sur l’interaction entre l’agent physique et son envi-ronnement.

Page 24: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

296 Le traité de la réalité virtuelle

Ceci est vrai pour décrire des comportements réactifs de basniveau tels que des évite-ments d’obstacle et de la reconnaissance de formes simples,mais les comportementscognitifs de plus haut niveau requièrent des représentations symboliques. La com-plexité réside dans le fait que ce système symbolique doit être incarné et situé : ildoit être incarné pour vivre des expériences dans le monde environnant et il doit êtresitué pour acquérir des connaissances au travers de ses interactions avec ce monde.Tom Ziemke effectue une analyse critique de l’apport de la nouvelle intelligence artifi-cielle au problème de l’ancrage des symboles et conclut en disant que même s’ils sontincarnés, la vie elle ne semble pas être présente [Ziemke, 1999].

Les architectures cognitives visent à unifier au sein d’un même modèle un ensemble depropriétés communément admises au sein d’une communauté scientifique sur la cogni-tion humaine. Ces communautés sont multiples (psychologie, neurosciences, ergono-mie, intelligence artificielle, animation et réalité virtuelle, . . .) et nous ne présenteronsici que celle liée à l’animation temps-réel d’humanoïdes desynthèse. Le lecteur in-téressé par une présentation plus large de ces modèles peut se référer aux documentssuivants [Donikian, 2004, Burkhardt e.a., 2004].

10.6.2 APPROCHES COGNITIVES EN ANIMATION

Les intentions permettent à un acteur de raisonner sur son état interne et sur celui desautres. Le centre d’un tel agent délibératif est sa propre représentation du monde quiinclut une représentation de son propre état mental et de celui des acteurs avec quiil est en interaction. Pour faire cela, Badler et al (Université de Pennsylvanie, Etats-Unis) [Badler e.a., 1997] ont ajouté aux niveaux contrôle detâche (SCA) et réactif(PaT-Nets) un planificateur qui, à partir de l’interrogation d’une base de connaissance,à travers le filtre d’un capteur de perception, va élaborer unplan et déterminer l’actionà effectuer. J. Funge [Funge e.a., 1999] a proposé un langagede modélisation de lacognition (CML), issu de travaux en intelligence artificielle sur le calcul situationnel.Cette approche permet de raisonner sur des actions représentées de manière abstraite etde leur effet sur le monde (ce qui nécessite de modéliser l’impact de chaque action surle monde). Avec ce modèle, il est possible de spécifier des buts à atteindre et de trouverune stratégie les satisfaisant, moyennant un temps de calcul assez important.

BCOOL est l’acronyme de Behavioural and Cognitive Object Oriented Language. Ils’agit d’un langage de description dont l’objectif est de modéliser la connaissancedes agents et qui a été proposé par Fabrice Lamarche dans le cadre de sa thèse[Lamarche, 2003]. Dans un monde peuplé d’objets et d’agents, ce langage permet dedéfinir les relations qui peuvent exister entre eux. S’inspirant des affordances de Gib-son [Gibson, 1986] et des Smart Objects de Kallmann [Kallmann, 2001], ce langagepermet de décrire dans l’objet les comportements d’interaction possibles avec celui-ci.Ces possibilités d’interaction sont ensuite intégrées dans le modèle de raisonnement.La figure 10.6.2 présente l’architecture générale de BCOOL.La description effectuéedans le langage BCOOL est compilée pour être transformée en une base de donnéesdécrivant le monde et les capacités d’interactions offertes aux agents. Cette base dedonnées, qui ne contient que des informations utiles pour leraisonnement, est chargéedans l’application. Afin de faire le lien avec le monde réel etles actions des agents, untableau noir est généré, dont le but est de faire le lien entreles actions conceptuellesdu monde du raisonnement et les actions réelles exécutablespar l’agent, grâce à l’uti-lisation du langage HPTS++. Comme dans les modèles BDI, chaque agent manipulesa propre connaissance du monde et il s’en sert pour sélectionner des actions dont cer-

Page 25: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 297

taines peuvent être de chercher à acquérir des informationsafin d’enrichir sa propreconnaissance.

Figure 10.11 : Architecture générale de BCOOL.

Deux mondes cohabitent dans BCOOL : le monde conceptuel et lemonde réel. Lepremier monde permet de décrire l’ensemble des catégories d’objets qui peuplent unmonde virtuel et des possibilités d’interaction qu’ils offrent aux agents. Le seconddécrit un monde par l’instanciation des objets qui le peuplent. Le monde concep-tuel est décrit à l’aide de propriétés (faits) et de relations entre plusieurs objets (parexemple, dans(objet, placard)). L’ensemble des propriétés et relations définissent l’étatdu monde, cependant, leur valeur de vérité n’est pas forcément connue de l’agent. Lesactions décrivent les comportements d’interaction qu’un agent pourra adopter vis-à-visde l’objet. Afin d’être intégrées dans un mécanisme de raisonnement, ces actions uti-lisent un mécanisme de préconditions (conjonction de faits) et d’effets. Il est possiblede spécifier dans l’action l’agent susceptible de réaliser l’action (notion de ciblage). Lemonde réel consiste en la description des objets peuplant l’environnement, l’initialisa-tion éventuelle de leurs propriétés et la description des relations vraies dans la situationinitiale. La génération du monde est effectuée tout d’abordpar une compilation du lan-gage qui va produire deux fichiers PROLOG différents, l’un contenant la descriptiondes objets et relations du monde conceptuel tandis que l’autre contient la déclarationdes instances du monde réel. La base de données est ensuite produite grâce à l’utilisa-tion d’un moteur d’inférence Prolog. La base de données pourra ensuite être utilisée enligne en temps réel par le mécanisme de sélection d’actions.

Le monde généré par le moteur d’inférence contient des faitset des actions. Les faitssont de trois types : propriétés associées aux objets, relations entre objets et applica-tions. A chaque fait correspond une valeur de vérité contenue dans l’intervalle [0..1],et décrivant l’état des croyances de l’agent sur le monde l’environnant. Si la valeurde vérité d’un fait est supérieure à 0.5, le fait sera supposécomme connu, tandis quesi cette valeur est inférieure, elle est non fiable et nécessite d’acquérir des connais-

Page 26: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

298 Le traité de la réalité virtuelle

sances complémentaires sur le fait. Deux autres types d’information sont associés aufait : il s’agit de valeurs d’activation et d’inhibition comprises dans l’intervalle [0..1]et décrivant la volonté de satisfaire ou non ce fait. Pour chaque fait, une fonction desatisfactionsat(f) = activation(f) - inhibition(f)est utilisée. Sisat(f) > 0, cela signifieque le fait doit être satisfait et donc qu’il faut provoquer l’exécution des actions quiprovoquent l’ajout du fait. Dans le cas contraire, ce fait nedoit pas être satisfait. Lesactivations et les inhibitions des faits décrivent trois sortes de buts (fait à éviter, faità réaliser et fait à maintenir). La notion de but évolué permet de prendre en comptedes faits autres qu’atomiques, composés sous la forme d’uneliste de faits à satisfaire.L’algorithme de sélection d’actions utilise un graphe de planification possédant deuxtypes de noeuds (actions et faits) qui sont interconnectés grâce aux relations de pré- etde post-condition d’action. Ce graphe est ensuite mis en couches grâce aux informa-tions d’activation et d’inhibition de faits. Cette mise en couche permet de représenterla distance entre les buts à atteindre et les faits considérés comme vrais. L’algorithmede sélection d’action peut ainsi trouver une suite d’actions à effectuer pour permettrela réalisation d’un but donné. L’algorithme complet est décrit dans la thèse de FabriceLamarche [Lamarche, 2003]. Il s’agit de résultats préliminaires mais prometteurs. Eneffet, l’algorithme tourne pour le moment sans être connecté au monde réel des actionsphysiques réalisées par l’agent autonome, la gestion des échanges d’information partableau noir n’ayant pas encore été réalisée. Cependant desexemples concrets relative-ment complexes de sélection d’action ont pu être simulés avec notamment la recherched’informations complémentaires lorsque l’agent ne dispose pas d’assez de connais-sances pour réaliser le but à atteindre.

10.6.3 MODÉLISATION DES ÉMOTIONS

Un autre domaine du comportement humain encore peu exploré en animation concernel’expression et la perception des émotions humaines [Ventura e.a., 1999]. Quelquestravaux de recherche ont cependant été effectués dans la communauté sur ce su-jet, notamment pour l’animation faciale et la réalisation d’agents conversationnelsexpressifs. Le modèle OCC (Ortony, Clore et Collins) [Ortony e.a., 1988] est l’undes plus connus et des plus utilisés pour générer les émotions d’agents autonomes[OReilly, 1996, Bartneck, 2002]. L’autre modèle très connu est celui d’Ekman, notam-ment pour son travail sur les expressions faciales [Ekman, 1982]. P. Ekman a étudiél’ensemble des expressions faciales et les a classées en un nombre limité de catégoriesdisjointes (joie, dégoût, surprise, tristesse, peur et colère). Ces émotions ont été misesen oeuvre dans le système Cathexis développé par J. Velasquez [Velasquez, 1997], ainsique dans FacEMOTE de N. Badler et al. [Byun e.a., 2002]. P. Ekman a aussi travaillésur les émotions de manière plus générale [Ekman, 1999].

10.7 MODÈLES DE COMPORTEMENTS COLLECTIFS ET SOCIAUX

10.7.1 INTRODUCTION

Il est illusoire de vouloir traiter de l’ensemble des comportements sociaux humains.Nous allons nous focaliser ici sur ceux ayant trait à l’interaction de tous les jours dansdes espaces publics. Tout d’abord nous allons introduire unde nos comportements lesplus fondamentaux amenant l’être humain à être en continuelle interaction avec autrui,la locomotion, puis nous traiterons le problème des comportements de foules.

Page 27: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 299

10.7.2 LA LOCOMOTION

La locomotion est un des comportements humains les plus fondamentaux et qui joue unrôle central dans un certain nombre d’activités humaines. Afin d’être adaptatif, il doitêtre guidé par des informations sur l’environnement et ainsi le contrôle visuel de la lo-comotion est une capacité perceptuelle fondamentale [Warren, 1995]. Le suivi de voieest une activité prépondérante tant pour le piéton que pour le conducteur de véhicule.Dans cette activité, l’entrée principale concerne la formede la voie, ce qui correspondà son squelette et sa largeur. Goffman [Goffman, 1971] décrit les techniques qu’em-ploie un piéton dans le but d’éviter les collisions avec d’autres usagers de la voirie etappelle cela le code social de la route. Le lien social entre passants est caractérisé parle silence et l’indifférence [Relieu, 1996]. Pour maintenir ce lien d’indifférence civileentre passants, plusieurs comportements sont mis en œuvre :

• le premier comportement appeléexternalisationexprime le fait que les gens sontconstamment en train de fournir des informations sur leurs intentions (direction, vi-tesse et résolution du pas) par des mouvements pouvant émaner de tout ou partiedu corps. Chaque piéton se doit de rendre ces informations perceptibles aux autrespersonnes occupant la zone d’interaction ;

• le second comportement appeléscrutationest un processus par lequel chaque piétonregroupe de manière sélective un ensemble d’informations externalisées par d’autrespiétons. Golson et Dabbs [Golson e.a., 1974] ont observé queles femmes passaientplus de temps à cette tâche de scrutation que les hommes ;

• le troisième comportement, appeléminimisation des ajustementsexprime le fait quel’ajustement de la trajectoire est effectué à une distance de quelques mètres pour êtrerendu perceptible assez tôt par les autres, dans le but de minimiser l’interaction avecles autres usagers et d’éviter une coordination.

Lee et Watson ont montré que pour limiter au maximum les interactions, même sansmarquage explicite des voies de circulation, l’organisation globale des flux respecte lesrègles du code de la route [Lee e.a., 1992], permettant ainsià chacun de prédire aisé-ment la trajectoire normale des autres usagers. Goffman introduit aussi la région ovalede sécurité dont la profondeur, qui correspond à l’aire d’anticipation, est dépendantede la vitesse du piéton lui-même, tandis que la largeur détermine la distance acceptablepour passer à côté d’une personne ou un obstacle ou encore pour longer un mur.Daamen et Hoogendoorn [Daamen e.a., 2003] proposent une équation pour calculerl’aire A(V ) de l’espace frontal d’un piéton en fonction de sa vitesseV de déplacement :

A(V ) = Aembouteillage − 0.52 . ln

(

1 − V

Vlibre

)

avecVlibre, la vitesse de déplacement moyenne d’un piéton dans un déplacement noncontraint (en moyenne 1.34 m/s) etAembouteillage, l’espace minimal utilisé par unpiéton lors d’un trafic très dense (en moyenne 0.19m2).

Yamori [Yamori, 1998] propose lui une loi qui relie la vitesse d’un piéton à la densitéde l’aire locale dans laquelle il se déplace. Il définit ainsila distanced parcourue par

Page 28: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

300 Le traité de la réalité virtuelle

un piéton entre l’instantt et l’instantt + 2 par :

d = dmax.exp(−kd.ρ

ρmax

)

avecdmax, la valeur maximale de cette distance obtenue quandρ, la densité, tend verssa valeur maximumρmax, kd étant une constante du modèle.

Goffman postule aussi l’existence d’une loi dite des changements minimaux qui veutdire qu’un piéton essaiera au cours de son trajet de réduire le nombre et l’amplitude deschangements d’orientation. Hillier et al. [Hillier e.a., 1993] montrent que la majoritédes mouvements pédestres se produit le long de lignes de vue qu’ils nomment lignesaxiales. Azimazadeh et Klärkvist [Azimzadeh e.a., 2003] ont étudié l’impact de ceslignes de vue sur le choix d’un chemin parmi plusieurs possibles. Ils montrent entreautre que les chemins aller et retour d’un lieu à un autre peuvent ne pas être les mêmesdu fait de la prise en compte de ces lignes de vue.

M. Relieu [Relieu e.a., 1998] introduit la notion de discrimination urbaine, décrivantainsi le fait que le piéton va focaliser son attention à l’intérieur de sa région couranteafin de sélectionner l’information pertinente à la poursuite de l’activité dans laquelle ilest engagé. Le cas particulier de la traversée de rue a été étudié du fait de la dangerositédue au croisement du trafic automobile. Lors de la traversée de rue, la communicationentre le piéton et les conducteurs de véhicules ainsi que l’évaluation des situations vontinfluencer les décisions du piéton. Firth [Firth, 1982] décompose l’activité de traverséede rue en six étapes : sélection du lieu de traversée, observation, perception, jugement,décision et traversée. Harrell [Harrell, 1990] s’est intéressé au risque pris par les pié-tons lors de la traversée. Il a ainsi mesuré le temps séparantl’instant de départ dupiéton du bord du trottoir et celui de l’arrivée du véhicule sur le passage du piéton[Harrell, 1992]. Les groupes présentent ainsi un comportement plus hardi en acceptantdes ouvertures temporelles moins grandes et en forçant davantage les conducteurs devéhicules à ralentir. Wagner [Wagner, 1981] s’est intéressé quant à lui au comporte-ment des suiveurs lors de la traversée en groupe à un carrefour et il différencie troistypes de comportements : la ligne de front, les suiveurs et lepiéton solitaire.

10.7.3 MODÈLES DE NAVIGATION RÉACTIVE D’UN HUMAIN VIRTUEL

DANS SON ENVIRONNEMENT

Un des problèmes auxquels un être humain est confronté lorsqu’il navigue dans unenvironnement est celui du repérage de sa propre localisation dans l’espace. Une ap-proche consiste à considérer que l’être humain possède une carte cognitive géocen-trique de l’espace dans lequel il navigue. B. Tversky [Tversky, 2001] indique que lesespaces diffèrent par les fonctions qu’ils servent et décrit différents espaces relative-ment à soi : l’espace du corps, l’espace autour du corps, l’espace de navigation etl’espace abstrait. Ce dernier espace concerne l’ensemble des représentations abstraitesutilisées dans notre pensée telles que dessins, diagrammes, courbes ou encore graphes.B. Tversky postule que chaque espace est représenté schématiquement au sein du cer-veau et que les éléments et les relations spatiales varient en fonction de la nature del’espace : il n’y a aucune raison pour que les représentations spatiales soient cohérentesentre elles [Tversky, 2001]. En ce qui concerne l’espace de navigation, l’évidence de

Page 29: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 301

sa schématisation provient des erreurs observées systématiquement dans les jugementssur les espaces mémorisés5.

Les lieux marquants (Landmarksen anglais) sont définis comme étant des endroits dontla localisation est relativement mieux connue et qui servent pour définir la localisationde positions adjacentes. Beaucoup de tâches spatiales requièrent d’un individu qu’il uti-lise des lieux marquants afin d’établir une mémoire des lieux[Waller e.a., 2002]. Ainsi,un nouveau visiteur dans une ville utilisera quelques lieuxmarquants à proximité deson hôtel pour mémoriser sa localisation. Cette mémoire de place lui permettra de re-connaître son hôtel lorsqu’il arrive dans son voisinage et peut être utilisée pour guiderla navigation afin de retourner d’un lieu distant à celui-ci.Waller et al. organisent ainsiune expérimentation dans laquelle une personne naviguant dans un environnement vir-tuel dispose de trois lieux marquants comme repères pour établir sa propre localisationdans l’espace. Ils montrent que l’apprentissage des lieux est un composant importantpour la navigation fondée sur les lieux marquants et qu’un utilisateur est à même dedéterminer sa direction même s’il a une vue complètement inédite sur les lieux mar-quants : il est ainsi postulé que l’être humain dispose de capacités de raisonnementgéométrique lui permettant, quelle que soit sa position parrapport à des lieux mar-quants, de déterminer son orientation pour atteindre un but.

Certains travaux de recherche en animation comportementale se sont intéressés à lanavigation réactive et à la planification de chemins optimaux dans des environne-ments virtuels. Cependant, ces modèles de planification ne tiennent pas compte decertains comportements observés lors d’expériences en psychologie cognitive, tels quele suivi d’itinéraires non optimaux ou gestion de la perte dechemin dans l’environ-nement lors de la navigation, car les humanoïdes modélisés sont omniscients. Afin depallier ce manque de réalisme, il est nécessaire de développer des modèles de percep-tion et de représentation de l’espace individualisés et parcellaires. Duckham et Kulik[Duckham e.a., 2003] proposent un algorithme de planification de chemin fondé surle choix du chemin le plus simple et non pas le plus court. Des modèles issus de larobotique [Kuipers, 1983, Lee, 1996, Yeap e.a., 1999] ont permis de trouver des solu-tions pour remédier au manque de représentation globale de l’espace, en utilisant desmodèles de cartes cognitives spatiales, issus de la psychologie cognitive. Jefferies etYeap utilisent un modèle de mémoire pour l’environnement immédiat d’un agent in-titulé MFIS (Memory For the Immediate Surroundings) [Jefferies e.a., 2001]. Raubalet al. [Raubal e.a., 1999, Franck e.a., 2001] se sont intéressés à la simulation du com-portement des usagers d’un aéroport. En ce qui concerne la perception, ils utilisent lathéorie des affordances de Gibson [Gibson, 1979]. Un objet contiendra ainsi des affor-dances de deux types : information ou action. Un graphe de cheminement est utilisé,dont les noeuds sont des paires contenant des états de connaissance et des positionsspatiales. Les arcs représentent des transitions, soit entre des états de connaissance,soit entre des vues. Ils décrivent en détail le scénario de passage du contrôle des passe-ports et du choix de chemin à l’issue de ce passage. Dans leur modèle la connaissancen’est qu’additive, c’est-à-dire qu’il n’y a pas de perte ni d’altération de l’information,et ils ne traitent pas explicitement le fait d’être perdu. H.Hochmair [Hochmair, 2001]décrit un modèle de construction itérative de la carte cognitive d’un agent et l’impactde l’état de la carte sur la décision d’un agent dans sa tâche de recherche de chemin.La procédure mentale d’un agent lors du processus de navigation est décomposée encinq étapes répétées jusqu’à ce que l’agent atteigne sa destination. Au cours de l’étape3 concernant la comparaison entre les données observées et celles stockées dans la

5une présentation des stratégies de repérage spatial et des erreurs associées aux représentations mentalespeut être trouvée dans [Donikian, 2004].

Page 30: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

302 Le traité de la réalité virtuelle

carte cognitive, si une différence est détectée, plusieurscauses peuvent être envisagées,parmi lesquelles l’omission d’information dans la carte mentale ou encore l’incohé-rence entre les données stockées dans la carte mentale et celles perçues. Quel que soitle cas de figure rencontré, cela donne lieu à la mise à jour de lacarte cognitive spatialede l’environnement.

R. Thomas a repris la notion de graphe topologique hiérarchique pour l’élaborationd’une nouvelle base de données urbaines [Thomas e.a., 2003], à laquelle il a ajouté unehiérarchie adaptée des travaux de l’urbaniste Kevin Lynch [Lynch, 1960], qui définit lesnotions de noeuds et de quartiers, permettant d’inclure desinformations cognitives par-tagées par le plus grand nombre de citadins. Il a ainsi constitué les éléments permettantde gérer l’évolution de la représentation mentale que se fait un agent autonome de l’en-vironnement dans lequel il évolue. Le modèle de représentation utilisé est un graphe to-pologique hiérarchique informé intégrant le concept d’aire locale [Penn, 2001]. D’autrepart, une autre information est contenue dans la carte cognitive, il s’agit deslandmarksou points de repère, qui sont des marqueurs spatiaux spécifiques à chaque humanoïdeet qui correspondent à une ségrégation spatiale différentede celle des aires locales. Lesdifférents modules gérant le comportement de l’agent vont extraire des informationsde cette base de données à travers des requêtes dynamiques. Lors d’une navigation, lesespaces de la carte peuvent avoir plusieurs statuts : inconnu, connu ou reconnu, rappeléou non rappelé de la mémoire à long terme vers la mémoire de travail. La carte cogni-tive spatiale en elle-même ne contient pas d’information précise sur la géométrie ni surles propriétés sémantiques des objets contenus dans la basede données. Elle peut êtrevue comme un filtre sur les accès que l’agent peut avoir sur la base, dans le sens qu’ellerecouvre partiellement la structure topologique et sémantique de celle-ci, donne accèsaux objets de la base qui ont d’ores et déjà été vus et rend invisibles les autres. Commeun piéton peut naviguer n’importe où dans la base, la carte cognitive associée croît aufur et à mesure de ses pérégrinations. Des simulations de navigation d’un piéton dansle centre-ville de Rennes ont été réalisées. Chaque piéton planifie son chemin en utili-sant l’algorithme de planification hiérarchique présenté par Mallot [Wiener e.a., 2003],en utilisant les espaces locaux dans l’aire locale d’influence et en remontant dans lastructure hiérarchique dès que l’on sort de l’aire locale d’influence. Une descriptioncomplète des modèles de carte cognitive et de mémoire spatiales peut être trouvée dansla thèse de R. Thomas [Thomas, 2005].

10.7.4 COMPORTEMENTS DE FOULES

Il est connu que dans les mouvements de foules, les flux de piétons marchant dans desdirections opposées ont tendance à se séparer, conduisant ainsi à la formation dyna-mique de files de piétons allant dans la même direction. Lorsque la densité des piétonsdans un espace devient grande, il est montré qu’il est possible d’effectuer une approxi-mation de la tendance générale en utilisant les lois sur l’évolution des fluides. Dans lessituations de panique, les piétons souhaitent se déplacer beaucoup plus vite que d’habi-tude et de ce fait vont jusqu’au contact physique avec les autres. Ils ont aussi tendanceà développer des comportements mimétiques de ceux les précédant dans le flux. Tur-ner [Turner, 1964] utilise une théorie des normes pour suggérer que l’homogénéité sedéveloppe dans une foule non pas parce que des personnes ayant les mêmes prédispo-sitions se sont assemblées spatialement, mais parce que lesmembres de la foule onttendance à se conformer à une norme émergente. Selon Yamori [Yamori, 1998], cettenotion de norme est accompagnée inévitablement de la notionde régulation, compor-tement qui n’est pas inné mais aquis comme élément normatif au sein d’une certaine

Page 31: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 303

macrostructure ou collectivité. Cependant, de petits groupes peuvent servir de levierpour faire bouger de plus grandes unités, jouant ainsi le rôle du cœur.

Boles [Boles, 1981] a observé des structures de bandes au sein des foules de piétons sedéplaçant sur des trottoirs et il a montré que les piétons avaient tendance à utiliser cetype de structure afin de maintenir le maximum d’efficacité ausein du trafic piétonnier.K. Yamori a cherché à étudier ces structures de bande d’un point de vue macroscopique[Yamori, 1998]. Il postule que pour que ce type de structure existe, il est nécessairequ’une densité critique de personnes soit atteinte, et il cherche à déterminer les facteursqui déterminent l’émergence de ces structures. Milgram et Toch [Milgram e.a., 1969]ont noté qu’une structure en anneau émergeait lorsque les membres d’une foule dis-posaient d’un point d’intérêt unique commun. Cette formation circulaire peut être ob-servée au sein des foules regroupées par exemple autour d’artistes de rue. Un des pro-blèmes cruciaux mis en avant par Yamori [Yamori, 1998] concerne les relations entreles comportements micro et macroscopiques au sein d’une foule. L’enjeu est d’expli-quer comment un individu peut affecter une collectivité et comment en retour la col-lectivité va agir sur le comportement individuel au cours dutemps. Yamori se focalisesur l’étude de la formation des structures de bandes macroscopiques sur des passages-piétons dans un cas de trafic piétonnier très dense comme c’est le cas au Japon. Del’étude, il postule qu’une masse critique doit être atteinte afin qu’émerge une structureen forme de bandes.

10.7.5 MODÈLES DE SIMULATION DE FOULE

La simulation macroscopique a été historiquement la première approche utilisée poursimuler les déplacements de personnes, du fait de son faiblecoût de calcul. En effet,dans cette approche, le piéton n’est pas traité individuellement mais en tant qu’élémentconstitutif d’une matière plus macroscopique. Henderson [Henderson, 1971] propose,dans le cas de faibles densités, l’utilisation d’un modèle gazeux assimilant les dépla-cements de personnes à ceux de molécules de gaz en faisant un parallèle sur leursdensités respectives. D’autres modèles ont été proposés comme le modèle hydrauliquepour les foules à forte densité [Archea, 1979, Predtechenskii e.a., 1978], assimilant lemouvement de personnes dans un espace à celui d’un liquide dans un tuyau. D’autresmodèles statistiques fondés sur un grand nombre d’observations ont été proposés. Ilsdonnent des équations sur le temps d’évacuation d’un immeuble en traitant séparé-ment les zones de circulation horizontale et verticale [Melinek e.a., 1975, Pauls, 1984,Siikonen e.a., 2002]. Le lecteur intéressé trouvera une description détaillée de ces mo-dèles dans l’étude bibliographique de début de thèse de Sébastien Paris [Paris, 2004]sur la caractérisation des niveaux de services et la modélisation des circulations depersonnes dans les lieux d’échange.

Les systèmes à base de particules sont des systèmes physiques qui permettent de dé-crire des forces d’attraction et de répulsion pouvant être associées à des obstacles ouà des entités simulées. Les forces appliquées à une entité sont additionnées de ma-nière à déterminer sa nouvelle direction. Ce modèle fait l’analogie entre le déplace-ment d’individus en forte densité, n’ayant quasiment pas dedegrés de liberté dansleurs déplacements et l’écoulement de particules dans des compartiments. I. Peschlindique que cette modélisation est pertinente pour le cas oùune forte densité de per-sonnes est confinée et en état de panique [Peschl, 1971]. Quand le flot se dirige versune issue unique, un phénomène d’agglutination se produit et le débit de l’issue devientquasi nul [Helbing e.a., 2000]. Braun et al. [Braun e.a., 2003] proposent une extension

Page 32: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

304 Le traité de la réalité virtuelle

du modèle d’Helbing en ajoutant la dimension sociale de la connaissance d’autrui ausein du groupe : lorsque les entités se connaissent, elles peuvent s’entraider pour sortird’une situation critique. Ils modélisent ainsi des forces d’attraction entre agents, pon-dérées par des facteurs d’altruisme et de dépendance6. Les modèles à base de particulesexhibent un comportement macroscopique réaliste dans le cas d’une densité de popu-lation importante. Cependant, ces modèles ne prennent pas en compte ni la perceptionvisuelle, ni les règles sociales.

S. Goldenstein et al. [Goldenstein e.a., 2001] proposent une approche dynamique entrois couches pour modéliser le comportement de foules de personnages évoluant ausein d’environnements virtuels. La première couche, la plus locale, est un système dy-namique non linéaire décrivant le mouvement de l’agent modélisé comme une par-ticule par deux paramètres : son angle d’orientation et le module de sa vitesse. Lesobstacles et les cibles définissent ainsi un ensemble de répulseurs et d’attracteurs. Desparamètres comportementaux comme l’agressivité sont prisen compte en utilisant unedistance-seuil indiquant à partir de quelle distance un obstacle est pris en compte. Laseconde couche dite environnementale consiste en une structure de données cinéma-tiques maintenant dynamiquement les relations avec les objets en mouvement et lesobstacles à l’aide d’une triangulation de Delaunay. La troisième couche permet d’avoirune vision globale nécessaire pour planifier des tâches et déterminer ainsi l’orientationdésirée pour s’approcher d’une cible.

Ulicny et al. [Ulicny e.a., 2002] utilisent une approche en plusieurs niveaux pour mo-déliser le comportement d’un individu au sein d’une foule encombinant les approchesà base de règles et d’automates d’états finis. Toutes ces approches sont confrontées auproblème de la détermination des plus proches voisins, ce qui constitue un des gouletsd’étranglement en ce qui concerne la détermination du nombre de piétons simulablesen temps réel. Plusieurs approches ont été proposées pour optimiser ce calcul en uti-lisant des structures de données telles que des treillis (bin-lattice) [Reynolds, 1999]ou des K-d arbres [O’Hara, 2000]. D’autres méthodes fondéessur l’exploitation deconnaissances sur l’environnement informé ont été proposées [Thomas e.a., 2000b,Farenc e.a., 1999], permettant ainsi de modéliser des comportements qui utilisent lanature de l’espace de ciculation [Hostetler e.a., 2002] et sa localité7. Des études se sontfocalisées sur les niveaux d’autonomie et de contrôle pour la simulation de foules,de manière à proposer des comportements réalistes de foulesau sein d’environne-ments virtuels à un moindre coût calculatoire [Musse e.a., 1997, Musse e.a., 1999].Ainsi Soraia Raupp Musse a introduit dans sa thèse [Musse, 2000] différents niveauxde contrôle des foules : le guidage, la programmation et l’autonomie.

Dans le cadre du projet MAGS, les auteurs [Moulin e.a., 2003]s’intéressent à la simu-lation de plusieurs milliers de piétons dans une représentation discrétisée de la villede Québec. Ils traitent le problème du goulet d’étranglement du calcul de la percep-tion en limitant la vision à un cône de 90 degrés de secteur angulaire et de 20 cellulesde rayon (pour une carte 300x300). Des travaux complémentaires ont été effectuéssur l’optimisation de la visualisation en temps réel de foules en utilisant des impos-teurs hiérarchiques [O’Hara, 2002] et des modèles d’ombrage temps réel d’imposteurs[Tecchia e.a., 2002]. De manière à augmenter le réalisme desanimations, Ashida et al.[Ashida e.a., 2001] ont effectué des analyses statistiquessur les déplacements des pié-tons le long d’un trottoir. Ils exhibent des actions subconscientes qu’ils intègrent dans

6Il n’est pas certain qu’une personne perdue dans une foule enmouvement ait facilement la capacitématérielle de percevoir ses amis au sein de cette foule et d’interagir avec eux s’ils sont un petit peu éloignés.

7Principe de discrimination urbaine proposé par M. Relieu [Relieu e.a., 1998].

Page 33: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 305

leur moteur d’animation à l’aide d’un processus stochastique pour contrôler leur acti-vation. Tsutsuguchi et al. [Tsutsuguchi e.a., 2000] proposent un modèle de gestion del’animation de foule dépendant de la distance à l’observateur : au delà d’une certainedistance à l’observateur, la position des piétons n’est pasmise à jour à chaque imagemais à une fréquence moins élevée.

Dans le cadre de sa thèse, Fabrice Lamarche [Lamarche, 2003]a proposé une approchemodulaire pour l’animation de foules en temps-réel fondée sur la prise en compte dequelques règles de comportement et sur un modèle de locomotion issu de la bioméca-nique. Un algorithme permet de construire automatiquementune représentation topo-logique hiérarchique de la carte 2D d’un environnement (pour un immeuble, une cartesera générée par étage). Une triangulation de Delaunay contrainte est appliquée à lasoupe de polygones décrivant la géométrie des lieux, fournissant une première décom-position spatiale en cellules triangulaires. L’algorithme fusionne ensuite l’ensemble dessegments interconnectés et colinéaires (à une certaine précision). Ce traitement permetd’obtenir l’ensemble minimal des segments extraits de la base de données initialesdéfinissant l’espace de navigation. Afin de minimiser le nombre de cellules, un regrou-pement des cellules triangulaires est effectué pour obtenir des cellules convexes, danslesquelles l’information des goulets d’étranglement les plus contraints va être conser-vée. Les cellules ainsi obtenues sont caractérisées en quatre familles (cellules closes,cul-de-sac, passage, carrefour) classifiées à partir du nombre de connections à d’autrescellules se faisant à travers des segments libres (porte de passage). Afin d’optimiser lecalcul de la détermination de chemin dans la carte, un algorithme d’abstraction topolo-gique est effectué, permettant de regrouper plusieurs noeuds, créant ainsi des graphesabstraits simplifiés. Chaque humanoïde virtuel est ainsi capable de planifier son proprechemin pour atteindre le but qu’il s’est ou qu’on lui a fixé. Unmodèle de navigationréactive a été développé, dont l’architecture est modulaire. Un des éléments-clés de cemodèle est le graphe de voisinage calculé à l’aide d’une triangulation de Delaunay surles positions des humanoïdes environnants et filtré grâce à des informations de visibilitéextraites de la subdivision spatiale. A partir de cela, le processus de navigation réactiveest décrit selon plusieurs étapes successives (respect de l’espace personnel, évitementde collision, sécurité) filtrant le vecteur vitesse de l’entité.

Figure 10.12 : Trajectoire suivie par un piéton et navigation collective dans le modèle3d de la ville de Rennes.

Page 34: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

306 Le traité de la réalité virtuelle

10.8 CONCLUSION

Ce chapitre a présenté un aperçu de différents travaux de recherches concernant lecontrôle des mouvements et la spécification des comportements d’humains virtuels au-tonomes. Il s’agit d’un domaine de recherche très actif et fortement transdisciplinaire,ce qui en fait à la fois sa richesse et sa complexité. L’intégration de l’humain virtueldans les applications de la réalité virtuelle est un besoin et un objectif de recherche àtrès court terme pour des domaines tels que la formation ou l’usine numérique.

10.9 RÉFÉRENCES BIBLIOGRAPHIQUES

[3D, ] M. 3D. www.swissquake.ch/chumbalum-soft.

[Ahmad e.a., 1994] O. Ahmad, J. Cremer, S. Hansen, J. Kearney, and P. Willemsen. Hierar-chical, concurrent state machines for behavior modeling and scenariocontrol. InConference on AI, Planning, and Simulation in High Auto-nomy Systems(1994), Gainesville, Florida, USA.

[Archea, 1979] J. Archea (1979). The evacuation of non-ambulatory patients from hos-pital and nursing home first : A framework for a model. Technical re-port, National Bureau of Standards, Center for Building Technology,National Engineering Laboratory, Washington DC.

[Ashida e.a., 2001] K. Ashida, S. Lee, J. Allbeck, H. Sun, N. Badler, and D. Metaxas. Pe-destrians : Creating agent behaviors through statistical analysis of ob-servation data. In I. C. Society, editor,Computer Animation(2001),pages 84–92, Seoul, Korea.

[Atkinson e.a., 1968] R. Atkinson and R. Shiffrin (1968). Human memory : A proposedsystem and its control processes. In K. Spence and J. Spence,editors,The Psychology of Learning and Motivation, volume 2, pages 89–95.New York : Academic Press.

[Azimzadeh e.a., 2003] M. Azimzadeh and B. Klarqvist. Phenomenal space : Attitudes andmethods. InSpace Syntax, 4th International Symposium(2003), Uni-versity College London.

[Badawi e.a., 2004] M. Badawi and S. Donikian. Autonomous agents interacting with theirvirtual environment through synoptic objects. InCASA’04, the Compu-ter Animation and Social Agent Conference(2004), Genève, Suisse.

[Badler e.a., 1993a] N. Badler, M. J. Hollick, and J. P. Granieri. Real-time control of avirtual human using minimal sensors.Presence, 2(1) :82–86 (1993a).

[Badler e.a., 1993b] N. Badler, C. Phillips, and B. Webber.Simulating Human. OxfordUniversity Press (1993b).

[Badler e.a., 1997] N. Badler, B. Reich, and B. Webber. Towards personalities for animatedagents with reactive and planning behaviors.Lecture Notes in ArtificialIntelligence, Creating Personalities for synthetic actors, (1195) :43–57(1997).

[Baerlocher e.a., 2004] P. Baerlocher and R. Boulic. An inverse kinematic architecture enfor-cing an arbitrary number of strict priority levels.The Visual Computer,20(6) :402–417 (2004).

[Bartneck, 2002] C. Bartneck. Integrating the occ model of emotions in embodied cha-racters. InWorkshop on Virtual Conversational Characters : Applica-tions, Methods, and Research Challenges(2002), Melbourne, Austra-lie.

[Berthoz, 1997] A. Berthoz.Le sens du mouvement. Odile Jacob (1997).

Page 35: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 307

[Boles, 1981] W. Boles. Planning pedestrian environments :A computer simulationmodel.Man-Environment Systems, 11 :41–56 (1981).

[Booth e.a., 1993] M. Booth, J. Cremer, and J. Kearney. Scenario control for real-time dri-ving simulation. InFourth Eurographics Workshop on Animation andSimulation(1993), pages 103–119, Politechnical University of Catalo-nia.

[Boulic e.a., 2001] R. Boulic and P. Baerlocher. Cinematique inverse pour personnage 3d :solutions analytiques et variationnelles.Revue de CFAO, 16(1) :83–99(2001).

[Boulic e.a., 1997] R. Boulic, P. Becheiraz, L. Emering, andD. Thalmann. Integrationof motion control techniques for virtual human and avatar real-timeanimation. InProceedings of the ACM symposium on Virtual realitysoftware and technology(1997), pages 111–118. ACM Press.

[Boulic e.a., 1996] R. Boulic, R. Mas, and D. Thalmann. A robust approach for the centerof mass position control with inverse kinetics.Journal of Computersand Graphics, 20(5) (1996).

[Boulic e.a., 1990] R. Boulic, D. Thalmann, and N. Magnenat-Thalmann. A global humanwalking model with real time kinematic personification.The VisualComputer, 6(6) :344–358 (1990).

[Braun e.a., 2003] A. Braun, S. Musse, L. de Oliveira, and B. Bodmann. Modeling indivi-dual behaviors in crowd simulation. InCASA2003, 16th InternationalConference on Computer Animation and Social Agents(2003), pages143–148, Rutgers University, New Brunswick, New Jersey, USA. IEEEComputer Society.

[Brooks, 1990] T. Brooks. Telerobotics response requirements. InIEEE InternationalConference on Systems, Man and Cybernetics(1990), pages 113–120.

[Bruderlin e.a., 1996] A. Bruderlin and T. Calvert. Knowledge-driven, interactive animationof human running.Graphics Interface ’96, pages 213–221 (1996).

[Burkhardt e.a., 2004] J. Burkhardt, S. Donikian, Y. Duthen, O. Héguy, D. Lourdeaux, T. Mo-rineau, M. Parenthoën, C. Sanza, and J. Tisseau (2004). Action spéci-fique humain virtuel : vers un humain synthétique temps-réelaussi vraique nature. thème 5 : Comportements humains individuels et collectifs.Technical report, Département STIC du CNRS.

[Byun e.a., 2002] M. Byun and N. Badler. Facemote : Qualitative parametric modifiersfor facial animations. InACM/Eurographics Symposium on ComputerAnimation(2002), pages 65–71, San Antonio, TX.

[Chopra-Khullar e.a., 1999] S. Chopra-Khullar and N. Badler. Where to look ? automating at-tending behaviors of virtual human characters. InAutonomous Agents’99 (1999), Seattle, WA. ACM.

[Clancey, 2002] W. J. Clancey. Simulating activities : Relating motives, deliberation,and attentive coordination.Cognitive Systems Research, 3(3) :471–499(2002).

[Coderre, 1988] B. Coderre. Modeling behavior in petworld.In artificial life (1988),pages 407–420. Addison-Wesley.

[Courty, 2002] N. Courty (2002).Animation référencée vision : de la tâche au com-portement. Thèse de doctorat, Université de Rennes 1.

[Craig, 1989] J. Craig.Introduction to Robotics, Mechanics, and Control, 2nd edition.Addison Wesley (1989).

[Daamen e.a., 2003] W. Daamen and S. Hoogendoorn (2003). Experimental research of pe-destrian walking behavior. Technical Report TRB2003-001113, TRB.

[Decugis e.a., 1998] V. Decugis and J. Ferber. Action selection in an autonomous agent witha hierarchical distributed reactive planning architecture. InAutonomousAgents’98(1998), pages 354–361, Minneapolis, USA. ACM.

Page 36: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

308 Le traité de la réalité virtuelle

[Donikian, 1994] S. Donikian. Les modèles comportementauxpour la génération dumouvement d’objets dans une scène.Revue Internationale de CFAOet d’Infographie, numéro spécial AFIG-GROPLAN, 9(6) (1994).

[Donikian, 2001] S. Donikian. HPTS : a behaviour modelling language for autono-mous agents. InFifth International Conference on Autonomous Agents(2001), Montreal, Canada. ACM Press.

[Donikian, 2004] S. Donikian. Modélisation, contrôle et animation d’agentsvirtuels autonomes évoluant dans des environnements in-formés et structurés. Habilitation à diriger les recherches.IRISA+IFSIC, Université de Rennes 1, Rennes (2004).http ://www.irisa.fr/bibli/publi/habilitations/donikian/hdr.html.

[Donikian e.a., 1994] S. Donikian and B. Arnaldi. Complexity and concurrency for behavio-ral animation and simulation. In G. Hégron and O. Fahlander,editors,Fifth Eurographics Workshop on Animation and Simulation(1994),Oslo, Norvège.

[Donikian e.a., 1995] S. Donikian and E. Rutten. Reactivity, concurrency, data-flow and hie-rarchical preemption for behavioural animation. In E. B. R.C. Velt-kamp, editor,Programming Paradigms in Graphics’95, EurographicsCollection (1995). Springer-Verlag.

[Duckham e.a., 2003] M. Duckham and L. Kulik. Simplest paths: Automated route selec-tion for navigation. In W. Kuhn, M. Worboys, and S. Timpf, editors,COSIT’03, LNCS 2825 (2003), pages 169–185. Springer-Verlag.

[Ekman, 1982] P. Ekman.Emotion in the Human Face. Cambridge University Press(1982).

[Ekman, 1999] P. Ekman. Basic emotions. In T. Dalgleish and M. Power, editors,Handbook of Cognition and Emotion(1999), pages 45–60. John Wiley& Sons, Ltd.

[Emering e.a., 1998] L. Emering, R. Boulic, and D. Thalmann.Interacting with virtual hu-mans through body actions.IEEE Journal on Computer Graphics andApplications, 18(1) :8–11 (1998).

[Farenc e.a., 1999] N. Farenc, R. Boulic, and D. Thalmann. Aninformed environment de-dicated to the simulation of virtual humans in urban context. In P. Bru-net and R. Scopigno, editors,EUROGRAPHICS’99(1999), pages 309–318. Blackwell.

[Firth, 1982] D. Firth (1982).Pedestrian Accidents, chapter 2 : Pedestrian Behaviour.John Wiley & Sons Ltd.

[Franck e.a., 2001] A. Franck, S. Bittner, and M. Raubal. Spatial and cognitive simula-tion with multi-agent systems. InCOSIT2001, number 2205 in LNCS(2001), pages 124–139. Springer-Verlag.

[Funge, 2004] J. Funge.Artificial Intelligence for Computer Games : An Introduction.Wellesley, MA. (2004).

[Funge e.a., 1999] J. Funge, X. Tu, and D. Terzopoulos. Cognitive modeling : Knowledge,reasoning and planning for intelligent characters. InSIGGRAPH’99(1999), pages 29–38, Los Angeles.

[Garchery e.a., 2004] S. Garchery, R. Boulic, and T. Capin (2004). Handbook of Virtual Hu-mans, chapter Standards for Virtual Human Animation : H-ANIM andMPEG4. John Wiley.

[Gibson, 1986] J. Gibson.The ecological approach to visual perception. NJ : LawrenceErlbaum Associates, Inc, Hillsdale (1986).

[Gibson, 1979] J. J. Gibson.The ecological approach to visual perception. LawrenceErlblaum Associates, Hillsdale, USA (1979).

Page 37: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 309

[Glardon e.a., 2004] P. Glardon, R. Boulic, and D. Thalmann.Pca-based walking engineusing motion capture data. InProceedings of IEEE CGI(2004), pages292–298, Crete, Greece.

[Gleicher e.a., 1998] M. Gleicher and P. Litwinowicz. Constraint-based motion adaptation.Journal of Visualization and Computer Animation, 9(2) :65–94 (1998).

[Goffman, 1971] E. Goffman.Relations in public : microstudies of the public order. NewYork : Basic Books (1971).

[Goldenstein e.a., 2001] S. Goldenstein, M. Karavelas, D. Metaxas, L. Guibas, E. Aaron, andA. Goswami. Scalable nonlinear dynamical systems for agentsteeringand crowd simulation.Computer & Graphics, 25 :983–998 (2001).

[Golson e.a., 1974] H. Golson and J. Dabbs. Line following tendencies among pedestrians :A sex difference.Personality and Social Psychology Bulletin, 1(1) :16–18 (1974).

[Graph, ] O. S. Graph. www.openscenegraph.org/.

[Gray, 1918] H. Gray.Anatomy of the Human Body. http ://www.bartleby.com/107/(1918).

[Group, ] H. A. W. Group. www.hanim.org.

[Harrell, 1990] W. Harrell. Factors influencing pedestriancautiousness in crossingstreets.The journal of social psychology, 131(3) :367–372 (1990).

[Harrell, 1992] W. Harrell. Gap acceptance by pedestrians.Perceptual and motor skills,75(2) :432–434 (1992).

[Helbing e.a., 2000] D. Helbing, I. Farkas, and T. Vicsek. Simulating dynamical features ofescape panic.Nature, 407 :487–490 (2000).

[Henderson, 1971] L. Henderson. The statistics of crowd fluids. Nature, 229 :381–383(1971).

[Herda e.a., 2001] L. Herda, P. Fua, R. Plaenkers, R. Boulic,and D. Thalmann. Usingskeleton-based tracking to increase the reliability of optical motion cap-ture. Human Movement Science, 20 :313–341 (2001).

[Hillier e.a., 1993] B. Hillier, A. Penn, J. Hanson, T. Grajewski, and J. Xu. Natural move-ment : or, configuration and attraction in urban pedestrian movement.Environment and Planning B : Planning and Design, 20 :29–66 (1993).

[Hochmair, 2001] H. Hochmair (2001).Spatial Information in the Environment, Innova-tions in GIS 8, chapter Adapting One’s Mental Model : An EssentialProcess for Successful Navigation in an Environment, pages147–163.Taylor and Francis.

[Hodgins, 1995] J. Hodgins. Animating human athletics.Proceeding of ACM SIGGRA-PH’95 (1995), Los Angeles, California.

[Hostetler e.a., 2002] T. R. Hostetler and J. K. Kearney. Strolling down the avenue with a fewclose friends. InThird Irish Workshop on Computer graphics(2002),pages 7–14.

[Hsu e.a., 2004] E. Hsu, S. Gentry, and J. Popovic. Example-based control of humanmotion. InProceedings of ACM SIGGRAPH/Eurographics Symposiumon Computer Animation(2004), pages 69–77, Grenoble.

[Jefferies e.a., 2001] M. Jefferies and W. Yeap. The utilityof global representations in acognitive map. InCOSIT2001, number 2205 in LNCS (2001), pages233–246. Springer-Verlag.

[Kallmann, 2001] M. Kallmann (2001).Object Interaction in Real-Time Virtual Environ-ments. PhD thesis, Ecole Polytechnique Fédérale de Lausanne, Lau-sanne.

[Kallmann e.a., 1998] M. Kallmann and D. Thalmann. Modelingobjects for interaction tasks.In Eurographics Workshop on Animation and Simulation(1998), Lis-bon, Portugal. Springer-Verlag.

Page 38: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

310 Le traité de la réalité virtuelle

[Keijzer, 2002] F. Keijzer. Representation in dynamical and embodied cognition.Cog-nitive Systems Research, 3(3) :275–288 (2002).

[Koga e.a., 1998] Y. Koga, G. Annesley, C. Becker, M. Svihura, and D. Zhu. On intelli-gent digital actors. InIMAGINA’98 (1998).

[Kuipers, 1983] B. Kuipers (1983).Spatial Orientation : Theory, Research, and Appli-cation, chapter The cognitive map : Could it have been any other way ?,pages 345–359. Plenum Press.

[Kulpa e.a., 2005] R. Kulpa, F. Multon, and B. Arnaldi. Morphology-independent repre-sentation of motions for interactive human-like animation. ComputerGraphics Forum, Eurographics 2005 special issue, 24(3) (2005), Inpress.

[Lamarche, 2003] F. Lamarche (2003).Humanoïdes virtuels, réaction et cognition : unearchitecture pour leur autonomie.PhD thesis, Université de Rennes I.

[Lamarche e.a., 2002] F. Lamarche and S. Donikian. Automatic orchestration of behavioursthrough the management of resources and priority levels. InAutono-mous Agents and Multi Agent Systems(2002), Bologna, Italy. ACM.

[Lee e.a., 2004] J. Lee and K. Lee. Precomputing avatar behavior from human motiondata. InEurographics/ACM SIGGRAPH Symposium on Computer Ani-mation(2004), pages 79–87, Grenoble, France.

[Lee e.a., 1999] J. Lee and S. Shin. A hierarchical approach to interactive motion editingfor human-like figures.Proceedings of ACM SIGGRAPH 99, pages 39–48 (1999).

[Lee e.a., 1992] J. Lee and R. Watson. Regards et habitudes des passants.Les Annalesde la recherche urbaine, 57-58 (1992).

[Lee, 1996] W. Lee (1996).Spatial Semantic Hierarchy for a Physical Mobile Ro-bot. PhD thesis, Department of Computer Sciences, The University ofTexas at Austin.

[Lord e.a., 1994] R. G. Lord and P. E. Levy. Moving from cognition to action : A controltheory perspective.Applied Psychology : an international review, 43(3) :335–398 (1994).

[Lynch, 1960] K. Lynch.The image of the city. Cambridge,Mass, MIT Press (1960).

[Maes, 1990] P. Maes. Situated agents can have goals.Robotics and AutonomousSystems, 6 :49–70 (1990).

[Magnenat-Thalmann e.a., 2004] N. Magnenat-Thalmann and D. Thalmann.Handbook of Vir-tual Humans. Hardcover (2004).

[Mallot, 1999] H. Mallot. Spatial cognition : Behavioral competences, neural me-chanisms, and evolutionary scaling.Kognitionswissenschaft, 8 :40–48(1999).

[Mallot, 1997] H. A. Mallot. Behavior-oriented approachesto cognition : theoreticalperspectives.Theory in biosciences, 116 :196–220 (1997).

[MAX, ] D. S. MAX. www.discreet.com/products/3dsmax.

[Melinek e.a., 1975] S. Melinek and S. Booth (1975). An analysis of evacuation times andthe movement of crowds in buildings. Technical Report CP 96/75, Buil-ding Research Establishment, Fire Research Station.

[Menardais e.a., 2004] S. Menardais, R. Kulpa, F. Multon, and B. Arnaldi. Synchroni-zation for dynamic blending of motions. InProceedings of ACMSIGGRAPH/Eurographics Symposium on Computer Animation(2004),pages 325–336, Grenoble, France.

[Milgram e.a., 1969] S. Milgram and H. Toch (1969).The handbook of social psychology,chapter Collective Behavior : Crowds and social movements,pages507–610. Addison-Wesley.

Page 39: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 311

[Molet, 1998] T. Molet (1998). Etude de la capture de mouvements humains pourl’interaction en environnements virtuels. Numéro 1883, EPFL.

[Molet e.a., 1999a] T. Molet, R. Boulic, S. Rezzonico, and D.Thalmann. An architecturefor immersive evaluation of complex human tasks.IEEE Transactionson Robotics and Automation, 15(3) (1999a).

[Molet e.a., 1999b] T. Molet, R. Boulic, and D. Thalmann. Human motion capture drivenby orientation measurements.Presence, 8(2) :187–203 (1999b).

[Moreau, 1998] G. Moreau (1998).Modélisation du comportement pour la simulationinteractive : application au trafic routier multimodal. PhD thesis, Uni-versité de Rennes I.

[Moreau e.a., 1998] G. Moreau and S. Donikian. From psychological and real-time inter-action requirements to behavioural simulation. InEurographics Work-shop on Computer Animation and Simulation(1998), Lisbon, Portugal.

[Moulin e.a., 2003] B. Moulin, W. Chaker, J. Perron, and P. Pelletier (2003). Mags project :Multi-agent geosimulation and crowd simulation. In W. Kuhn, M. Wor-boys, and S. Timpf, editors,COSIT 2003, volume 2825 ofLNCS, pages151–168. Springer-Verlag.

[Musse e.a., 1999] S. Musse, F. Garat, and D.Thalmann. Guiding and interacting withvirtual crowds in real-time. InEurographics Workshop on Animationand Simulation ’99 (CAS ’99)(1999), pages 23–34. Springer.

[Musse e.a., 1997] S. Musse and D. Thalmann. A model of human crowd behavior : Groupinter-relationship and collision detection analysis. InComputer Anima-tion and Simulation ’97(1997), pages 39–51. Springer Verlag.

[Musse, 2000] S. R. Musse (2000).Human Crowd Modelling with Various Levels ofBehaviour Control. PhD thesis, EPFL, Lausanne, Suisse.

[Newell, 1990] A. Newell. Unified Theories of Cognition. Harvard University Press(1990).

[Ngo e.a., 1993] J. Ngo and J. Marks. Spacetime constraints revisited. In J. T. Kajiya,editor,Computer Graphics (SIGGRAPH ’93 Proceedings), volume 27(1993), pages 343–350, Anaheim, California.

[Noser e.a., 1997] H. Noser and D. Thalmann. Sensor based synthetic actors in a ten-nis game simulation. InComputer Graphics International’97(1997),pages 189–198, Hasselt, Belgium. IEEE Computer Society Press.

[O’Brien e.a., ] J. O’Brien, B. Bodenheimer, G. Brostow, andJ. Hodgins. Automaticjoint parameter estimation from magnetic motion capture data. InPro-ceedings of Graphics Interface 2000, pages 53–60, Montreal, Quebec,Canada.

[O’Hara, 2000] N. O’Hara. K-d tree neighbour finding for the flocking algorithm. InPacific Graphics(2000).

[O’Hara, 2002] N. O’Hara. Hierarchical impostors for the flocking algorithm in 3d.Computer Graphics Forum, 21(4) :723–731 (2002).

[OReilly, 1996] W. OReilly (1996).Believable social and emotional agents. PhD thesis,Computer Science, Carnegie Mellon University.

[Ortony e.a., 1988] A. Ortony, G. Clore, and A. Collins.The Cognitive Structure of Emo-tions. Cambridge University Press (1988).

[Paris, 2004] S. Paris (2004). Etude préalable à la thèse : caractérisation des niveauxde service et modélisation des circulations de personnes dans les lieuxd’échanges. Technical report, AREP - SNCF DAAB.

[Pauls, 1984] J. Pauls. The movement of people in buildings and design solutions formeans of egress.Fire Technology, 20(1) :27–47 (1984).

Page 40: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

312 Le traité de la réalité virtuelle

[Peinado e.a., 2004] M. Peinado, B. Herbelin, M. Wanderley,B. L. Callennec, R. Boulic,D. Thalmann, and D. Méziat. Towards configurable motion capturewith prioritized inverse kinematics. InProc. of the third InternationalWorkshop on Virtual Rehabilitation (IVWR’04)(2004), Lausanne.

[Penn, 2001] A. Penn. Space syntax and spatial cognition. In3rd International SpaceSyntax Symposium(2001), Atlanta, USA.

[Peschl, 1971] I. Peschl. Flow capacity of door openings in panic situations.BAUN,26(2) :62–67 (1971).

[Peters e.a., 2002] C. Peters and C. OSullivan. Synthetic vision and memory for auto-nomous virtual humans.Computer Graphics forum, 21(4) :743–752(2002).

[Pollard e.a., 2000] N. Pollard and F. Behmaram-Mosavat. Force-based motion editing forlocomotion tasks. InProceedings of IEEE international conference onRobotics and Automation(2000), San Francisco, CA.

[Predtechenskii e.a., 1978] V. Predtechenskii and A. Milinskii. Planning for Foot Traffic Flowin Buildings. traduit du russe, Amerind Publishing Co. Pvt. Ltd., NewDelhi, India (1969 (traduit en 1978)).

[Prinz, 1997] W. Prinz. Perception and action planning.European Journal of Cogni-tive Psychology, 9 :129–154 (1997).

[project CAL3D, ] O.-S. project CAL3D. cal3d.sourceforge.net.

[Raubal e.a., 1999] M. Raubal and M. Worboys. A formal model of the process of wayfin-ding in built environments. InSpatial Information Theory - Cognitiveand Computational Foundations of Geographic Information Science,International Conference COSIT ’99, LNCS (1999), pages 381–399.Springer-Verlag.

[Relieu, 1996] M. Relieu. Voir et se mouvoir en marchant dansla ville. Le courrierdu CNRS : Villes, pages 107–109 (1996).

[Relieu e.a., 1998] M. Relieu and L. Quéré (1998).Les Risques urbains : Acteurs, systèmesde prévention, chapter Mobilité, perception et sécurité dans les espacespublics urbains. anthropos : Collection VILLES.

[Reynolds, 1999] C. Reynolds. Steering behaviors for autonomous characters. InGameDevelopers Conference(1999), pages 763–782, San Francisco, Califor-nia.

[Reynolds, 1987] C. W. Reynolds. Flocks, herds, and schools: A distributed behavioralmodel.Computer Graphics, 21(4) :25–34 (1987).

[Rhodes, 1996] B. J. Rhodes (1996).PHISH-Nets : Planning Heuristically In SituatedHybrid Networks. PhD thesis, Massachusetts Institute of Technology.

[Schank, 1972] R. Schank. Conceptual dependency : A theory of natural language un-derstanding.Cognitive Psychology, 3 :532U631 (1972).

[Shin e.a., 2001] H. Shin, J. Lee, M. Gleicher, and S. Shin. Computer puppetry :an importance-based approach.ACM Transactions on Graphics,20(2) :67–94 (2001).

[Siikonen e.a., 2002] M. Siikonen and H. Hakonen. Efficient evacuation methods in tall buil-dings. InElevcon 2002(2002), pages 237–246.

[Sturman, 1998] D. J. Sturman. Computer puppetry.IEEE Comput. Graph. Appl.,18(1) :38–45 (1998).

[Tecchia e.a., 2002] F. Tecchia, C. Loscos, and Y. Chrysanthou. Visualizing crowds in real-time. Computer Graphics Forum, 21(4) :753–765 (2002).

[Thalmann e.a., 1990] N. M. Thalmann, D. Thalmann, and O. Renault. A vision-based ap-proach to behavioral animation.Journal of Visualization and ComputerAnimation, 1(1) :18–21 (1990).

Page 41: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

Modèles pour les humanoïdes 313

[Thomas, 1999] G. Thomas (1999).Environnements virtuels urbains : modélisationdes informations nécessaires à la simulation des piétons. PhD thesis,Université de Rennes I.

[Thomas e.a., 2000a] G. Thomas and S. Donikian. Modelling virtual cities dedicated to be-havioural animation. In M. Gross and F. Hopgood, editors,EUROGRA-PHICS’2000, volume 19 :3 (2000a), Interlaken, Switzerland. BlackwellPublishers.

[Thomas e.a., 2000b] G. Thomas and S. Donikian. Virtual humans animation in informedurban environments. InComputer Animation(2000b), pages 129–136,Philadelphia, PA, USA. IEEE Computer Society Press.

[Thomas, 2005] R. Thomas (2005).Modèle de mémoire et de carte cognitive spatiales :aplication à la navigation du piéton en environnement urbain. PhDthesis, Université de Rennes 1.

[Thomas e.a., 2003] R. Thomas and S. Donikian. A model of hierarchical cognitive mapand human memory designed for reactive and planned navigation. InJ. Hanson, editor,4th International Symposium on Space Syntax(2003),pages 72.1–72.18, University College, London, UK.

[Tolani e.a., 2000] D. Tolani, A. Goswami, and N. Badler. Real-time inverse kinematicstechniques for anthropomorphic limbs.Graphical Models, 62 :353–388(2000).

[Travers, 1988] M. Travers. Animal construction kits. Inartificial life (1988), pages421–442. Addison-Wesley.

[Tsutsuguchi e.a., 2000] K. Tsutsuguchi, K. Sugiyama, and N. Sonehara. The motion generationof pedestrians as avatars and crowds of people. InDigital Cities, LNCS1765 (2000), pages 275–287. Springer-Verlag.

[Tu e.a., 1994] X. Tu and D. Terzopoulos. Artificial fishes : Physics, locomotion,perception, behavior. InComputer Graphics (SIGGRAPH’94 Procee-dings)(1994), pages 43–50, Orlando, Florida.

[Turner, 1964] R. Turner (1964).Handbook of modern sociology, chapter CollectiveBehavior, pages 382–425. Rand McNally.

[Tversky, 2001] B. Tversky. Structures of mental spaces. In3rd International SpaceSyntax Symposium(2001), Atlanta, USA.

[Ulicny e.a., 2002] B. Ulicny and D. Thalmann. Towards interactive real-time crowd be-havior simulation.Computer Graphics Forum, 21(4) :767–775 (2002).

[van de Panne e.a., 1993] M. van de Panne and E. Fiume. Sensor-actuator networks. In J. T.Kajiya, editor,Computer Graphics (SIGGRAPH ’93 Proceedings), vo-lume 27 (1993), pages 335–342.

[Velasquez, 1997] J. Velasquez. Modeling emotions and other motivations in syntheticagents. InAAAI-97(1997).

[Ventura e.a., 1999] R. Ventura and C. Pinto-Ferreira (1999). Emotion-based agents : Threeapproaches to implementation (preliminary report).

[Vogt, 2002] P. Vogt. The physical symbol grounding problem. Cognitive SystemsResearch, 3(3) :429–457 (2002).

[Wagner, 1981] J. Wagner. Crossing streets : reflections on urban pedestrian behavior.Man-environment systems, 11(1&2) :57–61 (1981).

[Waller e.a., 2002] D. Waller, J. Loomis, R. Golledge, and A.Beall. Place learning inhumans : The role of distance and direction information.Spatial Cog-nition and Computation, 2 :333–354 (2002).

[Warren, 1995] W. Warren (1995).Perception of Space and Motion, chapter Self-Motion : Visual Perception and Visual Control, pages 263–325. Aca-demic Press.

Page 42: 10 MODÈLES POUR LES HUMANOÏDES chap10.pdf · 274 Le traité de la réalité virtuelle virtuel, un chapitre à part entière lui étant par ailleurs dédié dans ce volume1. Ce chapitre

314 Le traité de la réalité virtuelle

[Watt e.a., 2003] A. Watt and F. Policarpo.3D Games, Vol. 2 : Animation and AdvancedReal-Time Rendering. Addison Wesley (2003).

[Welman, 1993] C. Welman (1993).Inverse kinematics and geometric constraints forarticulated figure manipulation.PhD thesis, Simon Fraser University.

[Widyanto e.a., 1991] T. Widyanto, A. Marriott, and M. West.Applying a visual perceptionsystem to a behavioral animation system. InEurographics Workshopon Animation and Simulation(1991), pages 89–98, Vienna, Austria.

[Wiener e.a., 2003] J. Wiener and H. Mallot. ’fine-to-coarse’ route planning and naviga-tion in regionalized environments.Spatial Cognition and Computation(2003).

[Wilhelms e.a., 1989] J. Wilhelms and R. Skinner. An interactive approach to behavioralcontrol (1989), pages 1–8.

[Yamori, 1998] K. Yamori. Going with the flow : Micro-macro dynamics in the ma-crobehavioral patterns of pedestrian crowds.Psychological Review,105(3) :530–557 (1998).

[Yang e.a., 2004] P. Yang, J. Laszlo, and K. Singh. Layered dynamic control for interac-tive character swimming animation (2004).

[Yeap e.a., 1999] W. Yeap and M. Jefferies. Computing a representation of the localenvironment.Artificial Intelligence, 107 :265–301 (1999).

[Zeltzer, 1982] D. Zeltzer. Motor control techniques for figure animation.IEEE Com-puter Graphics and Applications, 2(9) :53–59 (1982).

[Ziemke, 1999] T. Ziemke (1999).Understanding Representation in the CognitiveSciences, chapter Rethinking Grounding. Plenum Press.

[Ziemke, 2002] T. Ziemke. Introduction to the special issueon situated and embodiedcognition.Cognitive Systems Research, 3(3) :271–274 (2002).