Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ramakrishna sramki@gmail.com Lecture#2 CAD for VLSI Ramakrishna sramki@gmail.com.

Similar presentations


Presentation on theme: "Ramakrishna sramki@gmail.com Lecture#2 CAD for VLSI Ramakrishna sramki@gmail.com."— Presentation transcript:

1 Ramakrishna sramki@gmail.com
Lecture#2 CAD for VLSI Ramakrishna

2 Combinatorial Optimization E.g Combinatorial Optimization Reference
Lecture# Outline Combinatorial Optimization E.g Combinatorial Optimization Reference G DeMicheli “Synthesis and Optimization of Digital Circuits” – Ch – 2.4 © Ramakrishna

3 Recap Need for CAD? Handling Complexity Graph Terminology
Combinatorial Optimization Decision problems Solution with certain characterisitics. Optimization Problems What is best/optimal/exact solution. © Ramakrishna

4 Different Algorithms Branch-Bound Algorithm: Greedy Algorithm:
Part of the Decision tree is evaluated. Sub-trees considered based on Current_Cost Greedy Algorithm: Based on series of local decisions and try to solve the sub problem. Short/long path problems Bellman -- si = min (si, sk+wk,i) i = 1,2 ..n Bellman-ford -- extension to Bellman algorithm which is meant for graphs with cycles. Si j+1 = min[sij, (skj + wk,i)] Liao_Wong Algorithm for long paths. © Ramakrishna

5 A bin-packing Problem A collection of items T = {t1, t2, t3, …. tn}.
Every item tn has an integer size sk. Set of bins B, each with fixed integer size b. Can hold items if the sum of their sizes is b or less Goal: Pack all items, using a minimum number of bins Analogy: 1D packing problem, packing std cells in rows. 2D packing problem – Floor plan 3D packing problem – Multi layer routing, Resource allocation, Stacking. © Ramakrishna

6 Packing Problem Bins with maximum size of 6 units.
We have items with sizes: { 1, 4, 2, 1, 2, 3, 5} Cost function is simply the number of bins – B © Ramakrishna

7 Greedy Approach Each step, go for local minimum
Simple and fast heuristic, does not produce global optimum © Ramakrishna

8 Greedy Algorithm Contd…
Iteratively the final solution will be: {1,4} { 2,1,2} {3} {5} © Ramakrishna

9 Greedy Algorithm Contd…
© Ramakrishna

10 Greedy Algorithm Contd…
© Ramakrishna

11 Hierarchical approach
Partition the problem into smaller sub-problems Initial partitioning {1, 4, 2, 1} {2, 3, 5} => {1,4} {2,1} {2, 3} {5} © Ramakrishna

12 Simulated Annealing Exploits the metal cooling and freeze into a crystalline structure (minimum energy structure, the annealing process). Metropolis, N., Rosenbluth, A.W., Rosenbluth, M. N., Teller, A.H. and Teller, E., Equations of State Calculations by Fast Computing Machines, J. Chem. Phys. 21, , 1958. This paper/algorithm proposes a means of finding the equilibrium configuration of a collection of atoms at a given temperature. © Ramakrishna

13 Simulated Annealing Contd…
Pincus figured the connection of this algorithm to the mathematical minimization and Kirkpatrick, S., Gerlatt, C. D. Jr., and Vecchi, M.P., Optimization by Simulated Annealing, Science 220, , 1983 showed it forms the basis of an optimization technique for combinatorial problems. SA has the ability to avoid becoming trapped at local minima. It uses random search and accepts changes that decrease the objective function f, but also accepts that increase it. Changes that impact the objective function and increases it, SA incorporates them with a probability. © Ramakrishna

14 Simulated Annealing Contd…
Step 1: Initialize – Start with a random assumption, Initialize a very high “temperature” Step 2: Move – Perturb the system through a defined move Step 3: Calculate score – calculate the change, due to the above move Step 4: Choose -- Accept or reject the current move. The probability of acceptance depending on current temperature. Step 5: Update and repeat – Update the temperature and move back to Step 2. Continue the above process until Freezing Point is reached. © Ramakrishna

15 Simulated Annealing Contd…
Pseudo Code: Start with the system in known configuration, T = temperature = hot; frozen = false; While (! Frozen) { Repeat { Perturb system slightly Compute ΔE, change in energy due to above move If (ΔE < 0) Accept it with probability = e – ΔE/T } until (the system in thermal equilibrium at this T) If (E still decreasing over the last few temperatures) Then T = 0.x T Else frozen = true } © Ramakrishna

16 Simulated Annealing Start with any feasible solution.
Try to merge bins (improve) At the beginning, allow splitting of bins (may make the cost worse) Moves between solutions are probabilistic Entire process is random Merge: Choose two random bins and try to merge it Split: Choose a random bin and split it up © Ramakrishna

17 Simulated Annealing Contd…
© Ramakrishna

18 Simulated Annealing Contd…
© Ramakrishna

19 Simulated Annealing Contd….
© Ramakrishna

20 Simulated Annealing Contd….
© Ramakrishna

21 Simulated Annealing Contd….
© Ramakrishna

22 Class Work Derive the same using Exhaustive search (5)
Provide the detailed tree. Apply the simulated annealing algorithm for a TSP with the given “N cities and distances among them, find a shortest tour of N cities by visiting each city exactly once and returning to starting city”. (5) Cost of traveling is represented as a matrix: © Ramakrishna


Download ppt "Ramakrishna sramki@gmail.com Lecture#2 CAD for VLSI Ramakrishna sramki@gmail.com."

Similar presentations


Ads by Google