on solving covering problems

Post on 21-Jan-2018

156 Views

Category:

Software

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

On Solving Covering Problems

33rd DAC, June 5, 1996

Olivier CoudertSynopsys, Inc.

Summary

Introduction

Branch-and-bound

Lower Bound Computation

Experiments & Conclusion

Binate Covering Problem

Input:

Output:

A Boolean function f(y1, ..., yn)

A cost function Cost on the assignment of the yk’s

A minimum cost n-tuple satisfying f

Binate Covering Problem

f = y2y3 + (y1 y4)⊕

Cost(yk = 0) = 0

Cost(yk = 1) = 1

y1 + y3 + y4

y2 + y3 + y4

y2 + y3 + y4

y1 + y2 + y4

y3y1 y2 y4

1

1

0

1

0

0

1

1

1

0

1

0

Minimum solutions:y1 = 1, y2 = y3 = y4 = 0

y1 = y2 = y3 = 0, y4 = 1

Binate Covering Problem

2-level Boolean function and relation minimization

State minimization

DAG covering

Exact encoding

3-level NAND minimization

....

Summary

Introduction

Branch-and-bound

Lower Bound Computation

Experiments & Conclusion

Branch-and-bound Resolutiony1 y2 y3 y4

01

1

011

0

1

x1x2x3

y1

01

y3 y4

10x1

x2

y2=0

y3

1x2

y1=0

y4

0x1

y1=1

y1

x31

y3 y4

11 1

x2

y2=1

y1

x31

y3

11

x2

y4=0

y1

1

y3

1x2

y4=1

Branch-and-bound Resolution

Pruning technique

Lower bound computation

Summary

Introduction

Branch-and-bound

Lower Bound Computation

Experiments & Conclusion

Independent Set Based Lower Bound

x4x1

x5x2

x3

y1 y2 y3 y4

x1x2x3x4x5

1 11

0

0

1

10

01

1

1

01

Cost(yk = 0) = 2

Cost(yk = 1) = 3

Optimum Independent Set

x1x2x3x4x5x6

11

1 1 1 1

11

11

11

1 1 1

11

1

11

1 1

11

11

11

1 1

x1

x2

x3

x4

x5

x6

Solution is n/2, while the lower bound is only 1

Optimum Ind. Set Based Lower Bound

The optimum independent set based lower bound is NP-complete

… and can be arbitrary far fromthe minimum covering solution

Greedy Independent Set

Select the minimum degree vertex

Greedy Independent Set

2n+1 vertices

1

n n

Independent set

(n)

(n+1) (2n-1)

Greedy: 2Maximum: n

Greedy Ind. Set Based Lower Bound

The greedy independent set based lower boundcan be arbitrary far from the optimum independent set based lower bound

..., which itself can be arbitrary far fromthe minimum covering solution

1

x7 1 1

11

111

11

11

111

1

1

x1x2x3x4x5x6

11

1

1

1

1111

x7 1 1

11

111

11

11

111

1

1

x1x2x3x4x5x6

11

1

1

1

111

Greedy

Log-approximation of Covering

Optimal≤ log(|X|) ∗ ≥ OptimalGreedy

log(|X|)

Which Lower Bound is Better?

Greedy Independent set based

Greedy solution based

arbitrary far from the optimal solution

within log(|X|) of the optimal solution

can take advantage of limit lower bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

Limit Lower Bound

further prune

Limit Lower Bound

Takes advantage of an independent set based lower bound to the search spacefurther prune

Can reduce the search spaceby 1000

Which Lower Bound is Better?

Greedy Independent set based

Greedy solution based

arbitrary far from the optimal solution

within log(|X|) of the optimal solution

can take advantage of limit lower bound

Summary

Introduction

Branch-and-bound

Lower Bound Computation

Experiments & Conclusion

1

10

100

1000

10000

100000

1000000

Standart

Scherzo

CPU improvement from x10 to x1000

top related