WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Conception d'un système d'agents mobiles pour l'accès aux données réparties : cas du multimédia.

( Télécharger le fichier original )
par Cédric Pérez DONFACK
Ecole Nationale Supérieure Polytechnique/Université de Yaoundé I - Master 2 Recherche option Systèmes répartis 2008
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

III.4. Spécification du schéma agent mobile collaboratif

III.4.1 Réseau de Pétri (Voir annexe3)

III.4.2 Analyse du système

Nous cherchons à representer et analyser le fonctionnement et les interactions entre les divers sites de notre schema organisationnel (figure8). Ce schema dispose d'un site client et des sites distants. Le client (agent principal) souhaite s'interconnecter avec les autres sites pour faire migrer des agents mobiles (Aux sens SMA) afin de recuperer des documents multimedia. Aussi, c'est aux agents, arrives sur les sites distants, de reconstituer le document à telecharger. Toutefois chaque site distant, pour reconstituer un document, devra se connecter successivement sur deux machines distantes. Premièrement pour faire migrer un agent et deuxièmement pour etablir une communication.

Ainsi, notre système contient deux cas d'utilisations.

· Migration d'un agent.

· Communication entre agents.

III.4.3 Formalisme

Soit R le reseau de Petri à objets et interprete (La synchronisation "Gestion des rendezvous" est la principale raison pour laquelle notre reseau de Petri est interprete) representant notre formalisme. R est defini par le uple R = (P,T,F,K,J , M, W, C)

· P est l'ensemble (fini) des places : P = {Si, Svi / i E N}

· T est l'ensemble (fini) des transitions : T = {Ti/ i E N} oil Ti est un ensemble d'evenements necessaires pour le franchissement.

· P \ T = 0;

· F est la relation du flot d'execution: F g P x T u T x P;

F = {Si --> Ti, Svi --> Ti,Ti,Svi,Ti,Si / i E N}

· K represente la capacite de chaque place: K E P9Nat U{tu}

V j E J, V a E P, K(a(j)) fii avec les critères suivants : Si j E {doc, audio, video, Texte, Image}; fii = D

Si j E ta--doc, a--video, a--audio, a--doclj ; fii = 1

· J représente les jetons. Un élément de J peut être soit un agent (Cas de la mobilité), soit des données (cas de la communication): J= {doc, a_doc, vidéo, a_vidéo, audio, a_audio, texte, image}. I est la variable qui renseigne sur le nombre d'instances d'un élément de J. Elle est initialement égale à zéro et locale à une place donnée.

· M représente le marquage initial de chaque place: M E P4Nat U{co} et vérifie la condition Vs E S: M(s) K(s).

· W représente le poids de chaque arc: W E F4Nat U{co};

V j E F, W(j) = Nat

· C représente les contraintes liées à la synchronisation de la communication. Il est régi par les variables de temps suivantes :

Tinitial : Date à laquelle l'agent est initialisé.

Tcourant : Date à laquelle on se trouve (Temps présent)

Omin et °max sont des variables qui représentent le temps début et le temps fin des opérations d'un agent. 00 est une constante.

III.4.3.1 Cas d'Utilisation: Communication entre agents : Description des agents participants.

Agents

Actions

Informe/travaille confirme/demande

Est déclenché

Document

Il est responsable du traitement du

document multimédia dans sa totalité.

-Demande communique avec les agents vidéo ou audio.

-Délègue les agents audio et

vidéo (Ceux-ci, après réalisation de la tache restituent le résultat).

Par l'agent document principal (Situé sur le site client).

Vidéo

Il est responsable du traitement sur la vidéo :

-Transport de fichiers constituant la vidéo. -Gère la synchronisation des images pour en faire des vidéos

Informe l'agent document sur la fin de sa tâche et restitue le résultat.

Par l'agent document. Et délégué vers le site approprié

Audio

Il est responsable du traitement sur

l'audio:

-Transport de fichiers constituant l'audio. -Gère la synchronisation des sons pour en faire des vidéos

Informe l'agent document sur la fin de sa tâche et restitue le résultat.

Par l'agent document. Et délégué vers le site approprié.

DocumentPrincipal

Il est responsable de l'affichage des

documents vidéo.

 

Par le client (Personne physique)

Tableau 4 : agents participants

Description de la communication

Les langages de communication entre agents les plus courants encore appelés ACL (Agent Communication Language) sont FIPA2 ACL et KQML3.

KQML et FIPA ACL sont utilisés pour la communication entre agents. Le KQML est beaucoup plus utilisé et donne par conséquent une très grande ouverture sur la programmation telle que l'illustre le tableau5. D'après le tableau5, nous choisirons le langage KQML pour la suite:

Application

Langage de

communication

Langage de

requête

Ontologie structure

SIMS_based

KQML

loom

propriétaire

WARREN : Amulti agent financial port for management

KQML

Pas spécifié

Pas spécifié

Information gathering based on low level retrival agent accessing HTML, supervised by planninge, coordination and scheduling agent

KQML

Pas spécifié

Pas spécifié

Infomaster

Pas spécifié

KIF (Knowledge

Interchange Format)

Pas spécifié

Agent for hypermédia information discovery

KQML

XML / Prolog

Pas spécifié

Multi agent systems an

information Rich environnement

KQML

SQL

KIF - Ontologie

COMRIS

FIPA ACL (XML)

XML

Propriétaire

Tableau 5 : Propriété des langages de communication entre agents [16]

Le principe de KQML est de séparer la sémantique liée au protocole de communication indépendamment du domaine de communication.

2 FIPA ( Fondation for Intelligent Physical Agents).

3 KQML (Knowledge Qwery and Manipulation Language).

Le protocole de communication doit donc être universel pour tous les types d'agents. Dans le langage KQML un message contient toutes les informations nécessaires à sa compréhension.

(KQML-performatif

: émetteur <texte>

: récepteur <texte>

: langage <texte>

: ontologie <texte>

: contenu <texte>

....)

Exemple de communication entre agents du système.

Le langage logique KIF [17] (Knowledge Interchange Format) est capable de décrire les faits concrets, Son but est de définir un format standard de représentation de connaissances manipulées par des agents. Ce langage sera utilisé dans la suite.

A/ l'agent document sollicite l'aide d'un agent voisin pour collaborer. (Stream-all

: sender agentDocument

: receiver agentAudio

: language KIF

: ontology synchronisation

: reply-with q2

: content « débuter la sélection, x »)

B/ l'agent Audio restitue le résultat de la sélection à l'agent document. (tell

: sender agentAudio

: receiver agentDocument

: language KIF

: ontology synchronisation

: in-reply-to q1

: content « restitue le résultat, oui »)

C/ l'agent Audio restitue le résultat de la sélection à l'agent document. (tell

: sender agentAudio

: receiver agentDocument

: language KIF

: ontology synchronisation

: in-reply-to q2

: content « restitue le résultat, oui »)

D/ l'agent Document restitue le résultat de la collecte à l'agent DocumentPrincipal. (tell

: sender agentDocument

: receiver agentDocumentPrincipal

: language KIF

: ontology synchronisation

: in-reply-to q2

: content « restitue la collection, oui »)

Schématisation de la communication.

Dans le système, l'agent document échange des informations avec l'agent audio (a_audio), reçoit des traitements venant de l'agent vidéo (a_video : Précédemment délégué.) et renvoie les résultats vers l'agent client (a_docP). L'automate de la figure11 montre les différentes interactions possibles.

Figure 11 : Graphe des échanges d'informations

Le réseau de Pétri de la figure11 est une représentation formelle des échanges de données entre agents du système. Il nous montre les conditions à remplir pour qu'un échange ait lieu. Ceci se fait via des événements définis au niveau des transitions.. Les marquages initiaux et finaux M0 et Mfinal sont définis comme suit :

M0(doc)={D,0,0,0} ; M0(video)={0,D,0,0}, M0(requete)={1,0,0,0} et M0(audio)={D,0,0,0}

Mfinal(doc)={0,0,0,D} ; Mfinal(video)={0,0,0,D, Mfinal(audio)={0,0,0,D} et M0(requete)={0,0,1,0}

Figure 12 : Représentation formelle : Communication

III.4.3.2 Cas d'Utilisation: Migration d'un agent

L'itinéraire d'un agent est représenté par l'automate de la figure13. Lorsque le client lance le système, un agent (a_docP) est créé. Celui-ci envoie l'agent document (a_doc) pour la collecte des documents multimédia. L'agent a_doc, afin de favoriser les déplacements fluides se sert des agents spécialisés à des tâches spécialisées.

Figure 13: Itinéraire d'un agent

Le réseau de Pétri de la figure14 est une représentation formelle de la migration des agents du système. Il nous montre les événements à remplir pour qu'un agent puis se mouvoir

(p.ex : l'agent document ne peut se déplacer que si le site distant abrite un service S1). Les transitions T3 et T4 représentent les contraintes de création des agents a_doc et a_video. Les marquages initiaux et finaux M0 et Mfinal sont définis comme suit :

M0(a_doc)={0,0,1} ; M0(a_video)={1,0,0} et M0(a_audio)={1,0,0}

Mfinal(a_doc)={1,0,0} ; Mfinal(a_video)={0,1,0} et Mfinal(a_audio)=M0(a_audio)

Figure 14 : représentation formelle : Migration

III.4.3.3 Représentation formelle du système Global.

Considérons que nous avons un système disposant de deux sites. La figure14, nous montre les interactions de mobilité et de communication entre les agents. De plus, étant donné que nous avons deux types d'objets, notre réseau de Pétri, afin de faciliter la compréhension du schéma, a été défini avec deux types d'arcs comme présenté dans la légende de la figure15. L'instant qui correspond au modèle est le moment où tous les types d'objets ont été initialisés. Pour la représentation successive des franchissements (voir annexe1).

Figure 15 : Représentation Globale du système

La figure15 présente le fonctionnement global du système. Lorsque l'événement T1 est vérifié, le site P3 reçoit un nouveau jeton : Création d'un agent document. Celui-ci migre vers les places P0 et P2 si l'événement T3 est satisfait. Les agents situés sur les sites P0 et P2 font générer des agents vidéo sur chacun des sites lorsque T13 et T14 seront respectivement atteints. Ces derniers migreront respectivement vers les sites P1 et P4 pour T9 et T11 valides ; les résultats obtenus par chacun sont retournés sous forme de messages selon les événements T8 et T12. Après la réception des résultats des agents vidéo, chaque agent document générera des agents audio (Lorsque les transitions T13 et T14 sont satisfaites.) pour qu'ils effectuent le traitement des fichiers audio via des échanges de messages déclenchés par les événements T6 et T10 pour l'émission de la requête et T7 et T5 pour la réception des résultats. Ainsi, chaque agent document, ayant réalisé toutes les opérations, reconstitue le document multimédia et le retourne au client sous forme de message ; ceci marque la fin de la collecte.

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"L'ignorant affirme, le savant doute, le sage réfléchit"   Aristote