0% found this document useful (0 votes)
9 views37 pages

To Genetic Algorithms

Genetic Algorithms (GAs) are optimization techniques inspired by biological evolution, developed to efficiently navigate large search spaces for optimal solutions. They consist of components such as encoding techniques, evaluation functions, and genetic operators like mutation and crossover, and are widely applicable in various fields including machine learning and robotics. GAs offer benefits such as modularity, support for multi-objective optimization, and adaptability to complex problems.

Uploaded by

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

To Genetic Algorithms

Genetic Algorithms (GAs) are optimization techniques inspired by biological evolution, developed to efficiently navigate large search spaces for optimal solutions. They consist of components such as encoding techniques, evaluation functions, and genetic operators like mutation and crossover, and are widely applicable in various fields including machine learning and robotics. GAs offer benefits such as modularity, support for multi-objective optimization, and adaptability to complex problems.

Uploaded by

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

INTRODUCTION

TO GENETIC
ALGORITHMS
Action Plan
■ What is Genetic Algorithms?
■ Introduction to Genetic Algorithm
■ Classes of Search Techniques
■ Components of a GA
■ Components of a GA
■ Simple Genetic Algorithm
■ GA Cycle of Reproduction
■ Population
■ Reproduction
■ Chromosome Modification: Mutation, Crossover, Evaluation, Deletion
■ Example
■ GA Technology
■ Issues for GA Practitioners
■ Benefits of Genetic Algorithms
■ GA Application Types
■ Quiz
What is Genetic
Algorithms?
“Genetic Algorithms are
good at taking large,
potentially huge search
spaces and navigating
them, looking for
optimal combinations of
things, solutions you
might not otherwise find
in a lifetime.”

- Salvatore Mangano
Computer Design, May 1995
Introduction to Genetic Algorithm

■ Directed search algorithms based on the mechanics of biological


evolution
■ Developed by John Holland, University of Michigan (1970’s)
– To understand the adaptive processes of natural systems
– To design artificial systems software that retains the robustness of
natural systems
Introduction Genetic
Algorithm (cont.)

■ Provide efficient, effective techniques for optimization and machine


learning applications
■ Widely-used today in business, scientific and engineering circles
Classes of Search Techniques

Search techniques

Calculus-based techniques G uided random search techniques Enum erative techniques

Direct m ethods Indirect m ethods Evolutionary algorithm s Sim ulated annealing Dynam ic program m ing

Finonacci Newton Evolutionary strategies G enetic algorithm s

Parallel Sequential

Centralized Distributed Steady-state G enerational


Components of a GA

A problem to solve, and ...


■ Encoding technique (gene, chromosome)
■ Initialization procedure (creation)
■ Evaluation function (environment)
■ Selection of parents (reproduction)
■ Genetic operators (mutation, recombination)
■ Parameter settings (practice and art)
Simple Genetic Algorithm
{
initialize population;
evaluate population;
while TerminationCriteriaNotSatisfied
{
select parents for reproduction;
perform recombination and
mutation;
evaluate population;
}
}
The GA Cycle of
Reproduction
children
reproduction modification
modified
parents children
population evaluation
evaluated children
deleted
members

discard
Population
population

Chromosomes could be:


– Bit strings (0101 ... 1100)
– Real numbers (43.2 -33.1 ... 0.0 89.2)
– Permutations of element (E11 E3 E7 ... E1 E15)
– Lists of rules (R1 R2 R3 ... R22 R23)
– Program elements (genetic programming)
– ... any data structure ...
Reproduction
children
reproduction

parents

population

Parents are selected at random with


selection chances biased in relation to
chromosome evaluations.
Chromosome Modification
children
modification
modified children

■ Modifications are stochastically triggered


■ Operator types are:
– Mutation
– Crossover (recombination)
Mutation: Local Modification
Before: (1 0 1 1 0 1 1 0)
After: (0 1 1 0 0 1 1 0)

Before: (1.38 -69.4 326.44 0.1)


After: (1.38 -67.5 326.44 0.1)

■ Causes movement in the search space


(local or global)
■ Restores lost information to the population
Crossover: Recombination
*

P1 (0 1 1 0 1 0 0 0) (0 1 0 0 1 0 0 0) C1

P2 (1 1 0 1 1 0 1 0) (1 1 1 1 1 0 1 0) C2

Crossover is a critical feature of genetic


algorithms:
– It greatly accelerates search early in evolution of a population
– It leads to effective combination of schemata (subsolutions on
different chromosomes)
Evaluation
modified
evaluated children
children
evaluation

■ The evaluator decodes a chromosome and assigns


it a fitness measure
■ The evaluator is the only link between a classical
GA and the problem it is solving
Deletion
population
discarded members

discard

■ Generational GA:
entire populations replaced with each iteration
■ Steady-state GA:
a few members replaced each generation
An Abstract Example

Distribution of Individuals in Generation 0

Distribution of Individuals in Generation N


A Simple Example

“The Gene is by far the most sophisticated program around.”


- Bill Gates, Business Week, June 27, 1994
A Simple Example

The Traveling Salesman Problem:

Find a tour of a given set of cities so that


– each city is visited only once
– the total distance traveled is minimized
Representation

Representation is an ordered list of city


numbers known as an order-based GA.

1) London 3) Dunedin 5) Beijing 7) Tokyo


2) Venice 4) Singapore 6) Phoenix 8) Victoria

CityList1 (3 5 7 2 1 6 4 8)
CityList2 (2 5 7 6 8 1 3 4)
Crossover
Crossover combines inversion and
recombination:
* *
Parent1 (3 5 7 2 1 6 4 8)
Parent2 (2 5 7 6 8 1 3 4)

Child (2 5 7 2 1 6 3 4)

This operator is called the Order1 crossover.


Mutation

Mutation involves reordering of the list:

* *
Before: (5 8 7 2 1 6 3 4)

After: (5 8 6 2 1 7 3 4)
TSP Example: 30 Cities

120

100

80

y 60

40

20

0
0 10 20 30 40 50 60 70 80 90 100
x
Solution i (Distance = 941)
TSP30 (Performance = 941)

120

100

80

y 60

40

20

0
0 10 20 30 40 50 60 70 80 90 100
x
Solution j(Distance = 800)
44
62 TSP30 (Performance = 800)
69
67 120
78
64 100
62
54
80
42
50
40 y 60
40
38 40
21
35
67 20
60
60 0
40 0 10 20 30 40 50 60 70 80 90 100
42 x
50
99
Solution k(Distance = 652)
TSP30 (Performance = 652)

120

100

80

y 60

40

20

0
0 10 20 30 40 50 60 70 80 90 100
x
Best Solution (Distance =
420)
42
38 TSP30 Solution (Performance = 420)
35
120
26
21
35 100
32
7
80
38
46
44 y 60
58
60 40
69
76
20
78
71
69 0
67 0 10 20 30 40 50 60 70 80 90 100
62 x
84
94
Overview of Performance
TSP30 - Overview of Performance

1800

1600

1400

1200
e
c 1000
n
a
t
s
i 800
D
600

400

200

0 Best
1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31
Worst
Generations (1000)
Average
Considering the GA Technology
“Almost eight years ago ...
people at Microsoft wrote
a program [that] uses
some genetic things for
finding short code
sequences. Windows 2.0
and 3.2, NT, and almost all
Microsoft applications
products have shipped
with pieces of code created
by that system.”
- Nathan Myhrvold, Microsoft Advanced
Technology Group, Wired, September 1995
Issues for GA Practitioners

■ Choosing basic implementation issues:


– representation
– population size, mutation rate, ...
– selection, deletion policies
– crossover, mutation operators
■ Termination Criteria
■ Performance, scalability
■ Solution is only as good as the evaluation function
(often hardest part)
Benefits of Genetic Algorithms

■ Concept is easy to understand


■ Modular, separate from application
■ Supports multi-objective optimization
■ Good for “noisy” environments
■ Always an answer; answer gets better with time
■ Inherently parallel; easily distributed
Benefits of Genetic Algorithms (cont.)

■ Many ways to speed up and improve a GA-based application as


knowledge about problem domain is gained
■ Easy to exploit previous or alternate solutions
■ Flexible building blocks for hybrid applications
■ Substantial history and range of use
When to Use a GA

■ Alternate solutions are too slow or overly complicated


■ Need an exploratory tool to examine new approaches
■ Problem is similar to one that has already been
successfully solved by using a GA
■ Want to hybridize with an existing solution
■ Benefits of the GA technology meet key problem
requirements
Some GA Application Types
Domain Application Types
Control gas pipeline, pole balancing, missile evasion, pursuit

Design semiconductor layout, aircraft design, keyboard


configuration, communication networks
Scheduling manufacturing, facility scheduling, resource allocation

Robotics trajectory planning

Machine Learning designing neural networks, improving classification


algorithms, classifier systems
Signal Processing filter design

Game Playing poker, checkers, prisoner’s dilemma

Combinatorial set covering, travelling salesman, routing, bin packing,


graph colouring and partitioning
Optimization
Conclusions

Question: ‘If GAs are so smart, why ain’t they rich?’

Answer: ‘Genetic algorithms are rich - rich in


application across a large and growing number
of disciplines.’
- David E. Goldberg, Genetic Algorithms in Search, Optimization and Machine Learning
1. Genetic Algorithm are a part of
a. Evolutionary Computing
b. inspired by Darwin's theory about evolution - "survival of the fittest"
c. are adaptive heuristic search algorithm based on the evolutionary ideas of natural selection and genetics
d. All of the above
2. Which of the following are discrete optimization problems?
e. Travelling salesman problem
f. Robot control
g. Chess playing program
h. Prediction of stock prices
Test Yourself
3. Biologically inspired computations appropriate for
i. Optimization
j. Modelling
k. Safety critical systems
l. Simulation
4. Exploration in search is
m. Concerned with improving the current best solution by local search
n. Combined with exploitation in evolutionary algorithms
o. Often resulting in getting stuck in local optima
p. Concerned with global search
5. Evolutionary algorithm :Initialization
q. Individuals are normally generated randomly
r. Is concerned with generating candidate solutions
s. Mutation of candidates is normally also taking place during the initialization
t. Heuristics for generating candidates can be applied
1. Genetic Algorithm are a part of
a. Evolutionary Computing
b. inspired by Darwin's theory about evolution - "survival of the fittest"
c. are adaptive heuristic search algorithm based on the evolutionary ideas of natural selection and genetics
d. All of the above
2. Which of the following are discrete optimization problems?
e. Travelling salesman problem
f. Robot control
g. Chess playing program
h. Prediction of stock prices
3. Biologically inspired computations appropriate for
Answers
i. Optimization
j. Modelling
k. Safety critical systems
l. Simulation
4. Exploration in search is
m. Concerned with improving the current best solution by local search
n. Combined with exploitation in evolutionary algorithms
o. Often resulting in getting stuck in local optima
p. Concerned with global search
5. Evolutionary algorithm :Initialization
q. Individuals are normally generated randomly
r. Is concerned with generating candidate solutions
s. Mutation of candidates is normally also taking place during the initialization
t. Heuristics for generating candidates can be applied

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy