The Rectilinear Steiner Arborescence Problem is NPComplete Weiping Shi (Dept. of Electrical Engg. TAMU) Chen Su (Inet Technologies, TX) SIAM Journal of Computing 2006 Presenter: Vishal Kapoor 1 Getting Started – Background and Definitions 2 Steiner Tree • A minimal length tree connecting a set of points in a plane • May have Steiner Points 3 Rectilinear Steiner Tree • A Steiner tree in which every path is made up of straight line segments 4 Rectilinear Steiner Arborescence (RSA) • Directed Steiner tree rooted at origin • Points are in the first quadrant of the plane • Every segment in the tree is directed left to right or bottom to top 5 Difference? • RSA is a shortest distance tree with respect to the origin 6 Rectilinear Steiner Minimum Arborescence (RSMA) • A minimum length RSA • Difference between RSA and RSMA: 7 Applications • Useful in VLSI routing • It has been shown that routing trees based on such structures may have much lesser delays than those based on traditional Steiner trees 8 The Proof 9 My thoughts about the proof • • • • Very “artistic” (geometric) proof Cited in literature as “pretty” Uses graph drawing techniques One of the clearest papers that I have read – provides details very clearly! 10 The Decision Problem • A Set of points P = {p1, p2 … pn} in the plane and a positive number k • Is there an RSA of total edge length k or less? • Proof: Reduction from 3-SAT 11 3-SAT • A set of variables V = {v1, v2 … vn} and clauses C = {c1, c2 … cn} • Each clause has at most 3 literals. • Is there an assignment of variables so that all clauses are satisfied? • Satisfying the 3-CNF form is NP-Complete • Eg: (v1 OR v2 OR v6) AND (v1 OR v8) … 12 3-SAT problem as a planar graph (Planar 3-SAT) 13 (Planar graph used in the paper) 14 A Quick Recap • Steiner Tree / Points • Rectilinear Steiner Tree • RSA, RSMA + differences • The Decision Problem • 3-SAT, Planar 3-SAT 15 Reduction Technique • Based on Component Design • Steps: 1. 3-SAT graph is reduced to another planar graph H 2. H is embedded into a grid (as graph R) 3. Each vertex of R is replaced by a “tile” 16 First Step – Transforming G to H • H is planar with maximum degree = 3 • Each vertex of G contribute deg(v) vertices in H • Eg: 17 Properties of H: New Vertices – OR, NOT • “Nice” form • If not in Nice form: – Insert NOT vertex wij • Suppose the clause looks like below: – Insert CLAUSE vertex cj for each clause – Insert OR vertex c’j to connect big clauses 18 Example: 19 Second Step: Embedding H as graph R in a grid • Can be done in polynomial time O(V2) Valiant 20 Properties of R: Nice “drawing” techniques 1. Vertices only unit distance apart are connected 2. For each CLAUSE vertex: - Positive variable enters from left - Negative variable enters from below Eg: -> 21 … cont’d 3. Each OR vertex horizontal vertices in R occupies 2 22 Final Step: Covering R with tiles Quadrupeds and forbidden regions • These are a set of RSAs that connect the white points; each RSA is rooted at a black point • Has 2 min forests, both of length • Black points are interface points, white points are “inside” points 23 Another Recap • 3 steps for reduction • 1. Transforming G into H – Always looking out for "nice" clauses – Adding OR, NOT, CLAUSE vertices to make "nice" form • 2. Embedding H into a grid as R – Adding OR vertices having 2-horizontal-vertices • Quadrupeds, Forbidden regions, minimum forests made of RSAs • Now we have to see what is tiling 24 Tiling 25 A basic tile • Represents a single variable • Made up of overlapping quadrupeds • Has height and width = 96 units – Only OR tile has height = 96 and width = 2x96 • Has 26 27 Parity of a tile • 1 if the rightmost vertex connected by horizontal edge • else 0 • Tiles enforce (propagate) parities on neighboring tiles 28 Parity Enforcement (Propagation) 29 Flipping Parity: NOT Tiles • A horizontal NOT tile with and 30 31 CLAUSE tiles • Have the same interface to the left and to the bottom (Why?) • Min forest (black) has length 108 achieved iff tile to left has parity 1 and tile below has 0 32 OR tile • Total width 192 • Always tries to achieve parity = 1 33 Another Recap • A basic tile that represents ordinary variables • Definition of Parity and Parity enforcement (propagation) • NOT, CLAUSE and OR tiles and their properties and dimensions 34 Let’s go to the Final Result • We are done – we have all the structures that we need • All structures till were made / manipulated locally and can be constructed in polynomial time • Thus the final reduction should be polynomial time 35 Connecting tiles together Basic Tiles and Trials • Intuitively, trials “close” the basic tiles • Are not in any forbidden region, so don’t affect how white points are connected 36 37 RSA problem is NP-Complete • L = sum of min edge lengths to connect all black points + min forest length of each type of tile • A planar 3-SAT having m clauses has a satisfying assignment iff the set of points has an RSA of length L+108m 38 Questions / Comments? 39 Homework – A Descriptive Question • • RSA is NP-Complete by reduction to 3-SAT 3-SAT is “Strongly NP-Complete” 1. What does “Strongly NPC” mean in a general sense? Give a precise mathematical definition and 1 example explaining the idea What types of problems are not Strongly NP-complete? What are they called? Is there a complexity class/classes for such languages? What does this mean in terms of circuit complexity? 2. 3. 4. A PTIME algorithm for solving the homework: 1: Choose any 1 color and answer questions of that color only 2: Google for a column (and a small paper) on NP-hardness by Garey & Johnson for checking this out Evaluation: I will grade based on the quality of your answer – not quantity 40 Have a nice weekend! 41