Decomposition arborescente connexe

publicité
Décomposition arborescente
connexe
Pierre Fraigniaud, Nicolas Nisse
LRI Orsay
Encerclement dans les graphes

But
Un groupe d’agents mobiles doit :
- capturer un intrus dans un réseau ;
- nettoyer un réseau contaminé ;

Utiliser le moins de ressources possibles.

Motivations
Sécurité dans les réseaux informatiques ;
Maintenance de réseaux de pipelines ;
Opération de secours dans des souterrains.
2/30
Encerclement dans un graphe
Stratégie d’encerclement (Parson. [GTC,1978]).
Suite de 3 opérations élémentaires


1.
2.
3.

Placer un agent sur un sommet du graphe ;
Déplacer un agent le long d’une arête ;
Supprimer un agent d’un sommet du graphe.
Résultant en le nettoyage du graphe
Un agent nettoie une arête quand il la traverse ;
Une arête reste propre si ses deux extrémités sont protégées.

On veut minimiser le nombre d’agents
s(G), plus petit nombre d’agents nécessaire à une stratégie
d’encerclement dans le graphe G.
3/30
Graphes simples

Chemin
4/30
Graphes simples

Chemin
s(Pn) = 1

Anneau
5/30
Graphes simples

Chemin
s(Pn) = 1

Anneau
s(An) = 2
6/30
Décomposition arborescente
(T, (Xv)vV(T) )






un arbre et une famille de sommets de G ;
3 propriétés.
Largeur de (T,X) = max{| Xv |-1 / v  V(T)}
Largeur d’arborescence de G, tw(G), est la largeur
minimale parmi toutes les décompositions arborescentes
de G.
Décomposition linéaire
(P, (Xv)vV(T) ), avec P un chemin

Largeur linéaire de G, pw(G).
7/30
Exemple
8/30
Lien avec l’encerclement

J.A. Ellis, I.H. Sudborough et J.S. Turner. The
Vertex Separation and Search Number of a Graph. Inf.
Comput. 1994.
 N.G. Kinnersley. The Vertex Separation number of a graph
equals its path-width. IPL. 1992.
Pour tout graphe G de n sommets,
tw(G) ≤ pw(G) ≤ s(G) ≤ pw(G) + 2 ≤ tw(G).log n +2
9/30
Introduction de la connexité dans le modèle

Limites du modèle
Impossibilité de se déplacer à volonté dans la réallité ;
Il est préférable que agents restent groupés.
Communications
non sécurisées
10/30
Introduction de la connexité dans le modèle

Limites du modèle
Impossibilité de se déplacer à volonté dans la réallité ;
Il est préférable que agents restent groupés.
 stratégie d’encerclement connexe, cs(G)
A chaque étape, la partie nettoyée doit être connexe.
11/30
Historique (1)

L. Barriere, P. Flocchini, P. Fraigniaud et N.
Santoro. Capture of an Intruder by Mobile Agents.
SPAA, 2002.


Algorithme linéaire calculant une stratégie
d’encerclement connexe optimale dans le cas des
arbres.
L. Barriere, P. Fraigniaud, N. Santoro et D.
Thilikos. Connected and Internal Graph
Searching. WG, 2003.

Pour tout arbre T, s(T) ≤ cs(T) ≤ 2 s(T) ;
12/30
Historique (2)

P.D. Seymour et R. Thomas. Call Routing and the
Ratcatcher. Combinatorica, 14(2):217-241, 1994.


F. Fomin, P. Fraigniaud et D. Thilikos [rapport technique,
2004]



Carving connexe ;
Décomposition en branche connexe ;
Algorithme polynomial constructif.
F. Fomin, P. Fraigniaud et D. Thilikos [rapport technique,
2004]

Pour tout graphe connexe G, cs(G) ≤ s(G) (2+log2 |E(G)|).
13/30
Définitions :
 Arête connexe
e est dite connexe si G[T1(e)] et G[T2(e)] sont des sous graphes connexes de G.
e
T1(e)
T2(e)
 Décomposition arborescente connexe (T,X)
Toute arête de E(T) est connexe.
 Largeur arborescente connexe, ctw(G).
14/30
Résultat (1)
Théorème :
 Pour tout graphe connexe G, ctw(G) = tw(G).
Preuve constructive :
 Algorithme polynomial qui, étant donnée une décomposition
arborescente de largeur k de G, retourne une décomposition
arborescente connexe de largeur ≤ k de G.
15/30
Définition


Décomposition arborescente enraciné en un sommet u.
Arête sous-connexe
Une arête e = (w,v) où w est le père de v, est sous-connexe si :
G[T(v)] est un sous graphe connexe de G.
u
w
v
e

(T,X) sous connexe en vV(T)
-
G[T(v)] est un sous graphe connexe de G ;
toute arête de T(v) est sous connexe.
T(v)
16/30
Algorithme (1)

Entrée :


(Tu,X) une décomposition arborescente de
largeur k de G.
2 phases


Montée : rend la décomposition sous-connexe
Descente : rend la décomposition connexe
17/30
Algorithme (2)

Sous-procédure appliquée à un sommet v  V(T) tel
que T est sous connexe en w1,…,ws les fils de s :
V’
v
w1
w2
w3
w4
w5
18/30
Algorithme (2)

Sous-procédure appliquée à un sommet v  V(T) tel
que T est sous connexe en w1,…,ws les fils de s :
- détermine les composantes connexes de Xv : Y1 ,…,Yr;
V’
Y1 Y2 Y3
w1
w2
w3
w4
w5
19/30
Algorithme (2)

Sous-procédure appliquée à un sommet v  V(T) tel
que T est sous connexe en w1,…,ws les fils de s :
- crée un graphe bipartie dont une partition est formée de r sommets
Y1 ,…,Yr et l’autre des s sommets w1,…,ws. Il y a une arête entre
Yi et wj ssi Yi  Xwj  
V’
Y1
Y1 Y2 Y3
w1
w2
w3
w4
w5
w1
w2
Y2
w3
Y3
w4
w5
20/30
Algorithme (2)

Sous-procédure appliquée à un sommet v  V(T) tel
que T est sous connexe en w1,…,ws les fils de s :
- modifie la décomposition arborescente en fonction des composantes
connexes du graphe bipartie
V’
V’
v1
Y1 Y2 Y3
w1
w2
w3
w4
w5
w1
Y1
w2
Y2
w3
Y3
w4
v2
w5
21/30
Algorithme (2)

La décomposition arborescente résultante est
sous connexe en les nouveaux descendants
de v’
V’
V’
v1
Y1 Y2 Y3
w1
w2
w3
w4
w5
w1
Y1
w2
Y2
w3
Y3
w4
v2
w5
22/30
Algorithme (3)

Phase 2 : descente de la racine aux feuilles


Entrée : décomposition arborescente sous-connexe ;
Il reste des arêtes qui font défaut à la connexité ;
23/30
Algorithme (3)

Phase 2 : descente de la racine aux feuilles
 Rotation de la décomposition ;
24/30
Algorithme (3)

Phase 2 : descente de la racine aux feuilles
 Application de la sous procedure.
25/30
Résultat (2)
Théorème :
 Pour tout graphe connexe G, cs(G) ≤ s(G) (2+log2 |V(G)|).
Preuve constructive :
 Algorithme construisant une stratégie d’encerclement connexe de G
utilisant au plus tw(G).log |V(G)| agents.
26/30
Idée de la démonstration (1)



T1
Démonstration par induction sur |V(G)|.
N. Robertson et P.D. Seymour. Graph Minors II.
Algorithmic Aspects of Tree-Width. J. of Alg 7, 1986.
2 cas : pour toute décomposition arborescente d’un graphe
G de n sommets, il existe 1 ou 2 sommets tels que :
 Pour tout 1 ≤ j ≤ r, |G[Tj]| ≤ n/2
Ti
Tr
T1
Ti
Ti+1
Tr
27/30
Idée de la démonstration (2)

Décomposition arborescente connexe
Empécher la recontamination
≤ tw (G) agents
≤ tw(G) log n/2 agents
28/30
Idée de la démonstration (2)

Décomposition arborescente connexe
Empécher la recontamination
≤ tw (G) agents
cs(G) ≤ tw(G). log2 n
cs(G) ≤ s(G). (log2 n + 2)
≤ tw(G) log n/2 agents
29/30
Conclusions

Résultats



connexité inhérente à la décomposition arborescente ;
nouvelle borne supérieure pour cs(G)/s(G) ;
Perspectives



Amélioration de la borne cs/s
généralisation aux graphes q-connexes
existe t-il une fonction f telle que pour tout graphe
f(q)-connexe G, il existe une décomposition
arborescente q-connexe de largeur tw(G) ?
30/30
Téléchargement