probability-based approach for solving the rectilinear steiner tree problem

15
Probability-based approach for solving the Rectilinear Steiner tree problem Jayakrishnan Iyer

Upload: lenka

Post on 08-Jan-2016

61 views

Category:

Documents


6 download

DESCRIPTION

Probability-based approach for solving the Rectilinear Steiner tree problem. Jayakrishnan Iyer. Steiner Tree. Steiner Tree – Given a set of points in a plane N={1,2,…,n} and graph G = (N,E) wherein Here we associate a weight w e for all e in E. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Probability-based approach for solving the Rectilinear Steiner tree problem

Probability-based approach for solving the Rectilinear Steiner tree problem

Jayakrishnan Iyer

Page 2: Probability-based approach for solving the Rectilinear Steiner tree problem

Steiner Tree

Steiner Tree – Given a set of points in a plane N={1,2,…,n} and graph G = (N,E) wherein

Here we associate a weight we for all e in E. A Steiner Tree for G is a subgraph St = (N’,E’) for all

such that

1)St is a tree and 2)For all s,t in T, there exists only one path from s to t in

St

{( , ) | , , }E i j i N j N i j

'N N 'E E

'T N

Page 3: Probability-based approach for solving the Rectilinear Steiner tree problem

Steiner tree problem

Minimize Length of the steiner tree. It is an NP-complete problem Rectilinear Steiner Trees – Distance between 2

points is the sum of distances in the horizontal and vertical dimensions

Very Important in VLSI routing. Some good theoretical bounds

O(n22.62n) by Ganley/Cohoon nO(√n) by Smith – quite impractical due to large

exponent. O(n22.38n) by Fobermeir/Kaufmann and αn for random

instances where α<2

Page 4: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic Model

Grid graph – Define a grid for any set of points P={p1,p2,…,pn} where each pi is (xi,yi) and xi≠xj and yi ≠yj for i ≠ j.

Optimal RST for segments in tree T such that wire length for all segments over T is minimum.

Define Horizontal and Vertical Grid distances

for a given grid.

Page 5: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic Model(cont’d)

An Eg. Grid graph for a set of 3 points

Optimal Steiner tree corresponding to this

l1l2

p1

p2

p3

12

3

1

2

3

p1

p2

p3

Sl(Steiner Point)

Page 6: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic Model (cont’d)

A generic grid graph (ref. chen et. al.)

Page 7: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic Model (cont’d)

Here m and n are the vertical and horizontal grid sizes respectively.

M = number of all possible shortest paths from pi to pj

Number of paths througth R(I,J-1) i.e. R2 = F(m,n)

Number of paths througth C(I,J) i.e. C2 = G(m,n)

F(1,q) = G(q,1) = 1 and F(q,1) = G(1,q) = q

Page 8: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic Model (cont’d)

Probability of Shortest path through R(I,J-1) = F(m,n)/M. Similarly for path through C(I,J) = G(m,n)/M.

F(m,n) = F(m-1,n) + G(m-1,n) and G(m,n) = F(m,n-1) + G(m,n-1) Also, F(m,n-1) = F(m-1,n-1) + G(m-1,n-1)

And G(m-1,n) = G(m-1,n-1) + F(m-1,n-1)

Page 9: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic model (cont’d)

Theorem: If for q>0 F(q,0)=G(0,q) = 1 then

Where m,n>1.

0

1

( , ) ( 1, )

( , ) ( 1, )

( 1, ) ( , 1)

n

k

n

k

F m n F m k

G m n G m k

M F m n G m n

Page 10: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic analysis (cont’d)

F(m,n) and G(m,n) can be recursively defined as,

1( , ) ( , 1)

1( , ) ( , 1)

1

m nF m n F m n

nm n

G m n G m nn

Page 11: Probability-based approach for solving the Rectilinear Steiner tree problem

Probabilistic model (cont’d)

Probability Matrix: For any row segment R(I+k,J-l-1) where 0<k<n and

0≤l≤ m-1, we have for M shortest paths, number of paths passing through the given segment,

The probability of a shortest path passing through these segments is given by,

Similarly for a column segment the probability is,

( , )[ ( , ) ( , )] ( , ). ( 1, )F m l n k F l k G l k F m l n k F l k

( , ). ( 1, )( , 1)

( 1, )

F m l n k F l kPR I k J l

F m n

( , ) ( , 1)( , )

( , 1)

G m l n k G l kPC I k J l

G m n

Page 12: Probability-based approach for solving the Rectilinear Steiner tree problem

Algorithms

Pure Probabilistic - steps 1)Compute r(i),c(i),H(k) and V(k) for given

P={p1,p2,…,pn} where i is in {1,2,…,n} and K=1,2,…,n-12)Compute F(m,n) and G(m,n).3)Obtain PR and PC for all the N2 pairs and compute the

matrix and normalize them.PR(i,j) = PR(i,j)/H(j) for 1<i<n and 1<j<n-1

PC(i,j) = PC(i,j)/V(i) for 1<i<n-1 and 1<j<n4)Ignore segments leading to a cycle.5)Delete redundant and degree-one segments not

connected to any point in P.6)Obtain the set of Steiner points S and compute wire-

length.

Page 13: Probability-based approach for solving the Rectilinear Steiner tree problem

Algorithm (cont’d)

Time Complexity of this algorithm is O(N4) due to the time taken for nomalizing the N2

pairs for each of the row and column probability matrices.

Other algorithms have only a slight modification the previous algorithm and reduce the time complexity to O(N3) by using MST to get the N-1edge set.

Page 14: Probability-based approach for solving the Rectilinear Steiner tree problem

Certain dilemmas

Although wire length computation results have been provided in the paper, it does not hint as to how accurately the problem is solved (upper bound on success).

Time taken for a particular point set instance of the problem.

Page 15: Probability-based approach for solving the Rectilinear Steiner tree problem

Questions ??