on solving covering problems
TRANSCRIPT
![Page 1: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/1.jpg)
On Solving Covering Problems
33rd DAC, June 5, 1996
Olivier CoudertSynopsys, Inc.
![Page 2: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/2.jpg)
Summary
Introduction
Branch-and-bound
Lower Bound Computation
Experiments & Conclusion
![Page 3: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/3.jpg)
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
![Page 4: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/4.jpg)
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
![Page 5: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/5.jpg)
Binate Covering Problem
2-level Boolean function and relation minimization
State minimization
DAG covering
Exact encoding
3-level NAND minimization
....
![Page 6: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/6.jpg)
Summary
Introduction
Branch-and-bound
Lower Bound Computation
Experiments & Conclusion
![Page 7: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/7.jpg)
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
![Page 8: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/8.jpg)
Branch-and-bound Resolution
Pruning technique
Lower bound computation
![Page 9: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/9.jpg)
Summary
Introduction
Branch-and-bound
Lower Bound Computation
Experiments & Conclusion
![Page 10: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/10.jpg)
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
![Page 11: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/11.jpg)
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
![Page 12: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/12.jpg)
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
![Page 13: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/13.jpg)
Greedy Independent Set
Select the minimum degree vertex
![Page 14: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/14.jpg)
Greedy Independent Set
2n+1 vertices
1
n n
Independent set
(n)
(n+1) (2n-1)
Greedy: 2Maximum: n
![Page 15: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/15.jpg)
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
![Page 16: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/16.jpg)
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|)
![Page 17: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/17.jpg)
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
![Page 18: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/18.jpg)
Limit Lower Bound
![Page 19: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/19.jpg)
Limit Lower Bound
![Page 20: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/20.jpg)
Limit Lower Bound
![Page 21: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/21.jpg)
Limit Lower Bound
![Page 22: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/22.jpg)
Limit Lower Bound
![Page 23: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/23.jpg)
Limit Lower Bound
![Page 24: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/24.jpg)
Limit Lower Bound
![Page 25: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/25.jpg)
Limit Lower Bound
![Page 26: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/26.jpg)
Limit Lower Bound
![Page 27: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/27.jpg)
Limit Lower Bound
![Page 28: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/28.jpg)
Limit Lower Bound
![Page 29: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/29.jpg)
Limit Lower Bound
![Page 30: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/30.jpg)
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
![Page 31: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/31.jpg)
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
![Page 32: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/32.jpg)
Summary
Introduction
Branch-and-bound
Lower Bound Computation
Experiments & Conclusion
![Page 33: On Solving Covering Problems](https://reader031.vdocument.in/reader031/viewer/2022030318/58f15a261a28ab25398b46b1/html5/thumbnails/33.jpg)
1
10
100
1000
10000
100000
1000000
Standart
Scherzo
CPU improvement from x10 to x1000