Presentation is loading. Please wait.

Presentation is loading. Please wait.

ELEC 5270/6270 Spring 2013 Low-Power Design of Electronic Circuits Linear Programming – A Mathematical Optimization Technique Vishwani D. Agrawal James.

Similar presentations


Presentation on theme: "ELEC 5270/6270 Spring 2013 Low-Power Design of Electronic Circuits Linear Programming – A Mathematical Optimization Technique Vishwani D. Agrawal James."— Presentation transcript:

1 ELEC 5270/6270 Spring 2013 Low-Power Design of Electronic Circuits Linear Programming – A Mathematical Optimization Technique Vishwani D. Agrawal James J. Danaher Professor Dept. of Electrical and Computer Engineering Auburn University, Auburn, AL 36849 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

2 What is Linear Programming
Linear programming (LP) is a mathematical method for selecting the best solution from the available solutions of a problem. Method: State the problem and define variables whose values will be determined. Develop a linear programming model: Write the problem as an optimization formula (a linear expression to be minimized or maximized) Write a set of linear constraints An available LP solver (computer program) gives the values of variables. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

3 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
Types of LPs LP – all variables are real. ILP – all variables are integers. MILP – some variables are integers, others are real. A reference: S. I. Gass, An Illustrated Guide to Linear Programming, New York: Dover, 1990. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

4 A Single-Variable Problem
Consider variable x Problem: find the maximum value of x subject to constraint, 0 ≤ x ≤ 15. Solution: x = 15. Constraint satisfied x 15 Solution x = 15 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

5 Single Variable Problem (Cont.)
Consider more complex constraints: Maximize x, subject to following constraints: x ≥ 0 (1) 5x ≤ 75 (2) 6x ≤ 30 (3) x ≤ 10 (4) x (1) (2) (3) (4) All constraints satisfied Solution, x = 5 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

6 A Two-Variable Problem
Manufacture of chairs and tables: Resources available: Material: 400 boards of wood Labor: 450 man-hours Profit: Chair: $45 Table: $80 Resources needed: Chair 5 boards of wood 10 man-hours Table 20 boards of wood 15 man-hours Problem: How many chairs and how many tables should be manufactured to maximize the total profit? Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

7 Formulating Two-Variable Problem
Manufacture x1 chairs and x2 tables to maximize profit: P = 45x1 + 80x2 dollars Subject to given resource constraints: 400 boards of wood, 5x1 + 20x2 ≤ 400 (1) 450 man-hours of labor, 10x1 + 15x2 ≤ 450 (2) x1 ≥ (3) x2 ≥ (4) Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

8 Solution: Two-Variable Problem
40 30 20 10 P = 2200 Best solution: 24 chairs, 14 tables Profit = 45× ×14 = 2200 dollars Man-power constraint (1) Tables, x2 (24, 14) Material constraint P = 0 (3) (4) Chairs, x1 increasing (2) Profit decresing Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

9 Change Profit of Chair to $64/Unit
Manufacture x1 chairs and x2 tables to maximize profit: P = 64x1 + 80x2 dollars Subject to given resource constraints: 400 boards of wood, 5x1 + 20x2 ≤ 400 (1) 450 man-hours of labor, 10x1 + 15x2 ≤ 450 (2) x1 ≥ (3) x2 ≥ (4) Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

10 Solution: $64 Profit/Chair
40 30 20 10 Best solution: 45 chairs, 0 tables Profit = 64× ×0 = 2880 dollars Man-power constraint (1) Tables, x2 (24, 14) Material constraint (3) P = 0 (4) Chairs, x1 (2) increasing Profit Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb decresing

11 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
A Dual Problem Explore an alternative. Questions: Should we make tables and chairs? Or, auction off the available resources? To answer this question we need to know: What is the minimum price for the resources that will provide us with same amount of revenue from sale as the profits from tables and chairs? This is the dual of the original problem. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

12 Formulating the Dual Problem
Revenue received by selling off resources: For each board, w1 For each man-hour, w2 Minimize 400w w2 Subject to constraints: 5w1 + 10w2 ≥ 45 20w1 + 15w2 ≥ 80 w1 ≥ 0 w2 ≥ 0 Resources: Material: 400 boards Labor: 450 man-hrs Profit: Chair: $45 Table: $80 Resources needed: Chair 5 boards of wood 10 man-hours Table 20 boards of wood 15 man-hours Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

13 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
The Duality Theorem If the primal has a finite optimum solution, so does the dual, and the optimum values of the objective functions are equal. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

14 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
Primal-Dual Problems Primal problem Fixed resources Maximize profit Variables: x1 (number of chairs) x2 (number of tables) Maximize profit 45x1+80x2 Subject to: 5x1 + 20x2 ≤ 400 10x1 + 15x2 ≤ 450 x1 ≥ 0 x2 ≥ 0 Solution: x1 = 24 chairs, x2 = 14 tables Profit = $2200 Dual Problem Fixed profit Minimize value Variables: w1 ($ value/board of wood) w2 ($ value/man-hour) Minimize value 400w1+450w2 Subject to: 5w1 + 10w2 ≥ 45 20w1 + 15w2 ≥ 80 w1 ≥ 0 w2 ≥ 0 Solution: w1 = $1, w2 = $4 value = $2200 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

15 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
LP for n Variables n minimize Σ cj xj Objective function j =1 n subject to Σ aij xj ≤ bi, i = 1, 2, . . ., m j =1 n Σ cij xj = di, i = 1, 2, . . ., p j =1 Variables: xj Constants: cj, aij, bi, cij, di Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

16 Algorithms for Solving LP
Simplex method G. B. Dantzig, Linear Programming and Extension, Princeton, New Jersey, Princeton University Press, 1963. Ellipsoid method L. G. Khachiyan, “A Polynomial Algorithm for Linear Programming,” Soviet Math. Dokl., vol. 20, pp , 1984. Interior-point method N. K. Karmarkar, “A New Polynomial-Time Algorithm for Linear Programming,” Combinatorica, vol. 4, pp , 1984. Course website of Prof. Lieven Vandenberghe (UCLA), Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

17 Basic Ideas of Solution methods
Extreme points Extreme points Objective function Objective function Constraints Constraints Simplex: search on extreme points. Complexity: polynomial in n, number of variables Interior-point methods: Successively iterate with interior spaces of analytic convex boundaries. Complexity: O(n3.5L), L = no. of int. values Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

18 Integer Linear Programming (ILP)
Variables are integers. Complexity is exponential – higher than LP. LP relaxation Convert all variables to real, preserve ranges. LP solution provides guidance. Rounding LP solution can provide a non-optimal solution. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

19 Traveling Salesperson Problem (TSP)
4 6 12 5 27 1 12 18 15 20 19 10 2 3 5 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

20 Solving TSP: Five Cities
Distances (dij) in miles (symmetric TSP, general TSP is asymmetric) City j=1 j=2 j=3 j=4 j=5 i=1 18 10 12 27 i=2 5 20 i=3 15 19 i=4 6 i=5 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

21 Search Space: No. of Tours
Asymmetric TSP tours Five-city problem: 4 × 3 × 2 × 1 = 24 tours Ten-city problem: 362,880 tours 15-city problem: 87,178,291,200 tours 50-city problem: 49! = 6.08×1062 tours Time for enumerative search assuming 1 μs per tour evaluation = 1.93×1055 years Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

22 A Greedy Heuristic Solution
Tour length = = 60 miles (non-optimal) City j = 1 j = 2 j = 3 j = 4 j = 5 i = 1 (start) 18 10 12 27 i = 2 5 20 i = 3 15 19 i = 4 6 i = 5 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

23 ILP Variables, Constants and Constraints
4 x14 ε [0,1] d14 = 12 5 x15 ε [0,1] 1 d15 = 27 Integer variables: xij = 1, travel i to j xij = 0, do not travel i to j Real constants: dij = distance from i to j x12 ε [0,1] d12 = 18 x13 ε [0,1] d13 = 10 2 3 x12 + x13 + x14 + x15 = 1 four other similar equations Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

24 Objective Function and ILP Solution
Minimize ∑ ∑ xij × dij i = 1 j = 1 5 ∑ xij = 1, for all i, i.e., every node i has exactly one outgoing edge. j = 1 j ≠ i xij j =1 2 3 4 5 i =1 1 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

25 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
ILP Solution d54 = 6 4 5 d45 = 6 1 d21 = 18 d13 = 10 2 3 d32 = 5 Total length = 45 but not a single tour Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

26 Additional Constraints for Single Tour
Following constraints prevent split tours. For any subset S of cities, the tour must enter and exit that subset: ∑ xij ≥ 2 for all S, |S| < 5 i ε S j ε S Remaining set At least two arrows must cross this boundary. Any subset Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

27 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
ILP Solution 4 d54 = 6 d41 = 12 5 1 d25 = 20 d13 = 10 2 3 d32 = 5 Total length = 53 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

28 Characteristics of ILP
Worst-case complexity is exponential in number of variables. Linear programming (LP) relaxation, where integer variables are treated as real, gives a lower bound on the objective function. Recursive rounding of relaxed LP solution to nearest integers gives an approximate solution to the ILP problem. K. R. Kantipudi and V. D. Agrawal, “A Reduced Complexity Algorithm for Minimizing N-Detect Tests,” Proc. 20th International Conf. VLSI Design, January 2007, pp Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

29 Why ILP Solution is Exponential?
found in polynomial time (bound on ILP solution) Must try all 2n roundoff points Second variable Constraints First variable Objective (maximize) Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

30 ILP Example: Test Minimization
A combinational circuit has n test vectors that detect m faults. Each test detects a subset of faults. Find the smallest subset of test vectors that detects all m faults. ILP model: Assign an integer variable ti ε [0,1] to ith test vector Ti such that ti = 1 means we select Ti, otherwise ti = 0 means we eliminate Ti Define an integer constant fij ε [0,1] such that fij = 1, if ith vector Ti detects jth fault Fj, otherwise fij = 0, if ith vector Ti does not detect jth fault Fj Values of constants fij are determined by fault simulation Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

31 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
Test Data Select test Ti if ti = 1 n tests T1 T2 T3 T4 - Ti Tn F1 1 F2 F3 F4 Fj Fm m faults fij = 1; vector Ti detects fault Fj Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

32 Test Minimization by ILP
minimize Σ ti Objective function i =1 n subject to Σ fij ti ≥ 1, j = 1, 2, , m i =1 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

33 Four-Bit ALU Circuit 74181 14 inputs, 8 outputs
Pseudorandom vectors for 100% fault coverage ILP solution Minimized vectors CPU s 285 14 0.65 400 13 1.07 500 12 4.38 1,000 4.17 5,000 12.95 10,000 34.61 16,384 (214, exhaustive set) 87.47 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

34 Finding LP/ILP Solvers
R. Fourer, D. M. Gay and B. W. Kernighan, AMPL: A Modeling Language for Mathematical Programming, South San Francisco, California: Scientific Press, Several of programs described in this book are available to Auburn users. B. R. Hunt, R. L. Lipsman, J. M. Rosenberg, K. R. Coombes, J. E. Osborn and G. J. Stuck, A Guide to MATLAB for Beginners and Experienced Users, Cambridge University Press, 2006. Search the web. Many programs with small number of variables can be downloaded free. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

35 A Circuit Optimization Problem
Given: Circuit netlist Cell library with multiple versions for each cell Select cell versions to optimize a specified characteristic of the circuit. Typical characteristics are: Area Power Delay Example: Minimize power for given delay. Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

36 Gate Library: NAND(X), X = 0 or 1
X: an integer variable for each gate. X = 0, choose gate with small delay Delay = d × fo, where fo = number of fanouts for gate Power = 3 × p × fo d and p are parameters of technology X = 1, choose gate with low power Delay = 2 × d × fo Power = 0.5 × p × fo Normalized gate delay = [(1 – X) + 2 X] × fo Normalized power = [3(1 – X) X] × fo Normalization: d = 1, p = 1 Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

37 Example: One-Bit Full Adder
2 CO SUM A B C 1 3 2 1 1 3 1 1 Number of fanouts, fo Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

38 Define Arrival Time Variables, Tk
Tk = Latest signal arrival time at output of gate k T9 2 T1 = T2 = T3 = 0 T1 CO SUM A B C T5 1 T4 T7 3 2 T10 T6 1 T8 T2 T12 1 3 1 T3 1 T11 Number of fanouts, fo Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

39 Constraint: Gate k in the Circuit
Ti = signal arrival time at ith input of gate k Tk = signal arrival time at gate k output Tk ≥ Ti + (1 – Xk) fo(k) + 2 Xk fo(k), for all i Where, fo(k) = fanout number of gate k Xk = 0, choose fast cell for k Xk = 1, choose low power cell for k Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

40 Arrival Time Constraints on Gate 7
T7 ≥ T5 + (1 – X7) X7 ✕ 2 2 T1 = T2 = T3 = 0 T7 ≥ T6 + (1 – X7) X7 ✕ 2 T1 CO SUM A B C T5 1 T4 T7 3 2 T10 T6 1 T8 T2 T12 1 3 1 T3 1 T11 Number of fanouts, fo Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

41 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
Clock Constraints Ti = 0, for all primary inputs i To ≤ Tc, clock period, for all primary outputs o Combinational Logic Register Register Clock Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

42 Critical Path Constraints
T9 ≤ Tc 2 T1 = T2 = T3 = 0 T1 CO SUM A B C T5 1 T4 T7 T10 3 2 1 T12 ≤ Tc T6 T8 T2 1 3 1 T3 1 T11 Number of fanouts, fo Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

43 Optimization Function
Minimize ∑ 3(1 – Xk) fo(k) Xk fo(k) all gates k Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb

44 ELEC5270-001/6270-001 Spring 2013 Lecture 4 Feb 6 . . .
Typical Result 45 35 25 15 5 (11, 45) Normalized power (22, 7.5) Normalized delay (Tc) Copyright Agrawal, 2007 ELEC / Spring 2013 Lecture 4 Feb


Download ppt "ELEC 5270/6270 Spring 2013 Low-Power Design of Electronic Circuits Linear Programming – A Mathematical Optimization Technique Vishwani D. Agrawal James."

Similar presentations


Ads by Google