1
A A HYBRID HYBRID CHC GENETIC ALGORITHM CHC GENETIC ALGORITHM - - PowerPoint PPT Presentation
A A HYBRID HYBRID CHC GENETIC ALGORITHM CHC GENETIC ALGORITHM - - PowerPoint PPT Presentation
A A HYBRID HYBRID CHC GENETIC ALGORITHM CHC GENETIC ALGORITHM FOR FOR MACRO CELL MACRO CELL GLOBAL ROUTING GLOBAL ROUTING AUTHORS G.Andal Jayalakshmi S.Sowmyalakshmi R.Rajaram 1 CONTENTS CONTENTS 1. INTRODUCTION 2. PROBLEM
2
CONTENTS CONTENTS
- 1. INTRODUCTION
- 2. PROBLEM DEFINITION
- 3. THE GLOBAL ROUTER ALGORITHM
- a. PHASE I
- b. PHASE II
- 4. THE HYBRID CHC GENETIC ALGORITHM
- 5. SOLUTION ENCODING
- 6. CHC GENETIC OPERATORS.
- 7. IMPLEMENTATION AND RESULTS
- 8. CONCLUSION
3
INTRODUCTION INTRODUCTION – – VLSI VLSI Global Routing Global Routing
- 1. Macro cells are large, irregularly sized
parameterized circuit modules that are generated by a silicon compiler as per a designer’s selected parameters.
- 2. Global Routing is the process of determining the
connection pattern for each net to minimize the
- verall routing area.
4
INTRODUCTION INTRODUCTION-
- Genetic Algorithm
Genetic Algorithm
- 1. A Genetic Algorithm is an intelligent
- ptimization technique used to solve many
complex optimization problems.
- 2. A simple GA evolves a solution from an initial
population of random solutions using crossover and mutation.
5
INTRODUCTION INTRODUCTION-
- Hybrid CHC GA
Hybrid CHC GA
- 1. A hybrid GA combines techniques particular to
a problem with a simple GA.
- 2. A CHC genetic algorithm uses intelligent
reproduction techniques and techniques to come out of local optima.
6
PROBLEM DEFINITION PROBLEM DEFINITION
- 1. The Minimum Rectilinear Steiner Tree (MRST)
problem arises in global routing and wiring estimation where we seek low-cost topologies to connect the pins of signal nets.
- 2. Given n points in the Euclidean plane, we seek a
tree that connects them all. A shortest such tree on a set of given points is a Minimal Rectilinear Steiner Tree(MRST)
7
THE GLOBAL ROUTER ALGORITHM THE GLOBAL ROUTER ALGORITHM – – PHASE I PHASE I
The algorithm for SPANNING_TREE() is given below: SPANNING_TREE( ) Begin Initialize parameters : generation count , crossover and mutation probabilities Initialize parent population randomly Apply repair heuristics to the parent population /* Repair heuristic are To test cycle and self loops*/
8
THE GLOBAL ROUTER ALGORITHM THE GLOBAL ROUTER ALGORITHM – – PHASE I(contd.) PHASE I(contd.)
While ( termination condition not reached) Begin Select parents based on the total length of the Spanning tree Apply crossover and mutation /* Single Point Crossover and Exchange Mutation*/ Evolve new population Replace previous population by new population End End
9
THE GLOBAL ROUTER THE GLOBAL ROUTER ALGORITHM ALGORITHM – – PHASE II PHASE II
The algorithm for STEINER_TREE() is given below: Begin Build the routing graph G For (each Net) Begin Initialize weights for edges. Find the minimum cost spanning tree T. For each (vertex, edge) pair of the spanning tree
10
THE GLOBAL ROUTER ALGORITHM THE GLOBAL ROUTER ALGORITHM – – PHASE II(contd.) PHASE II(contd.)
Begin Find the optimum Steiner point to connect this edge to the vertex (at a suitable point) Find the longest edge on the generated cycle Compute the cost of the modified tree, and store the pair in a list, if the cost is less than the MST End
11
THE GLOBAL ROUTER ALGORITHM THE GLOBAL ROUTER ALGORITHM – – PHASE II(contd.) PHASE II(contd.)
While the list is not empty Begin Remove the pair from the list which results in lowest cost Re compute the longest edge on the cycle and the cost of the tree If the edges to be replaced are in the tree and the cost is less, modify the tree End End End
12
THE HYBRID CHC GENETIC THE HYBRID CHC GENETIC ALGORITHM ALGORITHM
The pseudo-code for the Hybrid CHC genetic algorithm is shown below:
Begin Set the generation count c = 1 Set threshold value Initialize and evaluate parent population P(t) While (Termination Condition is not reached) do c = c + 1 Apply selection
13
THE HYBRID CHC GENETIC THE HYBRID CHC GENETIC ALGORITHM(contd.) ALGORITHM(contd.)
Perform crossover on selected individuals to get Offspring C(t) Evaluate Offspring C(t) Select new parent population from previous parent population P(t-1) and the new child population C(t) using Elitism If P(t) is equal to P(t-1) then decrease the threshold value If Convergence occurs Reinitialize population by external mutation. End End
14
SOLUTION ENCODING SOLUTION ENCODING
Our Encoding consists of an array of integers that represent the edges of the graph in the case of a Minimum Spanning Tree and the edges of a Steiner graph in the case of a Steiner Minimal Tree.
15
CHC GENETIC OPERATORS CHC GENETIC OPERATORS
- 1. We use Uniform crossover.
- 2. The Uniform crossover is implemented along with
the repair algorithm.
- 3. The repair algorithm acts on the infeasible
chromosomes and convert them to feasible ones. REPRODUCTION OPERATOR
16
CHC GENETIC OPERATORS CHC GENETIC OPERATORS
MUTATION
- 1. We use Random mutation, which randomly
changes a gene in the chromosome
- 2. In CHC genetic algorithm when premature
convergence occur we reinitialize the whole population by means of random mutation.
17
IMPLEMENTATION AND IMPLEMENTATION AND RESULTS RESULTS
Test Problem : B1 Nodes : 50 Edges : 63 Optimum : 82 Population Size for SGA : 110 Population Size for HCHC: 90
18
RESULTS RESULTS – – TEST PROBLEM B1 TEST PROBLEM B1
82 1 02 1 22 1 42 1 62 1 82 202 222 242 262 282 302
Generation Cost SGA HCHC
Graph 1: Comparison of cost reduction in SGA and HCHC algorithms for B1
19
RESULTS RESULTS – – TEST PROBLEM B3 TEST PROBLEM B3
Test Problem : B3 Nodes:50 Edges:63 Optimum : 138 Population Size for SGA : 110 Population Size for HCHC: 90
20
RESULTS RESULTS – – TEST PROBLEM B3 TEST PROBLEM B3
1 38 1 58 1 78 1 98 21 8 238 258 278 298
Generation Cost SGA HCHC
Graph 2: Comparison of cost reduction in SGA and HCHC algorithms for B3
21
RESULTS RESULTS – – TEST PROBLEM B9 TEST PROBLEM B9
Test Problem : B9 Nodes:75 Edges:94 Optimum : 220 Population Size for SGA : 110 Population Size for HCHC: 90
22
RESULTS RESULTS – – TEST PROBLEM B9 TEST PROBLEM B9
220 240 260 280 300 320 340 360 380 400
Generation Cost SGA HCHC
Graph 3: Comparison of cost reduction in SGA and HCHC algorithms for B9
23
CONCLUSION CONCLUSION
- 1. The HCHC algorithm shows much better
performance over SGA, and generates comparable results for the Beasley’s problem set.
- 2. We further propose to improve the implementation