Slides - TAMU Computer Science Faculty Pages

advertisement
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
Download