<figure><img src="image_1.png" /></figure>

TRISTAN DE BLAUWE, NICOLAS SABOURET, DOMITILE LOURDEAUX

OPACK : un modèle intégrateur d'agent pour la génération de comportements induits par des modèles cognitifs modulaires

Volume 5, n° 1 (2024), p. 35-62.

https://doi.org/10.5802/roia.64

© Les auteurs, 2024.

<figure><img src="image_2.png" /></figure>

Cet article est diffusé sous la licence

CREATIVE COMMONS ATTRIBUTION 4.0 INTERNATIONAL LICENSE.

http://creativecommons.org/licenses/by/4.0/

<figure><img src="image_3.png" /></figure>

La Revue Overte d'Intelligence Artificielle est membre du
Centre Mersenne pour l'édition scientifique ouverte

www.centre-mersenne.org

e-ISSN : 2967-9672
# OPACK : un modèle intégrateur d'agent pour la génération de comportements induits par des modèles cognitifs modulaires

Tristan de Blauwe<sup>a</sup>, Nicolas Sabouret<sup>b</sup>, Domitile Lourdeaux<sup>a</sup>

RÉSUMÉ. — Cet article se place dans le contexte du développement d'agents autonomes pour la formation professionnelle. Nous proposons un modèle intégrateur permettant l'intégration de modèles cognitifs dans un modèle d'agent, avec un minimum d'hypothèses. La définition d'un agent se fait de manière modulaire à partir d'opérations de base définissant le modèle d'agent et d'un ensemble de processus cognitifs qui complètent ou modifient ces opérations. Nous présentons brièvement deux évaluations avec un modèle d'agent et trois modèles cognitifs qui montrent que notre modèle permet d'obtenir des comportements représentatifs, sensibles et intelligibles.

MOTS-CLÉS. — Simulation multi-agent, modèle intégrateur, agent cognitif, modèles cognitifs, comportements.

# 1. INTRODUCTION

## 1.1. SIMULATION MULTI-AGENT ET MODÈLES COGNITIFS

La simulation multi-agent est utilisée dans de nombreux domaines, et en particulier dans la formation professionnelle où les agents sont souvent incarnés dans un environnement virtuel [2, 19, 32]. Dans ces applications, les agents doivent simuler des opérateurs humains, de divers métiers, ce qui nécessite d'exprimer des comportements complexes, i.e. cognitifs, émotionnels et/ou sociaux, afin de reproduire les comportements observés chez les opérateurs humains.

Le comportement des agents est observable au travers des actions qu'ils réalisent sur les éléments de l'environnement. Ces actions sont le produit d'un modèle d'agent, défini par un ensemble d'opérations c'est-à-dire de mécanismes de traitements d'informations, allant de la perception à la réalisation d'actions, suite à une prise de décision, en passant par la communication avec les autres agents [1].

<footnote><sup>a</sup> Alliance Sorbonne Université, UTC Heudiasyc, CNRS, UMR 7253, Compiègne, France
E-mail: tristan.de-blauwe@hds.utc.fr, domitile.lourdeaux@hds.utc.fr</footnote>

<footnote><sup>b</sup> Université Paris-Saclay, CNRS, LISN, 91400 Orsay, France
E-mail: nicolas.sabouret@universite-paris-saclay.fr.</footnote>
Pour mettre en oeuvre différents comportements, les informaticiens implémentent, au sein d'un modèle d'agent, un ou plusieurs modèles cognitifs, généralement inspirés des Sciences Humaines et Sociales (SHS). Ces modèles définissent la manière dont les opérations déterminent les actions et les communications à effectuer en fonction des perceptions. Par exemple, les travaux de Demary [9] illustrés sur la figure 1.1 proposent un modèle cognitif des différents comportements vis-à-vis d'un leader, en fonction du style *suiveur* et *communicant* de l'agent.

<table><caption>FIGURE 1.1. Comportement selon le style *suiveur* et le style *communicant*.</caption><thead><tr><td></td><td>Communicant</td><td>Non-communicant</td></tr></thead><tbody><tr><td>Proactif</td><td>Je raisonne, j'informe le leader, je conteste si besoin, j'obéis au final. (Exemplaire / Courageux)</td><td>Je prends des décisions, je conteste. (Loup solitaire)</td></tr><tr><td>Passif</td><td>Je demande quoi faire et je fais ce qu'on me dit. (Mouton / Faiseur)</td><td>Si on ne me dit rien, je suis la procédure. Sinon, je fais ce qu'on me demande (Yes people / Ressource)</td></tr></tbody></table>

Il faut alors opérationnaliser au sein d'une architecture d'agent, c'est-à-dire dans chaque étape de la boucle perception-délibération-action des agents, les différents éléments qui constituent le ou les modèles cognitifs retenus. Ainsi, l'architecture BEN [5] intègre plusieurs modèles cognitifs au sein d'une architecture d'agents BDI [6]. Elle lie des modèles cognitifs, comme OCC [28] pour les émotions, au modèle de personnalité OCEAN [8] afin d'obtenir des comportements cognitifs, affectifs et sociaux. Une autre architecture comme EMA [17] intègre une composante émotionnelle avec la théorie de l'évaluation cognitive des émotions de Smith et Lazarus [33], au sein de l'architecture d'agents SOAR [22].

## 1.2. COMPORTEMENTS REPRÉSENTATIFS, SENSIBLES ET INTELLIGIBLES

Dans un contexte de simulation, les comportements et les modèles cognitifs des agents dépendent fortement du domaine d'application et des objectifs de la simulation (qu'il s'agisse d'un scénario de formation, d'un jeu, etc.). Il serait donc souhaitable de pouvoir combiner de manière modulaire différents modèles cognitifs au sein d'une architecture d'agent. Mais concevoir une telle architecture d'agents qu'on pourrait qualifier de « générique » est difficile pour plusieurs raisons.

Tout d'abord, on ne connaît pas a priori les modèles cognitifs à intégrer et à combiner, ni les comportements à générer. La littérature en SHS est riche en modèles de natures très différentes, qui interviennent sur tous les aspects du comportement : déplacement dans l'espace de simulation, interactions avec un objet de l'environnement, communication en direction des autres agents, perception de l'environnement, processus de délibération, expressions verbales ou faciales, etc. Il semble donc impossible de concevoir un modèle d'agent qui puisse intégrer n'importe quel modèle cognitif, de manière modulaire, sans avoir à modifier la programmation de l'agent.
De plus, il faut distinguer le comportement de l'agent de son *identification* par l'utilisateur, qui va le qualifier avec des termes issus des modèles cognitifs (par exemple : l'agent semble stressé). Cette subjectivité de l'observateur, appliquée sur le comportement objectif de l'agent, correspond à l'image mentale que l'observateur s'est faite de l'agent et de la situation, qui peut varier d'un utilisateur à l'autre pour une même situation et un même comportement d'agent.

Dans le contexte de la simulation, il est donc nécessaire de respecter plusieurs propriétés. Premièrement, la *représentativité* des comportements : chaque métier définit une ou des activités qu'il est nécessaire de reproduire. Deuxièmement, la *sensibilité* des comportements aux modèles cognitifs, c'est-à-dire le fait que l'intégration des modèles affectent le comportement d'un agent de manière cohérente vis-à-vis des propriétés de ces modèles. Par exemple, en situation de crise, les médecins secouristes peuvent être amenés à utiliser un chiffon pour gagner de précieuses secondes au lieu de mettre des gants pour faire un point de compression. Nous voulons que l'ajout d'un modèle cognitif, affectant le respect de la réglementation permette effectivement l'apparition d'un tel comportement. Troisièmement, l'intelligibilité des comportements : un utilisateur de la simulation doit pouvoir qualifier les séquences d'actions qui traduisent l'expression d'un comportement (par exemple : « l'agent semble stressé » ou « l'agent respecte la réglementation »).

## 1.3. PLAN DE L'ARTICLE

Ainsi, la contribution de notre article est de proposer un ensemble de mécanismes (nous parlerons de « modèle intégrateur » d'agents) qui répond à cette double difficulté : permettre l'intégration de modèles cognitifs au sein d'un modèle d'agent, avec un minimum d'hypothèses sur le modèle d'agent et sur les modèles cognitifs, tout en s'assurant que les comportements produits restent représentatifs, sensibles aux modèles et intelligibles. Dans cet article, nous présentons une évaluation de ces propriétés de comportements perçus en intégrant certains modèles cognitifs dans un modèle d'agent. Nous présentons ainsi une instanciation de ce modèle intégrateur sur un cas concret.

Le plan de l'article est le suivant. Dans la section 2, nous présentons un rapide état de l'art des approches et modèles cognitifs utilisés en simulation. Dans la section 3, nous présentons le modèle OPACK qui vise à permettre l'intégration, au sein de n'importe quel modèle d'agent, de plusieurs modèles cognitifs. Dans la section 4, nous présentons deux évaluations du modèle qui montrent la représentativité, la sensibilité et l'intelligibilité des comportements produits. La section 5 ouvre sur les perspectives de notre modèle.

## 2. ÉTAT DE L'ART

Notre objectif est de comprendre comment généraliser la notion de modèle cognitif afin de pouvoir combiner plusieurs modèles au sein d'une architecture d'agent de manière à produire des comportements représentatifs, sensibles et intelligibles.
## 2.1. MODÈLES COGNITIFS

Selon le dictionnaire de psychologie de l'Association Américaine de Psychologie(1) (APA), un modèle cognitif est une représentation simplifiée et théorique d'un ensemble de processus cognitifs/mentaux amenant à des phénomènes observables et qui fournit des explications sur la cause. Selon la même source, un processus cognitif est n'importe quelle fonction impliquée dans des activités telles que l'attention, la perception, l'apprentissage et la résolution de problèmes.

La littérature en SHS propose un très grand nombre de modèles cognitifs selon les processus à modéliser. Il n'est pas possible d'en faire une présentation exhaustive. Les modèles que nous présentons ci-dessous ont été choisis pour leur complémentarité : ils couvrent les différentes difficultés qui apparaissent lors de la conception d'un modèle générique tel que nous essayons de le concevoir. La plupart ont été intégrés dans des modèles multi-agents.

## 2.2. MODÈLE TRANSACTIONNEL DU STRESS PAR FOLKMAN & LAZARUS

En 1984, Folkman propose un modèle transactionnel du stress, fondé sur la définition du stress de Lazarus comme *une relation entre la personne et l'environnement, considérée comme importante sur le plan personnel et qui met à l'épreuve ou dépasse les ressources disponibles pour faire face à la situation* [33].

Le modèle proposé par Folkman se découpe en deux processus : l'*appraisal* où l'individu évalue la situation et le *coping* où l'individu évalue des stratégies d'adaptation. Le processus d'*appraisal* est lui-même composé de deux phases : une évaluation de l'enjeu de la situation (perte, menace ou défi) dont le résultat est un stress perçu, puis une évaluation des ressources disponibles pour faire face à la situation, dont le résultat est un contrôle perçu. À la suite de ces évaluations, le processus de *coping* se déclenche : selon le stress et le contrôle perçus, l'individu sélectionne une stratégie d'adaptation parmi les trois catégories suivantes : une stratégie active centrée sur la résolution de problèmes (exemple : supprimer la cause du problème), une stratégie passive centrée sur les émotions (exemple : se calmer) et une stratégie d'évitement (e.g. faire autre chose). L'adaptation s'exprime donc autant par des actions que par des efforts cognitifs.

Ce modèle a donné lieu à de nombreux autres travaux et en particulier le modèle d'appraisal OCC proposé par Ortony, Clore et Collin en 1988 [28] dans lequel l'état émotionnel d'un individu est représenté à travers 24 émotions. Le modèle OCC a été largement repris dans les modèles multi-agents car il est bien formalisé et bien adapté à une approche computationnelle. Son opérationnalisation s'effectue principalement au niveau du processus de décision de l'agent (appraisal) et de la sélection d'action (coping).

Toutefois l'étude des travaux en informatique qui implémentent de tels modèles met en évidence la diversité des méthodes d'implémentation du modèle et donc la difficulté pour généraliser l'opérationnalisation d'un modèle cognitif. Ainsi, les calculs

<footnote>(1) https://dictionary.apa.org.</footnote>
d'appraisal définis par OCC peuvent être implémentés sous forme logique dans un modèle BDI [5] ou sous forme de règles [27]. Il faut donc permettre au modélisateur d'utiliser différentes approches pour intégrer un modèle cognitif au sein du processus de décision de l'agent.

## 2.3. Modèle de comportements de followership par Demary

Les travaux de Demary [9] analysent les interactions sociales des membres d'une équipe, notamment entre le chef (leader) et ses subordonnés (followers). Parmi les comportements proposés, Demary propose des comportements liés aux profils *suiveur* et *communicant* des subordonnées [9], résumés dans le tableau de la figure 1.1. Selon son profil, le subordonné réagit différemment lorsqu'il reçoit un ordre de son supérieur.

Comparé aux autres modèles, les comportements proposés sont plus spécifiques (il s'agit des comportements vis-à-vis d'un agent particulier). Ce modèle pose toutefois la question du rapport de la combinaison d'un modèle plus spécifique à des modèles plus généraux. En effet, si un agent doit intégrer un modèle de stress comme celui de Lazarus avec le modèle de Demary, tous deux jouant sur la sélection d'action, comment obtenir des comportements cohérents ?

Une autre difficulté mise en évidence par le modèle de Demary est que les comportements comprennent plusieurs étapes. Par exemple, le comportement de la case *Proactif/Communicant* définit un raisonnement puis une communication avec le leader puis une prise de décision. Un modèle cognitif doit donc non seulement pouvoir modifier plusieurs processus du modèle d'agent, mais il faut que ces impacts soient cohérents les uns avec les autres.

## 2.4. Modèle de comportements d'équipe en situations extrêmes de Driskell et Salas

Le troisième modèle que nous utilisons dans cet article est celui proposé par Driskell et Salas [10] qui ont réalisé des études conséquentes sur les comportements d'équipes en situations extrêmes. Les auteurs proposent « un nombre limité de mécanismes cognitifs, émotionnels et sociaux à travers lesquels le stress impacte les performances » des membres d'une équipe : réduction de l'attention et augmentation de la distraction, augmentation de la charge cognitive, augmentation des émotions négatives et de la frustration, augmentation de la peur et de l'anxiété, accroissement des déficiences sociales. Le modèle cognitif impacte donc directement la perception de l'agent, les conditions d'exécution et indirectement la sélection d'action de par ses connaissances partielles erronées, mais aussi des phénomènes sociaux plus complexes comme l'entraide au sein de l'équipe [11].

L'opérationnalisation de ce modèle au sein d'un modèle d'agent présente donc un double défi, d'une part en raison de la variété des comportements décrits et d'autre part parce qu'il doit permettre de faire émerger des comportements sociaux spécifiques (comme la réduction de l'entraide) que l'utilisateur doit pouvoir identifier (c'est-à-dire qu'il faut que le modèle soit intelligible comme défini dans l'introduction).
## 2.5. MODÈLES D'AGENT EN SIMULATION

S'il existe de nombreuses plate-formes d'agent, et donc autant d'architectures de modèle d'agent pour définir la boucle perception-délibération-action qui produit le comportement d'un agent, nous pouvons toutefois identifier certains éléments qui interviennent systématiquement lors de l'opérationnalisation de modèles cognitifs pour générer des comportements représentatifs et intelligibles.

Prenons l'exemple du modèle REPLICANTS [20] que nous avons utilisé dans nos travaux. Ce modèle utilise le formalisme ACTIVITY-DL, inspiré des HTNs [12], pour représenter et guider le choix d'action des agents. Son intérêt est de modéliser l'activité humaine de manière hiérarchique, proche de la représentation mentale des experts. Le parcours de l'arbre d'activité retourne un ensemble de tâches envisageables, ainsi que leur priorité évaluée selon les préconditions.

L'intégration de modèles cognitifs dans REPLICANTS se fait en modifiant ce calcul de priorité par l'ajout de bonus/malus en fonction du profil de l'agent et des propriétés de la tâche considérée. Par exemple, l'incorporation du modèle Demary [9] ajoute un bonus lorsque la tâche correspond à un ordre et que l'agent a un profil passif. Le modèle de Fadier [13] applique un malus selon les conditions réglementaires et le profil de l'agent. Intégrer de nouveaux modèles cognitifs nécessite donc de réviser ce calcul de priorité. La difficulté est alors de s'assurer que les modèles restent toujours impactants et que les comportements restent intelligibles.

Un autre modèle souvent utilisé dans les systèmes multi-agents est le modèle BDI [6] qui repose sur une représentation en logique des croyances et des actions des agents. Dans les travaux de Bourgais et al. [5] que nous avons déjà évoqués, l'intégration d'un modèle cognitif consiste à relier ce modèle sur un ensemble limité de paramètres (tirés du modèle de personnalité de Costa et McCrae [8]). Cela permet d'obtenir une certaine modularité dans l'architecture : le modélisateur peut choisir de n'utiliser que la prise de décision sans tenir compte de l'évaluation d'émotions par exemple. Toutefois, l'ensemble des opérations dépend de l'approche BDI : il n'est pas possible d'envisager une autre architecture de prise de décision.

## 2.6. REPRÉSENTATIVITÉ, SENSIBILITÉ ET INTELLIGIBILITÉ DES COMPORTEMENTS

Le choix des trois propriétés que nous avons présenté dans la première section provient du domaine d'application de nos travaux : la production de comportements pour des agents dans des environnements virtuels pour la formation. La réalité virtuelle permet en effet d'envisager des environnements de plus en plus crédibles, y compris pour des interactions collaboratives et coopératives entre plusieurs utilisateurs et plusieurs agents virtuels. L'introduction des agents virtuels permet alors de limiter le nombre de participants humains. Cependant, modéliser de manière crédible des comportements « humanisés » reste un problème difficile, auquel l'intelligence artificielle se heurte depuis de nombreuses années.

Dans le cadre de la formation et de l'entrainement professionnel, les agents doivent avoir des comportements cohérents, crédibles et explicables [21] : un manque de
cohérence dans le comportement des agents peut nuire à la compréhension du scénario par les apprenants [31]. On parlera alors d'intelligibilité des comportements. Celle-ci est indispensable pour permettre des approches réflexives et aider les apprenants à comprendre des liens de causes à effets et de comportements non-optimaux [30]. Par exemple, un apprenant doit pouvoir détecter qu'un co-équipier virtuel est stressé ou non-compétent pour lui venir en aide, afin de ne pas lui confier des missions délicates.

Les notions d'intelligibilité et de cohérence sont très liées à celle d'explicabilité, c'est-à-dire de la cohérence perçue par un utilisateur. Il est important de pouvoir expliquer quels phénomènes ont amené les agents à de tels comportements [2]. Ainsi, nos travaux ne visent pas à modéliser le comportement humain exact mais à rendre compte de certains processus décisionnels variables et à pouvoir expliquer en partie les liens de cause à effet. La principale difficulté est de reproduire des situations de terrain afin d'induire de la part des entrainés des comportements équivalents à ceux rencontrés en situation réelle. En psychologie de la perception on parle de validité écologique [25], ce que nous traduisons ici par la notion de représentativité des comportements.

Enfin, nous visons à simuler à un haut niveau les interdépendances entre les facteurs entrant en jeu dans la décision comportementale, de façon à pouvoir expliquer les séquences d'événements menant aux situations observées et comment intégrer dans des architectures informatiques de tels processus cognitifs complexes. Les travaux menés en sciences cognitives sur la cognition et les modèles cognitifs apportent des réponses à ces questions, mais alors la question du passage à leur opérationnalisation se pose [24]. Comme nous l'avons vu dans les sections précédentes, de nombreux travaux ont cherché à opérationnaliser un modèle cognitif, certains travaux ont tenté d'intégrer plusieurs modèles cognitifs qui n'avaient pas été pensés ensembles par les sciences cognitives. Ces travaux d'opérationnalisation se heurtent alors à un écueil : la sensibilité. En effet, comme le montre [7], le problème vient du fait qu'ajouter des processus cognitifs différents peut engendrer, selon le modèle d'agent, soit des comportements incohérents, voir contradictoires soit des comportements lisses résultant d'une moyenne et donc peu intelligibles. Sans vouloir modéliser des comportements caricaturaux, il est utile que les comportements cognitifs soit perçus et reconnus. Chaque processus cognitif doit donc impacter le comportement de manière sensible.

## 2.7. SYNTHÈSE

Bien qu'il existe de nombreux modèles d'agent proposant une implémentation et une combinaison fine de différents modèles cognitifs, les choix de conception qui sont faits contraignent le modélisateur à s'adapter au modèle. À mesure que les besoins évoluent, les utilisateurs peuvent vouloir mettre en œuvre d'autres modèles d'agents pour la prise de décision ou d'autres modèles cognitifs pour produire de nouveaux comportements. Ces modifications sont difficiles, voire impossibles, dans ces modèles.

C'est pourquoi nous proposons dans cet article un méta-modèle d'agent, c'est-à-dire un modèle pour combiner plusieurs modèles cognitifs au sein d'un modèle d'agent. L'ensemble d'opérations du modèle d'agent est donc modifié et complété selon la
combinaison de modèles cognitifs considérés. Notre méta-modèle doit permettre de programmer n'importe quel modèle d'agent.

Pour illustrer notre travail dans un contexte de formation, nous utilisons le modèle d'agent REPLICANTS [20] et les modèles cognitifs de Demary [9], de Fadier [13] et Driskell [11]. Nous montrerons comment notre méta-modèle permet de les intégrer simplement, d'une manière qui peut se généraliser à n'importe quel autre modèle d'agent et n'importe quels autres modèles cognitifs.

### 3. MODÈLE INTÉGRATEUR OPACK

Le principe d'OPACK consiste à abstraire un modèle d'agent autour de cinq concepts composables, dans l'objectif d'être modulaire et générique. Ces cinq concepts ont été identifiés comme les cinq aspects qu'un modèle cognitif peut affecter (cf. figure 3.1) :

**O** : ensemble des opérations, soit des mécanismes de traitement d'information, allant de la perception à la réalisation d'actions;

**P** : ensemble des percepts, soit ce qui est actuellement perceptible par les agents;

**A** : ensemble des actions à disposition et actuellement menées par les agents;

**C** : ensemble des caractéristiques des agents, pouvant représenter des variables physiologiques ou psychologiques comme le stress, ou bien des paramètres stables dans le temps comme la personnalité ou les qualifications;

**K** : ensemble des connaissances des agents, qui comprend, non seulement les croyances, mais aussi les plans éventuels, etc.

Nous souhaitons poser le moins d'hypothèses possibles sur le modèle d'agent et les modèles cognitifs. Dans ce but, le modélisateur définit chacun de ces éléments en fonction du domaine. Il n'a pas l'obligation de tous les utiliser. Par exemple, il est possible de programmer un agent réactif dans lequel **K** sera vide.

#### 3.1. AGENTS

Nous définissons un ensemble d'identifiants uniques $\Omega$. Tous les éléments d'OPACK seront définis comme des identifiants. Nous définissons un ensemble d'agents $Agt \subset \Omega$. Les agents seront caractérisés par les éléments **O**, **P**, **A**, **C** et **K**. Les artefacts sont des agents pour lesquels **P** et **A** sont vides.

#### 3.2. CARACTÉRISTIQUES C

Nous introduisons un ensemble de caractéristiques $C \subset \Omega$. Les caractéristiques ne sont pas nécessairement atomiques : elles peuvent prendre en argument d'autres identifiants issus de $\Omega$. Pour $c \in C$ d'arité $k \in \mathbb{N}$ et pour $i_1, \dots, i_k \in \Omega^k$, nous notons : $c(\cdot, i_1, \dots, i_k)$ l'instance de la caractéristique $c$ avec les paramètres $i_1, \dots, i_k$. Pour $i \in \Omega$ et pour toute instance de caractéristique $c \in C$, nous notons $c(i, \dots)$ le fait que $i$ est muni de la caractéristique $c$, avec ses paramètres. Nous posons une contrainte
<figure><img src="image_4.png" /><figcaption>FIGURE 3.1. Aperçu de la structure des cinq concepts d'OPACK que les modèles cognitifs peuvent impacter.</figcaption></figure>

d'unicité : une seule instance d'une même caractéristique peut être associée à un même identifiant.

EXEMPLE. — Considérons la situation suivante :

$$ \Omega = \{Arthur, Bob, Friend, Introvert\} $$

$$ C = \{Friend, Introvert\} $$

$$ Agt = \{Arthur, Bob\}. $$

Friend est une caractéristique d'arité 1, tel que : Friend(·, Bob) représente la propriété « être ami avec Bob ». Friend(Arthur, Bob) représente donc le fait que l'agent Arthur se considère l'ami de Bob. L'ordre des paramètres est évidemment important.

NOTATIONS. — Nous utilisons les notations suivantes :

* $C(i), i \in \Omega$ l'ensemble des caractéristiques $c \in C$ associées à l'identifiant $i$.

* $\forall c \in C, c(..., *..., ...)$ retourne l'ensemble des identifiants $i$ tel que $c(..., i, ...)$ est vrai.

### 3.3. PERCEPTIONS P

Dans le modèle OPACK, les agents perçoivent des informations sur l'état de l'environnement aux travers de sens. Nous notons $Sen \subset \Omega$ un ensemble de sens. Au même titre que les agents, les sens peuvent être associés à des caractéristiques. Ainsi, $\forall s \in Sen, C(s)$ désigne l'ensemble des caractéristiques du sens $s$ et $c(s, ...)$ l'instance de la caractéristique $c$ pour le sens $s$. Certaines de ces caractéristiques définissent ce
que le sens **permet de percevoir**. Par exemple, si le sens *Hearing* permet de percevoir *IsCoughing*, alors nous avons : *IsCoughing* ∈ **C**(Hearing).

Chaque agent *i* est muni d'un ensemble de capteurs (*sensors anglais*) *Sen*(*i*). *s*(*i*) désigne l'instance du sens *s* ∈ *Sen* dans l'agent *i*. Nous introduisons alors la caractéristique *Perceive* d'arité 2 : pour *s* ∈ *Sen*, *i* ∈ *Agt* et *j* ∈ Ω, *Perceive*(*i*, *s*, *j*) indique que l'agent *i* perçoit l'identifiant *j* avec le sens *s*. Comme *Perceive* est une caractéristique, soit elle est stable, donc le modélisateur la spécifie, soit elle est dynamique, auquel cas une opération (voir plus loin) est responsable de sa mise à jour.

L'ensemble des percepts pour tous les agents est noté **P**. Cet ensemble varie lors de la simulation : il représente ce qui peut être perçu à un instant *t* donné. On note **P**(*i*) l'ensemble des percepts perçus par l'agent *i* ∈ *Agt* qui est calculé de la manière suivante :

(1) Pour un sens *s* d'un agent *i* et pour un identifiant *j* perçu, nous calculons l'ensemble des instances de caractéristiques perçues de cet identifiant *j* via le sens *s* :

$$apc(i, s, j) = \bigcup_{c \in \mathbf{C}(j) \cap \mathbf{C}(s(i))} c(j, *, \dots, *)$$

Par exemple, si *Patient* et *Hearing* ont tous deux la caractéristique *isCoughing*, alors *apc*(*Doctor*, *Hearing*, *Patient*) = {*IsCoughing*(*Patient*)}.

(2) Nous calculons ensuite l'ensemble des caractéristiques perçues pour tous les identifiants perçus via le sens *s* :

$$cap(s, i) = \bigcup_{j \in \mathcal{I} \text{ Perceive}(i, s, j)} cap(i, s, j).$$

Ainsi, s'il y a plusieurs patients qui toussent, *cap* calcule les instances pour chaque patient perçu par le sens *Hearing* du médecin :

$$\{\text{isCoughing}(\text{Patient}_1), \text{isCoughing}(\text{Patient}_2), \dots \}.$$

(3) Enfin, nous appliquons cette opération à l'ensemble des sens de l'agent *i*, ce qui nous donne :

$$\mathbf{P}(i) = \bigcup_{s \in \mathit{Sen}(i)} cap(i, s).$$

Concrètement, **P**(*i*) est l'intersection des caractéristiques des agents perçus et des caractéristiques des sens de perception.

Comme pour les caractéristiques, cette représentation est composable : nous ne fixons pas à l'avance les sens ni leurs capacités perceptives. À tout moment un sens peut être ajouté à un agent, ou bien un sens existant peut être modifié en complétant ses capacités et ses conditions de perceptibilité.
## 3.4. ACTIONS A

De manière symétrique, les actions sont réalisées à travers des effecteurs. Nous définissons $Eff \subset \Omega$ un ensemble d'effecteurs, $C(e)$ les caractéristiques de l'effecteur $e$, $Eff(i)$ l'ensemble des effecteurs de l'agent $i$ et $e(i)$ l'instance de l'effecteur $e$ pour $i$. Nous définissons ensuite $A \subset \Omega$ un ensemble d'actions, munies de caractéristiques $C(a)$, et nous introduisons deux relations d'arité 2 :

* *Requires(a, e)* qui permet au modélisateur d'indiquer qu'une action *a* nécessite un effecteur *e*;

* *Doing(i, e, a)* qui indique que l'agent *i* effectue l'action *a* par le biais de l'effecteur *e*. Nous verrons dans la prochaine section comment cet opérateur est affecté par les opérations.

$A(i) = Doing(i, *, *)$ est donc l'ensemble des actions menées par l'agent $i$.

**STATUT D'UNE ACTION.** — Dans la plupart des modèles d'agent, les actions peuvent durer dans le temps et sont interruptibles. Pour représenter cette propriété, la relation *Doing* possède une variable *Status* pour indiquer le statut de l'action dont les valeurs possibles sont :

* **Waiting** : état par défaut suite à l'instanciation de l'action.

* **Starting** : l'action vient juste de commencer.

* **Running** : l'action est en cours d'exécution.

* **Finished** : l'action s'est terminée sans interruption(2).

* **Aborted** : l'action s'est terminée suite à une interruption.

## 3.5. CONNAISSANCES K

Nous définissons l'ensemble $K = \Omega \cup C$ qui représente l'état du monde, soit l'ensemble des identifiants et leurs caractéristiques. Nous n'imposons aucune contrainte sur la manière de représenter les connaissances pour un agent. Le modélisateur est libre d'utiliser différents outils pour les représenter, comme des ontologies ou des bases de données relationnelles.

## 3.6. OPÉRATIONS O

Les actions menées par un agent sont le produit de son processus de délibération, défini à partir du modèle d'agent : ce modèle définit l'ensemble des mécanismes de traitements d'informations pour produire des actions A à partir des perceptions P, des caractéristiques C et des connaissances K. Dans le modèle intégrateur OPACK, cette dynamique est réalisée à l'aide d'un ensemble d'opérations qui permettent d'implémenter la dynamique du modèle d'agent.

<footnote>(2) Les actions terminées sont toujours considérées comme réussies dans notre modèle.</footnote>
**DÉFINTION.** — Une opération est une fonction avec des entrées, une seule sortie et un rôle. L'ensemble d'opérations d'un agent est noté $O \subset \Omega$. Nous définissons deux caractéristiques :

* $\mathit{Output}(o, n, i)$ avec $o \in O$ et $(n, i) \in \Omega^2$ pour définir que l'opération $o$ possède une sortie $n$, de type $i$.

* $\mathit{Input}(o, o', n)$ avec $(o, o') \in O^2$ et $n \in \Omega$ pour indiquer que l'opération $o$ a en entrée la sortie $n$ de l'opération $o'$.

Ainsi, les opérations définissent un graphe orienté acyclique, les sorties de certaines opérations étant utilisées en entrées par les suivantes. De plus, toutes les opérations ont accès à l'ensemble de l'état de l'agent : **P**, **A**, **C** et **K**. Les opérations sont, pour l'instant, juste des entités abstraites. Nous verrons dans la section 3.9 comment elles sont utilisées pour définir la dynamique de l'agent à travers des *fonctions-stratégies*.

**NOTION DE RÔLE.** — Le rôle de l'opération définit sa signature (soit ses entrées et sorties). Les noms des rôles proviennent des fonctions mentales décrites par l'APA<sup>(3)</sup> :

* **Manipulation** – aucune entrée et sortie (opère uniquement à partir de l'état de l'agent) : $|\mathit{Input}(o, *, *)| = 0$ et $|\mathit{Output}(o, *, *)| = 0$

* **Acquisition** – aucune entrée, mais au moins une sortie : $|\mathit{Input}(o, *, *)| = 0$ et $|\mathit{Output}(o, *, *)| > 0$

* **Storage** – des entrées, mais aucune sortie (agit sur l'état de l'agent) : $|\mathit{Input}(o, *, *)| > 0$ et $|\mathit{Output}(o, *, *)| = 0$

* **Interpretation** – des entrées et des sorties : $|\mathit{Input}(o, *, *)| > 0$ et $|\mathit{Output}(o, *, *)| > 0$

* **Transformation** – cas particulier d'interprétation où une des entrées est de même type que la sortie : c'est notre donnée manipulée. Les autres entrées, ainsi que l'état, permettent de contrôler la modification apportée à la donnée manipulée par l'opération.

<figure><img src="image_5.png" /><figcaption>FIGURE 3.2. Exemples de deux opérations pour implémenter le modèle d'agent REPLICANTS. La liste des actions (carré vert) extraite par la première opération est passée en argument à l'opération de sélection d'action pour choisir l'action à effectuer (carré rouge).</figcaption></figure>

**EXEMPLE.** — Pour implémenter le modèle d'agent REPLICANTS dans le modèle intégrateur OPACK, une opération importante est la sélection d'action (sortie) à partir d'actions candidates (entrée) qui est une opération d'interprétation. Une autre opération

<footnote><sup>(3)</sup>https://dictionary.apa.org.</footnote>
importante est l'acquisition d'actions envisageables, notamment grâce au parcours
de l'arbre qui permet d'extraire des actions candidates en fonction de l'état de la
simulation. Cette opération d'acquisition ne reçoit pas d'entrée, mais utilise l'état de
l'agent (dont l'arbre ACTIVITY-DL qui est dans K et les caractéristiques de l'agent C)
pour calculer un ensemble d'actions.

Ces deux opérations sont illustrées sur la figure 3.2. Comme on le voit sur cette
figure, la sortie d'une opération est reliée aux entrées d'autres opérations : nous parlons
de *flux d'opérations*.

3.7. FLUX D'OPÉRATIONS

<figure><img src="image_6.png" /><figcaption>FIGURE 3.3. Exemple d'un flux d'opérations arbitraire illustratif. Les carrés de couleur représentent les données en entrée et en sortie des opérations, chaque couleur figurant un type de données différent.</figcaption></figure>

Le modélisateur définit les opérations et les relie en un flux d'opérations, à la manière de la programmation par flux de Morrison [26].

Concrètement, un flux d'opérations est un graphe orienté acyclique dont les sommets sont des opérations et dont les arcs représentent les échanges de données entre la sortie d'une opération et les entrées des suivantes. En complément, le modélisateur peut définir des arcs de précédence entre deux opérations, qui ne correspondent pas à un échange de données mais à un ordre d'exécution. L'algorithme (séquentiel) de délibération de l'agent consiste à exécuter les opérations dans un ordre quelconque mais respectant les contraintes de précédence définies par les arcs.

La figure 3.3 donne un exemple de flux. Les couleurs des étiquettes des sommets correspondent aux rôles des opérations, et les couleurs des arcs aux types des données échangées. Naturellement, une sortie ne peut être reliée qu'à des entrées de même type. Les arcs de précédence sont dessinés en gris pointillé.

Pour implémenter ce mécanisme de flux, nous définissons un ensemble $Flux \in \Omega$
de flux et deux caractéristiques : *Operation(o, f)* qui indique qu'une opération *o* fait
partie du flux *f*, et *Before(o₁, o₂)* qui indique une relation de précédence entre deux
opérations.
3.8. CYCLE PROCÉDURAL DE L'AGENT

L'exécution d'un agent suit le cycle perception, délibération, action, comme illustré
sur la figure 3.4 :

**Perception.** L'environnement communique à l'agent l'ensemble P de percepts. OPACK n'impose aucune contrainte sur la manière dont cet ensemble est construit et mis à jour par l'environnement. Pour gérer les modifications concurrentes, l'agent travaille sur une copie P' de P. L'agent ne modifie jamais P (seul l'environnement définit les percepts).

**Délibération** : exécution du flux (voir ci-après), qui modifie l'état de l'agent en agissant possiblement sur les ensembles P', A, C et K.

**Action** : l'ensemble A, éventuellement modifié suite à l'exécution du flux, est utilisé par l'environnement qui est responsable de l'exécution des actions. OPACK n'impose aucune contrainte sur l'exécution des actions, sauf que chaque action terminée est marquée par l'environnement, pour permettre à l'agent d'en tenir compte dans son cycle procédural. Le succès ou l'échec d'une action est constaté par l'agent à travers les percepts (par exemple, j'essaye d'ouvrir la porte et je me rends compte qu'elle ne s'ouvre pas alors que l'action est terminée). L'agent peut choisir de supprimer de A les actions terminées mais l'environnement ne modifie jamais A de lui-même.

L'exécution d'un flux consiste à parcourir l'ensemble d'opérations dans l'ordre topologique du graphe orienté acyclique, défini par les deux types d'arcs, en commençant par les sommets sans prédécesseurs. Nous utilisons l'algorithme implémenté par Huang [18] dans la bibliothèque TASKFLOW<sup>(4)</sup> qui utilise une approche multi-threadée pour effectuer en parallèle les opérations qui le peuvent. Nous avons ajouté à cette bibliothèque le transfert de données d'une opération à ses successeurs.

<figure><img src="image_7.png" /><figcaption>FIGURE 3.4. Schématisation du cycle d'un agent : l'agent reçoit l'ensemble P puis déclenche le flux d'opérations (phase de délibération) pour déterminer les actions communiquées à l'environnement.</figcaption></figure>

<footnote>(4) https://taskflow.github.io/.</footnote>
3.9. INTÉGRATION DE MODÈLES COGNITIFS

Un modèle cognitif peut impacter le modèle d'agent à deux niveaux :

(1) sur l'état de l'agent (P', A, C et/ou K) en ajoutant des variables.

(2) sur son ensemble d'opérations O en ajoutant des opérations ou en altérant le fonctionnement d'une opération.

Par exemple, pour ajouter dans un modèle d'agent le modèle cognitif de Driskell [11] qui indique, entre autres, qu'une personne stressée réalise plutôt des actions maîtrisées, il faut 1) définir une variable de stress, 2) définir une opération pour gérer cette nouvelle variable et 3) altérer l'opération de sélection d'action pour tenir compte de l'état de stress.

Pour définir la manière dont le modèle cognitif altère les opérations existantes (dans notre exemple, la sélection d'action), nous utilisons un ensemble de *fonctions-impacts* et de *fonctions-stratégies* dans notre modèle OPACK. Une *fonction-impact* est une fonction dont les entrées sont identiques à celles de l'opération qu'elle « impacte » et dont la sortie est une variable intermédiaire qui représente l'impact sur l'opération. Une *fonction-stratégie* est une fonction qui combine les différents impacts d'une même opération pour calculer la sortie de l'opération. C'est donc la fonction-stratégie qui implémente le modèle d'agent permettant de mettre en œuvre les opérations.

FORMALISATION. — Soit une opération o et mc un modèle cognitif. On note $I_o^{mc}$ l'ensemble des fonctions-impacts de mc sur o (éventuellement vide). On définit $I_o = \cup_{mc} I_o^{mc}$ l'ensemble des fonctions-impacts pour l'opération o. Toutes les fonctions-impacts $f \in I_o$ ont les mêmes entrées que l'opération o et le même type de sortie, noté $\tau(o)$, qui peut être différent du type de sortie de l'opération o elle-même.

On définit une et une seule fonction-stratégie $s_o$ par opération comme une fonction qui prend en entrée un ensemble, éventuellement vide, de valeurs de type $\tau(o)$ et qui calcule la sortie de o.

La contrainte que nous imposons dans notre modèle intégrateur est donc de définir une fonction-stratégie par opération et que celle-ci puisse travailler sur un ensemble quelconque, éventuellement vide, d'éléments de type $\tau(o)$. C'est cette fonction-stratégie qui calcule le résultat de l'opération, à partir des entrées de l'opération et des résultats des fonctions-impacts. C'est le cœur de notre modèle intégrateur.

Notons qu'il est possible de définir plusieurs fonctions-impacts pour un mc donné et pour une même opération o. Par exemple, pour intégrer le modèle cognitif de Demary [9], le modélisateur peut définir une fonction-impact pour chacun des quatre quadrants du tableau donné sur la figure 1.1.

IMPACT CONDITIONNEL. — Une fonction-impact définit *comment* un modèle cognitif altère une opération (et le comportement de l'agent). Mais il faut aussi définir quand cet impact a lieu en fonction du profil de l'agent et de son état (qui capture la situation). C'est ce que Faur [16] souligne dans son modèle PERSEED. Par exemple,
un agent introverti se comporte de manière extravertie en présence d'amis, mais de ma-
nière introvertie en présence de collègues de travail. Il est donc possible de déclencher
des fonctions-impacts différentes en fonction de la situation.

Nous définissons une fonction d'activation *act* qui prend en entrée l'état de l'agent et une fonction-impact *f* et qui retourne *true* ou *false*. Pour chaque opération *o*, lorsqu'elle est évaluée dans le flux, nous calculons l'ensemble d'impacts $F_o = \{f \in I_o \text{ tq } act(f, PACK) = true\}$ des fonctions-impacts activées en fonction de l'état de l'agent et nous en déduisons l'ensemble des résultats de ces fonctions-impacts qui sera passé à la fonction-stratégie. Cet ensemble peut évidemment être vide.

3.10. EXEMPLE D'OPÉRATIONNALISATION

Considérons le flux de la figure 3.2 composé de deux opérations (actions envi-
sageables et sélection d'action) qui correspond à une partie du modèle d'agent RÉ-
PLICANTS. Nous allons montrer comment intégrer dans ce modèle les deux modèles
cognitifs de Driskell et de Demary.

Nous définissons tout d'abord la fonction-stratégie pour ces deux opérations, ce
qui nécessite de définir 1) le type $\tau(o)$ des fonctions-impacts de l'opération et 2) le
résultat obtenu par défaut lorsque l'ensemble d'impacts $F_o$ est vide.

* Pour « *actions envisageables* », nous choisissons que $\tau(I_o)$ est, comme pour $o$, un ensemble d'actions. Par défaut, la stratégie renvoie le résultat du parcours de l'arbre défini dans le modèle *REPLICANTS*, stocké dans $\mathbf{K}$, c'est-à-dire un ensemble d'actions comprenant a minima l'action « *ne rien faire* ».

* Pour « sélection d'action », nous choisissons que $\tau(o)$ est un ensemble de couples (*action*, *score*). Par défaut, lorsque cet ensemble est vide, le système choisit une action aléatoirement dans la liste des actions fournies en entrée de l'opération$^{(5)}$.

Nous souhaitons désormais impacter le comportement de l’agent par le biais de
modèles cognitifs.

AJOUT D'UN IMPACT : MODÈLE COGNITIF DE FOLLOWERSHIP. — Commençons par un comportement simplifié de Demary [9] : un agent *passif* suit les ordres de son supérieur.

Nous supposons qu'à partir de **C**, nous pouvons déterminer si un agent est *passif*
ou non. Nous supposons qu'à partir de **K**, nous pouvons déterminer si une action est
*ordonnée* ou non par un supérieur.

Nous ajoutons une fonction-impact dans l'opération « sélection d'action ». Elle est active uniquement si l'agent est passif. Elle donne, pour chaque action, un score de 1

<footnote>(5)Il s'agit ici d'une vision simplifiée par rapport au modèle REPLICANTS. Celui-ci calcule en réalité un ordre total sur les actions en fonction des préconditions des actions.</footnote>
aux actions ordonnées par un supérieur et de -1 si elle a été interdite par un supérieur et de 0 sinon.

De même, nous pouvons ajouter des fonctions-impacts pour chacun des quatre quadrants du modèle de Demary.

**AJOUT D'UNE OPÉRATION.** — Supposons désormais que nous souhaitons opérationnaliser un modèle de stress, comme celui de Lazarus [23], utilisé dans le modèle cognitif de Driskell. Ce modèle s'appuie sur un processus d'évaluation cognitive (appraisal en anglais) qui travaille sur un ensemble de variables d'évaluation dans l'environnement pour calculer une état émotionnel.

Nous ajoutons donc une variable de stress dans l'ensemble C de l'état de l'agent et une opération « *Manipulation* » qui opère sur les percepts de l'agent (qui correspondent aux variables d'évaluation cognitive) pour calculer la variable de stress. Il faut aussi ajouter un lien de précédence entre cette nouvelle opération et la sélection d'action.

<figure><img src="image_8.png" /><figcaption>FIGURE 3.5. Nouveau flux suite à l'intégration des modèles cognitifs. La flêche en pointillé représente le lien de précédence entre les deux opérations (évaluation cognitive et sélection d'action).</figcaption></figure>

**AJOUT DE PLUSIEURS IMPACTS : MODÈLE COGNITIF DE DRISKELL.** — Pour refléter les impacts du stress sur les différentes opérations en nous appuyant sur les travaux de Driskell [11], nous définissons deux fonctions-impacts, dépendantes du stress, au sein de l'opération « sélection d'action ». Elles attribuent chacune un score aux actions, telle que : « *les actions coopératives ou communicatives ont un score -1* » et « *les actions maîtrisées ont un score 1* ». La fonction d'activation retourne vrai pour ces deux fonctions-impacts uniquement lorsque l'agent est stressé.

Cet exemple simple montre comment il est possible d'intégrer plusieurs modèles cognitifs au sein d'un modèle d'agent dans le modèle intégrateur OPACK à l'ide des fonctions-impacts et des fonctions-stratégies. Les modèles peuvent, éventuellement, être contradictoires les uns avec les autres : pour chaque modèle, nous définissons les variables intermédiaires (fonctions-impacts) qui vont permettre de combiner leurs décisions au sein de l'unique fonction-stratégie associée à l'opération. Il n'y a donc pas
de modèle incompatible avec cette approche, tant qu'il reste calculable à partir d'un
ensemble d'opérations, existantes ou non, dans le modèle d'agent.

Nous allons maintenant évaluer l'effet de ces modèles cognitifs sur la génération
de comportement et leur intelligibilité.

4. ÉVALUATION

Notre objectif est de permettre l'intégration de modèles cognitifs au sein d'un
modèle d'agent de manière à obtenir des comportements représentatifs, sensibles et
intelligibles.

Pour évaluer la sensibilité des modèles cognitifs sur le comportement de l’agent, nous avons effectué un ensemble de mesures sur des actions sélectionnées par le modèle d’agent. Cette première expérimentation a été présentée à la conférence JFSMA 2022 [4]. Pour évaluer la représentativité et l’intelligibilité, nous avons mené une étude perceptive auprès d’utilisateurs non-experts. Cette deuxième expérimentation a été présentée à la conférence CSCWD en 2022 [3]. Nous présentons ces deux expérimentations dans cette section.

4.1. ÉVALUATION DE LA SENSIBILITÉ

Pour évaluer la sensibilité des modèles cognitifs sur le comportement de l’agent, nous avons proposé une première expérimentation qui mesure les actions sélectionnées par le modèle d’agent en fonction des modèles cognitifs. Nous allons vérifier que chaque modèle cognitif modifie bien ces mesures comme il le devrait. Par exemple, si nous ajoutons un modèle cognitif qui réduit la communication d’une personne stressée, alors les mesures en lien avec les actes de communication doivent évoluer dans ce sens. Au contraire, les autres mesures ne devraient pas être impactées. Évidemment, il y aura des impacts relatifs puisqu’il s’agit de choisir des actions, donc de faire évoluer le comportement de l’agent.

Nous utilisons trois modèles cognitifs : Driskell [11], Demary [9] et Fadier[13].

Dans notre scénario (entièrement abstrait), les agents doivent choisir parmi huit
actions qui ont les caractéristiques suivantes (cf. table 4.1 pour la répartition) :

• *ordre* : est-ce que l'action est un ordre transmis par un supérieur ?

• *com* : est-ce que l'action est une action de communication ?

• *coop* : est-ce que l'action se fait à plusieurs ou aide les objectifs de l'équipe ?

• *alu* : est-ce que l'action est tolérée par l'usage (voir section 2.1) ?

• SC1, SC2 ou SC3 : le niveau de qualification requis pour effectuer l'action.

Chaque agent va donc faire 2⁸ − 1 = 255 fois le cycle pour tirer l'ensemble des combinaisons possibles d'actions. En fonction de son état et des modèles cognitifs actifs ou non, il choisit une action (opération « sélection d'action »). Nous notons à chaque fois l'action choisie et les actions candidates.
<table><caption>TABLE 4.1. Pourcentage d'actions possédant la caractéristique. À part la qualification, une action peut posséder plusieurs autres caractéristiques d'où l'addition des pourcentages de la partie gauche du tableau n'est pas égale à 100 %.</caption><thead><tr><th>Attribut</th><th>ordre</th><th>com</th><th>coop</th><th>alu</th><th>SC3</th><th>SC2</th><th>SC1</th></tr></thead><tbody><tr><th>Pourcentage</th><td>12,5 %</td><td>37,5 %</td><td>50,0 %</td><td>12,5 %</td><td>12,5 %</td><td>37,5 %</td><td>50,0 %</td></tr></tbody></table>

Nous avons $2^3 \times 3 = 24$ états d'agent possibles (communicant ou non, pro-actif ou passif, stressé ou non et trois qualifications possibles). Pour chaque modèle cognitif, nous pouvons distinguer les états dans lesquels la fonction d'activation renverrait *vrai* pour les fonctions-impacts du modèle cognitif considéré. Par exemple, pour le modèle de Driskell, la fonction d'activation renvoie *true* pour les fonctions-impacts lorsque la variable *stress* de l'agent est vraie. Nous notons *De*, *Dr* et *ALU* l'ensemble de ces états pour les modèles de Demary[9], Driskell[11] et Fadier [13] respectivement. Réciproquement, nous notons *De*, *Dr* et *ALU* l'ensemble des états qui n'activent pas les fonctions-impacts des modèles de Demary, Driskell et Fadier respectivement.

Concrètement, le groupe d'agents *De* est le groupe des agents pour lesquels le comportement **devrait** être impacté quand le modèle de Demary est présent. Réciproquement, le groupe d'agents *De* est le groupe pour lequel le comportement ne devrait pas être impacté.

**MESURES.** — Nous considérons les mesures suivantes et nous indiquons entre parenthèse le modèle cognitif qui devrait impacter la mesure :

**ORD:** pourcentage d'actions « ordre », (De),

**COM:** pourcentage d'actions « com » (Dr),

**ALU:** pourcentage d'actions « alu » (ALU),

**COOP:** pourcentage d'actions « coop » (Dr),

**QUAL:** pourcentage d'actions choisies dont le niveau de qualification est inférieur ou égal à celui de l'agent (Dr).

Concrètement, pour une combinaison de modèles cognitifs donnée, $ORD(Dr) = 60\%$ signifie que dans l'ensemble des exécutons où une action « ordre » était proposée dans la liste des actions candidates et où la fonction d'activation aurait renvoyé *vrai* suivant les conditions du modèle de Driskell, l'agent a choisi une action « ordre » dans 60 % des cas.

**RÉSULTATS.** — Lorsqu'aucun modèle cognitif n'est présent, quelque soit la mesure, il n'y a pas de différences entre les groupes (puisqu'aucune fonction-impact n'est activée), comme la figure 4.1 le reporte. C'est le comportement de référence.

Lorsque Demary est le seul modèle cognitif activé et qu'une action ordonnée est proposée, le groupe *De* choisit toujours cette action ($ORD(De) = 1$) alors que le
<figure><img src="image_9.png" /><figcaption>FIGURE 4.1. Taux de sélection d'action lorsqu'aucun modèle n'est activé.</figcaption></figure>

groupe $\overline{De}$ la choisira une fois sur 4 ($\overline{\text{ORD}}(\overline{De})$ = 0,2553), comme dans le comportement de référence. Puisque, l'unique action ordonnée dans notre jeu de test est une action non-communicative, respectant la réglementation (non-ALU) et coopérative, nous observons une diminution de la mesure COM et ALU et une augmentation de la mesure COOP pour le groupe actif. Les autres groupes ne sont pas impactés et restent sur le comportement de référence. Ces résultats sont présentés sur la figure 4.2).

Nous obtenons le même résultat pour les autres modèles cognitifs lorsqu'ils sont activés seuls. Lorsque nous activons les trois modèles cognitifs, la tendance de chaque modèle cognitif se conserve (cf. figure 4.3). Par exemple, $\overline{\text{ORD}}(\overline{De})$ = 0,51 > $\overline{\text{ORD}}(\overline{De})$ = 0,11, c'est-à-dire que le groupe actif de Demary continue à privilégier les ordres, contrairement au groupe non-actif. C'est le cas pour tous les modèles cognitifs. Par contre, nous observons des impacts sur les groupes a priori non-concernés par un modèle, en raison du fait que les actions peuvent correspondent à plusieurs critères.

<figure><img src="image_10.png" /><figcaption>FIGURE 4.2. Taux de sélection d'action lorsque seul le modèle de Demary est activé.</figcaption></figure>

<figure><img src="image_11.png" /><figcaption>FIGURE 4.3. Taux de sélection d'action lorsque tous les modèles sont activés.</figcaption></figure>

Lorsque Demary est le seul modèle cognitif activé et qu'une action ordonnée est proposée, le groupe *De* choisit toujours cette action ($\overline{\text{ORD}}(\overline{De})$ = 1) alors que le groupe $\overline{De}$ la choisira une fois sur 4 ($\overline{\text{ORD}}(\overline{De})$ = 0,2553), comme dans le comportement de référence. Puisque, l'unique action ordonnée dans notre jeu de test est une action non-communicative, respectant la réglementation (non-ALU) et coopérative, nous observons une diminution de la mesure COM et ALU et une augmentation de la
mesure COOP pour le groupe actif. Les autres groupes ne sont pas impactés et restent
sur le comportement de référence. Ces résultats sont présentés sur la figure 4.2.

Nous obtenons le même résultat pour les autres modèles cognitifs lorsqu'ils sont
activés seuls. Lorsque nous activons les trois modèles cognitifs, la tendance de chaque
modèle cognitif se conserve (cf. figure 4.3). Par exemple, $ORD(De) = 0,51 > ORD(\bar{De}) = 0,11$, c'est-à-dire que le groupe actif de Demary continue à privilégier
les ordres, contrairement au groupe non-actif. C'est le cas pour tous les modèles cogni-
tifs. Par contre, nous observons des impacts sur les groupes a priori non-concernés par
un modèle, en raison du fait que les actions peuvent correspondent à plusieurs critères.

Le scénario présenté ici est relativement simple. Dans la section suivante, nous
avons travaillé sur un scénario plus complet. Le modèle passe facilement à l'échelle
puisque chaque brique peut être conçue indépendemment. La question est de savoir
si la combinaison des différentes briques permet de maintenir l'intelligibilité et la
représentativité des comportements.

## 4.2. ÉVALUATION DE L'INTELLIGIBILITÉ ET DE LA REPRÉSENTATIVITÉ

Pour tester la représentativité et l'intelligibilité, nous avons conçu une étude per-
ceptive sur un scénario imaginé dans un contexte de médecine d'urgence [19].

**SCÉNARIO.** — L'expérimentation utilise le scénario suivant : un médecin diagnostique un patient, conclut (de manière erronée) qu'il a besoin d'une injection d'adrénaïne et demande à un infirmier de préparer l'injection. L'infirmier s'aperçoit de l'erreur de diagnostic : le patient a en réalité besoin de morphine. Il réagit donc aux ordres du médecin de manière différente selon son profil cognitif : passif ou proactif (modèle cognitif de Demary [9]), communicatif ou non (modèle cognitif de Demary), stressé ou non (modèle cognitif de Driskell [11]). La réaction se fait en trois étape : 1) réaction à l'instruction du médecin (soit en mentionnant l'erreur au médecin, soit en confirmant l'ordre initial, soit en ne disant rien), 2) préparation de l'injection (de morphine ou d'adrénaline), 3) rendre compte de ses actions au médecin, soit de manière correcte (l'infirmier dit ce qu'il a fait) ou erronée (il dit le contraire de ce qu'il a fait) ou inexistante (il ne dit rien). À chaque étape, le choix de l'agent est déterminé par la combinaison des différents modèles cognitifs et les paramètres initiaux de l'agent : cela donne finalement huit exécutions différentes possibles.

Le scénario obtenu est traduit sous forme de textes (voir figure 4.4). En complément,
une explication est proposée à l'utilisateur soit construite de manière systématique à
partir des variables des modèles cognitifs, comme illustré sur la figure 4.4, soit décrivant
simplement le comportement (par exemple : « l'agent est dans une situation où il est
susceptible de se tromper, notamment pour des tâches relativement simples »). Cela
produit seize conditions expérimentales en tout, chacune correspondant à un texte
d'une vingtaine de lignes, scénario et explications compris.

Nous notons nos quatre variables X avec deux modalités X+ et X- de la manière
suivante :
C : communicant (C+) et non-communicant (C−).

P : proactif (P+) et passif (P−).

S : stressé (S+) et non-stressé (S−).

E : explications issues de modèles (E+) et explications naïves (E−).

<figure><img src="image_12.png" /></figure>

> « L'infirmière suit l'ordre d'injecter de l'adrénaline, car étant passif et communicant, il suit ce qu'on lui demande. »

<figure><img src="image_13.png" /></figure>

Comportement observé ← ( cause(s) → comportement(s) )

<caption>FIGURE 4.4. Exemple d'explication à partir des modèles cognitifs.</caption>

Nous avons utilisé G*POWER[15, 14] pour estimer le nombre minimum de participants (128), répartis dans nos seize groupes, avec une taille d'effet moyenne (0, 25). 174 participants ont été recrutés en ligne parmi les étudiants et le personnel du laboratoire, avec un minimum de dix participants par condition. Chaque participant a reçu de manière aléatoire un scénario parmi les huit possibles. Après avoir lu le texte, les sujets ont été invités à évaluer la rationnalité perçue du comportement de l'infirmier sur une échelle de Likert à cinq points (« Le comportement de l'infirmier vous semble-t-il rationnel » de -2 – pas du tout rationnel – à 2 – tout à fait rationnel), noté R. Ils doivent ensuite qualifier le comportement de l'agent pour chaque variable cognitive : « Diriez-vous que l'infirmière est... » stressée ou non stressée, passive ou proactive, communicante ou non communicante sur une échelle de Likert à 5 points. Dans un second temps, les sujets reçoivent les explications. Il leur est demandé d'évaluer la pertinence de l'explication sur une échelle de Likert : « Ces explications vous semblent-elles pertinentes », de pas du tout (-2) à tout à fait (2).

HYPOTHÈSES. — Nous posons les hypothèses de recherches suivantes :

(H1) **représentativité** Le score moyen de rationnalité perçue est positif : cela suggérerait que, lorsque plusieurs modèles cognitifs sont combinés, leurs comportements restent crédibles.

(H2) **intelligibilité** Pour chacune de nos variables C, P et S, le groupe X+ doit obtenir un score moyen supérieur au groupe X−, ce qui suggère que chaque groupe a correctement identifié et différencié la modalité. Plus précisément :

(H2.1) $C + > C -$ : Le groupe de sujets C+ ayant eu un scénario avec un agent communicant a tendance à évaluer le score communicant de manière plus élevée que pour le groupe C− ayant eu un agent non-communicant.
(H2.2) $P+ > P-$ : Le groupe de sujets $P+$ ayant eu un scénario avec un agent proactif a tendance à évaluer le score proactif (2) / passif (–2) de manière plus élevée pour le groupe de sujets $P-$ ayant eu un agent passif.

(H2.3) $S+ > S-$ : Le groupe de sujets $S+$ ayant eu un scénario avec un agent stressé a tendance à évaluer le score de stress de manière plus élevée que pour le groupe $S-$ ayant eu un agent non-stressé.
La validation de ces trois hypothèses suggérerait que, lorsque plusieurs modèles cognitifs sont présents, ils restent intelligibles pour les observateurs.

(H3) de l'intelligibilité vers l'explicabilité $E+ > E-$ : Le groupe $E+$, ayant reçu des explications issues des modèles cognitifs, a tendance à évaluer de manière plus élevée le score de pertinence des explications que pour le groupe $E-$, ayant reçu une explication « naïve ». Cela suggérerait qu'une explication apportée par les modèles que nous avons utilisés, aide à mieux comprendre le comportement des agents, qu'une explication naïve.

RÉSULTATS. — Nos mesures ne suivent pas une loi normale selon le test de Shapiro-Wilk (cf. table 4.2). C'est pourquoi nous utilisons des tests de Mann-Whitney plutôt que des tests de Student pour les hypothèses **H2** et **H3**.

<table><caption>TABLE 4.2. Test de Shapiro-Wilk sur nos différentes variables.</caption><thead><tr><th></th><th></th><th>R</th><th>C</th><th>P</th><th>S</th><th>E</th></tr></thead><tbody><tr><td>N</td><td></td><td>178</td><td>178</td><td>178</td><td>178</td><td>178</td></tr><tr><td>W de Shapiro-Wilk</td><td></td><td>0,829</td><td>0,743</td><td>0,860</td><td>0,892</td><td>0,838</td></tr><tr><td>Valeur p de Shapiro-Wilk</td><td></td><td>.001</td><td>.001</td><td>.001</td><td>.001</td><td>.001</td></tr></tbody></table>

La moyenne sur l'ensemble des groupes concernant la crédibilité du comportement de l'infirmière est de –0,152, ce qui contredit l'hypothèse **H1**. Cependant, nous avons des scores positifs (1,818 et 1,125) pour les groupes correspondant à un profil communicatif et proactif (respectivement sans et avec stress), ce qui suggère que cette combinaison de comportement entraine des comportements plus crédibles (cf. table 4.3).

<table><caption>TABLE 4.3. Statistiques descriptives de la crédibilité selon les conditions</caption><thead><tr><th>Effective C</th><th>Effective P</th><th>Effective S</th><th>N</th><th>Manquants</th><th>Moyenne</th><th>Médiane</th><th>Écart-type</th><th>Min.</th><th>Max.</th></tr></thead><tbody><tr><td rowspan="4">Non-communicant</td><td rowspan="2">Passif</td><td>Non-stressé</td><td>22</td><td>0</td><td>-0,545</td><td>-1,00</td><td>1,299</td><td>-2</td><td>2</td></tr><tr><td>Stressé</td><td>21</td><td>0</td><td>-0,905</td><td>-1</td><td>1,179</td><td>-2</td><td>2</td></tr><tr><td rowspan="2">Proactif</td><td>Non-stressé</td><td>26</td><td>0</td><td>-0,731</td><td>-1,00</td><td>1,343</td><td>-2</td><td>2</td></tr><tr><td>Stressé</td><td>21</td><td>0</td><td>-0,857</td><td>-1</td><td>0,655</td><td>-2</td><td>1</td></tr><tr><td rowspan="4">Communicant</td><td rowspan="2">Passif</td><td>Non-stressé</td><td>20</td><td>0</td><td>-0,550</td><td>-1,00</td><td>1,276</td><td>-2</td><td>2</td></tr><tr><td>Stressé</td><td>22</td><td>0</td><td>-0,682</td><td>-1,00</td><td>1,287</td><td>-2</td><td>2</td></tr><tr><td rowspan="2">Proactif</td><td>Non-stressé</td><td>22</td><td>0</td><td>1,818</td><td>2,00</td><td>0,501</td><td>0</td><td>2</td></tr><tr><td>Stressé</td><td>24</td><td>0</td><td>1,125</td><td>2,00</td><td>1,296</td><td>-2</td><td>2</td></tr></tbody></table>
Pour l'hypothèse **H2**, nous observons une différence nette entre chaque échantillon, hormis pour le trait « stressé » (cf. figure 4.5).

<figure><img src="image_14.png" /><figcaption>FIGURE 4.5. Graphes descriptifs de nos trois couples de traits X et $\neg X$.</figcaption></figure>

Le score du groupe $C+$ est significativement supérieur au groupe $C^-$ selon le test statistique U de Mann-Whitney, avec $p < 0,001 < \alpha = 0,05$, avec une taille d'effet importante de 0,754. Cela suggère que les sujets ont su différencier entre un comportement communicant et non-communicant.

De même, le score du groupe $P+$ est significativement supérieur au groupe $P^-$ selon le test statistique U de Mann-Whitney, avec $p < 0,001 < \alpha$, avec une taille d'effet importante de 0,878. Cela suggère que les sujets ont su différencier entre un comportement passif et proactif.

En revanche, le groupe $S+$ n'est pas significativement supérieur au groupe $P^-$ selon le test statistique U de Mann-Whitney, avec $p = 0,196 > \alpha$. La médiane et la moyenne vont aussi dans ce sens : les médianes des deux groupes valent 0 et les moyennes sont très proches (-0,0333 pour $S^-$ et 0,102 pour $S^+$). L'hypothèse H2.3 n'est donc pas validée ce qui suggère que les sujets n'ont pas su différencier entre un comportement stressé et non-stressé.

Enfin, le groupe $E+$ est significativement supérieur au groupe $E^-$ selon le test statistique U de Mann-Whitney, avec $p = 0,048 < \alpha$ bien que la médiane vaille 0 pour les deux groupes. D'autres éléments de preuve sont la moyenne et la répartition. Pour la moyenne, elle est effectivement supérieure pour le groupe $E+$ avec une valeur de 0,793 contre 0,407 pour $E^-$ Si nous regardons la répartition de nos deux groupes (cf. figure 4.6)⁽⁶⁾, nous remarquons une différence nette entre le groupe $E+$ où l'avis des sujets est plus tranché que le groupe $E^-$.

<footnote>(⁶)Un graphe violon permet de comparer visuellement la distribution sur plusieurs populations. Le fil passant à travers la boîte bleue indique les quartiles (un de chaque côté de la boîte, un dans la boîte bleue et le dernier sur la ligne en gras).</footnote>
<figure><img src="image_15.png" /><figcaption>FIGURE 4.6. Graphes violons des groupes E+ et E-.</figcaption></figure>

L'hypothèse H3 est donc validée, ce qui suggère que les sujets ont trouvé les explications de notre modèle plus pertinentes que les explications naïves, avec toutefois une taille d'effet basse (0,164).

En conclusion, si la majorité des personnes n'a pas jugé convaincants les comportements des scénarios passifs et bien que les comportements stressés ont été mal perçus, nous avons validé deux hypothèses sur trois concernant l'intelligibilité et celle de la pertinence des explications. Il est possible que notre expérimentation ait mal rendu compte de la situation et du contexte professionnel simulés, en raison de l'absence de modalité visuelle (les commentaires libres des participants vont dans ce sens : plusieurs d'entre eux ont jugé que le comportement de l'agent était caricatural). Cela pourrait expliquer en partie nos mauvais résultats sur H1 et H2.3. Par ailleurs, les sujets n'étaient pas des professionnels du domaine (dans ce cas, la médecine d'urgence) : les procédures d'urgence comme le respect des consignes sans contradiction a pu être mal compris. Néanmoins, une troisième expérimentation a été réalisée avec des professionnels dans le cadre d'un entraînement au commandement d'opérations militaires aériennes. Les résultats n'ont pas été présentés dans cet article, car seuls dix experts ont pû réaliser cette expérimentation (ce qui est insuffistant pour réaliser une analyse statistique sérieuse). Néanmoins, sur ces dix experts, les résultats vont dans le sens d'une vérification des hypothèses H1 et H2.3. Des tests supplémentaires avec plus d'experts métiers seraient donc nécessaires pour valider la représentativité et l'intelligibilité de certains comportements experts.

## 5. CONCLUSIONS & PERSPECTIVES

Nous avons présenté dans cet article les fondations d'un modèle pour intégrer dans un modèle d'agent un ensemble de modèles cognitifs. Notre modèle intégrateur fait un minimum d'hypothèses sur le modèle d'agent et sur les modèles cognitifs considérés. Nous avons détaillé comment, grâce au flux d'opérations, le modélisateur peut définir et relier les opérations entre-elles pour modéliser le fonctionnement du modèle d'agent. Ensuite, nous avons décrit l'intégration de modèles cognitifs pour
impacter cet ensemble d'opérations, grâce à la notion de fonctions-impacts et de fonctions-stratégies, qui permet de construire des combinaisons de modèles cognitifs non connus au préalable. Enfin, nous avons réalisé une première évaluation pour vérifier que les comportements obtenus sont représentatifs, sensibles et intelligibles.

Une perspective importante de ces travaux, outre la nécessité de poursuivre les expérimentations pour le valider avec d'autres modèles d'agents et d'autres modèles cognitifs que ceux présentés ici, est de permettre le développement d'une architecture multi-paradigmes pour combiner plusieurs modèles d'agents (dans la suite de ce qu'ont proposé Sicard et Picault [29]) avec plusieurs modèles cognitifs. Nous pensons que nos travaux sont un pas dans cette nouvelle direction : la généricité, modularité et composabilité de notre approche permettraient d'établir plusieurs paradigmes, y compris hors modèle d'agent, pour nos agents. Nous pourrions même envisager de changer dynamiquement de paradigme lors de la simulation, grâce à la dynamicité des flux d'opérations et la composabilité. Il serait également intéressant de réaliser une expérimentation pour tester si notre modèle intégrateur permet des intégrations variées et les mêmes comportements perçus. Il s'agirait alors d'intégrer d'autres modèles cognitifs, d'autres modèles agent, de faire varier les modèles d'agent pour les mêmes modèles cognitifs ou des intégrations différentes des mêmes modèles avec des concepteurs différents.

## BIBLIOGRAPHIE

[1] P. G. BALAJI & D. SRINIVASAN, « An Introduction to Multi-Agent Systems », in *Innovations in Multi-Agent Systems and Applications – 1* (D. Srinivasan & L. C. Jain, éds.), Studies in Computational Intelligence, Springer, 2010, p. 1-27.

[2] C. BAROT, « Scénarisation d'environnements virtuels : vers un équilibre entre contrôle, cohérence et adaptabilité », Thèse de doctorat, Compiègne, 2014.

[3] T. DE BLAUWE, D. LOURDEAUX & N. SABOURET, « Design of modular generation of human behaviour in a collaborative context », in 2022 IEEE 25th International Conference on Computer Supported Cooperative Work in Design (CSCWD), IEEE, 2022, p. 269-274.

[4] T. DE BLAUWE, N. SABOURET & D. LOURDEAUX, « Méta-modèle d'agent pour la génération de comportements variables induits par des modèles cognitifs modulaires », in *Journées Francophones sur les Systèmes Multi-Agents (JFSMA 2022)*, 2022.

[5] M. BOURGAIS, « Vers des agents cognitifs, affectifs et sociaux dans la simulation », thèse de doctorat, Normandie Université, 2018.

[6] M. BRATMAN, *Intention, Plans, and Practical Reason*, Center for the Study of Language and Information, 1987.

[7] L. CALLEBERT, D. LOURDEAUX & J.-P. BARTHÈS, « Trust-based decision-making system for action selection by autonomous agents », in 2016 IEEE 20th International Conference on Computer Supported Cooperative Work in Design (CSCWD), 2016, p. 4-9.

[8] P. T. COSTA JR. & R. R. McCRAE, « The Revised NEO Personality Inventory (NEO-PI-R) », in *The SAGE handbook of personality theory and assessment, Vol 2 : Personality measurement and testing*, Sage Publications, Inc, 2008, p. 179-198.

[9] G. DEMARY, « Évaluation cognitive du leader dans une dyade hiérarchique : des comportements non verbaux du suiveur aux comportements de leadership », *Bulletin de psychologie* **569** (2020), n° 5, p. 271-275.

[10] T. DRISKELL, J. E. DRISKELL & E. SALAS, « Mitigating Stress Effects on Team Cohesion », in *Team Cohesion : Advances in Psychological Theory, Methods and Practice*, Research on Managing Groups and Teams, vol. 17, Emerald Group Publishing Limited, 2015, p. 247-270.
[11] T. DRISKELL, E. SALAS & J. E. DRISKELL, « Teams in extreme environments : Alterations in team development and teamwork », *Human Resource Management Review* **28** (2018), n° 4, p. 434-449.

[12] K. EROL, J. HENDLER & D. S. NAU, « HTN planning : complexity and expressivity », in *Proceedings of the Twelfth National Conference on Artificial Intelligence*, AAAI’94, vol. 2, American Association for Artificial Intelligence, 1994, p. 1123–1128.

[13] E. FADIER, C. DE LA GARZA & A. DIDÉLOT, « Safe design and human activity : construction of a theoretical framework from an analysis of a printing sector », *Safety Science* **41** (2003), n° 9, p. 759-789.

[14] F. FAUL, E. ERDFELDER, A. BUCHNER & A.-G. LANG, « Statistical power analyses using G*Power 3.1 : Tests for correlation and regression analyses », *Behavior Research Methods* **41** (2009), n° 4, p. 1149-1160.

[15] F. FAUL, E. ERDFELDER, A.-G. LANG & A. BUCHNER, « G*Power 3 : A flexible statistical power analysis program for the social, behavioral, and biomedical sciences », *Behavior Research Methods* **39** (2007), n° 2, p. 175-191.

[16] C. FAUR, « Approche computationnelle du regulatory focus pour des agents interactifs : un pas vers une personnalité artificielle », Thèse de doctorat, Université Paris-Saclay (ComUE), 2016.

[17] J. GRATCH & S. MARSELLA, « A domain-independent framework for modeling emotion », *Cognitive Systems Research* **5** (2004), n° 4, p. 269-306.

[18] T.-W. HUANG, D.-L. LIN, C.-X. LIN & Y. LIN, « Taskflow : A Lightweight Parallel and Heterogeneous Task Graph Computing System », *IEEE Transactions on Parallel and Distributed Systems* **33** (2022), n° 6, p. 1303-1320.

[19] L. HUGUET, D. LOURDEAUX & N. SABOURET, « Présentation du projet VICTEAMS », in *Workshop Affect Compagnon Artificiel Interaction (WACAI 2016)*, 2016.

[20] ———, « Moteur de sélection de tâches pour des personnages virtuels autonomes non omniscients », in *Workshop affects, compagnons artificiels et interaction (WACAI 2018)*, 2018.

[21] P. KENNY, A. HARTHOLT, J. GRATCH, W. SWARTOUT, D. TRAUM, S. MARSELLA & D. PIEPOL, « Building interactive virtual humans for training environments », in *Proceedings of i/itsec*, vol. 174, 2007, p. 911-916.

[22] J. E. LAIRD, A. NEWELL & P. S. ROSENBLOOM, « SOAR : An architecture for general intelligence », Tech. report, Stanford, 1986.

[23] R. S. LAZARUS & S. FOLKMAN, *Stress, Appraisal, and Coping*, Springer Publishing Company, 1984.

[24] D. LOURDEAUX, « Modélisation de l'activité humaine pour la scénarisation adaptive d'environnements virtuels complexes : Des comportements cognitifs aux comportements erronés en situation dégradée », Thèse, Université de technologie de Compiègne, 2012.

[25] V. LUCQUIAUD, D. SCAPIN & F. JAMBON, « Outils de modélisation des tâches utilisateurs : exigences du point de vue utilisation », in *Proceedings of the 14th Conference on l'Interaction Homme-Machine*, 2002, p. 243-246.

[26] J. P. MORRISON, « Flow-based programming », in *Proc. 1st International Workshop on Software Engineering for Parallel and Distributed Systems*, 1994, p. 25-29.

[27] M. OCHS, N. SABOURET & V. CORRUBLE, « Simulation of the Dynamics of Nonplayer Characters' Emotions and Social Relations in Games », *IEEE Transactions on Computational Intelligence and AI in Games* **1** (2009), n° 4, p. 281-297.

[28] A. ORTONY, G. L. CLORE & A. COLLINS, *The Cognitive Structure of Emotions*, Cambridge University Press, 1988.

[29] S. PICAULT & V. SICARD, « Les meilleurs agents sont ceux qu'on ne simule pas : vers des architectures de simulation multi-paradigmes? », in *28es Journées Francophones sur les Systèmes Multi-Agents (JFSMA'2020)*, Cépaduès, 2020.

[30] M. O. RIEDL, « Narrative generation : balancing plot and character », Thèse, North Carolina State University, 2004, AAAI3154351.

[31] M. ST, « Thespian : a decision-theoretic framework for interactive narratives », Thèse, University of Southern California, 2010.

[32] B. G. SILVERMAN, D. PIETROCOLA, B. NYE, N. WEYER, O. OSIN, D. JOHNSON & R. WEAVER, « Rich socio-cognitive agents for immersive training environments : case of NonKin Village », *Autonomous Agents and Multi-Agent Systems* **24** (2012), n° 2, p. 312-343.
[33] C. A. SMITH & R. S. LAZARUS, « Emotion and adaptation », in *Handbook of personality : Theory and research*, The Guilford Press, 1990, p. 609-637.

**ABSTRACT.** — In the context of autonomous agents for human training, this paper proposes a model to integrate cognitive models with a minimum of hypothesis. Agents are defined by combining, in a modular manner, basic operations that define the agent's model with cognitive processes that complement these operations. We briefly present to evaluations with one agent model and three cognitive models. This shows that OPACK allows to produce representative, sensitive and intelligible behaviours.

**KEYWORDS.** — Multi-Agent Based Simulation, Agent Models, Cognitive Models, Behaviours.

Manuscrit reçu le 10 mai 2023, révisé le 5 décembre 2023, accepté le 22 février 2024.