26
Implementation of Evolutionary Algorithms using DNA Computing. Imran Ashraf .A. 13 th March 2007

Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

  • Upload
    others

  • View
    7

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Implementation of Evolutionary

Algorithms using DNA Computing.

Imran Ashraf .A.

13th March 2007

Page 2: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

What is an Evolutionary Computing?

• Evolutionary Computing is a research area within Computer Science ,which draws inspiration from the process of natural evolution.

• Inspired from Darwin’s Theory of Evolution .(Survival of the fittest).

Page 3: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Need for Evolutionary computing

• Developing automated problem solvers.

Two most powerful natural problem solvers

1) Human Brain

2) Evolutionary process (that created the human brain)

Page 4: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Designing the problem solvers based

on human brain leads to the field of

“neurocomputing”. While the second

one leads to evolutionary computing.

• Technical perspective

1) Rapidly growing demand for problem

solving automation.

Page 5: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

2) Urgent need for robust algorithm

with satisfactory performance.

3) Algorithms applicable to a wide

range of problems and provide good

(not necessarily optimal) solutions

within acceptable time.

Human curiosity

Page 6: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Evolutionary algorithms

• The algorithms involved in Evolutionary computing are termed as Evolutionary algorithms (EA).

• Sub-areas of EA:

1) Genetic Algorithm (GA).

2) Evolution strategies (ES).

3) Evolutionary programming (EP).

4) Genetic Programming (GP).

Page 7: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

General scheme of Evolutionary

Algorithms

Page 8: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Flowchart representation

Initialisation parent selection

Parents

Population Recombination

Termination

Mutation

Offspring

Page 9: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Important components of Evolutionary Algorithm

� Definition of individuals

� Fitness function

� Population

� Parent selection mechanism

� Variation operators, recombination and mutation

� Survivor selection mechanism (Replacement)

Page 10: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Variation Operators

� The role of variation operators is to create

new individuals from old ones.

� Mutation: Uses one parent to create one

child by applying some randomized change change to the representation.

� Recombination: This involves the creation of new child from two or more parent solutions.

It is also known as Crossover.

Page 11: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary
Page 12: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary
Page 13: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Towards Evolutionary DNA Computing

� Populations of trillions of candidates

evaluated for fitness.

� Massive information storage.

� DNA computing techniques might

process in parallel for the population

billion times larger than in

conventional computers.

� Modifications to current technology

in-vitro evolution suffice to

implement point-wise mutation.

Page 14: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Challenges in DNA Evolutionary Computation

� Selecting DNA strands for breeding

according to fitness by designing and

implementing the appropriate

laboratory methods.

Page 15: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary
Page 16: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Some simple genetic algorithms using DNA computing

� One max problem

� Royal road fitness

� Cold war problem

Page 17: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

One max problem

� To evolve some bit strings to match

the prespecified bitstring (usually

taken to be all 1s)

� The output (target) is known

beforehand

� Traditional test problem for

evolutionary computation

Page 18: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary
Page 19: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Evaluation using 2d- DGGE

� The candidates are selected for

fitness using the 2d – Denaturing

gradient gel electrophoresis.

� The linear dsDNA moves more

downwards than the other denatured

ones.

Page 20: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary
Page 21: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary
Page 22: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Royal Road Fitness

� Similar to the One max problem,the

target is specified beforehand.

� Target consists of N blocks, each

block consists of K bits.

� The fitness of the candidate depends

on number of such perfectly matched

blocks.

Page 23: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

� The target strand consists of 5 blocks

of 10 Ts to represent the Royal Road

blocks.

� The spacers taken to be 10 Gs.

� 50 Gs are used on each end to avoid

end effects.

Page 24: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Cold war problem

� Here both targets and candidates are

evolved simultaneously.

� The fitness of candidate-target pairs

are evaluated.

� Variation of both, targets and

candidates are induced by breeding.

� New generation ( offspring target-

candidate pairs).

Page 25: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

Other Genetic algorithms

� Fuzzy systems

� Maximum Clique

� Knapsack problem

Page 26: Implementation of Evolutionary Algorithms using DNA Computing.lkari/imran.pdf · Evolutionary algorithms • The algorithms involved in Evolutionary computing are termed as Evolutionary

References

� A.E. Eiben, J.E Smith, ”Introduction to

Evolutionary Computation”.

� Michael Rosenman notes on Evolutionary

Algorithms,”http://evonet.lri.fr/evoweb/res

ources/links/record.php?id=151”.

� “DNA computing Implementing Genetic

Algorithms”, Junghuei Chen.