Vous êtes sur la page 1sur 9

Série n°4 

: 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.

On résoudre ce problème par un SMA, répondre à ces questions


Question 1:
Chaque personne choisit un restaurant au hasard parmi les M possibles.
1- Décrire ce comportement
2- A quoi aboutirait dans ce cas le fait que chaque agent sache que tous les autres
raisonnent comme lui?
Question 2:
Chaque personne choisit un restaurant en fonction du résultat de la veille.
1- Y a-t-il un comportement qui garantit une solution du premier coup? Sous
quelles hypothèses?
2- Quel est son inconvénient?
Question 3:
Chaque personne choisit de façon à maximiser la probabilité de trouver une place.
1- Décrire le comportement dans ce cas.
2- A quoi aboutirait dans ce cas le fait que chaque agent sache que tous les autres
raisonnent comme lui?

Solution

- Une personne est modélisée par un agent


- Les places dans les restaurants sont les ressources

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

Exercice n°4 : Problème des philosophes


Cinq philosophes orientaux partagent leur temps entre l’étude et la venue au réfectoire
pour manger un bol de riz. La salle affectée à la sustentation des philosophes ne
comprend qu’une seule table ronde sur laquelle sont disposés un grand plat de riz
(toujours plein), cinq bols et cinq baguettes. »
Fig : la table des philosophes
- Quelles sont les relations des agents dans ce système
- Modéliser ce problème (n philosophes) par un SMA, en décrivant :
- Environnement
- Agents
Solution

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

Modélisation d'un SMA :


- on décrit les données de l'environnement
- on définit les actions sur l'environnement (actions « exogènes »)
- on définit les buts/rôles des agents
- on définit les données et actions des agents
I. Présentation
Environnement
- N couverts
- État libre ou pris
Agents
- 2 couverts accessibles
- État « faim »
Manger
Penser
- But : penser
II. Modélisation
II.1. Modélisation d’environnement
- Choix du type de processus → thread
- Choix de la perception → active
- Données

- Actions sur l’environnement (actions exogènes) : prendre et lâcher couverts


Prendre : [1,N] → [0,1] ( changements états couverts)
Attention : agent i « prend » couvert j≠i
Lâcher : [1,N] → void
Attention : agent i « pose » couvert j≠i

II.2. Modélisation d’agents


Choix du type d'agent → cognitif, orienté tâche
- Modélisation des données
Etat initial

Modélisation des actions


Agent implémentation

Exercice 5
Dans le ca des proies et prédateur, et pour définir le comportement des prédateurs,
imaginez différentes solutions.

Les Aspects organisationnels

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 fonctionnelle : explicite comment un SMA atteint généralement son but


global (décomposition du but en plans, puis distribution de missions aux agents).

Spécification déontique : décrit les permissions et les obligations des rôles pour les
missions.

Solution

1.Approche DPS selon une analyse descendante


Définir les différentes fonctions du système à la conception:
- Doter les agents d’un système de détection de proie, …
- Élaborer des équipes de chasse
- Pré-allouer des rôles aux agents : prendre la proie par le Nord, le Sud, Est …

2. Approche SMA : organisationnelle


• Doter les agents d’un système de détection de proie
• Doter les agents d’un système de communication entre eux permettant le dialogue et
la prise de décision distribuée
• Les agents ont des buts et agissent rationnellement /t à ces buts (-détecter, -appeler
d’autres agents, -suivre une proie…)
• Ils désignent si nécessaire un leader pour organiser la répartition du travail et
coordonner les actions,

Résolution à l’exécution
= Coopération intentionnelle

3. Approche SMA : émergentiste


selon une analyse ascendante
• Les proies émettent un signal dont l’intensité décroit /t distance
• Ce signal joue un rôle d’attracteur pour les chasseurs
⇒ les chasseurs proches d’une proie augmentent leur tendance à se diriger vers elle
• Les chasseurs émettent un signal servant de « répulseur » pour les autres chasseurs
⇒ Les chasseurs ne s’agrègent pas et entourent la proie
⇒ Chaque chasseur est attiré par les proies et faiblement repoussé par les autres
chasseurs
Résolution à l’exécution
= Coopération réactive:
un simple effet de bord du comportement individualiste de chaque agent

Vous aimerez peut-être aussi