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

 > 

Réconciliation par consensus des mises à  jour des répliques partielles d'un document structuré.

( Télécharger le fichier original )
par Milliam Maxime Zekeng Ndadji
Université de Dschang - Master 2 2016
  

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

3.2. Calcul du consensus

La solution que nous proposons au problème de la fusion consensuelle découle d'une instrumentalisation de celle proposée pour l'expansion dans [BTT08, BTT07, TT09] et décrite précédemment (chap. 2 sect. 2.3). En effet, nous définissons un opérateur binaire

commutatif noté pour synchroniser les automates d'arbre A(i) construits pour réaliser
les différentes expansions afin de générer l'automate d'arbre de la fusion consensuelle. En notant A(sc) cet automate, les documents du consensus sont les arbres du langage engendré par l'automate A(sc) à partir d'un état initial construit à partir du tuple formé des états initiaux des automates A(i) : L (A(sc), (qtmaj)) = consensus{L (A(i), qtma j)}. A(sc) est

Vi Vi

obtenu en procédant de la façon suivante :

2. C'est notamment le cas s'il existe au moins un noeud du document global accessible par plus d'un coauteur et édité par au moins deux d'entre eux en utilisant des productions différentes.

3. Rappel : Les actions d'édition effectuées sur une réplique partielle peuvent être annulées tant qu'elles n'ont pas encore été intégrées dans le document global.

1. 3.2. Calcul du consensus 35

Mémoire - ZEKENG NDADJI Milliam Maxime LIFA

Pour chaque vue v, construire l'automate 91(i) qui réalisera l'expansion de la réplique

partielle tma j

Vi comme indiqué précédemment (chap. 2 sect. 2.3.3) : (91(i), qtmaj) =

v

TS

j ;

2. Au moyen de l'opérateur ?Ù, calculer l'automate générant le langage du consensus 91(sc) = ?Ùi 91(i) ;

3. Générer les documents acceptés par 91(sc) : ce sont ceux du consensus.

Avant de présenter l'algorithme du calcul du consensus, précisons en utilisant les notions introduites précédemment (chap. 2 section 2.1.1), les concepts de documents en conflit et de consensus entre plusieurs documents.

3.2.1. Consensus entre plusieurs (deux) documents

Soient t1,t2 : N* ? A deux arbres (documents) en conflit de domaines respectifs Dom(t1) et Dom(t2) : si on appelle type la fonction qui retourne le type 4 d'un noeud en se servant de son étiquette, on dira que t1 et t2 n'admettent pas de consensus, et on note t1 Yt2, si les types de leurs noeuds racines sont différents. C'est dire (t1 Yt2) ? (type(t1(E)) =6 type(t2(E))). On dira alors que t1 et t2 sont en conflit, et on note t1 y t2, quand ils admettent un consensus mais ne sont pas fusionnables dans leur entièreté. Intuitivement, deux documents t1 et t2 (non réduits à des bourgeons) ne sont pas entièrement fusionnables, s'il existe une adresse w ? Dom(t1) n Dom(t2) telle que le type du noeud n1 situé à l'adresse w dans t1 est différent de celui du noeud n2 situé à la même adresse dans t2. Plus formellement, t1 y t2 s'il existe une adresse w ? Dom(t1) n Dom(t2) telle que t1(w) = t2(w) et au moins un des noeuds n1i,1 = i = n situés aux adresses w.i dans t1 a un type différent de celui du noeud n2i (lorsqu'il existe) situé à la même adresse dans t2. C'est à dire

(t1 y t2 avec t1(E) =6 XW, t2(E) =6 XW) ?

(non (t1 Yt2)) et (?w.i ? Dom(t1) nDom(t2), t1(w) = t2(w), type(t1(w.i)) =6 type(t2(w.i)))

Si t1 et t2 sont en conflit, l'arbre consensuel tc : N* ? A issu de t1 et t2 est tel que :

Le domaine de tc est l'union des domaines des deux arbres auquel on soustrait les éléments appartenant aux domaines des sous-arbres issus des noeuds en conflit (on élague au niveau des noeuds en conflit).

Quand un noeud n1 de t1 est en conflit avec un noeud n2 de t2, ils apparaissent dans l'arbre consensuel tc sous la forme d'un (unique) bourgeon.

Ainsi, ?w ? Dom(tc) on a :

tc(w) =

{

t1(w) si t1(w) = t2(w)

t1(w) si t2(w) = XW

t2(w) si t1(w) = XW

t1(w) si w ?/ Dom(t2) et ?u, v ? N* tel que w = u.v, t2(u) = XW

t2(w) si w ?/ Dom(t1) et ?u, v ? N* tel que w = u.v, t1(u) = XW

XW si t1(w) =6 XW et t2(w) =6 XW et t1(w) =6 t2(w)

La figure 3.1 (page 36) regroupe les étapes de la fusion consensuelle de deux documents t1 et t2 en un document tf. La fusion se fait par niveau hiérarchique du haut vers le bas. Chaque étape illustre certaines des alternatives contenues dans la formule ci-dessus ; les noeuds impliqués sont mis en évidence via des couleurs. Au niveau 3 par exemple, nous illustrons le traitement de deux noeuds en conflit (noeuds étiquetés C - en rouge -).

4. Rappel : on note XW l'étiquette d'un bourgeon de type X ; et un noeud clos étiqueté A est de type A.

3.2. Calcul du consensus 36

Mémoire - ZEKENG NDADJI Milliam Maxime LIFA

FIGURE 3.1 - Fusion consensuelle progressive de deux documents.

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








"Il faut répondre au mal par la rectitude, au bien par le bien."   Confucius