Genie: A Genetic Placement Algorithm James P. Cohoon William D. Paris © 1987 IEEE.

Slides:



Advertisements
Similar presentations
Genetic Algorithms Vida Movahedi November Contents What are Genetic Algorithms? From Biology … Evolution … To Genetic Algorithms Demo.
Advertisements

Exact and heuristics algorithms
Tetris – Genetic Algorithm Presented by, Jeethan & Jun.
Genetic Algorithms By: Anna Scheuler and Aaron Smittle.
Genetic Algorithms Contents 1. Basic Concepts 2. Algorithm
Optimal Design Laboratory | University of Michigan, Ann Arbor 2011 Design Preference Elicitation Using Efficient Global Optimization Yi Ren Panos Y. Papalambros.
Tuesday, May 14 Genetic Algorithms Handouts: Lecture Notes Question: when should there be an additional review session?
CPSC 322, Lecture 16Slide 1 Stochastic Local Search Variants Computer Science cpsc322, Lecture 16 (Textbook Chpt 4.8) February, 9, 2009.
Spie98-1 Evolutionary Algorithms, Simulated Annealing, and Tabu Search: A Comparative Study H. Youssef, S. M. Sait, H. Adiche
Non-Linear Problems General approach. Non-linear Optimization Many objective functions, tend to be non-linear. Design problems for which the objective.
1 Lecture 8: Genetic Algorithms Contents : Miming nature The steps of the algorithm –Coosing parents –Reproduction –Mutation Deeper in GA –Stochastic Universal.
The Adaptive Hierarchical Fair Competition (HFC) Model for EA’s Jianjun Hu, Erik D. Goodman Kisung Seo, Min Pei Genetic Algorithm Research &Applications.
Data Mining CS 341, Spring 2007 Genetic Algorithm.
A new crossover technique in Genetic Programming Janet Clegg Intelligent Systems Group Electronics Department.
Genetic Algorithms GAs are one of the most powerful and applicable search methods available GA originally developed by John Holland (1975) Inspired by.
A Parallel Genetic Algorithm For Performance-Driven VLSI Routing By Jens Lienig Tanner Research, Inc. Ashutosh Nagle.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2002.
Evolutionary Computation Application Peter Andras peter.andras/lectures.
Intro to AI Genetic Algorithm Ruth Bergman Fall 2004.
Chapter 6: Transform and Conquer Genetic Algorithms The Design and Analysis of Algorithms.
Genetic Algorithms Overview Genetic Algorithms: a gentle introduction –What are GAs –How do they work/ Why? –Critical issues Use in Data Mining –GAs.
Evolutionary algorithms
Genetic Algorithm.
Slides are based on Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems.
Introduction to Genetic Algorithms and Evolutionary Computation
SOFT COMPUTING (Optimization Techniques using GA) Dr. N.Uma Maheswari Professor/CSE PSNA CET.
Intro. ANN & Fuzzy Systems Lecture 36 GENETIC ALGORITHM (1)
HOW TO MAKE A TIMETABLE USING GENETIC ALGORITHMS Introduction with an example.
The Generational Control Model This is the control model that is traditionally used by GP systems. There are a distinct number of generations performed.
Applying Genetic Algorithm to the Knapsack Problem Qi Su ECE 539 Spring 2001 Course Project.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Soft Computing A Gentle introduction Richard P. Simpson.
GENETIC ALGORITHM A biologically inspired model of intelligence and the principles of biological evolution are applied to find solutions to difficult problems.
Derivative Free Optimization G.Anuradha. Contents Genetic Algorithm Simulated Annealing Random search method Downhill simplex method.
EE459 I ntroduction to Artificial I ntelligence Genetic Algorithms Kasin Prakobwaitayakit Department of Electrical Engineering Chiangmai University.
Immune Genetic Algorithms By Jeremy Moreau. References Licheng Jiao, Senior Member, IEEE, and Lei Wang, “A Novel Genetic Algorithm Based on Immunity,”
Chapter 9 Genetic Algorithms.  Based upon biological evolution  Generate successor hypothesis based upon repeated mutations  Acts as a randomized parallel.
Edge Assembly Crossover
Genetic Algorithms What is a GA Terms and definitions Basic algorithm.
Genetic Algorithms. 2 Overview Introduction To Genetic Algorithms (GAs) GA Operators and Parameters Genetic Algorithms To Solve The Traveling Salesman.
EE749 I ntroduction to Artificial I ntelligence Genetic Algorithms The Simple GA.
Parallel Genetic Algorithms By Larry Hale and Trevor McCasland.
D Nagesh Kumar, IIScOptimization Methods: M8L5 1 Advanced Topics in Optimization Evolutionary Algorithms for Optimization and Search.
In the name of ALLAH Presented By : Mohsen Shahriari, the student of communication in Sajad institute for higher education.
A Genetic Approach to Standard Cell Placement Using Meta- Genetic Parameter Optimization Khusro Shahookar Pinaka Mazumder.
Genetic Algorithms Chapter Description of Presentations
1 Contents 1. Basic Concepts 2. Algorithm 3. Practical considerations Genetic Algorithm (GA)
FACTS Placement Optimization For Multi-Line Contignecies Josh Wilkerson November 30, 2005.
An Introduction to Genetic Algorithms Lecture 2 November, 2010 Ivan Garibay
Genetic Algorithms. Underlying Concept  Charles Darwin outlined the principle of natural selection.  Natural Selection is the process by which evolution.
Genetic Algorithm Dr. Md. Al-amin Bhuiyan Professor, Dept. of CSE Jahangirnagar University.
The Implementation of Genetic Algorithms to Locate Highest Elevation By Harry Beddo.
Artificial Intelligence By Mr. Ejaz CIIT Sahiwal Evolutionary Computation.
CAP6938 Neuroevolution and Artificial Embryogeny Evolutionary Comptation Dr. Kenneth Stanley January 23, 2006.
Genetic Algorithms An Evolutionary Approach to Problem Solving.
An Evolutionary Algorithm for Neural Network Learning using Direct Encoding Paul Batchis Department of Computer Science Rutgers University.
Breeding Swarms: A GA/PSO Hybrid 簡明昌 Author and Source Author: Matthew Settles and Terence Soule Source: GECCO 2005, p How to get: (\\nclab.csie.nctu.edu.tw\Repository\Journals-
Genetic Algorithm(GA)
Genetic Algorithms and Evolutionary Programming A Brief Overview.
 Presented By: Abdul Aziz Ghazi  Roll No:  Presented to: Sir Harris.
 Negnevitsky, Pearson Education, Lecture 12 Hybrid intelligent systems: Evolutionary neural networks and fuzzy evolutionary systems n Introduction.
Using GA’s to Solve Problems
Genetic Algorithms, Search Algorithms
Genetic Algorithms overview
GENIE Eric Jackowski.
Dept. of Electrical and Computer Engineering
GENETIC EQUILIBRIUM I Types of Selection
A Gentle introduction Richard P. Simpson
Applications of Genetic Algorithms TJHSST Computer Systems Lab
A population shares a common gene pool.
Presentation transcript:

Genie: A Genetic Placement Algorithm James P. Cohoon William D. Paris © 1987 IEEE

Genetic Algorithms State Space Search –similar to SA Based on principles of natural selection and evolution  Population of solutions, of varying fitness levels  Solutions ‘mate’ or crossover, to form offspring  Solutions randomly mutate to introduce new genes into the current population  Best solutions have a better chance of surviving to the next generation

Pseudo Code overview Create an initial population P While (best score hasn’t improved in 10,000 generations) { Offspring = Crossover(s1, s2 in P)* P = Selection(P U O)* For( i=1 to k*) Mutate(s in P) } *Solutions are selected for crossover proportional to the fitness level of individual. If (fitness < average) solution is rejected for crossover. *k = random normal function of mean K*Pop_Size*Num_Nets

Population Constructor A B E G I J Net 3: A, B, E, G, I, J Net 2: A, D, E, F, H Net 1: A, B, C, D Step 1: Randomly select a net (Z) Step 2: Place free modules in net Z on grid from L to R

Population Constructor A B E G I J Step 1: Randomly select a net (Z) Step 2: Place free modules in net Z on grid from L to R Net 1: A, B, C, D Net 2: A, D, E, F, H Step 3: Update free modules and nets Net 3: A, B, E, G, I, J

Population Constructor A B E G I J Step 1: Randomly select a net (Z) Step 2: Place free modules in net Z on grid from L to R Step 3: Update free modules and nets Step 4: Select next net Do { module m = previous module placed } Until ( m is in a free net || no mods left on net) if (success) go to Step 2 else go to Step 1 Net 1: A, B, C, D Net 2: A, D, E, F, H Net 3: A, B, E, G, I, J

Population Constructor A B E G I J Step 1: Randomly select a net (Z) Step 2: Place free modules in net Z on grid from L to R Step 3: Update free modules and nets Step 4: Select next net Do { module m = previous module placed } Until ( m is in a free net ) if (success) go to Step 2 else go to Step 1 Net 1: A, B, C, D Net 2: A, D, E, F, H Net 3: A, B, E, G, I, J D F H

Population Constructor A B E G I J Step 1: Randomly select a net (Z) Step 2: Place free modules in net Z on grid from L to R Step 3: Update free modules and nets Step 4: Select next net Do { module m = previous module placed } Until ( m is in a free net ) if (success) go to Step 2 else go to Step 1 Net 1: A, B, C, D Net 2: A, D, E, F, H Net 3: A, B, E, G, I, J D F HC

Fitness Calculation Semi-perimeter bounding rectangle for each net Measure of excess channel usage  Penalized if channel has above average # nets ie non-uniform channel usage

Crossover Operator A B C D E F G H I G I B F J L K D C Passing ParentTarget Parent

Crossover Operator A B C D E F G H I Passing ParentCopy of Target Parent A E H J L K

Crossover Operator A B C D E F G H I Passing ParentCopy of Target Parent A B C D E F G H I K L J

Mutation Operator Selects a random net (Z) in Solution (s). Selects a random Module on Z Locates farthest module on net Z, and moves it as close as possible. A D 1 is preferred (dY < dX)  if B or 1, 2 is preferred  If B, 1,2, 3 is required 1 23 Net 1: A, B, C, D

Mutation Operator Net 1: A, B, C, D Step 1: Select a random net Step 2: Select a random module Initial Solution A B C D Step 3: Locate farthest module on net E

Mutation Operator Net 1: A, B, C, D Step 1: Select a random net Step 2: Select a random module Initial Solution A B C D Step 3: Locate farthest module on net Step 4: Slide module to closest possible location E

Results Authors ResultsMy Results Vs TW* *simplified algorithm, Implemented by me TW cost function used for both algorithms chipGenie Score Genie Time TW Score TW Time 10_ us59.26us 10_2422.2us60.31us 50_ us us 50_ us us

Merits of GA’s Pros:  Large Population provides information about past solution space - provides a more guided search  Can keep inferior solutions without destroying the good ones  crossover allows for the best parts of multiple solutions to form into one Cons:  High memory requirement  Difficult parameterization (population size, rate of mutation, weighted fitness for selection, etc)

My Thoughts Potential Areas of improvement  Crossover -Poor for small circuits (Converge to local optima too quickly)  Mutation -too deterministic (almost always improves solution)

References Genetic Placement James P. Cohoon, member, IEEE, and William D. Paris IEEE Transactions on Computer Aided Design, Vol. Cad-6, No. 6, November 1987 VLSI Cell Placement Techniques K. SHAHOOKAR AND P. MAZUMDER Department of Electrical Engineering and Computer Sc~ence, University of Michigan, Ann Arbor, Michigan ACM Computing Surveys, Vol. 23, No. 2, June 1991