Stratégie d’encerclement connexe dans les graphes

49
Stratégie d’encerclement connexe dans les graphes Pierre Fraigniaud, Nicolas Nisse LRI Orsay

description

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. - PowerPoint PPT Presentation

Transcript of Stratégie d’encerclement connexe dans les graphes

Page 1: Stratégie d’encerclement connexe dans les  graphes

Stratégie d’encerclement connexe dans les graphes

Pierre Fraigniaud, Nicolas Nisse

LRI Orsay

Page 2: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 2/49

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.

MotivationsSécurité dans les réseaux informatiques ;

Maintenance de réseaux de pipelines ;

Opération de secours dans des souterrains.

Page 3: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 3/49

Plan

Stratégie d’encerclement

Connexité

Décomposition arborescente connexe

Rapport cs(G)/s(G)

Page 4: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 4/49

Encerclement dans un graphe Stratégie d’encerclement (Parson. [GTC,1976]). Suite de 3 opérations élémentaires

1. Placer un agent sur un sommet du graphe ;2. Déplacer un agent le long d’une arête ;3. Supprimer un agent d’un sommet du graphe.

Résultant en le nettoyage du grapheUn 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’agentss(G), plus petit nombre d’agents nécessaire à une stratégie

d’encerclement dans le graphe G.

Page 5: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 5/49

Graphes simples

Chemin

Page 6: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 6/49

Graphes simples

s(Pn) = 1

Anneau

Chemin

Page 7: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 7/49

Graphes simples

s(Pn) = 1

Anneau

Chemin

s(An) = 2

Page 8: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 8/49

Stratégie d’encerclement monotone

DéfinitionUne 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.

Page 9: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 9/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

Page 10: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 10/49

Décomposition arborescente (T, (Xv)vV(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)vV(T) ), avec P un chemin

Largeur linéaire de G, pw(G).

Page 11: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 11/49

Exemple

Page 12: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 12/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.

Page 13: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 13/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+1XrXiXiXi Xi+1

Page 14: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 14/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.

Page 15: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 15/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

Page 16: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 16/49

Plan

Stratégie d’encerclement

Connexité

Décomposition arborescente connexe

Rapport cs(G)/s(G)

Page 17: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 17/49

Introduction de la connexité dans le modèle

Limites du modèleImpossibilité de se déplacer à volonté dans la réalité ;Il est préférable que agents restent groupés.

Communications non sécurisées

Page 18: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 18/49

Introduction de la connexité dans le modèle

Limites du modèleImpossibilité 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.

Page 19: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 19/49

Exemple

Page 20: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 20/49

Exemple

Page 21: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 21/49

Exemple

Page 22: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 22/49

Exemple

Page 23: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 23/49

Exemple

s(T) = 3

Page 24: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 24/49

Exemple

s(T) = 3

Page 25: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 25/49

Exemple

s(T) = 3

cs(T) = 4 = 2s(T) - 2

Page 26: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 26/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.

Page 27: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 27/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 ;

Page 28: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 28/49

Cas des graphes arbitraires P.D. Seymour et R. Thomas. Call Routing and the

Ratcatcher. Combinatorica, 14(2):217-241, 1994. Carving connexe ;

F. Fomin, P. Fraigniaud et D. Thilikos [rapport technique, 2004]

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)|).

Page 29: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 29/49

Plan

Stratégie d’encerclement

Connexité

Décomposition arborescente connexe

Rapport cs(G)/s(G)

Page 30: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 30/49

Définitions :

Arête connexee est dite connexe si G[T1(e)] et G[T2(e)] sont des sous graphes connexes de G.

Décomposition arborescente connexe (T,X)Toute arête de E(T) est connexe.

Largeur arborescente connexe, ctw(G).

T1(e) T2(e)

e

Page 31: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 31/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.

Page 32: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 32/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.

Page 33: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 33/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.

(T,X) sous connexe en vV(T)- G[T(v)] est un sous graphe connexe de G ;- toute arête de T(v) est sous connexe.

T(v)

e

u

w

v

Page 34: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 34/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

Page 35: Stratégie d’encerclement connexe dans les  graphes

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 :

V’

w1 w2 w3 w4 w5

v

Page 36: Stratégie d’encerclement connexe dans les  graphes

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 :- détermine les composantes connexes de Xv : Y1 ,…,Yr;

Y1 Y2 Y3

V’

w1 w2 w3 w4 w5

Page 37: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 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 :- 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

Y1 Y2 Y3

w1 w2 w3 w4 w5

Y1 Y2 Y3

V’

w1 w2 w3 w4 w5

Page 38: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 38/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

Y1 Y2 Y3

w1 w2 w3 w4 w5

V’

v1

v2

V’

Y1 Y2 Y3

V’

w1 w2 w3 w4 w5

Page 39: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 39/49

Algorithme (2)

Y1 Y2 Y3

w1 w2 w3 w4 w5

V’

v1

v2Y1 Y2 Y3

V’

w1 w2 w3 w4 w5

V’V’

La décomposition arborescente résultante est sous connexe en les nouveaux descendants de v’

Page 40: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 40/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é ;

Page 41: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 41/49

Algorithme (3) Phase 2 : descente de la racine aux feuilles

Rotation de la décomposition ;

Page 42: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 42/49

Algorithme (3) Phase 2 : descente de la racine aux feuilles

Application de la sous procedure.

Page 43: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 43/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).

Page 44: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 44/49

Plan

Stratégie d’encerclement

Connexité

Décomposition arborescente connexe

Rapport cs(G)/s(G)

Page 45: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 45/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.

Page 46: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 46/49

Idée de la démonstration (1) 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

T1 Ti Tr T1 Ti Ti+1 Tr

Page 47: Stratégie d’encerclement connexe dans les  graphes

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

≤ tw(G) log n/2 agents

Page 48: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 48/49

Idée de la démonstration (2) Décomposition arborescente connexe

≤ tw(G) log n/2 agents

cs(G) ≤ tw(G). log2 n

Empécher la recontamination

≤ tw (G) agents

cs(G) ≤ s(G). (log2 n + 2)

Page 49: Stratégie d’encerclement connexe dans les  graphes

Réunion FRAGILE, Aussois, 23 mars 2005 49/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.