0% found this document useful (0 votes)
118 views42 pages

Bioinspired Algorithms and Applications

The document discusses genetic algorithms and their parallel implementation. It describes how genetic algorithms are inspired by natural evolution and selection. It then covers the components of a genetic algorithm, how they work by simulating evolution, and some applications like robotics, scheduling, and gene expression modeling. Finally, it discusses the history and methodologies of parallel genetic algorithms to solve problems more efficiently by distributing the work across multiple processors.

Uploaded by

Advith A J
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
118 views42 pages

Bioinspired Algorithms and Applications

The document discusses genetic algorithms and their parallel implementation. It describes how genetic algorithms are inspired by natural evolution and selection. It then covers the components of a genetic algorithm, how they work by simulating evolution, and some applications like robotics, scheduling, and gene expression modeling. Finally, it discusses the history and methodologies of parallel genetic algorithms to solve problems more efficiently by distributing the work across multiple processors.

Uploaded by

Advith A J
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 42

Bioinspired algorithms and

applications
Module 5
Genetic algorithm
• Algorithm is the set of rules to be followed by a computer to carryout
a particular operation.
• In genetic algorithm these rules are based on genetics and evolution.
• Genetics is the branch of Biology that deals with heredity and
variation.
• Evolution is change in the properties of groups of organisms over the
course of generations. Evolution is driven by natural selection.
• Genetic algorithms are useful both as search methods for solving
problems and for modeling evolutionary systems.
Natural selection
• Those characters that ensure an organisms survival and adaptability
are preserved and multiplied over generation to generation.
• Survival of the fittest.
• Inheritance and variation
• Variation by mutation
• Variation by crossing over
Mutation
• Mutation is any change in the genome sequence of an organism.
• Broadly grouped into
1. Chromosomal mutation
2. Gene mutation
Gene mutation types
Crossing over and
recombination
Crossing over
Exchange of genetic material between the homologous
chromosomes leading to variation.
Recombination
Rearrangement of genetic material by crossing over or by any
artificial means.
Variation
Any change in the genetic material of the offspring compared to
its parent.
Genetic algorithms
• GAs were developed by John Holland and his students and
colleagues at the University of Michigan.
• In GAs, we have a pool or a population of possible solutions to the
given problem.
• These solutions then undergo recombination and mutation (like in
natural genetics), producing new children, and the process is repeated
over various generations.
• Each individual (or candidate solution) is assigned a fitness value
(based on its objective function value) and the fitter individuals are
given a higher chance to mate and yield more “fitter” individuals. This
is in line with the Darwinian Theory of “Survival of the Fittest”.
Components of a genetic algorithm

• Coded information of the results to be optimized known as the


genotype (Uncoded form of this information is the Phenotype).
• Fitness function – to evaluate the fitness of results to be optimized.
• Selection function – To select the results with best fitness. The
selected results only will be carried to next generation.
• Crossover and mutation function – To create variation in the coded
information.
How genetic algorithms work?
• Pool of possible solutions is stored as binary strings in computer
memory.
• The binary strings are stored in a computer’s memory are modified
over time in the same way that populations of individuals evolve
under natural selection.
• First, a population of individuals is created randomly. Each individual
is a bit string and can be thought of as a candidate solution for some
problem of interest.
• Variations among individuals in the population result in some
individuals being more fit than others (e.g., better problem solutions).
• Based on their fitness in the next step i.e. selection only fit individuals
are selected and unfit ones are deleted.
• During selection, a new population is created by making copies of
more successful individuals and deleting less successful ones.
• Variation is generated by mutation (random bit flips), crossover
(exchange of corresponding substrings between two individuals), or
other changes to the bit string during the copy operation.
• When this cycle of evaluation, selection, and genetic operations is
iterated for many generations, the overall fitness of the population
generally improves, and the individuals in the population represent
improved “solutions” to whatever problem was posed in the fitness
function.
Holland’s genetic algorithm
• In the figure a population of four individuals is shown.
• Each is assigned a fitness value by the function F(x, y) = yx2 – x4.
• On the basis of the fitness, the selection phase assigns the first
individual (0000001101) one copy, the second (0101010010) two, the
third (1111111000) one copy, and the fourth (1010100111) zero
copies.
• After selection, the genetic operators are applied probabilistically; the
first individual has its first bit mutated from a 0 to a 1, and crossover
combines the last two individuals into two new ones. The resulting
population is shown in the last box
Applications
• In robotics
• Economics – optimum use of goods and services
• Automated design of automobiles considering various constraints
such as fuel consumption
• Genetic algorithms can be used to derive optimal schedules
considering the courses, number of students, and lecture rooms that
the university has.
• Genetic algorithms are used here to derive the best combinations of
product specifications and attributes that will attract the most
customers.
Gene expression modelling
• Gene expression defines the activity and behavior of a gene inside a
cell.
• Alteration of gene expression by regulators (promoters or inhibitors)
may have different consequences on cells, including promoting the
development of specific diseases such as cancer.
• All genes are not expressed at the same time. The study of the
regulation of gene expression is fundamental for the understanding of
the molecular basis in health and disease, and for the identification of
therapeutic targets
• In order to understand how genetic material controls cell growth and
development we need to know not only about the protein coding
sequences but also about the non coding sequences which regulate
gene expression.
• a variety of mathematical formalisms for describing regulatory
networks have been proposed.
• a directed graph, Bayesian networks, Boolean network, differential
equations etc. can be used to predict the gene expression.
Directed graphs
Bayesian model
• Bayesian statistics makes use of
probability to determine
possibilities of various events
occurring.
• Bayesian network is a
probabilistic graphical model
which uses interpretable joint
probabilities.
Boolean network • Graphical representation
where each node has two
possible values 0 or 1.
• 0 represents inactive or not
present and 1 represents
active or present.
• They represent the
relationship between genes
and assume that each gene is
either on or off.
Differential equations
• Quantitative analysis done with set genes relevant for a phenotype
(e.g., a tumor) of interest and investigates their regulatory systems.
• objective is to identify the most relevant features explaining the
regulation of each target gene.
• Data regarding function of different genes and the transcription factors
involved may be obtained from public repositories such as GENCODE
and ENCODE.
Parallel genetic programming
• Parallel genetic algorithm is such an algorithm that uses multiple
genetic algorithms to solve a single task.
• All these algorithms try to solve the same task and after they’ve
completed their job, the best individual of every algorithm is selected,
then the best of them is selected, and this is the solution to a
problem
• These genetic algorithms do not depend on each other, as a result,
they can run in parallel
• Each algorithm has its own set of individual, as a result these
individuals may differ from individuals of another algorithm, because
they have different mutation/crossover history.
• Moreover, some creatures, with the highest fitting, are allowed to
‘migrate’ from one algorithm to another
Methodology
History of parallel computing
• Genetic algorithms and the idea of parallelism in computing was given
by John Holland.
• “Genetic Programming” (GP), name coined by David Goldberg, a
PhD student of John Holland
• In 1988 John Koza (also a PhD student of John Holland) patented his
invention of a GA for program evolution
• An early study of how to parallelize genetic algorithms was conducted
by Bethke. His analysis showed that global parallel GAs may have an
efficiency close to 100%
• Another early study on how to map genetic algorithms to existing computer
architectures was made by Grefenstette. He proposed four prototypes for
parallel GAs; the first three are variations of the master-slave scheme, and
the fourth is a multiple-population GA.
1. Master processer carries out all functions on population, Individuals are
sent to slave processors for evaluation.
2. Similar to first but there is no clear distinction between generations. when
any slave processor finishes evaluating an individual it returns it to the
master and receives another individual
3. In the third prototype the population is stored in shared memory, which
can be accessed by the slaves that evaluate the individuals and apply
genetic operators independently of each other
4. Grefenstette’s fourth prototype is a multiple-population GA where the
best individuals of each processor are broadcast every generation to all
the others
Applications of parallel GA
• A transit route network design (TRND) problem for urban bus
operation involves the determination of a set of transit routes and the
associated frequencies that achieve the desired objective. This can be
formulated as an optimization problem of minimizing the total system
cost. GAs/Parallel GAs are more suited to solve combinatorial
optimisations.
• In machine learning
• Artificial neural networks
• Genetic algorithms find application in many designing procedures of
mechanical components. For instance, consider the following genetic
algorithm example where the aircraft wing design is a kind of
designing problem that takes multiple disciplines into consideration. It
requires improvement in the ratio of left to drag for a complex wing.
• Optimise parameters to minimize manufacturing cost
• The areas of predictive analysis include protein prediction, RNA
structure prediction, operon prediction, and others.
• Other processes such as protein folding, gene expression profiling
analysis, bioinformatics multiple sequence alignment, or some of the
process alignment that uses genetic optimisation.
DNA computing algorithms
• Just a liter of weak DNA solution can hold 1019 bits of information,
which can encode the states of 1018 processors. All of these
processors can be acted on simultaneously by the primitive operations
of DNA computation.
• DNA computing, the performing of computations using biological
molecules, rather than traditional silicon chips.
• DNA computing was not physically realized until 1994, when
American computer scientist Leonard Adleman showed how
molecules could be used to solve a computational problem.
• In DNA computing, information is represented using the four-
character genetic alphabet (A [adenine], G [guanine], C [cytosine], and
T [thymine]), rather than the binary alphabet (1 and 0) used by
traditional computers. This is achievable because short DNA
molecules of any arbitrary sequence may be synthesized artificially by
PCR.
• Input will be DNA sequence synthesized in laboratory. Instructions are
provided by cutting, ligating separating procedures.
• To encode, for example, English text using DNA, one can choose an
encoding scheme mapping the Latin alphabet onto strings over {A, C,
G, T}, and proceed to synthesize the obtained information-encoding
strings as DNA single strands.
• English alphabet as A → ACA, B → ACCA, C → ACCCA, D → AC4A, etc.,
wherein the ith letter of the alphabet is represented by AC i A, i.e., a
single strand of DNA consisting of i repetitions of C flanked by one A
at the beginning and another A at the end.
• The encoding of text “To be or not to be ” will be
• This DNA sequence can be synthesized by PCR.
• 1 gram of DNA, which contains 2.1 × 1021 DNA nucleotides, can store
approximately 4.2 × 1021 bits.
• Adleman’s experiment involved finding a route through a network of
“towns” (labeled “1” to “7”) connected by one-way “roads.” The
problem specifies that the route must start and end at specific towns
and visit each town only once.
• He designed short strands of DNA to represent towns and roads such
that the road strands stuck the town strands together, forming
sequences of towns that represented routes.
• All other programs gave wrong outputs to the question such as 1234,
12324 only genetic programming gave 1234567 as answer.
Beehive based routing algorithms
• Honey bees live in well-organized colonies.
• Honey bees are generally active during spring, when they go in search
of plants from which to collect pollen and nectar
• With a queen, thousands of workers and a few male drones. Workers
make these nests from wax, which they secrete from their abdominal
glands. Within each cell, young workers place pollen and nectar as
food for developing larvae. Male drones are only required for
reproduction.
• honey bees forage for food in groups and this foraging behaviour is
inspiration to routing algorithms.
• This behaviour is the link between the honey bee colony and the
ambient environment.
• The forager bees can be classified into two categories; scout bees
which search for the best food resource and the onlooker bees which
wait in the beehive until the scout bees return and give them
information about the food source by dancing.
• A routing algorithm is a procedure that lays down the route or path to
transfer data packets from source to the destination.
• The Artificial Bee Colony (ABC) algorithm was introduced by Karaboga
base on honey bee foraging behaviour.
• The ABC algorithm works with three kinds of agents (bees):
• (i)Employed bees: bees already associated with a food source, which
represents a solution
• (ii)Onlooker bees: bees that will observe the dance of employed bees
and follow them to the neighborhood of their food sources
• (iii)Scout bees: bees that wander around the search space to find new
food sources; this can be a random or guided process.
Initialisation
• The initial food sources are discovered by scout bees. The number of
food sources is the same as the number of employed bees in the hive.
Each food source is then associated with an employed bee.
Employed bee phase
• During this phase, an employed bee will search for better food
sources in its neighborhood. Then, based on some neighborhood
function, a greedy selection is applied between the previous and the
new food source.
• If a better food source is found within this neighborhood, then this
becomes the current food source associated with this employed bee.
Onlooker bee phase
• During this phase, employed bees advertise their food sources to the
onlooker bees by the means of the waggle dance.
• Onlooker bees will observe the dance of employed bees and
probabilistically choose one of them to follow until their food source.
Scout bee phase
• During this phase, an employed bee will become a scout bee if its
food source is not improved. Then, the employed bee will abandon its
food source and look for a new one.
• Though bee inspired algorithms could be efficient solution to
travelling sales man problem but as of now an optimum solution to
the problem has not been found

You might also like