• Aucun résultat trouvé

F ORMALISATION DES ACTEURS INFORMATIQUES D ’ UN ECLR

5. MODELISATION D’UN ECLR

5.1. F ORMALISATION DES ACTEURS INFORMATIQUES D ’ UN ECLR

D’après la définition d’un agent que nous avons adopté dans le chapitre 4.3.2, nous allons considérer un agent non comme une entité isolée mais comme une pièce évolutive dans une société nommée ECLR, elle-même en évolution [Gouardères, 98]. Dans notre SMA, les agents ont plusieurs activités communes telles que :

le contrôle des informations reçues, •

• • • •

le traitement d’une requête, l’estimation des ressources, l’application des changements, la validation des actions.

Nous notons une distinction entre un agent et un programme. En effet, un agent est un acteur informatique en soi car il possède une attitude, et a des devoirs envers son environnement contextuel et son supérieur hiérarchique. L’organisation de la hiérarchie est représentée par la figure ci-dessous :

Chapitre 5 ————————————————————————————————— Auteur de niveau 1 Agent superviseur Agent décideur Agent simple signifie "est supérieur hiérachique de"

Figure 5-1 : Hiérarchie des acteurs d’un ECLR

La démarche générale de validation effectuée par un supérieur hiérarchique a pour objet d’accompagner en continu l’exploitation de l’application et d’en valider la réalisation sur le plan qualité.

5.1.1. Modèle procédural de fonctionnement d’un agent

Chaque action d’un agent simple est supervisée par l’agent décideur (AD) du module auquel il appartient. Chaque action d’un AD est supervisée par l’AS. Nous appelons « événement », le point de départ de chaque activité d’un agent quel qu’il soit. Ensuite, chaque agent respecte le même modèle de fonctionnement que nous allons appeler MPFA pour Modèle Procédural de Fonctionnement d’un Agent. Le MPFA est un modèle que nous avons spécifiquement développé et adapté pour l’ECLR.

Ecoute Vérification Traitement Proposition Mise à jour Application

NON

Base de Travail BdT

OUI

Figure 5-2 : Modèle MPFA d’un ECLR

D’après ce schéma, nous pouvons distinguer deux types de rôles :

• les rôles externes, en caractères italique, correspondent à des activités faisant appel à une entité extérieure. Il s’agit en premier lieu de l’écoute d’un événement qui est plutôt un rôle passif. Le second rôle actif d’un agent concerne la proposition d’une action à son

——————————————————————————— Modélisation d’un ECLR supérieur hiérarchique c’est-à-dire l’AD pour un agent simple, l’AS pour un AD et l’auteur de niveau 1 pour l’AS. En cas d’accord de ce supérieur hiérarchique, le dernier rôle externe d’un agent relatif à l’événement consiste en l’application de l’action.

• les rôles internes, en caractère normal sur la figure 5-2, montre les activités de l’agent qui ne font intervenir que l’agent et la base de travail. Il s’agit de la vérification qui consiste à tester si l’événement le concerne ou non et si l’agent possède les ressources nécessaires pour le traitement. Si c’est le cas, l’agent traite alors l’information en y ajoutant ou en ôtant des données. Après la proposition du résultat à son supérieur et la validation par ce dernier, l’agent s’occupe de la mise à jour de la base de travail.

A chaque fonction, un agent de l’ECLR combine les deux types de rôles (interne et externe), même si le traitement fait en interne ne donne aucun résultat et qu’il n’y ait pas de mise à jour de la BdT.

Ainsi, le modèle MPFA respecte la notion d’agent [Ferber,95] car chaque agent perçoit,

décide, agit et apprend. La principale difficulté par rapport à ce modèle concerne l’autonomie

de l’agent car ce dernier doit respecter des règles de conduite afin de rester dans le contexte tel un conducteur qui respecte le code de la route.

Afin d’éviter tout débordement sur les rôles de chaque agent, nous allons réaliser chaque agent en jumelant deux formes de « pensée » :

• La pensée impérative : « Que doit faire l’agent ? ». La programmation algorithmique et/ou procédurale est la plus adaptée à cet objectif car ces méthodes de programmation offrent un suivi chronologique de l’évolution des événements.

• La pensée applicative : « Sur quoi l’agent doit-il agir ? ». Pour ce cas, la programmation par objet est nécessaire car elle permet de bien distinguer le champ d’action. L’intérêt de l’approche objet vient également de la possibilité de modéliser librement la réalité des choses, et de disposer d’une démarche canonique.

De même le modèle MPFA offre à chaque agent deux types d’apprentissage : l’apprentissage constructiviste qui est différent de l’apprentissage instructiviste où l’on apprend grâce à autrui. Le principe du « learning by doing » de chaque agent est garanti par la mise à jour

Chapitre 5 —————————————————————————————————

5.1.2. Modèle cognitif de fonctionnement d’un agent

La base de travail qui représente les connaissances d’un agent ainsi que la capacité d’analyse d’un agent constituent les arguments cognitifs d’un agent. Un modèle cognitif est défini dans deux champs duaux :

• l’analyse sémantique qui donne un sens au comportement de l’agent. L’agent analyse alors méthodologiquement chaque action afin de respecter son rôle et controler son effet sur l’environnement. Cette analyse est inspirée des catégories de démarches de Forner [Forner, 90] que nous avons développées dans le chapitre 3.1.1. traitant de l’erreur humaine. Elle correspond alors au comportement rationnel et contrôlé d’un homme pour prendre une décision.

• l’analyse empirique qui ne tient pas compte de la logique à suivre pour garder le contexte environnemental. L’agent ne s’occupe pas de son entourage et évolue ainsi indépendamment de ses supérieurs hiérarchiques. Cela donne toute liberté d’action et de réaction à l’agent. Si nous faisons l’analogie avec l’attitude humaine développé dans le chapitre 3.2.1.1., l’analyse empirique correspond au comportement intuitif et spontané de l’homme.

Analyse sémantique Analyse empirique

Figure 5-3 : Dualité comportementale d’un agent

Les entités sur le schéma ci-dessus (petits cercles) représentent les éléments de la base de travail d’un agent. Rappelons46 que la base de travail est constituée de bases de données pour

les informations et de bases de connaissances pour le fonctionnement de l’agent. Pour l’analyse sémantique, une entité effectue des échanges avec l’extérieur et avec les entités qui

——————————————————————————— Modélisation d’un ECLR lui sont rattachées directement. Cela rend compte alors des processus de fonctionnement d’un agent [Prince, 98] à travers :

la dynamique externe, c’est-à-dire comment l’agent échange avec son environnement et le modifie,

• la dynamique interne, c’est-à-dire comment l’agent est modifié et évolue par ce qu’il a traité et reçu de son environnement et de son propre fonctionnement.

Tous ces échanges entraînent un enrichissement de la base de travail pour l’agent et pour les autres agents du même module ou d’un autre module. En revanche, l’analyse empirique entraîne une intériorisation de l’agent car les entités de la base de travail s’échangent des informations uniquement entre elles. Cela donnera à l’agent plus de capacité d’analyse et l’aidera à rester dans le contexte. Ainsi, il y a une responsabilisation de l’agent sur ses fonctions [Boy, 98], d’autant plus qu’il peut développer des processus de compétences cognitives grâce à ce maintien du contexte.

Dans un ECLR, les résultats peuvent être interprétés différemment selon le contexte. Cela implique de mettre en oeuvre une approche linguistique dans notre modèle cognitif. Lors de la formulation des besoins, on se trouve face à des problèmes linguistiques tels que la métaphore, la polysémie (multiplicité des sens pour une même forme), la paraphrase (équivalence de sens dans plusieurs propositions). Pendant la conception de l’ECLR, pour limiter les ambiguïtés, nous allons adopter la formule « Si … alors ... » car elle fait référence à une structure condition-action mais également à une forme causale, une forme chronologique, une instruction qui rappelle celle de la programmation « if .... then .... ». [Prince, 96].

Selon le résultat de l’interprétation, l’agent réagit face au comportement du système et construit ses propres attitudes pour ne pas se retrouver en dissonance cognitive [Boy, 97]. Pour éviter cela, nous pouvons constituer plusieurs listes :

• une liste des tâches autorisées ou « do-list » • une liste des tâches interdites ou « forbidden-list » • une liste des vérifications à effectuer ou « check-list »

De ces trois listes, la plus critique et la plus intéressante est celle des tâches interdites car il s’agit d’assurer la robustesse de l’ECLR. Il s’agit alors d’une véritable gestion des exceptions

Chapitre 5 ————————————————————————————————— qui nous permet de contrôler les différentes évolutions et l’émergence de nouveau contexte selon les résultats des actions de l’agent. Nous détaillerons ces listes dans le chapitre 5.3.1. De cette gestion des exceptions, nous pouvons déduire deux niveaux cognitifs pour un agent ECLR : réactif et décisionnel.

5.1.3. Structure d’un agent

Généralement, les agents expriment en terme de programmation, une méthode ou une technique de réalisation d’une tâche. Ainsi, un agent est une procédure, variable par ses connaissances et ses règles. Cette vision sur les agents, enrichies par les définitions par [Woolridge, Jennings, 95], [Ferber, 95] et [Gouardères & al, 96] justifient le comportement évolutif des agents.

En déterminant sa tâche et ses paramètres, un agent met en œuvre un mécanisme de résolution de la tâche définie dans ses procédures internes. Péninou [Péninou-93], l’un des pionniers de la structure de base d’un agent qui a inspiré plusieurs chercheurs par la suite, a représenté un agent comme suit :

Agent Nom de l’agent.

Tâche Tâche que l’agent assure.

But Agent Objectif de l’agent.

Condition Activation Les conditions nécessaires pour l’activation de la tâche.

Condition Terminaison Conditions générales de réalisation de la tâche. Corps Le système permettant d’atteindre le But Agent.

Cette représentation mentionne les éléments de bases nécessaires à la définition d’un agent à savoir : le problème, le contexte et la réalisation.