Vous êtes sur la page 1sur 3

Une approche basée agents pour les SIGs répartis

Hichem DAICHE1, Okba KAZAR2


Département d’informatique
Université de Biskra
07000, Algérie
1
daicheh@yahoo.fr
2
Kazarokba@yahoo.fr

Résumé : L’évolution actuelle de l’informatique a souvent source d'encombrement du réseau car le volume
permis de résoudre certains problèmes d’automatisation d'information qui transite entre les différents utilisateurs
des tâches. Parmi les points marquants de cette localisés dans des sites différents est très important. Les
évolution, on peut citer les progrès liés à la distribution transactions entre les différents sites peuvent être
des données. Aujourd’hui tout est réparti ou distribué et concurrentes. Il apparaît donc nécessaire, de mettre en
Internet en est le meilleur exemple. Cette évolution a fait œuvre des mécanismes pour gérer les transactions entre
apparaître de nouveaux problèmes comme ceux liés à la les différents sites. L’étude des transactions trouve un vif
distribution des données et à la gestion des intérêt dans le domaine des bases de données et des
communications ou transactions dans un tel système. applications réparties. L’étude des transactions trouve un
Dans notre travail, nous proposons un modèle pour la vif intérêt dans le domaine des bases de données et des
gestion des transactions tout en essayant de l’appliquer applications réparties ou distribuées. Pour ces dernières,
dans le système information géographique répartie les transactions peuvent nécessiter un grand nombre de
« SIGR ». données situées dans des serveurs différents, il en résulte
Mots clés: Agent, Système multi agent, SIG, des délais de réponses non négligeables, surtout en cas
transactions, Jadex et UML. d'encombrement. D'où l'apparition des transactions car
elles font apparaître des délais de réponses dans les
1 INTRODUCTION transactions. Il serait important de proposer des
mécanismes de gestion des transactions longues.
Un Système d'Information Géographique (SIG) est un Plusieurs solutions existent parmi lesquelles :
outil permettant de manipuler des bases de données • La gestion par files d'attente: elle est nécessaire à la
géographiques, il permet de représenter l'environnement gestion d'un grand nombre de transactions.
et les infrastructures géographiques existantes : • Une deuxième approche consiste à décomposer une
communes, rues, départements, régions, ou même transaction en une hiérarchie de sous transactions
massifs montagneux (sous forme de lignes de niveau). pouvant s'exécuter en séquence ou en parallèle
C'est la raison pour laquelle ce type d'outil a été (Transactions Imbriquées).
historiquement et reste très utilisé pour les études
environnementales. D’autre part, un système multi-
agents est un système distribué composé d'un ensemble
d'agents. Chaque agent a des informations ou des
capacités de résolution de problèmes limités. La notion
d'agent est utilisée dans beaucoup de domaines. Ce
paradigme est devenu incontournable surtout pour
modéliser des systèmes complexes et des systèmes inter
opérables. Dans ce papier, nous avons exploiter une
approche qui permet de coupler un système multi-agents
(SMA) avec un système d’information géographie
répartie (SIGR) pour faciliter la recherche de
l’information à travers des SIG répartis en garantissant la
bonne gestion des transactions de recherche
d’information. Chaque agent prend en charge une tache Figure 1 Transactions Imbriquées dans un agent simple
spécifique dans le processus par rapport à l’ensemble.
Nous verrons son application dans la suite avec les
2 LES TRANSACTIONS ET LES AGENTS agents cognitifs BDI. Une transaction étant définie
comme une unité de travail ayant les propriétés
L'évolution actuelle de l'informatique fait apparaître le d’ACIDité (Atomicité, Cohérence, Isolation,
besoin pour les utilisateurs d'être connectés à un grand Durabilité). Une transaction peut être imbriquée et
réseau. L'échange des données entres les utilisateurs est étendue à plusieurs agents : un agent peut exécuter une
transaction (plan), et faire exécuter certaines étapes de classe Plan: Elle représente l’action à accomplir sous
son plan par d’autres agents, au niveau de ces agents, les forme de plan. La classe Message : classes définissant le
étapes deviennent des transactions, mais sont en réalité type de Message et les opérations sur ces Messages. La
des sous transactions pour l’agent initiateur de la classe Actions : Ensemble des plans à exécuter.
transaction. On peut alors affirmer qu’une pareille
transaction est distribuée [Paolo, 1999].

Figure 3 diagrammes de classe


3.3. Le modèle d'agents
Figure 2 Transactions imbriquées dans un système
Pour implémenter le processus décisionnel des agents
multi agent
Interface, Transaction et SIG nous nous sommes inspirés
du formalisme BDI (Belief, Desire, Intention) [Georgeff,
3 MODELISATION DES INTERACTIONS 1999], [Georgeff, 1995] et plus particulièrement de
l'architecture Procedural Reasoning System (PRS)
ENTRE AGENTS POUR DES SIGRS [Georgeff, 1987]. Cette architecture est illustrée en
Figure 4 qui correspond à l'exemple de l'agent Interface.
Une interaction « est une mise en relation dynamique de Elle comporte :
deux ou plusieurs agents par le biais d’un ensemble
d’actions réciproque. Les interactions s’expriment ainsi 3.3.1 Une base de croyances
à partir d’une série d’actions dont les conséquences Elle consiste en l’information de l’agent sur son
exercent en retour une influence sur le comportement environnement. Nous pouvons la modéliser comme les
futur des agents ». [Jacques, 1995]. enregistrements dans une base de données relationnelle.
Un ensemble d'objectifs courants (Desires) : Ce sont des
3.1 La communication entre agents
tâches que l’agent doit suivre. Les objectifs comportent
Les interactions entre agents passent par l’émission et la l’identifiant du plan à exécuter. Ils sont modélisés par
réception de messages. Ces messages se concrétisent par une simple base de données.
dans le cadre d'une ontologie. La structure d'un message
est caractérisée par un émetteur et un destinataire, un 3.3.2 Une bibliothèque de plans
performatif (type d’échange (demande, refus, réponse,
redemande, …)), un contenu qui met en oeuvre des Le plan représente un ordre d’exécution d’une tâche,
phrases bien construites en fonction d’un langage c’est une agrégation de variables et d’étapes. Chaque
commun. Elle s’inspire de la structure définie dans les étape manipule les croyances, envoie et reçoit des
normes FIPA mais substitue aux langages généraux un messages. Un plan peut aussi contenir un autre plan
langage dédié au problème posé. comme un sous plan. Le plan exprime les conditions à
vérifier pour son déclenchement et son plan d'action. Il
3.2 Organisation générale des agents peut modifier la liste des objectifs courants, envoyer des
Le modèle général est représenté par le diagramme de messages, décider des actions, réactualiser base de
classes simplifié UML (Figure 3). On distingue les croyances… Ce plan d'action est exprimé sous forme de
classes principales : la classe Interface, la classe règles de décision sous la forme Si…alors (logique
Transaction et classe SIG. Elles héritent d'une classe des propositions). Une bibliothèque de plans c’est
générique Agent qui est définie par : l’ensemble de ces plans qui correspondent à l’ensemble
 Un type (Transaction, Interface,…) des stratégies dont l’agent dispose pour atteindre ses
 Des plans, des objectifs, des croyances, des intentions. objectifs.
C’est elle qui représente l’agent BDI qui tourne sur
chaque site. 3.3.3 Les intentions
Les classes Croyances et Buts: sont respectivement la
base de données des croyances (Beliefs) et des désirs Les intentions correspondent aux sous-ensembles de
(Desires). Ce sont des vecteurs, ils peuvent être plans (et sous plans) en attente d’exécution à un moment
représentés par une base de données relationnelle. La donné. Ce sont des plans provenant de la bibliothèque de
plans qui sont mis en « attente » en fonction de la
situation en cours. Elles sont vues comme une pile
d’exécution, soit en parallèle soit en série. Le module de
décision : en fonction des objectifs et des croyances en
cours, il recherche éventuellement les plans aptes à
satisfaire de nouveaux objectifs en les plaçant dans la
liste des intentions. Il gère l’exécution des plans qui
satisfont leurs conditions de déclenchement.

Figure 5 Agent Interface

5 CONCLUSION ET PERSPECTIVES
Le potentiel de la technologie des agents est prometteur,
dans un futur proche ce sera l’élément essentiel dans le
développement des applications réparties, tout en
augmentant la complexité et la puissance de ces
Figure 4 un modèle pour agent cognitif BDI applications. C’est en accord avec cette technologie que
nous proposons dans le présent travail un modèle de
gestion des transactions dans un SIG. A travers ce
4 ETUDE DE CAS système nous avons montré comment les concepts et les
technologies utilisés interagissent, et de quelle façon les
Nous avons validé notre approche en utilisant systèmes multi agents apportent au SIG le facteur temps
l’environnement JADEX. C’est un environnement réel. Les perspectives sont nombreuses mais nous citons
logiciel pour la création d’agents dirigés par des buts l’utilisation des ontologies dans la représentation des
suivant le modèle BDI. Un agent Jadex est constitué de connaissances au niveau des SIGs, le développement
deux composants, un fichier de définition de l’agent d’un module assurant l’ajout de nouveau SIG sans
(ADF) en XML étendu dans lequel sont spécifiés les difficulté du fait que l’architecture et le fonctionnement
croyances, buts et plans, l’autre composant contenant du des agents SIG sont identiques.
code procédural. La partie procédurale des plans est
implémentée en Java et a accès aux composants BDI par
le biais d’une API [Alexander, 2007]. Le système qui REFERENCES
nous avons proposé comprend quatre agents : agent
Interface (AI), agent Transaction (AT), et deux agents [Alexander, 2007]Alexander Pokahr, Lars Braubach,
SIG. Jadex user guide.
[Georgeff, 1999] Georgeff, M., Pell, B., Pollack, M.,
- Agent Interface: Il sert d’interface entre l’utilisateur et Tambe, M., & Wooldridge, M. The Belief-Desire-
le système coopératif. Il permet à l’utilisateur Intention Model of Agency. In Intelligent Agents V (eds
de définir sa propre transaction en utilisant les J.-P. Müller, M. Singh & A. Rao), Vol. 1365. Springler-
outils d’exploitation qui sont proposé à Verlag Lecture notes in AI.
l’interface (figure 5). [Georgeff, 1987] Georgeff, M. & Landsky, A.L.
- Agent Transaction: Il a pour tâche principale le Reactive reasoning and planning. In Proceedings of
traitement et l’analyse d’une transaction qu’il AAAI-87, pp. 677-682, Seattle, USA.
reçoit de l’AI. [Georgeff, 1995] Rao, A. & Georgeff, M.BDI Agents:
- Agent SIG: un agent SIG est vu comme étant une From Theory to Practice. In International Conference of
interface entre le système gestion de base de MultiAgent Systems (ICMAS), pp. 39-65.
données SGBD et l’agent transaction. [Jacques, 1995] Jacques Feber. Les Systèmes multi-agents
Après le démarrage de système, l’utilisateur demande des vers une interaction collective.
informations à l’aide de l’interface proposé. Le système [Paolo, 1999]Paolo Busetta, A Transaction Based Multi-
décomposer la transaction mère en sous transaction, Agent Architecture, Master Thesis, Department of
connecter au serveur SGBD soit « SIG 1» ou « SIG 2 », il Computer Science, the University of Melbourne,
traite les sous transactions, le résultat de traitement est Australia.
affiché sur un carte géographique pour l’utilisateur.