Dans cette partie, les systèmes multi-agents, fondés sur l'architecture
VOYELLES, sont modélisés par des événements et des états. Cette
modélisa-tion est fondée sur la représentamodélisa-tion des entités (agents et environnement) par
des automates.
Ensuite, nous dénissons le modèle d'observation pour les SMA. A ce
ni-veau, la visualisation fondée sur les traces est choisie. En eet, cette technique
permet d'obtenir le plus d'informations sur le comportement d'un SMA.
Pour les méthodes d'instrumentation, nous adoptons une technique
hy-bride composée de l'instrumentation directe du code source du programme et
de l'instrumentation de la bibliothèque de communication. Ce choix est un
compromis entre la facilité de l'implantation et la diminution de l'inuence de
collecte des traces sur l'exécution des SMA.
Puis, nous traitons de la collecte des données et l'analyse de ces données.
Ces deux étapes sont plutôt dans la phase technique et seront discutées en
détails dans le chapitre 5.
Ensuite, nous traitons du problème de présentation des données de
l'exé-cution d'un SMA. Nous nous sommes orientés vers l'utilisation des outils de
visualisation développés et utilisés dans les systèmes distribués/parallèles, vue
la similarité avec notre domaine et la diculté de création d'un outil de
visua-lisation dédié aux SMA dans le cadre de notre travail. Pour démontrer cette
similarité nous présentons le modèle de calcul des programmes parallèles (Le
modèle de programmation oerte par ATHAPASCAN-0) en le comparant avec
le modèle de calcul des SMA fondé sur VOYELLES.
Par la suite, nous listons les critères du choix d'un outil qui s'adapte au
SMA. Le choix de cet outil est lié à ses caractéristiques d'extensibilité et de
modularité. Alors, un outil adapté aux SMA doit avoir:
La possibilité de représenter l'exécution des systèmes durant une longue
période;
La possibilité de traiter la visualisation de l'exécution pour un grand
nombre des entités constituant le système;
La possibilité d'ajouter des nouvelles fonctionnalités et d'étendre les
fonc-tionnalités existantes sans la nécessité de changer en totalité l'outil;
La possibilité de visualiser des entités qui se créent et se détruisent durant
l'exécution du système.
Section 3.3 : Visualisation de l'exécution dans un SMA: résultats et
discussion
Pour conclure, l'adaptation de la visualisation aux SMA, la modélisation
des SMA selon le modèle événement/état et les résultats obtenus suite à l'étape
de la présentation des données montrent l'apport de cette technique pour :
L'analyse du comportement pour un SMA;
La détection des erreurs du comportement et le débogage;
La présentation des indices de performance;
L'utilisation des ressources par les diérentes entités;
La distribution des tâches sur les entités;
La comparaison entre diérents systèmes résolvant le même problème.
Ces résultats sont validés une première fois sur l'application
Proies/Préda-teurs.
Chapitre 4 : Étude de la communication dans l'exécution d'un SMA
Dans ce chapitre, nous montrons que l'étude et la modélisation des
caracté-ristiques, spéciques aux SMA, sont intéressantes pour élaborer des indices de
performances au niveau de l'ensemble des entités et les liens entre elles. Cette
étude est une tâche complémentaire à la technique de visualisation pour avoir
une vision globale et complète sur le comportement des SMA.
L'étude et l'évaluation de la plupart des caractéristiques, représentant
l'en-semble des entités, se fondent sur l'interaction (chapitre 2). Dans ce chapitre,
nous considérons, comme exemple des caractéristiques à modéliser,
l'interac-tion simple fondée sur la communical'interac-tion, et les conversal'interac-tions entre agents.
Nous nous concentrons donc sur la dimension interaction de l'architecture
VOYELLES [Demazeau (1995)]. Cette dimension représente la suite de la
di-mension agent traitée dans le chapitre précédent.
TABLE DES MATIÈRES 5
Ce chapitre est composé de deux parties. Dans une première partie, une
communication est traitée comme une unité isolée de tout ce qui se passe avant
son émission et après son traitement.
Dans la deuxième partie, nous considérons les conversations, l'ensemble
des communications conformes à un protocole, pour étudier les séquences des
communications plutôt que des communications discrètes.
Section 4.1 : La communication comme une problématique
d'évalua-tion
Section 4.1.1 : Modélisation de la communication
La plupart des travaux d'évaluation dans le domaine des SMA traitent de
la communication comme critère de comparaison entre les diérents systèmes
[ Mylopoulos et al. (2002a); Cernuzzi et Rossi (2002); Davidsson et
Johans-son (2002); Jurasovic et al. (2006a); Bincheng et al. (2004), etc.]. La liste des
travaux montre l'importance de la communication comme un critère
d'évalua-tion. Toutefois, la communication est considérée comme un critère de base. Des
caractéristiques plus complexes (coopération, coordination, ...) sont évaluées
sur la base de sa mesure (une étude au niveau de coopération entre les agents
nécessite une étude de base sur les communications).
Trois problèmes peuvent être élevés dans les évaluations des SMA fondées
sur la communication:
Le problème de la subjectivité, en associant une valeur comme résultat
de la fonction de quantication de la communication par l'évaluateur;
Le problème de mesure de la quantité des communications plutôt que la
mesure du poids de l'information portée par les unités de communication;
La considération de la communication comme un critère lié au domaine
d'application et pas comme un composant fondamental des SMA.
Comme conséquence de ces problèmes, l'évaluation des SMA au niveau de
leurs communications soure des nombreuses lacunes :
La mesure de la quantité de communication plutôt que leurs poids ne
permet pas de comparer les diérents systèmes entre eux. La quantité
des communications varie d'un système à un autre selon l'approche de
conception utilisée;
Les approches d'évaluation de la communication sont dépendantes du
domaine d'application ce qui rend leurs utilisations ailleurs dicile;
La subjectivité empêche les évaluations de reéter la réalité de
Donc nous distinguons certaines situations liées à l'évaluation de la
com-munication, qui sont à la base des problèmes d'évaluations cités ci-dessus. Ces
situations sont distinguées dans le but de proposer une approche indépendante
du domaine d'application en essayant de minimiser l'eet de subjectivité dans
l'évaluation. Les situations de la communication distinguées sur plusieurs SMA
sont :
L'eet d'une unité de communication dans un système est équivalent à
"n" unités de communication dans un autre système. (problème 1)
Les unités de communication reçues et s'avérant non pertinentes pour
l'agent (problème 2)
Section 4.2 : Approches d'évaluation
La première approche traite de la quantité des communications. Cette
ap-proche est utilisée dans les évaluations traitant de la communication réalisées
sur les SMA. Le but dans cette approche est de comparer l'évolution de
com-munications durant l'exécution, par la mesure du nombre des messages
échan-gés entre les agents. Cette approche est intéressante pour identier les liens
entre les diérents agents et la comparaison entre l'utilisation des canaux de
communications par les agents.
Une première idée, pour proposer une approche traitant de la quantité des
informations portées par les messages, est de diviser l'ensemble des messages
reçus par un agent en des sous-ensembles ayant le même type, ayant alors le
même eet sur l'agent. Ensuite, le poids est associé à un message selon son
type. La distinction entre les types des messages dépend de l'application des
SMA à évaluer.
Le problème principal de cette approche est que la quantité des
informa-tions portées par une unité de communication est considérée comme statique
et xe selon le type. Dans la majorité des applications, le même message peut
avoir deux eets diérents à deux instants diérents.
Ensuite, nous proposons les solutions pour les problèmes présentés. Pour
traiter du problème 2, nous introduisons la notion de communication
perti-nente où un message pertinent est un message qui change l'état mental d'un
agent ou déclenche une action. La solution proposée pour le problème 2 est de
mesurer la quantité d'information pertinente plutôt que de mesurer la quantité
d'information totale. En ce qui concerne le problème 1, une fonction Q(m) est
dénie pour aecter un poids aux messages pertinents (le poids 0 est aecté
aux autres messages). Une étude sur Q(m) est faite pour élaborer la relation
entre les messages reçus et les eets sur les agents. Cette relation est établie
en tenant compte du changement de l'état mental de l'agent et des actions
TABLE DES MATIÈRES 7
déclenchées lors de la réception des messages. Cette dernière approche est noté
"approche poids des messages".
Section 4.2.2 : Étude des communications dans les conversations
La communication, dans ce qui précède, est traitée comme une unité isolée
de tout ce qui se passe avant son émission et après son traitement. L'aectation
du poids est établie en tenant compte du type de l'action déclenchée et l'eet
de l'unité de communication reçue sur les connaissances de l'agent. Malgré les
problèmes traités par les approches présentées dans les sections précédentes,
cette approche ne tient pas compte du fait qu'une unité de communication
est impliquée dans une chaîne des communications. Les communications sont
conçues pour établir un consensus entre les entités dans le SMA. L'eet de
cette unité de communication sur l'agent et le SMA peut être alors nul si le
consensus demandé n'est pas établi.
Dans cette partie, nous considérons la communication comme une unité
contenue dans une chaîne des communications. L'importance de cette unité
est prise de celle de la chaîne impliquée. Le problème majeur est de
spéci-er et de délimitspéci-er les chaînes de communications dans un SMA. Pour cela,
nous présentons d'abord les notions de conversation, de protocole de
commu-nication. Une conversation est une séquence des messages, liés par un sujet et
conformément à un protocole d'interaction, échangées entre plusieurs agents.
Un protocole d'interaction est un ensemble de règles plus ou moins génériques
qui sont partagées (conventions sociales) par les agents.
Section 4.3 : Analyse des communications: résultats et discussions
Nous présentons dans cette partie l'illustration de notre approche sur
l'ap-plication proies/prédateurs.
Chapitre 5 : MAS-Paje Voyelles: Architecture et implantation
Nous démontrons dans ce chapitre l'applicabilité du modèle formel déni
(chapitre 3) selon 3 dimensions:
Sélectionner un outil de visualisation qui réponde aux critères du choix
discutés dans la partie 3 du chapitre 3;
Réaliser la dimension technique de la visualisation des SMA;
Proposer une architecture d'un système qui gère le processus de
visuali-sation de l'étape de collecte de données jusqu'à l'obtention d'un chier
de traces compatible avec le format accepté par l'outil de visualisation
choisi.
Ce chapitre est divisé en 3 parties. Dans la première partie, nous
présen-tons un comparatif entre diérents outils de visualisation candidats pour la
visualisation des traces des SMA. Ensuite, après la discussion des motifs de
choix, nous présentons l'outil de visualisation Paje. Cet outil est utilisé dans
la suite pour visualiser les SMA. Le rôle, l'architecture et le format de données
acceptés par cet outil seront ensuite présentés.
Dans la deuxième partie, nous proposons d'automatiser la tâche de
visua-lisation en construisant un système de visuavisua-lisation des SMA (MAS-Paje).
Une architecture de MAS-Paje est proposée et les moyens techniques qui la
supportent sont choisis et argumentés. Finalement, nous présentons le rôle de
MAS-Paje dans la visualisation d'un SMA sur l'application Proies/Prédateurs.
Chapitre 6 : La mise en oeuvre de la solution proposée pour évaluer
la communication
Dans ce chapitre, nous présentons les étapes de la réalisation de la
plate-forme d'évaluation de la communication dans un SMA. Cette plate-plate-forme est
un ranement de MAS-Paje. Nous nous appuyons sur les informations
collec-tées par MAS-Paje et obtenues sous forme d'un chier (sous le format SDDF
accepté par Paje) et nous étendons les modules de MAS-Paje pour obtenir
et pour traiter des informations supplémentaires (les informations concernant
l'eet de la communication sur l'agent et les conversations dans les SMA).
Puis, nous traitons le cas de l'évaluation des conversations.
Section 6.1 : Plate-forme d'évaluation de la communication
Dans cette partie, nous traitons le problème de mise en oeuvre de la
plate-forme d'évaluation de la communication, en étendant les travaux faits au niveau
de MAS-Paje dans le chapitre précédent. Nous précisons les tâches à réaliser
par la plate-forme, assurant une évaluation de communication selon les
ap-proches: approche classique, approche type, approche poids des messages et
conversations en se fondant sur l'étude théorique du chapitre 4. Des
traite-ments supplémentaires au niveau de la collecte des données, du traitement et
de l'analyse de ces données sont nécessaires.
Plate-forme d'évaluation des conversations
Dans cette partie, nous discutons l'architecture générale des tâches à
réa-liser par la plate-forme eectuant l'extraction de l'ensemble des conversations
à partir d'un chier de traces d'exécution d'un SMA. Les tâches sont
présen-tées dans la gure 1. Comme pour les communications, nous considérons que
cette plate-forme est une extension de MAS-Paje. Nous discutons les
modi-TABLE DES MATIÈRES 9
cations au niveau de la collecte des données et du traitement et l'analyse de
ces données. Puis, nous présentons les détails techniques.
Fig. 1 Tâches à réaliser pour étudier les conversations
Conclusion
Dans ce chapitre, nous avons montré l'applicabilité des solutions présentées
pour modéliser et analyser la communication et les conversations dans un SMA.
Nous avons proposé des plates-formes qui sont des ranements de MAS-Paje
pour réaliser l'analyse de ces caractéristiques. Ce travail a complété la tâche
réalisée par MAS-Paje dans le chapitre précédent. En plus de l'architecture
interne des agents, nous avons proposé l'analyse de certaines des
caractéris-tiques représentant les liens (communications simples et conversations) entre
les agents. Ce travail nécessite d'être enrichi par l'étude et l'analyse des autres
caractéristiques SMA [Demazeau (2004b)], utiles pour l'évaluation des SMA.
Chapitre 7 : Expérimentation de MAS-Paje sur l'application de
col-lecte de minerai
Dans le chapitre 7, nous présentons dans un premier temps l'utilité de la
visualisation pour obtenir des informations sur les comportements des agents
et l'utilisation des ressources par les diérentes entités du SMA. Ces
informa-tions servent à détecter des problèmes dans l'architecture interne des SMA et
d'extraire des schémas signicatifs de l'exécution. Dans un deuxième temps,
nous utilisons les informations de visualisation pour comparer diérents
appli-cations SMA résolvant le même problème.
Ce chapitre est constitué de quatre parties, la première partie présente les
critères pour choisir le SMA à expérimenter, le problème de collecte de minerai
choisi en fonction de ces critères, les arguments de choix de ce problème et la
présentation d'un système multi-agents résolvant le problème. Puis, le
proto-cole expérimental et le modèle de visualisation de ce système sont détaillés
dans une deuxième partie. Ensuite, dans la troisième partie nous présentons
les résultats de visualisation de l'exécution de ce système en analysant ces
ré-sultats. Finalement, nous présentons en bref des visualisations sur deux autres
systèmes résolvant le même problème et nous exposons un comparatif des trois
systèmes présentés.
Chapitre 8 : Expérimentation et Évaluation de l'application de
col-lecte de minerai au niveau de la communication
Le but de ce chapitre est de valider l'idée principale défendue que l'étude
des communications complète le travail réalisé sur la visualisation des SMA
et facilite l'étude et la compréhension de comportements des entités dans un
SMA. Dans ce chapitre, Nous démontrons l'intérêt de l'évaluation de la
com-munication et des conversations pour:
La détection des problèmes au niveau des communications
(communica-tions non pertinentes, poids des communica(communica-tions);
L'importance de la visualisation des communications dans un SMA et
le couplage entre l'évaluation de la communication et la visualisation de
l'exécution;
Puis, nous traitons la modélisation des protocoles de communication et l'étude
des communications selon leurs rôles durant les conversations.
Ce chapitre est constitué de 2 parties. Dans la première partie, nous
pré-sentons la dimension communication pour l'application de collecte de minerai.
La deuxième partie traite de la visualisation et l'étude de la communication et
des conversation pour cette application.
Chapitre 9 : Évaluation du travail
Dans ce chapitre, nous présentons une évaluation du travail réalisé. Nous
présentons les choix adoptés durant le travail et nous discutons les extensions
possibles au niveau de théorie et au niveau de technique.
Ce chapitre est divisé en 4 parties. Dans la première partie, nous présentons
une évaluation du modèle de visualisation présenté dans le chapitre 3. Dans
la deuxième partie, nous présentons une évaluation du modèle de l'évaluation
de la communication présenté dans le chapitre 4. Dans la troisième partie,
nous présentons une évaluation de l'architecture de MAS-Paje présenté dans
les chapitres 5 et 6. Finalement, nous concluons notre chapitre.
11
Chapitre 1
Introduction générale
L'Intelligence Articielle (IA) est un domaine de l'informatique dont le
but est de concevoir des systèmes capables de reproduire le comportement
intelligent de l'humain dans ses activités de raisonnement. L'approche classique
de l'Intelligence Articielle aborde la résolution d'un problème d'une manière
centralisée. Un seul processus se charge d'accomplir les tâches, de gérer les
connaissances et de manipuler les ressources. Cette approche centralisée a été
remise en cause vu les inconvénients qu'elle présente.
Ces études ont donné naissance à l'Intelligence Articielle Distribué (IAD)
où les processus de raisonnement sont distribués sur plusieurs entités. Les
Sys-tèmes Multi-Agents (SMA), issus de l'IAD, cherchent à étudier la manière de
répartir un problème sur un certain nombre d'entités autonomes et coopérantes
appelées agents. Ces systèmes étudient également la manière de coordonner
les comportements intelligents de ces agents selon des lois sociales [Demazeau
(1995)].
Les caractéristiques que possèdent les SMA (distribution de l'intelligence,
autonomie, coopération et coordination entre les diérentes entités, etc.
[Dema-zeau (2004b)]) n'ont fait qu'élargir leurs domaines d'applications. Par contre,
cette multiplicité a rendu les SMA complexes, diciles à analyser dans leur
comportement et délicats à évaluer dans leurs performances.
La performance est un critère très important qu'il faut prendre en
consi-dération lors de la conception et du développement de tout système
informa-tique. En eet, les concepteurs et les développeurs visent toujours à construire
le système qui permette d'atteindre les meilleurs résultats à moindre coût.
Reed [Reed (1994)] remarque que les programmeurs admettent des
perfor-mances "acceptables" et ne cherchent pas à optimiser leurs programmes pour
atteindre des meilleures performances. Le domaine des SMA soure du manque
de travaux en matière d'évaluation des performances. Pour toutes ces raisons,
il est nécessaire de développer ou d'adapter les terminologies et les techniques
d'évaluation an de les appliquer dans les SMA.
La visualisation de l'exécution est une des techniques largement utilisées
en évaluation des performances pour des systèmes parallèles
[ChassinDeKer-gommeaux et al. (2001)]. Cette technique fait partie de la phase de mise au
point pour les performances. Elle constitue une aide importante pour la
com-préhension des comportements et par conséquent pour l'étude, la comparaison
et l'amélioration des performances des systèmes informatiques.
Dans le domaine des SMA, la visualisation de l'exécution n'a jamais été
traitée véritablement comme un problème de recherche. C'est dans le cadre
d'une tentative de construction d'un processus de visualisation de l'exécution
d'un SMA que s'inscrit ce travail.
Plan du manuscrit de thèse
Le manuscrit de thèse est organisé en dix chapitres dont le chapitre 1 est
cette introduction.
Le deuxième chapitre présente le contexte de travail et l'état de l'art relatif
Dans le document
Analyse des performances d'un système multi-agents par visualisation
(Page 16-59)