• Aucun résultat trouvé

D´ ecomposition Arborescente Distribu´ ee (DAD)

D´ ecomposition d’un syst` eme

5.1 D´ ecomposition Arborescente Distribu´ ee (DAD)

Dans cette section nous rappelons tout d’abord la d´efinition de d´ecomposition arborescente d´efinie par Robertson et Seymour. Nous montrons que cette d´efinition ne peut s’appliquer `a notre contexte distribu´e o`u il est n´ecessaire de respecter les liens d’accointances du syst`eme ainsi que la confidentialit´e du vocabulaire local.

5.1.1 La d´ecomposition arborescente en centralis´e

Introduit par Robertson et Seymour [RS86], la d´ecomposition arborescente a ´et´e appliqu´ee dans de nombreux probl`emes. Par exemple, elle a ´et´e notamment appliqu´ee au diagnostic de cir-cuits ´electroniques par Fattah et Dechter [FD95]. Dans ce travail, un graphe mod´elise l’ensemble des ´equations d´ecrit par un circuit. Chaque noeud du graphe est ´etiquet´e par une variable, et chaque arˆete mod´elise un lien s´emantique entre les variables apparaissant dans une mˆeme ´equation.

La Figure 5.1 gauche montre un probl`eme d´ecrit par une conjonction de formules Φi (une formule peut repr´esenter par exemple une contrainte, une propri´et´e, ou encore dans notre cadre du diagnostic la description d’un composant d’un sous-syst`eme). Sur la droite, nous montrons le graphe d’interactions correspondant o`u chaque noeud est ´etiquet´e par une variable et o`u il existe un lien entre deux noeuds si les variables qui les ´etiquettent apparaissent dans une mˆeme formule. Par exemple, en gris clair, nous entourons les parties du graphe d’interactions repr´esentant Φ1, Φ2 et Φ3 du probl`eme initial.

La d´ecomposition arborescente d’un graphe d’interactions est un arbre de clusters de variables respectant la running intersection et pr´eservant les liens de d´ependances entre les variables. Nous rappelons ici la d´efinition de Robertson et Seymour [RS86] en gardant `a l’esprit qu’un sommet du graphe initial correspond `a une variable.

D´efinition 5.1 (D´ecomposition arborescente[RS86]) Une d´ecomposition arborescente d’un graphe G est un couple (χ, T ) pour laquelle T = (CT, F ) est un arbre o`u F mod´elise l’inter-d´ependance entre les clusters cti ∈ CT . χ = {χcti : cti∈ CT } est un ensemble de sous-ensembles de sommets de (G) t.q. chaque χcti repr´esente l’ensemble des sommets du cluster cti. La d´ecom-position arborescente satisfait les propri´et´es suivantes :

Figure5.1 – Description d’un probl`eme en centralis´e (gauche), son graphe d’interactions (droite)

1. ∪

cti∈CTχcti = sommets(G),

Tout sommet du graphe initial apparaˆıt dans au moins un des clusters. Un cluster ne contient pas de nouveau sommet.

2. ∀{x, y} ∈ G,∃cti ∈ CT t.q. {x, y} ∈ χcti

Chaque paire de variables connect´ees par une arˆete dans le graphe initial se retrouve dans au moins un des clusters (conformit´e des d´ependances).

3. ∀cti, ctj, ctk∈ CT , si ctk est sur le chemin de cti a ct` j dans T , alors χcti∩ χctj ⊆ χctk, Deux clusters contenant un mˆeme sommet sont connect´es par d’autres clusters qui contiennent aussi ce sommet (running intersection).

L’arbre de clusters r´esultant de la d´ecomposition arborescente est aussi appel´e arbre joint (il v´erifie la propri´et´e de running intersection). En plus, cet arbre v´erifie (par la conformit´e des d´ependances) que toutes les variables apparaissant dans une mˆeme formule et li´ees `a travers le graphe d’interactions, apparaissent aussi dans un mˆeme cluster. Cette propri´et´e nous permettra de redistribuer chaque formule du probl`eme initial vers les clusters de l’arbre joint.

La Figure 5.2 repr´esente la d´ecomposition arborescente du graphe d’interactions de la Figure 5.1. On peut v´erifier que chaque sommet ´etiquet´e par une variable dans le graphe d’interactions appartient `a au moins un des clusters de la d´ecomposition arborescente. De plus on peut noter que l’ensemble des clusters {ct2, ct5, ct7, ct6, ct3} contenant l1 est connect´e `a travers un chemin. Ainsi la running intersection est satisfaite pour l1. Il est facile de v´erifier que la running intersection est satisfaite pour toutes les autres variables.

La repr´esentation graphique usuelle d’un probl`eme par son graphe d’interactions et l’op´era-tion de d´ecomposil’op´era-tion ´evoqu´ee ci-dessus ne mod´elisent que les interd´ependances s´emantiques de variables apparaissant dans une mˆeme formule. Cette repr´esentation graphique n’est pas adap-t´ee `a notre contexte distribu´e. En effet, la d´ecomposition arborescente telle que d´efinie ci-dessus ne permet pas de v´erifier que l’arbre de clusters r´esultat respecte les accointances des pairs ou

Figure 5.2 – D´ecomposition arborescente de la Figure 5.1

encore la confidentialit´e des variables partag´ees. Il est donc n´ecessaire d’adapter cette d´efinition `

a notre contexte distribu´e.

5.1.2 La d´ecomposition arborescente distribu´e avec confidentialit´e

Dans notre contexte distribu´e, chaque pair connaˆıt un sous-ensemble de formules auxquelles il a acc`es et peut interagir avec ses voisins dans le but de r´esoudre un probl`eme global. Nous rappelons que nous avons repr´esent´e par un syst`eme accessible une description du syst`eme global auquel chaque pair a acc`es. Lors de la caract´erisation des syst`emes accessibles garantissant un diagnostic distribu´e correct, nous avons mod´elis´e `a travers le sch´ema d’un syst`eme accessible `a la fois les liens d’accointances et la r´epartition du vocabulaire auquel chaque pair a eu acc`es.

La Figure 5.3 (`a droite) montre un exemple de sch´ema du syst`eme distribu´e (`a gauche). On notera par exemple que p1 et p3 ont en commun la variable h sans pour autant la partager dans le r´eseau par un lien direct comme ce serait le cas dans un graphe d’interactions ou son graphe dual. Sans perte de g´en´eralit´e nous consid´erons que deux pairs voisins dans le sch´ema partagent au moins une variable.

C’est `a partir du sch´ema d’un syst`eme que nous adaptons la d´efinition de d´ecomposition arborescente introduite par Robertson et Seymour [RS86] pour l’appliquer au contexte distribu´e.

D´efinition 5.2 (D´ecomposition arborescente distribu´e (DAD)) Soit G((P, V ), ACQ) le sch´ema d’un syst`eme distribu´e, un arbre de cluster T ((CT, χ), F ) t.q. chaque cluster ct ∈ CT est ´etiquet´e par un ensemble de variables χ(ct), est une d´ecomposition arborescente distribu´ee de G ssi il existe γ : CT → P (qui repr´esente la provenance des clusters) t.q. :

1. S

p∈P

V (p) = S

ct∈CT

χ(ct) (conformit´e du vocabulaire)

Figure5.3 – Gauche : syst`eme distribu´e de la Figure 5.1. Droite : Son sch´ema

3. ∀ct, ct, ct” ∈ CT , si ct est sur le chemin de ct `a ct” dans T , alors χ(ct) ∩ χ(ct”) ⊆ χ(ct) (running intersection).

4. ∀{ct, ct} ∈ F : – γ(ct) = γ(ct) ou – {γ(ct), γ(ct)} ∈ ACQ

Chaque cluster est cr´e´e par un pair. Deux clusters voisins proviennent du mˆeme pair ou de pairs voisins dans le sch´ema. (conformit´e des accointances)

5. ∀ct ∈ CT, ∀v ∈ χct : K(γ(ct), v) = vrai. Les variables d’un cluster respectent la politique d’acc`es du pair contenant le cluster. (conformit´e de la politique d’acc`es)

Dans la d´efinition ci-dessus Les trois premi`eres propri´et´es de la d´ecomposition arborescente distribu´ee sont similaires aux propri´et´es de la d´efinition 5.1 de Robertson et Seymour. La d´e-composition arborescente distribu´ee d’un sch´ema conserve son vocabulaire, les d´ependances des variables li´ees `a travers le vocabulaire de chaque pair et la running intersection. Nous avons aussi besoin d’ajouter deux autres propri´et´es pour adapter la DAD `a notre contexte distribu´e. La conformit´e des accointances correspond `a la propri´et´e suivante : un cluster est cr´e´e par un unique pair et un pair cr´ee au moins un cluster (si sa formule n’est pas vide) et possiblement plu-sieurs. Ici un cluster n’est pas abstrait, il peut ˆetre vu comme un ensemble de variables localis´ees chez un pair. De plus, toute interaction entre clusters suit le graphe d’accointances du sch´ema. Notre politique d’acc`es est exprim´ee `a travers la cinqui`eme propri´et´e. Dans notre mod´elisation, un cluster n’est pas une unit´e abstraite. C’est un ensemble de variable provenant possiblement de plusieurs pairs mais localis´e chez un unique pair `a partir duquel le cluster respecte la politique d’acc`es. Ainsi un cluster h´eberg´e par un pair respecte la politique d’acc`es de ce pair. Dans la suite nous nous int´eressons `a une DAD suivant une politique d’acc`es particuli`ere qui pr´eserve la confidentialit´e des variables locales.

D´efinition 5.3 (Politique de confidentialit´e des variables locales) Une politique d’acc`es K : P, V → {⊤, ⊥} respecte la confidentialit´e des variables locales ssi pour toute variable v ∈ V :

1. soit v est une variable locale (c-`a-d il existe un unique pair p t.q. : K(p, v) = ⊤) ou 2. soit v est une variable partag´ee (c-`a-d pour tout p : K(p, v) = ⊤)

Figure 5.4 – Une d´ecomposition arborescente distribu´ee avec confidentialit´e du sch´ema Fi-gure 5.3

On remarquera que, dans la Figure 5.3, certaines variables particuli`eres (not´ees li), appa-raissent uniquement dans le vocabulaire de certains pairs. Nous utilisons cette notation pour repr´esenter ces variables comme locales, les autres variables comme ´etant partag´ees. La pro-pri´et´e de confidentialit´e s’assure que les variables locales restent locales (c-`a-d aucune variable locale ne peut ˆetre envoy´ee `a un autre pair du syst`eme). Appliqu´ee `a la d´ecomposition arbo-rescente distribu´ee, notre politique de confidentialit´e v´erifiera que tout cluster cr´e´e par un pair p pourra contenir n’importe quelle variable partag´ee, issue de n’importe quel pair du syst`eme mais ne pourra contenir que les variables locales du pair p.

Propri´et´e 5.1 (DAD avec confidentialit´e des variables locales) L’arbre joint T ((CT, χ), F ) est une d´ecomposition arborescente distribu´ee respectant la confidentialit´e des variables locales de G ((P ,V ),ACQ) ssi

1. T est une d´ecomposition arborescente distribu´ee de G o`u les clusters cr´e´es par chaque pair p sont repr´esent´es la fonction γ(p).

2. ∀p, ∀v ∈ Vp :

(a) si v 6∈ Vp′ (p 6= p) alors ∀ct γ(ct) 6= p et v ∈ χ(ct)

Si v est une variable locale `a un pair p, tout cluster non cr´e´e par p ne contient pas la variable v.

(b) si v ∈ Vp′, p 6= p alors ∃ct v ∈ χ(ct)

La Figure 5.4 est une d´ecomposition arborescente distribu´ee respectant la confidentialit´e et les accointances de la Figure 5.3. Pour tout lien entre clusters de l’arbre joint distribu´e, il existe un lien entre les pairs ayant cr´e´e ces clusters. Les variables li locales au pair pi ne figurent que dans le vocabulaire d’un cluster cr´e´e par pi. `A l’oppos´e, les variables partag´ees t.q. c et f garantissent la running intersection. La Figure 5.4 respecte la confidentialit´e alors qu’une d´ecomposition arborescente classique comme c’est le cas de la Figure 5.2 ne respecte pas la propri´et´e de confidentialit´e (les variables locales de pairs distincts apparaissent dans un mˆeme cluster). De plus, tout comme pour la d´ecomposition arborescente, on pourra v´erifier pour une DAD respectant la confidentialit´e que toutes les formules d’un syst`eme sont couvertes par le vocabulaire des clusters de l’arbre joint distribu´e r´esultat.