240 likes | 394 Views
Approximating Node-Weighted Survivable Networks. Zeev Nutov The Open University of Israel. Talk Outline. Problem Definition History and Our Results Greedy Algorithm for Node Weighted Steiner Trees Reducing NWSN to Finding Minimum Weight Edge-Cover of Uncrossable Set-Family
E N D
Approximating Node-Weighted Survivable Networks Zeev Nutov The Open University of Israel
Talk Outline • Problem Definition • History and Our Results • Greedy Algorithm for Node Weighted Steiner Trees • Reducing NWSN to Finding Minimum Weight Edge-Cover of Uncrossable Set-Family • Spider-Cover Decomposition of Edge-Covers of Uncrossable Set-Families • Algorithm for Covering Uncrossable Set-Families • Node-Weighted k-Flow is harder than Densest l-Subgraph
Problem Definition Survivable Network (SN) Instance: A graph G = (V,E), weight function w on edges/nodes, U V, and connectivity requirements r(u,v), u,vU. Objective: A minimum weight spanning subgraph Jof G containing U so that λJ(u,v) ≥ r(u,v) for all u,vU λJ(u,v) =uv-edge-connectivity in J Approximability Edge-weights: 2-approximable [Jain, FOCS 98], APX-hard Node-weights: for r(u,v) {0,1} O(log n)-approximable, Set-Cover hard [Klein and Ravi, IPCO 93]
Theorem 1 NWSN admits a rmax·3H(n)-approximation algorithm. Theorem 2 ρ-approximation for NWSN with |U|=2 implies 1/ρ2-approximation for Densest l-Subgraph. History and Our Results What about node-weights and rmax =2? We do not have a polylogarithmic approximation for any rmax… But this is not our fault!
4 4 d a 1 5 5 3 3 3 3 c 2 2 b Node Weighted Steiner Tree Instance: A graph G=(V,E), a set U V of terminals, weights w(v) for nodes in V−U. Objective: Find a min-weight subtree T of G containing U. v(I) = 0 w(I) = 8 v(I) = 1 w(I) = 7 v(I) = 0 w(I) = 5 The “node-weight” w(I)of a partial solutionI E: w(I) = w(V(I)) = the weight of endnodes of I The “deficiency”of a partial solution I: v(I) = # (components containing terminalsin (V,I)) -1.
The Greedy Algorithm Initialize: I While ν(I) > 0 do: Find S E – I so that I I F Return I. The Density Condition Theorem: If ν is decreasing and w is subadditive then the greedy algorithm has approximation ratio ρ·H(ν()). Objective: Find in polynomial time an “augmentation” S that satisfies the density condition for “small” ρ.
This is a spider: A Lesson in Zoology These are also spiders: In general, a spider is a tree on at least 2 nodes, which has at most one node of degree ≥ 3.
Spider Decomposition of Trees Center – The single node of degree ≥3. If there is no node of degree ≥ 3, any node can be a center. Leaves – The non-center nodes of degree 1. Lemma: Every tree can be decomposed into node-disjoint spiders such that every leaf of the tree belongs to a unique spider. • Select a node v whose sub-tree is a spider. • Remove v and its sub-tree. • Remove the path from v to its closet ancestor of degree 3. • Repeat.
2 4 7 3 Finding the First Augmentation T = optimal tree;we may assume: terminals = leaves of T {Si} – spider-decomposition of T. The spiders are disjoint By averaging, there is a spider Si such that: Finding a spider S (in fact, a Shortest Path Tree) of optimal density: • For each node s in the graph • Sort the paths from s to terminals in increasing weight order. • Add the two lightest paths. • Add paths in increasing weight order, till reaching minimum density. 3 Terminals: 2 Weight: 8 Density: 8 = 8/(2-1) Terminals: 3 Weight: 12 Density: 6 = 12/(3-1) Terminals: 4 Weight: 19 Density: ~ 6.3=19/(4-1)
The Complete Algorithm The previous algorithm finds an augmentation obeying the Density Condition with ρ=2if the current partial cover is I = . • Finding an augmentation with a general partial cover I: • Contract every connected component of (V,I) into a super-node; a super node is a super-terminal if it contains a terminal. • Find an augmentation in the new graph (the partial cover is now ). The approximation ratio of the algorithm is 2H(|U|).
Algorithm for NWSN Instance: A graph G = (V,E), weight function w on the nodes, U V, and connectivity requirements r(u,v), u,vU. Objective: A minimum weight spanning subgraph Jof G containing U so that λJ(u,v) ≥ r(u,v) for all u,vU. The algorithm has rmax iterations. In iteration k we find a 3H(n)-approximation for the problem: Given: A graph J=Jk-1 with λJ(u,v) ≥ min{r(u,v),k-1} for all u,vU Find: An edge set I with w(V(I)) minimumso that λJ+I(u,v) ≥ min{r(u,v),k} for all u,vU Hence after rmax iterations, a feasible solution of weight at most rmax ·3H(n)·opt is found.
Covers of Uncrossable Set-Families The augmentation problem we want to solve is a particular case of the following problem: Node-Weighted Set-Family Edge-Cover (NWSFC) Instance: A graph (V,E), node weights {w(v):vV}, and an uncrossable set-family F on V. Objective: Find an F-cover I ⊆ Eof minimum node-weight (edge e covers set X if e has exactly one endnode in X) F is uncrossable if X,YF implies at least one of the following: Y V−Y X ∩Y, XUYF or X X − Y, Y −X F V−X Note: The inclusion minimal members of F are pairwise disjoint.
Spider-Covers of Uncrossable Set-Families • C(F) = the family of inclusion minimal sets in F (min-cores) • F(C) = sets in F that contain a unique min-core C (cores) • F(s,C) = {X F(C) : sV-X} • F(s,C) = U{F(s,C) : C C} • Definition: • Let C⊆C(F) and let sV. • An edge set S is an F(s,C)-cover if: • S covers F(s,C) for every CC • if C={C} then no member of F(C) contains s • An F(s,C)-cover S is a spider-cover if it can be • partitioned into F(s,C)-covers {SC:CC} so that • the node sets {V(SC) −s} are pairwise disjoint.
Spider-Coves Decompositions • Definition of a Spider-Cover Decomposition: • A sub-partition S1,…,Sq of a cover I is a spider cover • decomposition of I if there exists a partition C1, …,Cq of • C(F) and centers s1,…,sqV so that: • Each Si is an F(si,Ci)-cover • - The node sets V(Si) are pairwise disjoint. Spider-Cover Decomposition Theorem: Any uncrossable family cover has a spider-cover decomposition. Proof: Later.
Covering Uncrossable Families Density Condition (for I=) = |C(F)| = # (min-cores) Δ(S) = decrease in the deficiency caused by adding S to the partial solution S is a spider with l leaves: Δ(S) ≥ l/2 (tight for l=2) S is an F(s,C)-coverwith |C|=l: Δ(S) ≥ l/3 (tight for l=3) The Spider-Cover Lemma Tight Example If S is an F(s,C)-cover then Δ(S) ≥ (|C|-1)/2 if |C| ≥2 Δ(S) = 1 if |C| =1
The Algorithm The Spider-Cover Lemma implies that there exists a spider-cover that satisfies the Density Condition with ρ=3. • Such spider-cover can be found in polynomial time assuming we can compute in polynomial time: • The family C(F) of min-cores (max-flows) • Minimum weight F(s,C)-cover (min-cost k-flows) Thus the Greedy Algorithm can be implemented in polynomial time with ρ=3. Approximation ratio: 3H(()) = 3H(|C(F)|) ≤3H(n)
The Spider-Cover Decomposition Thm – Proof Sketch Notation F – uncrossable family (X,YF implies X ∩Y, XUYF or X−Y,Y−XF) I– an F-cover (for any XF there is eI with exactly one endnode in X) We may assume that I is an inclusion minimal F-cover. Then for every eI there exists a witness setWe F, namely: e is the unique edge in I that covers We. A family W = {We: e I} is called a witness family for I (every eI has a unique witness set in We W). Lemma: Let I be an inclusion minimal cover of an uncrossable family F. Then there exists a witness family L for I which is laminar.
The Spider-Cover Decomposition Thm – Proof Sketch Assumptions: – Every member of F is a core – Every minimal member (leaf) of L is a min-core. • For a min-core CC(F) define: • LC= the maximal set in L containing C • eC= the unique edge in I covering LC, eC=sCvC, vC LC • SC = edges in I contained in LC plus eC
The Spider-Cover Decomposition Thm – Proof Sketch • Lemma: • The sets {LC : C in C(F)} are pairwise disjoint. • The sets {SC : C in C(F)} are pairwise disjoint. • SC covers all cores contained in LC. Corollary: Any partition C1, …, Cq of C(F) induces a partition S1,…,Sq of I. We seek a partition so that S1,…,Sqis a spider-cover decomposition. - A natural partition of C(F) is by the stars of {eC : CC(F)}. - Every star with at least 2 edges indeed induces a spider-cover. - This approach fails for 1-edge stars; SC is not a spider-cover if there is a dangerous set MC F containing LC+sC
The Spider-Cover Decomposition Thm – Proof Sketch • How do we group dangerous cores? • group some together, or • assign to “non-dangerous” stars. Observation: Every dangerous MC is covered by some edge eC’ . Grouping dangerous cores together: The relation R={(C,C’) : MC ∩ MC’ ≠ } is an equivalence, and its classes of size ≥2 induce spider-covers (center − any node in the intersection of MC’s) Assigning singleton classes: Every singleton class {MC} of R is assigned to the part of any edge eC’ covering MC .
Reducing NWSN to bipartite DlS s A I B t
Summary and Open Questions What did we do? Generalized the decomposition of a tree into spiders to covers of uncrossable families (looks easy after found…) What do we get? E.g., an rmax·3H(n)-approximation algorithm for NWSN. Any other applications? Probably YES. Open Question: Node-Weighted k-Flow (NWkF) is a special case of NWSN where r(s,t)=k and r(u,v)=0 otherwise. NWkF admits a k-approximation algorithm. Anything better, even for unit weights?