Decomposition arborescente connexe

publicité
Stratégie d’encerclement connexe
dans les graphes
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.
Réunion FRAGILE, Aussois, 23 mars 2005
2/49
Plan
Stratégie d’encerclement
Connexité
Décomposition arborescente connexe
Rapport cs(G)/s(G)
Réunion FRAGILE, Aussois, 23 mars 2005
3/49
Encerclement dans un graphe
Stratégie d’encerclement (Parson. [GTC,1976]).
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.
Réunion FRAGILE, Aussois, 23 mars 2005
4/49
Graphes simples

Chemin
Réunion FRAGILE, Aussois, 23 mars 2005
5/49
Graphes simples

Chemin
s(Pn) = 1

Anneau
Réunion FRAGILE, Aussois, 23 mars 2005
6/49
Graphes simples

Chemin
s(Pn) = 1

Anneau
s(An) = 2
Réunion FRAGILE, Aussois, 23 mars 2005
7/49
Stratégie d’encerclement monotone

Définition
Une stratégie d’encerclement est monotone s’il n’y a pas de
recontamination

Encerclement monotone
ms(G), plus petit nombre d’agents nécessaire à une
stratégie d’encerclement monotone dans le graphe G.
Réunion FRAGILE, Aussois, 23 mars 2005
8/49
La recontamination n’aide pas

Pour tout graphe G, ms(G) = s(G).
LaPaugh.
Recontamination does not help to search a graph.
[JACM,1993]
Bienstock et Seymour.
Monotonicity in graph searching. [JoA,1991]

s(G) ≤ k est un problème NP-complet
Réunion FRAGILE, Aussois, 23 mars 2005
9/49
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).
Réunion FRAGILE, Aussois, 23 mars 2005
10/49
Exemple
Réunion FRAGILE, Aussois, 23 mars 2005
11/49
Relations avec des paramètres
“classiques”

Le fugitif est :
Omniscient;
Arbitrairement rapide.

Selon les variantes, le fugitif peut être :
Visible => tw(G) ≤ s(G) ≤ tw(G)+1;
Invisible => pw(G) ≤ s(G) ≤ pw(G)+1.
Réunion FRAGILE, Aussois, 23 mars 2005
12/49
s(G) ≤ pw(G) + 2
Soit (X1, X2,…, Xi, Xi+1,…, Xr) une décomposition
linéaire d’un graphe G de largeur pw(G).
A l’étape i, le graphe induit par Uk<i Xk est nettoyé ;
1.
Placer pw(G)+1 agents sur les sommets de Xi
2.
Un agent supplémentaire nettoie les arêtes de Xi
3.
Supprimer les agents des sommets de Xi/Xi+1

X1
Xi
Xi+1
Réunion FRAGILE, Aussois, 23 mars 2005
Xr
13/49
pw(G) ≤ s(G)

Si (s1,s2,…,sr) est une stratégie d’encerclement monotone
d’un graphe G, on construit une décomposition linéaire
(X1, X2,…, Xi,…, Xr) telle que :
Xi contient les sommets occupés, ainsi que l’arête
éventuellement nettoyée lors de l’étape i.
Réunion FRAGILE, Aussois, 23 mars 2005
14/49
Largeur linéaire ≈ 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,
pw(G) ≤ s(G) ≤ pw(G) + 1
Réunion FRAGILE, Aussois, 23 mars 2005
15/49
Plan
Stratégie d’encerclement
Connexité
Décomposition arborescente connexe
Rapport cs(G)/s(G)
Réunion FRAGILE, Aussois, 23 mars 2005
16/49
Introduction de la connexité dans le modèle

Limites du modèle
Impossibilité de se déplacer à volonté dans la réalité ;
Il est préférable que agents restent groupés.
Communications
non sécurisées
Réunion FRAGILE, Aussois, 23 mars 2005
17/49
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.
Réunion FRAGILE, Aussois, 23 mars 2005
18/49
Exemple
Réunion FRAGILE, Aussois, 23 mars 2005
19/49
Exemple
Réunion FRAGILE, Aussois, 23 mars 2005
20/49
Exemple
Réunion FRAGILE, Aussois, 23 mars 2005
21/49
Exemple
Réunion FRAGILE, Aussois, 23 mars 2005
22/49
Exemple
s(T) = 3
Réunion FRAGILE, Aussois, 23 mars 2005
23/49
Exemple
s(T) = 3
Réunion FRAGILE, Aussois, 23 mars 2005
24/49
Exemple
s(T) = 3
cs(T) = 4 = 2s(T) - 2
Réunion FRAGILE, Aussois, 23 mars 2005
25/49
Connexe vs non connexe

L. Barriere, P. Fraigniaud, N. Santoro et D.
Thilikos. Connected and Internal Graph
Searching. WG, 2003.
L’encerclement connexe cs(G) n’est pas invariant par
mineur.

Daniel Dyer. Sweeping Graphs and Digraphs.
[Thesis, 2004].
Dans le cas connexe, la recontamination aide.
Réunion FRAGILE, Aussois, 23 mars 2005
26/49
Cas des arbres

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 et monotone 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)-2 ;
Réunion FRAGILE, Aussois, 23 mars 2005
27/49
Cas des graphes arbitraires

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)|).
Réunion FRAGILE, Aussois, 23 mars 2005
28/49
Plan
Stratégie d’encerclement
Connexité
Décomposition arborescente connexe
Rapport cs(G)/s(G)
Réunion FRAGILE, Aussois, 23 mars 2005
29/49
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).
Réunion FRAGILE, Aussois, 23 mars 2005
30/49
Résultat (1)
M. Golumbic, Algorithmic graph theory and perfect graphs.
 Triangulation minimale
tw(G) = min {w(H)/ H triangulation minimale de G}
 Arbre de cliques
A. Parra and P. Scheffler, Characterizations and
algorithmic applications of chordal graphs embedding.
Réunion FRAGILE, Aussois, 23 mars 2005
31/49
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.
Réunion FRAGILE, Aussois, 23 mars 2005
32/49
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)
Réunion FRAGILE, Aussois, 23 mars 2005
33/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
34/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
35/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
36/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
Y2
w3
Y3
w4
w5
37/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
Y2
w3
Y3
w4
v2
w5
38/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
Y2
w3
Y3
w4
v2
w5
39/49
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é ;
Réunion FRAGILE, Aussois, 23 mars 2005
40/49
Algorithme (3)

Phase 2 : descente de la racine aux feuilles
 Rotation de la décomposition ;
Réunion FRAGILE, Aussois, 23 mars 2005
41/49
Algorithme (3)

Phase 2 : descente de la racine aux feuilles
 Application de la sous procedure.
Réunion FRAGILE, Aussois, 23 mars 2005
42/49
Complexité

Algorithme en O(N.k3)
avec N=|V(G)| et k la largeur de la décomposition
arborescente en entrée

V.Bouchitté, D.Kratsch, H.Muller and
I.Todinca. On treewidth approximations.
Il existe un algorithme polynomial qui calcule une
décomposition arborescente de largeur au plus
tw(G).log tw(G).
Réunion FRAGILE, Aussois, 23 mars 2005
43/49
Plan
Stratégie d’encerclement
Connexité
Décomposition arborescente connexe
Rapport cs(G)/s(G)
Réunion FRAGILE, Aussois, 23 mars 2005
44/49
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.
Réunion FRAGILE, Aussois, 23 mars 2005
45/49
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
T
T
T
1
Réunion FRAGILE,
Aussois, i23 mars 2005i+1
Tr
46/49
Idée de la démonstration (2)

Décomposition arborescente connexe
Empécher la recontamination
≤ tw (G) agents
≤ tw(G) log n/2 agents
Réunion FRAGILE, Aussois, 23 mars 2005
47/49
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
Réunion FRAGILE, Aussois, 23 mars 2005
48/49
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 ;
algorithmes répartis ;
algorithmes paramétrés.
Réunion FRAGILE, Aussois, 23 mars 2005
49/49
Téléchargement