Académique Documents
Professionnel Documents
Culture Documents
: systèmes multi-agents
Exercice n°1
1. Donner une définition pour chaque terme suivant : Intentionnalité, Rationalité,
Engagement, Adaptativité, Intelligence.
2. Expliquer les deux notions « réactive et proactif ». Ce sont des notions reliées
aux objets ou aux agents ?
3. Quelle est la différence entre agent et objet
Solution
1. Définitions
- Intentionnalité : l’intention est un élément crucial du comportement
intelligent d’un agent, c’est la déclaration explicite des objectifs
individuels. Elle exprime donc la volonté consciente d’un agent
d’atteindre un but ou d’effectuer un acte,
- Rationalité : le principe de rationalité consiste à faire en sorte que «
si un agent sait que l’une des ses actions lui permet d’atteindre ses
buts, alors il sélectionnera cette action. Les agents rationnels
disposent de critères d’évaluer de leurs actions, et sélectionnent
selon ces critères les meilleurs actions qui leurs permettent de
prendre la meilleure décision.
- Engagement: l’engagement se présente comme l’un des concepts
clés de l’action collective dans le case de SMA cognitifs. Les
engagements caractérisent les dépendances (devoirs, contraintes,..)
qui lient les agents cognitifs par rapport à eux-mêmes, mais surtout
par rapport aux autres lorsqu’ils décident d’accomplir une action,
de rendre un service et, d’une manière générale, lorsqu’ils ont
l’intention de faire quelque chose.)
- Adaptativité : un agent adaptatif est un agent d’un haut niveau de
flexibilité, capable de contrôler ses aptitudes (de communication,
comportementale, etc) selon l’agent avec lequel il interagit
- Intelligence.
2. Réactive ou proactif
- Objet est une entité passive (réactive). Si personne ne demande la valeur
d’un attribut ou n’active une méthode de l’objet alors il ne se passe rien.
- Un agent est proactif : il possède en plus des attributs et méthodes, des
processus internes qui fonctionnent même en l’absence de sollicitation
externe. Un agent peut donc agir même si personne ne lui demandé.
Un agent est réactif aussi, il perçoit des stimuli provenant de son
environnement et réagit en fonction de ceux-ci.
3. la différence entre agent et objet est un débat qui fait couler beaucoup d'encre.
- La propriété d'autonomie d'un agent est une première différence entre les
deux paradigmes. Un objet est passif par nature et est activé sur réception
d'un message (typiquement la réception d'une invocation d'une de ses
méthodes). Il n'encapsule aucune capacité de choix d'actions. L'agent quant
à lui a un rôle à jouer au sein du système, qui justifie qu'il peut être amené
à exécuter des actions pour lui, même s'il est déjà en relation directe avec
d'autres agents. C'est un objet toujours actif.
- Cependant, cette idée de passivité de l'objet est remise en cause avec
l'introduction de la notion d'objet actif. Aussi la question se pose : "un
objet actif est-il un agent ?". Il est vrai que les notions se rapprochent, si on
fait abstraction de la proactivité et selon l'interprétation que l'on a des
caractéristiques d'autonomie, de capacité sociale et de réactivité. Ainsi un
objet distribué CORBA peut être considéré comme étant un agent
rudimentaire, c'est-à-dire autonome, social et réactif mais manquant
d'intelligence que nécessite la proactivité.
- Reste le degré de mise en œuvre de chacune des caractéristiques
énumérées. Sur l'aspect social, par exemple, nous avons mentionné qu'un
agent peut participer à plusieurs conversations simultanément. Cette
caractéristique, aisément concevable dans un contexte d'échanges de
messages, l'est beaucoup moins dans le contexte d'invocations de
méthodes qui est celui des objets. La réactivité d'un objet, quant à elle, est
de type évènement-action au sens où un objet réagit à des invocations de
méthodes.
- Le débat reste encore largement ouvert, mais il semble cependant que la
classification objet actif-agent s'estompe au profit d'une graduation dans
les caractéristiques exhibées par l'"entité" à qualifier. La question n'est plus
tant de savoir si on a à faire à un agent ou à un objet, mais plutôt d'évaluer
le degré d'autonomie, de réactivité, ou de sociabilité de ladite entité. C'est
ainsi que l'on voit fleurir des agents intelligents, des agents mobiles mais
aussi des objets mobiles, des objets actifs, etc. Ce foisonnement de termes
est à imputer au fait que la technologie agent présente de nombreuses
facettes et par conséquent mobilise plusieurs communautés scientifiques
(intelligence artificielle, informatique répartie à objet, génie logiciel) de
sensibilité différente.
- Même si un agent diffère d'un objet, cela ne signifie pas que les agents ne
sont pas composés à partir d'objets. Cette approche n'est pas seulement
défendue pas des organismes de standardisation comme l'OMG, elle est
également utilisée dans l'implémentation des plates-formes agent
l'infrastructure agent construite au dessus d'un système complexe orienté
objet.
Exercice n°2 : Problème d’allocation des ressources
Soit un groupe de N personnes devant aller dîner. Soit un ensemble de M restaurants,
chaque restaurant ayant une capacité d'accueil Ci, telle que la capacité totale des M
restaurants soit supérieur à 2 * N, mais chaque Ci est inférieur à N.
Chaque restaurant est occupé en temps normal, avec une certaine probabilité d'être
saturé.
L'ensemble des personnes connaît la capacité de chaque restaurant grâce au dépliant
touristique qu'elle a en sa possession.
Solution
Question 1
1- Les restaurants de faible capacité se rempliront au premier coup de fil.
Les restaurants de forte capacité se rempliront après plusieurs coups.
Tous les agents qui auront choisi un restaurant de capacité Ci>N/M au premier coup
de fil seront satisfaits. Les autres auront une probabilité d'échec d'autant plus élevée
que la capacité du restaurant est faible.
2- A rien, car leur comportement étant aléatoire, ils ne peuvent prendre en compte
cette information dans leur comportement.
Question 2
1- Si l'affluence est comparable d'un jour au suivant, le comportement consistant
à choisir le même restaurant que la veille garantit un succès en un coup.
2- Son inconvénient est de figer le système en attribuant un restaurant à chaque
agent.
Question 3
1- Le restaurant de plus forte capacité se remplira au premier coup de fil, le
suivant au second coup et ainsi de suite jusqu'à ce que tous les agents soient
casés. Le restaurant de rang i se remplira au i-ème coup de fil, et sera rempli
de clients ayant du passer i coups. Les petits restaurants seront les moins
remplis.
2- A une récursion infinie de raisonnement, ou à ce que les restaurants de plus
faible capacité soient remplis en premier. Le nombre moyen de coups passés
par chaque agent sera alors plus élevé que dans le premier cas.
Exercice 3
On peut représenter un SMA par une de ces communautés virtuelles que l'on trouve de
plus en plus dans les jeux vidéo actuels. Prenons l'exemple d'un jeu qui simulerait la vie
d'une famille.
Proposer une solution SMA
Solution :
Le SMA se décompose selon plusieurs dimensions.
- un environnement disposant d'une métrique. On peut considérer qu'il s'agit de la
maison et du jardin où vit notre petite famille.
- le SMA peut disposer d'un ensemble d'objets passifs sur lesquels peuvent intervenir
nos agents. Il s'agira de tous les objets qui équipent la maison, mais également de la
nourriture.
- Un SMA se compose d'agents. Ceux-ci, actifs et autonomes, interagissent avec leur
entourage (environnement, objets et autres agents). On identifie ces agents aux
membres de la famille.
- Ensuite, on ajoute un ensemble de relations entre les objets et les agents, ce qui
définit une organisation. On pourra par exemple exprimer les liens familiaux entre
les différents individus, mais également traiter des notions de propriétés (quel objet
appartient à qui ?).
- Enfin, on intègre un ensemble d'opérateurs qui permettent aux agents d'agir sur les
objets ou sur les autres agents (le fils peut manger un yaourt, promener son chien
ou parler à sa sœur), et de capteurs qui permettent aux agents de connaître les
changements de l'environnement et des autres agents (le yaourt est tombé par
terre, papa m'a demandé de sortir le chien).
Voici donc ce que l'on peut appeler un SMA. En informatique, l'agent est un
programme autonome possédant un ensemble de connaissances et agissant selon
des règles qui lui sont propres
Il y a interaction entre les agents mais pas de véritable communication 2, à moins que nos
philosophes ne se soient mis d’accord sur un protocole d’utilisation des baguettes
Exercice 5
Dans le ca des proies et prédateur, et pour définir le comportement des prédateurs,
imaginez différentes solutions.
L'organisation est définie comme un cadre d'activité et d'interaction, mis en place par la
définition de groupes, rôles et de leurs relations, et considérée comme l'ensemble des
relations structurelles dans un ensemble d'agents
Spécification structurelle : définit les relations entre les agents à travers les notions
de groupes, rôles et liens qui sont utilisés pour structurer un SMA selon trois niveaux:
individuel (comportements qu'un agent doit mettre en oeuvre lorsqu'il joue un rôle),
social (relations entre rôles), et collectif (agrégation de rôles dans des structures).
Spécification déontique : décrit les permissions et les obligations des rôles pour les
missions.
Solution
Résolution à l’exécution
= Coopération intentionnelle