bounding variance and expectation of longest path lengths in dags jeff edmonds, york university

Post on 18-Jan-2016

26 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Bounding Variance and Expectation of Longest Path Lengths in DAGs Jeff Edmonds, York University Supratik Chakraborty, IIT Bombay. Motivation. Statistical timing analysis of circuits Mean and std deviation of component delays provided by manufacturers - PowerPoint PPT Presentation

TRANSCRIPT

Bounding Variance and Expectation of Longest Path Lengths in DAGs

Jeff Edmonds, York UniversitySupratik Chakraborty, IIT Bombay

Motivation

Statistical timing analysis of circuits Mean and std deviation of component delays

provided by manufacturers Joint distributions of component delays difficult to

obtain in practice

The Longest Path Problem Input:

st-DAG G gives job precedence. For each edge i,

xi is the time to complete job i

Output: Time for all jobs to complete in parallel

= length of longest st-path = Maxp i p

xi = X

G

t

x1

x2

s

x3

Easy with Dynamic Programming

The Longest Path Problem Input:

st-DAG G gives job precedence. For each edge i,

xi is the time to complete job i

Output: Time for all jobs to complete in parallel

= length of longest st-path = Maxp i p

xi = X

G

t

x1

x2

s

x3

Inter-dependent random variables

Understand random variable XG

The Longest Path Problem Input:

st-DAG G gives job precedence. For each edge i,

xi is the time to complete job i

Output: Time for all jobs to complete in parallel

= length of longest st-path = Maxp i p

xi = X

G

t

x1

x2

s

x3

Exp[Xi] & Var[Xi]

Bound Exp[XG] & Var[XG]

The Longest Path Problem Input:

t

x1

x2

s

x3

G (x1, x

2, x

3) xG

Exp (2, 2, 4) ?

Var (1, 1, 0) ?

Prob (x1, x

2, x

3) xG

0.5 (1, 1, 4) 4

0.5 (3, 3, 4) 6

Possible distributions :

Prob (x1, x

2, x

3) xG

0.5 (1, 3, 4) 4

0.5 (3, 1, 4) 4

Another possibility :

51

40

XG = Max( x1+x2, x3 )

The Longest Path Problem Input:

t

x1

x2

s

x3

G (x1, x

2, x

3) xG

Exp (2, 2, 4) ?

Var (1, 1, 0) ?

Upper & Lower bounds

XG = Max( x1+x2, x3 )

Contributions Upper bounds of Exp[X

G] and Var[X

G]

A spring “algorithm” for computing bounds Proof no distributions give higher values (skip) Cake distributions that achieve bounds

Lower bounds of Exp[XG] and Var[X

G]

Continuum of values for Exp[XG] and Var[X

G]

Cake distributions that achieve any Exp[X

G] and Var[X

G] within range

Special results for series-parallel graphs

Series Graphs

If G is a series graph,

XG = ∑i xi

Exp[xG] = ∑i Exp[xi]

0 ≤ Var[xG] ≤ (∑i √Var[xi] )2

t

s

Series Graphs

If G is a parallel graph,

XG = Maxi xi

Maxi Exp[xi] ≤ Exp[xG] ≤ ?

0 ≤ Var[xG] ≤ ?

t

s

Representing Random Variables

r0 1

0

5X

X : Two-valued random variable, prob 0.5 for each value

0.5

Representing Random Variables

r0 1

0

5X

0.5

X, Z : Two equivalent independent random variables.

Z

Representing Random Variables

r0 1

0

5X Y

X, Y : Two-valued random variables, prob 0.5 for each value

X, Y have perfect negative correlation

0.5

Exp( Max(x,y) ) = Exp(x) + Exp(y)Var( Max(x,y) ) = 0

Series GraphsIf G is a parallel graph,

XG = Maxi xi

Maxi Exp[xi]

≤ Exp[xG]

≤ Min(

∑i Exp[xi],

Maxi Exp[xi] + √∑i Var[xi] )

0 ≤ Var[xG] ≤ ∑i Var[xi]

t

s

Series Parallel Graphs

Theorem

In a series-parallel graph,

Rules for maximum variance applied recursively to obtain Max Var[X

G].

Not so Max Exp[XG]

Maximizing Var [ XG ]

There are no distributions xi for which Var[x

i] = v

i and Exp[x

i] = m

i

Var[XG] >

Proof uses lots of calculus.

Theorem

Cakes Maximizing Var [ XG ]

There exists “cake” distributions xi such that Var[x

i] = v

i and Exp[x

i] = m

i

Var[XG] =

Theorem

Cake Distribution

t

s

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

Find a cake distribution for each edgewith correct Exp[xi] & Var[xi]

to maximize Var[xG]

Cake Distribution

t

s

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

Exp[xi]

Cake Distribution

t

s

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

Var[xi] = ∑c (ε hc)2

Cake Distribution

t

s

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

Series graphs G: •XG ≈ x1 + x2

• Candle heights add•Want candle heights to be in same location

Cake Distribution

t

s

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

Parallel graphs G: •XG ≈ Max( x1 , x2 )• Candle heights max•Want candle heights to be in different location

Cake Distribution

t

s

A candle locationfor each st-path in G

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

but in the end # candles ≈ # edges

Cake Distribution

t

s

If edge i not in path p,candle for xi at location p

has height 0

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

If candle is selected,then corresponding path p

is the longest path

Cake Distribution

t

s

G (x1, x

2, ...) xG

Exp (2, 8, ....) ?

Var (3, 2, ....) ?

“Springs” give give candle heights.

Cakes Maximizing Var [ XG ]

There exists “cake” distributions xi such that Var[x

i] = v

i and Exp[x

i] = m

i

Var[XG] =

Theorem

Proved

Lower Bound of Var[ XG ]

TheoremVar[xG] ≥ 0

Continuum Results

Theorem

Every Var[XG] in this range achievable.

Lower bound of Exp [ XG ]

r0 1

XG

Upper bound of Exp [ XG ]

p

For st-path p, p is interval for

which p is the longest path.

p P

p = 1

r0 1

XG

Upper bound of Exp [ XG ]

p

i

For edge i, i is interval for which i

is in the longest path.

i =

p i

p

r0 1

Xi

Upper bound of Exp [ XG ]

p

i

If it can edge i contributes all of its

mi =Exp[Xi]

to Exp[XG

]

r0 1

Xi

Upper bound of Exp [ XG ]

p

i

But if vi = Var[Xi] is too small,

it can only contribute

r0 1

XG

Upper bound of Exp [ XG ]

p

i

Conclusion & Future Work Tight analysis for upper bounds was achieved Cake distributions particularly important for

achieving tight bounds A related question is that of finding tight

bounds of mean and expectation of difference in longest paths to two given nodes in a DAG

Spring algorithm involves solving non-linear constraints iteratively. Can an alternative algorithm be obtained?

top related