Presentation is loading. Please wait.

Presentation is loading. Please wait.

Study of a Paper about Genetic Algorithm For CS8995 Parallel Programming Yanhua Li.

Similar presentations


Presentation on theme: "Study of a Paper about Genetic Algorithm For CS8995 Parallel Programming Yanhua Li."— Presentation transcript:

1 Study of a Paper about Genetic Algorithm For CS8995 Parallel Programming Yanhua Li

2 The paper to be studied: VLSI Circuit Synthesis using a Parallel Genetic Algorithm Mike Davis, Luoping Liu, and John G. Elias Department of Electrical Engineering University of Delaware Newark, DE. 19716

3 Introduction This paper talks about a parallel implementation of a genetic algorithm used to evolve simple analog VLSI circuits. Linda coordination language is used to implement the parallel GA.

4 Linda coordination language Extends the syntax of conventional programming language to support parallel operating processes Its shared-memory programming model compares well to other parallel environments. The shared-memory programming model consists of a Tuple-Space(TS).

5 What is Tuple-Space? Tuple-Space(TS) is a virtual shared- memory data storage area that processes can read and write. Tuple-Space(TS), physically, is widely distributed over the processors in the system but logically, is just a simple memory.

6 C-language Linda consists four programming language extensions: out( ) : move data into TS in() : move data out of TS rd( ) : get a copy of data from TS eval( ) : add a new C procedure to the TS which joins the ranks of executing processes

7 Using Linda… Data are read from the TS in an associative matching scheme. Matching criteria is sent to the TS via in() or rd() functions. The first tuple to match is returned to the requesting process The matching scheme gives a good load balancing since processes continuously probe the TS for job to do. Therefore faster processes get more job to do.

8 The parallel GA application Parallel Environment Consists of a network of 20 Sun IPC workstations. 16 of the machines are connected to the FDDI network and to the Ethernet. Worker processors run on FDDI connected machines. Master processors run on non-FDDI-connected machines. Commercial Linda package was used

9 The parallel GA application… The parallel GA is mapped onto the TS using two schemes: The centralized scheme consists of a single breeding population The distributed scheme consists of multiple breeding populations which may interact with each other from time to time

10 The TS consists of… four types of tuples: Members of the breeding population, C i,p E ach describes a particular circuit (e.g. transistor parameters: type, number, dimension, placement, connections). Offspring of breeding pairs, O j,p Average fitness of the population, AF p Best individual in the population, BI p

11 Master Processes Create worker processes Initialize and manage the population Compute the average fitness AF p Keep track of best-individual in the population BI p, and average-fitness of the population AF p Add new offspring to the population—

12 Master Processes Whenever a worker writes an offspring O j,p to TS, the Master will randomly select a member of the population, then compare its fitness value with the average fitness AF p, until find an individual whose fitness value is less than AF p, then replace this individual with the new offspring. By this way, the population size remains constant.

13 Worker Processes Repeat the following: Randomly select two breeding individuals C i,p from the population using rd() function. Combine those two individuals using crossover and mutation to produce two new offspring and evaluate their performance. Compare the better performing offspring’s fitness value with AF p. If it is larger than AF p, the offspring is written to TS using out() function.

14 Centralized and Distributed scheme Centralized Scheme One master, multiple workers (in this report, 16 workers) Distributed Scheme Divide TS into several equivalent regions, each has the same tuple arrangements as in the centralized scheme. Divide population into subpopulations, each has one master and several worker processes (in this report, 4 subpopulations, each has a master and 4 workers).

15 Centralized and Distributed scheme

16 Results for population size 1000

17 Analysis for results For criterion avg_fit >=29.96 The centralized algorithm shows nearly linear speedup (16.5/17). The distributed-with-isolated-populations GA fails to reach fitness criterion. The distributed-with-communicating- Masters GA has speedup much less than the theoretical maximum (17/20).

18 Analysis for results For criterion to gen# = 40 The time to reach a specific generation is largely related to the worker processes, so theoretical maximum speedup = 16 All 3 methods have similar speedup and take about the same time to reach the criterion

19 The four types of inverter amplifiers discovered by GA

20 The relationship between # of different types and some parameters

21 Development rules Why use development rules? The GA method creates possible connection patterns but most of them result in non- viable circuits which cannot produce offspring. Use development rules to eliminate connection patterns which are not sensible or cannot produce offspring.

22 Questions? Thanks!


Download ppt "Study of a Paper about Genetic Algorithm For CS8995 Parallel Programming Yanhua Li."

Similar presentations


Ads by Google