Actes JNPC’04
Raisonnement distribu´
e dans un
environnement de type Peer-To-Peer
P. Adjiman P. Chatalic F. Goasdou´e M.-C. Rousset
L. Simon
R´
esum´
e
Dans un syst`eme d’inf´erence peer-to-peer, chaque peer peut raisonner localement mais
peut ´egalement solliciter son voisinage constitu´e des peers avec lesquels il partage une partie
de son vocabulaire. Dans cet article,on s’int´eresse aux syst`emes d’inf´erence peer-to-peer dans
lesquels la th´eorie de chaque peer est un ensemble de clauses propositionnelles construites `a
partir d’un vocabulaire local. Une caract´eristique importante des syst`emes peer-to-peer est
que la th´eorie globale (l’union des th´eories de tout les peers) n’est pas connue (par oppo-
sition aux syst`emes de raisonnement fond´es sur le partitionnement). La contribution de cet
article est double. Nous exposons le premier algorithme de calcul d’impliqu´es dans un envi-
ronnement peer-to-peer: il est anytime et calcul les impliqu´es progressivement depuis le peer
interrog´e jusqu’aux peers de plus en plus distant. Nous ´enonc¸ons une condition suffisante
sur le graphe de voisinage du syst`eme d’inf´erence peer-to-peer garantissant la compl´etude de
notre algorithme. Nous pr´esentons ´egalement quelques r´esultats exp´erimentaux prometteurs.
1 Introduction
R´ecemment, les syst`emes peer-to-peer ont fait l’objet d’une attention consid´erable li´e `a leur
architecture sous jacente, particuli`erement adapt´ee au passage `a l’´echelle des applications dis-
tribu´ee que l’on trouve sur Internet. Dans un syst`eme peer-to-peer, il n’y a aucun contrˆole centra-
lis´e ni aucune organisation hi´erarchique: chaque peer est ´equivalent en fonctionnalit´e et coop`ere
avec d’autres peers dans l’objectif de r´ealiser une tache collective. Les syst`emes peer-to-peer
ont ´evolu´e du simple syst`eme de partage de fichiers distribu´es (avec interrogation par mots cl´es)
comme Napster [13] et Gnutella [5] jusqu’aux syst`emes de gestion de donn´ees distribu´e ´evolu´e
comme Edutella [14] ou Piazza [8], qui offre un niveau s´emantique de descriptions des donn´ees
permettant l’expression de requˆetes complexes pour extraire les donn´ees du syst`eme. Dans ces
syst`emes, la complexit´e duprobl`eme de r´eponse `a une requˆete est directement li´e `a l’expressivit´e
du formalisme utilis´e pour mettre en relation les sch´emas des diff´erents peers via des correspon-
dances s´emantique (mappings) [7].
Dans cet article, on s’int´eresse aux syst`emes d’inf´erence peer-to-peer dans lesquels chaque
peer peut r´epondre `a une requˆete en raisonnant sur sa th´eorie (propositionnelle) locale, mais
LRI, CNRS & Universit´e Paris-Sud – INRIA Futurs, Bˆatiment 490, 91405, Orsay Cedex, France
11
12
´egalement en posant des requˆetes aux autres peers avec lesquels il est s´emantiquement reli´e via
un partage d’une partie de son vocabulaire.
Cet environnement englobe de nombreuses applications telles que les syst`emes d’int´egration
d’information peer-to-peer ou les agents intelligents dans lesquels chaque peer poss`ede sa propre
connaissance (sur ses donn´ees ou son domaine d’expertise) et une connaissance partielle des
autres peers. Dans ces conditions, lorsqu’un peer est sollicit´e pour ex´ecuter une tache de raison-
nement, si il ne peut pas la r´esoudrelocalement dans sa totalit´e, il doit ˆetre capable de la d´ecouper
en sous taches `a distribuer aux peers appropri´ede son voisinage. Ainsi, ´etapes par ´etapes, la tache
initiale est d´ecoup´ee puis distribu´ee aux peers comp´etant pour en r´esoudre une partie. Les sor-
ties de chaque sous taches doivent ˆetre ensuite recompos´es pour construire la sortie de la tache
initiale.
On s’int´eresse aux syst`emes d’inf´erence peer-to-peer dans lesquels la th´eorie de chaque peer
est un ensemble de clauses propositionnelles construites `a partir d’un ensembles de variables
propositionnelles repr´esentantson vocabulaire local. Chaque peer peut partagerune partie de son
vocabulaire avec d’autres peers. Nous consid´erons la tache de raisonnement qui consiste `a trou-
ver les consc´equences d’une certaine formes (par exemple des clauses ne contenant seulement
que certaines variables) pour une formule donn´ee en entr´ee exprim´ee en termes du vocabulaire
local d’un peer. Notons que d’autres taches de raisonnement comme la recherche d’impliquants
d’une certaine formes pour une formule donn´ee peut etre r´eduite par ´equivalence `a une tache de
recherche de consc´equences.
La contribution de cet article est double. Nous exposons le premier algorithme de calcul
d’impliqu´es dans un environnement peer-to-peer: il est anytime et calcul les impliqu´es progres-
sivement depuis le peer interrog´e jusqu’aux peers de plus en plus distant. Nous ´enoncons une
condition suffisante sur le graphe de voisinage du syst`eme d’inf´erence peer-to-peer garantissant
la compl´etude de notre algorithme
Il est important de mettre en valeur la differenceentre le probl´eme de raisonnement distribu´e
qu’on ´etudie dans cet article et le probl`eme de raisonnement sur des th´eories partitionn´ee obte-
nus par d´ecomposition ([3, 1]). Dans ce dernier probl`eme, une th´eorie centralis´ee (relativement
grande) est donn´ee, et on exploite sa structure afin de calculer la meilleure facon de la d´ecouper
dans l’objectif d’optimiser un algorithme de raisonnementtravaillant sur des th´eorie partitionn´ee.
Dans notre probl`eme, la th´eorie compl`ete (i.e., l’union de toutes les th´eories locales) n’est pas
connue et la partition est impos´ee par l’architecture peer-to-peer elle meme. Comme nous allons
l’illustrer sur un exemple, (Section 2), les algorithmes fond´es sur la transmission de clauses entre
partitions (dans l’esprit de [1, 3, 4]) ne sont pas appropri´es pour notre probl`eme de recherche
de consc´equences. Notre algorithme d´ecoupe les clauses si elle contiennent des variables ap-
partenant `a des vocabulaires de differnents peers. Chaque morceau d’une clause d´ecoup´ee et
ensuite transmis `a la th´eorie concern´ee pour calculer ses consc´equences. Les consc´equences de
chaque morceau doivent etre recompos´es pour constituer les consc´equences de la clause qui a ´et´e
d´ecoup´ee.
L’article est organis´e de la mani`ere suivante. La section 2 d´efinie formellement le probl`eme
d’inf´erence peer-to-peer auquel on va s’interesser. Dans la section 3, nous d´ecrivons un algo-
rithme distribu´e de calcul de consc´equences et nous ´enoncons ses propri´et´ees.La section 4 d´ecrit
quelques r´esultats exp´erimentaux. Un ´etat de l’art est r´esum´e dans la section 5. On conclue sur
une br`eve discussion dans la section 6.
13
2 Inf´
erence peer-to-peer: d´
efinition du probl`
eme
Un syt`eme d’inf´erence peer-to-peer (P2PIS) est un r´eseau de th´eories appartenant `a des peers.
Chaque peer est un ensemble fini de formules propositionnelles du langage . On consid`ere
que est le langage des clauses sans r´ep´etitions de litt´eral que l’on peut construire `a partir d’un
ensemble fini de variables propositionnelles , appel´e le vocabulaire de .
Les peers peuvent etre s´emantiquement conn´ect´es en ayant des variables en commun dans
leurvocabulairerespectifs,appel´esvariables partag
´
ees. Dansun P2PIS, aucunpeer n’ala connais-
sance de la th´eorieglobale du P2PIS. Chaquepeer connait seulementsa th´eorie locale et sait qu’il
partage certaines variables de son vocabulaire avec d’autres peer du P2PIS (son voisinnage ). Il
ne connait pas necessairement tout les peers avec lesquelles il partage des variables. Quand un
nouveau peer se connecte au P2PIS, il se d´eclare simplement aupr´es des peers avec lesquelles il
vaut partager des variables. Un P2PIS peut etre formalis´e par un graphe de voisinage.
D´
efinition 1 (Graphe de voisinage) Soit une famille de th´
eorie sous formes
clausale construites sur leurs vocabulaires respectifs , soit . Un graphe de
voisinnageest un graphe VOIS ou est l’ensemble des noeuds et VOIS est
un ensemble d’aretes etiquet´
ees tel que pour chaque VOIS, et .
Une arete ´etiquet´ee exprime que les peers et savent tous les deux qu’ils
partagent la variable . Pour un peer et un litt´eral , VOIS d´enote l’ensemble de peers
partagant la variable avec .
Pour chaque th´eorie , on consid´ere un sous ensemble de variables cibles ,
suppos´
e representer les variables d’int´
eret pour l’application, (e.g., les faits observables dans
une application de diagnostic bas´
e sur les mod`
eles, ou les classes representant les donn´
ees dans
une application d’int´
egration d’informations). Pour une clause donn´
ee (appel´
ee la requete) en
entr´
ee `
a un peer duP2PIS, l’objectifest de calculertoutes ses consc´
equences(appel´
eesr´eponses)
dont les variables appartiennent au langage cible.
Il est important de remarquer que meme si la requete est exprim´
e en termes du vocabulaire
local au peer int´
errog´
e, les r´
eponses attendues peuvent elles contenir des variables cibles de
diff´
erents peers. Les langages cibles manipul´
es par notre algorithme sont d´
efinis en termes de
variables cibles et n´
ecessitent qu’une variable partag´
ee ai le meme statut de cible dans tous les
peers qui la partage.
D´
efinition 2 (Langage Cible) Soit VOIS un P2PIS, et pour chaque peer , soit
l’ensemble de ses variables cibles tel que si VOIS alors ssi .
Pour un sous ensemble de peers de , on d´
efinit son langage cible comme
le langage des clauses (incluant la clause vide) construites avec uniquement des variables de
.
Parmi les r´
eponses possibles, on distingue les r´eponses locales, faisant intervenir unique-
ment les variables locales du peer int´
errog´
e, les r´eponses navigationnelles, faisant intervenir les
variables d’un seul peer, et les r´eponses d’int´egration faisant intervenir des variables cibles de
plusieurs peers.
D´
efinition 3 (Impliqu´
es premiers propres par rapport `
a une th´
eorie) Soit une th´
eorie sous
forme clausale et une clause. Une clause est dite:
impliqu´e premier de par rapport`
a ssi et pour tout autre clause , si
et alors .
impliqu´epremier proprede par rapport`
a ssi c’est un impliqu´
e premier de par rapport
`
amais que .
14
D´
efinition 4 (Probl`
eme de calcul de consc´
equences) Soit une famille deth´
eories
sous forme clausale ayant pour langage cible respectif ( et soit VOIS un
. Le probl`eme de calcul de consc´equence est, pour un peer et une clause
donn´
es, de calculer l’ensemble des impliqu´
es propres de par rapport `
a construits `
a
partir de .
L’exemple qui suit illustre les principales caract´
eristiques de l’algorithme distribu´
e pr´
esent´
e
dans la section 3.
Exemple 1 Considerons 4 peers. d´ecrit un tour op´erateur.Sa th´eorie exprime queses actuelles
destinations lointaines ( ) sont soit le Kenya ( ) soit la Chilie ( ).
Ces destinations lointaines sont des destinations internationnales ( ) et on´ereuses ( ) Le peer
concerne les formalit´es administratives et exprime qu’un passeport ( ) est requis pour les
destinations internationales. s’interesse aux conditions sanitaires des voyageurs. Il exprime
qu’au Kenya, la vaccination contre la fievre jaune ( ) est fortement recommand´e et que de
fortes pr´ecaution doivent etre prises contre le paludisme ( ) lorsque les logements se font en
bungalow ( ).
d´ecrit les conditions de logement pour les voyages: bungalow pour le Kenya et hotels
( ) pour la Chilie. Il exprime ´egalement que lorsque la protection anti-paludisme est requise,
les logements sont ´equip´es de protections anti-moustiques ( ). It also expresses that when
anti-paludism Les variables partag´es ´etiquettent les aretes du graphe de voisinage (Figure 1) et
les variables cibles sont d´efinis par: , , and
.
L O L I
L K C
I P
I
K FJ
B K PAL
K
K B
C H
PAL AM
K,C
B,PAL
FIG. 1 – Graphe de voisinage pour l’exemple du tour op´
erateur
Supposons que la requete est Lest pos´ee au peer . Les consc´equences locales qui peuvent
etre d´eriv´es par un raisonnement local sur sont O,Iet K C.Oest immediatement retourn´e
comme une r´eponse locale puisqu’il est dans . Puisque Iest partag´e avec , il est trans-
mis comme requete `a , quiproduit la clause P. Puisque Pest dans , c’est une r´eponse
navigationnelle de la requete initiale. La clause K C est faite de variables partag´ees. Notre al-
gorithme d´ecoupe de telles clauses et transmet chaque composant (ici Ket C) s´eparement au
voisinage de partagant respectivement Ket Cavec . Cest ainsi transmis `a , qui retourne
la clause Hpour seule r´eponse. De la meme mani`ere, la clause Kest transmise (independem-
ment) aux peers and (les deux partangant la variable Kavec ). produit localement
la clause clause B. Comme Bil est retourn´e comme une r´eponse pour K. Mais B
est ´egalement partag´ee. Elle est donc transmise `a , qui produit en retour la clause K PAL.
Cette nouvelle clause est d´ecoup´ee en deux: Kand PAL. est int´errog´e pour PAL et retourne
AM comme seule r´eponse pour PL. est interrog´e pour calculer les impliqu´es de K, pendant
que la requete complementaire Kest toujours en cours de traitement.
15
Nous verrons dans la Section 3 que ceci est pris en compte dans notre algorithme grace `a
un historique qui garde trace de la branche de raisonnement en cours: lorsqu’une meme branche
de raisonnement contient deux litt´eraux oppos´es, elle est coup´ee et retourne comme r´eponse.
Dans notre exemple, la r´eponse produite par pour Kest donc , qui est renvoy´e en retour `a
. peutalors combinerles r´eponsesobtenues parles deuxbranches deraisonnementr´esultant
du d´ecoupage de K PAL, `a savoir AM retourn´e par pour PAL, et retourn´e par pour
K. Ainsi produit AM comme r´eponse pour K PL. envoie cette r´eponse en retour `a
en tant que r´eponse `a B.
transmet `a chacune des r´eponses B,PAL et AM qu’il `a calcul´e pour , comme r´eponses
`a K. On ne d´etaillera pas la branche de raisonnement correspondant `a la propagation de Kdans
, qui ajoute une nouvelle r´eponse, FJ, `a l’ensemble des r´eponses obtenues par pour K.
Une fois produites, ces r´eponses sont combin´es avec la seule r´eponse pour C(i.e., H). Ainsi,
l’ensemble des r´eponses produites pour la requete initiale est le suivant:
H B H PAL H AM H FJ . Parmi ces r´eponse, il est important de remarquer que
certaines d’entres elles (e.g., H Y) font intervenir des variables cibles de differents peers. De tels
impliqu´es ne peuventetre obtenus par des algorithmefond´es sur le partiotionnement commedans
[1]. Ceci est rendu possible grace `a la strat´egie de d´ecoupage/recombinaisonde notre algorithme.
3 Algorithme distribu´
ee de calcul de consc´
equences
La version orient´
ee message de notre algorithme est d´
ecrite dans la section 3.2. Nous mon-
trons qu’il termine et qu’il calcul les mˆ
eme r´
esultats que l’algorithme r´
ecursif d´
ecrit dans la
section 3.1.
Pour les deux algorithmes, nous utiliserons les notations suivantes:
pour un litt´
eral , d´
esigne l’ensemble de clauses obtenues par r´
esolution
entre et une clause de ,
pour un litt´
eral , d´
esigne la n´
egation de ,
pour une clause d’un peer , (resp. d´
esignent la disjonction disjonction de
litt´
eraux d dont les variables sont partag´
ees (resp. non partag´
ee) avec un quelquonque
voisin de . Ainsi, la condition exprime le fait que ne partage aucune de ses
varibles avec son voisinage,
un historique est une liste de triplets (avec un litt´
eral, un peer, et une
clause). Un historique repr´
esente une branche
de raisonnement engendr´
ee par la propagation du litt´
eral via le peer , et le d´
ecoupage
de la clause : pour chaque , est un consc´
equence de et , et est
un litt´
eral de que l’on propage dans ,
est l’op´
erateur de distribution sur des ensembles de clauses: =
. Si , on utilisera la notation
pour d´
esigner .
3.1 Algorithme r´
ecursif de calcul de consc´
equences
Soit VOIS un P2PIS. calcule les impliqu´
es du litt´
eral par rapport
`
a, commenc¸ant par le calcul des consc´
equences de par rapport `
a , puis se laissant guider
1 / 15 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !