Download presentation
Presentation is loading. Please wait.
Published byHoratio Wilcox Modified over 9 years ago
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
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.