Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
5Activity
0 of .
Results for:
No results containing your search query
P. 1
Parallel Genetic Algorithm System

Parallel Genetic Algorithm System

Ratings: (0)|Views: 69 |Likes:
Published by ijcsis
Genetic Algorithm (GA) is a popular technique to find the optimum of transformation, because of its simple implementation procedure. In image processing GAs are used as a parameter-search-for procedure, this processing requires very high performance of the computer. Recently, parallel processing used to reduce the time by distributing the appropriate amount of work to each computer in the clustering system. The processing time reduces with the number of dedicated computers. Parallel implementations of systems can be grouped into 3 categories: 1) Parallel Hardware architectures designed specially for parallel processing. 2) Supporting Software implementations on machines with hardware support for parallel processing and 3) parallel processing algorithms implemented entirely in software on general- purpose hardware. It includes the clustering architecture consisting of homogeneous collection of general purpose computer systems connected via networks, also termed a clustered computing environment. . The queue length is optimally adjusted using GA so that queue length is minimized during data transfer in order to keep the bandwidth at a stable condition. Graph is also drawn to show the difference of bandwidth. Implementation includes all those activities that take place to convert from the old system to the new. The new system may be totally new, replacing an existing system or it may be major modification to the system currently put into use. This application implemented with simulation model of computer network, constructed along with the router. The options are given to invoke the FCFS and Genetic Algorithm. The path between source and destination were drawn and the result of both algorithms is discussed.
Genetic Algorithm (GA) is a popular technique to find the optimum of transformation, because of its simple implementation procedure. In image processing GAs are used as a parameter-search-for procedure, this processing requires very high performance of the computer. Recently, parallel processing used to reduce the time by distributing the appropriate amount of work to each computer in the clustering system. The processing time reduces with the number of dedicated computers. Parallel implementations of systems can be grouped into 3 categories: 1) Parallel Hardware architectures designed specially for parallel processing. 2) Supporting Software implementations on machines with hardware support for parallel processing and 3) parallel processing algorithms implemented entirely in software on general- purpose hardware. It includes the clustering architecture consisting of homogeneous collection of general purpose computer systems connected via networks, also termed a clustered computing environment. . The queue length is optimally adjusted using GA so that queue length is minimized during data transfer in order to keep the bandwidth at a stable condition. Graph is also drawn to show the difference of bandwidth. Implementation includes all those activities that take place to convert from the old system to the new. The new system may be totally new, replacing an existing system or it may be major modification to the system currently put into use. This application implemented with simulation model of computer network, constructed along with the router. The options are given to invoke the FCFS and Genetic Algorithm. The path between source and destination were drawn and the result of both algorithms is discussed.

More info:

Published by: ijcsis on Aug 13, 2010
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

07/22/2012

pdf

text

original

 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 8, No. 4, July 2010
.
 
Parallel Genetic Algorithm System
Nagaraju Sangepu
Assistant Professornag_sangepu@yahoo.com
K.Vikram
CSE dept, KITSWarangal, Indiavikram.kalwala@gamil.com
ABSTRACT – Genetic Algorithm (GA) is a populartechnique to find the optimum of transformation,because of its simple implementation procedure. Inimage processing GAs are used as a parameter-search-for procedure, this processing requires very highperformance of the computer. Recently, parallelprocessing used to reduce the time by distributing theappropriate amount of work to each computer in theclustering system. The processing time reduces with thenumber of dedicated computers. Parallelimplementations of systems can be grouped into 3categories: 1) Parallel Hardware architectures designedspecially for parallel processing. 2) Supporting Softwareimplementations on machines with hardware supportfor parallel processing and 3) parallel processingalgorithms implemented entirely in software on general-purpose hardware. It includes the clusteringarchitecture consisting of homogeneous collection of general purpose computer systems connected vianetworks, also termed a clustered computingenvironment. . The queue length is optimally adjustedusing GA so that queue length is minimized during datatransfer in order to keep the bandwidth at a stablecondition. Graph is also drawn to show the difference of bandwidth. Implementation includes all those activitiesthat take place to convert from the old system to thenew. The new system may be totally new, replacing anexisting system or it may be major modification to thesystem currently put into use. This applicationimplemented with simulation model of computernetwork, constructed along with the router. The optionsare given to invoke the FCFS and Genetic Algorithm.The path between source and destination were drawnand the result of both algorithms is discussed.
1.
 
INTRODUCTIONGA mimics all the process based on the conceptof natural evolution to find the optimized solution tothe given problem residing in the search space. TheGA pool contains a number of individuals calledchromosomes. Each chromosome encoded from theparameters holds the potential solution. Accordingthe evolutionary theories, the chromosomes
 
whichonly have a good fitness are likely to survive and togenerate the off springs and pass its strength to themby the genetic operator. The fitness of chromosome isthe way that is linked to the predefined problem orobjective function. Fig 1 shows the possible stages of evolution.
Figure 1
. Genetic Algorithm StepsGA cycle can be decomposed into five stepsdescribed as follows:1)
 
Randomly initialize the population in the pool.With more population, the coverage in searchspace is good but traded off by the calculation timein each generation. In the simplest way, the real –value parameter is binary coded to give a bit string.The bit strings for several parameters areconcatenated to form a single string orchromosome. In accord with the biology, each bitcorresponds to gene.2)
 
Evaluate the chromosomes by objective function.After the evolution, all the chromosomes areranked for the fitness values in the descending orascending order depending on the purpose of objective function.3)
 
Select the parents from the chromosomes with thebased chances. The higher-fitness chromosome isprone to survive.
223http://sites.google.com/site/ijcsis/ISSN 1947-5500
 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 8, No. 4, July 2010
.
 
4)
 
Generate the offspring using genetic operatorsconsisting of crossover and mutation. Crossover isa recombination operator that swaps the parts of two parents, two random decisions are made priorto this operation, whether to do it or not and wherethe crossover point is. Mutation gives a goodchance to explore the uncovered search space. Itmutates, or complements some genes in thechromosome of the offspring, so that the newparameter value takes place.5)
 
Entirely replace the elder generation in the poolwith the newer one and return to step 2. In somecase, the few best elders may be kept away fromreplacement. This is known as elitist strategy. Thecriteria for stopping the revaluation loops are metwhen a (the loop number is over some predefinedpoint or d) the steady last for predetermined times.It is important to realize that GA are stochasticmeaning that there is randomness involved ; mainlyin the initial generation of a random population,random choice of parents, random choice of whichgenes to inherit from which parents, and randomchoice of which genes to mute. Some times howhowever tournament selection is used as a parent orsurvival selection strategy. This ensures that there isbias towards replacing less fit solutions in the parentpopulation by fitter solution from the new generation.2. PARALLEL GENETIC ALGORITHMTwo approaches to parallel genetic algorithms havebeen considered so far.
 
Standard parallel approach
: In this approach, theevaluation and the reproduction are done in parallel.However, the selection is still done sequentially,because would require a fully connected graph of individuals in the population may be mated.
 
 Decomposition approach:
This approach consists individing the population into equal size sub-populations. Each processor runs the geneticalgorithm on its own sub-population, periodicallyselecting good individuals to send its neighbors andperiodically receiving copies of its neighbors’ goodindividuals to replace bad ones in its own sub-population.
 
The processor neighborhood, the frequency of exchange and the number of individuals exchangedare adjustable parameters. The standard parallelmodel is not flexible in the sense that thecommunication overhead grows as the square of population size. Therefore, this approach is notadapted to distributed memory architectures, wherethe cost of communications has a great impact on theperformance of parallel programs. In thedecomposition model, the inherent parallelism is notfully exploited as treatment of sub-populations maybe further decomposed. This approach should beconsidered only when the number of availableprocessors is less than the required size of thepopulation. Considering massively parallelarchitectures with numerous processors, we chose afine –grained model, where the population is mappedon a connected processor graph like a grid, oneindividual per processor. We have bisection betweenthe individual set and the processor set. The selectionis done locally in a neighborhood of each individual.Another version to this approach has been alreadyproposed in, where at each generation a hill-climbingalgorithm is executed for each individual in thepopulation. The choice of the neighborhood is theadjustable parameter. To avoid overhead andcomplexity of routing algorithms in paralleldistributed machines, a good choice may be restrictneighborhood to only directly connected individuals.
 
The parallel genetic algorithm proposed is:
 
Genetic in parallel a population of randomindividuals.
 
While
generation_number <max_number_of_generations
 
Do
 
1.
 
 Evaluation
- Evaluate in parallel eachindividual.
 
2.
 
Selection –
Receive in parallel theindividuals coming from the neighbors.3.
 
 Reproduction-
Each individualsreproduces in parallel with the individualspreviously received.
 
4.
 
 Replacement-
 
Do in parallel a selection of best local off springs.
 
We use the speed-up ratio as a metric for theperformance of the parallel genetic algorithm. Thespeed up ratio S is defined as
S=T 
s
 /T 
 p
where
s
is theexecution time on a single processor and
 p
 corresponds to execution time for a
P
processorsimplementation.3. RELATED WORKThere are mainly two types of scheduling namelythe system level scheduling and the application levelscheduling. The scheduling system will analyze theload situation of every node and select one node torun the job. The scheduling policy is to optimize thetotal performance of the whole system. If the systemis heavily loaded, the scheduling system has torealize the load balancing and increase the throughput
224http://sites.google.com/site/ijcsis/ISSN 1947-5500
 
(IJCSIS) International Journal of Computer Science and Information Security,Vol. 8, No. 4, July 2010
.
 
and resource utilization under restricted conditions.This kind of scheduling is known as the system levelscheduling.If multiple jobs arrive within a unit schedulingtime slot, the scheduling system shall allocate anappropriate number of jobs to every node in order tofinish these jobs under a defined objective.Obviously, the objective is usually the minimalaverage execution time. This scheduling policy isapplication-oriented so we call it application-levelscheduling.We will first select a certain number of inputs,say,
 x
1
 , x
2
 , ... , x
n
belonging to the input space X. Inthe GA terminology, each input is called an
organism
 or
chromosome
. The set of chromosomes isdesignated as a
colony
or
 population
. Computation isdone over
epochs
. In each epoch the colony willgrow and evolve according to specific rulesreminiscent of biological evolution.To each chromosome
 x
i
, we assign a fitness valuewhich is nothing but
 f 
(
 x
i
). Stronger individual that isthose chromosomes with fitness values closer to thecolony optimal will have greater chance to surviveacross epochs and to reproduce than weakerindividuals which will tend to perish. In other words,the Algorithm will tend to keep inputs that are closeto the optimal in the set of inputs being considered(the colony) and discard those that under-perform therest.The crucial step in the algorithm is reproductionor breeding that occurs once per epoch. The contentof the two chromosomes participating in reproductionare literally merged together to form a newchromosome that we call a child. This heuristicallows us to possibly combine the best of bothindividuals to yield a better one (evolution).During each epoch, a given fraction of theorganisms is allowed to mutate. This provides adegree of randomness which allows us to span thewhole input space by generating individuals withpartly random genes.Each epoch ends with the deaths of inaptorganisms. We eliminate inputs exhibiting badperformance compared to the overall group. This isbased on the assumption that they're less inclined togive birth to strong individuals since they have poorquality genes and that therefore we can safelydisregard them (selection).
The algorithm
: Now that we've outlined the basicprinciples, let's examine in further detail how thiswhole process is accomplished and how thealgorithm works in practice. Let's take the example of optimizing a function f over a space XEvery input x in X is an integer vector x=(
x
1
 , x
2
 , ... , x
n
). For the sake of simplicity, assume
0
<=
x
i
<=
fori=1...n. In order to implement our genetic algorithmfor optimizing
 f 
, we first need to encode each inputinto a chromosome.
 
We can do it by having
log(k)
bits per component anddirectly encoding the value
 x
i
(figure 1). Each bit willbe termed
gene
. Of course, we may choose any otherencoding based on our requirements and the problemat hand.
Figure 2.
Encoding the ChromosomesAt epoch 0, we generate (possibly randomly) aninitial set of inputs in X. Then at each epoch i, weperform fitness evaluation, reproduction, mutationand selection. The algorithm stops when a specifiedcriterion providing an estimate of convergence isreached.
 Reproduction:
At each epoch, we choose a set of chromosomes belonging to the population that willmate. We choose to call such individuals females.Each female chooses a random set of potentialpartners and mates with the fittest of the group (thisis another way of achieving selection). Once twoorganisms have been chosen for crossover, we mergetheir genetic information in order to create a neworganism. The split position is determined randomly.
Figure 3.
CrossOver Operation
 Mutation:
A new organism is created by randomlymodifying some of its genes. This can be done rightafter reproduction on the newly created child or as aseparate process.
225http://sites.google.com/site/ijcsis/ISSN 1947-5500

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->