2.2
Caractéristiques d'agent
En utilisant quelques définitions de la
littérature, il est possible de créer un ensemble de
caractéristiques d'agent primaires, secondaires et tertiaires [Baily
02]. Les caractéristiques primaires sont inhérentes de la plupart
des définitions populaires d'agent, les caractéristiques
secondaires sont l'ensemble de caractéristiques, liées aux
agents, prolongées habituellement. Le troisième ensemble de
caractéristiques contient davantage les caractéristiques
abstraits, désirables et qui ressemblent à celles de l'humain.
2.2.1
Caractéristiques primaires
Autonome : l'agent peut spontanément
effectuer certaines tâches, peut prendre des initiatives.
Communicative/sociale : Un agent devrait
avoir un niveau élevé de communication avec d'autres agents. Le
protocole de communication entre agent le plus commun KQML (Knowledge Query
and Manipulation Language).
Réactive : Un agent devrait pouvoir
percevoir son environnement (qui peut être un monde physique, un
utilisateur via une interface graphique ou une collection d'autres agents) et
réagir à ses changements, que ce soit la modification des
objectifs de l'utilisateur ou des ressources disponibles.
2.2.2
Caractéristiques secondaires
Proactive : les agents n'agissent pas
simplement en réponse à leur environnement, ils son capables
d'exposer un comportement dirigé but en prenant l'initiative.
Adaptatif : un agent adaptatif est un agent
capable de contrôler et d'adapter ses aptitudes (communicationnelles,
comportementales, etc.) en réponse aux connaissances internes ou aux
changements de l'environnement.
Orienté-but/intentions : ces agents
ont un plan d'action interne explicite pour accomplir un but ou ensembles des
objectifs.
Persistance : les agents persistants ont un
état interne qui reste cohérent.
Mobilité : les agents mobiles peuvent
décider d'émigrer à une machine différente ou
à un autre réseau tout en maintenant la persistance.
2.2.3
Caractéristiques tertiaires
Emotion : agents avec la capacité
d'exprimer l'émotion ou l'humeur comme un être humain. De tels
agents pourraient également avoir une certaine forme de caractère
ou d'aspect anthropomorphe.
L'intelligence : agents avec la
capacité de raisonner, apprennent et adaptent dans le temps. Un agent
est intelligent s'il est capable de réaliser des actions flexibles et
autonomes pour atteindre les objectifs qui lui ont été
fixés. La flexibilité signifie la réactivité, la
proactivité et les attitudes sociales.
2.3
Typologies d'agents
Nwana [Mbala 03] propose une typologie des agents à
partir de plusieurs critères de classification :
·
Mobilité : statique ou mobile ;
·
Présence d'un modèle de raisonnement symbolique :
délibératif ou réactif ;
·
Existence d'un objectif et de propriétés initiales
comme l'autonomie, la coopération et l'apprentissage. A partir de ces
propriétés, Nwana déduit quatre types d'agents :
collaboratifs, collaboratifs et apprenants, d'interface et intelligents ;
·
Rôles : recherche d'informations ou travail sur Internet
·
Philosophies hybrides : combinaison entre deux ou plusieurs
approches dans un seul agent.
De cette typologie, Nwana propose sept catégories
d'agents : agents collaboratifs, agents d'interface, agents mobiles, agents
d'information ou d'Internet, agents réactifs, agents hybrides et agents
intelligents.
2.3.1
Les agents collaboratifs
Les agents collaboratifs ont davantage des
caractéristiques d'autonomie et de coopération avec les autres
agents dans la réalisation de leurs objectifs. Ils doivent pouvoir
négocier afin d'arriver à des compromis acceptables. La
faculté d'apprendre peut exister mais n'est pas une
caractéristique fondamentale requise pour ce type d'agents. Plusieurs
chercheurs en intelligence artificielle leur prêtent des états
mentaux comme les croyances, les désirs et les intentions. Ils sont
alors qualifiés d'agents collaboratifs de type BDI (Beliefs, Desires,
Intentions). Les propriétés caractéristiques des agents
collaboratifs sont : l'autonomie, la réactivité, le dynamisme
(capacité à initier des actions) et la sociabilité. Les
principales raisons pour lesquelles l'on peut être amené à
implémenter les agents collaboratifs relèvent de l'intelligence
artificielle distribuée ; elles sont les suivantes :
·
résoudre des problèmes trop importants pour un
seul agent à cause des limitations des ressources et des risques de
systèmes centralisés ;
·
permettre l'interconnexion et l'interopérabilité
de plusieurs legacy systems comme les systèmes experts, les
systèmes décisionnels, etc. ;
·
résoudre des problèmes fondamentalement
distribués comme le contrôle du trafic aérien ou des
problèmes inhérents aux systèmes d'information
distribués ;
·
résoudre des problèmes pour lesquelles l'expertise
disponible est distribuée ;
·
encourager la modularité, la vitesse d'exécution
et la flexibilité.
2.3.2
Les agents d'interface
Les agents d'interface disposent d'une autonomie et d'une
capacité à apprendre. Ils sont caractérisés par la
métaphore d'assistant personnel collaborant avec l'utilisateur dans le
même environnement. Alors que les agents collaboratifs collaborent avec
les autres agents, les agents d'interface collaborent avec l'utilisateur. La
collaboration avec l'utilisateur ne nécessite pas l'existence explicite
d'un langage de communication entre agents comme dans le premier cas. Les
agents d'interface apprennent les préférences des utilisateurs
afin de mieux les assister. Ils apprennent :
·
en observant et en imitant leurs utilisateurs ;
·
à travers le feed-back des utilisateurs suite à
leurs actions ;
·
en recevant des instructions de l'utilisateur ;
·
en demandant les conseils des autres agents.
La collaboration avec les autres agents lorsqu'elle existe se
limite à la demande de conseils, et diffère ainsi du type de
collaboration qui a cours entre les agents collaboratifs. Un agent d'interface
est doté d'un minimum de connaissances au départ et acquiert
lui-même, par la suite, la connaissance dont il a besoin pour assister
l'utilisateur. La principale raison qui amène à considérer
de tels agents est le souci de déléguer certaines tâches
répétitives et fastidieuses (il faut d'ailleurs signaler que la
répétitivité de certaines actions ou attitudes dans le
comportement de l'utilisateur est le gage de la réussite de tels agents,
autrement ils ne pourraient rien apprendre de ce comportement).
2.3.3
Les agents mobiles
Les agents mobiles sont des processus capables de se
déployer à travers de grands réseaux d'information comme
Internet, interagissant avec différents hôtes, recueillant des
informations pour leurs propriétaires et accomplissant des tâches
qui leur sont confiées. Ces tâches vont de la réservation
de vols d'avions à l'administration de réseaux de
télécommunications. Il faut dire que la mobilité n'est pas
une caractéristique des agents, les agents mobiles sont des agents du
fait qu'ils sont autonomes et coopèrent (certes différemment des
agents collaboratifs). Un agent mobile peut ainsi communiquer ou
coopérer avec un autre agent chargé d'informer les autres agents
de la localisation de ses attributs et méthodes ; ceci dispense cet
agent de rendre publique toutes les informations et données le
concernant. Les raisons qui poussent à recourir aux agents mobiles sont
les suivantes :
·
réduction des coûts de communication : en
permettant à l'agent d'aller s'exécuter là où se
trouvent les informations brutes, on évite ainsi de les rapatrier sur
son système local pour n'en utiliser qu'une petite partie ;
·
l'insuffisance des ressources locales : les capacités de
traitement et de stockage peuvent être limitées au point de
justifier l'usage des agents mobiles qui iraient s'exécuter sur des
systèmes distants plus performants ;
·
une coordination plus facile : il est plus simple de coordonner
un nombre de requêtes distantes et d'en collecter simplement les
résultats ;
·
un traitement asynchrone : on peut initialiser ses agents
mobiles et faire autre chose pendant que ceux-ci s'exécutent ;
·
une architecture distribuée plus flexible : les agents
mobiles offre une architecture distribuée unique.
|