Ant Colony Optimization Technique For Macrocell Overlap Removal

  • Slides: 33
Download presentation
Ant Colony Optimization Technique For Macrocell Overlap Removal Stelian Alupoaei; Srinivas Katkoori; Proceedings of

Ant Colony Optimization Technique For Macrocell Overlap Removal Stelian Alupoaei; Srinivas Katkoori; Proceedings of the 17 th International Conference on VLSI Design (VLSID’ 04)

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving the Execution Time Experimental Results Conclusions 2

Introduction n Overlap free n n Sequence pair O-tree B*-tree a a c b

Introduction n Overlap free n n Sequence pair O-tree B*-tree a a c b e b Guarantee d c Overlap Free d e f Initial placement allowing overlaps n n Quadratic programming Force-directed Better Results 3

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving the Execution Time Experimental Results Conclusions 4

Ant Colony Optimization n Introduced for solving Traveling Salesman Problem n n Given a

Ant Colony Optimization n Introduced for solving Traveling Salesman Problem n n Given a complete graph Try to visit all vertices in the shortest traveling path a b e c d 5

Ant Colony Optimization n Imagine that there are several ants to find food Each

Ant Colony Optimization n Imagine that there are several ants to find food Each ant leaves pheromone on the trail it traveled They select one of the available paths according to the pheromone intensity on it Ant nest A delicious cake 6

Ant Colony Optimization n Pheromone Intensity n is the evaporation coefficient n n 7

Ant Colony Optimization n Pheromone Intensity n is the evaporation coefficient n n 7

Ant Colony Optimization n Pheromone Intensity n n n , if the k-th ant

Ant Colony Optimization n Pheromone Intensity n n n , if the k-th ant uses the edge (r, s) , otherwise Q is a constant Lk is the tour length of the k-th ant 8

Ant Colony Optimization n βLet α& control the be the visibility between the relative

Ant Colony Optimization n βLet α& control the be the visibility between the relative r and the vertex s vertex importance of The set of vertices n trail versus not visited yet by visibility the ant k n , if , otherwise 9

Ant Colony Optimization Procedure ACO Initialize parameters and pheromone trails for colony : =

Ant Colony Optimization Procedure ACO Initialize parameters and pheromone trails for colony : = 1 to ncolonies do for ant : = 1 to m do Generate tour Compute cost if cost < min_cost Save solution min_cost : = cost end if Update pheromone trails end for Evaporate end for end procedure 10

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving the Execution Time Experimental Results Conclusions 11

ACO for Overlap Removal Generate the visibility graphs ηH and ηV Generate the constraint

ACO for Overlap Removal Generate the visibility graphs ηH and ηV Generate the constraint graphs GH and GV Place and Compact Compute cost and Store best_Cost Evaporate All ants ran the flow? NO YES 12

Visibility Graphs n n Horizontal Overlap Vertical Overlap Physical Overlap No Overlap A Vertical

Visibility Graphs n n Horizontal Overlap Vertical Overlap Physical Overlap No Overlap A Vertical Overlap Horizontal Overlap B 13

Visibility Graphs Dyi Hdist Dxi xi Vdist -Vovlp ηH Hovlpη n V x j

Visibility Graphs Dyi Hdist Dxi xi Vdist -Vovlp ηH Hovlpη n V x j Dxj Dyj If the cells do not physically overlap, the overlap value is negative 14

Visibility Graphs n Visibility graphs: ηV and ηH n n n (r, s) is

Visibility Graphs n Visibility graphs: ηV and ηH n n n (r, s) is (i, j) or (j, i) OVLPmin is min( Vovlp(i, j), Hovlp(i, j) ) δovlp is a constant value used to make both Vovlp and Hovlp positive 15

Example w(ηV) > w(ηH) ∴ηV < ηH ∴ (i, j) is easily selected in

Example w(ηV) > w(ηH) ∴ηV < ηH ∴ (i, j) is easily selected in ηH than in ηV ∴ Cell i is tend to be moved Cell i horizontally. Cell j Hovlp=10 Vovlp=50 16

Constraint Graphs n n Let M(i, j) be the set of edges in ηV

Constraint Graphs n n Let M(i, j) be the set of edges in ηV and ηH between the cells i and j. Overlap free placement iff. there is at most one edge selected from M(i, j) to be added in the constraint graphs. n 17

Local Optimization k k j i Cell k i l Cell j GH Cell

Local Optimization k k j i Cell k i l Cell j GH Cell i Cell l j l GV Before Compaction 18

Local Optimization Procedure Place & Compact Calculate the y coordinates Calculate the x coordinates

Local Optimization Procedure Place & Compact Calculate the y coordinates Calculate the x coordinates and compact horizontally Reset the y coordinates Calculate the y coordinates and compact vertically end Procedure 19

Limiting the Cell Sliding Final Position without limitation Final Position with limitation Initial Position

Limiting the Cell Sliding Final Position without limitation Final Position with limitation Initial Position Cell i … Cell j Cell k Circuit Boundary 20

Trail Update n The Trail Intensity w 1 & w 2 uses are ,

Trail Update n The Trail Intensity w 1 & w 2 uses are , if the ant the weights of thethe edge area(r, ands) wire length , otherwise n n Q is a constant n n n A: total circuit area, A 0: initial circuit area L: total wire length, Lo : initial wire length 21

Overlap Removal Procedure Overlap Removal Initialize parameters and pheromone trails Generate the visibility graphs

Overlap Removal Procedure Overlap Removal Initialize parameters and pheromone trails Generate the visibility graphs for colony : = 1 to ncolonies do for ant : = 1 to nants do Choose cell orientation Generate constraint graphs For each Place & Compact pair of the Compute cost n cells: if cost < best_cost 2 O(n ) Save placement best_cost : = cost end if end for Update pheromone trails Evaporate end for end procedure n n Let n be the number of cells. nants is typically proportional to n. ncolonies does not exceed a constant limit. Time complexity: O(n 3) 22

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving the Execution Time Experimental Results Conclusions 23

Improving the Execution Time n n When the distance between two cells is big,

Improving the Execution Time n n When the distance between two cells is big, the probability that these two cells will overlap during the placement is close to zero. If the distance between two cells is longer than Max. Range, no edges will be added in the visibility graphs. 24

Improving the Execution Time n n n Max. Range = k * Davg Include

Improving the Execution Time n n n Max. Range = k * Davg Include cells within 2 k. Davg * 2 k. Davg window The average number of cells included is 4 k 2 D 2 avg/D 2 avg = 4 k 2 (Constant) 2 k. Davg Generate visibility graph: O(n) Time complexity: O(n 2) k. Davg x k. Davg 2 k. Davg 25

Improving the Execution Time n n Different windows for different cells. Max. Range(i)=max{Xdist(i, j),

Improving the Execution Time n n Different windows for different cells. Max. Range(i)=max{Xdist(i, j), Ydist(i, j)} + k * Davg n The visibility range for those Xdist Cell i isolated cells is increased. n If the cell overlaps Ydist with other cells, the visibility will be Cell j k * Davg Cell m 26

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving the Execution Time Experimental Results Conclusions 27

Experimental Results Initial Circuit Cells Nets Wire (mm) Area (mm 2) Compress 35 174

Experimental Results Initial Circuit Cells Nets Wire (mm) Area (mm 2) Compress 35 174 33. 3 0. 334 Find 58 268 89. 2 0. 698 Fifo 63 296 83. 3 0. 866 Elliptic 94 531 191. 1 1. 013 Shuffle 104 488 115. 2 1. 010 Ami 33 33 119 8. 0 0. 027 Ami 49 49 408 108. 8 0. 806 Playout 62 2, 506 617. 0 1. 475 28

Experimental Results (Wiremm) Circuit Ant Based (50 colonies /100 ants) Ant Based (100 colonies

Experimental Results (Wiremm) Circuit Ant Based (50 colonies /100 ants) Ant Based (100 colonies /200 ants) Constr. Reduction SA Based Compress 31. 7 31. 2 34. 6 31. 5 Find 86. 4 84. 8 90. 8 85. 6 Fifo 79. 4 76. 1 83. 4 77. 2 Elliptic 222. 4 215. 0 240. 8 220. 5 Shuffle 120. 0 116. 3 126. 8 125. 3 Ami 33 7. 0 6. 6 8. 4 8. 2 Ami 49 121. 4 117. 4 152. 1 112. 8 Playout 842. 1 801. 3 970. 2 771. 5 29

Experimental Results (Areamm ) 2 Circuit Ant Based (50 colonies /100 ants) Ant Based

Experimental Results (Areamm ) 2 Circuit Ant Based (50 colonies /100 ants) Ant Based (100 colonies /200 ants) Constr. Reduction SA Based Compress 0. 274 0. 306 0. 303 Find 0. 585 0. 567 0. 625 0. 600 Fifo 0. 750 0. 697 0. 784 0. 752 Elliptic 1. 366 1. 251 1. 483 1. 422 Shuffle 1. 025 0. 988 1. 231 1. 116 Ami 33 0. 019 0. 024 0. 027 Ami 49 0. 771 0. 748 1. 101 0. 849 Playout 1. 909 1. 883 2. 260 1. 998 30

Experimental Results (Runm: s) Circuit Ant Based (50 colonies /100 ants) Ant Based (100

Experimental Results (Runm: s) Circuit Ant Based (50 colonies /100 ants) Ant Based (100 colonies /200 ants) Constr. Reduction SA Based Compress 12 s 55 s 2 s 1 m: 43 s Find 23 s 1 m: 34 s 3 s 4 m: 47 s Fifo 24 s 1 m: 38 s 3 s 5 m: 29 s Elliptic 1 m: 17 s 5 m: 21 s 17 m: 24 s Shuffle 1 m: 12 s 4 m: 15 s 24 s 15 m: 21 s Ami 33 13 s 50 s 2 s 1 m: 29 s Ami 49 30 s 2 m: 01 s 2 s 4 m: 24 s Playout 1 m: 29 s 5 m: 14 s 28 s 18 m: 07 s 31

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving

Agenda n n n Introduction Ant Colony Optimization ACO Algorithm for Overlap Removal Improving the Execution Time Experimental Results Conclusions 32

Conclusions n n n Increase of the area and wirelength for the proposed method

Conclusions n n n Increase of the area and wirelength for the proposed method is small. Better results than others. In some cases the placement is improved over the initial placement 33