500 likes | 650 Views
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.
E N D
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
Plan Stratégie d’encerclement Connexité Décomposition arborescente connexe Rapport cs(G)/s(G) Réunion FRAGILE, Aussois, 23 mars 2005
Encerclement dans un graphe • Stratégie d’encerclement (Parson. [GTC,1976]). • Suite de 3 opérations élémentaires • 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
Graphes simples • Chemin Réunion FRAGILE, Aussois, 23 mars 2005
Graphes simples • Anneau • Chemin s(Pn) = 1 Réunion FRAGILE, Aussois, 23 mars 2005
Graphes simples • Anneau • Chemin s(Pn) = 1 s(An) = 2 Réunion FRAGILE, Aussois, 23 mars 2005
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
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
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). Réunion FRAGILE, Aussois, 23 mars 2005
Exemple Réunion FRAGILE, Aussois, 23 mars 2005
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
Xi Xi Xi+1 X1 Xr Xi Xi+1 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é ; • Placer pw(G)+1 agents sur les sommets de Xi • Un agent supplémentaire nettoie les arêtes de Xi • Supprimer les agents des sommets de Xi/Xi+1 Xi Réunion FRAGILE, Aussois, 23 mars 2005
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
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
Plan Stratégie d’encerclement Connexité Décomposition arborescente connexe Rapport cs(G)/s(G) Réunion FRAGILE, Aussois, 23 mars 2005
Communications non sécurisées 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. Réunion FRAGILE, Aussois, 23 mars 2005
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
Exemple Réunion FRAGILE, Aussois, 23 mars 2005
Exemple Réunion FRAGILE, Aussois, 23 mars 2005
Exemple Réunion FRAGILE, Aussois, 23 mars 2005
Exemple Réunion FRAGILE, Aussois, 23 mars 2005
Exemple s(T) = 3 Réunion FRAGILE, Aussois, 23 mars 2005
Exemple s(T) = 3 Réunion FRAGILE, Aussois, 23 mars 2005
Exemple s(T) = 3 cs(T) = 4 = 2s(T) - 2 Réunion FRAGILE, Aussois, 23 mars 2005
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
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
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)|). Réunion FRAGILE, Aussois, 23 mars 2005
Plan Stratégie d’encerclement Connexité Décomposition arborescente connexe Rapport cs(G)/s(G) Réunion FRAGILE, Aussois, 23 mars 2005
e T1(e) T2(e) Définitions : • Arête connexe e 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). Réunion FRAGILE, Aussois, 23 mars 2005
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
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
u w e v T(v) 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. Réunion FRAGILE, Aussois, 23 mars 2005
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
V’ v w1 w2 w3 w4 w5 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 : Réunion FRAGILE, Aussois, 23 mars 2005
V’ Y1 Y2 Y3 w1 w2 w3 w4 w5 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; Réunion FRAGILE, Aussois, 23 mars 2005
V’ Y1 Y2 Y3 Y1 Y2 Y3 w1 w2 w3 w4 w5 w1 w2 w3 w4 w5 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 Réunion FRAGILE, Aussois, 23 mars 2005
V’ Y1 Y2 Y3 w1 w2 w3 w4 w5 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 v2 Y1 Y2 Y3 w1 w2 w3 w4 w5 Réunion FRAGILE, Aussois, 23 mars 2005
V’ Y1 Y2 Y3 w1 w2 w3 w4 w5 Algorithme (2) • La décomposition arborescente résultante est sous connexe en les nouveaux descendants de v’ V’ V’ V’ v1 v2 Y1 Y2 Y3 w1 w2 w3 w4 w5 Réunion FRAGILE, Aussois, 23 mars 2005
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
Algorithme (3) • Phase 2 : descente de la racine aux feuilles • Rotation de la décomposition ; Réunion FRAGILE, Aussois, 23 mars 2005
Algorithme (3) • Phase 2 : descente de la racine aux feuilles • Application de la sous procedure. Réunion FRAGILE, Aussois, 23 mars 2005
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
Plan Stratégie d’encerclement Connexité Décomposition arborescente connexe Rapport cs(G)/s(G) Réunion FRAGILE, Aussois, 23 mars 2005
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
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 Réunion FRAGILE, Aussois, 23 mars 2005 T1 Ti Tr T1 Ti Ti+1 Tr
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
cs(G) ≤ s(G). (log2 n + 2) Idée de la démonstration (2) • Décomposition arborescente connexe Empécher la recontamination ≤ tw (G) agents cs(G) ≤ tw(G). log2 n ≤ tw(G) log n/2 agents Réunion FRAGILE, Aussois, 23 mars 2005
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